a1d831ec79dbcd9c7dab85942913efb01ab599da
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-05-12  Rob Buis  <rbuis@rim.com>
2
3         Reviewed by Eric Seidel.
4
5         SVGStyledElement::resolveStyle(RenderStyle*) must be removed/fixed!
6         https://bugs.webkit.org/show_bug.cgi?id=15479
7
8         Finally remove resolveStyle, it is not used anymore.
9
10         * svg/SVGStyledElement.cpp:
11         (WebCore::SVGStyledElement::childrenChanged):
12         * svg/SVGStyledElement.h:
13
14 2011-05-12  Adam Barth  <abarth@webkit.org>
15
16         Reviewed by Darin Adler.
17
18         REGRESSION (r65868): createContextualFragment does not work with <style>
19         https://bugs.webkit.org/show_bug.cgi?id=60155
20
21         createContextualFragment doesn't have a spec, so it's hard to tell what
22         we're supposed to do exactly.  This patch appears to make our behavior
23         more like Firefox and should fix the compat issue with this site.
24
25         Tests: fast/parser/style-in-create-contextual-fragment-head.html
26                fast/parser/style-in-create-contextual-fragment.html
27
28         * dom/Element.cpp:
29         (WebCore::Element::deprecatedCreateContextualFragment):
30
31 2011-05-12  Ryosuke Niwa  <rniwa@webkit.org>
32
33         Reviewed by Darin Adler.
34
35         WebKit inserts base, link, meta, style, and title elements into an editable region
36         when pasting table cells from Excel
37         https://bugs.webkit.org/show_bug.cgi?id=60644
38
39         Strip base, link, meta, style, and tile elements from the fragment to be pasted prior
40         to the merge. We don't have to strip these elements in performTrivialReplace because
41         the function only handles a fragment that consists of exactly one text node.
42
43         Test: editing/pasteboard/paste-head-contents.html
44
45         * editing/ReplaceSelectionCommand.cpp:
46         (WebCore::removeHeadContents): Added.
47         (WebCore::ReplaceSelectionCommand::doApply): Calls removeHeadContents before handing
48         style spans.
49
50 2011-05-12  Levi Weintraub  <leviw@chromium.org>
51
52         Reviewed by Simon Fraser.
53
54         Switch calculateBackgroundImageGeometry to use IntRect
55         https://bugs.webkit.org/show_bug.cgi?id=60671
56
57         Replacing the four ints passed into calculateBackgroundImageGeometry with an IntRect.
58
59         No new tests since this is just refactoring.
60
61         * rendering/RenderBox.cpp:
62         (WebCore::RenderBox::maskClipRect):
63         (WebCore::RenderBox::repaintLayerRectsForImage):
64         * rendering/RenderBoxModelObject.cpp:
65         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
66         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
67         * rendering/RenderBoxModelObject.h:
68
69 2011-05-12  Carol Szabo  <carol@webkit.org>
70
71         Reviewed by David Hyatt.
72
73         Fix reparenting and destruction of counter nodes. 
74         https://bugs.webkit.org/show_bug.cgi?id=57929
75
76         Fixed several issues related to not met assertions.
77         See below in the per file description.
78
79         Test: fast/css/counters/element-removal-crash.xhtml
80
81         * dom/ContainerNode.cpp:
82         (WebCore::ContainerNode::removeChildren):
83         Fixed the fact that Node::detach() used to be called
84         while the DOM tree was in an inconsistent state.
85         * rendering/RenderCounter.cpp:
86         (WebCore::RenderCounter::rendererRemovedFromTree):
87         Introduced this function to remove counters from
88         descendents of renderers removed from the renderer
89         tree not only from the removed renderers themselves.
90         * rendering/RenderCounter.h:
91         * rendering/RenderObjectChildList.cpp:
92         (WebCore::RenderObjectChildList::removeChildNode):
93         Changed to call RenderCounter::rendererRemovedFromTree
94         instead of RenderCounter::destroyCounters.
95
96 2011-05-12  Luke Macpherson   <macpherson@chromium.org>
97
98         Reviewed by Dimitri Glazkov.
99
100         Merge ApplyPropertyExpanding and ApplyPropertyExpandingSuppressValue classes using template.
101         https://bugs.webkit.org/show_bug.cgi?id=60691
102
103         No new tests - refactoring only.
104
105         * css/CSSStyleApplyProperty.cpp:
106         (WebCore::ApplyPropertyExpanding::applyValue):
107         Use new template parameter to early exit if needed.
108         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
109         Specify template parameters for ApplyPropertyExpanding.
110
111 2011-05-12  Simon Fraser  <simon.fraser@apple.com>
112
113         Followup to r86351; give the vectors some inline capacity
114         to avoid heap allocations in most cases.
115
116         * page/animation/AnimationBase.cpp:
117         (WebCore::PropertyWrapperShadow::blendMismatchedShadowLists):
118
119 2011-05-12  Simon Fraser  <simon.fraser@apple.com>
120
121         Reviewed by Dan Bernstein.
122
123         Mismatched multiple box-shadows do not transition as expected
124         https://bugs.webkit.org/show_bug.cgi?id=60137
125         
126         When animating between two sets of shadows of different lengths, we need
127         to walk the ShadowData list backwards, since it stores the shadows in
128         reverse order relative to the CSS (so that painting is back-to-front).
129         
130         This progresses the behavior of the transitions/multiple-shadow-transitions.html
131         test, which is given new expected results.
132
133         Test: transitions/mismatched-shadow-transitions.html
134
135         * page/animation/AnimationBase.cpp:
136         (WebCore::shadowListLength): Utility to walk the list of ShadowData and count the number
137         of shadows.
138         (WebCore::shadowForBlending): Return a ShadowData* that is useful as a blending target,
139         based on the shadow type, and whether it's a -webkit-box-shadow.
140         (WebCore::PropertyWrapperShadow::blend): Call one of the specialized blend methods.
141         (WebCore::PropertyWrapperShadow::blendSimpleOrMatchedShadowLists): Fast path
142         for shadow blending, when the list lengths match, or both are single or null shadows.
143         (WebCore::PropertyWrapperShadow::blendMismatchedShadowLists): Slower path that builds
144         vectors for each list to reverse them.
145
146 2011-05-12  Adam Roben  <aroben@apple.com>
147
148         Attempted WinCairo build fix after r86169, part II
149
150         * platform/network/curl/CredentialStorageCurl.cpp: Added a missing #include.
151
152 2011-05-12  Adam Roben  <aroben@apple.com>
153
154         Fix linker warnings in Production builds
155
156         * WebCore.vcproj/WebCore.vcproj: Exclude JSSVGFEDropShadowElement.cpp from the build in the
157         Production configuration, just like in the other configurations. Let VS resort some files
158         (again).
159
160 2011-05-12  Philippe Normand  <pnormand@igalia.com>
161
162         Reviewed by Adam Roben.
163
164         Autocorrection persists after deleting and retyping the same word at same location.
165         https://bugs.webkit.org/show_bug.cgi?id=60555
166
167         Follow-up fix for the 3 editing/deleting tests crashing on GTK,
168         Leopard and Windows XP. Don't create the Range if the start of the
169         selection has no next position.
170
171         * editing/DeleteSelectionCommand.cpp:
172         (WebCore::DeleteSelectionCommand::originalStringForAutocorrectionAtBeginningOfSelection):
173
174 2011-05-12  Adam Roben  <aroben@apple.com>
175
176         Attempted WinCairo build fix after r86169
177
178         * WebCore.vcproj/WebCore.vcproj: Added CredentialStorageCurl.cpp. Also let VS do what it
179         wants.
180
181         * platform/network/curl/CredentialStorageCurl.cpp: Added.
182         (WebCore::CredentialStorage::getFromPersistentStorage): Stubbed out.
183
184 2011-05-12  Adam Roben  <aroben@apple.com>
185
186         Build fixes after r86325
187
188         * editing/SpellingCorrectionController.cpp:
189         * editing/SpellingCorrectionController.h:
190         Added missing declarations/#includes.
191
192 2011-05-12  Nikolas Zimmermann  <nzimmermann@rim.com>
193
194         Not reviewed.
195
196         String operator+ reallocates unnecessary when concatting > 2 strings
197         https://bugs.webkit.org/show_bug.cgi?id=58420
198
199         Attempt to fix the WinCE build. WinCE/WinCairo still won't link because of unresolved symbols, hmm. If we had EWS for those, I would have caught the problem earlier.
200
201         * platform/wince/FileSystemWinCE.cpp:
202         (WebCore::listDirectory):
203
204 2011-05-12  Nikolas Zimmermann  <nzimmermann@rim.com>
205
206         Not reviewed.
207
208         String operator+ reallocates unnecessary when concatting > 2 strings
209         https://bugs.webkit.org/show_bug.cgi?id=58420
210
211         Fix fast/forms/input-image-submit.html regression, seens on the bots - by removing a last-minute typo: s/!!/!/
212
213         * html/ImageInputType.cpp:
214         (WebCore::ImageInputType::appendFormData):
215
216 2011-05-12  Rob Buis  <rwlbuis@gmail.com>
217
218         Reviewed by Eric Seidel.
219
220         REGRESSION(79985): Changes in fill-opacity should trigger repaint but don't
221         https://bugs.webkit.org/show_bug.cgi?id=59941
222
223         Also consider fill-opacity when determining whether StyleDifferenceRepaint is needed.
224
225         Test: svg/custom/fill-opacity-update.svg
226
227         * rendering/style/SVGRenderStyle.cpp:
228         (WebCore::SVGRenderStyle::diff):
229
230 2011-05-12  Nikolas Zimmermann  <nzimmermann@rim.com>
231
232         Reviewed by Darin Adler.
233
234         String operator+ reallocates unnecessary when concatting > 2 strings
235         https://bugs.webkit.org/show_bug.cgi?id=58420
236
237         Provide a faster String append operator. See Source/JavaScriptCore/ChangeLog for details.
238
239         * dom/XMLDocumentParserLibxml2.cpp:
240         (WebCore::handleElementAttributes):
241         * editing/MarkupAccumulator.cpp:
242         (WebCore::MarkupAccumulator::shouldAddNamespaceElement):
243         * html/HTMLAnchorElement.cpp:
244         (WebCore::HTMLAnchorElement::hash):
245         (WebCore::HTMLAnchorElement::search):
246         * html/ImageInputType.cpp:
247         (WebCore::ImageInputType::appendFormData):
248         * html/parser/HTMLTreeBuilder.cpp:
249         * loader/CrossOriginAccessControl.cpp:
250         (WebCore::passesAccessControlCheck):
251         * page/Location.cpp:
252         (WebCore::Location::search):
253         (WebCore::Location::hash):
254         * page/NavigatorBase.cpp:
255         (WebCore::NavigatorBase::platform):
256         * platform/chromium/ClipboardChromium.cpp:
257         (WebCore::writeImageToDataObject):
258         * platform/gtk/PasteboardHelper.cpp:
259         (WebCore::PasteboardHelper::fillSelectionData):
260         * platform/network/cf/ResourceHandleCFNet.cpp:
261         (WebCore::encodeBasicAuthorization):
262         * platform/network/cf/SocketStreamHandleCFNet.cpp:
263         (WebCore::SocketStreamHandle::copyCFStreamDescription):
264         * platform/network/mac/ResourceHandleMac.mm:
265         (WebCore::encodeBasicAuthorization):
266         * workers/WorkerLocation.cpp:
267         (WebCore::WorkerLocation::search):
268         (WebCore::WorkerLocation::hash):
269
270 2011-05-06  Yury Semikhatsky  <yurys@chromium.org>
271
272         Reviewed by Pavel Feldman.
273
274         Web Inspector: move agents from InspectorAgent to InspectorController
275         https://bugs.webkit.org/show_bug.cgi?id=60359
276
277         All inspector agents are now created and owned by InspectorController which
278         in turned is owned by the inspected Page. InspectorInstrumentation gets access
279         to the instrumenting agents by means of InspectorAgent::instrumentingAgents().
280
281         In addition to managing inspector agents lifetime InspectorController sets
282         InspectorFronted on the agents when the front-end is connected.
283
284         * inspector/InspectorAgent.cpp:
285         (WebCore::InspectorAgent::InspectorAgent):
286         (WebCore::InspectorAgent::~InspectorAgent):
287         (WebCore::InspectorAgent::inspectedPageDestroyed):
288         (WebCore::InspectorAgent::restore):
289         (WebCore::InspectorAgent::setFrontend):
290         (WebCore::InspectorAgent::clearFrontend):
291         * inspector/InspectorAgent.h: all accessors to other agents were removed along with
292         the agents themselves from InspectorAgent. Every agent that depends on some other agents
293         receives pointers to them explicitely in its constructor. All access to the agents
294         from WebCore should go through InspectorInstrumentation which retrieves corresponding
295         agents using InstrumentingAgents structure which represents the set of active agents.
296         (WebCore::InspectorAgent::instrumentingAgents):
297         * inspector/InspectorController.cpp:
298         (WebCore::InspectorController::InspectorController):
299         (WebCore::InspectorController::~InspectorController):
300         (WebCore::InspectorController::inspectedPageDestroyed):
301         (WebCore::InspectorController::startTimelineProfiler):
302         (WebCore::InspectorController::stopTimelineProfiler):
303         (WebCore::InspectorController::connectFrontend):
304         (WebCore::InspectorController::disconnectFrontend):
305         (WebCore::InspectorController::restoreInspectorStateFromCookie):
306         (WebCore::InspectorController::drawNodeHighlight):
307         (WebCore::InspectorController::inspect):
308         (WebCore::InspectorController::timelineProfilerEnabled):
309         (WebCore::InspectorController::hideHighlight):
310         (WebCore::InspectorController::highlightedNode):
311         (WebCore::InspectorController::enableProfiler):
312         (WebCore::InspectorController::disableProfiler):
313         (WebCore::InspectorController::profilerEnabled):
314         (WebCore::InspectorController::debuggerEnabled):
315         (WebCore::InspectorController::disableDebugger):
316         (WebCore::InspectorController::startUserInitiatedProfiling):
317         (WebCore::InspectorController::stopUserInitiatedProfiling):
318         (WebCore::InspectorController::isRecordingUserInitiatedProfile):
319         (WebCore::InspectorController::resume):
320         * inspector/InspectorController.h:
321         * inspector/InspectorInstrumentation.cpp:
322         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
323         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
324         (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
325         (WebCore::InspectorInstrumentation::didInvalidateStyleAttrImpl):
326         (WebCore::InspectorInstrumentation::characterDataModifiedImpl):
327         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
328         (WebCore::InspectorInstrumentation::didFailLoadingImpl):
329         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
330         (WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
331         (WebCore::InspectorInstrumentation::consoleCountImpl):
332         (WebCore::InspectorInstrumentation::startConsoleTimingImpl):
333         (WebCore::InspectorInstrumentation::stopConsoleTimingImpl):
334         (WebCore::InspectorInstrumentation::addStartProfilingMessageToConsoleImpl):
335         (WebCore::InspectorInstrumentation::addProfileImpl):
336         (WebCore::InspectorInstrumentation::getCurrentUserInitiatedProfileNameImpl):
337         (WebCore::InspectorInstrumentation::profilerEnabledImpl):
338         (WebCore::InspectorInstrumentation::cancelPauseOnNativeEvent):
339         * page/Page.cpp:
340         (WebCore::Page::~Page): we send two notifications when inspected Page is being
341         destroyed: one to the inspector instrumentation and another one to the InspectorController
342         which is owned by the Page.
343
344 2011-05-12  Tony Gentilcore  <tonyg@chromium.org>
345
346         Build fix: include ExceptionCode.h
347         https://bugs.webkit.org/show_bug.cgi?id=60694
348
349         * dom/Range.cpp:
350
351 2011-05-10  Tony Gentilcore  <tonyg@chromium.org>
352
353         Reviewed by Darin Adler.
354
355         Perform some forward declarations suggested by include-what-you-use
356         https://bugs.webkit.org/show_bug.cgi?id=60545
357
358         * accessibility/AccessibilityObject.cpp:
359         * accessibility/AccessibilityRenderObject.cpp:
360         * accessibility/mac/AccessibilityObjectWrapper.mm:
361         * dom/DocumentMarkerController.cpp:
362         * dom/Position.cpp:
363         * dom/PositionIterator.cpp:
364         * dom/Range.cpp:
365         * editing/ApplyBlockElementCommand.cpp:
366         * editing/ApplyStyleCommand.cpp:
367         * editing/Editor.cpp:
368         * editing/EditorCommand.cpp:
369         * editing/FrameSelection.cpp:
370         * editing/HTMLInterchange.cpp:
371         * editing/IndentOutdentCommand.cpp:
372         * editing/ReplaceSelectionCommand.cpp:
373         * editing/SpellChecker.h:
374         * editing/SpellingCorrectionCommand.cpp:
375         * editing/SpellingCorrectionController.h:
376         * editing/TextCheckingHelper.cpp:
377         * editing/TextIterator.h:
378         * editing/htmlediting.h:
379         * editing/markup.cpp:
380         * editing/visible_units.cpp:
381         * editing/visible_units.h:
382         * fileapi/DOMFileSystem.cpp:
383         * fileapi/DirectoryReaderSync.cpp:
384         * fileapi/DirectoryReaderSync.h:
385         * fileapi/FileEntry.h:
386         * fileapi/FileWriter.h:
387         * fileapi/FileWriterBase.h:
388         * fileapi/FileWriterSync.h:
389         * history/CachedFrame.cpp:
390         * history/CachedPage.cpp:
391         * history/HistoryItem.cpp:
392         * history/HistoryItem.h:
393         * history/PageCache.h:
394         * loader/HistoryController.h:
395         * loader/PingLoader.h:
396         * loader/ResourceLoader.h:
397         * loader/appcache/DOMApplicationCache.h:
398         * loader/cache/CachedCSSStyleSheet.h:
399         * loader/cache/CachedFont.cpp:
400         * loader/cache/CachedFont.h:
401         * loader/cache/CachedResourceRequest.cpp:
402         * loader/cache/CachedResourceRequest.h:
403         * loader/cache/MemoryCache.h:
404         * notifications/Notification.cpp:
405         * notifications/Notification.h:
406         * notifications/NotificationCenter.cpp:
407         * notifications/NotificationCenter.h:
408         * page/Chrome.cpp:
409         * page/Chrome.h:
410         * page/DOMSelection.cpp:
411         * page/DOMTimer.h:
412         * page/DOMWindow.cpp:
413         * page/EventHandler.cpp:
414         * page/FocusController.h:
415         * page/Geolocation.cpp:
416         * page/Geolocation.h:
417         * page/History.cpp:
418         * rendering/RenderListBox.cpp:
419         * workers/WorkerContext.cpp:
420
421 2011-05-12  Yuta Kitamura  <yutak@chromium.org>
422
423         Unreviewed, another attempt of build fix.
424
425         * websockets/CloseEvent.h:
426         * websockets/CloseEvent.idl:
427
428 2011-05-12  Yuta Kitamura  <yutak@chromium.org>
429
430         Unreviewed, trying to fix Qt minimal compile.
431
432         * websockets/CloseEvent.idl:
433
434 2011-05-12  ojab  <ojab@ojab.ru>
435
436         Reviewed by Eric Seidel.
437
438         Fix build with --disable-video --enable-fullscreen-api
439         https://bugs.webkit.org/show_bug.cgi?id=60542
440
441         * css/CSSStyleSelector.cpp:
442         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
443
444 2011-05-12  Yuta Kitamura  <yutak@chromium.org>
445
446         Reviewed by Kent Tamura.
447
448         WebSocket add new event: CloseEvent
449         https://bugs.webkit.org/show_bug.cgi?id=35573
450
451         Original patch was written by Fumitoshi Ukai <ukai@chromium.org>.
452         I added CloseEvent constructor to DOMWindow, so it can be referred
453         in the new test (close-event.html).
454
455         Test: http/tests/websocket/tests/close-event.html
456
457         * CMakeLists.txt:
458         * CodeGenerators.pri:
459         * DerivedSources.cpp:
460         * DerivedSources.make:
461         * GNUmakefile.list.am:
462         * WebCore.gypi:
463         * WebCore.pro:
464         * WebCore.vcproj/WebCore.vcproj:
465         * WebCore.xcodeproj/project.pbxproj:
466         * bindings/js/JSEventCustom.cpp:
467         (WebCore::toJS):
468         * bindings/v8/custom/V8EventCustom.cpp:
469         (WebCore::toV8):
470         * dom/Event.cpp:
471         (WebCore::Event::isCloseEvent):
472         * dom/Event.h:
473         * page/DOMWindow.idl: Add CloseEvent constructor.
474         * websockets/CloseEvent.h: Added.
475         (WebCore::CloseEvent::isCloseEvent):
476         (WebCore::CloseEvent::create):
477         (WebCore::CloseEvent::initCloseEvent):
478         (WebCore::CloseEvent::wasClean):
479         (WebCore::CloseEvent::CloseEvent):
480         * websockets/CloseEvent.idl: Added.
481         * websockets/WebSocket.cpp:
482         (WebCore::WebSocket::didClose):
483
484 2011-05-12  Ben Wells  <benwells@chromium.org>
485
486         Reviewed by Simon Fraser.
487
488         RGBA colors in outlines show overpainting at the corners
489         https://bugs.webkit.org/show_bug.cgi?id=58999
490
491         Tests: fast/borders/outline-alpha-block.html
492                fast/borders/outline-alpha-inline.html
493
494         Updated baseline images for tests with rgba outlines:
495                fast/box-shadow/box-shadow-radius.html
496                fast/layers/self-painting-outline.html
497
498          * rendering/RenderInline.cpp:
499         (WebCore::RenderInline::paintOutline):
500         (WebCore::RenderInline::paintOutlineForLine):
501         * rendering/RenderInline.h:
502         * rendering/RenderObject.cpp:
503         (WebCore::RenderObject::paintOutline):
504
505 2011-05-11  Levi Weintraub  <leviw@chromium.org>
506
507         Reviewed by Eric Seidel.
508
509         Rename Widget::pos()
510         https://bugs.webkit.org/show_bug.cgi?id=60575
511
512         Renaming Widget::pos() to the more-descriptive location().
513
514         No new tests as this is a simple rename
515
516         * page/FrameView.cpp:
517         (WebCore::FrameView::create):
518         * platform/Widget.h:
519         (WebCore::Widget::location):
520         (WebCore::Widget::resize):
521
522 2011-05-10  MORITA Hajime  <morrita@google.com>
523
524         Reviewed by Kent Tamura.
525
526         Crashes if the document inside iframe is removed during pasting some text into it.
527         https://bugs.webkit.org/show_bug.cgi?id=60534
528
529         Added missing null check.
530         
531         Test: editing/pasteboard/paste-removing-iframe.html
532
533         * editing/Editor.cpp:
534         (WebCore::Editor::shouldChangeSelection):
535
536 2011-05-11  Brian Salomon  <bsalomon@google.com>
537
538         Reviewed by Eric Seidel.
539
540         Handle case when GrContext creation fails
541         https://bugs.webkit.org/show_bug.cgi?id=60410
542
543         Exercised by all canvas tests when DRT is run with skia-gpu
544
545         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
546         (WebCore::SharedGraphicsContext3D::grContext):
547
548 2011-05-11  Pratik Solanki  <psolanki@apple.com>
549
550         Reviewed by Andreas Kling.
551
552         Remove empty class CallbackGuard
553         https://bugs.webkit.org/show_bug.cgi?id=60610
554
555         CallbackGuard was only ever used on Tiger and it is now an empty class. Remove all uses of it.
556
557         * platform/network/mac/ResourceHandleMac.mm:
558         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
559         (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]):
560         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
561         (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
562         (-[WebCoreResourceHandleAsDelegate connection:canAuthenticateAgainstProtectionSpace:]):
563         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
564         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
565         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
566         (-[WebCoreResourceHandleAsDelegate connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:]):
567         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
568         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
569         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
570
571 2011-05-11  Luke Macpherson   <macpherson@chromium.org>
572
573         Reviewed by Eric Seidel.
574
575         Implement CSSPropertyMargin and CSSPropertyPadding in CSSStyleApplyProperty.
576         https://bugs.webkit.org/show_bug.cgi?id=60609
577
578         No new tests - refactoring only.
579
580         * css/CSSStyleApplyProperty.cpp:
581         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
582         Initialise CSSPropertyMargin and CSSPropertyPadding handlers.
583         * css/CSSStyleSelector.cpp:
584         (WebCore::CSSStyleSelector::applyProperty):
585         Remove unused implementations.
586
587 2011-05-11  Robin Dunn  <robin@alldunn.com>
588
589         Reviewed by Kevin Ollivier.
590
591         [wx] Implement more clipping functions for wxWebKit.
592         
593         https://bugs.webkit.org/show_bug.cgi?id=60662
594
595         * platform/graphics/wx/GraphicsContextWx.cpp:
596         (WebCore::GraphicsContext::clip):
597         (WebCore::GraphicsContext::clipOut):
598
599 2011-05-11  Damian Kaleta  <dkaleta@apple.com>
600
601         Reviewed by Brady Eidson.
602
603         Need a new API that will try to restore the scrollbars' position, when navigating in the back/forward history
604         https://bugs.webkit.org/show_bug.cgi?id=60674
605
606         * WebCore.exp.in: Export restoreScrollPositionAndViewState()
607
608 2011-05-11  Levi Weintraub  <leviw@chromium.org>
609
610         Reviewed by Eric Seidel.
611
612         Switch paintFillLayer and its progeny to use IntRect instead of four ints
613         https://bugs.webkit.org/show_bug.cgi?id=60596
614
615         Changing integers passed into paintFillLayer and other derivatives to IntRects
616         and IntSizes that reflect their function.
617
618         No new tests since this is just refactoring.
619
620         * rendering/InlineFlowBox.cpp:
621         (WebCore::InlineFlowBox::paintFillLayers):
622         (WebCore::InlineFlowBox::paintFillLayer):
623         (WebCore::InlineFlowBox::paintBoxDecorations):
624         (WebCore::InlineFlowBox::paintMask):
625         * rendering/InlineFlowBox.h:
626         * rendering/RenderBox.cpp:
627         (WebCore::RenderBox::paintRootBoxFillLayers):
628         (WebCore::RenderBox::paintBoxDecorationsWithSize):
629         (WebCore::RenderBox::paintMaskImages):
630         (WebCore::RenderBox::paintFillLayers):
631         (WebCore::RenderBox::paintFillLayer):
632         * rendering/RenderBox.h:
633         * rendering/RenderBoxModelObject.cpp:
634         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
635         * rendering/RenderBoxModelObject.h:
636         * rendering/RenderFieldset.cpp:
637         (WebCore::RenderFieldset::paintBoxDecorations):
638         * rendering/RenderTable.cpp:
639         (WebCore::RenderTable::paintBoxDecorations):
640         * rendering/RenderTableCell.cpp:
641         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
642
643 2011-05-11  Nat Duca  <nduca@chromium.org>
644
645         Reviewed by James Robinson.
646
647         [chromium] Use mapTexSubImage2D for tile uploads if available
648         https://bugs.webkit.org/show_bug.cgi?id=60008
649
650         * platform/graphics/chromium/LayerTilerChromium.cpp:
651         (WebCore::LayerTilerChromium::LayerTilerChromium):
652         (WebCore::LayerTilerChromium::update):
653         (WebCore::LayerTilerChromium::updateFromPixels):
654         * platform/graphics/chromium/LayerTilerChromium.h:
655
656 2011-05-11  Alexis Menard  <alexis.menard@openbossa.org>
657
658         Reviewed by Kenneth Rohde Christiansen.
659
660         [Qt] Implements a disable appearance for Media Elements of Qt port.
661         https://bugs.webkit.org/show_bug.cgi?id=60561
662
663         Implements a disable appearance for the media controls of the Qt port
664         when the media is not yet available.
665
666         * platform/qt/RenderThemeQt.cpp:
667         (WebCore::mediaElementCanPlay):
668         (WebCore::RenderThemeQt::getMediaControlForegroundColor):
669         (WebCore::RenderThemeQt::paintMediaSliderThumb):
670
671 2011-05-11  Kent Tamura  <tkent@chromium.org>
672
673         Reviewed by Dimitri Glazkov.
674
675         input type=email is too strict
676         https://bugs.webkit.org/show_bug.cgi?id=55988
677
678         Follow the updated specification.
679
680         * html/EmailInputType.cpp: Update the pattern to allow a domain part without periods.
681
682 2011-05-11  Jia Pu  <jpu@apple.com>
683
684         Reviewed by Darin Adler.
685
686         Autocorrection persists after deleting and retyping the same word at same location.
687         https://bugs.webkit.org/show_bug.cgi?id=60555
688         <rdar://problem/9373915>
689
690         This patch intends to alleviate the issue of repetitively applying the same autocorrection
691         when user delete and retype the same word at the same location. This scenario is especially
692         common when autocorrection modifies the first letter of the word.
693
694         This patch consists following major changes:
695         1. Added a new marker type, DeletedAutocorrection. This marker is added to the whitespace that
696            precedes a deleted autocorrection. If the user later types the same original word at after
697            this whitespace, the autocorrection will not be applied again.
698         2. In DeleteSelectionCommand, added code to notify SpellingCorrectionController about the
699            autocorrection that has just been deleted.
700         3. In Editor and SpellingCorrectionController, added code to apply the marker and to suppress
701            autocorrection when necessary.
702         4. The change in CompositeEditCommand::replaceTextInNode is necessary for preserving markers.
703            Otherwise, we will loose the DeletedAutocorrection on the whitespace, when inserting text
704            after the whitespace.
705
706         Test: platform/mac/editing/spelling/delete-autocorrected-word-2.html
707
708         * dom/DocumentMarker.h: Added new marker type DeletedAutocorrection.
709         (WebCore::DocumentMarker::AllMarkers::AllMarkers):
710         * dom/DocumentMarkerController.cpp:
711         (WebCore::DocumentMarkerController::markersInRange): Support querying multiple marker types.
712         * dom/DocumentMarkerController.h:
713         * editing/CompositeEditCommand.cpp:
714         (WebCore::CompositeEditCommand::replaceTextInNodeAndPreserveMarkers):
715         (WebCore::CompositeEditCommand::rebalanceWhitespaceOnTextSubstring):
716         (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
717         * editing/CompositeEditCommand.h:
718         * editing/DeleteSelectionCommand.cpp:
719         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
720         (WebCore::DeleteSelectionCommand::fixupWhitespace):
721         (WebCore::DeleteSelectionCommand::originalStringForAutocorrectionAtBeginningOfSelection): Extracting
722            the original string if we are deleting an autocorrection.
723         (WebCore::DeleteSelectionCommand::doApply): Notify editor about the deleted autocorrection and its position.
724         * editing/DeleteSelectionCommand.h:
725         * editing/Editor.cpp:
726         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Moved all logic of determining
727            when to suppress an autocorrection into SpellingCorrectionController.
728         (WebCore::Editor::deletedAutocorrectionAtPosition):
729         * editing/Editor.h:
730         * editing/InsertParagraphSeparatorCommand.cpp:
731         (WebCore::InsertParagraphSeparatorCommand::doApply):
732         * editing/SpellingCorrectionController.cpp:
733         (WebCore::SpellingCorrectionController::respondToAppliedEditing):
734         (WebCore::SpellingCorrectionController::deletedAutocorrectionAtPosition):
735         (WebCore::SpellingCorrectionController::markPrecedingWhitespaceForDeletedAutocorrectionAfterCommand):
736         (WebCore::SpellingCorrectionController::processMarkersOnTextToBeReplacedByResult):
737         * editing/SpellingCorrectionController.h:
738         (WebCore::SpellingCorrectionController::UNLESS_ENABLED):
739         * editing/visible_units.cpp:
740         (WebCore::isStartOfWord):
741         * editing/visible_units.h:
742         * manual-tests/autocorrection/spell-checking-after-reversion.html:
743
744 2011-05-11  Dan Bernstein  <mitz@apple.com>
745
746         Reviewed by Darin Adler.
747
748         <rdar://problem/9414874> Layout unnecessarily interrupts smooth scrolling at msnbc.com
749         https://bugs.webkit.org/show_bug.cgi?id=60677
750
751         * platform/ScrollView.cpp:
752         (WebCore::ScrollView::updateScrollbars): Only perform an immediate scroll, aborting any running
753         animation, if the new scroll offset computed here is different from the current scroll offset.
754
755 2011-05-11  Kent Tamura  <tkent@chromium.org>
756
757         Reviewed by Dimitri Glazkov.
758
759         <input pattern="1|10" value="10"> doesn't work correctly.
760         https://bugs.webkit.org/show_bug.cgi?id=60619
761
762         Fixes a bug that patternMismatch returns a wrong result if
763          - a whole value matches to a pattern,
764          - a sub-string of the value also matches to the pattern, and
765          - the sub-string matching has priority.
766
767         * html/BaseTextInputType.cpp:
768         (WebCore::BaseTextInputType::patternMismatch):
769           Enclose the specified pattern with ^( and )$.
770
771 2011-05-11  Zelidrag Hornung  <zelidrag@chromium.org>
772
773         Reviewed by David Levin.
774
775         Prevented DOMFileSystemBase from imposing file naming restrictions on
776         external file systems.
777
778         https://bugs.webkit.org/show_bug.cgi?id=60583
779
780         There are no new tests for this change since it requires the presence
781         of external file system provider which is specific to the platform host
782         process. Chromium implementation will test this within its extension API
783         test suite.
784
785         * fileapi/DOMFileSystemBase.cpp:
786         (WebCore::pathToAbsolutePath):
787         (WebCore::DOMFileSystemBase::getFile):
788         (WebCore::DOMFileSystemBase::getDirectory):
789
790 2011-05-11  Antoine Labour  <piman@chromium.org>
791
792         Reviewed by David Levin.
793
794         Expose shouldBufferData to ThreadableLoaderOptions to be able to disable buffering of the
795         loaded resource.
796         https://bugs.webkit.org/show_bug.cgi?id=60656
797
798         * loader/DocumentThreadableLoader.cpp:
799         (WebCore::DocumentThreadableLoader::loadRequest):
800         Pass the shouldBufferData to the resource load scheduler, forcing it to true for the
801         preflight request.
802         * loader/ResourceLoadScheduler.cpp:
803         (WebCore::ResourceLoadScheduler::scheduleSubresourceLoad):
804         Pass through shouldBufferData to SubresourceLoader::create
805         * loader/ResourceLoadScheduler.h:
806
807         * loader/SubresourceLoader.cpp:
808         (WebCore::SubresourceLoader::create):
809         Set shouldBufferData on the newly created loader
810
811         * loader/SubresourceLoader.h:
812
813         * loader/ThreadableLoader.h:
814         (WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions):
815         Add shouldBufferData to the options, defaulting to true.
816
817 2011-05-11  Jay Civelli  <jcivelli@chromium.org>
818
819         Reviewed by Adam Barth.
820
821         Adding a Content-Type parser. This is needed for MHTML support.
822         https://bugs.webkit.org/show_bug.cgi?id=60637
823
824         (WebCore::ScriptController::disableEval):
825         * platform/network/ContentTypeParser.cpp: Added.
826         * platform/network/ContentTypeParser.h: Added.
827
828 2011-05-11  Jessie Berlin  <jberlin@apple.com>
829
830         Reviewed by Steve Falkenburg.
831
832         [Windows WebKit2] Use cookies set in WebKit1
833         https://bugs.webkit.org/show_bug.cgi?id=60274
834
835         Share the default storage session between the UI and Web Processes.
836
837         * platform/network/cf/CookieStorageCFNet.cpp:
838         (WebCore::defaultSessionCookieStorage):
839         Keep track of the default storage session cookie storage.
840         (WebCore::currentCookieStorage):
841         Call defaultCookieStorage to get the default cookie storage.
842         (WebCore::defaultCookieStorage):
843         If there is a default storage session cookie storage, prefer that over getting the default
844         cookie storage. In the Web Process, asking CFNetwork for the default cookie storage directly
845         without specifying a storage session will not get the cookie storage being shared by the UI
846         and Web Processes.
847
848         * platform/network/ResourceHandle.h:
849         * platform/network/cf/ResourceHandleCFNet.cpp:
850         (WebCore::willSendRequest):
851         Make sure to set the current storage session on any requests used by the Web
852         Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
853         doing anything with the Web Process's default storage session (which is not the one shared
854         with the UI Process).
855         (WebCore::makeFinalRequest):
856         Ditto.
857         (WebCore::ResourceHandle::willSendRequest):
858         Ditto.
859         (WebCore::ResourceHandle::currentStorageSession):
860         If there is a Private Browsing storage session, return that.
861         If not, on Windows return the default storage session that is being shared with the UI
862         Process and on Mac return 0.
863         (WebCore::defaultCFURLStorageSession):
864         (WebCore::ResourceHandle::setDefaultStorageSession):
865         (WebCore::ResourceHandle::defaultStorageSession):
866
867         * platform/network/cf/ResourceRequestCFNet.cpp:
868         (WebCore::ResourceRequest::doUpdatePlatformRequest):
869         Make sure to set the current storage session on any requests used by the Web
870         Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
871         doing anything with the Web Process's default storage session (which is not the one shared
872         with the UI Process).
873
874 2011-05-11  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
875
876         Reviewed by David Kilzer.
877
878         Remove wml directory from include lists
879         https://bugs.webkit.org/show_bug.cgi?id=60646
880
881         Remove wml dir from CMake, Autotools and qmake build systems since WML
882         was removed in r85256.
883
884         No new tests since no change in functionality.
885
886         * CMakeLists.txt:
887         * GNUmakefile.am:
888         * WebCore.pri:
889
890 2011-05-11  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
891
892         Reviewed by Antonio Gomes.
893
894         [CMAKE] Move EFL-specific file to CMakeListsEfl.txt
895         https://bugs.webkit.org/show_bug.cgi?id=60642
896
897         Move file EFL-specific file to the CMakeListsEfl.txt file. This implies
898         having to include CMakeLists${PORT}.txt before the ADD_CUSTOM_COMMAND
899         calls, since they depend on lists that now may change inside a port
900         like WebCore_USER_AGENT_STYLE_SHEETS.
901
902         No new tests since no change in functionality.
903
904         * CMakeLists.txt: remove css file specific to EFL port.
905         * CMakeListsEfl.txt: move file here.
906
907 2011-05-11  Tao Bai  <michaelbai@chromium.org>
908
909         Reviewed by David Kilzer.
910
911         Return empty Favicon URL instead of default one when the frame isn't top level one
912         https://bugs.webkit.org/show_bug.cgi?id=60527
913         This issue was discovered by chromium browser test.
914
915         * dom/Document.cpp:
916         (WebCore::Document::setIconURL):
917         Restored original logic which was inadvertently flipped by http://trac.webkit.org/changeset/85785.
918         * loader/FrameLoader.cpp:
919         (WebCore::FrameLoader::iconURLs):
920         (WebCore::FrameLoader::fillIconURL):
921         Restored original logic, the empty URL should be returned instead of default one. The client (at
922         least chromium) may rely on the returned value to decided whether the favicon should be changed.
923
924 2011-05-11  Nat Duca  <nduca@chromium.org>
925
926         Reviewed by Kenneth Russell.
927
928         [chromium] Make throttling of WebGL based on webgl frames, not compositor frames
929         https://bugs.webkit.org/show_bug.cgi?id=60508
930
931         When a WebGL layer is dirtied outside of a requestAnimFrame callback, we need
932         to prevent WebGL from running too far ahead of the GPU process. The current
933         throttling mechanism relies on prepareTexture being called for every WebGL frame.
934         However, in a non-requestAnimFrame application, multiple frames might get created
935         before the compositor runs and calls prepareTexture on the surface.
936
937         To address this, we post a task that calls a special rate limiting GL extension on
938         the WebGL context after every WebGL "frame." When the compositor runs, it calls
939         prepareTexture as usual.
940
941         * platform/graphics/chromium/Extensions3DChromium.h:
942         * platform/graphics/chromium/LayerRendererChromium.cpp:
943         (WebCore::LayerRendererChromium::LayerRendererChromium):
944         * platform/graphics/chromium/LayerRendererChromium.h:
945         (WebCore::LayerRendererChromium::setIsAnimating):
946         (WebCore::LayerRendererChromium::isAnimating):
947         * platform/graphics/chromium/WebGLLayerChromium.cpp:
948         (WebCore::WebGLLayerChromiumRateLimitTask::WebGLLayerChromiumRateLimitTask):
949         (WebCore::WebGLLayerChromiumRateLimitTask::run):
950         (WebCore::WebGLLayerChromiumRateLimitTask::cancel):
951         (WebCore::WebGLLayerChromium::WebGLLayerChromium):
952         (WebCore::WebGLLayerChromium::~WebGLLayerChromium):
953         (WebCore::WebGLLayerChromium::setTextureUpdated):
954         (WebCore::WebGLLayerChromium::setContext):
955         * platform/graphics/chromium/WebGLLayerChromium.h:
956         (WebCore::WebGLLayerChromium::context):
957
958 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
959
960         Reviewed by Kenneth Rohde Christiansen.
961
962         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
963         https://bugs.webkit.org/show_bug.cgi?id=60439
964
965         Patch 12/12: Enable accelerated animations in texture-mapper. The entire interpolation
966         mechanism happens inside TextureMapper, and we interpolate right before we paint.
967
968         No new tests. Tests in LayoutTests/compositing cover this.
969
970         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
971         (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
972         (WebCore::GraphicsLayerTextureMapper::syncCompositingState):
973         (WebCore::GraphicsLayerTextureMapper::addAnimation):
974         (WebCore::GraphicsLayerTextureMapper::pauseAnimation):
975         (WebCore::GraphicsLayerTextureMapper::removeAnimation):
976         (WebCore::GraphicsLayerTextureMapper::animationStartedTimerFired):
977         * platform/graphics/texmap/TextureMapperNode.cpp:
978         (WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
979         (WebCore::normalizedAnimationValue):
980         (WebCore::TextureMapperNode::applyOpacityAnimation):
981         (WebCore::solveEpsilon):
982         (WebCore::solveCubicBezierFunction):
983         (WebCore::solveStepsFunction):
984         (WebCore::applyTimingFunction):
985         (WebCore::TextureMapperNode::applyTransformAnimation):
986         (WebCore::TextureMapperNode::applyAnimationFrame):
987         (WebCore::TextureMapperNode::applyAnimation):
988         (WebCore::TextureMapperNode::hasRunningOpacityAnimation):
989         (WebCore::TextureMapperNode::hasRunningTransformAnimation):
990         (WebCore::TextureMapperNode::syncAnimations):
991         (WebCore::copyTimingFunction):
992         (WebCore::copyAnimationValue):
993         (WebCore::TextureMapperAnimation::TextureMapperAnimation):
994         * platform/graphics/texmap/TextureMapperNode.h:
995         (WebCore::TextureMapperAnimation::create):
996
997 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
998
999         Reviewed by Kenneth Rohde Christiansen.
1000
1001         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1002         https://bugs.webkit.org/show_bug.cgi?id=60439
1003
1004         Patch 11/12: Patch PluginView to build with TextureMapper on Linux.
1005
1006         No new tests. This is a build fix.
1007
1008         * platform/qt/QWebPageClient.h:
1009         (QWebPageClient::setRootGraphicsLayer):
1010
1011 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
1012
1013         Reviewed by Kenneth Rohde Christiansen.
1014
1015         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1016         https://bugs.webkit.org/show_bug.cgi?id=60439
1017
1018         Patch 10/12: Glue the TextureMapper refactoring into Webkit(1).
1019         Pass a GraphicsLayer* instead of a PlatformLayer* to the QWebPageClient.
1020
1021         No new tests. Tests in LayoutTests/compositing cover this.
1022
1023         * platform/qt/QWebPageClient.h:
1024         (QWebPageClient::setRootGraphicsLayer):
1025
1026 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
1027
1028         Reviewed by Kenneth Rohde Christiansen.
1029
1030         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1031         https://bugs.webkit.org/show_bug.cgi?id=60439
1032
1033         Patch 9/12: Refactor TextureMapperNode for performance, readability and accuracy.
1034         Changes include:
1035         1. Support the new TextureMapperPlatformLayer for media & WebGL.
1036         2. Use a pool for intermediate surfaces, to avoid constant allocating/freeing of textures.
1037         3. Divide computation operations to different smaller functions.
1038         4. Get rid of scissor/clip layers, use transformed clip instead.
1039         5. Allow tiling for big layers.
1040
1041         No new tests. Tests in LayoutTests/compositing cover this.
1042
1043         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1044         (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
1045         (WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
1046         (WebCore::GraphicsLayerTextureMapper::setContentsToMedia):
1047         (WebCore::GraphicsLayerTextureMapper::platformLayer):
1048         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
1049         (WebCore::GraphicsLayerTextureMapper::setContentsNeedsDisplay):
1050         (WebCore::GraphicsLayerTextureMapper::setContentsToCanvas):
1051         (WebCore::GraphicsLayerTextureMapper::node):
1052         * platform/graphics/texmap/TextureMapperNode.cpp:
1053         (WebCore::TextureMapperSurfaceManager::getIntermediateSurface):
1054         (WebCore::TextureMapperSurfaceManager::releaseIntermediateSurface):
1055         (WebCore::toTextureMapperNode):
1056         (WebCore::TextureMapperNode::rootLayer):
1057         (WebCore::TextureMapperNode::setTransform):
1058         (WebCore::TextureMapperNode::computePerspectiveTransformIfNeeded):
1059         (WebCore::TextureMapperNode::countDescendantsWithContent):
1060         (WebCore::TextureMapperNode::computeOverlapsIfNeeded):
1061         (WebCore::TextureMapperNode::computeReplicaTransformIfNeeded):
1062         (WebCore::TextureMapperNode::computeLocalTransformIfNeeded):
1063         (WebCore::TextureMapperNode::needsToComputeBoundingRect):
1064         (WebCore::TextureMapperNode::computeAllTransforms):
1065         (WebCore::TextureMapperNode::computeBoundingRectFromRootIfNeeded):
1066         (WebCore::TextureMapperNode::computeTiles):
1067         (WebCore::TextureMapperNode::computeVisibleRectIfNeeded):
1068         (WebCore::TextureMapperNode::renderContent):
1069         (WebCore::TextureMapperNode::paint):
1070         (WebCore::TextureMapperNode::targetRectForTileRect):
1071         (WebCore::TextureMapperNode::paintSelf):
1072         (WebCore::TextureMapperNode::compareGraphicsLayersZValue):
1073         (WebCore::TextureMapperNode::sortByZOrder):
1074         (WebCore::TextureMapperNode::paintSelfAndChildren):
1075         (WebCore::TextureMapperNode::paintReflection):
1076         (WebCore::TextureMapperNode::paintRecursive):
1077         (WebCore::TextureMapperNode::~TextureMapperNode):
1078         (WebCore::TextureMapperNode::resetDescendants):
1079         (WebCore::TextureMapperNode::setContentScale):
1080         (WebCore::TextureMapperNode::setVisibleRect):
1081         (WebCore::TextureMapperNode::syncCompositingState):
1082         (WebCore::TextureMapperNode::invalidateOverlaps):
1083         (WebCore::TextureMapperNode::syncCompositingStateSelf):
1084         (WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
1085         * platform/graphics/texmap/TextureMapperNode.h:
1086         (WebCore::TextureMapperPaintOptions::TextureMapperPaintOptions):
1087         (WebCore::TextureMapperAnimation::create):
1088         (WebCore::TextureMapperNode::TextureMapperNode):
1089         (WebCore::TextureMapperNode::size):
1090         (WebCore::TextureMapperNode::setOpacity):
1091         (WebCore::TextureMapperNode::setTextureMapper):
1092         (WebCore::TextureMapperNode::media):
1093         (WebCore::TextureMapperNode::texture):
1094         (WebCore::TextureMapperNode::targetRect):
1095         (WebCore::TextureMapperNode::entireRect):
1096         (WebCore::TextureMapperNode::contentSize):
1097         (WebCore::TextureMapperNode::State::State):
1098         (WebCore::deleteOwnedPtr):
1099
1100 2011-05-07  Noam Rosenthal  <noam.rosenthal@nokia.com>
1101
1102         Reviewed by Kenneth Rohde Christiansen.
1103
1104         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1105         https://bugs.webkit.org/show_bug.cgi?id=60439
1106
1107         Patch 8/12: Changes to the GL backend of TextureMapper. The code for these changes is intertwined so it was hard to separate
1108         them to different patches. This is the summary of what the changes do:
1109
1110         1. Use stencil for clipping instead of scissors, refactor beginClip/endClip functions to accomodate that.
1111         2. Get rid of the "Target" program which forced an intermediate framebuffer for any content. Instead,
1112            we upload the texture with BGRA from the start. Ports other than Qt can optimize this for their needs.
1113         3. Use glGetAttribLocation instead of glBindAttribLocation; On some platforms we might be polluting the
1114            GL context otherwise.
1115         4. Use image UIDs (cache-key in Qt) instead of image pointers. This is important for images that change their
1116            internal content.
1117         5. Allow packing and unpacking. This is currently a stub, for future memory optimizations.
1118         6. Put some of the initialization code here (beginPainting/endPainting).
1119         7. Allow painting a texture via an ID instead of a BitmapTexture data type.
1120         8. Get rid of makeContextCurrent / obtainCurrentContext. We only use texture-mapper when the context is current.
1121
1122         No new tests. Tests in LayoutTests/compositing test this.
1123
1124         * platform/graphics/opengl/TextureMapperGL.cpp:
1125         (WebCore::debugGLCommand):
1126         (WebCore::TextureMapperGLData::GlobalGLData::createShaderProgram):
1127         (WebCore::TextureMapperGLData::GlobalGLData::GlobalGLData):
1128         (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::findOrCreate):
1129         (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::deref):
1130         (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::~DirectlyCompositedImageRepository):
1131         (WebCore::TextureMapperGLData::TextureMapperGLData):
1132         (WebCore::BitmapTextureGL::id):
1133         (WebCore::BitmapTextureGL::isOpaque):
1134         (WebCore::BitmapTextureGL::relativeSize):
1135         (WebCore::BitmapTextureGL::setTextureMapper):
1136         (WebCore::BitmapTextureGL::pack):
1137         (WebCore::BitmapTextureGL::unpack):
1138         (WebCore::BitmapTextureGL::isPacked):
1139         (WebCore::BitmapTextureGL::BitmapTextureGL):
1140         (WebCore::TextureMapperGL::TextureMapperGL):
1141         (WebCore::TextureMapperGL::initializeShaders):
1142         (WebCore::TextureMapperGL::beginPainting):
1143         (WebCore::TextureMapperGL::endPainting):
1144         (WebCore::TextureMapperGL::drawTexture):
1145         (WebCore::BitmapTextureGL::reset):
1146         (WebCore::BitmapTextureGL::endPaint):
1147         (WebCore::BitmapTextureGL::setContentsToImage):
1148         (WebCore::createProjectionMatrix):
1149         (WebCore::BitmapTextureGL::bind):
1150         (WebCore::BitmapTextureGL::destroy):
1151         (WebCore::TextureMapperGL::~TextureMapperGL):
1152         (WebCore::TextureMapperGL::bindSurface):
1153         (WebCore::TextureMapperGL::beginClip):
1154         (WebCore::TextureMapperGL::endClip):
1155         (WebCore::TextureMapperGL::createTexture):
1156         * platform/graphics/opengl/TextureMapperGL.h:
1157         (WebCore::TextureMapperGL::allowSurfaceForRoot):
1158         (WebCore::TextureMapperGL::create):
1159         (WebCore::TextureMapperGL::setGraphicsContext):
1160         (WebCore::TextureMapperGL::graphicsContext):
1161         (WebCore::TextureMapperGL::isOpenGLBacked):
1162         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1163         (WebCore::GraphicsContext3DInternal::paintToTextureMapper):
1164         (WebCore::GraphicsContext3DInternal::boundingRect):
1165         (WebCore::GraphicsContext3DInternal::paint):
1166         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1167         (WebCore::MediaPlayerPrivateQt::repaint):
1168         (WebCore::MediaPlayerPrivateQt::paintToTextureMapper):
1169         * platform/graphics/qt/MediaPlayerPrivateQt.h:
1170         (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged):
1171         (WebCore::MediaPlayerPrivateQt::platformLayer):
1172
1173 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
1174
1175         Reviewed by Kenneth Rohde Christiansen.
1176
1177         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1178         https://bugs.webkit.org/show_bug.cgi?id=60439
1179
1180         Patch 7/12: Allow a 3D-context (WebGL) to paint itself into a TextureMapper.
1181         This allows using a WebGL canvas with CSS.
1182
1183         No new tests. Tests in LayoutTests/compositing/webgl cover this.
1184
1185         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1186         (WebCore::GraphicsContext3DInternal::paintToTextureMapper):
1187         (WebCore::GraphicsContext3DInternal::boundingRect):
1188         (WebCore::GraphicsContext3DInternal::paint):
1189         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1190         (WebCore::MediaPlayerPrivateQt::repaint):
1191         (WebCore::MediaPlayerPrivateQt::paintToTextureMapper):
1192         * platform/graphics/qt/MediaPlayerPrivateQt.h:
1193         (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged):
1194         (WebCore::MediaPlayerPrivateQt::platformLayer):
1195
1196 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
1197
1198         Reviewed by Kenneth Rohde Christiansen.
1199
1200         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1201         https://bugs.webkit.org/show_bug.cgi?id=60439
1202
1203         Patch 6/12: Allow the Qt media player implementation to paint into a TextureMapper,
1204         to allow videos to be composited.
1205
1206         No new tests. Tests in LayoutTests/compositing cover this.
1207
1208         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1209         (WebCore::MediaPlayerPrivateQt::repaint):
1210         (WebCore::MediaPlayerPrivateQt::paintToTextureMapper):
1211         * platform/graphics/qt/MediaPlayerPrivateQt.h:
1212         (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged):
1213         (WebCore::MediaPlayerPrivateQt::platformLayer):
1214
1215 2011-05-11  John Bauman  <jbauman@chromium.org>
1216
1217         Reviewed by Kenneth Russell.
1218
1219         Don't send zeros in TexImage if GL implementation handles that
1220         https://bugs.webkit.org/show_bug.cgi?id=60581
1221
1222         Chromium already handles zeroing textures upon creation, so don't
1223         bother zeroing them in WebKit, as that causes some unnecessary memcpys
1224         of zeros.
1225
1226         No new tests as functionality is the same.
1227
1228         * html/canvas/WebGLRenderingContext.cpp:
1229         (WebCore::WebGLRenderingContext::texImage2DBase):
1230         * platform/graphics/GraphicsContext3D.cpp:
1231         (WebCore::GraphicsContext3D::texImage2DResourceSafe):
1232         * platform/graphics/GraphicsContext3D.h:
1233         * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
1234         (WebCore::GraphicsContext3D::GraphicsContext3D):
1235         * platform/graphics/mac/GraphicsContext3DMac.mm:
1236         (WebCore::GraphicsContext3D::GraphicsContext3D):
1237         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1238         (WebCore::GraphicsContext3D::GraphicsContext3D):
1239
1240 2011-05-11  Simon Fraser  <simon.fraser@apple.com>
1241
1242         Attempt to fix Chromium Mac build.
1243
1244         * rendering/RenderThemeMac.mm:
1245         (WebCore::RenderThemeMac::paintSliderThumb):
1246
1247 2011-05-11  Daniel Bates  <dbates@rim.com>
1248
1249         Reviewed by Antonio Gomes.
1250
1251         [Qt] Extract code to set mouse event modifiers into common function
1252         https://bugs.webkit.org/show_bug.cgi?id=60649
1253
1254         Consolidate code to set the keyboard modifiers for a mouse event into a common
1255         function that can be used by both PlatformMouseEvent(QGraphicsSceneMouseEvent*, int clickCount)
1256         and PlatformMouseEvent(QInputEvent*, int clickCount) so as to remove duplicate code.
1257
1258         No functionality was changed. So, no new tests.
1259
1260         * platform/qt/PlatformMouseEventQt.cpp:
1261         (WebCore::mouseEventModifiersFromQtKeyboardModifiers): Added.
1262         (WebCore::PlatformMouseEvent::PlatformMouseEvent): Modified to call mouseEventModifiersFromQtKeyboardModifiers().
1263
1264 2011-05-11  Levi Weintraub  <leviw@chromium.org>
1265
1266         Reviewed by Eric Seidel.
1267
1268         Switch RenderBoxModelObject::paintBorder to use IntRect instead of four ints
1269         https://bugs.webkit.org/show_bug.cgi?id=60591
1270
1271         Switching RenderBoxModelObject::paintBorder to use IntRect instead of four ints representing a rect.
1272
1273         No new tests since there is no functionality change.
1274
1275         * rendering/InlineFlowBox.cpp:
1276         (WebCore::InlineFlowBox::paintBoxDecorations):
1277         * rendering/RenderBox.cpp:
1278         (WebCore::RenderBox::paintBoxDecorationsWithSize):
1279         * rendering/RenderBoxModelObject.cpp:
1280         (WebCore::RenderBoxModelObject::paintBorder):
1281         * rendering/RenderBoxModelObject.h:
1282         * rendering/RenderFieldset.cpp:
1283         (WebCore::RenderFieldset::paintBoxDecorations):
1284         * rendering/RenderTable.cpp:
1285         (WebCore::RenderTable::paintBoxDecorations):
1286         * rendering/RenderTableCell.cpp:
1287         (WebCore::RenderTableCell::paintBoxDecorations):
1288
1289 2011-05-11  Sheriff Bot  <webkit.review.bot@gmail.com>
1290
1291         Unreviewed, rolling out r86255.
1292         http://trac.webkit.org/changeset/86255
1293         https://bugs.webkit.org/show_bug.cgi?id=60660
1294
1295         REGRESSION (r86255): Lots of tests crashing in
1296         CFWriteStreamCreateWithAllocatedBuffers on Windows 7 Release
1297         (WebKit2 Tests) (Requested by aroben on #webkit).
1298
1299         * platform/network/ResourceHandle.h:
1300         * platform/network/cf/CookieStorageCFNet.cpp:
1301         (WebCore::currentCookieStorage):
1302         (WebCore::defaultCookieStorage):
1303         * platform/network/cf/ResourceHandleCFNet.cpp:
1304         (WebCore::willSendRequest):
1305         (WebCore::makeFinalRequest):
1306         (WebCore::ResourceHandle::willSendRequest):
1307         * platform/network/cf/ResourceRequestCFNet.cpp:
1308         (WebCore::ResourceRequest::doUpdatePlatformRequest):
1309
1310 2011-05-11  Sam Weinig  <sam@webkit.org>
1311
1312         Reviewed by Eric Seidel.
1313
1314         Frequent crashes beneath WebCore::ScriptElement::prepareScript
1315         https://bugs.webkit.org/show_bug.cgi?id=60559
1316
1317         * html/parser/HTMLScriptRunner.cpp:
1318         (WebCore::HTMLScriptRunner::runScript):
1319         Add null check and explanation that we are keeping the ASSERT to help
1320         track down the cause and produce a test.
1321
1322 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
1323
1324         Reviewed by Kenneth Rohde Christiansen.
1325
1326         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1327         https://bugs.webkit.org/show_bug.cgi?id=60439
1328
1329         Patch 5/12: Implement the new TextureMapper functions for the Qt backend.
1330         This allow non-rectangular clipping, some stub functions, and getting a unique
1331         id for an image.
1332
1333         No new tests. Tests in LayoutTests/compositing cover this.
1334
1335         * platform/graphics/qt/TextureMapperQt.cpp:
1336         (WebCore::TextureMapperQt::beginClip):
1337         (WebCore::TextureMapperQt::endClip):
1338         (WebCore::TextureMapperQt::viewportSize):
1339         (WebCore::TextureMapperQt::setGraphicsContext):
1340         (WebCore::TextureMapperQt::graphicsContext):
1341         (WebCore::TextureMapperQt::drawTexture):
1342         (WebCore::TextureMapperQt::beginPainting):
1343         (WebCore::TextureMapperQt::endPainting):
1344         (WebCore::RGBA32PremultimpliedBufferQt::beginPaint):
1345         (WebCore::uidForImage):
1346         * platform/graphics/qt/TextureMapperQt.h:
1347
1348 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
1349
1350         Reviewed by Kenneth Rohde Christiansen.
1351
1352         [Texmap] Upstream texture-mapper changes from Qt's WebKit2 branch
1353         https://bugs.webkit.org/show_bug.cgi?id=60439
1354
1355         Patch 3/12: TextureMapper shouldn't depend on OpenGL, but rather only allow the GL backend when
1356         OpenGL is present.
1357
1358         No new tests. This is a build fix.
1359
1360         * WebCore.pri:
1361         * WebCore.pro:
1362
1363 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
1364
1365         Reviewed by Kenneth Rohde Christiansen.
1366
1367         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1368         https://bugs.webkit.org/show_bug.cgi?id=60439
1369
1370         Patch 2/12: Add a few functions to the TextureMapper API, allowing:
1371         1. an entry/exit point for painting (beginPaint/endPaint)
1372         2. Clipping with a matrix, since we use stencil instead of scissors
1373         3. Draw a texture directly with an ID
1374         4. Remove offset, since we're using real tiling
1375         5. numberOfBytes calculation for textures, for memory management
1376
1377         No new tests. Tests in LayoutTests/compositing test this.
1378
1379         * platform/graphics/texmap/TextureMapper.h:
1380         (WebCore::BitmapTexture::destroy):
1381         (WebCore::BitmapTexture::allowOfflineTextureUpload):
1382         (WebCore::BitmapTexture::bpp):
1383         (WebCore::BitmapTexture::numberOfBytes):
1384         (WebCore::TextureMapper::viewportSize):
1385         (WebCore::TextureMapper::setViewportSize):
1386         (WebCore::TextureMapper::allowPartialUpdates):
1387         (WebCore::TextureMapper::isOpenGLBacked):
1388         (WebCore::TextureMapper::setTransform):
1389         (WebCore::TextureMapper::transform):
1390         (WebCore::TextureMapper::beginPainting):
1391         (WebCore::TextureMapper::endPainting):
1392
1393 2011-05-11  Noam Rosenthal  <noam.rosenthal@nokia.com>
1394
1395         Reviewed by Kenneth Rohde Christiansen.
1396
1397         [Texmap][Qt] Upstream texture-mapper changes from Qt's WebKit2 branch
1398         https://bugs.webkit.org/show_bug.cgi?id=60439
1399
1400         Patch 1/12: Change the TextureMapperPlatformLayer API to allow a 3D-context or a
1401         media player to decide how to paint into the TextureMapper, rather than mandate specific
1402         types of platform layers.
1403
1404         No new tests. Tests in LayoutTests/compositing test this.
1405
1406         * platform/graphics/GraphicsLayer.h:
1407         * platform/graphics/texmap/TextureMapperPlatformLayer.h:
1408
1409 2011-05-11  Simon Fraser  <simon.fraser@apple.com>
1410
1411         Reviewed by Darin Adler.
1412
1413         Flesh out RenderLayer's ScrollableArea implementation a little more
1414         https://bugs.webkit.org/show_bug.cgi?id=60593
1415
1416         Override a few more ScrollableArea methods on RenderLayer
1417         as a baby-step towards animating overflow div scrolling.
1418
1419         * platform/ScrollableArea.h:
1420         (WebCore::ScrollableArea::visibleContentRect):
1421         * rendering/RenderLayer.cpp:
1422         (WebCore::RenderLayer::scrollPosition):
1423         (WebCore::RenderLayer::minimumScrollPosition):
1424         (WebCore::RenderLayer::maximumScrollPosition):
1425         (WebCore::RenderLayer::visibleContentRect):
1426         (WebCore::RenderLayer::overhangAmount):
1427         (WebCore::RenderLayer::didCompleteRubberBand):
1428         * rendering/RenderLayer.h:
1429         (WebCore::RenderLayer::shouldSuspendScrollAnimations):
1430
1431 2011-05-11  Simon Fraser  <simon.fraser@apple.com>
1432
1433         Reviewed by Dave Hyatt.
1434
1435         <rdar://problem/9421781> Slider thumb draws upside-down in WebKit2
1436         <rdar://problem/9418025> Slider thumb has odd appearance
1437
1438         Fix two issues drawing the slider thumb.
1439         
1440         To fix <rdar://problem/9421781>, if we detect that we're in WebKit2
1441         by virtual of the FrameView not having a documentView, then flip
1442         the graphics context.
1443
1444         To fix <rdar://problem/9418025>, we call -drawInteriorWithFrame:inView:
1445         rather than -drawWithFrame:inView: so that AppKit doesn't draw a section
1446         of track behind the thumb.
1447
1448         * rendering/RenderThemeMac.mm:
1449         (WebCore::RenderThemeMac::paintSliderThumb):
1450
1451 2011-05-11  Jessie Berlin  <jberlin@apple.com>
1452
1453         Reviewed by Steve Falkenburg.
1454
1455         [Windows WebKit2] Use cookies set in WebKit1
1456         https://bugs.webkit.org/show_bug.cgi?id=60274
1457
1458         Share the default storage session between the UI and Web Processes.
1459
1460         * platform/network/cf/CookieStorageCFNet.cpp:
1461         (WebCore::defaultSessionCookieStorage):
1462         Keep track of the default storage session cookie storage.
1463         (WebCore::currentCookieStorage):
1464         Call defaultCookieStorage to get the default cookie storage.
1465         (WebCore::defaultCookieStorage):
1466         If there is a default storage session cookie storage, prefer that over getting the default
1467         cookie storage. In the Web Process, asking CFNetwork for the default cookie storage directly
1468         without specifying a storage session will not get the cookie storage being shared by the UI
1469         and Web Processes.
1470
1471         * platform/network/ResourceHandle.h:
1472         * platform/network/cf/ResourceHandleCFNet.cpp:
1473         (WebCore::willSendRequest):
1474         Make sure to set the current storage session on any requests used by the Web
1475         Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
1476         doing anything with the Web Process's default storage session (which is not the one shared
1477         with the UI Process).
1478         (WebCore::makeFinalRequest):
1479         Ditto.
1480         (WebCore::ResourceHandle::willSendRequest):
1481         Ditto.
1482         (WebCore::ResourceHandle::currentStorageSession):
1483         If there is a Private Browsing storage session, return that.
1484         If not, on Windows return the default storage session that is being shared with the UI
1485         Process and on Mac return 0.
1486         (WebCore::defaultCFURLStorageSession):
1487         (WebCore::ResourceHandle::setDefaultStorageSession):
1488         (WebCore::ResourceHandle::defaultStorageSession):
1489
1490         * platform/network/cf/ResourceRequestCFNet.cpp:
1491         (WebCore::ResourceRequest::doUpdatePlatformRequest):
1492         Make sure to set the current storage session on any requests used by the Web
1493         Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
1494         doing anything with the Web Process's default storage session (which is not the one shared
1495         with the UI Process).
1496
1497 2011-05-11  Martin Robinson  <mrobinson@igalia.com>
1498
1499         Try once more to fix the WinCairo build.
1500
1501         * platform/graphics/cairo/CairoUtilities.h: Include GraphicsTypes.h with a relative
1502         include rather than a system include.
1503
1504 2011-05-11  Sam Weinig  <sam@webkit.org>
1505
1506         Reviewed by Eric Seidel.
1507
1508         Stop including Console.h just to get Console enum types
1509         https://bugs.webkit.org/show_bug.cgi?id=60607
1510
1511         Move MessageSource, MessageType and MessageLevel into its own
1512         header and cleanup surrounding classes.
1513
1514         * GNUmakefile.list.am:
1515         * WebCore.gypi:
1516         * WebCore.pro:
1517         * WebCore.vcproj/WebCore.vcproj:
1518         * WebCore.xcodeproj/project.pbxproj:
1519         * bindings/js/JSCustomXPathNSResolver.cpp:
1520         * bindings/scripts/CodeGeneratorJS.pm:
1521         * bindings/v8/V8Proxy.cpp:
1522         * dom/ScriptExecutionContext.h:
1523         * html/HTMLFormElement.cpp:
1524         * html/parser/XSSFilter.cpp:
1525         * inspector/ConsoleMessage.h:
1526         * inspector/InjectedScriptHost.h:
1527         * inspector/InspectorAgent.h:
1528         * inspector/InspectorConsoleAgent.h:
1529         * inspector/InspectorFrontendHost.h:
1530         * inspector/InspectorInstrumentation.cpp:
1531         * inspector/InspectorInstrumentation.h:
1532         * loader/EmptyClients.h:
1533         * loader/FrameLoader.cpp:
1534         * loader/MainResourceLoader.cpp:
1535         * loader/appcache/ApplicationCacheGroup.cpp:
1536         * page/ChromeClient.h:
1537         * page/Console.cpp:
1538         (WebCore::Console::~Console):
1539         * page/Console.h:
1540         * page/ConsoleTypes.h: Added.
1541         * page/ContentSecurityPolicy.cpp:
1542         * page/Geolocation.h:
1543         * workers/WorkerReportingProxy.h:
1544         * xml/XMLHttpRequest.cpp:
1545
1546 2011-05-11  Dimitri Glazkov  <dglazkov@chromium.org>
1547
1548         Unreviewed, rolling out r85650.
1549         http://trac.webkit.org/changeset/85650
1550         https://bugs.webkit.org/show_bug.cgi?id=59983
1551
1552         Triggers m_numNodeListCaches > 0 assert in gc-heavy sites.
1553
1554         * dom/ContainerNode.cpp:
1555         (WebCore::ContainerNode::childrenChanged):
1556         * dom/Node.cpp:
1557         (WebCore::Node::~Node):
1558         (WebCore::Node::setDocument):
1559         (WebCore::Node::setTreeScopeRecursively):
1560         (WebCore::Node::childNodes):
1561         (WebCore::Node::registerDynamicNodeList):
1562         (WebCore::Node::unregisterDynamicNodeList):
1563         (WebCore::Node::notifyLocalNodeListsAttributeChanged):
1564         (WebCore::Node::notifyLocalNodeListsChildrenChanged):
1565         (WebCore::Node::getElementsByTagName):
1566         (WebCore::Node::getElementsByTagNameNS):
1567         (WebCore::Node::getElementsByName):
1568         (WebCore::Node::getElementsByClassName):
1569         * dom/Node.h:
1570         * html/HTMLFormControlElement.cpp:
1571         (WebCore::HTMLFormControlElement::labels):
1572
1573 2011-05-11  Eric Carlson  <eric.carlson@apple.com>
1574
1575         Reviewed by Darin Adler.
1576
1577         Video track sometimes fails to draw.
1578         https://bugs.webkit.org/show_bug.cgi?id=60635
1579         <rdar://problem/9281951>
1580
1581         No new tests, covered by existing pixel tests.
1582
1583         * html/HTMLMediaElement.cpp:
1584         (WebCore::HTMLMediaElement::loadResource): Set display mode to "Unknown" to force a 
1585             recalculation, and media engine notification, the next time the state machine runs.
1586
1587 2011-05-11  Adam Roben  <aroben@apple.com>
1588
1589         WinCE build fixes for strict PassOwnPtr
1590
1591         * platform/graphics/wince/SharedBitmap.cpp:
1592         (WebCore::SharedBitmap::createHandle):
1593         (WebCore::SharedBitmap::clipBitmap):
1594         Use nullptr instead of 0.
1595
1596         * platform/graphics/wince/SimpleFontDataWinCE.cpp: Keep LOOSE_PASS_OWN_PTR turned on for
1597         this file until SimpleFontData::scaledFontData is dealt with on all platforms.
1598
1599         * platform/text/wince/TextCodecWinCE.cpp:
1600         (WebCore::newTextCodecWinCE): Use adoptPtr.
1601
1602 2011-05-11  Chang Shu  <cshu@webkit.org>
1603
1604         Reviewed by Antonio Gomes.
1605
1606         [Qt] Tab not working in editing/inserting/typing-tab-designmode-forms.html
1607         https://bugs.webkit.org/show_bug.cgi?id=60477
1608
1609         PlatformKeyboardEvent.m_text should be set to "\t" instead of leaving as null.
1610         The value is checked at EventHandler.cpp:2527 (r86166).
1611
1612         Function keyTextForKeyEvent is partially implemented and can be enhanced in
1613         a need-base.
1614
1615         * platform/qt/PlatformKeyboardEventQt.cpp:
1616         (WebCore::keyTextForKeyEvent):
1617         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1618
1619 2011-05-11  Adam Roben  <aroben@apple.com>
1620
1621         Use case-insensitive comparisons when checking plugin filenames on Windows
1622
1623         Windows paths are nearly always case-insensitive.
1624
1625         I couldn't think of a good way to test this.
1626
1627         Fixes <http://webkit.org/b/60633> WebKit1 loads Windows Presentation Foundation plugin, but
1628         should not
1629
1630         Reviewed by Steve Falkenburg.
1631
1632         * plugins/win/PluginPackageWin.cpp:
1633         (WebCore::PluginPackage::isPluginBlacklisted): Use equalIgnoringCase instead of == when
1634         checking plugin filenames.
1635
1636 2011-05-11  Adam Roben  <aroben@apple.com>
1637
1638         Turn on strict PassOwnPtr on Windows
1639
1640         Fixes <http://webkit.org/b/60632> Windows should build with strict PassOwnPtr enabled
1641
1642         Reviewed by Adam Barth.
1643
1644         * platform/graphics/win/SimpleFontDataWin.cpp: Keep LOOSE_PASS_OWN_PTR turned on for this
1645         file until SimpleFontData::scaledFontData is dealt with on all platforms.
1646
1647 2011-05-11  Julien Chaffraix  <jchaffraix@webkit.org>
1648
1649         Reviewed by Geoffrey Garen.
1650
1651         XPathResult should keep its node set's JS wrappers alive
1652         https://bugs.webkit.org/show_bug.cgi?id=34231
1653
1654         The change added a custom mark function for JSC. V8 was already properly
1655         marking the nodes so no change were done on the V8 side.
1656
1657         Tests: fast/xpath/xpath-iterator-result-should-mark-its-nodeset.html
1658                fast/xpath/xpath-other-nodeset-result-should-mark-its-nodeset.html
1659                fast/xpath/xpath-result-eventlistener-crash.html
1660                fast/xpath/xpath-snapshot-result-should-mark-its-nodeset.html
1661
1662         * Android.jscbindings.mk:
1663         * GNUmakefile.list.am:
1664         * UseJSC.cmake:
1665         * WebCore.gypi:
1666         * WebCore.pro:
1667         * WebCore.vcproj/WebCore.vcproj:
1668         * WebCore.xcodeproj/project.pbxproj:
1669         * bindings/js/JSBindingsAllInOne.cpp:
1670         Added the new file to our build systems.
1671
1672         * bindings/js/JSXPathResultCustom.cpp: Added.
1673         (WebCore::JSXPathResult::markChildren): Added code to mark the
1674         XPathResult snapshot's nodes.
1675         * xml/XPathResult.h:
1676         (WebCore::XPathResult::value): Exposed this getter so that we can
1677         mark our XPathValue.
1678         * xml/XPathResult.idl: Told the IDL parser that we now need
1679         a custom mark function.
1680
1681 2011-05-04  Philippe Normand  <pnormand@igalia.com>
1682
1683         Reviewed by Martin Robinson.
1684
1685         [Gtk+] deadlock in gstreamer video player when exiting fullscreen
1686         https://bugs.webkit.org/show_bug.cgi?id=58548
1687
1688         Block data flow towards the pipeline branch to remove to avoid
1689         potential deadlocks during the PAUSED->READY transitions of the
1690         elements to remove.
1691
1692         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
1693         (WebCore::GStreamerGWorld::exitFullscreen):
1694
1695 2011-05-11  Kent Tamura  <tkent@chromium.org>
1696
1697         Reviewed by Hajime Morita.
1698
1699         The position of validation message bubble is wrong for non text fields.
1700         https://bugs.webkit.org/show_bug.cgi?id=60341
1701
1702         Tests: fast/forms/validation-message-on-checkbox.html
1703                fast/forms/validation-message-on-listbox.html
1704                fast/forms/validation-message-on-menulist.html
1705                fast/forms/validation-message-on-radio.html
1706                fast/forms/validation-message-on-textarea.html
1707
1708         * css/html.css:
1709         (::-webkit-validation-bubble-message):
1710           Add white-space:normal in order not to inherit white-space:pre for <select>.
1711         * html/ValidationMessage.cpp:
1712         (WebCore::adjustBubblePosition):
1713           Adjust the bubble position.
1714           - The top of the bubble should be same as the bottom of the target control.
1715           - The left of the bubble should be same as the left of the target control.
1716             But If the left+32 is larger than the center of the target control,
1717             left+32 should be at the center of the target control.
1718             But the left position should not be less than 0.
1719         (WebCore::ValidationMessage::buildBubbleTree): Call adjustBubblePosition().
1720
1721 2011-05-11  Emil A Eklund  <eae@chromium.org>
1722
1723         Reviewed by Eric Seidel.
1724
1725         Convert RenderFlexibleBox to use IntPoint/IntSize instead of x,y/w,h pairs
1726         https://bugs.webkit.org/show_bug.cgi?id=60592
1727
1728         Refactoring, covered by existing tests.
1729
1730         * rendering/RenderFlexibleBox.cpp:
1731         (WebCore::RenderFlexibleBox::layoutBlock):
1732         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
1733         (WebCore::RenderFlexibleBox::layoutVerticalBox):
1734         (WebCore::RenderFlexibleBox::placeChild):
1735         * rendering/RenderFlexibleBox.h:
1736
1737 2011-05-10  Ilya Tikhonovsky  <loislo@chromium.org>
1738
1739         Unreviewed buildfix for strict OwnPtr.
1740
1741         * platform/audio/AudioBus.cpp:
1742         (WebCore::AudioBus::createBufferFromRange):
1743         (WebCore::AudioBus::createBySampleRateConverting):
1744         (WebCore::AudioBus::createByMixingToMono):
1745         * platform/audio/HRTFElevation.cpp:
1746         (WebCore::HRTFElevation::createForSubject):
1747         (WebCore::HRTFElevation::createByInterpolatingSlices):
1748         * platform/audio/Panner.cpp:
1749         (WebCore::Panner::create):
1750         * platform/audio/Reverb.cpp:
1751         (WebCore::Reverb::initialize):
1752         * platform/audio/chromium/AudioBusChromium.cpp:
1753         (WebCore::AudioBus::loadPlatformResource):
1754         (WebCore::createBusFromInMemoryAudioFile):
1755
1756 2011-05-10  Adam Barth  <abarth@webkit.org>
1757
1758         Build fix for font data madness.  I've had to whitelist this on several
1759         ports.  They need to all be fixed at once.
1760
1761         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
1762
1763 2011-05-10  David Kilzer  <ddkilzer@apple.com>
1764
1765         BUILD FIX for !ENABLE(TEXT_CARET) after r86039
1766
1767         * editing/FrameSelection.cpp:
1768         (WebCore::DragCaretController::paintDragCaret): Added
1769         UNUSED_PARAM(frame) for !ENABLE(TEXT_CARET).
1770
1771 2011-05-10  James Robinson  <jamesr@chromium.org>
1772
1773         Reviewed by Kenneth Russell.
1774
1775         [chromium] Clean up setLayerRenderer() calls in LayerRendererChromium
1776         https://bugs.webkit.org/show_bug.cgi?id=60524
1777
1778         This refactors the way LayerRendererChromium calls setLayerRenderer on its layers in a few ways to clean things
1779         up:
1780
1781         *) Move the pre-paint call to setLayerRenderer from updatePropertiesAndRenderSurfaces() to paintLayerContents().
1782             updatePropertiesAndRenderSurfaces() does too much and the layer renderer pointer only has to be up to date to do
1783             the actual paint. Longer term we won't need to call this at all in order to call paint and this call will just
1784             go away.
1785         *) Tweaks updateCompositorResourcesRecursive() to be slightly shorter and less error-prone.
1786         *) Explicitly set the LayerRendererChromium for each layer in the tree when transfering the root layer (used
1787             during lost context).  LayerChromium::setLayerRenderer checks if the new LayerRendererChromium is different
1788             by comparing the pointer value to the old one.  This check will be incorrect if there are multiple lost
1789             contexts between a setLayerRenderer() call and a new LayerRendererChromium happens to be allocated at the
1790             same address as the old one.  An explicit call to setLayerRenderer() for every layer in the tree fixes this
1791             since when this function is called the new and old LayerRendererChromium are still live and so they cannot
1792             live at the same address.
1793
1794         The first two changes are purely refactors and do not change behavior.  The third issue can't be tested via a
1795         layout test directly as we don't have a way to induce a lost context on the compositor in a layout test.
1796
1797         * platform/graphics/chromium/LayerRendererChromium.cpp:
1798         (WebCore::LayerRendererChromium::paintLayerContents):
1799         (WebCore::LayerRendererChromium::clearLayerRendererRecursive):
1800         (WebCore::LayerRendererChromium::transferRootLayer):
1801         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
1802         (WebCore::LayerRendererChromium::updateCompositorResourcesRecursive):
1803         * platform/graphics/chromium/LayerRendererChromium.h:
1804
1805 2011-05-10  Anton D'Auria  <adauria@apple.com>
1806
1807         Reviewed by David Levin.
1808
1809         StorageTracker should report actual local storage usage on disk
1810         https://bugs.webkit.org/show_bug.cgi?id=60558
1811
1812         Tests: storage/domstorage/localstorage/storagetracker/storage-tracker-6-create.html
1813                storage/domstorage/localstorage/storagetracker/storage-tracker-7-usage.html
1814
1815         Use SQLiteFileSystem::getDatabaseFileSize to get actual usage by
1816         an origin's local storage db. Factored out code that retrieves
1817         path of local storage db.
1818
1819         * WebCore.exp.in: Sorted alphabetically StorageTracker's mangled
1820         function names.
1821         * storage/StorageTracker.cpp:
1822         (WebCore::StorageTracker::syncDeleteOrigin): Uses helper function
1823         to get path of origin's db
1824         (WebCore::StorageTracker::databasePathForOrigin): New helper function.
1825         that gets the path of an origin's local storage db from StorageTracker.
1826         (WebCore::StorageTracker::diskUsageForOrigin): New API.
1827         * storage/StorageTracker.h:
1828
1829 2011-05-10  Anton D'Auria  <adauria@apple.com>
1830
1831         Reviewed by Alexey Proskuryakov.
1832
1833         Add ApplicationCache API to get disk usage per origin
1834         https://bugs.webkit.org/show_bug.cgi?id=57127
1835
1836         ApplicationCacheStorage already provides an API to get per-origin
1837         disk usage. This should be exposed through WebCore::ApplicationCache
1838         to not be dependent on storage implementation.
1839
1840         Test: http/tests/appcache/origin-usage.html
1841
1842         * WebCore.exp.in:
1843         * loader/appcache/ApplicationCache.cpp:
1844         (WebCore::ApplicationCache::diskUsageForOrigin):
1845         * loader/appcache/ApplicationCache.h:
1846
1847 2011-05-10  Pratik Solanki  <psolanki@apple.com>
1848
1849         Reviewed by Alexey Proskuryakov.
1850
1851         Protect self in [WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]
1852         https://bugs.webkit.org/show_bug.cgi?id=60594
1853         <rdar://problem/9203259>
1854
1855         No tests since we don't have any bots testing CFNETWORK_DATA_ARRAY_CALLBACK.
1856
1857         * platform/network/mac/ResourceHandleMac.mm:
1858         (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]): The didReceiveData()
1859         callback on client can result in the load being cancelled. This results in the delegate
1860         (self) being freed.  Protect self during the loop so we can check for m_handle and safely
1861         return without crashing.
1862
1863 2011-05-10  Chris Guillory  <chris.guillory@google.com>
1864
1865         Reviewed by James Robinson.
1866
1867         [ChromiumWin] Font::drawComplexText calls EndPlatformPaint without calling BeginPlatformPaint.
1868         https://bugs.webkit.org/show_bug.cgi?id=59848
1869
1870         To test this I plan to make the non-printing device (BitmapPlatformDevice) fail
1871         when EndPlatformPaint doesn't matchup with BeginPlatformPaint.
1872         http://codereview.chromium.org/6949012/ 
1873
1874         * platform/graphics/chromium/FontChromiumWin.cpp:
1875         (WebCore::Font::drawComplexText):
1876
1877 2011-05-10  Sheriff Bot  <webkit.review.bot@gmail.com>
1878
1879         Unreviewed, rolling out r86195.
1880         http://trac.webkit.org/changeset/86195
1881         https://bugs.webkit.org/show_bug.cgi?id=60597
1882
1883         LayerOffset is a really bad name (Requested by smfr on
1884         #webkit).
1885
1886         * GNUmakefile.list.am:
1887         * WebCore.gypi:
1888         * WebCore.pro:
1889         * WebCore.vcproj/WebCore.vcproj:
1890         * WebCore.xcodeproj/project.pbxproj:
1891         * page/FrameView.cpp:
1892         (WebCore::FrameView::paintScrollCorner):
1893         * platform/graphics/LayerOffset.h: Removed.
1894         * rendering/InlineTextBox.cpp:
1895         (WebCore::InlineTextBox::paint):
1896         (WebCore::InlineTextBox::paintCustomHighlight):
1897         * rendering/InlineTextBox.h:
1898         * rendering/RenderBox.cpp:
1899         (WebCore::RenderBox::paintCustomHighlight):
1900         * rendering/RenderBox.h:
1901         * rendering/RenderImage.cpp:
1902         (WebCore::RenderImage::paintReplaced):
1903         * rendering/RenderLayer.cpp:
1904         (WebCore::RenderLayer::paintScrollCorner):
1905         (WebCore::RenderLayer::paintResizer):
1906         * rendering/RenderListMarker.cpp:
1907         (WebCore::RenderListMarker::paint):
1908         * rendering/RenderObject.h:
1909         * rendering/RenderScrollbar.cpp:
1910         (WebCore::RenderScrollbar::paintPart):
1911         * rendering/RenderScrollbarPart.cpp:
1912         (WebCore::RenderScrollbarPart::paintIntoRect):
1913         * rendering/RenderScrollbarPart.h:
1914         * rendering/RenderTable.cpp:
1915         (WebCore::RenderTable::paintObject):
1916         (WebCore::RenderTable::paintMask):
1917         * rendering/RenderTable.h:
1918         * rendering/RenderWidget.cpp:
1919         (WebCore::RenderWidget::paint):
1920         * rendering/RootInlineBox.cpp:
1921         (WebCore::RootInlineBox::paintCustomHighlight):
1922         (WebCore::RootInlineBox::paint):
1923         * rendering/RootInlineBox.h:
1924
1925 2011-05-10  Emil A Eklund  <eae@chromium.org>
1926
1927         Reviewed by Eric Seidel.
1928
1929         Convert x,y and width,height pairs to IntPoint and IntSize for RenderLayer
1930         https://bugs.webkit.org/show_bug.cgi?id=60409
1931
1932         Convert RenderLayer to use IntPoint for x,y pairs and IntSize for offsets and sizes.
1933
1934         Refactoring, covered by existing tests.
1935
1936         * rendering/RenderLayer.cpp:
1937         (WebCore::RenderLayer::RenderLayer):
1938         (WebCore::RenderLayer::updateLayerPositions):
1939         (WebCore::RenderLayer::updateLayerPosition):
1940         (WebCore::RenderLayer::scrollTo):
1941         (WebCore::RenderLayer::visibleHeight):
1942         (WebCore::RenderLayer::visibleWidth):
1943         (WebCore::RenderLayer::scrollWidth):
1944         (WebCore::RenderLayer::scrollHeight):
1945         (WebCore::RenderLayer::computeScrollDimensions):
1946         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1947         * rendering/RenderLayer.h:
1948         (WebCore::RenderLayer::x):
1949         (WebCore::RenderLayer::y):
1950         (WebCore::RenderLayer::setLocation):
1951         (WebCore::RenderLayer::width):
1952         (WebCore::RenderLayer::height):
1953         (WebCore::RenderLayer::size):
1954         (WebCore::RenderLayer::setWidth):
1955         (WebCore::RenderLayer::setHeight):
1956         (WebCore::RenderLayer::scrolledContentOffset):
1957         (WebCore::RenderLayer::scrollXOffset):
1958         (WebCore::RenderLayer::scrollYOffset):
1959         (WebCore::RenderLayer::scrollOffset):
1960         (WebCore::RenderLayer::scrollToXOffset):
1961         (WebCore::RenderLayer::scrollToYOffset):
1962         (WebCore::RenderLayer::relativePositionOffset):
1963
1964 2011-05-10  Levi Weintraub  <leviw@chromium.org>
1965
1966         Reviewed by Eric Seidel.
1967
1968         Create LayerOffset class
1969         https://bugs.webkit.org/show_bug.cgi?id=60490
1970
1971         Adding a LayerOffset class that will replace existing usage of tx/ty.
1972         LayerOffset is necessary since these values are commonly used as both
1973         a size and a point. Updating paintIntoRect to use this new class.
1974
1975         No new tests since this doesn't change any behavior.
1976
1977         * GNUmakefile.list.am:
1978         * WebCore.gypi:
1979         * WebCore.pro:
1980         * WebCore.vcproj/WebCore.vcproj:
1981         * WebCore.xcodeproj/project.pbxproj:
1982         * page/FrameView.cpp:
1983         (WebCore::FrameView::paintScrollCorner):
1984         * platform/graphics/LayerOffset.h: Added.
1985         (WebCore::LayerOffset::LayerOffset):
1986         (WebCore::LayerOffset::x):
1987         (WebCore::LayerOffset::y):
1988         (WebCore::LayerOffset::setX):
1989         (WebCore::LayerOffset::setY):
1990         (WebCore::LayerOffset::toSize):
1991         (WebCore::LayerOffset::toPoint):
1992         (WebCore::operator+=):
1993         (WebCore::operator-=):
1994         (WebCore::operator+):
1995         (WebCore::operator-):
1996         (WebCore::operator==):
1997         (WebCore::operator!=):
1998         * rendering/RenderLayer.cpp:
1999         (WebCore::RenderLayer::paintScrollCorner):
2000         (WebCore::RenderLayer::paintResizer):
2001         * rendering/RenderScrollbar.cpp:
2002         (WebCore::RenderScrollbar::paintPart):
2003         * rendering/RenderScrollbarPart.cpp:
2004         (WebCore::RenderScrollbarPart::paintIntoRect):
2005         * rendering/RenderScrollbarPart.h:
2006
2007 2011-05-10  Ryosuke Niwa  <rniwa@webkit.org>
2008
2009         Reviewed by Darin Adler.
2010
2011         Make member variables of CaretBase private
2012         https://bugs.webkit.org/show_bug.cgi?id=60454
2013
2014         Moved m_absCaretBounds, m_absoluteCaretRepaintBounds, m_absCaretBoundsDirty, and m_caretPaint back
2015         from CaretBase to FrameSelection because they are only used in FrameSelection, and made the rest
2016         of member variables in CaretBase private.
2017
2018         * editing/FrameSelection.cpp:
2019         (WebCore::CaretBase::CaretBase): Takes CaretVisibility as an argument.
2020         (WebCore::DragCaretController::DragCaretController):
2021         (WebCore::FrameSelection::FrameSelection): Initializes m_absCaretBoundsDirty and m_caretPaint
2022         now that they are part of FrameSelection again.
2023         (WebCore::DragCaretController::setCaretPosition):
2024         (WebCore::FrameSelection::setSelection):
2025         (WebCore::CaretBase::clearCaretRect): Extracted from updateCaretRect.
2026         (WebCore::CaretBase::updateCaretRect): No longer clears caret; all call sites (namely setCaretPosition
2027         and localCaretRect) that used to call updateCaretRect now need to call clearCaretRect or updateCaretRect
2028         based on some conditions.
2029         (WebCore::FrameSelection::localCaretRect):
2030         (WebCore::CaretBase::caretRepaintRect):
2031         (WebCore::FrameSelection::recomputeCaretRect):
2032         (WebCore::FrameSelection::paintCaret): Only calls CaretBase::paintCaret if m_caretPaint is true.
2033         (WebCore::CaretBase::paintCaret): Removed an early exit for when m_caretPaint is false since m_caretPaint
2034         has been moved from CaretBase to FrameSelection.
2035         (WebCore::FrameSelection::focusedOrActiveStateChanged):
2036         (WebCore::FrameSelection::updateAppearance):
2037         (WebCore::FrameSelection::setCaretVisibility): Takes CaretVisibility instead of bool.
2038         (WebCore::FrameSelection::caretBlinkTimerFired):
2039         * editing/FrameSelection.h:
2040         (WebCore::CaretBase::fastLocalCaretRect): Added; replaces localCaretRectForPainting.
2041         (WebCore::CaretBase::shouldUpdateCaretRect): Added.
2042         (WebCore::CaretBase::setCaretRectNeedsUpdate): Added.
2043         (WebCore::CaretBase::setCaretVisibility): Added.
2044         (WebCore::CaretBase::caretIsVisible): Added.
2045         (WebCore::FrameSelection::setCaretRectNeedsUpdate): Added.
2046
2047 2011-05-10  James Robinson  <jamesr@chromium.org>
2048
2049         Reviewed by Nate Chapin.
2050
2051         [chromium] Use parent/child terms for compositor tree structures consistently instead of superlayer/sublayer
2052         https://bugs.webkit.org/show_bug.cgi?id=60588
2053
2054         GraphicsLayer uses parent/child terminology for tree structure, as does CCLayerImpl.  LayerChromium was using
2055         superlayer/sublayer terms, inherited from this code's branching from the platform/graphics/win/CACF code.  The
2056         mixed terminology is confusing and parent/child is more common, so this unifies everything to use parent/child.
2057
2058         No new tests, refactor only.
2059
2060         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2061         (WebCore::GraphicsLayerChromium::setChildren):
2062         (WebCore::GraphicsLayerChromium::addChild):
2063         (WebCore::GraphicsLayerChromium::addChildAtIndex):
2064         (WebCore::GraphicsLayerChromium::addChildBelow):
2065         (WebCore::GraphicsLayerChromium::addChildAbove):
2066         (WebCore::GraphicsLayerChromium::replaceChild):
2067         (WebCore::GraphicsLayerChromium::removeFromParent):
2068         (WebCore::GraphicsLayerChromium::setContentsToImage):
2069         (WebCore::GraphicsLayerChromium::setContentsToCanvas):
2070         (WebCore::GraphicsLayerChromium::setContentsToMedia):
2071         (WebCore::GraphicsLayerChromium::hostLayerForChildren):
2072         (WebCore::GraphicsLayerChromium::layerForParent):
2073         (WebCore::GraphicsLayerChromium::updateChildList):
2074         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
2075         (WebCore::GraphicsLayerChromium::setupContentsLayer):
2076         * platform/graphics/chromium/GraphicsLayerChromium.h:
2077         * platform/graphics/chromium/LayerChromium.cpp:
2078         (WebCore::LayerChromium::LayerChromium):
2079         (WebCore::LayerChromium::~LayerChromium):
2080         (WebCore::LayerChromium::addChild):
2081         (WebCore::LayerChromium::insertChild):
2082         (WebCore::LayerChromium::removeFromParent):
2083         (WebCore::LayerChromium::removeChild):
2084         (WebCore::LayerChromium::replaceChild):
2085         (WebCore::LayerChromium::indexOfChild):
2086         (WebCore::LayerChromium::rootLayer):
2087         (WebCore::LayerChromium::removeAllChildren):
2088         (WebCore::LayerChromium::setChildren):
2089         (WebCore::LayerChromium::parent):
2090         (WebCore::LayerChromium::dumpLayer):
2091         * platform/graphics/chromium/LayerChromium.h:
2092         (WebCore::LayerChromium::children):
2093         (WebCore::LayerChromium::setParent):
2094         (WebCore::LayerChromium::numChildren):
2095         * platform/graphics/chromium/LayerRendererChromium.cpp:
2096         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
2097         (WebCore::LayerRendererChromium::updateCompositorResourcesRecursive):
2098         (WebCore::LayerRendererChromium::dumpRenderSurfaces):
2099         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2100         (WebCore::CCLayerImpl::parent):
2101         (WebCore::CCLayerImpl::descendantsDrawsContent):
2102         * platform/graphics/chromium/cc/CCLayerImpl.h:
2103
2104 2011-05-10  Levi Weintraub  <leviw@chromium.org>
2105
2106         Reviewed by Darin Adler.
2107
2108         Switch RenderBoxModelObject::paintNinePieceImage to use IntRect instead of four ints
2109         https://bugs.webkit.org/show_bug.cgi?id=60586
2110
2111         Switch paintNinePieceImage to take an IntRect instead of four ints representing an IntRect!
2112
2113         No new tests as this is simply refactoring.
2114
2115         * rendering/InlineFlowBox.cpp:
2116         (WebCore::InlineFlowBox::paintMask):
2117         * rendering/RenderBox.cpp:
2118         (WebCore::RenderBox::paintMaskImages):
2119         * rendering/RenderBoxModelObject.cpp:
2120         (WebCore::RenderBoxModelObject::paintNinePieceImage):
2121         (WebCore::RenderBoxModelObject::paintBorder):
2122         * rendering/RenderBoxModelObject.h:
2123
2124 2011-05-05  Jer Noble  <jer.noble@apple.com>
2125
2126         Reviewed by Maciej Stachowiak.
2127
2128         Removing the full screen element via parent.innerHTML="" does not result in a webkitfullscreenchange event.
2129         https://bugs.webkit.org/show_bug.cgi?id=60278
2130
2131         Handle the removal of a full screen element from within Node::willRemove() instead
2132         of Document::nodeWillBeRemoved().  The new function Document::fullScreenElementWillBeRemoved() will
2133         be called by Node::willRemove() to handle those changes which used to occur in nodeWillBeRemoved().
2134
2135         Test: fullscreen/full-screen-remove-children.html
2136
2137         * dom/Document.cpp:
2138         (WebCore::Document::nodeWillBeRemoved): Removed the code checking for the full screen element.
2139         (WebCore::Document::fullScreenElementWillBeRemoved): Added, moved from nodeWillBeRemoved.
2140         * dom/Document.h:
2141         * dom/Node.cpp:
2142         (WebCore::Node::willRemove): Check to see if this is the current full screen element.
2143
2144 2011-05-10  Beth Dakin  <bdakin@apple.com>
2145
2146         Reviewed by Darin Adler.
2147
2148         https://bugs.webkit.org/show_bug.cgi?id=60582
2149         Crash switching overlay/non-overlay scrollbar preference still possible
2150         -and corresponding-
2151         <rdar://problem/9323983>
2152
2153         This patch prevents any work from being done on pages that are in the page cache 
2154         when the preference is switched.
2155
2156         When the Document is going into or coming out of the page cache, have the 
2157         FrameView inactivate or activate the Page's ScrollAnimators as appropriate.
2158         * dom/Document.cpp:
2159         (WebCore::Document::setInPageCache):
2160
2161         Iterate through the Page's ScrollableAreas setting the active state of the 
2162         ScrollAnimators.
2163         * page/FrameView.cpp:
2164         (WebCore::FrameView::setAnimatorsAreActive):
2165         * page/FrameView.h:
2166
2167         ScrollAnimator has a new bit -- m_isActive. Right now m_isActive is always true 
2168         unless the ScrollAnimator belongs to a ScrollableArea that is in the page cache.
2169         * platform/ScrollAnimator.cpp:
2170         (WebCore::ScrollAnimator::ScrollAnimator):
2171         * platform/ScrollAnimator.h:
2172         (WebCore::ScrollAnimator::setIsActive):
2173         (WebCore::ScrollAnimator::isActive):
2174
2175         ScrollAnimatorMac has a new bit -- m_needsScrollerStyleUpdate. This is set to true 
2176         when a ScrollAnimator is inactive and has received the 
2177         updateScrollerStyleForNewRecommendedScrollerStyle delegate notification. It 
2178         prevents any work from being done for this delegate until the ScrollAnimator 
2179         becomes active again.
2180         * platform/mac/ScrollAnimatorMac.h:
2181         (WebCore::ScrollAnimatorMac::setNeedsScrollerStyleUpdate):
2182         (WebCore::ScrollAnimatorMac::needsScrollerStyleUpdate):
2183
2184         This delegate method has been re-factored into ScrollAnimatorMac:: 
2185         updateScrollerStyle(). This way the meat of the function can be called by both the 
2186         delegate and ScrollAnimatorMac::setIsActive()
2187         * platform/mac/ScrollAnimatorMac.mm:
2188         (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
2189         (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
2190
2191         This override of ScrollAnimator::setIsActive() calls the base class, and then calls updateScrollerStyle() if needsScrollerStyleUpdate() is set to true.
2192         (WebCore::ScrollAnimatorMac::setIsActive):
2193
2194         This is mostly the same as the old delegate method. Key differences are that if 
2195         the ScrollAnimator is inactive, we now setNeedsScrollerStyleUpdate(true) and 
2196         return early. We also only call scrollableArea()->scrollbarStyleChanged() if 
2197         needsScrollerStyleUpdate() is false since in the true case when we are restoring 
2198         from the page cache, this would be duplicated work.
2199         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
2200
2201         New WKSystemInterface function is needed to retrieve the scrollbar style.
2202         * WebCore.exp.in:
2203         * platform/mac/WebCoreSystemInterface.h:
2204         * platform/mac/WebCoreSystemInterface.mm:
2205
2206 2011-05-10  Adam Barth  <abarth@webkit.org>
2207
2208         Reviewed by David Levin.
2209
2210         Enable strict PassOwnPtr on Chromium
2211         https://bugs.webkit.org/show_bug.cgi?id=60502
2212
2213         Technically there are a few bits in here that weren't reviewed by Dave,
2214         but close enough for government work.  This patch all fixes  the
2215         remaining strict PassOwnPtr violations on Chromium Linux.
2216
2217         * platform/graphics/chromium/PlatformCanvas.cpp:
2218         (WebCore::PlatformCanvas::resize):
2219         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
2220         * platform/graphics/skia/ImageBufferSkia.cpp:
2221         (WebCore::ImageBuffer::ImageBuffer):
2222         * platform/graphics/skia/PlatformContextSkia.cpp:
2223         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
2224
2225 2011-05-10  Brady Eidson  <beidson@apple.com>
2226
2227         Reviewed by Alice Liu.
2228
2229         <rdar://problem/9343191> and https://bugs.webkit.org/show_bug.cgi?id=60572
2230         REGRESSION - Canon On-screen Manual.app crashes after a search
2231
2232         No new tests - There's no way to reproduce the truly bizarre things Canon does in their app
2233         that would reasonably fit in to our testing infrastructure.
2234
2235         In r66577 a new behavior was added where changing the "setLoadsImagesAutomatically" setting to "true" would immediately
2236         start loading those images that had been disabled.
2237
2238         If this happens while a WebView is being dealloc'ed, and we don't know the WebView is being dealloc'ed, these new loads
2239         can cause crashes downstream when the WebView memory has actually been free'd.
2240
2241         One example where this can happen is in Mac apps that subclass WebView then do work in their overridden dealloc methods.
2242         And the Canon Onscreen Manual is one such app.
2243
2244         Starting these loads synchronously is not important.  By putting it on a 0-delay, properly closing the Page cancels them
2245         before they have a chance to really start.
2246
2247         See http://webkit.org/b/60572 for more discussion.
2248
2249
2250         Add a timer to Settings and instead of calling setLoadsImagesAutomaticallyInAllFrames right
2251         away when this pref changes, call it on a 0-delay:
2252         * page/Settings.cpp:
2253         (WebCore::Settings::Settings):
2254         (WebCore::Settings::setLoadsImagesAutomatically):
2255         (WebCore::Settings::loadsImagesAutomaticallyTimerFired):
2256         * page/Settings.h:
2257
2258 2011-05-10  Martin Robinson  <mrobinson@igalia.com>
2259
2260         Reviewed by Xan Lopez.
2261
2262         [GTK][WebKit2] GTK+ 2.x widget rendering fails after r85480
2263         https://bugs.webkit.org/show_bug.cgi?id=59990
2264
2265         No new tests. This is covered by existing pixel tests.
2266
2267         * platform/gtk/GtkVersioning.c:
2268         (getGdkDrawableSize): Added this helper method.
2269         * platform/gtk/GtkVersioning.h: Added helper method declaration.
2270         * platform/gtk/WidgetRenderingContext.cpp:
2271         (WebCore::WidgetRenderingContext::WidgetRenderingContext): Call into the helper if
2272         there is actually a GdkDrawable. If not, disable the sanity check.
2273
2274 2011-05-10  Martin Robinson  <mrobinson@igalia.com>
2275
2276         Fix the GTK+ WebKit2 build. Add a CredentialsStorage stub for libsoup.
2277
2278         * GNUmakefile.list.am: Add stub to source list.
2279         * platform/network/soup/CredentialStorageSoup.cpp: Added.
2280         (WebCore::CredentialStorage::getFromPersistentStorage):  Added stub.
2281         (WebCore::CredentialStorage::get):
2282
2283 2011-05-09  David Hyatt  <hyatt@apple.com>
2284
2285         Reviewed by Dan Bernstein.
2286
2287         <rdar://problem/9354979> REGRESSION (r83070-r83126): This conversation takes 10 seconds to load and makes mail unresponsive
2288         
2289         Second attempts at a fix for this bug.  Instead of removing the dirtying (which turned out to be needed in a few cases),
2290         make dirtyLinesFromChangedChild mark a child as needing layout when it has to recur to the parent.  Because the method already
2291         aborts the recursion if selfNeedsLayout() is set on the parent, this has the effect of stopping the O(n^2) pathological
2292         behavior, since you can use the selfNeedsLayout() bit to understand that you've dirtied the lines already.
2293
2294         * rendering/RenderLineBoxList.cpp:
2295         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
2296
2297 2011-05-05  Brent Fulgham  <bfulgham@webkit.org> and Martin Robinson  <mrobinson@igalia.com>
2298
2299         Reviewed by Anders Carlsson.
2300
2301         [Cairo][WebKit2] Add an implementation of ShareableBitmap for Cairo
2302         https://bugs.webkit.org/show_bug.cgi?id=60293
2303
2304         No new tests. This is covered by current pixel tests.
2305
2306         * platform/graphics/cairo/CairoUtilities.cpp:
2307         (WebCore::copyCairoImageSurface): Abstract the code from WebCore::ImageBuffer::copyImage
2308         into this helper which creates a deep copy of a Cairo image surface.
2309         * platform/graphics/cairo/CairoUtilities.h: Added declaration.
2310         * platform/graphics/cairo/ImageBufferCairo.cpp:
2311         (WebCore::ImageBuffer::copyImage): Use the new helper.
2312         * platform/graphics/cairo/ImageCairo.cpp: Abstract some of this logic
2313         into the new drawSurfaceToContext method on PlatformContextCairo.
2314         (WebCore::BitmapImage::draw):
2315         * platform/graphics/cairo/PlatformContextCairo.cpp:
2316         (WebCore::drawPatternToCairoContext): Added.
2317         (WebCore::PlatformContextCairo::drawSurfaceToContext): Added.
2318         * platform/graphics/cairo/PlatformContextCairo.h: Added declarations.
2319
2320 2011-05-10  Anders Carlsson  <andersca@apple.com>
2321
2322         Attempt to fix Qt build.
2323
2324         * platform/network/qt/CredentialStorageQt.cpp:
2325         (WebCore::CredentialStorage::get):
2326         Add stub.
2327
2328 2011-05-10  Kenichi Ishibashi  <bashi@chromium.org>
2329
2330         Reviewed by Tony Chang.
2331
2332         REGRESSION(r85013): platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html is failing
2333         https://bugs.webkit.org/show_bug.cgi?id=60079
2334
2335         Set resultingNumPoints = 0 so that harfbuzz uses the design coordinate
2336         value pair.
2337
2338         * platform/graphics/chromium/HarfbuzzSkia.cpp:
2339         (WebCore::getOutlinePoint): Just return HB_Err_Ok with resultingNumPoints = 0.
2340
2341 2011-05-10  Anders Carlsson  <andersca@apple.com>
2342
2343         Reviewed by Sam Weinig.
2344
2345         Extra sign in required to view video on MobileMe Gallery album
2346         https://bugs.webkit.org/show_bug.cgi?id=60560
2347         <rdar://problem/9338693>
2348
2349         Add symbols required by WebKit2.
2350
2351         * WebCore.exp.in:
2352
2353 2011-05-10  Alexander Pavlov  <apavlov@chromium.org>
2354
2355         Reviewed by Pavel Feldman.
2356
2357         Web Inspector: Styles sidebar is not updated upon changes in the Resources panel.
2358         https://bugs.webkit.org/show_bug.cgi?id=60320
2359
2360         * inspector/front-end/ElementsPanel.js:
2361         (WebInspector.ElementsPanel):
2362
2363 2011-05-06  Brett Wilson  <brettw@chromium.org>
2364
2365         Reviewed by Adam Barth.
2366
2367         Use a File object to store the downloaded file reference rather than
2368         just the path. This keeps the file and permissions in scope (using the
2369         already-existing blob system) so the browser won't delete the file
2370         when the load is complete. Instead, the file will be cleaned up when
2371         the request objects are deleted.
2372         https://bugs.webkit.org/show_bug.cgi?id=60281
2373
2374         * platform/network/chromium/ResourceResponse.cpp:
2375         (WebCore::ResourceResponse::doPlatformCopyData):
2376         (WebCore::ResourceResponse::doPlatformAdopt):
2377         * platform/network/chromium/ResourceResponse.h:
2378         (WebCore::ResourceResponse::downloadedFile):
2379         (WebCore::ResourceResponse::setDownloadedFile):
2380
2381 2011-05-10  Eric Carlson  <eric.carlson@apple.com>
2382
2383         Reviewed by Darin Adler.
2384
2385         Files that load quickly sometimes won't play.
2386         https://bugs.webkit.org/show_bug.cgi?id=60556
2387         <rdar://problem/9330567>
2388
2389         No new tests, this failure is very difficult to reproduce on some machines. The fix was
2390         verified manually.
2391
2392         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2393         (WebCore::MediaPlayerPrivateAVFoundation::playabilityKnown): Move the call to updateStates
2394             to dispatchNotification so it is more obvious which state changes call it.
2395         (WebCore::MediaPlayerPrivateAVFoundation::setNaturalSize): Correct logging typo.
2396         (WebCore::MediaPlayerPrivateAVFoundation::metadataLoaded): Move updateStates call to 
2397             dispatchNotification.
2398         (WebCore::MediaPlayerPrivateAVFoundation::rateChanged): Ditto.
2399         (WebCore::MediaPlayerPrivateAVFoundation::loadedTimeRangesChanged): Ditto.
2400         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Call updateStates after
2401             processing "size changed" notification so we detect all state changes. Consolidate
2402             calls to updateStates here.
2403
2404         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
2405         (WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer): Name the video layer in
2406             a debug build.
2407
2408 2011-05-10  Abhishek Arya  <inferno@chromium.org>
2409
2410         Reviewed by Simon Fraser.
2411
2412         Add containsFloats call to hasOverhangingFloats.
2413         https://bugs.webkit.org/show_bug.cgi?id=60537
2414
2415         Test: fast/block/float/no-overhanging-float-crash.html
2416
2417         * rendering/RenderBlock.cpp:
2418         (WebCore::RenderBlock::repaintOverhangingFloats):
2419         * rendering/RenderBlock.h:
2420         (WebCore::RenderBlock::hasOverhangingFloats):
2421
2422 2011-05-10  Alexis Menard  <alexis.menard@openbossa.org>
2423
2424         Reviewed by Antonio Gomes.
2425
2426         Warning fix on PluginPackage.cpp.
2427         https://bugs.webkit.org/show_bug.cgi?id=60371
2428
2429         Warning fix on conversion from time_t to unsigned on Linux with GCC 4.6.0.
2430         Let's use a struct rather than an array so we can pass everything to StringHasher.
2431
2432         * plugins/PluginPackage.cpp:
2433         (WebCore::PluginPackage::hash):
2434
2435 2011-05-10  Andreas Kling  <andreas.kling@nokia.com>
2436
2437         Rubber-stamped by Csaba Osztrogonác.
2438
2439         [Qt] Disable HAVE_QRAWFONT until Qt API stabilizes.
2440         https://bugs.webkit.org/show_bug.cgi?id=60551
2441
2442         * WebCore.pro: Disable the line that enables HAVE_QRAWFONT
2443         if the feature is found. Added a comment about why.
2444
2445 2011-05-10  Andrey Kosyakov  <caseq@chromium.org>
2446
2447         Reviewed by Sam Weinig.
2448
2449         Web Inspector: inspector/console/console-shadow-dom-access.html crashes on mac debug
2450         https://bugs.webkit.org/show_bug.cgi?id=60266
2451
2452         * bindings/objc/DOM.mm:
2453         (kitClass): return DOMNode class for shadow root node
2454
2455
2456 2011-05-10  Ben Murdoch  <benm@google.com>
2457
2458         Reviewed by Steve Block.
2459
2460         Fix build in WebCore/xml/XSLTProcessorLibxslt.cpp
2461         https://bugs.webkit.org/show_bug.cgi?id=60478
2462
2463         No new tests), build fix only.
2464
2465         * xml/XSLTProcessorLibxslt.cpp: Add CString.h include.
2466
2467 2011-05-10  Keith Kyzivat  <keith.kyzivat@nokia.com>
2468
2469         Reviewed by Kenneth Rohde Christiansen.
2470
2471         [Qt] QtRawFont support should check based on feature, not version
2472         https://bugs.webkit.org/show_bug.cgi?id=60513
2473
2474         Build fix - no tests added.
2475
2476         * WebCore.pro:
2477
2478 2011-05-10  Tony Gentilcore  <tonyg@chromium.org>
2479
2480         Build fix: include ExceptionCode
2481         https://bugs.webkit.org/show_bug.cgi?id=60538
2482
2483         * bindings/js/JSDOMBinding.cpp:
2484
2485 2011-05-06  Tony Gentilcore  <tonyg@chromium.org>
2486
2487         Reviewed by Darin Adler.
2488
2489         Fix some unnecessary includes in headers
2490         https://bugs.webkit.org/show_bug.cgi?id=60388
2491
2492         These were all found using the include-what-you-use clang plugin.
2493
2494         * css/CSSFontFaceSrcValue.h:
2495         * css/CSSImageGeneratorValue.h:
2496         * css/CSSParser.h:
2497         * css/CSSPrimitiveValueCache.cpp:
2498         * css/CSSPrimitiveValueCache.h:
2499         * css/CSSStyleSelector.cpp:
2500         * css/CSSStyleSelector.h:
2501         * css/RGBColor.cpp:
2502         * css/RGBColor.h:
2503         * dom/EventTarget.h:
2504         * dom/ExceptionBase.cpp:
2505         * dom/ExceptionBase.h:
2506         * dom/MessagePort.cpp:
2507         * dom/Range.cpp:
2508         * dom/Range.h:
2509         * dom/SelectElement.cpp:
2510         * dom/SelectElement.h:
2511         * dom/TextEvent.cpp:
2512         * dom/TextEvent.h:
2513         * dom/Touch.cpp:
2514         * dom/Touch.h:
2515         * dom/TouchEvent.cpp:
2516         * dom/TouchEvent.h:
2517         * dom/XMLDocumentParser.h:
2518         * dom/XMLDocumentParserScope.h:
2519         * editing/AppendNodeCommand.cpp:
2520         * editing/ApplyBlockElementCommand.h:
2521         * editing/DeleteFromTextNodeCommand.cpp:
2522         * editing/EditCommand.h:
2523         * editing/Editor.h:
2524         * editing/FormatBlockCommand.h:
2525         * editing/IndentOutdentCommand.h:
2526         * editing/InsertIntoTextNodeCommand.cpp:
2527         * editing/InsertNodeBeforeCommand.cpp:
2528         * editing/ReplaceSelectionCommand.h:
2529         * editing/SetNodeAttributeCommand.h:
2530         * html/HTMLSelectElement.h:
2531         * html/canvas/CanvasRenderingContext2D.cpp:
2532         * loader/appcache/DOMApplicationCache.cpp:
2533         * page/EventSource.cpp:
2534         * rendering/RenderListBox.cpp:
2535         * rendering/RenderMenuList.cpp:
2536         * rendering/RenderTextControlSingleLine.cpp:
2537         * rendering/svg/RenderSVGInlineText.cpp:
2538         * svg/SVGMatrix.h:
2539         * websockets/WebSocket.cpp:
2540         * workers/AbstractWorker.cpp:
2541         * xml/XMLHttpRequest.cpp:
2542         * xml/XPathExpression.cpp:
2543
2544 2011-05-10  MORITA Hajime  <morrita@google.com>
2545
2546         Reviewed by Ryosuke Niwa.
2547
2548         REGRESSION(r73886): Frequent crashes in replaceSelectionWithFragment
2549         https://bugs.webkit.org/show_bug.cgi?id=60090
2550
2551         SpellChecker uses TextCheckerClient, which belongs Page object,
2552         which is possibly destroyed during SpellChecker's lifetime.
2553         This change added to a guard before using TextCheckerClient to
2554         ensure it being live.
2555         
2556         No new tests, this is a speculative fix for a real crash.
2557
2558         * editing/Editor.cpp:
2559         (WebCore::Editor::Editor):
2560         * editing/SpellChecker.cpp:
2561         (WebCore::SpellChecker::SpellChecker):
2562         (WebCore::SpellChecker::client):
2563         (WebCore::SpellChecker::canCheckAsynchronously):
2564         (WebCore::SpellChecker::requestCheckingFor):
2565         * editing/SpellChecker.h:
2566
2567 2011-05-09  Dan Bernstein  <mitz@apple.com>
2568
2569         Try to fix the LLVM Compiler build.
2570
2571         * page/EventHandler.h:
2572
2573 2011-05-09  Daniel Cheng  <dcheng@chromium.org>
2574
2575         Fix the build.
2576
2577         Really add the file this time.
2578
2579         * page/DragState.h: Added.
2580         (WebCore::DragState::DragState):
2581
2582 2011-05-09  Daniel Cheng  <dcheng@chromium.org>
2583
2584         Reviewed by Tony Chang.
2585
2586         Refactor RenderObject::draggableNode.
2587         https://bugs.webkit.org/show_bug.cgi?id=60503
2588
2589         This patch lays the ground for refactoring the drag start logic. It moves draggableNode to
2590         DragController to avoid the awkward plumbing of calling DragController from RenderObject and
2591         also moves EventHandlerDragState out from EventHandler so it can be shared between
2592         EventHandler and DragController where appropriate.
2593
2594         No new tests since there should be no behavior change.
2595
2596         * GNUmakefile.list.am:
2597         * WebCore.gypi:
2598         * WebCore.pro:
2599         * WebCore.vcproj/WebCore.vcproj:
2600         * WebCore.xcodeproj/project.pbxproj:
2601         * page/DragController.cpp:
2602         (WebCore::DragController::draggableNode):
2603         (WebCore::DragController::mayStartDragAtEventLocation):
2604         * page/DragController.h:
2605         * page/DragState.h: Added.
2606         (WebCore::DragState::DragState):
2607         * page/EventHandler.cpp:
2608         (WebCore::EventHandler::dragState):
2609         (WebCore::EventHandler::eventMayStartDrag):
2610         (WebCore::EventHandler::handleDrag):
2611         * page/EventHandler.h:
2612         * rendering/RenderObject.cpp:
2613         * rendering/RenderObject.h:
2614
2615 2011-05-09  Luke Macpherson   <macpherson@chromium.org>
2616
2617         Reviewed by Darin Adler.
2618
2619         Enable casting between CSSPrimitiveValue and FontWeight enum
2620         https://bugs.webkit.org/show_bug.cgi?id=60516
2621
2622         No new tests added as no functionality changed.
2623
2624         * css/CSSPrimitiveValueMappings.h:
2625         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2626         Implement cast from FontWeight to CSSPrimitiveValue.
2627         (WebCore::CSSPrimitiveValue::operator FontWeight):
2628         Implement cast from CSSPrimitiveValue to FontWeight
2629         * css/CSSStyleSelector.cpp:
2630         (WebCore::CSSStyleSelector::applyProperty):
2631         Use new cast to reduce code size.
2632         Flatten switch inside if.
2633
2634 2011-05-09  Simon Fraser  <simon.fraser@apple.com>
2635
2636         Move IconURL.* into the dom grouping.
2637
2638         * WebCore.xcodeproj/project.pbxproj:
2639
2640 2011-05-08  Jeremy Noble  <jer.noble@apple.com>
2641
2642         Reviewed by Dan Bernstein.
2643
2644         Full-screen video disappears behind black screen with scrollbar, followed by crash at jerryseinfeld.com
2645         https://bugs.webkit.org/show_bug.cgi?id=60449
2646
2647         Make RenderFullScreen a non-anonymous block, so that it does not get deleted when a parent attempts to 
2648         coalesce anonymous children.
2649
2650         Test: fullscreen/full-screen-remove-sibling.html
2651
2652         * rendering/RenderObject.h:
2653         (WebCore::RenderObject::isAnonymousBlock):
2654
2655 2011-05-09  Jeremy Noble  <jer.noble@apple.com>
2656
2657         Reviewed by Simon Fraser.
2658
2659         REGRESSION (r84706): Crazy rendering of vimeo.com after exiting fullscreen video
2660         https://bugs.webkit.org/show_bug.cgi?id=60512
2661
2662         Initialize m_containsFullScreenElement.
2663
2664         * html/HTMLFrameElementBase.cpp:
2665         (WebCore::HTMLFrameElementBase::HTMLFrameElementBase):
2666
2667 2011-05-09  Ryosuke Niwa  <rniwa@webkit.org>
2668
2669         Reviewed by Darin Adler.
2670
2671         REGRESSION(r86039): DragCaretController doesn't draw caret
2672         https://bugs.webkit.org/show_bug.cgi?id=60505
2673
2674         Removed an early exit in setCaretPosition introduced by r86039.
2675         Also replaced calls to containerNode by deprecatedNode since rendering code doesn't
2676         support container node for rendering caret.
2677
2678         * editing/FrameSelection.cpp:
2679         (WebCore::DragCaretController::setCaretPosition):
2680
2681 2011-04-29  Martin Robinson  <mrobinson@igalia.com>
2682
2683         Reviewed by Gustavo Noronha Silva.
2684
2685         [GTK] Untangle GtkAdjustments from WebCore
2686         https://bugs.webkit.org/show_bug.cgi?id=59821
2687
2688         Completely remove the ability for WebKit to set GtkAdjustments on ScrollViews
2689         and, consequently, Scrollbars. Handling adjustment updates can now be managed
2690         in WebKit.
2691
2692         No new tests. This is covered by existing Scrollbar tests.
2693
2694         * platform/ScrollView.cpp: platformInit and platformDestroy can now be shared
2695         between ScrollView.cpp and ScrollViewGtk.cpp.
2696         * platform/ScrollView.h: Remove unused methods.
2697         * platform/gtk/MainFrameScrollbarGtk.cpp:
2698         (MainFrameScrollbarGtk::create): No longer need to pass in the adjustment.
2699         (MainFrameScrollbarGtk::MainFrameScrollbarGtk): Update the comments here.
2700         * platform/gtk/MainFrameScrollbarGtk.h: Lots of code removal.
2701         * platform/gtk/ScrollViewGtk.cpp: Ditto.
2702         (WebCore::ScrollView::createScrollbar): Ditto.
2703         (WebCore::ScrollView::setScrollbarModes): Ditto.
2704         * plugins/gtk/PluginViewGtk.cpp: This file needs the GRefPtrGtk.h include now
2705         that it doesn't receive it transitively.
2706
2707 2011-05-09  Adam Barth  <abarth@webkit.org>
2708
2709         Reviewed by Eric Seidel.
2710
2711         CSP should block Function constructor
2712         https://bugs.webkit.org/show_bug.cgi?id=60240
2713
2714         Tests: http/tests/security/contentSecurityPolicy/function-constructor-allowed.html
2715                http/tests/security/contentSecurityPolicy/function-constructor-blocked.html
2716
2717         * bindings/js/JSLazyEventListener.cpp:
2718         (WebCore::JSLazyEventListener::initializeJSFunction):
2719             - Update call site to the new entrypoint.
2720         * bindings/v8/V8LazyEventListener.cpp:
2721         (WebCore::V8LazyEventListener::prepareListenerObject):
2722             - Add some comments about the rediculousness of this implementation.
2723
2724 2011-05-09  Chris Rogers  <crogers@google.com>
2725
2726         Reviewed by Kenneth Russell.
2727
2728         Add RAII-style DenormalDisabler class to disable denormals which hurt audio performance
2729         https://bugs.webkit.org/show_bug.cgi?id=60396
2730
2731         No new tests since audio API is not yet implemented.
2732
2733         * WebCore.gypi:
2734         * WebCore.xcodeproj/project.pbxproj:
2735         * platform/audio/DenormalDisabler.h: Added.
2736         (WebCore::DenormalDisabler::DenormalDisabler):
2737         (WebCore::DenormalDisabler::~DenormalDisabler):
2738         (WebCore::DenormalDisabler::getCSR):
2739         (WebCore::DenormalDisabler::setCSR):
2740         * webaudio/AudioDestinationNode.cpp:
2741         (WebCore::AudioDestinationNode::provideInput):
2742
2743 2011-05-09  Tony Chang  <tony@chromium.org>
2744
2745         Reviewed by Eric Seidel.
2746
2747         Style cleanups in RenderFlexibleBox.cpp
2748         https://bugs.webkit.org/show_bug.cgi?id=60504
2749
2750         No new tests, just refactoring.
2751
2752         * rendering/RenderFlexibleBox.cpp:
2753         (WebCore::FlexBoxIterator::FlexBoxIterator): Use m_ for member variables, and
2754             use class initializer list.
2755         (WebCore::FlexBoxIterator::reset):
2756         (WebCore::FlexBoxIterator::next):
2757         (WebCore::RenderFlexibleBox::RenderFlexibleBox):
2758         (WebCore::marginWidthForChild): Pull out common code used in calc*PrefWidths
2759         (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths):
2760         (WebCore::RenderFlexibleBox::calcVerticalPrefWidths):
2761         (WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
2762         (WebCore::RenderFlexibleBox::layoutBlock):
2763         (WebCore::gatherFlexChildrenInfo): Rewrite uses of FlexBoxIterator into for statements
2764             rather than while loops.
2765         (WebCore::RenderFlexibleBox::layoutHorizontalBox): ditto
2766         (WebCore::RenderFlexibleBox::layoutVerticalBox): ditto
2767         (WebCore::RenderFlexibleBox::applyLineClamp):
2768         (WebCore::RenderFlexibleBox::allowedChildFlex): Rename variables w/h to width/height.
2769
2770 2011-05-09  Eric Seidel  <eric@webkit.org>
2771
2772         Reviewed by Ryosuke Niwa.
2773
2774         Abstract line deletion code into a function
2775         https://bugs.webkit.org/show_bug.cgi?id=60501
2776
2777         No change in behavior, thus no testing.
2778
2779         * rendering/RenderBlockLineLayout.cpp:
2780         (WebCore::deleteLineRange):
2781         (WebCore::RenderBlock::layoutRunsAndFloats):
2782         (WebCore::RenderBlock::determineStartPosition):
2783         (WebCore::RenderBlock::matchedEndLine):
2784
2785 2011-05-09  Darin Adler  <darin@apple.com>
2786
2787         Cleared some stray executable bits on source files.
2788
2789         * bindings/js/WorkerScriptDebugServer.cpp: Removed property svn:executable.
2790         * bindings/js/WorkerScriptDebugServer.h: Removed property svn:executable.
2791
2792 2011-05-09  Erik Arvidsson  <arv@chromium.org>
2793
2794         Reviewed by Darin Adler.
2795
2796         radiogroup: onchange not detected when triggered by keyboard
2797         https://bugs.webkit.org/show_bug.cgi?id=32013
2798
2799         Test: fast/forms/radio-group-keyboard-change-event.html
2800
2801         * html/RadioInputType.cpp:
2802         (WebCore::RadioInputType::handleKeydownEvent): Ensure that we do not check the radio input before we simulate the click
2803             event. The simulated click event will check it for us but more importantly it will fire the "change" event as
2804             expected.
2805
2806 2011-05-09  Adam Barth  <abarth@webkit.org>
2807
2808         Reviewed by Daniel Bates.
2809
2810         XSSAuditor should be more selective about the <meta http-equivs> that it blocks
2811         https://bugs.webkit.org/show_bug.cgi?id=60489
2812
2813         We don't need to filter most http-equiv attributes.  This patch
2814         introduces a blacklist for two that we probably do want to filter.
2815         It's possible a whitelist would be more appropriate, but I'm inclined
2816         to start with a blacklist and see how it works.
2817
2818         This patch will hopefully fix a false positive that is causing errors
2819         with copy-and-pasted text in Gmail in some configurations (due to using
2820         the <meta> tag to request UTF-8 encoding both in the pasted text and in
2821         the page itself).
2822
2823         * html/parser/XSSFilter.cpp:
2824         (WebCore::isNonCanonicalCharacter):
2825         (WebCore::canonicalize):
2826         (WebCore::isRequiredForInjection):
2827         (WebCore::hasName):
2828         (WebCore::findAttributeWithName):
2829         (WebCore::isNameOfInlineEventHandler):
2830         (WebCore::isDangerousHTTPEquiv):
2831             - This function is new in the patch and includes a blacklist of
2832               dangerous http-equivs.  Many of the other functions listed here
2833               are just being moved from an anonymous namespace to use static
2834               for internal linkage.
2835         (WebCore::containsJavaScriptURL):
2836         (WebCore::decodeURL):
2837         (WebCore::XSSFilter::eraseAttributeIfInjected):
2838
2839 2011-05-05  Matthew Delaney  <mdelaney@apple.com>
2840
2841         Reviewed by Simon Fraser.
2842
2843         Remove canvas usage of roundToDevicePixels
2844         https://bugs.webkit.org/show_bug.cgi?id=60331
2845
2846         No new tests. This could only affect canvases at non-integral scale factors. Our tests only run in 1.0x.
2847
2848         * html/canvas/CanvasRenderingContext2D.cpp:
2849         (WebCore::CanvasRenderingContext2D::drawImage):
2850
2851 2011-05-09  Alexis Menard  <alexis.menard@openbossa.org>
2852
2853         Reviewed by Andreas Kling.
2854
2855         [Qt] Fix the build on Embedded Linux.
2856         https://bugs.webkit.org/show_bug.cgi?id=60347        
2857
2858         qpa is the name for lighthouse but the old name for Qt for Embedded Linux should
2859         still be used in order to build properly.
2860
2861         * WebCore.pri:
2862
2863 2011-05-09  Andreas Kling  <kling@webkit.org>
2864
2865         Reviewed by Kenneth Rohde Christiansen.
2866
2867         [Qt] Simple small-caps text is displayed in uniform size.
2868         https://bugs.webkit.org/show_bug.cgi?id=60492
2869
2870         Covered by existing tests.
2871
2872         * platform/graphics/qt/FontPlatformDataQt.cpp:
2873         (WebCore::FontPlatformData::FontPlatformData): In the FontPlatformData constructor
2874         used by SimpleFontData::scaledFontData(), pass the pixel size to both QFont and QRawFont
2875         to make small caps and emphasis marks have the correct size when rendered through
2876         the fast font path.
2877
2878 2011-05-09  Andreas Kling  <kling@webkit.org>
2879
2880         Reviewed by Tor Arne Vestbø.
2881
2882         [Qt] Remove unused FontPlatformData functions.
2883         https://bugs.webkit.org/show_bug.cgi?id=60485
2884
2885         * platform/graphics/qt/FontPlatformData.h:
2886         (WebCore::FontPlatformData::bold): Removed.
2887         (WebCore::FontPlatformData::family): Removed.
2888         (WebCore::FontPlatformData::italic): Removed.
2889         (WebCore::FontPlatformData::smallCaps): Removed.
2890
2891 2011-05-09  Robin Dunn  <robin@alldunn.com>
2892
2893         Reviewed by Kevin Ollivier.
2894
2895         [wx] Add invalid file handle check.
2896         
2897         https://bugs.webkit.org/show_bug.cgi?id=60483
2898
2899         * platform/wx/FileSystemWx.cpp:
2900         (WebCore::closeFile):
2901
2902 2011-05-09  Robin Dunn  <robin@alldunn.com>
2903
2904         Reviewed by Kevin Ollivier.
2905
2906         [wx] Update the popup menu code to grab the native control and initialize the
2907         event handler properly.
2908         
2909         https://bugs.webkit.org/show_bug.cgi?id=60482
2910
2911         * platform/wx/PopupMenuWx.cpp:
2912         (WebCore::PopupMenuWx::PopupMenuWx):
2913         (WebCore::PopupMenuWx::~PopupMenuWx):
2914         (WebCore::PopupMenuWx::show):
2915
2916 2011-05-09  Robin Dunn  <robin@alldunn.com>
2917
2918         Reviewed by Kevin Ollivier.
2919
2920         [wx] Make sure other controls adjust the rect to handle transforms, and turn off the
2921         adjustment in 2.9.2+ where it is handled internally by wx.
2922         
2923         Also add a couple drawing and focus handling fixes for text fields and menulist controls.
2924         
2925         https://bugs.webkit.org/show_bug.cgi?id=60481
2926
2927         * platform/wx/RenderThemeWx.cpp:
2928         (WebCore::getAdjustedRect):
2929         (WebCore::RenderThemeWx::supportsFocus):
2930         (WebCore::RenderThemeWx::paintButton):
2931         (WebCore::RenderThemeWx::adjustTextFieldStyle):
2932         (WebCore::RenderThemeWx::paintTextField):
2933         (WebCore::RenderThemeWx::adjustMenuListStyle):
2934         (WebCore::RenderThemeWx::paintMenuList):
2935         (WebCore::RenderThemeWx::paintMenuListButton):
2936
2937 2011-05-09  Tony Gentilcore  <tonyg@chromium.org>
2938
2939         Reviewed by Darin Adler.
2940
2941         Style fix: Function names must begin with lowercase letter and should not use "get".
2942         https://bugs.webkit.org/show_bug.cgi?id=60475
2943
2944         * dom/Document.cpp:
2945         (WebCore::Document::webkitVisibilityState):
2946         * page/PageVisibilityState.cpp:
2947         (WebCore::pageVisibilityStateString): Renamed.
2948         * page/PageVisibilityState.h:
2949
2950 2011-05-09  Adam Barth  <abarth@webkit.org>
2951
2952         Reviewed by Tony Gentilcore.
2953
2954         Make Chromium build with strict PassOwnPtr
2955         https://bugs.webkit.org/show_bug.cgi?id=60461
2956
2957         Fix many, many PassOwnPtr nits.
2958
2959         * bindings/v8/V8Proxy.cpp:
2960         (WebCore::V8Proxy::precompileScript):
2961         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2962         (WebCore::WindowSetTimeoutImpl):
2963         * bindings/v8/custom/V8MessageEventCustom.cpp:
2964         (WebCore::V8MessageEvent::initMessageEventCallback):
2965         * bindings/v8/custom/V8WorkerContextCustom.cpp:
2966         (WebCore::SetTimeoutOrInterval):
2967         * dom/Document.cpp:
2968         (WebCore::Document::removedLastRef):
2969         (WebCore::Document::detach):
2970         * fileapi/DOMFileSystem.h:
2971         (WebCore::DOMFileSystem::scheduleCallback):
2972         * fileapi/FileSystemCallbacks.cpp:
2973         (WebCore::FileSystemCallbacks::didOpenFileSystem):
2974         (WebCore::ResolveURICallbacks::didOpenFileSystem):
2975         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2976         (WebCore::GraphicsLayer::create):
2977         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2978         (WebCore::CCLayerImpl::createRenderSurface):
2979         * platform/graphics/gpu/BicubicShader.cpp:
2980         (WebCore::BicubicShader::create):
2981         * platform/graphics/gpu/ConvolutionShader.cpp:
2982         (WebCore::ConvolutionShader::create):
2983         * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp:
2984         (WebCore::LoopBlinnSolidFillShader::create):
2985         * platform/graphics/gpu/SolidFillShader.cpp:
2986         (WebCore::SolidFillShader::create):
2987         * platform/graphics/gpu/TexShader.cpp:
2988         (WebCore::TexShader::create):
2989         * platform/graphics/gpu/Texture.cpp:
2990         (WebCore::Texture::create):
2991         * storage/chromium/DatabaseTrackerChromium.cpp:
2992         (WebCore::TrackerRemoveOpenDatabaseTask::create):
2993         * storage/chromium/SQLTransactionClientChromium.cpp:
2994         (WebCore::NotifyDatabaseChangedTask::create):
2995
2996 2011-05-07  Martin Robinson  <mrobinson@igalia.com>
2997
2998         Reviewed by Daniel Bates.
2999
3000         [Soup] Clean up error handling in ResourceHandleSoup
3001         https://bugs.webkit.org/show_bug.cgi?id=60436
3002
3003         Instead of repeating the ResourceError creation twice, abstract
3004         it into a helper method.
3005
3006         No new tests. This is a code cleanup.
3007
3008         * platform/network/soup/ResourceHandleSoup.cpp:
3009         (WebCore::soupErrorShouldCauseLoadFailure): Added.
3010         (WebCore::convertSoupErrorToResourceError): Added.
3011         (WebCore::sendRequestCallback): Use the new helpers.
3012         (WebCore::readCallback): Ditto.
3013
3014 2011-05-09  Abhishek Arya  <inferno@chromium.org>
3015
3016         Reviewed by Dave Hyatt.
3017
3018         Regression(r85869): Restore dirty line logic in RenderInline::destroy.
3019         https://bugs.webkit.org/show_bug.cgi?id=60448
3020
3021         Test: fast/inline/inline-destroy-dirty-lines-crash.html
3022
3023         * rendering/RenderInline.cpp:
3024         (WebCore::RenderInline::destroy):
3025
3026 2011-05-09  Alejandro G. Castro  <alex@igalia.com>
3027
3028         Reviewed by Martin Robinson.
3029
3030         [GTK] WidgetGtk setFocus can not access directly the widget in WK2
3031         https://bugs.webkit.org/show_bug.cgi?id=60016
3032
3033         Added code to check the situation where we do not have direct
3034         access to the widget. We use the page to grab the focus which
3035         would send a request to the UIProcess in WK2.
3036
3037         * platform/gtk/WidgetGtk.cpp:
3038         (WebCore::Widget::setFocus):
3039
3040 2011-05-09  Leandro Gracia Gil  <leandrogracia@chromium.org>
3041
3042         Reviewed by Tony Gentilcore.
3043
3044         Media Stream API: add exception raising to the getUserMedia method.
3045         https://bugs.webkit.org/show_bug.cgi?id=60387
3046
3047         Perform the required changes to support rising exceptions in the
3048         navigator.getUserMedia method. This is required by the latest changes in the spec:
3049         http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#dom-navigator-getusermedia
3050
3051         Test: fast/dom/MediaStream/argument-types.html
3052
3053         * bindings/js/JSNavigatorCustom.cpp:
3054         (WebCore::JSNavigator::webkitGetUserMedia):
3055         * bindings/v8/custom/V8NavigatorCustom.cpp:
3056         (WebCore::V8Navigator::webkitGetUserMediaCallback):
3057         * page/Navigator.cpp:
3058         (WebCore::Navigator::webkitGetUserMedia):
3059         * page/Navigator.h:
3060         * page/Navigator.idl:
3061
3062 2011-05-09  Csaba Osztrogonác  <ossy@webkit.org>
3063
3064         Unreviewed Qt 4.8 fix.
3065
3066         * WebCore.pro: 4.8 bots are updated with the full QRawFont APIs, so we can set HAVE_QRAWFONT now.
3067
3068 2011-05-09  Adam Roben  <aroben@apple.com>
3069
3070         Windows project file fix after r86047
3071
3072         * WebCore.vcproj/WebCore.vcproj: Added missing closing tags.
3073
3074 2011-05-06  Chris Marrin  <cmarrin@apple.com>
3075
3076         Reviewed by Darin Adler.
3077
3078         Fix layer names to say "tiled" and show CALayer addresses, not PlatformCALayer addresses
3079         https://bugs.webkit.org/show_bug.cgi?id=60417
3080
3081         Layer name now has "Tiled" prepended if it is a TiledLayer. This is true on Mac where
3082         the layer is a CATiledLayer and on Win where the layer is actually still a CACFLayer
3083         but implements a tiled layer. I also now print the address of the CALayer or CACFLayer
3084         instead of the PlatformCALayer everywhere.
3085
3086         * platform/graphics/ca/GraphicsLayerCA.cpp:
3087         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
3088
3089 2011-05-09  Rob Buis  <rbuis@rim.com>
3090
3091         Reviewed by Dirk Schulze.
3092
3093         Elements should assert that the QualifiedName given to their constructor corresponds to the Element constructed
3094         https://bugs.webkit.org/show_bug.cgi?id=22576
3095
3096         Add tag name ASSERTs in SVG Element constructors.
3097
3098         No new tests, since no change in behaviour.
3099
3100         * svg/SVGAElement.cpp:
3101         (WebCore::SVGAElement::SVGAElement):
3102         * svg/SVGAltGlyphElement.cpp:
3103         (WebCore::SVGAltGlyphElement::SVGAltGlyphElement):
3104         * svg/SVGAnimateColorElement.cpp:
3105         (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
3106         * svg/SVGAnimateElement.cpp:
3107         (WebCore::SVGAnimateElement::SVGAnimateElement):
3108         * svg/SVGAnimateMotionElement.cpp:
3109         (WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement):
3110         * svg/SVGAnimateTransformElement.cpp:
3111         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
3112         * svg/SVGCircleElement.cpp:
3113         (WebCore::SVGCircleElement::SVGCircleElement):
3114         * svg/SVGClipPathElement.cpp:
3115         (WebCore::SVGClipPathElement::SVGClipPathElement):
3116         * svg/SVGCursorElement.cpp:
3117         (WebCore::SVGCursorElement::SVGCursorElement):
3118         * svg/SVGDefsElement.cpp:
3119         (WebCore::SVGDefsElement::SVGDefsElement):
3120         * svg/SVGDescElement.cpp:
3121         (WebCore::SVGDescElement::SVGDescElement):
3122         * svg/SVGEllipseElement.cpp:
3123         (WebCore::SVGEllipseElement::SVGEllipseElement):
3124         * svg/SVGFEBlendElement.cpp:
3125         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
3126         * svg/SVGFEColorMatrixElement.cpp:
3127         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
3128         * svg/SVGFEComponentTransferElement.cpp:
3129         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
3130         * svg/SVGFECompositeElement.cpp:
3131         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
3132         * svg/SVGFEConvolveMatrixElement.cpp:
3133         (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
3134         * svg/SVGFEDiffuseLightingElement.cpp:
3135         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
3136         * svg/SVGFEDisplacementMapElement.cpp:
3137         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
3138         * svg/SVGFEDistantLightElement.cpp:
3139         (WebCore::SVGFEDistantLightElement::SVGFEDistantLightElement):
3140         * svg/SVGFEDropShadowElement.cpp:
3141         (WebCore::SVGFEDropShadowElement::SVGFEDropShadowElement):
3142         * svg/SVGFEFloodElement.cpp:
3143         (WebCore::SVGFEFloodElement::SVGFEFloodElement):
3144         * svg/SVGFEFuncAElement.cpp:
3145         (WebCore::SVGFEFuncAElement::SVGFEFuncAElement):
3146         * svg/SVGFEFuncBElement.cpp:
3147         (WebCore::SVGFEFuncBElement::SVGFEFuncBElement):
3148         * svg/SVGFEFuncGElement.cpp:
3149         (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
3150         * svg/SVGFEFuncRElement.cpp:
3151         (WebCore::SVGFEFuncRElement::SVGFEFuncRElement):
3152         * svg/SVGFEGaussianBlurElement.cpp:
3153         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
3154         * svg/SVGFEImageElement.cpp:
3155         (WebCore::SVGFEImageElement::SVGFEImageElement):
3156         * svg/SVGFEMergeElement.cpp:
3157         (WebCore::SVGFEMergeElement::SVGFEMergeElement):
3158         * svg/SVGFEMergeNodeElement.cpp:
3159         (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
3160         * svg/SVGFEMorphologyElement.cpp:
3161         (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
3162         * svg/SVGFEOffsetElement.cpp:
3163         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
3164         * svg/SVGFEPointLightElement.cpp:
3165         (WebCore::SVGFEPointLightElement::SVGFEPointLightElement):
3166         * svg/SVGFESpecularLightingElement.cpp:
3167         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
3168         * svg/SVGFESpotLightElement.cpp:
3169         (WebCore::SVGFESpotLightElement::SVGFESpotLightElement):
3170         * svg/SVGFETileElement.cpp:
3171         (WebCore::SVGFETileElement::SVGFETileElement):
3172         * svg/SVGFETurbulenceElement.cpp:
3173         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
3174         * svg/SVGFilterElement.cpp:
3175         (WebCore::SVGFilterElement::SVGFilterElement):
3176         * svg/SVGFontElement.cpp:
3177         (WebCore::SVGFontElement::SVGFontElement):
3178         * svg/SVGFontFaceElement.cpp:
3179         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
3180         * svg/SVGFontFaceFormatElement.cpp:
3181         (WebCore::SVGFontFaceFormatElement::SVGFontFaceFormatElement):
3182         * svg/SVGFontFaceNameElement.cpp:
3183         (WebCore::SVGFontFaceNameElement::SVGFontFaceNameElement):
3184         * svg/SVGFontFaceSrcElement.cpp:
3185         (WebCore::SVGFontFaceSrcElement::SVGFontFaceSrcElement):
3186         * svg/SVGFontFaceUriElement.cpp:
3187         (WebCore::SVGFontFaceUriElement::SVGFontFaceUriElement):
3188         * svg/SVGForeignObjectElement.cpp:
3189         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
3190         * svg/SVGGElement.cpp:
3191         (WebCore::SVGGElement::SVGGElement):
3192         * svg/SVGGlyphElement.cpp:
3193         (WebCore::SVGGlyphElement::SVGGlyphElement):
3194         * svg/SVGHKernElement.cpp:
3195         (WebCore::SVGHKernElement::SVGHKernElement):
3196         * svg/SVGImageElement.cpp:
3197         (WebCore::SVGImageElement::SVGImageElement):
3198         * svg/SVGLineElement.cpp:
3199         (WebCore::SVGLineElement::SVGLineElement):
3200         * svg/SVGLinearGradientElement.cpp:
3201         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
3202         * svg/SVGMPathElement.cpp:
3203         (WebCore::SVGMPathElement::SVGMPathElement):
3204         * svg/SVGMarkerElement.cpp:
3205         (WebCore::SVGMarkerElement::SVGMarkerElement):
3206         * svg/SVGMaskElement.cpp:
3207         (WebCore::SVGMaskElement::SVGMaskElement):
3208         * svg/SVGMetadataElement.cpp:
3209         (WebCore::SVGMetadataElement::SVGMetadataElement):
3210         * svg/SVGMissingGlyphElement.cpp:
3211         (WebCore::SVGMissingGlyphElement::SVGMissingGlyphElement):
3212         * svg/SVGPathElement.cpp:
3213         (WebCore::SVGPathElement::SVGPathElement):
3214         * svg/SVGPatternElement.cpp:
3215         (WebCore::SVGPatternElement::SVGPatternElement):
3216         * svg/SVGPolygonElement.cpp:
3217         (WebCore::SVGPolygonElement::SVGPolygonElement):
3218         * svg/SVGPolylineElement.cpp:
3219         (WebCore::SVGPolylineElement::SVGPolylineElement):
3220         * svg/SVGRadialGradientElement.cpp:
3221         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
3222         * svg/SVGRectElement.cpp:
3223         (WebCore::SVGRectElement::SVGRectElement):
3224         * svg/SVGSVGElement.cpp:
3225         (WebCore::SVGSVGElement::SVGSVGElement):
3226         * svg/SVGScriptElement.cpp:
3227         (WebCore::SVGScriptElement::SVGScriptElement):
3228         * svg/SVGSetElement.cpp:
3229         (WebCore::SVGSetElement::SVGSetElement):
3230         * svg/SVGStopElement.cpp:
3231         (WebCore::SVGStopElement::SVGStopElement):
3232         * svg/SVGStyleElement.cpp:
3233         (WebCore::SVGStyleElement::SVGStyleElement):
3234         * svg/SVGSwitchElement.cpp:
3235         (WebCore::SVGSwitchElement::SVGSwitchElement):
3236         * svg/SVGSymbolElement.cpp:
3237         (WebCore::SVGSymbolElement::SVGSymbolElement):
3238         * svg/SVGTRefElement.cpp:
3239         (WebCore::SVGTRefElement::SVGTRefElement):
3240         * svg/SVGTSpanElement.cpp:
3241         (WebCore::SVGTSpanElement::SVGTSpanElement):
3242         * svg/SVGTextElement.cpp:
3243         (WebCore::SVGTextElement::SVGTextElement):
3244         * svg/SVGTextPathElement.cpp:
3245         (WebCore::SVGTextPathElement::SVGTextPathElement):
3246         * svg/SVGTitleElement.cpp:
3247         (WebCore::SVGTitleElement::SVGTitleElement):
3248         * svg/SVGUseElement.cpp:
3249         (WebCore::SVGUseElement::SVGUseElement):
3250         * svg/SVGVKernElement.cpp:
3251         (WebCore::SVGVKernElement::SVGVKernElement):
3252         * svg/SVGViewElement.cpp:
3253         (WebCore::SVGViewElement::SVGViewElement):
3254
3255 2011-05-09  Shishir Agrawal  <shishir@chromium.org>
3256
3257         Reviewed by Tony Gentilcore.
3258
3259         Implement Page Visibility API.
3260         https://bugs.webkit.org/show_bug.cgi?id=54181
3261
3262         Tests: fast/events/page-visibility-iframe-delete-test.html
3263                fast/events/page-visibility-iframe-move-test.html
3264                fast/events/page-visibility-iframe-propagation-test.html
3265                fast/events/page-visibility-transition-test.html
3266
3267         * CMakeLists.txt:
3268         * GNUmakefile.list.am:
3269         * WebCore.gypi:
3270         * WebCore.pro:
3271         * WebCore.vcproj/WebCore.vcproj:
3272         * WebCore.xcodeproj/project.pbxproj:
3273         * dom/Document.cpp:
3274         (WebCore::Document::visibilityState):
3275         (WebCore::Document::webkitVisibilityState):
3276         (WebCore::Document::webkitIsVisible):
3277         (WebCore::Document::dispatchVisibilityStateChangeEvent):
3278         * dom/Document.h:
3279         * dom/Document.idl:
3280         * dom/EventNames.h:
3281         * page/Frame.cpp:
3282         (WebCore::Frame::dispatchVisibilityStateChangeEvent):
3283         * page/Frame.h:
3284         * page/Page.cpp:
3285         (WebCore::Page::Page):
3286         (WebCore::Page::setVisibilityState):
3287         (WebCore::Page::visibilityState):
3288         * page/Page.h:
3289         * page/PageVisibilityState.cpp: Added.
3290         (WebCore::GetPageVisibilityStateString):
3291         * page/PageVisibilityState.h: Added.
3292
3293 2011-05-09  Luke Macpherson   <macpherson@chromium.org>
3294
3295         Reviewed by Eric Seidel.
3296
3297         Implement expanding CSS border properties in CSSStyleApplyProperty.
3298         https://bugs.webkit.org/show_bug.cgi?id=60456
3299
3300         No new tests added as no functionality changed.
3301
3302         * css/CSSStyleApplyProperty.cpp:
3303         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3304         Create CSS border expanding property handlers.
3305         * css/CSSStyleSelector.cpp:
3306         (WebCore::CSSStyleSelector::applyProperty):
3307         Remove property handlers that are no longer needed.
3308
3309 2011-05-08  Ryosuke Niwa  <rniwa@webkit.org>
3310
3311         Reviewed by Kent Tamura.
3312
3313         selectstart event does not fire when selection is made via select all
3314         https://bugs.webkit.org/show_bug.cgi?id=60376
3315
3316         Fire selectstart event when a user selects all contents (i.e. document.execCommand('SelectAll')) in
3317         document, editable region, or text control.
3318
3319         Tests: editing/selection/selectstart-on-selectall.html
3320                editing/selection/selectstart-prevent-selectall.html
3321
3322         * dom/Node.h: Removed canSelectAll and selectAll as they are left over from WMLSelectElement.
3323         * editing/FrameSelection.cpp:
3324         (WebCore::FrameSelection::selectAll): Dispatch selectstart event on selectStartTarget, which is
3325         input element or textarea element when the current selection is inside a shadow DOM, and the root
3326         editable element if it's inside a non-shadow editable region, and the body element otherwise.
3327         * html/HTMLSelectElement.h: Made canSelectAll and selectAll public since they are no longer
3328         declared in Node.
3329
3330 2011-05-08  Luke Macpherson   <macpherson@chromium.org>
3331
3332         Reviewed by Eric Seidel.
3333
3334         Make RenderStyle::setColumnBreakInside() reject unsupported enum values.
3335         https://bugs.webkit.org/show_bug.cgi?id=60249
3336
3337         No new tests added as no functionality changed.
3338
3339         * css/CSSStyleSelector.cpp:
3340         (WebCore::CSSStyleSelector::applyProperty):
3341         Remove special-case code and use appropriate macro.
3342         * rendering/style/RenderStyle.h:
3343         (WebCore::InheritedFlags::setColumnBreakInside):
3344         Assert that supported values are used.
3345
3346 2011-05-08  Ryosuke Niwa  <rniwa@webkit.org>
3347
3348         Reviewed by Darin Adler.
3349
3350         Extract a DragCaretController from FrameSelection
3351         https://bugs.webkit.org/show_bug.cgi?id=60273
3352
3353         Extracted CaretBase and DragCaretController from FrameSelection. CaretBase is a base class for
3354         DragCaretController and FrameSelection and provides functions to paint caret.
3355
3356         Since DragCaretController doesn't need to store selection, it only holds one VisiblePosition.
3357
3358         * WebCore.exp.in:
3359         * editing/FrameSelection.cpp:
3360         (WebCore::CaretBase::CaretBase): Added.
3361         (WebCore::DragCaretController::DragCaretController): Added; Set m_caretVisible true.
3362         (WebCore::DragCaretController::isContentRichlyEditable): Added.
3363         (WebCore::FrameSelection::FrameSelection): Several member variables are move to CaretBase.
3364         (WebCore::DragCaretController::setCaretPosition): Extracted from FrameSelection::setSelection.
3365         (WebCore::FrameSelection::setSelection): Removed an early exit for DragCaretController.
3366         (WebCore::clearRenderViewSelection): Extracted from FrameSelection::respondToNodeModification.
3367         (WebCore::DragCaretController::nodeWillBeRemoved): Extracted from FrameSelection::nodeWillBeRemoved
3368         and respondToNodeModification. Note that the position DragCaretController holds is equivalent to
3369         FrameSelection's base or start so when removingNodeRemovesPosition returns true for m_position,
3370         we used to execute the first if clause and cleared render tree selection and DOM tree selection.
3371         This is exactly what new DragCaretController::nodeWillBeRemoved does.
3372         (WebCore::FrameSelection::nodeWillBeRemoved): Simplified early exist conditions.
3373         (WebCore::FrameSelection::respondToNodeModification): Calls clearRenderViewSelection.
3374         (WebCore::CaretBase::updateCaretRect): Takes document, caretPosition, selection type, and boolean isOrphaned.
3375         Note that we can't obtain the document from caretPosition because VisiblePosition can be null even if
3376         FrameSelection's start was not null.
3377         (WebCore::caretRendersInsideNode): Moved; Made static local.
3378         (WebCore::CaretBase::caretRenderer): Extracted from FrameSelection::caretRenderer.
3379         (WebCore::FrameSelection::caretRenderer): Calls CaretBase::caretRenderer.
3380         (WebCore::DragCaretController::caretRenderer): Ditto.
3381         (WebCore::FrameSelection::localCaretRect): Calls updateCaretRect with extra arguments.
3382         (WebCore::CaretBase::absoluteBoundsForLocalRect): Moved from FrameSelection; Takes Node*.
3383         (WebCore::CaretBase::caretRepaintRect): Ditto.
3384         (WebCore::FrameSelection::recomputeCaretRect): Calls absoluteBoundsForLocalRect, caretRepaintRect,
3385         and shouldRepaintCaret with extra arguments.
3386         (WebCore::CaretBase::shouldRepaintCaret): Takes a boolean isContentEditable.
3387         (WebCore::FrameSelection::invalidateCaretRect): Calls CaretBase::invalidateCaretRect.
3388         (WebCore::CaretBase::invalidateCaretRect): Extracted from FrameSelection::invalidateCaretRect.
3389         (WebCore::FrameSelection::paintCaret): Calls CaretBase::paintCaret.
3390         (WebCore::CaretBase::paintCaret): Extracted from FrameSelection::paintCaret.
3391         (WebCore::FrameSelection::updateAppearance): Removed an assertion that this function is never called for
3392         DragCaretController.
3393         (WebCore::DragCaretController::paintDragCaret): Moved from FrameSelection::paintDragCaret.
3394         * editing/FrameSelection.h:
3395         (WebCore::CaretBase::localCaretRectForPainting): Added.
3396         (WebCore::DragCaretController::isContentEditable): Added.
3397         (WebCore::DragCaretController::hasCaret): Added.
3398         (WebCore::DragCaretController::caretPosition): Added.
3399         (WebCore::DragCaretController::clear): Added.
3400         * page/DragController.cpp:
3401         (WebCore::DragController::tryDocumentDrag): Uses DragCaretController.
3402         (WebCore::DragController::dispatchTextInputEventFor): Ditto.
3403         (WebCore::DragController::concludeEditDrag): Ditto.
3404         (WebCore::DragController::placeDragCaret): Ditto.
3405         * page/Page.cpp:
3406         (WebCore::Page::Page): Instantiates DragCaretController instead of FrameSelection.
3407         * page/Page.h:
3408         (WebCore::Page::dragCaretController): Returns DragCaretController* instead of FrameSelection*.
3409         * rendering/RenderBlock.cpp:
3410         (WebCore::RenderBlock::paintCaret): Uses FrameSelection and DragCaretController.
3411
3412 2011-05-08  Dan Bernstein  <mitz@apple.com>
3413
3414         Reviewed by Darin Adler.
3415
3416         <rdar://problem/9401853> REGRESSION (r78846): Insufficient expansion for justification when there are multiple inline boxes
3417         https://bugs.webkit.org/show_bug.cgi?id=60432
3418
3419         * rendering/InlineTextBox.h:
3420         (WebCore::InlineTextBox::setExpansion): Changed back to take a int, since the m_expansion member
3421         variable is a (truncated) int anyway.
3422         * rendering/RenderBlockLineLayout.cpp:
3423         (WebCore::computeExpansionForJustifiedText): Changed the expansion local variable into an int
3424         so that the right amount is added to the total width. Also changed to use an early return.
3425
3426 2011-05-08  Pavel Feldman  <pfeldman@chromium.org>
3427
3428         Not reviewed: ignore 0 responses in the inspector network instrumentation.
3429
3430         * inspector/front-end/NetworkManager.js:
3431
3432 2011-05-08  Jarkko Sakkinen  <jarkko.j.sakkinen@gmail.com>
3433
3434         Reviewed by Kenneth Rohde Christiansen.
3435
3436         [Qt] GraphicsContext3D::getImageData() does not retrieve image data correctly
3437         https://bugs.webkit.org/show_bug.cgi?id=58556
3438
3439         Tests: fast/canvas/webgl/gl-teximage.html
3440
3441         * platform/graphics/qt/GraphicsContext3DQt.cpp:
3442         (WebCore::GraphicsContext3D::getImageData):
3443
3444 2011-05-07  Dan Bernstein  <mitz@apple.com>
3445
3446         Reviewed by Maciej Stachowiak.
3447
3448         <rdar://problem/9403055> REGRESSION (r85499): Inline images in iChat overflow their chat bubbles
3449         https://bugs.webkit.org/show_bug.cgi?id=60443
3450
3451         Test: fast/replaced/table-percent-height-positioned.html
3452
3453         * rendering/RenderBox.cpp:
3454         (WebCore::RenderBox::computeReplacedLogicalHeightUsing): Do not apply the logic to prevent precent-height
3455         replaced elements from being squeezed by table cells when the replaced element is positioned (and thus
3456         doesn’t affect the table cell’s height).
3457
3458 2011-05-07  Sheriff Bot  <webkit.review.bot@gmail.com>
3459
3460         Unreviewed, rolling out r86016.
3461         http://trac.webkit.org/changeset/86016
3462         https://bugs.webkit.org/show_bug.cgi?id=60445
3463
3464         caused crashes on the WK2 Windows bots (Requested by
3465         jessieberlin on #webkit).
3466
3467         * platform/network/ResourceHandle.h:
3468         * platform/network/cf/CookieStorageCFNet.cpp:
3469         (WebCore::currentCookieStorage):
3470         (WebCore::defaultCookieStorage):
3471         * platform/network/cf/ResourceHandleCFNet.cpp:
3472         (WebCore::willSendRequest):
3473         (WebCore::makeFinalRequest):
3474         (WebCore::ResourceHandle::willSendRequest):
3475         * platform/network/cf/ResourceRequestCFNet.cpp:
3476         (WebCore::ResourceRequest::doUpdatePlatformRequest):
3477
3478 2011-05-07  Sheriff Bot  <webkit.review.bot@gmail.com>
3479
3480         Unreviewed, rolling out r85974.
3481         http://trac.webkit.org/changeset/85974
3482         https://bugs.webkit.org/show_bug.cgi?id=60444
3483
3484         broke browser tests (Requested by inferno-sec on #webkit).
3485
3486         * platform/network/chromium/ResourceResponse.cpp:
3487         (WebCore::ResourceResponse::doPlatformCopyData):
3488         (WebCore::ResourceResponse::doPlatformAdopt):
3489         * platform/network/chromium/ResourceResponse.h:
3490         (WebCore::ResourceResponse::downloadFilePath):
3491         (WebCore::ResourceResponse::setDownloadFilePath):
3492
3493 2011-05-07  Jessie Berlin  <jberlin@apple.com>
3494
3495         Reviewed by Steve Falkenburg.
3496
3497         [Windows WebKit2] Use cookies set in WebKit1
3498         https://bugs.webkit.org/show_bug.cgi?id=60274
3499
3500         Share the default storage session between the UI and Web Processes.
3501
3502         * platform/network/cf/CookieStorageCFNet.cpp:
3503         (WebCore::defaultSessionCookieStorage):
3504         Keep track of the default storage session cookie storage.
3505         (WebCore::currentCookieStorage):
3506         Call defaultCookieStorage to get the default cookie storage.
3507         (WebCore::defaultCookieStorage):
3508         If there is a default storage session cookie storage, prefer that over getting the default
3509         cookie storage. In the Web Process, asking CFNetwork for the default cookie storage directly
3510         without specifying a storage session will not get the cookie storage being shared by the UI
3511         and Web Processes.
3512
3513         * platform/network/ResourceHandle.h:
3514         * platform/network/cf/ResourceHandleCFNet.cpp:
3515         (WebCore::willSendRequest):
3516         Make sure to set the current storage session on any requests used by the Web
3517         Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
3518         doing anything with the Web Process's default storage session (which is not the one shared
3519         with the UI Process).
3520         (WebCore::makeFinalRequest):
3521         Ditto.
3522         (WebCore::ResourceHandle::willSendRequest):
3523         Ditto.
3524         (WebCore::ResourceHandle::currentStorageSession):
3525         If there is a Private Browsing storage session, return that.
3526         If not, on Windows return the default storage session that is being shared with the UI
3527         Process and on Mac return 0.
3528         (WebCore::defaultCFURLStorageSession):
3529         (WebCore::ResourceHandle::setDefaultStorageSession):
3530         (WebCore::ResourceHandle::defaultStorageSession):
3531
3532         * platform/network/cf/ResourceRequestCFNet.cpp:
3533         (WebCore::ResourceRequest::doUpdatePlatformRequest):
3534         Make sure to set the current storage session on any requests used by the Web
3535         Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid
3536         doing anything with the Web Process's default storage session (which is not the one shared
3537         with the UI Process).
3538
3539 2011-05-07  Joe Mason  <jmason@rim.com>
3540
3541         Reviewed by Daniel Bates.
3542
3543         FrameLoader::isProcessingUserGesture is wrong in dispatchWillPerformClientRedirect
3544         https://bugs.webkit.org/show_bug.cgi?id=52211
3545
3546         Create a UserGestureIndicator when calling the clientRedirected callback.
3547
3548         * loader/NavigationScheduler.cpp:
3549         (WebCore::ScheduledURLNavigation::didStartTimer):
3550         (WebCore::ScheduledURLNavigation::didStopTimer):
3551         (WebCore::ScheduledFormSubmission::didStartTimer):
3552         (WebCore::ScheduledFormSubmission::didStopTimer):
3553
3554 2011-05-06  Jon Lee  <jonlee@apple.com>
3555
3556         Reviewed by Alice Liu.
3557
3558         Crash when sending a wheel event to a node with no shadow ancestor node
3559         https://bugs.webkit.org/show_bug.cgi?id=60429
3560         <rdar://problem/9389619>
3561
3562         * page/EventHandler.cpp:
3563         (WebCore::EventHandler::handleWheelEvent):add check to see if the shadow ancestor node of the node that was under the mouse exists before trying to dispatch the wheel event to it.
3564
3565 2011-05-06  Kent Tamura  <tkent@chromium.org>
3566
3567         Reviewed by Ryosuke Niwa.
3568
3569         Eliminate WebCore/dom/InputElement.{cpp,h}
3570         https://bugs.webkit.org/show_bug.cgi?id=60262
3571
3572         - Fold in all of the code of InputElement.{cpp,h} into HTMLInputElement
3573           and TextFieldInputType.
3574         - Change the return type of Node::toInputElement():
3575           InputElement* -> HTMLInputElement*
3576
3577         No new tests. This change should not change the existing behaviour.
3578
3579         * CMakeLists.txt: Remove InpuntElement.cpp and/or InputElement.h.
3580         * GNUmakefile.list.am: ditto.
3581         * WebCore.exp.in: Add symbols of functions exposed to WebKit.
3582         * WebCore.gypi: Remove InpuntElement.cpp and/or InputElement.h.
3583         * WebCore.pro: ditto.
3584         * WebCore.vcproj/WebCore.vcproj: ditto.
3585         * WebCore.xcodeproj/project.pbxproj: ditto.
3586         * accessibility/AXObjectCache.cpp:
3587         (WebCore::AXObjectCache::textMarkerDataForVisiblePosition):
3588           Follow the return type change of Node::toInputElement().
3589         * accessibility/AccessibilityRenderObject.cpp:
3590         (WebCore::AccessibilityRenderObject::isPasswordField): ditto.
3591         (WebCore::AccessibilityRenderObject::isIndeterminate): ditto.
3592         (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): ditto.
3593         (WebCore::AccessibilityRenderObject::isChecked): ditto.
3594         * css/CSSStyleSelector.cpp:
3595         (WebCore::CSSStyleSelector::canShareStyleWithElement): ditto.
3596         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ditto.
3597         * dom/CheckedRadioButtons.cpp:
3598         (WebCore::CheckedRadioButtons::removeButton): ditto.
3599         * dom/DOMAllInOne.cpp: Remove InputElement.h.
3600         * dom/InputElement.cpp: Removed.
3601         * dom/InputElement.h: Removed.
3602         * dom/Node.cpp:
3603         (WebCore::Node::toInputElement):
3604           Change the return type from InputElement* to HTMLInputElement*.
3605         * dom/Node.h: ditto.
3606         * html/HTMLInputElement.cpp:
3607         (WebCore::HTMLInputElement::HTMLInputElement):
3608         (WebCore::HTMLInputElement::formControlName):
3609         (WebCore::HTMLInputElement::tooLong):
3610         (WebCore::HTMLInputElement::updateFocusAppearance):
3611         (WebCore::HTMLInputElement::aboutToUnload):
3612         (WebCore::HTMLInputElement::handleFocusEvent):
3613         (WebCore::HTMLInputElement::handleBlurEvent):
3614         (WebCore::HTMLInputElement::updateType):
3615         (WebCore::HTMLInputElement::parseMappedAttribute):
3616         (WebCore::HTMLInputElement::size):
3617         (WebCore::HTMLInputElement::copyNonAttributeProperties):
3618         (WebCore::HTMLInputElement::value):
3619         (WebCore::HTMLInputElement::suggestedValue):
3620         (WebCore::HTMLInputElement::setSuggestedValue):
3621         (WebCore::HTMLInputElement::setValue):
3622         (WebCore::HTMLInputElement::setValueFromRenderer):
3623         (WebCore::HTMLInputElement::setFileListFromRenderer):
3624         (WebCore::HTMLInputElement::setDefaultName):
3625         (WebCore::HTMLInputElement::maxLength):
3626         (WebCore::HTMLInputElement::cacheSelection):
3627         (WebCore::formatCodes): Moved from InputElement.
3628         (WebCore::cursorPositionToMaskIndex): ditto.
3629         (WebCore::HTMLInputElement::isConformToInputMask): ditto.
3630         (WebCore::HTMLInputElement::validateInputMask): ditto.
3631         (WebCore::HTMLInputElement::setWapInputFormat): ditto.
3632         (WebCore::HTMLInputElement::notifyFormStateChanged): ditto.
3633         (WebCore::HTMLInputElement::parseMaxLengthAttribute): ditto.
3634         (WebCore::HTMLInputElement::updateValueIfNeeded):ditto.
3635         * html/HTMLInputElement.h:
3636           - Add data members which were defined in InputElementData.
3637           - Make some functions public because the public interface InputElement is removed.
3638           - Make some functions non-virtual because they don't override
3639             corresponding virtual functions of InputElement anymore.
3640         (WebCore::HTMLInputElement::toInputElement):
3641           Follow the return type change of Node::toInputElement().
3642         (WebCore::HTMLInputElement::isIndeterminate):
3643         (WebCore::HTMLInputElement::isAutofilled):
3644         (WebCore::HTMLInputElement::supportsMaxLength):
3645         (WebCore::HTMLInputElement::cachedSelectionStart):
3646         (WebCore::HTMLInputElement::cachedSelectionEnd):
3647         * html/HTMLTextAreaElement.cpp: Remove unused InputElement.h.
3648         * html/InputType.cpp:
3649         (WebCore::InputType::handleBeforeTextInsertedEvent): Remove the code.
3650         * html/InputType.h: Update for the above.
3651         * html/TextFieldInputType.cpp:
3652         (WebCore::replaceEOLAndLimitLength): Moved from InputElement.cpp.
3653         (WebCore::TextFieldInputType::sanitizeValue): Implement with replaceEOLAndLimitLength().
3654         (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):
3655           Move the code from InputElement::handleBeforeTextInsertedEvent().
3656         * html/TextFieldInputType.h: Update declarations.
3657         * rendering/RenderTextControlSingleLine.cpp:
3658           - Remove ASSERT(node()->isHTMLElement()) because it is checked in the constructor.
3659           - Follow the return type change of inputElement().
3660         (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
3661           Make sure node() is an HTMLInputElement instance.
3662         (WebCore::RenderTextControlSingleLine::addSearchResult):
3663         (WebCore::RenderTextControlSingleLine::stopSearchEventTimer):
3664         (WebCore::RenderTextControlSingleLine::showPopup):
3665         (WebCore::RenderTextControlSingleLine::hidePopup):
3666         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
3667         (WebCore::RenderTextControlSingleLine::updateFromElement):
3668         (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
3669         (WebCore::RenderTextControlSingleLine::createResultsButtonStyle):
3670         (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
3671         (WebCore::RenderTextControlSingleLine::createInnerSpinButtonStyle):
3672         (WebCore::RenderTextControlSingleLine::createOuterSpinButtonStyle):
3673         (WebCore::RenderTextControlSingleLine::createSpeechButtonStyle):
3674         (WebCore::RenderTextControlSingleLine::visibilityForCancelButton):
3675         (WebCore::RenderTextControlSingleLine::startSearchEventTimer):
3676         (WebCore::RenderTextControlSingleLine::searchEventTimerFired):
3677         (WebCore::RenderTextControlSingleLine::valueChanged):
3678         (WebCore::RenderTextControlSingleLine::setTextFromItem):
3679         (WebCore::RenderTextControlSingleLine::inputElement):
3680         * rendering/RenderTextControlSingleLine.h:
3681           Change the return type of inputElement(): InputElement* -> HTMLInputElement*.
3682         * rendering/RenderTheme.cpp:
3683         (WebCore::RenderTheme::isChecked):
3684           Follow the return type change of Node::toInputElement().
3685         (WebCore::RenderTheme::isIndeterminate): ditto.
3686         (WebCore::RenderTheme::shouldHaveSpinButton):
3687           Change the parameter type: InputElement* -> HTMLInputElement*.
3688         * rendering/RenderTheme.h: ditto.
3689
3690 2011-05-06  Adam Barth  <abarth@webkit.org>
3691
3692         Reviewed by Eric Seidel.
3693
3694         Implement "Report-Only" mode for CSP
3695         https://bugs.webkit.org/show_bug.cgi?id=60402
3696
3697         This mode lets web sites try out CSP by getting violation reports (and
3698         console spam) without actually changing the behavior of their web sites.
3699
3700         Test: http/tests/security/contentSecurityPolicy/report-only.html
3701
3702         * dom/Document.cpp:
3703         (WebCore::Document::processHttpEquiv):
3704         * loader/FrameLoader.cpp:
3705         (WebCore::FrameLoader::didBeginDocument):
3706         * page/ContentSecurityPolicy.cpp:
3707         (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
3708         (WebCore::ContentSecurityPolicy::didReceiveHeader):
3709         (WebCore::ContentSecurityPolicy::reportViolation):
3710         (WebCore::ContentSecurityPolicy::checkInlineAndReportViolation):
3711         (WebCore::ContentSecurityPolicy::checkEvalAndReportViolation):
3712         (WebCore::ContentSecurityPolicy::checkSourceAndReportViolation):
3713         (WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
3714         * page/ContentSecurityPolicy.h:
3715
3716 2011-05-06  Beth Dakin  <bdakin@apple.com>
3717
3718         Reviewed by Darin Adler.
3719
3720         https://bugs.webkit.org/show_bug.cgi?id=60421
3721         Custom scrollbars nested inside an overlay scrollbar overflow region end up 
3722         painting twice
3723         -and corresponding-
3724         <rdar://problem/9389072>
3725
3726         Be sure not to paint custom css scrollbars during the special overlay-scrollbar 
3727         painting pass.
3728         * rendering/RenderLayer.cpp:
3729         (WebCore::RenderLayer::paintOverflowControls):
3730
3731 2011-05-06  Cary Clark  <caryclark@google.com>
3732
3733         Reviewed by Eric Seidel.
3734
3735         Add utility for converting SkCanvas to CGContext
3736         https://bugs.webkit.org/show_bug.cgi?id=59808
3737
3738         Skia on Mac uses Skia to render WebKit, and CG 
3739         to render UI elements. The CG elements need a 
3740         transcribed graphics context that preserves the 
3741         canvas matrix, and the canvas clip. 
3742
3743         The BitLockerSkia utility class sets up a CGContext 
3744         from the SkCanvas, locks the bitmap's bits, and 
3745         releases the lock when the class goes out of scope. 
3746
3747         Each time the CGContext is retrieved, it is rebuilt. 
3748         This permits the caller to modify the same canvas 
3749         between calls. 
3750
3751         This change adds utilities but does not modify any 
3752         existing code. For now, there are no callers to these 
3753         utilities, so there is no functional change.
3754
3755         No new tests.
3756
3757         * platform/graphics/skia/BitLockerSkia.cpp: Added.
3758         (WebCore::SkMatrixToCGAffineTransform): Conversion utility.
3759         (WebCore::BitLockerSkia::BitLockerSkia): Takes SkCanvas.
3760         (WebCore::BitLockerSkia::~BitLockerSkia): Unlocks, cleans up.
3761         (WebCore::BitLockerSkia::release): Internal private helper.
3762         (WebCore::BitLockerSkia::cgContext): Returns CGContextRef.
3763         * platform/graphics/skia/BitLockerSkia.h: Added.
3764
3765 2011-05-06  Martin Robinson  <mrobinson@igalia.com>
3766
3767         Reviewed by Xan Lopez.
3768
3769         [GTK] [WebKit2] WebView::windowToScreen needs an implementation
3770         https://bugs.webkit.org/show_bug.cgi?id=55960
3771
3772         Abstract coordinate system translation code from WebKit into WebCore.
3773         This will allow the code to be shared between WebKit and WebKit2. The code
3774         now lives in a new GtkUtilities.cpp helper file.
3775
3776         * GNUmakefile.list.am: Added GtkUtilities to the source list.
3777         * platform/gtk/GtkUtilities.cpp: Added.
3778         (WebCore::convertWidgetRectToScreenRect):
3779         * platform/gtk/GtkUtilities.h: Added.
3780
3781 2011-05-06  Martin Robinson  <mrobinson@igalia.com>
3782
3783         Reviewed by Xan Lopez.
3784
3785         Remove some unnecessary static methods in ResourceHandleSoup.
3786
3787         No new tests. This is only a small cleanup.
3788
3789         * platform/network/soup/ResourceHandleSoup.cpp:
3790         (WebCore::restartedCallback): Call ResourceResponse::updateFromSoupMessage directly.
3791         (WebCore::gotHeadersCallback):Ditto.
3792         (WebCore::contentSniffedCallback):Ditto.
3793         (WebCore::sendRequestCallback):Ditto.
3794         (WebCore::ResourceHandle::defaultSession): Create the soup session directly.
3795
3796 2011-05-06  Martin Robinson  <mrobinson@igalia.com>
3797
3798         Reviewed by Xan Lopez.
3799
3800         [Soup] ResourceHandles are leaked on 304 responses
3801         https://bugs.webkit.org/show_bug.cgi?id=60413
3802
3803         Always call cleanupSoupRequestOperation, even when the request was not
3804         canceled. Before the code would call didFinishLoading and then never clean up
3805         the request.
3806
3807         No new tests. This simply fixes a memory leak.
3808
3809         * platform/network/soup/ResourceHandleSoup.cpp:
3810         (WebCore::sendRequestCallback):
3811
3812 2011-05-06  Adam Barth  <abarth@webkit.org>
3813
3814         Reviewed by Eric Seidel.
3815
3816         Add disable-javascript-urls CSP directive
3817         https://bugs.webkit.org/show_bug.cgi?id=60301
3818
3819         This CSP directive is not in the CSP spec.  This patch is somewhat of
3820         an experiment to see whether this feature is useful.  Based on our
3821         implementation experience, we will coordinate with folks via the W3C to
3822         see if this makes sense to add to the spec.
3823
3824         Test: http/tests/security/contentSecurityPolicy/javascript-urls-blocked.html
3825
3826         * page/ContentSecurityPolicy.cpp:
3827         (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
3828         (WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
3829         (WebCore::ContentSecurityPolicy::addDirective):
3830         * page/ContentSecurityPolicy.h:
3831
3832 2011-05-06  Brett Wilson  <brettw@chromium.org>
3833
3834         Reviewed by Adam Barth.
3835
3836         Use a File object to store the downloaded file reference rather than
3837         just the path. This keeps the file and permissions in scope (using the
3838         already-existing blob system) so the browser won't delete the file
3839         when the load is complete. Instead, the file will be cleaned up when
3840         the request objects are deleted.
3841         https://bugs.webkit.org/show_bug.cgi?id=60281
3842
3843         * platform/network/chromium/ResourceResponse.cpp:
3844         (WebCore::ResourceResponse::doPlatformCopyData):
3845         (WebCore::ResourceResponse::doPlatformAdopt):
3846         * platform/network/chromium/ResourceResponse.h:
3847         (WebCore::ResourceResponse::downloadedFile):
3848         (WebCore::ResourceResponse::setDownloadedFile):
3849
3850 2011-05-06  Alexis Menard  <alexis.menard@openbossa.org>
3851
3852         Reviewed by Darin Adler.
3853
3854         Fix two warnings of unused variables.
3855         https://bugs.webkit.org/show_bug.cgi?id=60370
3856
3857         Remove two unused local variable from the code.
3858
3859         No new tests, the existing ones should cover.
3860
3861         * rendering/RenderFlexibleBox.cpp:
3862         (WebCore::RenderFlexibleBox::layoutVerticalBox):
3863         * svg/animation/SVGSMILElement.cpp:
3864         (WebCore::SVGSMILElement::calculateNextProgressTime):
3865
3866 2011-05-06  Adam Barth  <abarth@webkit.org>
3867
3868         Reviewed by Eric Seidel.
3869
3870         Wire up CSP's eval blocking to V8's new API
3871         https://bugs.webkit.org/show_bug.cgi?id=60384
3872
3873         * bindings/v8/ScriptController.cpp:
3874         (WebCore::ScriptController::disableEval):
3875
3876 2011-05-06  David Hyatt  <hyatt@apple.com>
3877
3878         Reviewed by Dan Bernstein.
3879
3880         https://bugs.webkit.org/show_bug.cgi?id=60398 (<rdar://problem/9307696>)
3881         REGRESSION (r81684?): cox.com sign in button is missing
3882         
3883         Fix a typo in r81684 where the ascent was used in a comparison instead of boxHeight.
3884         This restores the original behavior before the refactoring messed it up.
3885
3886         Added fast/inline/nested-top-alignment.html
3887
3888         * rendering/InlineFlowBox.cpp:
3889         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3890
3891 2011-05-06  David Hyatt  <hyatt@apple.com>
3892
3893         Reviewed by Dan Bernstein.
3894
3895         https://bugs.webkit.org/show_bug.cgi?id=60390 (<rdar://problem/9364449>)
3896         REGRESSION (r81992): portions of ticketmaster site render blank
3897
3898         Make simplified layout skip from a positioned object out to its containing block.  There is no
3899         need to dirty the intermediate inlines, and in this case it's actively harmful, since the
3900         block responsible for the layout of the positioned object doesn't get m_posChildNeedsLayout set.
3901
3902         Added fast/block/positioning/hiding-inside-relpositioned-inline.html
3903
3904         * rendering/RenderObject.h:
3905         (WebCore::RenderObject::markContainingBlocksForLayout):
3906
3907 2011-05-06  Pavel Feldman  <pfeldman@chromium.org>
3908
3909         Not reviewed: move selection test into the text area branch.
3910
3911         * inspector/front-end/TextViewer.js:
3912         (WebInspector.TextViewer.prototype._contextMenu):
3913
3914 2011-05-04  Adrienne Walker  <enne@google.com>
3915
3916         Reviewed by James Robinson.
3917
3918         [chromium] Fix incorrect scissor rect for layers that render into a rendersurface
3919         https://bugs.webkit.org/show_bug.cgi?id=59020
3920
3921         Allow for empty scissor rects, which implies scissoring to the render
3922         surface. The previous code and previous patch on this bug both didn't
3923         take into account that the scissor rect should be the render surface
3924         and not the projection of the layer itself, because child layers
3925         aren't necessarily contained within the bounds of their superlayer.
3926
3927         Test: compositing/flat-with-transformed-child.html
3928
3929         * platform/graphics/chromium/LayerRendererChromium.cpp:
3930         (WebCore::LayerRendererChromium::paintLayerContents):
3931         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
3932         (WebCore::LayerRendererChromium::drawLayer):
3933         (WebCore::LayerRendererChromium::setScissorToRect):
3934
3935 2011-05-06  Simon Fraser  <simon.fraser@apple.com>
3936
3937         Reviewed by Sam Weinig.
3938
3939         Lazily allocate ScrollAnimator in ScrollableArea
3940         https://bugs.webkit.org/show_bug.cgi?id=60327
3941
3942         Avoid allocating the ScrollAnimator up-front, because we
3943         create lots of ScrollableAreas via RenderLayer, and we should
3944         only need the animator when scrolling.
3945
3946         * platform/ScrollableArea.cpp:
3947         (WebCore::ScrollableArea::ScrollableArea):
3948         (WebCore::ScrollableArea::scrollAnimator):
3949         (WebCore::ScrollableArea::scroll):
3950         (WebCore::ScrollableArea::scrollToOffsetWithoutAnimation):
3951         (WebCore::ScrollableArea::scrollToXOffsetWithoutAnimation):
3952         (WebCore::ScrollableArea::scrollToYOffsetWithoutAnimation):
3953         (WebCore::ScrollableArea::handleWheelEvent):
3954         (WebCore::ScrollableArea::handleGestureEvent):
3955         * platform/ScrollableArea.h:
3956
3957 2011-05-06  Eric Carlson  <eric.carlson@apple.com>
3958
3959         Reviewed by Darin Adler.
3960
3961         REGRESSION (r77954): HTTP Live Streams have incorrect controller UI
3962         https://bugs.webkit.org/show_bug.cgi?id=60304
3963         <rdar://problem/9392609>
3964
3965         Don't assume that the only time the media controls UI may need to change is on a 
3966         network state change, readyState changes can be significant as well.
3967
3968         Tested manually because we don't have any live streams to test in DRT.
3969
3970         * html/HTMLMediaElement.cpp:
3971         (WebCore::HTMLMediaElement::setNetworkState): changedNetworkState -> updateStatusDisplay.
3972         (WebCore::HTMLMediaElement::setReadyState): Call updateStatusDisplay.
3973
3974         * html/shadow/MediaControlRootElement.cpp:
3975         (WebCore::MediaControlRootElement::reset): changedNetworkState -> updateStatusDisplay.
3976         (WebCore::MediaControlRootElement::updateStatusDisplay): Ditto.
3977         * html/shadow/MediaControlRootElement.h:
3978
3979         * html/shadow/MediaControlRootElementChromium.cpp:
3980         (WebCore::MediaControlRootElementChromium::reset): Ditto.
3981         (WebCore::MediaControlRootElementChromium::updateStatusDisplay): Ditto.
3982         * html/shadow/MediaControlRootElementChromium.h:
3983         * html/shadow/MediaControls.h:
3984
3985 2011-05-06  Andreas Kling  <andreas.kling@nokia.com>
3986
3987         Unreviewed Qt 4.8 build fix.
3988
3989         * WebCore.pro: Don't set HAVE_QRAWFONT yet. Left a FIXME so we can
3990         enable it after the 4.8 bots are updated with the full QRawFont APIs.
3991
3992 2011-05-06  Alexander Pavlov  <apavlov@chromium.org>
3993
3994         Reviewed by Yury Semikhatsky.
3995
3996         Web Inspector: editing CSS in the Resources panel and not committing does not revert the change.
3997         https://bugs.webkit.org/show_bug.cgi?id=60319
3998
3999         * inspector/front-end/ResourceView.js:
4000         (WebInspector.ResourceSourceFrame.prototype.cancelEditing):
4001
4002 2011-05-06  Joe Mason  <jmason@rim.com>
4003
4004         Reviewed by Adam Barth.
4005
4006         WebSocket urls should always be encoded as UTF-8.
4007         https://bugs.webkit.org/show_bug.cgi?id=57138
4008
4009         Change WebSocket::connect to take the raw URL string and parse it
4010         internally using the simple KURL constructor, which expects an absolute
4011         UTF-8 encoded URL.  This ensures that all code that creates a WebSocket
4012         goes through this method instead of completeURL.
4013
4014         Test: http/tests/websocket/tests/url-with-nonascii-query.html
4015
4016         * bindings/js/JSWebSocketCustom.cpp:
4017         (WebCore::JSWebSocketConstructor::constructJSWebSocket): Pass String instead of KURL to WebSocket::connect().
4018         * websockets/WebSocket.cpp:
4019         (WebCore::WebSocket::connect): Now takes a String instead of a KURL and parses it using UTF-8.
4020         * websockets/WebSocket.h:
4021
4022 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
4023
4024         Reviewed by Eric Seidel.
4025
4026         Make CSSStyleSelector::applyProperty() CSSPropertyWebkitColorCorrection case use appropriate macro.
4027         https://bugs.webkit.org/show_bug.cgi?id=60339
4028
4029         No tests added as no functionality changed.
4030
4031         * css/CSSStyleSelector.cpp:
4032         (WebCore::CSSStyleSelector::applyProperty):
4033         Use correct macro for CSSPropertySpeak.
4034         * rendering/style/RenderStyle.h:
4035         (WebCore::InheritedFlags::initialColorSpace):
4036         Add initialColorSpace() static method.
4037
4038 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
4039
4040         Reviewed by Eric Seidel.
4041
4042         Make RenderStyle::setPageBreakInside() reject unsupported enum values.
4043         https://bugs.webkit.org/show_bug.cgi?id=60235
4044
4045         No tests added as no functionality changed.
4046
4047         * css/CSSStyleSelector.cpp:
4048         (WebCore::CSSStyleSelector::applyProperty):
4049         Remove special-case code and use appropriate macro.
4050         * rendering/style/RenderStyle.h:
4051         (WebCore::InheritedFlags::setPageBreakInside):
4052         Assert that only supported values are used.
4053
4054 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
4055
4056         Reviewed by Eric Seidel.
4057
4058         Move burden of checking for BJustify box alignment into RenderStyle
4059         https://bugs.webkit.org/show_bug.cgi?id=60246
4060
4061         No new tests added as no functionality changed.
4062
4063         * css/CSSStyleSelector.cpp:
4064         (WebCore::CSSStyleSelector::applyProperty):
4065         Remove special-case logic checking for BJUSTIFY and use existing macro.
4066         * rendering/style/RenderStyle.h:
4067         (WebCore::InheritedFlags::setBoxAlign):
4068         Assert valid values are used.
4069
4070 2011-05-06  Luke Macpherson   <macpherson@chromium.org>
4071
4072         Reviewed by Eric Seidel.
4073
4074         Make CSSStyleSelector::applyProperty() CSSPropertyPointerEvents use the correct macro.
4075         https://bugs.webkit.org/show_bug.cgi?id=60338
4076
4077         No tests added as no functionality changed.
4078
4079         * css/CSSStyleSelector.cpp:
4080         (WebCore::CSSStyleSelector::applyProperty):
4081         Use correct macro for CSSPropertySpeak.
4082
4083 2011-05-06  Alexis Menard  <alexis.menard@openbossa.org>
4084
4