blob: fb0742b4213d4905111a6d2e5dc4f236d388f01b [file] [log] [blame]
dsmith@webkit.orgbee65b52008-09-26 02:36:38 +000012008-09-25 David Smith <catfish.man@gmail.com>
2
3 Reviewed by Darin Adler.
4
5 https://bugs.webkit.org/show_bug.cgi?id=20980
6 Split off uncommonly used data from Node similar to ElementRareData
7
8 Saves an OwnPtr and a short on Node, as well as providing room for an isContainer bit,
9 which in turn allows inlining firstChild(), lastChild(), childNodeCount(), and childNode()
10 for a 5-10+% performance win on SlickSpeed and assorted speedups on other tests.
11
12 * WebCore.base.exp:
13 * WebCore.xcodeproj/project.pbxproj:
14 * dom/ChildNodeList.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
15 * dom/ContainerNode.cpp: Set isContainer to true
16 (WebCore::ContainerNode::ContainerNode):
17 * dom/ContainerNode.h: These Node inlines are here to avoid including ContainerNode.h in Node.h
18 (WebCore::Node::containerChildNodeCount): Use ContainerNode's definition, having proved that the Node is a container
19 (WebCore::Node::containerChildNode): ditto
20 (WebCore::Node::containerFirstChild): ditto
21 (WebCore::Node::containerLastChild): ditto
22 * dom/Element.cpp: Most of the changes here are moving ElementRareData to ElementRareData.h and NodeRareData.h
23 (WebCore::Element::Element):
24 (WebCore::Element::~Element):
25 (WebCore::Element::rareData):
26 (WebCore::Element::ensureRareData): Renamed from createRareData
27 (WebCore::Element::createRareData): Used by ensureRareData to get the correct rareData type
28 (WebCore::Element::attach): Check hasRareData rather than null-checking rareData()
29 (WebCore::Element::detach): ditto
30 (WebCore::Element::recalcStyle): ditto
31 (WebCore::Element::focus):
32 (WebCore::Element::minimumSizeForResizing): ditto
33 (WebCore::Element::setMinimumSizeForResizing): ditto
34 (WebCore::Element::computedStyle):
35 (WebCore::Element::cancelFocusAppearanceUpdate): ditto
36 * dom/Element.h:
37 * dom/ElementRareData.h: Added; everything copied from Element.cpp
38 (WebCore::defaultMinimumSizeForResizing):
39 (WebCore::ElementRareData::ElementRareData):
40 (WebCore::ElementRareData::resetComputedStyle):
41 * dom/EventTargetNode.cpp:
42 (WebCore::EventTargetNode::EventTargetNode): Pass the isContainer flag up the chain
43 * dom/EventTargetNode.h:
44 * dom/Node.cpp:
45 (WebCore::Node::Node):
46 (WebCore::Node::~Node): rareData cleanup code moved from Element and changed to use hasRareData
47 (WebCore::Node::rareData):
48 (WebCore::Node::ensureRareData):
49 (WebCore::Node::createRareData):
50 (WebCore::Node::tabIndex): nonzero tab indexes are now in rareData
51 (WebCore::Node::setTabIndexExplicitly):
52 (WebCore::Node::childNodes): NodeLists are now in rareData
53 (WebCore::Node::setFocus):
54 (WebCore::Node::rareDataFocused):
55 (WebCore::Node::isFocusable):
56 (WebCore::Node::isKeyboardFocusable):
57 (WebCore::Node::registerDynamicNodeList): NodeLists are now in rareData
58 (WebCore::Node::unregisterDynamicNodeList): ditto
59 (WebCore::Node::notifyLocalNodeListsAttributeChanged): ditto
60 (WebCore::Node::notifyLocalNodeListsChildrenChanged): ditto
61 (WebCore::Node::getElementsByName): ditto
62 (WebCore::Node::getElementsByClassName): ditto
63 * dom/Node.h:
64 (WebCore::Node::firstChild): Use isContainerNode() to devirtualize
65 (WebCore::Node::lastChild): ditto
66 (WebCore::Node::isContainerNode): Take advantage of a newly freed bit to store whether we're a container
67 (WebCore::Node::focused): focus is in rareData if set
68 (WebCore::Node::childTypeAllowed):
69 (WebCore::Node::childNodeCount): Use isContainerNode() to devirtualize
70 (WebCore::Node::childNode): ditto
71 (WebCore::Node::hasRareData): Use another newly freed bit to store whether we have rare data; avoids doing hash lookups in the common case
72 * dom/NodeRareData.h: Added. Most of this is just properties moved from Node
73 (WebCore::NodeListsNodeData::~NodeListsNodeData): Moved from Node.cpp since we NodeRareData needs to put them in a HashTable :(
74 (WebCore::NodeRareData::NodeRareData):
75 (WebCore::NodeRareData::rareDataMap):
76 (WebCore::NodeRareData::rareDataFromMap):
77 (WebCore::NodeRareData::clearNodeLists):
78 (WebCore::NodeRareData::setNodeLists):
79 (WebCore::NodeRareData::nodeLists):
80 (WebCore::NodeRareData::tabIndex):
81 (WebCore::NodeRareData::setTabIndex):
82 (WebCore::NodeRareData::tabIndexSetExplicitly):
83 * dom/TreeWalker.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
84 * xml/XPathUtil.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
85
zecke@webkit.orge1370432008-09-26 01:47:30 +0000862008-09-25 Holger Hans Peter Freyther <zecke@selfish.org>
87
88 Reviewed by Simon Hausmann.
89
zecke@webkit.org9ea87f62008-09-26 01:54:04 +000090 [qt] ImageBuffer::toDataURL implementation
91
92 There needs to be a Qt specific test result for the above mentioned
93 implementation.
94
95 * platform/graphics/qt/ImageBufferQt.cpp:
96 (WebCore::ImageBuffer::toDataURL):
97
982008-09-25 Holger Hans Peter Freyther <zecke@selfish.org>
99
100 Reviewed by Simon Hausmann.
101
zecke@webkit.orge1370432008-09-26 01:47:30 +0000102 [qt] Implement SharedBuffer for Qt.
103
104 * WebCore.pro:
105 * platform/qt/SharedBufferQt.cpp: Added.
106 (WebCore::SharedBuffer::createWithContentsOfFile):
107 * platform/qt/TemporaryLinkStubs.cpp:
108
ddkilzer@apple.com91eae552008-09-26 00:53:18 +00001092008-09-25 Feng Qian <feng@chromium.org>
110
111 Fix bug: https://bugs.webkit.org/show_bug.cgi?id=21032
112 <rdar://problem/6243032>
113
114 Reviewed by Dave Hyatt.
115
116 Test: fast/dom/attribute-downcast-right.html
117
118 Add isMappedAttribute function to Attribute for checking if an object
119 is an instance of MappedAttribute. Removed attributeItem,
120 getAttributeItem functions from NamedMappedAttrMap, and callers
121 expecting MappedAttribute have to check isMappedAttribute before
122 downcasting the return value to MappedAttribute.
123
124 * css/CSSStyleSelector.cpp:
125 (WebCore::CSSStyleSelector::styleForElement):
126 * dom/Attribute.h:
127 (WebCore::Attribute::isMappedAttribute):
128 * dom/MappedAttribute.h:
129 (WebCore::MappedAttribute::isMappedAttribute):
130 * dom/NamedMappedAttrMap.cpp:
131 (WebCore::NamedMappedAttrMap::declCount):
132 (WebCore::NamedMappedAttrMap::mapsEquivalent):
133 * dom/NamedMappedAttrMap.h:
134 * dom/StyledElement.cpp:
135 (WebCore::StyledElement::attributeChanged):
136 * html/HTMLInputElement.cpp:
137 (WebCore::HTMLInputElement::setInputType):
138 * svg/SVGForeignObjectElement.cpp:
139 (WebCore::addCSSPropertyAndNotifyAttributeMap):
140 * svg/SVGStyledElement.cpp:
141 (WebCore::SVGStyledElement::getPresentationAttribute):
142
hyatt@apple.com79be62c2008-09-25 22:25:22 +00001432008-09-25 David Hyatt <hyatt@apple.com>
144
145 https://bugs.webkit.org/show_bug.cgi?id=21120
146
147 Make visibleContentRect cross-platform. Note this does add new horizontal/verticalScrollbar accessors
148 to a bunch of platforms. This is a temporary evil until the scrollbars get made cross-platform (and I
149 didn't want to mix that change in with this patch).
150
151 Reviewed by Sam Weinig
152
153 * page/Frame.cpp:
154 (WebCore::Frame::markAllMatchesForText):
155 * page/FrameView.cpp:
156 (WebCore::FrameView::repaintContentRectangle):
157 (WebCore::FrameView::windowClipRect):
158 (WebCore::FrameView::updateControlTints):
159 * platform/ScrollView.cpp:
160 (WebCore::ScrollView::visibleContentRect):
161 (WebCore::ScrollView::platformVisibleContentRect):
162 * platform/ScrollView.h:
163 (WebCore::ScrollView::visibleWidth):
164 (WebCore::ScrollView::visibleHeight):
165 * platform/gtk/ScrollViewGtk.cpp:
166 (WebCore::ScrollView::horizontalScrollbar):
167 (WebCore::ScrollView::verticalScrollbar):
168 * platform/mac/ScrollViewMac.mm:
169 (WebCore::ScrollView::horizontalScrollbar):
170 (WebCore::ScrollView::verticalScrollbar):
171 (WebCore::ScrollView::platformVisibleContentRect):
172 * platform/qt/ScrollViewQt.cpp:
173 (WebCore::ScrollView::horizontalScrollbar):
174 (WebCore::ScrollView::verticalScrollbar):
175 * platform/win/ScrollViewWin.cpp:
176 (WebCore::ScrollView::horizontalScrollbar):
177 (WebCore::ScrollView::verticalScrollbar):
178 * platform/wx/ScrollViewWx.cpp:
179 (WebCore::ScrollView::platformVisibleContentRect):
180 (WebCore::ScrollView::horizontalScrollbar):
181 (WebCore::ScrollView::verticalScrollbar):
182 * rendering/RenderLayer.cpp:
183 (WebCore::RenderLayer::scrollRectToVisible):
184 (WebCore::frameVisibleRect):
185 * rendering/RenderView.cpp:
186 (WebCore::RenderView::viewRect):
187
dsmith@webkit.orgfbfe33a2008-09-25 20:55:31 +00001882008-09-25 David Smith <catfish.man@gmail.com>
189
190 Reviewed by Timothy Hatcher
191
192 https://bugs.webkit.org/show_bug.cgi?id=21052
193 Generalize id selector special case for querySelectorAll
194
195 By checking the element we get with getElementById against the selector, we can use the special case in many more circumstances.
196 Changes results on http://native.khan.mozilla.org
197 from
198 #title: 2ms
199 h1#title: 55ms
200 div #title: 55ms
201
202 to:
203 #title: 1ms
204 h1#title: 2ms
205 div #title: 5ms
206
207 * dom/Node.cpp:
208 (WebCore::Node::querySelector):
209 * dom/SelectorNodeList.cpp:
210 (WebCore::createSelectorNodeList):
211
hyatt@apple.com64a3be22008-09-25 20:49:17 +00002122008-09-25 David Hyatt <hyatt@apple.com>
213
214 https://bugs.webkit.org/show_bug.cgi?id=21118
215
216 Make the concept of whether you can blit on scroll cross-platform on ScrollView.
217
218 Reviewed by Sam Weinig
219
220 * page/FrameView.cpp:
221 (WebCore::FrameView::clear):
222 (WebCore::FrameView::layout):
223 (WebCore::FrameView::setUseSlowRepaints):
224 (WebCore::FrameView::addSlowRepaintObject):
225 (WebCore::FrameView::removeSlowRepaintObject):
226 * platform/ScrollView.cpp:
227 (WebCore::ScrollView::init):
228 (WebCore::ScrollView::addChild):
229 (WebCore::ScrollView::removeChild):
230 (WebCore::ScrollView::setCanBlitOnScroll):
231 * platform/ScrollView.h:
232 (WebCore::ScrollView::canBlitOnScroll):
233 * platform/gtk/ScrollViewGtk.cpp:
234 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
235 (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
236 (WebCore::ScrollView::ScrollView):
237 * platform/mac/ScrollViewMac.mm:
238 (WebCore::ScrollView::ScrollView):
239 (WebCore::ScrollView::platformAddChild):
240 (WebCore::ScrollView::platformRemoveChild):
241 (WebCore::ScrollView::platformSetCanBlitOnScroll):
242 * platform/qt/ScrollViewQt.cpp:
243 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
244 (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
245 (WebCore::ScrollView::ScrollView):
246 * platform/win/ScrollViewWin.cpp:
247 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
248 (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
249 (WebCore::ScrollView::ScrollView):
250 * platform/wx/ScrollViewWx.cpp:
251 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
252 (WebCore::ScrollView::ScrollView):
253 (WebCore::ScrollView::scrollBy):
254
kmccullough@apple.com03b515b2008-09-25 20:29:57 +00002552008-09-25 Kevin McCullough <kmccullough@apple.com>
256
257 Reviewed by Tim Hatcher.
258
259 Bug 21109: Console should right-align urls
260
261 * page/inspector/Console.js: Re-order the message elements so that when
262 it overflows it doesn't get mixed in with the next message.
263 * page/inspector/inspector.css:
264
hyatt@apple.com95d18752008-09-25 20:15:44 +00002652008-09-25 David Hyatt <hyatt@apple.com>
266
267 https://bugs.webkit.org/show_bug.cgi?id=21113
268
269 Putting r36771 back in with a fix to the addPendingSheet check in CSSImportRule::insertedIntoParent.
270
271 Reviewed by Darin Adler
272
273 * css/CSSImportRule.cpp:
274 (WebCore::CSSImportRule::insertedIntoParent):
275 * css/CSSRule.cpp:
276 (WebCore::CSSRule::parentStyleSheet):
277 (WebCore::CSSRule::parentRule):
278 * css/CSSStyleSheet.cpp:
279 (WebCore::CSSStyleSheet::CSSStyleSheet):
280 * css/CSSStyleSheet.h:
281
darin@apple.com6ca04432008-09-25 20:02:11 +00002822008-09-25 Darin Adler <darin@apple.com>
283
284 Reviewed by Adele Peterson.
285
286 - fix https://bugs.webkit.org/show_bug.cgi?id=21115
287 <rdar://problem/6245773> REGRESSION (r34702): Safari no longer zips
288 bundled documents
289
290 * html/HTMLFormElement.cpp:
291 (WebCore::HTMLFormElement::formData): Use files() instead of value()
292 to get the path, since value() now returns just the basename.
293
beidson@apple.comb9a40052008-09-25 18:37:09 +00002942008-09-25 Brady Eidson <beidson@apple.com>
295
296 Rubberstamped by Mark Rowe
297
298 Roll out 36771 as it caused <rdar://problem/6246554>
299 "nytimes.com doesn't display after returning to it with back/forward"
300
301 * css/CSSImportRule.cpp:
302 (WebCore::CSSImportRule::insertedIntoParent):
303 * css/CSSRule.cpp:
304 (WebCore::CSSRule::parentStyleSheet):
305 (WebCore::CSSRule::parentRule):
306 * css/CSSStyleSheet.cpp:
307 (WebCore::CSSStyleSheet::CSSStyleSheet):
308 (WebCore::CSSStyleSheet::docLoader):
309 * css/CSSStyleSheet.h:
310 (WebCore::CSSStyleSheet::doc):
311
aroben@apple.comdf5a7322008-09-25 17:47:15 +00003122008-09-25 Adam Roben <aroben@apple.com>
313
314 Windows build fix
315
316 * WebCore.vcproj/WebCore.vcproj: Add ScrollView.cpp to the project.
317
mitz@apple.com0565bc92008-09-25 17:27:37 +00003182008-09-25 Dan Bernstein <mitz@apple.com>
319
320 - Windows build fix
321
322 * platform/win/ScrollViewWin.cpp:
323 (WebCore::ScrollView::addChildPlatformWidget):
324 (WebCore::ScrollView::removeChildPlatformWidget):
325
timothy@apple.com7a4bf192008-09-25 17:07:43 +00003262008-09-25 Timothy Hatcher <timothy@apple.com>
327
328 Fixes a leak of ConsoleMessage seen when repeated console
329 messages occur.
330
331 Reviewed by Mark Rowe.
332
333 * page/InspectorController.cpp:
334 (WebCore::InspectorController::addConsoleMessage): Delete the repeat
335 since we don't add it to m_consoleMessages.
336
kmccullough@apple.com340e7272008-09-25 16:04:20 +00003372008-09-25 Kevin McCullough <kmccullough@apple.com>
338
kmccullough@apple.com364f2992008-09-25 16:48:34 +0000339 Reviewed by Dan Bernstein.
340
341 Bug 21105: XHRs logged in the console may show the wrong URL for the
342 source
343 - Get the url at the time of the send() and pass it on to the XHR.
344
345 * bindings/js/JSXMLHttpRequestCustom.cpp:
346 (WebCore::JSXMLHttpRequest::send):
347 * xml/XMLHttpRequest.cpp:
348 (WebCore::XMLHttpRequest::didFinishLoading):
349 * xml/XMLHttpRequest.h:
350 (WebCore::XMLHttpRequest::setLastSendURL):
351
3522008-09-25 Kevin McCullough <kmccullough@apple.com>
353
kmccullough@apple.com340e7272008-09-25 16:04:20 +0000354 Reviewed by Geoff and Tim.
355
356 Bug 20322: XHRs logged in the console do not have line numbers
357 - Get the line number at the time of the send and pass it on to the XHR.
358
359 * bindings/js/JSXMLHttpRequestCustom.cpp:
360 (WebCore::JSXMLHttpRequest::send):
361 * xml/XMLHttpRequest.cpp:
362 (WebCore::XMLHttpRequest::XMLHttpRequest):
363 (WebCore::XMLHttpRequest::didFinishLoading):
364 * xml/XMLHttpRequest.h:
365 (WebCore::XMLHttpRequest::setLastSendLineNumber):
366
eric.carlson@apple.comb9404142008-09-25 15:33:02 +00003672008-09-25 Eric Carlson <eric.carlson@apple.com>
368
369 Reviewed by Eric Seidel.
370
371 <rdar://problem/6171047> HTMLMediaElement "begin" event is now "loadstart"
372 https://bugs.webkit.org/show_bug.cgi?id=21003
373
374 * dom/EventNames.h: remove "begin" event
375 * html/HTMLMediaElement.cpp:
376 (WebCore::HTMLMediaElement::load): Post "loadstart" event instead of "begin"
377
ap@webkit.orgcdec56d2008-09-25 11:30:02 +00003782008-09-25 Alexey Proskuryakov <ap@webkit.org>
379
380 Reviewed by Eric Seidel.
381
382 https://bugs.webkit.org/show_bug.cgi?id=21097
383 Calling a MessageChannel constructor from a destroyed document results in a crash
384
385 Test: fast/events/message-port-constructor-for-deleted-document.html
386
387 * bindings/js/JSMessageChannelConstructor.cpp:
388 (WebCore::JSMessageChannelConstructor::construct):
389 * bindings/js/JSMessageChannelConstructor.h:
390 Made m_document a RefPtr.
391
ap@webkit.org28b51752008-09-25 10:15:11 +00003922008-09-24 Alexey Proskuryakov <ap@webkit.org>
393
394 Reviewed by Sam Weinig, Anders Carlsson, and (unofficially) Adam Barth.
395
396 https://bugs.webkit.org/show_bug.cgi?id=20879
397 Implement HTML5 channel messaging
398
399 Tests: fast/events/message-channel-gc.html
400 fast/events/message-port-deleted-document.html
401 fast/events/message-port-deleted-frame.html
402 fast/events/message-port-inactive-document.html
403 fast/events/message-port.html
404 http/tests/security/MessagePort/event-listener-context.html
405
406 * Configurations/WebCore.xcconfig:
407 Removed unused ENABLE_CROSS_DOCUMENT_MESSAGING macro.
408
409 * DerivedSources.make:
410 Added MessageChannel and MessagePort.
411
412 * WebCore.pro: Made MessageEvent compilation unconditional, as it could not possibly be
413 turmed off anyway. Added new files.
414
415 * GNUmakefile.am:
416 * WebCore.pro:
417 * WebCore.vcproj/WebCore.vcproj:
418 * WebCore.xcodeproj/project.pbxproj:
419 * WebCoreSources.bkl:
420 Added new files.
421
422 * bindings/js/JSDOMWindowBase.h:
423 * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::getValueProperty):
424 Added suport for window.MessageChannel constructor.
425
426 * bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::postMessage):
427 * page/DOMWindow.cpp:
428 (WebCore::DOMWindow::postMessage):
429 * page/DOMWindow.h:
430 * page/DOMWindow.idl:
431 Added support for three-argument postMessage (that posts a MessagePort).
432
433 * dom/EventTarget.cpp:
434 (WebCore::EventTarget::toMessagePort):
435 * dom/EventTarget.h:
436 * bindings/js/JSEventTargetBase.cpp: (WebCore::toJS): Added MessagePort as yet another
437 EventTarget variant.
438
439 * bindings/js/JSMessageChannelConstructor.h:
440 * bindings/js/JSMessageChannelConstructor.cpp: Added a custom constructor, so that it could
441 take a browsing context (document) parameter.
442
443 * bindings/js/JSMessageChannelCustom.cpp: Added.
444 (WebCore::JSMessageChannel::mark): JSMessageChannel uses a custom mark function to mark
445 port1 and port2 that it owns.
446
447 * bindings/js/JSMessagePortCustom.cpp: Added.
448 (WebCore::JSMessagePort::startConversation):
449 (WebCore::JSMessagePort::addEventListener):
450 (WebCore::JSMessagePort::removeEventListener):
451 (WebCore::JSMessagePort::dispatchEvent):
452 (WebCore::JSMessagePort::setOnmessage):
453 (WebCore::JSMessagePort::onmessage):
454 (WebCore::JSMessagePort::setOnclose):
455 (WebCore::JSMessagePort::onclose):
456 (WebCore::JSMessagePort::mark):
457 * dom/MessagePort.cpp: Added.
458 * dom/MessagePort.h: Added.
459 * dom/MessagePort.idl: Added.
460 Added a MessagePort implementation. Currently, it is not thread-safe at all, and only works
461 with Documents as contexts, but in the future, it will be used for communication with worker
462 threads.
463
464 * bindings/objc/DOMInternal.h: Include "DOMMessagePortInternal.h". The new APIs do not
465 really have Obj-C bindings, as they are far from being final, but a MessagePort stub is
466 needed for MessageEvent.
467
468 * bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h for MessagePort happiness.
469
470 * dom/Document.cpp:
471 (WebCore::MessagePortTimer::MessagePortTimer):
472 (WebCore::MessagePortTimer::fired):
473 (WebCore::Document::processMessagePortMessagesSoon):
474 (WebCore::Document::~Document):
475 (WebCore::Document::dispatchMessagePortEvents):
476 (WebCore::Document::createdMessagePort):
477 (WebCore::Document::destroyedMessagePort):
478 * dom/Document.h:
479 Document keeps track of all MessagePort objects that were created when it was fully active
480 in its context.
481
482 * dom/EventNames.h: Added closeEvent.
483
484 * dom/MessageChannel.cpp: Added.
485 (WebCore::MessageChannel::MessageChannel):
486 (WebCore::MessageChannel::~MessageChannel):
487 * dom/MessageChannel.h: Added.
488 (WebCore::MessageChannel::create):
489 (WebCore::MessageChannel::port1):
490 (WebCore::MessageChannel::port2):
491 * dom/MessageChannel.idl: Added.
492 Addded JSMessageChannel implementation.
493
494 * dom/MessageEvent.cpp:
495 (WebCore::MessageEvent::MessageEvent):
496 (WebCore::MessageEvent::initMessageEvent):
497 * dom/MessageEvent.h:
498 (WebCore::MessageEvent::create):
499 (WebCore::MessageEvent::messagePort):
500 * dom/MessageEvent.idl:
501 MessageEvent has a MessagePort member now, making it possible to pass ports across
502 documents.
503
dsmith@webkit.org3e32f422008-09-25 08:57:31 +00005042008-09-25 David Smith <catfish.man@gmail.com>
505
506 Reviewed by Eric Seidel
507
508 fix https://bugs.webkit.org/show_bug.cgi?id=21091
509 Regression: querySelector matches tag names case sensitively
510
511 Tests: fast/dom/SelectorAPI/caseTag.html
512 fast/dom/SelectorAPI/caseTagX.xhtml
513
514 * css/CSSParser.cpp:
515 (WebCore::CSSParser::parseSelector): Add a Document argument, since tag case sensitivity is different for HTML documents
516 * css/CSSParser.h:
517 * dom/Node.cpp:
518 (WebCore::Node::querySelector):
519 (WebCore::Node::querySelectorAll):
520
hyatt@apple.com912c1b12008-09-25 07:38:56 +00005212008-09-24 David Hyatt <hyatt@apple.com>
522
523 https://bugs.webkit.org/show_bug.cgi?id=21084
524
525 Make the m_children member of ScrollView cross-platform. Consolidate children add/remove
526 functionality. Add platform stubs for connecting/disconnecting the platform widgets.
527
528 Reviewed by Sam Weinig
529
530 * GNUmakefile.am:
531 * WebCore.pro:
532 * WebCore.vcproj/WebCore.vcproj:
533 * WebCore.xcodeproj/project.pbxproj:
534 * WebCoreSources.bkl:
535 * platform/ScrollView.h:
536 (WebCore::ScrollView::children):
537 * platform/Widget.h:
538 * platform/gtk/ScrollViewGtk.cpp:
539 (WebCore::ScrollView::addChildPlatformWidget):
540 (WebCore::ScrollView::removeChildPlatformWidget):
541 (WebCore::ScrollView::geometryChanged):
542 * platform/mac/ScrollViewMac.mm:
543 (WebCore::ScrollView::addChildPlatformWidget):
544 (WebCore::ScrollView::removeChildPlatformWidget):
545 * platform/qt/ScrollViewQt.cpp:
546 (WebCore::ScrollView::geometryChanged):
547 (WebCore::ScrollView::addChildPlatformWidget):
548 (WebCore::ScrollView::removeChildPlatformWidget):
549 * platform/win/ScrollViewWin.cpp:
550 (WebCore::ScrollView::geometryChanged):
551 (WebCore::ScrollView::setParentVisible):
552 (WebCore::ScrollView::show):
553 (WebCore::ScrollView::hide):
554 * platform/wx/ScrollViewWx.cpp:
555 (WebCore::ScrollView::addChildPlatformWidget):
556 (WebCore::ScrollView::removeChildPlatformWidget):
557
mitz@apple.com982d2cc2008-09-25 07:16:05 +00005582008-09-25 Dan Bernstein <mitz@apple.com>
559
560 Reviewed by Dave Hyatt.
561
562 - fix https://bugs.webkit.org/show_bug.cgi?id=21024
563 <rdar://problem/6240821> Scrollbar not painted until hovered
564
565 * rendering/RenderWidget.cpp:
566 (WebCore::RenderWidget::setWidgetGeometry): Replaced resizeWidget with
567 this method, which sets both the location and the size.
568 (WebCore::RenderWidget::setWidget): Replaced the call to resizeWidget
569 with a call to the new method setWidgetGeometry. Positioning the
570 widget correctly ensures that the scroll bars invalidate correctly when
571 they are created and resized.
572 * rendering/RenderWidget.h:
573
mitz@apple.com61969a62008-09-25 00:50:05 +00005742008-09-24 Dan Bernstein <mitz@apple.com>
575
576 Rubber-stamped by Sam Weinig.
577
578 - create a "style" subfolder under "rendering" and move style files to that folder
579
580 * WebCore.vcproj/WebCore.vcproj:
581
weinig@apple.comacfb9e12008-09-25 00:39:11 +00005822008-09-24 Sam Weinig <sam@webkit.org>
583
584 Reviewed by Maciej Stachowiak.
585
586 Remove staticFunctionGetter. There is only one remaining user of
587 staticFunctionGetter and it can be converted to use setUpStaticFunctionSlot.
588
589 * bindings/js/JSDOMWindowBase.cpp:
590 (WebCore::JSDOMWindowBase::getOwnPropertySlot):
591
mitz@apple.com0cb3dff2008-09-24 23:40:29 +00005922008-09-24 Jeremy Moskovich <jeremy@chromium.org>
593
594 Reviewed by Dan Bernstein.
595
596 Test: editing/spelling/inline_spelling_markers.html
597
598 - https://bugs.webkit.org/show_bug.cgi?id=20092
599 Spelling markers positioned incorrectly in RTL text
600
601 Measure spelling markers with selectionRectForText() to fix RTL.
602
603 This patch also fixes hit-testing for spelling marker tool tips,
604 which used to work only on the first line.
605
606 * rendering/InlineTextBox.cpp:
607 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
608
hyatt@apple.come5925322008-09-24 21:28:08 +00006092008-09-24 David Hyatt <hyatt@apple.com>
610
hyatt@apple.com31cd6d62008-09-24 21:45:19 +0000611 https://bugs.webkit.org/show_bug.cgi?id=21074
612
hyatt@apple.come5925322008-09-24 21:28:08 +0000613 Make sure the viewless scrollbar knows how to paint properly when transformed.
614
615 Reviewed by Sam Weinig
616
617 * platform/mac/ScrollbarThemeMac.mm:
618 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
619 (WebCore::ScrollbarThemeMac::paint):
620
zimmermann@webkit.orgf0935532008-09-24 21:17:14 +00006212008-09-24 Nikolas Zimmermann <zimmermann@kde.org>
622
623 Not reviewed. Try to fix win build.
624
625 * bindings/js/JSSVGElementInstanceCustom.cpp:
626 (WebCore::toJS):
627 * dom/ContainerNodeAlgorithms.h:
628 (WebCore::removeAllChildrenInContainer):
629 (WebCore::appendChildToContainer):
630 (WebCore::Private::addChildNodesToDeletionQueue):
631
6322008-09-24 Nikolas Zimmermann <zimmermann@kde.org>
633
634 Reviewed by Oliver.
635
636 Add ContainerNodeAlgorithms.h, as central place to share algorithms
637 operating on TreeShared-derived classes with a Node-style interface.
638
639 This allows SVGElementInstance & ContainerNode to share code.
640
641 * dom/ContainerNode.cpp:
642 (WebCore::ContainerNode::removeAllChildren):
643 (WebCore::ContainerNode::addChild):
644 * dom/ContainerNode.h:
645 * dom/ContainerNodeAlgorithms.h: Added.
646 (WebCore::removeAllChildrenInContainer):
647 (WebCore::appendChildToContainer):
648 (WebCore::Private::NodeRemovalDispatcher::dispatch):
649 (WebCore::Private::addChildNodesToDeletionQueue):
650
simon.fraser@apple.com557a0472008-09-24 21:08:23 +00006512008-09-24 Simon Fraser <simon.fraser@apple.com>
652
653 Reviewed by Dave Hyatt
654
655 Wrap up dirtying the z-order list of the stacking context
656 RenderLayer into a method.
657 https://bugs.webkit.org/show_bug.cgi?id=21072
658
659 * rendering/RenderLayer.cpp:
660 (WebCore::RenderLayer::setHasVisibleContent):
661 (WebCore::RenderLayer::addChild):
662 (WebCore::RenderLayer::removeChild):
663 (WebCore::RenderLayer::dirtyStackingContextZOrderLists):
664 (WebCore::RenderLayer::styleChanged):
665 * rendering/RenderLayer.h:
666 * rendering/RenderObject.cpp:
667 (WebCore::RenderObject::setStyle):
668
kmccullough@apple.comaf908e62008-09-24 20:22:23 +00006692008-09-24 Kevin McCullough <kmccullough@apple.com>
670
671 Reviewed by Tim.
672
673 Bug 21070: REGRESSION Repeated messages with arguments are not repeated
674 or displayed multiple times
675 - The Insepctor Controller was comparing JSValue pointers so thought the
676 message was not a repeat, but the JS of the inspector compared the
677 strings and so knew it was the same message and so overwrote the old
678 message.
679
680 * page/InspectorController.cpp:
681 (WebCore::ConsoleMessage::isEqual):
682 (WebCore::InspectorController::addMessageToConsole):
683 (WebCore::InspectorController::addConsoleMessage):
684 (WebCore::InspectorController::startGroup):
685 (WebCore::InspectorController::endGroup):
686 * page/InspectorController.h:
687
hyatt@apple.comf4c8f172008-09-24 20:19:26 +00006882008-09-24 David Hyatt <hyatt@apple.com>
689
690 Make sure the viewless Mac scrollbar responds properly to system preference changes (including the
691 arrow placement preference and the thumb jump preference).
692
693 Reviewed by Adam Roben
694
695 * platform/Scrollbar.cpp:
696 (WebCore::Scrollbar::Scrollbar):
697 (WebCore::Scrollbar::~Scrollbar):
698 * platform/ScrollbarTheme.h:
699 (WebCore::ScrollbarTheme::registerScrollbar):
700 (WebCore::ScrollbarTheme::unregisterScrollbar):
701 * platform/mac/ScrollbarThemeMac.h:
702 * platform/mac/ScrollbarThemeMac.mm:
703 (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
704 (+[ScrollbarPrefsObserver behaviorPrefsChanged:]):
705 (+[ScrollbarPrefsObserver registerAsObserver]):
706 (WebCore::ScrollbarThemeMac::registerScrollbar):
707 (WebCore::ScrollbarThemeMac::unregisterScrollbar):
708 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
709 (WebCore::ScrollbarThemeMac::preferencesChanged):
710
rwlbuis@webkit.orga5dafa8d2008-09-24 19:23:54 +00007112008-09-24 Rob Buis <buis@kde.org>
712
713 Reviewed by Darin.
714
715 https://bugs.webkit.org/show_bug.cgi?id=20557
716 getScreenCTM() returns wrong values
717
718 Use the absolute position of the svg root when
719 determining the screen ctm.
720
721 Test: svg/custom/getscreenctm-in-mixed-content2.xhtml
722
723 * svg/SVGSVGElement.cpp:
724 (WebCore::SVGSVGElement::getScreenCTM):
725
hyatt@apple.com40a73652008-09-24 18:15:15 +00007262008-09-24 David Hyatt <hyatt@apple.com>
727
hyatt@apple.come77b7d42008-09-24 18:26:51 +0000728 Turn off support for CSS variables.
729
730 * ChangeLog:
731 * css/CSSParser.cpp:
732 (WebCore::CSSParser::createVariablesRule):
733 (WebCore::CSSParser::addVariable):
734 (WebCore::CSSParser::addVariableDeclarationBlock):
735
7362008-09-24 David Hyatt <hyatt@apple.com>
737
hyatt@apple.com40a73652008-09-24 18:15:15 +0000738 Back out the alternate forms of CSS variable call syntax (leaving only the -webkit-var version).
739
740 * css/CSSGrammar.y:
741 * css/CSSParserValues.cpp:
742 (WebCore::CSSParserValue::isVariable):
743 * css/CSSPrimitiveValue.cpp:
744 (WebCore::CSSPrimitiveValue::cleanup):
745 (WebCore::CSSPrimitiveValue::getStringValue):
746 (WebCore::CSSPrimitiveValue::cssText):
747 (WebCore::CSSPrimitiveValue::parserValue):
748 * css/CSSPrimitiveValue.h:
749 (WebCore::CSSPrimitiveValue::):
750 (WebCore::CSSPrimitiveValue::isVariable):
751
timothy@apple.com0214f092008-09-24 16:23:17 +00007522008-09-24 Timothy Hatcher <timothy@apple.com>
753
754 Fixes a regression where the "incorrect MIME-type" warning would not
755 show up correctly in the Console or the resources sidebar.
756
757 Reviewed by Kevin McCullough.
758
759 * page/inspector/Resource.js:
760 (WebInspector.Resource.prototype._addTip): Add the repeat count argument
761 to the WebInspector.ConsoleMessage constructor call.
762 (WebInspector.Resource.prototype._checkWarning): Ditto.
763
vestbo@webkit.orgb298eda2008-09-24 13:47:06 +00007642008-09-23 Tor Arne Vestbø <tavestbo@trolltech.com>
765
766 Reviewed by Simon.
767
768 Remove deprecated JS Qt bindings object call/construct code and fix autotests
769
770 * bridge/qt/qt_instance.cpp:
771 (JSC::Bindings::QtInstance::QtInstance):
772 * bridge/qt/qt_instance.h:
773
jmalonzo@webkit.orgbe1da352008-09-24 07:42:39 +00007742008-09-23 Julien Chaffraix <jchaffraix@pleyo.com>
775
776 Reviewed by Alp Toker. Landed by Jan Alonzo.
777
778 Bug 20883: [CURL] Add deferred loading
779 https://bugs.webkit.org/show_bug.cgi?id=20883
780
781 Implement deferred loading for the libcURL backend using curl_easy_pause.
782 As the method was introduced in version 7.18.0, all the code checks for libcURL
783 version.
784
785 * platform/network/curl/ResourceHandleCurl.cpp:
786 (WebCore::ResourceHandle::setDefersLoading):
787 * platform/network/curl/ResourceHandleManager.cpp:
788 (WebCore::writeCallback): Add an assertion that deferred loading is not
789 activated.
790 (WebCore::headerCallback): Ditto.
791 (WebCore::readCallback): Ditto.
792 (WebCore::ResourceHandleManager::dispatchSynchronousJob): Force
793 defersLoading to be false in order to avoid triggering an assertion.
794 (WebCore::ResourceHandleManager::initializeHandle): If deferred loading is
795 activated, pause the easy handle.
796
pewtermoose@webkit.org0ebdfc02008-09-24 03:24:43 +00007972008-09-23 Matt Lilek <webkit@mattlilek.com>
798
799 Reviewed by Tim Hatcher.
800
801 Inspector search field style tweaks.
802
803 * page/inspector/inspector.css:
804
zimmermann@webkit.org1acc6262008-09-24 02:23:24 +00008052008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
806
807 Reviewed by Eric.
808
809 Fixes: https://bugs.webkit.org/show_bug.cgi?id=21046 (Several LayoutTests crash)
810
811 Fix missing negation in EventTargetNode::insertedIntoDocument.
812 Made handleLocalEvents() virtual again, HTMLFormElement overrides it.
813 Remove code, that wasn't supposed to go in in dispatchGenericEvent().
814
815 * dom/EventTargetNode.cpp:
816 (WebCore::EventTargetNode::insertedIntoDocument):
817 (WebCore::EventTargetNode::dispatchGenericEvent):
818 * dom/EventTargetNode.h:
819
timothy@apple.combffde042008-09-24 02:07:39 +00008202008-09-23 Timothy Hatcher <timothy@apple.com>
821
timothy@apple.com99c03532008-09-24 02:08:44 +0000822 Adds search support to the Profiles panel.
823
824 The Profiles panel supports a few types of queries:
825 * Standard string matching for function names and file URLs.
826 * Greater than and less than search for numeric columns.
827 So a query of ">24" will match all rows that have calls
828 greater than 24. Or "<=42" will match all 42 or less.
829 * Percent and time units. Adding a unit of "s", "ms" or "%"
830 is supported and will match only the Self and Total columns.
831 So a query of ">1.25s" will match all rows that took longer
832 than 1.25 seconds.
833
834 Reviewed by Oliver Hunt.
835
836 * page/inspector/ProfileView.js:
837 (WebInspector.ProfileView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
838 it will start at the first result.
839 (WebInspector.ProfileView.prototype.refreshShowAsPercents): Moved from the bottom of the file.
840 (WebInspector.ProfileView.prototype.searchCanceled): Clear the search properties and refresh highlighted
841 data grid nodes.
842 (WebInspector.ProfileView.prototype.performSearch): Search the profile nodes.
843 (WebInspector.ProfileView.prototype.jumpToFirstSearchResult): Does what the function says. Calls _jumpToSearchResult.
844 (WebInspector.ProfileView.prototype.jumpToLastSearchResult): Ditto.
845 (WebInspector.ProfileView.prototype.jumpToNextSearchResult): Ditto.
846 (WebInspector.ProfileView.prototype.jumpToPreviousSearchResult): Ditto.
847 (WebInspector.ProfileView.prototype.showingFirstSearchResult): Does what the function says.
848 (WebInspector.ProfileView.prototype.showingLastSearchResult): Ditto.
849 (WebInspector.ProfileView.prototype._jumpToSearchResult): Select and reveal the profile node.
850 Expand all the ancestors first so the profile node will have a DataGridNode.
851 (WebInspector.ProfileView.prototype._changeView): Perform the search again on the new tree.
852 (WebInspector.ProfileDataGridNode.prototype.createCell): Add the highlight class to cells that
853 have search matches.
854 * page/inspector/ProfilesPanel.js:
855 (WebInspector.ProfilesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
856 (WebInspector.ProfilesPanel.prototype.showProfile): Use profileViewForProfile.
857 (WebInspector.ProfilesPanel.prototype.showView): Call showProfile. Used by Panel to show a view.
858 (WebInspector.ProfilesPanel.prototype.profileViewForProfile): Create the ProfileView if needed.
859 (WebInspector.ProfilesPanel.prototype.closeVisibleView): Renamed visibleProfileView to visibleView.
860 (WebInspector.ProfilesPanel.prototype.get searchableViews): Return all the views.
861 (WebInspector.ProfilesPanel.prototype.searchMatchFound): Update the sidebar search matches.
862 (WebInspector.ProfilesPanel.prototype.searchCanceled): Clear all the sidebar search matches.
863 (WebInspector.ProfileSidebarTreeElement.prototype.set searchMatches): Set the class and bubbleText.
864 * page/inspector/inspector.css: New style rules for the cell highlight color.
865
8662008-09-23 Timothy Hatcher <timothy@apple.com>
867
timothy@apple.com33c28442008-09-24 02:08:39 +0000868 Adds search support to the Resources and Scripts panels.
869
870 https://bugs.webkit.org/show_bug.cgi?id=21005
871
872 Reviewed by Oliver Hunt.
873
874 * page/inspector/Images/searchSmallBlue.png: Added.
875 * page/inspector/Images/searchSmallBrightBlue.png: Added.
876 * page/inspector/Images/searchSmallGray.png: Added.
877 * page/inspector/Images/searchSmallWhite.png: Added.
878 * page/inspector/ResourceView.js:
879 (WebInspector.ResourceView.prototype.attach): Attempt to attach to "resource-views"
880 or "script-resource-views" since one might not be created yet.
881 * page/inspector/ResourcesPanel.js:
882 (WebInspector.ResourcesPanel.prototype.show): Hide any views that are visible that
883 are not this panel's current visible view. This can happen when a ResourceView is
884 visible in the Scripts panel then switched to the this panel.
885 (WebInspector.ResourcesPanel.prototype.get searchableViews): Return all views, with the
886 visibleView first.
887 (WebInspector.ResourcesPanel.prototype.searchResultsSortFunction): Return a sort function
888 that uses the current graph search function. So cycling through results will be in the order
889 things appear in the sidebar.
890 (WebInspector.ResourcesPanel.prototype.searchMatchFound): Update the search matches on the
891 resource's sidebar tree element.
892 (WebInspector.ResourcesPanel.prototype.searchCanceled): Restore the error and warning bubbles
893 in the sidebar. Calls the Panel prototype's searchCanceled.
894 (WebInspector.ResourcesPanel.prototype.performSearch): Hide all the error and warning bubbles
895 in the sidebar. Calls the Panel prototype's performSearch.
896 (WebInspector.ResourcesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
897 (WebInspector.ResourcesPanel.prototype.addMessageToResource): Don't call updateErrorsAndWarnings
898 if there is a current search query.
899 (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto.
900 (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Ditto.
901 (WebInspector.ResourcesPanel.prototype.showView): Call showResource. Used by Panel to show a view.
902 (WebInspector.ResourceSidebarTreeElement.prototype.resetBubble): Clear all the classes and content.
903 (WebInspector.ResourceSidebarTreeElement.prototype.set searchMatches): Set the bubbleText and class.
904 (WebInspector.ResourceSidebarTreeElement.prototype.updateErrorsAndWarnings): Call resetBubble.
905 * page/inspector/ScriptView.js:
906 (WebInspector.ScriptView): Set _sourceFrameSetup to flase.
907 (WebInspector.ScriptView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
908 it will start at the first result.
909 (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): Add an event listener for "syntax
910 highlighting complete".
911 (WebInspector.ScriptView.prototype): Share many methods with SourceView.
912 * page/inspector/ScriptsPanel.js:
913 (WebInspector.ScriptsPanel.prototype.show): Hide any views that are visible that are not this
914 This can happen when a ResourceView is visible in the Resources panel then switched to the this panel.
915 (WebInspector.ScriptsPanel.prototype.get searchableViews): Return all views, with the visibleView first.
916 (WebInspector.ScriptsPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
917 (WebInspector.ScriptsPanel.prototype.showView): Call _showScriptOrResource. Used by Panel to show a view.
918 (WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource): Added helper.
919 * page/inspector/SourceFrame.js:
920 (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Dispatch a "syntax highlighting complete" event.
921 * page/inspector/SourceView.js:
922 (WebInspector.SourceView.prototype.hide):
923 (WebInspector.SourceView.prototype.detach):
924 (WebInspector.SourceView.prototype._resourceLoadingFinished): Moved from the bottom of the file.
925 (WebInspector.SourceView.prototype._addBreakpoint): Ditto.
926 (WebInspector.SourceView.prototype.searchCanceled): Delete search properties.
927 (WebInspector.SourceView.prototype.performSearch): Search the frame if it is loaded, otherwise
928 store the worker function as _delayedFindSearchMatches and call it later in _sourceFrameSetupFinished.
929 (WebInspector.SourceView.prototype.jumpToFirstSearchResult):
930 (WebInspector.SourceView.prototype.jumpToLastSearchResult):
931 (WebInspector.SourceView.prototype.jumpToNextSearchResult):
932 (WebInspector.SourceView.prototype.jumpToPreviousSearchResult):
933 (WebInspector.SourceView.prototype.showingFirstSearchResult):
934 (WebInspector.SourceView.prototype.showingLastSearchResult):
935 (WebInspector.SourceView.prototype._jumpToSearchResult): Selects the found Range.
936 (WebInspector.SourceView.prototype._sourceFrameSetupFinished): Calls _delayedFindSearchMatches.
937 (WebInspector.SourceView.prototype._syntaxHighlightingComplete): Call _sourceFrameSetupFinished.
938 * page/inspector/inspector.css:
939
9402008-09-23 Timothy Hatcher <timothy@apple.com>
941
timothy@apple.com18950ed2008-09-24 02:08:32 +0000942 Rename some properties of ResourcesPanel and ScriptsPanel to be the same,
943 so future code can be shared.
944
945 https://bugs.webkit.org/show_bug.cgi?id=21005
946
947 Reviewed by Oliver Hunt.
948
949 * page/inspector/ResourcesPanel.js: Renamed resourceViews to viewsContainerElement.
950 And visibleResourceView to visibleView.
951 * page/inspector/ScriptsPanel.js: Renamed scriptResourceViews to viewsContainerElement.
952
9532008-09-23 Timothy Hatcher <timothy@apple.com>
954
timothy@apple.comcb23f4a2008-09-24 02:08:27 +0000955 Highlight all matched search results in the Elements panel DOM tree.
956
957 https://bugs.webkit.org/show_bug.cgi?id=21005
958
959 Reviewed by Oliver Hunt.
960
961 * page/inspector/ElementsPanel.js:
962 (WebInspector.ElementsPanel.prototype.searchCanceled): Clear the highlight
963 on all previous search results.
964 (WebInspector.ElementsPanel.prototype.performSearch): Set the hihglight
965 on all new search results.
966 * page/inspector/ElementsTreeOutline.js:
967 (WebInspector.ElementsTreeElement): Delay setting the title until onattach.
968 (WebInspector.ElementsTreeElement.prototype.get/set highlighted): Sets or removes
969 the highlighted class on the listItemElement.
970 (WebInspector.ElementsTreeElement.prototype.onattach): Set the highlighted class
971 if needed. Calls _updateTitle.
972 (WebInspector.ElementsTreeElement.prototype._updateTitle): Adds a span with the highlight
973 class so it can be styled when the highlighted class is present.
974 * page/inspector/inspector.css: New style rules for the hihglight.
975
9762008-09-23 Timothy Hatcher <timothy@apple.com>
977
timothy@apple.com574c0522008-09-24 02:08:19 +0000978 Add search support to the Elements panel.
979
980 https://bugs.webkit.org/show_bug.cgi?id=21005
981
982 Reviewed by Oliver Hunt.
983
984 * page/inspector/ElementsPanel.js:
985 (WebInspector.ElementsPanel.prototype.searchCanceled): Call updateSearchMatchesCount
986 with a 0 match count to rest. Reset the other search properties.
987 (WebInspector.ElementsPanel.prototype.performSearch): Evaluates the search as an XPath
988 query and a CSS selector on all the Documents in the page. Remembers the found nodes
989 and avoids duplicates. Focuses the first result.
990 (WebInspector.ElementsPanel.prototype.jumpToNextSearchResult): Focuses the next result.
991 (WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult): Focuses the previous result.
992
9932008-09-23 Timothy Hatcher <timothy@apple.com>
994
timothy@apple.com82d233c2008-09-24 02:08:15 +0000995 Add support to Panel that allows easy searching of sub-views.
996
997 https://bugs.webkit.org/show_bug.cgi?id=21005
998
999 Reviewed by Oliver Hunt.
1000
1001 * page/inspector/Panel.js:
1002 (WebInspector.Panel.prototype.searchCanceled): Call searchCanceled on all the
1003 views in the search results and delete the currentQuery property. Call
1004 WebInspector.updateSearchMatchesCount wit ha 0 match count to rest. Reset the
1005 other search properties.
1006 (WebInspector.Panel.prototype.performSearch): Call searchCanceled since it will
1007 reset everything we need before doing a new search. Get an array of searchableViews
1008 from the panel, implemented by sub-classes. Iterate over the views one-by-one
1009 with an interval to prevent blocking the UI for large lists of searchableViews.
1010 This keeps the interface really responsive. Pass a finishedCallback function to
1011 the performSearch on each view so it can notify the panel of results.
1012 (WebInspector.Panel.prototype.jumpToNextSearchResult): Finds the index in the
1013 searchResults of the visibleView, so we know where in the results we are.
1014 This is done every time incase the user manually navigates to a new view.
1015 If the view is showing the last result, jump to the next view and show it's
1016 first result. Otherwise jump to the next result in the current view.
1017 (WebInspector.Panel.prototype.jumpToPreviousSearchResult): Ditto, but in reverse.
1018
10192008-09-23 Timothy Hatcher <timothy@apple.com>
1020
timothy@apple.comc8cfd5e2008-09-24 02:08:11 +00001021 Add support for asking the current panel to perform a search, find next/previous and clear.
1022 A search is performed on the new new current panel when switching between panels. The search
1023 label/placeholder in the toolbar now includes the panel name to make it clear that panel will
1024 be searched. The search field contents are selected when Command/Control-F or Enter/Return
1025 is pressed, so the user can easily type an entirely new query. The search match count shows
1026 up in the toolbar next to the search field.
1027
1028 Also changed:
1029 * Rename lastQuery to currentQuery since it better matches the truth.
1030 * Set the search field "results" attribute to zero since results arn't saved for
1031 how we use the search field.
1032 * Make repeated presses of the Return key jump to the next search result instead
1033 of doing nothing.
1034 * Increased the search field width.
1035
1036 https://bugs.webkit.org/show_bug.cgi?id=21005
1037
1038 Reviewed by Oliver Hunt.
1039
1040 * English.lproj/localizedStrings.js: New strings.
1041 * page/inspector/inspector.css: New styles.
1042 * page/inspector/inspector.html: Add the search-results-matches element. Add the
1043 incremental attribute to the search field and set the results attribute to zero.
1044 * page/inspector/inspector.js:
1045 (WebInspector.set currentPanel): perform the search on the new panel.
1046 (WebInspector.loaded): Change the event listeners and remove code that changes
1047 the search label text.
1048 (WebInspector.documentKeyDown): Add support for Command/Control-G and
1049 Command/Control-Shift-G. To jump to the next and previous search results.
1050 (WebInspector.updateSearchLabel): Added. Update the search placeholder/label.
1051 This does different things depending on the attached state.
1052 (WebInspector.searchKeyDown): Call preventDefault since this was the Enter key.
1053 This prevents a "search" event from firing for key down. We handle the Enter key
1054 on key up in searchKeyUp. This stops performSearch from being called twice in a row.
1055 (WebInspector.searchKeyUp): Calls performSearch when it is the Enter key.
1056 (WebInspector.performSearch): Delete the currentQuery property and call searchCanceled
1057 on all the panels. Call jumpToNextSearchResult when this is the same query or a forced search.
1058 Call updateSearchMatchesCount to reset the matches count in the toolbar.
1059 (WebInspector.updateSearchMatchesCount): Added. Updates the matches count in the toolbar.
1060
10612008-09-23 Timothy Hatcher <timothy@apple.com>
1062
timothy@apple.com1d5227a2008-09-24 02:08:01 +00001063 Remove the previous Inspector search code to make room for the new stuff.
1064
1065 https://bugs.webkit.org/show_bug.cgi?id=21005
1066
1067 Reviewed by Oliver Hunt.
1068
1069 * page/inspector/inspector.css:
1070 * page/inspector/inspector.html:
1071 * page/inspector/inspector.js:
1072 (WebInspector.get/set showingSearchResults): Removed.
1073 (WebInspector.searchResultsKeyDown): Removed.
1074 (WebInspector.searchResultsResizerDragStart): Removed.
1075 (WebInspector.searchResultsResizerDragEnd): Removed.
1076 (WebInspector.searchResultsResizerDrag): Removed.
1077 (WebInspector.performSearch): Removed searching parts.
1078
10792008-09-23 Timothy Hatcher <timothy@apple.com>
1080
timothy@apple.com5e915b722008-09-24 02:07:56 +00001081 Use the Array.remove helper function in more places.
1082
1083 https://bugs.webkit.org/show_bug.cgi?id=21037
1084
1085 Reviewed by Kevin McCullough.
1086
1087 * page/inspector/ResourceCategory.js:
1088 (WebInspector.ResourceCategory.prototype.removeResource): Use Array.remove.
1089 * page/inspector/ResourcesPanel.js:
1090 (WebInspector.ResourcesPanel.prototype.removeResource): Ditto.
1091 * page/inspector/inspector.js:
1092 (WebInspector.removeResource): Ditto.
1093
10942008-09-23 Timothy Hatcher <timothy@apple.com>
1095
timothy@apple.com3e116f12008-09-24 02:07:50 +00001096 Fixes a bug where inspecting a node after reloading the page
1097 would not reveal the node in the DOM tree. The TreeOutline
1098 was not being told to forget decendants of a removed child.
1099 So old TreeElements would be found that are not in the tree.
1100
1101 https://bugs.webkit.org/show_bug.cgi?id=21036
1102
1103 Reviewed by Kevin McCullough.
1104
1105 * page/inspector/treeoutline.js:
1106 (TreeOutline._removeChildAtIndex): Call _forgetChildrenRecursive
1107 in addition to _forgetTreeElement.
1108 (TreeOutline._removeChildren): Call _forgetChildrenRecursive
1109 in addition to _forgetTreeElement.
1110 (TreeOutline._rememberTreeElement): Use Array.indexOf to quickly
1111 search for known elements.
1112 (TreeOutline._forgetTreeElement): Use Array.remove to remove elements.
1113 (TreeOutline._forgetChildrenRecursive): Recursively traverse the
1114 descendants and call _forgetTreeElement.
1115 * page/inspector/utilities.js:
1116 (Array.prototype.remove): Speed up this function by using Array.indexOf
1117 when onlyFirst is true.
1118
11192008-09-23 Timothy Hatcher <timothy@apple.com>
1120
timothy@apple.com2e9f2ff2008-09-24 02:07:45 +00001121 Fixes a bug where inspecting some short text nodes does
1122 not reveal them in the Elements panel DOM tree.
1123
1124 https://bugs.webkit.org/show_bug.cgi?id=21035
1125
1126 Reviewed by Oliver Hunt.
1127
1128 * page/inspector/ElementsTreeOutline.js:
1129 (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
1130 The revealAndSelectNode() method might find a different element
1131 if there is inlined text, and the select() call would change the
1132 focusedDOMNode and reenter this setter. So to avoid calling
1133 focusedNodeChanged() twice, first check if _focusedDOMNode is
1134 the same node as the one passed in.
1135 (WebInspector.ElementsTreeOutline.prototype.update): Remove use of
1136 this.treeOutline, since this is the TreeOutline.
1137 (WebInspector.ElementsTreeOutline.prototype.findTreeElement): Added.
1138 Provides default functions for isAncestor, getParet and equal.
1139 Calls the base protoype's findTreeElement. If that returns null
1140 and the node is a text node, try finding it's parent.
1141 (WebInspector.ElementsTreeOutline.prototype.revealNode): Removed.
1142 Renamed to revealAndSelectNode.
1143 (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode):
1144 Selects and reveals the node passed in. Use the simple findTreeElement.
1145 (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
1146 Remove use of this.treeOutline, since this is the TreeOutline.
1147
11482008-09-23 Timothy Hatcher <timothy@apple.com>
1149
timothy@apple.combffde042008-09-24 02:07:39 +00001150 Fixes an exception that happened when removing a Resource
1151 from the ResourcesPanel.
1152
1153 https://bugs.webkit.org/show_bug.cgi?id=21034
1154
1155 Reviewed by Kevin McCullough.
1156
1157 * page/inspector/ResourcesPanel.js:
1158 (WebInspctor.ResourcesPanel.prototype.removeResource):
1159 Remove the graphElement.
1160
kmccullough@apple.com70d32f22008-09-24 01:18:31 +000011612008-09-23 Kevin McCullough <kmccullough@apple.com>
1162
1163 Fixed "Time" to "Tim"
1164
1165 * ChangeLog:
1166
zimmermann@webkit.org718a2232008-09-24 01:00:42 +000011672008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
1168
1169 Reviewed by Oliver.
1170
1171 Move mapInstanceToElement/removeInstanceMapping/instancesForElement
1172 from SVGDocumentExtensions to SVGElement. It's more useful to store
1173 the list of SVGElementInstances per SVGElement, instead of using
1174 a document-wide hash for this purpose.
1175
1176 * svg/SVGAnimateMotionElement.cpp:
1177 (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
1178 * svg/SVGAnimateTransformElement.cpp:
1179 (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
1180 * svg/SVGAnimationElement.cpp:
1181 (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
1182 * svg/SVGDocumentExtensions.cpp:
1183 (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
1184 * svg/SVGDocumentExtensions.h:
1185 * svg/SVGElement.cpp:
1186 (WebCore::SVGElement::mapInstanceToElement):
1187 (WebCore::SVGElement::removeInstanceMapping):
1188 (WebCore::SVGElement::instancesForElement):
1189 * svg/SVGElement.h:
1190 * svg/SVGElementInstance.cpp:
1191 (WebCore::SVGElementInstance::SVGElementInstance):
1192 (WebCore::SVGElementInstance::~SVGElementInstance):
1193 (WebCore::SVGElementInstance::updateAllInstancesOfElement):
1194 * svg/SVGElementInstance.h:
1195 * svg/SVGStyledElement.cpp:
1196 (WebCore::SVGStyledElement::svgAttributeChanged):
1197 (WebCore::SVGStyledElement::childrenChanged):
1198 * svg/SVGStyledElement.h:
1199
kevino@webkit.org706ea432008-09-24 00:53:56 +000012002008-09-23 Kevin Ollivier <kevino@theolliviers.com>
1201
1202 wx build fix.
1203
1204 * WebCoreSources.bkl:
1205
zimmermann@webkit.org97c71082008-09-24 00:23:28 +000012062008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
1207
1208 Rubber stamped by Sam.
1209
1210 Move code from EventTarget to EventTargetNode.
1211
1212 I refactored most parts to live in EventTarget, a year ago,
1213 though the implementation of EventTargetSVGElementInstance is
1214 done in another way, that obsoletes this.
1215
1216 * dom/Document.cpp:
1217 (WebCore::Document::addListenerTypeIfNeeded):
1218 * dom/Document.h:
1219 * dom/EventTarget.cpp:
1220 * dom/EventTarget.h:
1221 (WebCore::allowEventDispatch):
1222 * dom/EventTargetNode.cpp:
1223 (WebCore::EventTargetNode::insertedIntoDocument):
1224 (WebCore::EventTargetNode::removedFromDocument):
1225 (WebCore::EventTargetNode::willMoveToNewOwnerDocument):
1226 (WebCore::EventTargetNode::didMoveToNewOwnerDocument):
1227 (WebCore::EventTargetNode::addEventListener):
1228 (WebCore::EventTargetNode::removeEventListener):
1229 (WebCore::EventTargetNode::removeAllEventListeners):
1230 (WebCore::EventTargetNode::handleLocalEvents):
1231 (WebCore::setCurrentEventTargetRespectingSVGTargetRules):
1232 (WebCore::EventTargetNode::dispatchEvent):
1233 (WebCore::EventTargetNode::dispatchGenericEvent):
1234 (WebCore::EventTargetNode::dispatchWindowEvent):
1235 (WebCore::EventTargetNode::removeEventListenerForType):
1236 * dom/EventTargetNode.h:
1237 * svg/EventTargetSVGElementInstance.cpp:
1238 (WebCore::EventTargetSVGElementInstance::dispatchEvent):
1239 * svg/SVGElement.cpp:
1240 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
1241 * svg/SVGElement.h:
1242 (WebCore::SVGElement::supplementalTransform):
1243
hyatt@apple.com7c9fc6f2008-09-24 00:14:42 +000012442008-09-23 Dave Hyatt <hyatt@apple.com>
1245
1246 Fix for bug 21012. The Aqua scrollbar was returning the wrong track rect on Windows Aqua theme. Make
1247 sure to not accidentally fall into the vertical scrollbar case for horizontal scrollbars. :)
1248
1249 Reviewed by Sam Weinig
1250
1251 * platform/mac/ScrollbarThemeMac.mm:
1252 (WebCore::ScrollbarThemeMac::trackRect):
1253 * platform/win/ScrollbarThemeSafari.cpp:
1254 (WebCore::ScrollbarTheme::nativeTheme):
1255 (WebCore::ScrollbarThemeSafari::trackRect):
1256
bdakin@apple.comaab5d692008-09-24 00:09:33 +000012572008-09-23 Beth Dakin <bdakin@apple.com>
1258
1259 Reviewed by Sam Weinig.
1260
1261 Fix for https://bugs.webkit.org/show_bug.cgi?id=21041 "Add Contact"
1262 link at gmail does not support AXPress action
1263 and corresponding: <rdar://problem/6216178>
1264
1265 I fixed this bug by making AccessibilityObject::anchorElement
1266 support ARIA links.
1267
1268 * page/AccessibilityImageMapLink.cpp:
1269 (WebCore::AccessibilityImageMapLink::anchorElement):
1270 * page/AccessibilityImageMapLink.h:
1271 * page/AccessibilityObject.cpp:
1272 (WebCore::AccessibilityObject::anchorElement):
1273 * page/AccessibilityObject.h:
1274 (WebCore::AccessibilityObject::isNativeAnchor):
1275 * page/AccessibilityRenderObject.cpp:
1276 (WebCore::AccessibilityRenderObject::isNativeAnchor):
1277 (WebCore::AccessibilityRenderObject::anchorElement):
1278 (WebCore::AccessibilityRenderObject::internalLinkElement):
1279 (WebCore::AccessibilityRenderObject::url):
1280 * page/AccessibilityRenderObject.h:
1281 * page/mac/AccessibilityObjectWrapper.mm:
1282 (AXLinkElementForNode):
1283
kmccullough@apple.com58f6b182008-09-24 00:05:34 +000012842008-09-23 Kevin McCullough <kmccullough@apple.com>
1285
kmccullough@apple.com70d32f22008-09-24 01:18:31 +00001286 Reviewed by Tim and Oliver.
kmccullough@apple.com58f6b182008-09-24 00:05:34 +00001287
1288 Bug 20949: Catch repeated messages in Inspector Controller to limit
1289 memory usage
1290 - Store the repeat count in the Console Message object, in the
1291 Inspector Controller and JS ConsoleMessage object.
1292
1293 * page/InspectorController.cpp:
1294 (WebCore::ConsoleMessage::ConsoleMessage):
1295 (WebCore::ConsoleMessage::operator==):
1296 (WebCore::InspectorController::InspectorController):
1297 (WebCore::InspectorController::addConsoleMessage):
1298 (WebCore::InspectorController::addScriptConsoleMessage):
1299 * page/InspectorController.h:
1300 * page/inspector/Console.js:
1301 * page/inspector/Resource.js:
1302 * page/inspector/ResourcesPanel.js:
1303 * page/inspector/SourceFrame.js:
1304
zimmermann@webkit.org29d22032008-09-23 23:44:20 +000013052008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
1306
1307 Reviewed by Eric.
1308
1309 Working on proper EventTarget support for SVGElementInstance.
1310
1311 Add new EventTargetSVGElementInstance class, and it's corresponding JS wrapper.
1312 Finally JSEventTargetBase, is actually used for another class than JSEventTargetnode.
1313
1314 Remove EventTarget inheritance from SVGElementInstance, and the manual "TreeShared"
1315 implementation. Let it use TreeShared directly.
1316
1317 It's not activated so far (SVGUseElement still creating SVGElementInstance objects).
1318 The transition to EventTargetSVGElementInstance will be done in a few individual patches.
1319
1320 * GNUmakefile.am:
1321 * WebCore.pro:
1322 * WebCore.vcproj/WebCore.vcproj:
1323 * WebCore.xcodeproj/project.pbxproj:
1324 * bindings/js/JSEventTargetBase.cpp:
1325 (WebCore::retrieveEventTargetAndCorrespondingNode):
1326 (WebCore::toJS):
1327 * bindings/js/JSEventTargetBase.h:
1328 * bindings/js/JSEventTargetSVGElementInstance.cpp: Added.
1329 (WebCore::):
1330 (WebCore::JSEventTargetSVGElementInstance::JSEventTargetSVGElementInstance):
1331 (WebCore::JSEventTargetSVGElementInstance::createPrototype):
1332 (WebCore::JSEventTargetSVGElementInstance::setListener):
1333 (WebCore::JSEventTargetSVGElementInstance::getListener):
1334 (WebCore::toEventTargetSVGElementInstance):
1335 * bindings/js/JSEventTargetSVGElementInstance.h: Added.
1336 (WebCore::JSEventTargetSVGElementInstance::prototypeClassName):
1337 (WebCore::JSEventTargetSVGElementInstance::getOwnPropertySlot):
1338 (WebCore::JSEventTargetSVGElementInstance::getValueProperty):
1339 (WebCore::JSEventTargetSVGElementInstance::put):
1340 (WebCore::JSEventTargetSVGElementInstance::putValueProperty):
1341 * bindings/js/JSSVGElementInstanceCustom.cpp: Added.
1342 (WebCore::toJS):
1343 * bindings/objc/DOM.mm:
1344 (+[DOMNode _wrapEventTarget:WebCore::]):
1345 (-[DOMSVGElementInstance _initWithSVGElementInstance:WebCore::]):
1346 (+[DOMSVGElementInstance _wrapSVGElementInstance:WebCore::]):
1347 (+[DOMSVGElementInstance _wrapEventTarget:WebCore::]):
1348 (-[DOMSVGElementInstance WebCore::]):
1349 (-[DOMSVGElementInstance addEventListener:listener:useCapture:]):
1350 (-[DOMSVGElementInstance addEventListener:::]):
1351 (-[DOMSVGElementInstance removeEventListener:listener:useCapture:]):
1352 (-[DOMSVGElementInstance removeEventListener:::]):
1353 (-[DOMSVGElementInstance dispatchEvent:]):
1354 * bindings/objc/DOMEvents.h:
1355 * bindings/scripts/CodeGeneratorJS.pm:
1356 * bindings/scripts/CodeGeneratorObjC.pm:
1357 * svg/EventTargetSVGElementInstance.cpp: Added.
1358 (WebCore::EventTargetSVGElementInstance::EventTargetSVGElementInstance):
1359 (WebCore::EventTargetSVGElementInstance::~EventTargetSVGElementInstance):
1360 (WebCore::EventTargetSVGElementInstance::addEventListener):
1361 (WebCore::EventTargetSVGElementInstance::removeEventListener):
1362 (WebCore::EventTargetSVGElementInstance::dispatchEvent):
1363 * svg/EventTargetSVGElementInstance.h: Added.
1364 (WebCore::EventTargetSVGElementInstance::isEventTargetSVGElementInstance):
1365 (WebCore::EventTargetSVGElementInstance::toNode):
1366 (WebCore::EventTargetSVGElementInstance::toSVGElementInstance):
1367 (WebCore::EventTargetSVGElementInstance::refEventTarget):
1368 (WebCore::EventTargetSVGElementInstance::derefEventTarget):
1369 (WebCore::EventTargetSVGElementInstanceCast):
1370 * svg/SVGElement.cpp:
1371 (WebCore::SVGElement::dispatchEvent):
1372 * svg/SVGElementInstance.cpp:
1373 (WebCore::SVGElementInstance::SVGElementInstance):
1374 (WebCore::SVGElementInstance::~SVGElementInstance):
1375 * svg/SVGElementInstance.h:
1376 (WebCore::SVGElementInstance::isEventTargetSVGElementInstance):
1377 * svg/SVGElementInstance.idl:
1378
mitz@apple.come47c5af2008-09-23 21:47:54 +000013792008-09-23 Dan Bernstein <mitz@apple.com>
1380
1381 Reviewed by Dave Hyatt.
1382
1383 - https://bugs.webkit.org/show_bug.cgi?id=21040
1384 Pass NULL instead of the identity matrix to CTFontCreateWithGraphicsFont()
1385
1386 * platform/graphics/mac/SimpleFontDataMac.mm:
1387 (WebCore::SimpleFontData::getCTFont):
1388
hyatt@apple.com6e6bd8e2008-09-23 21:43:37 +000013892008-09-23 David Hyatt <hyatt@apple.com>
1390
1391 https://bugs.webkit.org/show_bug.cgi?id=21039
1392
1393 Teach the viewless Mac scrollbar how to avoid NSWindow's resizer.
1394
1395 Reviewed by Sam Weinig
1396
1397 * platform/ScrollView.h:
1398 * platform/Scrollbar.cpp:
1399 (WebCore::Scrollbar::setFrameGeometry):
1400 * platform/Scrollbar.h:
1401 * platform/Widget.cpp:
1402 (WebCore::Widget::convertFromContainingWindow):
1403 * platform/Widget.h:
1404 * platform/mac/ScrollViewMac.mm:
1405 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
1406 (WebCore::ScrollView::ScrollView):
1407 (WebCore::ScrollView::~ScrollView):
1408 (WebCore::ScrollView::windowResizerRect):
1409 (WebCore::ScrollView::resizerOverlapsContent):
1410 (WebCore::ScrollView::adjustOverlappingScrollbarCount):
1411 (WebCore::ScrollView::setParent):
1412 * platform/mac/WidgetMac.mm:
1413 (WebCore::Widget::convertFromContainingWindow):
1414
jmalonzo@webkit.orge5598ad2008-09-23 21:33:21 +000014152008-09-23 Dirk Schulze <vbs85@gmx.de>
1416
1417 Reviewed by Darin Adler. Landed by Jan Alonzo.
1418
1419 Added support for getImageData() and putImageData()
1420 to Cairo.
1421
1422 [CAIRO] needs getImageData and putImageData support
1423 https://bugs.webkit.org/show_bug.cgi?id=20838
1424
1425 * platform/graphics/cairo/ImageBufferCairo.cpp:
1426 (WebCore::ImageBuffer::ImageBuffer):
1427 (WebCore::ImageBuffer::getImageData):
1428 (WebCore::ImageBuffer::putImageData):
1429
jmalonzo@webkit.orgfb939412008-09-23 21:07:50 +000014302008-09-23 Marco Barisione <marco.barisione@collabora.co.uk>
1431
1432 Reviewed by Holger Freyther.
1433
1434 http://bugs.webkit.org/show_bug.cgi?id=18987
1435 [GTK] Implement SharedBuffer::createWithContentsOfFile and
1436 KURL::fileSystemPath
1437
1438 * GNUmakefile.am: Add KURLGtk.cpp and SharedBufferGtk.cpp.
1439 * platform/gtk/KURLGtk.cpp: Added.
1440 (WebCore::KURL::fileSystemPath): Implemented.
1441 * platform/gtk/SharedBufferGtk.cpp: Added.
1442 (WebCore::SharedBuffer::createWithContentsOfFile): Implemented.
1443 * platform/gtk/TemporaryLinkStubs.cpp: Remove the old stubs.
1444
ap@webkit.org198304c2008-09-23 16:34:41 +000014452008-09-23 Alexey Proskuryakov <ap@webkit.org>
1446
ap@webkit.orgccfa60a2008-09-23 20:39:22 +00001447 Reviewed by Oliver Hunt, okayed by Darin Adler.
1448
1449 <rdar://problem/5575547> REGRESSION: ATOK has no phrase boundary on Safari/Mail.app
1450
1451 * rendering/InlineTextBox.cpp:
1452 (WebCore::InlineTextBox::paintCompositionUnderline): Add 2 pixel spacing between clauses.
1453
14542008-09-23 Alexey Proskuryakov <ap@webkit.org>
1455
ap@webkit.org198304c2008-09-23 16:34:41 +00001456 Reviewed by Darin Adler.
1457
1458 https://bugs.webkit.org/show_bug.cgi?id=21023
1459 Don't use TEC for encodings supported by ICU
1460
1461 * platform/text/mac/mac-encodings.txt: Removed x-mac-centraleurroman, x-mac-cyrillic,
1462 x-mac-greek, and x-mac-turkish.
1463
1464 * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
1465 Register aliases for these encodings that are not registered automatically; updated comments.
1466
mjs@apple.coma6dc93d2008-09-23 07:46:55 +000014672008-09-23 Maciej Stachowiak <mjs@apple.com>
1468
1469 Reviewed by Darin.
1470
1471 - speed up instanceof some more
1472 https://bugs.webkit.org/show_bug.cgi?id=20818
1473
1474 ~2% speedup on EarleyBoyer
1475
1476 (WebCore updates.)
1477
1478 * bindings/js/JSQuarantinedObjectWrapper.h:
1479 (WebCore::JSQuarantinedObjectWrapper::createStructureID):
1480
oliver@apple.combc10aae2008-09-23 07:40:49 +000014812008-09-22 Darin Adler <darin@apple.com>
1482
1483 Reviewed by Oliver Hunt.
1484
1485 - fix https://bugs.webkit.org/show_bug.cgi?id=21008
1486 getting pixels by index from CanvasPixelArray is unnecessarily slow
1487
1488 * GNUmakefile.am: Added JSCanvasPixelArrayCustom.h.
1489 * WebCore.vcproj/WebCore.vcproj: Ditto.
1490 * WebCore.xcodeproj/project.pbxproj: Ditto.
1491
1492 * bindings/js/JSCanvasPixelArrayCustom.cpp: Removed indexGetter and
1493 indexSetter. These are now both inlined, so in the header.
1494 * bindings/js/JSCanvasPixelArrayCustom.h: Added. The getByIndex
1495 function is what's used for HasCustomIndexGetter. Also moved the
1496 indexSetter function here.
1497
1498 * bindings/scripts/CodeGeneratorJS.pm: Changed HasCustomIndexGetter
1499 to use a getByIndex member function rather than an indexGetter static
1500 member function in a property slot. This lets us avoid the property
1501 slot mechanism's rule where it turns numeric property names into
1502 strings in the identifier table, which is good because that's slow.
1503 Also added a new property CustomHeader that allows IDL files to
1504 introduce headers to be included -- useful when we have functions
1505 that we want to inline into the binding.
1506
1507 * html/CanvasPixelArray.idl: Added CustomHeader attribute.
1508
eric@webkit.org924a2d32008-09-23 07:04:11 +000015092008-09-23 Eric Seidel <eric@webkit.org>
1510
1511 No review, build fix only.
eric@webkit.org8d2a21a2008-09-23 07:23:14 +00001512
1513 Another blind stab in the dark.
1514
1515 * svg/graphics/cg/SVGResourceClipperCg.cpp: Add missing header.
1516
15172008-09-23 Eric Seidel <eric@webkit.org>
1518
1519 No review, build fix only.
eric@webkit.org924a2d32008-09-23 07:04:11 +00001520
1521 Third time's the charm, eh? My local build is sadly still not done...
1522
1523 * platform/graphics/AffineTransform.cpp: remove extra &
1524 * platform/graphics/AffineTransform.h: remove extra &
1525
eric@webkit.orgf394f462008-09-23 06:38:10 +000015262008-09-22 Eric Seidel <eric@webkit.org>
1527
1528 No review, build fix only.
1529
eric@webkit.orgf9212312008-09-23 06:47:51 +00001530 * platform/graphics/AffineTransform.cpp: remove extra ;
1531
15322008-09-22 Eric Seidel <eric@webkit.org>
1533
1534 No review, build fix only.
1535
eric@webkit.orgf394f462008-09-23 06:38:10 +00001536 Speculative fix for the build while I wait for my compile to finish.
1537
1538 * platform/graphics/AffineTransform.cpp:
1539
eric@webkit.org10583212008-09-23 06:05:59 +000015402008-09-22 Dirk Schulze <vbs85@gmx.de>
1541
1542 Reviewed by eseidel. Landed by eseidel.
1543
1544 Moved makeMapBetweenRects from SVG/CG to AffineTransform
1545 Make SVGResourceClipper::applyClip more cross-platform
1546
1547 * platform/graphics/AffineTransform.cpp:
1548 * platform/graphics/AffineTransform.h:
1549 * svg/graphics/cg/CgSupport.cpp:
1550 * svg/graphics/cg/CgSupport.h:
1551 * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
1552 (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
1553 * svg/graphics/cg/SVGResourceClipperCg.cpp:
1554 (WebCore::SVGResourceClipper::applyClip):
1555
alp@webkit.orgfaa63e42008-09-23 03:08:57 +000015562008-09-22 Alp Toker <alp@nuanti.com>
1557
1558 Reviewed by David Hyatt.
1559
1560 https://bugs.webkit.org/show_bug.cgi?id=16331
1561 [Gtk] no focus when button/checkbox/radiobutton clicked, only when tabbed
1562
1563 Obey GTK+ focusing conventions for controls and anchor elements.
1564
1565 It could be interesting to push these decisions up to Settings or
1566 ChromeClient some day but this gets things working.
1567
1568 Right and middle click events still need some work to match GTK+
1569 conventions.
1570
1571 * html/HTMLAnchorElement.cpp:
1572 (WebCore::HTMLAnchorElement::isMouseFocusable):
1573 * html/HTMLFormControlElement.cpp:
1574 (WebCore::HTMLFormControlElement::isMouseFocusable):
1575 * page/EventHandler.cpp:
1576 (WebCore::EventHandler::sendContextMenuEvent):
1577
darin@apple.com4a266462008-09-23 01:24:31 +000015782008-09-22 Darin Adler <darin@apple.com>
1579
1580 * page/mac/FrameMac.mm:
1581 (WebCore::Frame::baseWritingDirectionForSelectionStart): Fix indentation.
1582
weinig@apple.comb6a39b72008-09-23 01:19:56 +000015832008-09-22 Sam Weinig <sam@webkit.org>
1584
1585 Reviewed by Dan Bernstein.
1586
1587 Patch for https://bugs.webkit.org/show_bug.cgi?id=21013
1588 Match Firefox in how we hide HTMLInputElement.selectionStart, selectionEnd
1589 and setSelectionRange. This also allows us to remove the legacy JSHTMLInputElementBase
1590 class!
1591
1592 - selectionStart, selectionEnd and setSelectionRange now are visible in iteration of
1593 non-selectable input types, but return undefined when accessed.
1594
1595 * DerivedSources.make:
1596 * GNUmakefile.am:
1597 * WebCore.pro:
1598 * WebCore.vcproj/WebCore.vcproj:
1599 * WebCore.xcodeproj/project.pbxproj:
1600 * WebCoreSources.bkl:
1601 * bindings/js/JSHTMLInputElementBase.cpp: Removed.
1602 * bindings/js/JSHTMLInputElementBase.h: Removed.
1603 * bindings/js/JSHTMLInputElementCustom.cpp: Added.
1604 (WebCore::JSHTMLInputElement::customGetOwnPropertySlot):
1605 (WebCore::JSHTMLInputElement::selectionStart):
1606 (WebCore::JSHTMLInputElement::selectionEnd):
1607 * bindings/js/JSHTMLInputElementCustom.h: Added.
1608 * html/HTMLInputElement.idl:
1609
mitz@apple.com895c54c2008-09-23 00:48:17 +000016102008-09-22 Dan Bernstein <mitz@apple.com>
1611
1612 Reviewed by Sam Weinig.
1613
1614 - fix <rdar://problem/5699571> Mail: Unable to change writing direction to LTR in an empty message
1615
1616 Not testable in DumpRenderTree or in Safari
1617
1618 * page/mac/FrameMac.mm:
1619 (WebCore::Frame::baseWritingDirectionForSelectionStart): Account for the
1620 case that the selection start node is a block.
1621
hyatt@apple.com78083552008-09-22 22:17:40 +000016222008-09-22 David Hyatt <hyatt@apple.com>
1623
1624 https://bugs.webkit.org/show_bug.cgi?id=21007
1625
1626 Make sure that the scrollbar gets sent a release event on platforms that call handleMouseDoubleClickEvent.
1627
1628 Reviewed by Sam Weinig
1629
1630 * page/EventHandler.cpp:
1631 (WebCore::EventHandler::handleMouseDoubleClickEvent):
1632
eric@webkit.orgb57170b2008-09-22 21:44:28 +000016332008-09-22 Eric Seidel <eric@webkit.org>
1634
1635 No review, rollback only.
1636
1637 Roll out Peter's change (per his request)
1638 http://trac.webkit.org/changeset/36069
1639 https://bugs.webkit.org/show_bug.cgi?id=19663
1640 This change has been the source of numerous regressions
1641 (several of which were latent bugs revealed by this change,
1642 others were bugs in this change)
1643
1644 * platform/graphics/BitmapImage.cpp:
1645 (WebCore::BitmapImage::BitmapImage):
1646 (WebCore::BitmapImage::startAnimation):
1647 (WebCore::BitmapImage::advanceAnimation):
1648 * platform/graphics/BitmapImage.h:
1649 * platform/graphics/cairo/ImageCairo.cpp:
1650 (WebCore::BitmapImage::draw):
1651 * platform/graphics/cg/ImageCG.cpp:
1652 (WebCore::BitmapImage::draw):
1653 * platform/graphics/qt/ImageQt.cpp:
1654 (WebCore::BitmapImage::draw):
1655 * platform/graphics/wx/ImageWx.cpp:
1656 (WebCore::BitmapImage::draw):
1657
mitz@apple.comdc318202008-09-22 21:32:14 +000016582008-09-22 Dan Bernstein <mitz@apple.com>
1659
1660 Reviewed by Sam Weinig.
1661
1662 - fix <rdar://problem/5158514> Switch the complex text code path to Core Text
1663
1664 Tests: platform/mac-snowleopard/fast/text/myanmar-shaping.html
1665 platform/mac-snowleopard/fast/text/thai-combining-mark-positioning.html
1666
1667 * config.h: Use Core Text if not building for Leopard or Tiger.
1668
hyatt@apple.com143e97c2008-09-22 21:03:02 +000016692008-09-22 David Hyatt <hyatt@apple.com>
1670
1671 https://bugs.webkit.org/show_bug.cgi?id=21006
1672
1673 Add code that paints an NSView-less scroller using HIThemeDrawTrack. This scrollbar is still not
1674 switched on. There are still a few more refinements to make to the rendering and behavior.
1675
1676 Reviewed by Darin Adler
1677
1678 * platform/ScrollbarThemeComposite.cpp:
1679 (WebCore::ScrollbarThemeComposite::paint):
1680 * platform/ScrollbarThemeComposite.h:
1681 (WebCore::ScrollbarThemeComposite::paintTrack):
1682 (WebCore::ScrollbarThemeComposite::paintButton):
1683 (WebCore::ScrollbarThemeComposite::paintThumb):
1684 * platform/mac/ScrollbarThemeMac.h:
1685 * platform/mac/ScrollbarThemeMac.mm:
1686 (WebCore::ScrollbarThemeMac::backButtonRect):
1687 (WebCore::ScrollbarThemeMac::forwardButtonRect):
1688 (WebCore::scrollbarPartToHIPressedState):
1689 (WebCore::ScrollbarThemeMac::paint):
1690 * platform/mac/WidgetMac.mm:
1691 (WebCore::Widget::invalidateRect):
1692
simon.fraser@apple.com0f83a512008-09-22 20:19:53 +000016932008-09-22 Chris Marrin <cmarrin@apple.com>
1694
1695 Reviewed by Sam Weinig
1696
1697 transition end event when -webkit-transition-property: all puts wrong
1698 propertyName in event
1699 https://bugs.webkit.org/show_bug.cgi?id=20903
1700
1701 * page/animation/ImplicitAnimation.cpp:
1702 (WebCore::ImplicitAnimation::sendTransitionEvent):
1703
cfleizach@apple.com70013042008-09-22 18:30:36 +000017042008-09-22 Chris Fleizach <cfleizach@apple.com>
1705
1706 Reviewed by Darin Adler.
1707
cfleizach@apple.comdebb8722008-09-22 18:47:16 +00001708 <rdar://problem/6230234> AXTable should probably not be exposed in there's only one cell
1709
1710 Test: accessibility/table-one-cell.html
1711
1712 * page/AccessibilityTable.cpp:
1713 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
1714
17152008-09-22 Chris Fleizach <cfleizach@apple.com>
1716
1717 Reviewed by Darin Adler.
1718
cfleizach@apple.com70013042008-09-22 18:30:36 +00001719 <rdar://problem/6167779> Setting AXSelectedTextRange for TextAreas in a WebView behaves incorrectly
1720
1721 Test: accessibility/textarea-selected-text-range.html
1722
1723 * page/AccessibilityRenderObject.cpp:
1724 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
1725
hyatt@apple.com4139b152008-09-22 18:21:37 +000017262008-09-22 David Hyatt <hyatt@apple.com>
1727
1728 Clean up some parent relationships in the back end stylesheet code. Make sure parentStyleSheet
1729 properly walks up nested rule blocks to reach the parent sheet instead of giving up at the immediate
1730 parent. Also fix the doc() method so that it is properly set when the parent of the sheet is an import
1731 rule.
1732
1733 Reviewed by Sam Weinig
1734
1735 Added fast/css/nested-rule-parent-sheet.html
1736
1737 * css/CSSImportRule.cpp:
1738 (WebCore::CSSImportRule::insertedIntoParent):
1739 * css/CSSRule.cpp:
1740 (WebCore::CSSRule::parentStyleSheet):
1741 (WebCore::CSSRule::parentRule):
1742 * css/CSSStyleSheet.cpp:
1743 (WebCore::CSSStyleSheet::CSSStyleSheet):
1744 * css/CSSStyleSheet.h:
1745
mitz@apple.comd409a262008-09-22 18:17:57 +000017462008-09-22 Dan Bernstein <mitz@apple.com>
1747
1748 Reviewed by Sam Weinig.
1749
1750 - fix https://bugs.webkit.org/show_bug.cgi?id=21002
1751 Make the ATSUI code path respect spacingDisabled()
1752
1753 Fixes svg/text/text-spacing-01-b.svg in run-webkit-tests --complex-text
1754
1755 * platform/graphics/mac/FontMacATSUI.mm:
1756 (WebCore::overrideLayoutOperation):
1757
mjs@apple.com221b4752008-09-22 15:03:52 +000017582008-09-22 Maciej Stachowiak <mjs@apple.com>
1759
1760 Reviewed by Cameron Zwarich.
1761
1762 - speed up instanceof operator by replacing implementsHasInstance method with a TypeInfo flag
1763
1764 Partial work towards <https://bugs.webkit.org/show_bug.cgi?id=20818>
1765
1766 2.2% speedup on EarleyBoyer benchmark.
1767
1768 * bindings/js/JSQuarantinedObjectWrapper.cpp:
1769 * bindings/js/JSQuarantinedObjectWrapper.h:
1770 (WebCore::JSQuarantinedObjectWrapper::createStructureID):
1771 * bindings/scripts/CodeGeneratorJS.pm:
1772
aroben@apple.comd5cbddc2008-09-22 14:31:08 +000017732008-09-22 Adam Roben <aroben@apple.com>
1774
1775 Windows build fix
1776
1777 * WebCore.vcproj/WebCore.vcproj: Add a missing </File> tag.
1778
mjs@apple.coma173abd2008-09-22 13:59:06 +000017792008-09-22 Maciej Stachowiak <mjs@apple.com>
1780
1781 Reviewed by Dave Hyatt.
1782
1783 Based on initial work by Darin Adler.
1784
1785 - replace masqueradesAsUndefined virtual method with a flag in TypeInfo
1786 - use this to JIT inline code for eq_null and neq_null
1787 https://bugs.webkit.org/show_bug.cgi?id=20823
1788
1789 * WebCore.xcodeproj/project.pbxproj:
1790 * WebCore.vcproj/WebCore.vcproj:
1791 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1792 (WebCore::JSCSSStyleDeclaration::nameGetter):
1793 * bindings/js/JSHTMLAllCollection.cpp: Added.
1794 (WebCore::):
1795 * bindings/js/JSHTMLAllCollection.h:
1796 (WebCore::JSHTMLAllCollection::createStructureID):
1797 (WebCore::JSHTMLAllCollection::toBoolean):
1798
vestbo@webkit.orgab848362008-09-22 13:27:06 +000017992008-09-22 Tor Arne Vestbø <tavestbo@trolltech.com>
1800
1801 Reviewed by Simon.
1802
1803 Fix the QtWebKit build
1804
1805 * bridge/qt/qt_instance.cpp:
1806 (JSC::Bindings::QtRuntimeObjectImp::construct):
1807 * bridge/qt/qt_runtime.cpp:
1808
alp@webkit.orgcc9b0812008-09-22 08:53:06 +000018092008-09-22 Alp Toker <alp@nuanti.com>
1810
1811 Suggested by David Hyatt.
1812
1813 Build fix: ScrollView::update() is still used by Document.cpp on !MAC
1814 so make it public.
1815
1816 * platform/ScrollView.h:
1817
hyatt@apple.com7cb18562008-09-22 07:57:52 +000018182008-09-22 David Hyatt <hyatt@apple.com>
1819
hyatt@apple.combac66582008-09-22 08:36:44 +00001820 Fix a regression in Windows scrollbar painting. (Also fix the same
1821 bug in my new viewless Mac scrollbar painting code). The track rect
1822 was being improperly inflated when painting resulting in the scrollbar
1823 being too tall and painting in the border of overflow sections.
1824
1825 Reviewed by Oliver Hunt
1826
1827 * platform/mac/ScrollbarThemeMac.mm:
1828 (WebCore::ScrollbarThemeMac::trackRect):
1829 * platform/win/ScrollbarThemeSafari.cpp:
1830 (WebCore::ScrollbarThemeSafari::trackRect):
1831
18322008-09-22 David Hyatt <hyatt@apple.com>
1833
hyatt@apple.com7cb18562008-09-22 07:57:52 +00001834 Fix a hit testing bug where events are mistakenly passed to subframes
1835 if the mouse is over the border or padding area of the frame. Add
1836 a boolean flag, isOverWidget(), to hit test results so that EventHandler
1837 can check it to tell if the mouse is really over the content box of a
1838 RenderWidget and not just in the border/padding area.
1839
1840 This is not testable, since the old code properly recovered when it detected
1841 that the mouse was outside the bounds of the view, but this prevents
1842 the extra passdown from even occurring (and is basically a nice cleanup).
1843
1844 Reviewed by Oliver Hunt
1845
1846 * page/EventHandler.cpp:
1847 (WebCore::EventHandler::handleMousePressEvent):
1848 (WebCore::EventHandler::hitTestResultAtPoint):
1849 (WebCore::subframeForHitTestResult):
1850 (WebCore::EventHandler::handleMouseDoubleClickEvent):
1851 (WebCore::EventHandler::handleMouseMoveEvent):
1852 (WebCore::EventHandler::handleMouseReleaseEvent):
1853 (WebCore::EventHandler::handleWheelEvent):
1854 * page/MouseEventWithHitTestResults.h:
1855 (WebCore::MouseEventWithHitTestResults::isOverWidget):
1856 * rendering/HitTestResult.cpp:
1857 (WebCore::HitTestResult::HitTestResult):
1858 (WebCore::HitTestResult::operator=):
1859 * rendering/HitTestResult.h:
1860 (WebCore::HitTestResult::isOverWidget):
1861 (WebCore::HitTestResult::setIsOverWidget):
1862 * rendering/RenderWidget.cpp:
1863 (WebCore::RenderWidget::nodeAtPoint):
1864 * rendering/RenderWidget.h:
1865
hyatt@apple.comb2bf5272008-09-22 05:54:40 +000018662008-09-21 David Hyatt <hyatt@apple.com>
1867
1868 Rename FrameView's repaintRectangle method to repaintContentRectangle. Make
1869 both it and ScrollView's updateContents method be off-limits to everyone in
1870 WebCore except for RenderView.
1871
1872 Make repaintViewRectangle the only possible method for WebCore code to do
1873 an invalidation. This ensures that all invalidates triggered by WebCore
1874 cross-platform code that cross ownerElement() boundaries are transform-aware.
1875
1876 Make sure that iframes/frames contained inside objects that have transforms
1877 or reflections are not allowed to blit (this was already true for transparency).
1878
1879 It is not possible to make a test for any of this, since iframe scrolling
1880 still doesn't work on Mac (since the invalidates are not being done
1881 through WebCore's cross-platform invalidation code but are instead going
1882 through NSScrollView's setNeedsDisplay still).
1883
1884 Reviewed by Oliver Hunt
1885
1886 * editing/SelectionController.cpp:
1887 (WebCore::SelectionController::recomputeCaretRect):
1888 (WebCore::SelectionController::invalidateCaretRect):
1889 (WebCore::SelectionController::focusedOrActiveStateChanged):
1890 * page/FrameView.cpp:
1891 (WebCore::FrameView::repaintContentRectangle):
1892 (WebCore::FrameView::endDeferredRepaints):
1893 * page/FrameView.h:
1894 * platform/ScrollView.h:
1895 * rendering/RenderBox.cpp:
1896 (WebCore::RenderBox::paintFillLayerExtended):
1897 * rendering/RenderLayer.cpp:
1898 (WebCore::RenderLayer::enclosingPositionedAncestor):
1899 (WebCore::RenderLayer::requiresSlowRepaints):
1900 * rendering/RenderLayer.h:
1901 (WebCore::RenderLayer::hasTransform):
1902 * rendering/RenderView.cpp:
1903 (WebCore::RenderView::paintBoxDecorations):
1904 (WebCore::RenderView::repaintViewRectangle):
1905 (WebCore::RenderView::setSelection):
1906
mjs@apple.com52b67602008-09-22 03:15:52 +000019072008-09-21 Maciej Stachowiak <mjs@apple.com>
1908
1909 Reviewed by Darin.
1910
1911 - introduce a TypeInfo class, for holding per-type (in the C++ class sense) date in StructureID
1912 https://bugs.webkit.org/show_bug.cgi?id=20981
1913
1914 * bindings/js/JSAudioConstructor.cpp:
1915 (WebCore::JSAudioConstructor::JSAudioConstructor):
1916 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1917 (WebCore::JSCSSStyleDeclaration::nameGetter):
1918 * bindings/js/JSDOMBinding.cpp:
1919 (WebCore::createDOMStructure):
1920 * bindings/js/JSDOMBinding.h:
1921 (WebCore::getDOMStructure):
1922 * bindings/js/JSDOMWindowShell.cpp:
1923 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
1924 (WebCore::JSDOMWindowShell::setWindow):
1925 * bindings/js/JSEventTargetNode.cpp:
1926 (WebCore::JSEventTargetNode::createPrototype):
1927 * bindings/js/JSHTMLOptionElementConstructor.cpp:
1928 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
1929 * bindings/js/JSImageConstructor.cpp:
1930 (WebCore::JSImageConstructor::JSImageConstructor):
1931 * bindings/js/JSXMLHttpRequestConstructor.cpp:
1932 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
1933 * bindings/js/JSXSLTProcessorConstructor.cpp:
1934 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
1935 * bindings/scripts/CodeGeneratorJS.pm:
1936
darin@apple.comad89d662008-09-22 02:12:57 +000019372008-09-21 Darin Adler <darin@apple.com>
1938
1939 Reviewed by Maciej Stachowiak.
1940
1941 - fix problem Maciej noticed where every JSNamedNodesCollection
1942 gets its own StructureID
1943
1944 * bindings/js/JSNamedNodesCollection.cpp:
1945 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Use
1946 getDOMStructure to get the structure.
1947 * bindings/js/JSNamedNodesCollection.h:
1948 (WebCore::JSNamedNodesCollection::createPrototype): Return the
1949 object prototype.
1950
hyatt@apple.com1f2ad1e2008-09-22 00:33:19 +000019512008-09-20 David Hyatt <hyatt@apple.com>
1952
1953 Make sure transformed scrollbars in overflow sections position
1954 properly. This patch mimics the same behavior that works for
1955 iframes, namely making sure that the same code that dynamically
1956 adjusts iframe widget positions at paint time for fixed positioning
1957 and transforms also applies to scrollbars. (This is as simple as passing
1958 in the current translation factor at paint time rather than crawling
1959 up the layer tree to compute a "false" absolute position.)
1960
1961 An existing transform test covers this (although only a pixel result
1962 reveals the correct rendering).
1963
1964 Reviewed by Darin Adler
1965
1966 * rendering/RenderLayer.cpp:
1967 (WebCore::RenderLayer::updateLayerPositions):
1968 (WebCore::RenderLayer::positionOverflowControls):
1969 (WebCore::RenderLayer::paintOverflowControls):
1970 (WebCore::RenderLayer::paintLayer):
1971 * rendering/RenderLayer.h:
1972
sfalken@apple.comd0274692008-09-22 00:08:30 +000019732008-09-21 Steve Falkenburg <sfalken@apple.com>
1974
sfalken@apple.com4fe10f92008-09-22 00:12:28 +00001975 Removed unnecessary nested timer check.
1976
1977 Rubber-stamped by Dan Bernstein.
1978
1979 * platform/win/SharedTimerWin.cpp:
1980 (WebCore::TimerWindowWndProc):
1981
19822008-09-21 Steve Falkenburg <sfalken@apple.com>
1983
sfalken@apple.comd0274692008-09-22 00:08:30 +00001984 Improve timer resolution on WinXP.
1985 https://bugs.webkit.org/show_bug.cgi?id=20979
1986
1987 Removed last-chance timer. It should not be necessary.
1988 Change timeEndPeriod timer to fire in 300ms instead of 20ms. Calling timeBeginPeriod/timeEndPeriod too often throws off accuracy.
1989 Remove Vista checks. We now run the same code on both XP and Vista.
1990
1991 Call through to JSC::getCurrentUTCTimeWithMicroseconds from WebCore::currentTime.
1992 The code previously called GetSystemTimeAsFileTime, which is always low-resolution on XP, even within timeBeginPeriod(1).
1993
1994 Reviewed by Maciej Stachowiak.
1995
1996 * platform/win/SharedTimerWin.cpp:
1997 (WebCore::):
1998 (WebCore::TimerWindowWndProc):
1999 (WebCore::setSharedTimerFireTime):
2000 * platform/win/SystemTimeWin.cpp:
2001 (WebCore::currentTime):
2002
eric@webkit.org3e96c482008-09-21 07:59:58 +000020032008-09-21 Dirk Schulze <vbs85@gmx.de>
2004
2005 Reviewed by eseidel. Landed by eseidel.
2006
eric@webkit.orgc3431282008-09-21 10:37:37 +00002007 All platforms use the DashArray in the GraphicsContext.
2008
2009 * svg/graphics/SVGPaintServer.h:
2010 * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
2011 (WebCore::SVGPaintServerGradient::setup):
2012 * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
2013 (WebCore::SVGPaintServerPattern::setup):
2014 * svg/graphics/cairo/SVGPaintServerSolidCairo.cpp:
2015 (WebCore::SVGPaintServerSolid::setup):
2016 * svg/graphics/qt/SVGPaintServerGradientQt.cpp:
2017 (WebCore::SVGPaintServerGradient::setup):
2018 * svg/graphics/qt/SVGPaintServerQt.cpp:
2019 * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
2020 (WebCore::SVGPaintServerSolid::setup):
2021
20222008-09-21 Dirk Schulze <vbs85@gmx.de>
2023
2024 Reviewed by eseidel. Landed by eseidel.
2025
eric@webkit.org3e96c482008-09-21 07:59:58 +00002026 Moved DashArray to GraphicsContext.
2027
2028 * GNUmakefile.am:
2029 * WebCore.vcproj/WebCore.vcproj:
2030 * WebCore.xcodeproj/project.pbxproj:
2031 * platform/graphics/DashArray.h: Added.
2032 * platform/graphics/GraphicsContext.h:
2033 * platform/graphics/cairo/GraphicsContextCairo.cpp:
2034 (WebCore::GraphicsContext::setLineDash):
2035 * platform/graphics/cg/GraphicsContextCG.cpp:
2036 (WebCore::GraphicsContext::setLineDash):
2037 * platform/graphics/qt/GraphicsContextQt.cpp:
2038 (WebCore::GraphicsContext::setLineDash):
2039 * svg/graphics/SVGPaintServer.cpp:
2040 (WebCore::applyStrokeStyleToContext):
2041 * svg/graphics/SVGPaintServer.h:
2042 * svg/graphics/cg/CgSupport.cpp:
2043 * svg/graphics/cg/CgSupport.h:
2044
mitz@apple.com9138eca2008-09-21 07:16:29 +000020452008-09-21 Dan Bernstein <mitz@apple.com>
2046
2047 Reviewed by Mark Rowe.
2048
2049 - fix linker warnings
2050
2051 * WebCore.base.exp:
2052
darin@apple.comb1491772008-09-21 06:34:40 +000020532008-09-20 Darin Adler <darin@apple.com>
2054
darin@apple.comc3215132008-09-21 06:50:35 +00002055 - another try at fixing Qt
2056
2057 * bridge/qt/qt_runtime.cpp: "using namespce WebCore"
2058
20592008-09-20 Darin Adler <darin@apple.com>
2060
darin@apple.comb1491772008-09-21 06:34:40 +00002061 - blind attempt to fix Qt build
2062
2063 * bridge/qt/qt_runtime.cpp:
2064 (JSC::Bindings::convertQVariantToValue): Use regExpStructure instead
2065 of regExpPrototype to make a RegExpObject. There should really be
2066 some sort of public helper function for this. Same thing for
2067 DateInstance and dateStructure. For JSObject, use constructEmptyObject.
2068 (JSC::Bindings::):
2069 (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod): Use getDOMStructure.
2070 It is not correct to do this inside the constructor because it could
2071 cause a garbage collect while the QtRuntimeMethod object is half-
2072 allocated, which could lead to a crash; note that RuntimeMethod,
2073 QtRuntimeObjectImp, and RuntimeObjectImp have the same bug.
2074 * bridge/qt/qt_runtime.h: Add s_info and createPrototype.
2075
collinj@webkit.org8e01a432008-09-21 06:26:54 +000020762008-09-20 Collin Jackson <collinj@webkit.org>
2077
2078 Prefetch DNS for hyperlinks that the user mouses over.
2079
2080 https://bugs.webkit.org/show_bug.cgi?id=20931
2081
2082 Reviewed by Sam Weinig.
2083
2084 * page/Chrome.cpp:
2085 (WebCore::Chrome::mouseDidMoveOverElement):
2086
darin@apple.com8281d832008-09-21 02:29:12 +000020872008-09-20 Darin Adler <darin@apple.com>
2088
2089 Reviewed by Maciej Stachowiak.
2090
2091 - finish https://bugs.webkit.org/show_bug.cgi?id=20858
2092 make each distinct C++ class get a distinct JSC::Structure
2093
2094 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2095 (WebCore::JSCSSStyleDeclaration::nameGetter): Pass in a structure
2096 ID. Note that this makes a new structure every time -- we could
2097 optimize this slightly be caching and reusing a single one.
2098
2099 * bridge/runtime_method.cpp:
2100 (JSC::RuntimeMethod::RuntimeMethod): Create a unique structure using
2101 getDOMStructure.
2102 * bridge/runtime_method.h:
2103 (JSC::RuntimeMethod::createPrototype): Added createPrototype so
2104 getDOMStructure will work.
2105
2106 * bindings/js/JSDOMWindowShell.cpp:
2107 (WebCore::JSDOMWindowShell::JSDOMWindowShell): Initialize m_window to
2108 0; needed in case garbage collection happens while creating the
2109 JSDOMWindow.
2110
mitz@apple.com9b3ac792008-09-21 00:42:30 +000021112008-09-20 Dan Bernstein <mitz@apple.com>
2112
mitz@apple.comf674f4f2008-09-21 00:49:49 +00002113 Reviewed by Eric Seidel.
2114
2115 - fix https://bugs.webkit.org/show_bug.cgi?id=20950
mitz@apple.comc3dfbac2008-09-21 00:52:41 +00002116 <rdar://problem/6234059> Reproducible assertion failure running svg/custom/acid3-test-77.html multiple times under guard malloc
mitz@apple.comf674f4f2008-09-21 00:49:49 +00002117
2118 * svg/SVGTextContentElement.cpp:
2119 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback): Changed to
2120 not include the first character in the extraCharsAvailable count.
2121
kevino@webkit.org2bc0d822008-09-20 22:31:24 +000021222008-09-20 Kevin Ollivier <kevino@theolliviers.com>
2123
kevino@webkit.orge66435f2008-09-20 23:39:25 +00002124 Reviewed by Dan Bernstein.
2125
2126 Fix memory leak.
kevino@webkit.org6f86cbb2008-09-20 23:56:57 +00002127
2128 https://bugs.webkit.org/show_bug.cgi?id=20505
kevino@webkit.orge66435f2008-09-20 23:39:25 +00002129
2130 * platform/wx/wxcode/mac/carbon/fontprops.cpp:
2131 (GetTextExtent):
2132
21332008-09-20 Kevin Ollivier <kevino@theolliviers.com>
2134
kevino@webkit.org2bc0d822008-09-20 22:31:24 +00002135 wx build fixes. Added/removed build sources, and nativeWindow->platformWidget updates.
2136
2137 * WebCoreSources.bkl:
2138 * platform/ScrollView.h:
2139 * platform/wx/PopupMenuWx.cpp:
2140 (WebCore::PopupMenu::show):
2141 * platform/wx/RenderThemeWx.cpp:
2142 (WebCore::RenderThemeWx::paintButton):
2143 (WebCore::RenderThemeWx::paintTextField):
2144 (WebCore::RenderThemeWx::paintMenuList):
2145 (WebCore::RenderThemeWx::paintMenuListButton):
2146 * platform/wx/ScrollViewWx.cpp:
2147 (WebCore::ScrollView::setPlatformWidget):
2148 (WebCore::ScrollView::updateContents):
2149 (WebCore::ScrollView::update):
2150 (WebCore::ScrollView::visibleWidth):
2151 (WebCore::ScrollView::visibleHeight):
2152 (WebCore::ScrollView::scrollBy):
2153 (WebCore::ScrollView::resizeContents):
2154 (WebCore::ScrollView::contentsWidth):
2155 (WebCore::ScrollView::contentsHeight):
2156 (WebCore::ScrollView::isScrollViewScrollbar):
2157 (WebCore::ScrollView::adjustScrollbars):
2158 (WebCore::ScrollView::inWindow):
2159 (WebCore::ScrollView::removeChild):
2160 * platform/wx/WidgetWx.cpp:
2161 * plugins/wx/PluginViewWx.cpp:
2162 (WebCore::PluginView::setParentVisible):
2163 (WebCore::PluginView::updatePluginWidget):
2164
timothy@apple.comb697f272008-09-20 22:21:59 +000021652008-09-20 Timothy Hatcher <timothy@apple.com>
2166
2167 Fix the new Node Search button image to not be blurry.
2168
2169 * page/inspector/Images/nodeSearchButtons.png:
2170
pewtermoose@webkit.org4cc99202008-09-20 21:30:43 +000021712008-09-20 Matt Lilek <webkit@mattlilek.com>
2172
2173 Reviewed by Tim Hatcher.
2174
pewtermoose@webkit.orge1fc4462008-09-20 21:53:43 +00002175 Cut down some of the inspector javascript -> InspectorController glue code
2176 with two new macros. Also rearrange the exposed function list to be grouped
2177 by implementation and to all explicitly use the WebCore namespace.
2178
2179 * page/InspectorController.cpp:
2180 (WebCore::InspectorController::windowScriptObjectAvailable):
2181
21822008-09-20 Matt Lilek <webkit@mattlilek.com>
2183
2184 Reviewed by Tim Hatcher.
2185
pewtermoose@webkit.org4cc99202008-09-20 21:30:43 +00002186 Fix regression from my previous patch where the breadcrumbs bar was not displayed.
2187
2188 * page/inspector/inspector.css:
2189
zimmermann@webkit.org953b7442008-09-20 20:19:45 +000021902008-09-20 Nikolas Zimmermann <zimmermann@kde.org>
2191
2192 Reviewed by Eric.
2193
2194 Refactor HTMLImageLoader/SVGImageLoader code.
2195 Move html/HTMLImageLoader.* to loader/ImageLoader.*
2196
2197 Let HTMLImageLoader & SVGImageLoader inherit from the new base class.
2198 SVGImageLoader used to inherit from HTMLImageLoader which is awkward.
2199
2200 * GNUmakefile.am:
2201 * WebCore.pro:
2202 * WebCore.vcproj/WebCore.vcproj:
2203 * WebCore.xcodeproj/project.pbxproj:
2204 * WebCoreSources.bkl:
2205 * dom/Document.cpp:
2206 (WebCore::Document::dispatchImageLoadEventSoon):
2207 (WebCore::Document::removeImage):
2208 (WebCore::Document::dispatchImageLoadEventsNow):
2209 * dom/Document.h:
2210 * html/HTMLImageLoader.cpp:
2211 (WebCore::HTMLImageLoader::HTMLImageLoader):
2212 (WebCore::HTMLImageLoader::~HTMLImageLoader):
2213 (WebCore::HTMLImageLoader::sourceURI):
2214 (WebCore::HTMLImageLoader::notifyFinished):
2215 * html/HTMLImageLoader.h:
2216 * loader/DocLoader.h:
2217 * loader/ImageLoader.cpp: Copied from html/HTMLImageLoader.cpp.
2218 (WebCore::ImageLoader::ImageLoader):
2219 (WebCore::ImageLoader::~ImageLoader):
2220 (WebCore::ImageLoader::setImage):
2221 (WebCore::ImageLoader::setLoadingImage):
2222 (WebCore::ImageLoader::updateFromElement):
2223 (WebCore::ImageLoader::notifyFinished):
2224 * loader/ImageLoader.h: Copied from html/HTMLImageLoader.h.
2225 * svg/SVGImageElement.cpp:
2226 (WebCore::SVGImageElement::attach):
2227 (WebCore::SVGImageElement::insertedIntoDocument):
2228 (WebCore::SVGImageElement::imageSourceAttributeName):
2229 * svg/SVGImageElement.h:
2230 * svg/SVGImageLoader.cpp:
2231 (WebCore::SVGImageLoader::SVGImageLoader):
2232 (WebCore::SVGImageLoader::dispatchLoadEvent):
2233 (WebCore::SVGImageLoader::sourceURI):
2234 * svg/SVGImageLoader.h:
2235
zecke@webkit.orgf3834492008-09-20 14:23:55 +000022362008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
2237
zecke@webkit.org7a15a532008-09-20 14:24:27 +00002238 Build fix.
2239
zecke@webkit.orga832cca2008-09-20 14:24:45 +00002240 [qtwebkit] ScrollBar build fix after r36684.
2241 BackButtonPart was split into Start and End Part
2242 ForwardButtonPart was split into Start and End Part
2243
zecke@webkit.orga832cca2008-09-20 14:24:45 +00002244 * platform/qt/ScrollbarThemeQt.cpp:
2245 (WebCore::scPart):
2246 (WebCore::scrollbarPart):
2247 (WebCore::styleOptionSlider):
2248
22492008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
2250
2251 Build fix.
2252
zecke@webkit.org7a15a532008-09-20 14:24:27 +00002253 [qtwebkit] Make qt_instance.cpp compile.
2254 Revision of 36675 introduced getDOMStructure to give unique
2255 structure id's to C++ classes. Catch up. RuntimeObjectImp assigns
2256 the the StructureID inside the c'tor, do the same in QtRuntimeObjectImp
2257
2258 * bridge/qt/qt_instance.cpp:
2259 (JSC::Bindings::QtInstance::getRuntimeObject):
2260
22612008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
2262
zecke@webkit.orgf3834492008-09-20 14:23:55 +00002263 Reviewed by Nikolas Zimmermann.
2264
zecke@webkit.org95ff1412008-09-20 14:24:10 +00002265 [svg] Change SVGLocatable to deal with a plain SVGElement
2266 There is no requirement in the code that we have to have a
2267 SVGStyledElement. Remove that artificial limitation and compile
2268 with SVGElement.
2269
2270 * svg/SVGLocatable.cpp:
2271 * svg/SVGLocatable.h:
2272
22732008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
2274
2275 Reviewed by Nikolas Zimmermann.
2276
zecke@webkit.orgf3834492008-09-20 14:23:55 +00002277 [svg] Use OwnPtr for the SVGExtensions to avoid custom lifetime
2278 management.
2279
2280 * dom/Document.cpp:
2281 (WebCore::Document::~Document):
2282 (WebCore::Document::svgExtensions):
2283 (WebCore::Document::accessSVGExtensions):
2284 * dom/Document.h:
2285
hyatt@apple.com02bbc2c2008-09-20 04:50:21 +000022862008-09-19 David Hyatt <hyatt@apple.com>
2287
hyatt@apple.com1fe09172008-09-20 05:09:44 +00002288 Fix for crash in updateTransitions. Make sure to test for a style
2289 being null when comparing two RenderStyles.
2290
2291 Reviewed by Oliver Hunt
2292
2293 * page/animation/AnimationBase.cpp:
2294 (WebCore::PropertyWrapperGetter::equals):
2295
22962008-09-19 David Hyatt <hyatt@apple.com>
2297
hyatt@apple.com02bbc2c2008-09-20 04:50:21 +00002298 https://bugs.webkit.org/show_bug.cgi?id=20954
2299
2300 Roll out r36628 since it has caused horrible regressions with
2301 animated GIF CPU usage.
2302
2303 * platform/graphics/BitmapImage.cpp:
2304 (WebCore::BitmapImage::cacheFrame):
2305 (WebCore::BitmapImage::startAnimation):
2306 * platform/graphics/BitmapImage.h:
2307 (WebCore::FrameData::FrameData):
2308 * platform/graphics/cairo/ImageCairo.cpp:
2309 (WebCore::FrameData::clear):
2310 * platform/graphics/cg/ImageCG.cpp:
2311 (WebCore::FrameData::clear):
2312 * platform/graphics/qt/ImageQt.cpp:
2313 (WebCore::FrameData::clear):
2314 * platform/graphics/wx/ImageWx.cpp:
2315 (WebCore::FrameData::clear):
2316
alp@webkit.orgd1e860e2008-09-20 03:43:42 +000023172008-09-20 Alp Toker <alp@nuanti.com>
2318
2319 Reviewed by Timothy Hatcher.
2320
2321 https://bugs.webkit.org/show_bug.cgi?id=20913
2322 Avoid redudant includes
2323
2324 Document.h is included excessively such that a modification to Document.h (or
2325 any of the header it includes itself) triggers a rebuild of many files
2326 including the whole of SVG and a lot of the JS bindings.
2327
2328 Some of these includes can be avoided by only including Document.h where
2329 necessary.
2330
2331 * bindings/js/JSAttrCustom.cpp:
2332 * bindings/js/JSElementCustom.cpp:
2333 * bindings/js/JSEventTargetBase.cpp:
2334 * bindings/js/JSEventTargetBase.h:
2335 * bindings/js/JSEventTargetNode.cpp:
2336 * bindings/js/JSHTMLFrameElementCustom.cpp:
2337 * bindings/js/JSHTMLIFrameElementCustom.cpp:
2338 * bindings/scripts/CodeGeneratorJS.pm:
2339 * css/CSSCursorImageValue.cpp:
2340 * css/SVGCSSStyleSelector.cpp:
2341 * dom/make_names.pl:
2342 * svg/SVGAnimateElement.h:
2343 * svg/SVGAnimatedProperty.h:
2344 (WebCore::::baseValue):
2345 (WebCore::::setBaseValue):
2346 (WebCore::::startAnimation):
2347 (WebCore::::stopAnimation):
2348 * svg/SVGElement.cpp:
2349 (WebCore::SVGElement::accessDocumentSVGExtensions):
2350 * svg/SVGElement.h:
2351 * svg/SVGElementInstance.cpp:
2352 * svg/SVGFitToViewBox.cpp:
2353 * svg/SVGFontElement.cpp:
2354 * svg/SVGFontFaceElement.cpp:
2355 * svg/SVGLinearGradientElement.cpp:
2356 * svg/SVGMPathElement.cpp:
2357 * svg/SVGViewSpec.cpp:
2358
zimmermann@webkit.org50e33c72008-09-20 03:33:43 +000023592008-09-19 Nikolas Zimmermann <zimmermann@kde.org>
2360
2361 Reviewed by Antti & Eric.
2362
2363 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
2364
2365 Finish HTMLScriptElement / SVGScriptElement unification.
2366 SVG <script> support is complete now, full SVGLoad event
2367 respecting the influence of the externalResourcesRequired attribute
2368 as well as SVGError event support. All other features shared with HTML.
2369
2370 Tests: fast/dom/HTMLScriptElement/script-reexecution.html
2371 svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg
2372 svg/dom/SVGScriptElement/script-load-and-error-events.svg
2373 svg/dom/SVGScriptElement/script-reexecution.svg
2374 svg/dom/SVGScriptElement/script-set-href.svg
2375
2376 * dom/ScriptElement.cpp:
2377 (WebCore::ScriptElementData::ScriptElementData):
2378 (WebCore::ScriptElementData::requestScript):
2379 * dom/ScriptElement.h:
2380 (WebCore::ScriptElementData::haveFiredLoadEvent):
2381 (WebCore::ScriptElementData::setHaveFiredLoadEvent):
2382 * dom/XMLTokenizer.cpp:
2383 (WebCore::XMLTokenizer::notifyFinished):
2384 * html/HTMLScriptElement.cpp:
2385 (WebCore::HTMLScriptElement::dispatchLoadEvent):
2386 * svg/SVGScriptElement.cpp:
2387 (WebCore::SVGScriptElement::setCreatedByParser):
2388 (WebCore::SVGScriptElement::parseMappedAttribute):
2389 (WebCore::SVGScriptElement::svgAttributeChanged):
2390 (WebCore::SVGScriptElement::insertedIntoDocument):
2391 (WebCore::SVGScriptElement::removedFromDocument):
2392 (WebCore::SVGScriptElement::childrenChanged):
2393 (WebCore::SVGScriptElement::isURLAttribute):
2394 (WebCore::SVGScriptElement::finishParsingChildren):
2395 (WebCore::SVGScriptElement::type):
2396 (WebCore::SVGScriptElement::setType):
2397 (WebCore::SVGScriptElement::haveLoadedRequiredResources):
2398 (WebCore::SVGScriptElement::dispatchLoadEvent):
2399 (WebCore::SVGScriptElement::dispatchErrorEvent):
2400 * svg/SVGScriptElement.h:
2401
mitz@apple.comc7b24ea2008-09-20 03:23:22 +000024022008-09-19 Dan Bernstein <mitz@apple.com>
2403
2404 Reviewed by John Sullivan.
2405
2406 - fix https://bugs.webkit.org/show_bug.cgi?id=20951
2407 Typo in Position::getInlineBoxAndOffset()
2408 and add an assertion
2409
2410 Without the fix, the newly-added assertion fails in platform/mac/editing/input/caret-primary-bidi.html
2411
2412 * dom/Position.cpp:
2413 (WebCore::Position::getInlineBoxAndOffset):
2414 * rendering/InlineTextBox.cpp:
2415 (WebCore::InlineTextBox::positionForOffset):
2416
hyatt@apple.comd48dbf32008-09-20 03:21:14 +000024172008-09-19 David Hyatt <hyatt@apple.com>
2418
2419 Add support for hit testing of all five possible scrollbar button placements.
2420
2421 Reviewed by Sam Weinig
2422
2423 * platform/ScrollbarThemeComposite.cpp:
2424 (WebCore::ScrollbarThemeComposite::paint):
2425 * platform/mac/ScrollbarThemeMac.mm:
2426 (WebCore::):
2427 (WebCore::ScrollbarThemeMac::backButtonRect):
2428 (WebCore::ScrollbarThemeMac::forwardButtonRect):
2429 (WebCore::ScrollbarThemeMac::trackRect):
2430 (WebCore::ScrollbarThemeMac::paintButton):
2431
darin@apple.com1c4cd8f2008-09-20 01:05:35 +000024322008-09-19 Darin Adler <darin@apple.com>
2433
2434 - try to fix Qt build
2435
2436 * bridge/qt/qt_instance.cpp:
2437 (JSC::Bindings::QtRuntimeObjectImp::QtRuntimeObjectImp): Add structure argument.
2438 (JSC::Bindings::QtInstance::getRuntimeObject): Ditto.
2439 * bridge/runtime_object.cpp:
2440 (JSC::RuntimeObjectImp::RuntimeObjectImp): Add an overload just for Qt.
2441 * bridge/runtime_object.h: Ditto.
2442
dino@apple.com7c236592008-09-20 00:53:49 +000024432008-09-19 Chris Marrin <cmarrin@apple.com>
2444
2445 Reviewed by Dave Hyatt.
2446
2447 Transition starts running when it shouldn't
2448 https://bugs.webkit.org/show_bug.cgi?id=20892
2449
2450 When there is a transition and an animation on the
2451 same element, make sure the animation wins.
2452
2453 The fix is to save the unanimated style when an animation is started.
2454 Then, when starting a transition, check to see if there is a current
2455 animation on the same prop. If so, use the unanimated style as the
2456 fromStyle rather than the current style.
2457
2458 Test: animations/transition-and-animation-1.html
2459
2460 * page/animation/CompositeAnimation.cpp:
2461 (WebCore::CompositeAnimation::updateTransitions):
2462 (WebCore::CompositeAnimation::updateKeyframeAnimations):
2463 (WebCore::CompositeAnimation::animate):
2464 (WebCore::CompositeAnimation::getAnimationForProperty):
2465 * page/animation/CompositeAnimation.h:
2466 * page/animation/ImplicitAnimation.cpp:
2467 (WebCore::ImplicitAnimation::reset):
2468 * page/animation/ImplicitAnimation.h:
2469 * page/animation/KeyframeAnimation.cpp:
2470 (WebCore::KeyframeAnimation::hasAnimationForProperty):
2471 * page/animation/KeyframeAnimation.h:
2472 (WebCore::KeyframeAnimation::KeyframeAnimation):
2473 (WebCore::KeyframeAnimation::unanimatedStyle):
2474
hyatt@apple.comea254e22008-09-20 00:42:36 +000024752008-09-19 David Hyatt <hyatt@apple.com>
2476
2477 Add support for painting/hit testing of four possible scrollbar buttons.
2478 The Windows themes simply ignore the two parts that they will never
2479 show. The Mac theme also ignores the other two buttons for now.
2480
2481 The cross-platform base for all three themes, ScrollbarThemeComposite,
2482 has all the proper support though.
2483
2484 Reviewed by Sam Weinig
2485
2486 * platform/ScrollbarThemeComposite.cpp:
2487 (WebCore::ScrollbarThemeComposite::hitTest):
2488 (WebCore::ScrollbarThemeComposite::invalidatePart):
2489 * platform/ScrollbarThemeComposite.h:
2490 * platform/mac/ScrollbarThemeMac.h:
2491 * platform/mac/ScrollbarThemeMac.mm:
2492 (WebCore::ScrollbarThemeMac::backButtonRect):
2493 (WebCore::ScrollbarThemeMac::forwardButtonRect):
2494 (WebCore::ScrollbarThemeMac::paintButton):
2495 * platform/win/ScrollbarThemeSafari.cpp:
2496 (WebCore::ScrollbarThemeSafari::backButtonRect):
2497 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
2498 (WebCore::ScrollbarThemeSafari::paintButton):
2499 * platform/win/ScrollbarThemeSafari.h:
2500 * platform/win/ScrollbarThemeWin.cpp:
2501 (WebCore::ScrollbarThemeWin::backButtonRect):
2502 (WebCore::ScrollbarThemeWin::forwardButtonRect):
2503 (WebCore::ScrollbarThemeWin::paintButton):
2504 * platform/win/ScrollbarThemeWin.h:
2505
pewtermoose@webkit.org0e3da6e2008-09-20 00:11:32 +000025062008-09-19 Matt Lilek <webkit@mattlilek.com>
2507
2508 Reviewed by Tim Hatcher.
2509
2510 Bug 17772: Inspector should support point-and-click to select a node to inspect
2511 https://bugs.webkit.org/show_bug.cgi?id=17772
2512 <rdar://problem/5792395>
2513
2514 * English.lproj/localizedStrings.js:
2515 * page/Chrome.cpp:
2516 (WebCore::Chrome::mouseDidMoveOverElement):
2517 * page/EventHandler.cpp:
2518 (WebCore::EventHandler::handleMousePressEvent):
2519 * page/InspectorController.cpp:
2520 (WebCore::toggleNodeSearch):
2521 (WebCore::searchingForNode):
2522 (WebCore::InspectorController::InspectorController):
2523 (WebCore::InspectorController::toggleSearchForNodeInPage):
2524 (WebCore::InspectorController::mouseDidMoveOverElement):
2525 (WebCore::InspectorController::handleMousePressOnNode):
2526 (WebCore::InspectorController::windowScriptObjectAvailable):
2527 * page/InspectorController.h:
2528 (WebCore::InspectorController::searchingForNodeInPage):
2529 * page/inspector/ElementsPanel.js:
2530 * page/inspector/Images/nodeSearchButtons.png: Added.
2531 * page/inspector/inspector.css:
2532
hyatt@apple.com57b2d522008-09-19 23:39:26 +000025332008-09-19 David Hyatt <hyatt@apple.com>
2534
2535 Add new scrollbar parts to be able to represent back and forward buttons
2536 at either end of the scrollbar. The current scrollbar still just draws
2537 a single button at either end, but the parts now exist.
2538
2539 Reviewed by Sam Weinig
2540
2541 * platform/ScrollTypes.h:
2542 (WebCore::):
2543 * platform/Scrollbar.cpp:
2544 (WebCore::Scrollbar::autoscrollTimerFired):
2545 (WebCore::Scrollbar::pressedPartScrollDirection):
2546 (WebCore::Scrollbar::pressedPartScrollGranularity):
2547 (WebCore::Scrollbar::handleMouseMoveEvent):
2548 * platform/ScrollbarTheme.h:
2549 (WebCore::ScrollbarTheme::buttonsPlacement):
2550 (WebCore::ScrollbarTheme::invalidateParts):
2551 * platform/ScrollbarThemeComposite.cpp:
2552 (WebCore::ScrollbarThemeComposite::paint):
2553 (WebCore::ScrollbarThemeComposite::hitTest):
2554 (WebCore::ScrollbarThemeComposite::invalidatePart):
2555 * platform/ScrollbarThemeComposite.h:
2556
bdakin@apple.com5b0a3b22008-09-19 23:02:03 +000025572008-09-19 Beth Dakin <bdakin@apple.com>
2558
2559 Reviewed by Dave Hyatt.
2560
2561 Fix for <rdar://problem/6231308> crash in AutoTableLayout
2562
2563 The code assumes later on that a TableSection's grid's row vector
2564 will never be empty. So make 1 the minimum number of columns.
2565
2566 * rendering/RenderTableSection.cpp:
2567 (WebCore::RenderTableSection::ensureRows):
2568
hyatt@apple.comaf711ec2008-09-19 22:55:56 +000025692008-09-19 David Hyatt <hyatt@apple.com>
2570
2571 Add a new ScrollbarButtonsPlacement type for specifying where
2572 the button arrows are in a scrollbar.
2573
2574 Read in the placement settings for Mac. Nothing is done with the
2575 setting yet.
2576
2577 Add a new buttonsPlacement() method to ScrollbarTheme composite
2578 so that the arrow settings can be obtained.
2579
2580 Reviewed by Sam Weinig
2581
2582 * platform/ScrollTypes.h:
2583 (WebCore::):
2584 * platform/ScrollbarThemeComposite.h:
2585 (WebCore::ScrollbarThemeComposite::buttonsPlacement):
2586 * platform/mac/ScrollbarThemeMac.mm:
2587 (WebCore::updateArrowPlacement):
2588 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
2589
sfalken@apple.com64602042008-09-19 22:47:45 +000025902008-09-19 Steve Falkenburg <sfalken@apple.com>
2591
2592 Roll out r36626. It is causing variance in SunSpider numbers on XP.
2593
2594 Rubber stamped by Mark Rowe.
2595
2596 * platform/win/SharedTimerWin.cpp:
2597 (WebCore::isRunningOnVistaOrLater):
2598 (WebCore::setSharedTimerFireTime):
2599
kmccullough@apple.comd203b242008-09-19 21:56:14 +000026002008-09-19 Kevin McCullough <kmccullough@apple.com>
2601
2602 Reviewed by Tim.
2603
2604 https://bugs.webkit.org/show_bug.cgi?id=20942
2605 Bug 20942: Repeated messages in resources don't collapse
2606 - Now repeated messages in a resource's view are collapsed and a message
2607 says how many were repeated.
2608
2609 * English.lproj/localizedStrings.js:
2610 * manual-tests/inspector/multiple-console-messages.html:
2611 * page/inspector/Console.js: Send all the messages to the resource's
2612 view before possibly returning early if the message is a repeat.
2613 * page/inspector/SourceFrame.js: Add the text about the message being
2614 repeated, if it is, and increment it when necessary.
2615
cfleizach@apple.com0abaacc2008-09-19 21:39:21 +000026162008-09-19 Chris Fleizach <cfleizach@apple.com>
2617
2618 Removed unnecessary #if
2619
2620 * page/mac/AccessibilityObjectWrapper.mm:
2621
hyatt@apple.comc9967ce92008-09-19 21:20:59 +000026222008-09-19 David Hyatt <hyatt@apple.com>
2623
hyatt@apple.comf658e502008-09-19 22:12:07 +00002624 Read in prefs for the scroll delay repeat values for buttons. Also
2625 honor the option-click pref for jumping to the thumb when clicking in
2626 the track.
2627
2628 Reviewed by Sam Weinig
2629
2630 * platform/mac/ScrollbarThemeMac.h:
2631 * platform/mac/ScrollbarThemeMac.mm:
2632 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
2633 (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
2634 (WebCore::ScrollbarThemeMac::autoscrollTimerDelay):
2635 (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
2636
26372008-09-19 David Hyatt <hyatt@apple.com>
2638
hyatt@apple.comc9967ce92008-09-19 21:20:59 +00002639 Move ScrollbarThemeMac.cpp to ScrollbarThemeMac.mm so it can use Obj-C.
2640 Set the initial button repeat delay to 0.5 for Mac.
2641
2642 Reviewed by Sam Weinig
2643
2644 * WebCore.xcodeproj/project.pbxproj:
2645 * platform/mac/ScrollbarThemeMac.cpp: Removed.
2646 * platform/mac/ScrollbarThemeMac.h:
2647 (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
2648 * platform/mac/ScrollbarThemeMac.mm: Copied from platform/mac/ScrollbarThemeMac.cpp.
2649
darin@apple.com39a180f2008-09-19 21:15:14 +000026502008-09-19 Darin Adler <darin@apple.com>
2651
2652 Reviewed by Sam Weinig.
2653
2654 - part 2 of https://bugs.webkit.org/show_bug.cgi?id=20858
2655 make each distinct C++ class get a distinct JSC::Structure
2656
2657 + Fixed all cases where we were using a shared structure for multiple
2658 C++ classes in WebCore. This still has to be done in JavaScriptCore.
2659
2660 + Got rid of cacheGlobalObject.
2661
2662 + Improved use of PassRefPtr in bindings code.
2663
2664 + Removed a couple cases where we were potentially allocating prototypes
2665 inside a JSObject's construction process -- this can lead to trouble if
2666 we do a garbage collection while an object is only partly constructed.
2667
2668 * bindings/js/JSAudioConstructor.cpp:
2669 (WebCore::JSAudioConstructor::JSAudioConstructor): Create a structure explicitly
2670 so we don't implicitly share the structure with other objects that use the object
2671 prototype.
2672
2673 * bindings/js/JSDOMBinding.cpp:
2674 (WebCore::getCachedDOMConstructor): Added. To be used for constructors so we
2675 don't need cacheGlobalObject any more.
2676 (WebCore::cacheDOMConstructor): Ditto.
2677
2678 * bindings/js/JSDOMBinding.h: Removed DOMObject constructor that takes a prototype.
2679 Added functions and a function template for getting cached DOM constructors.
2680 Removed cacheGlobalObject function template.
2681
2682 * bindings/js/JSDOMWindowBase.cpp:
2683 (WebCore::JSDOMWindowBase::JSDOMWindowBase): Take a PassRefPtr<DOMWindow> since
2684 we're taking ownership.
2685 * bindings/js/JSDOMWindowBase.h: Changed constructor to take PassRefPtr, since
2686 we're taking ownership. Added constructor map.
2687 * bindings/js/JSDOMWindowCustom.cpp:
2688 (WebCore::JSDOMWindow::mark): Mark the constructors in the map.
2689
2690 * bindings/js/JSDOMWindowShell.cpp:
2691 (WebCore::JSDOMWindowShell::JSDOMWindowShell): Take a PassRefPtr<DOMWindow> since
2692 we're taking ownership. Use the new setWindow function to create the JSDOMWindow;
2693 this is now done in only that one place.
2694 (WebCore::JSDOMWindowShell::setWindow): Added. Creates the JSDOMWindow based on
2695 the passed-in DOMWindow. Code was moved here and changed to allocate unique
2696 structures for both the window prototype and the window.
2697 * bindings/js/JSDOMWindowShell.h: Ditto.
2698
2699 * bindings/js/JSEventTargetBase.h: Changed class template argument so it doesn't
2700 have the same name (JSEventTarget) as an actual class. Removed unhelpful use of
2701 private/friend in JSEventTargetBase. Removed comments referring to defunct
2702 macros. Changed JSEventTargetBasePrototype to get the prototype with the new
2703 rather than its own copy of cacheGlobalObject (I missed this during pass 1).
2704 Changed JSEventTargetBasePrototype so it doesn't have so many template arguments.
2705
2706 * bindings/js/JSEventTargetNode.cpp: Added s_info; needed for the new scheme
2707 for caching structures and prototypes.
2708 (WebCore::JSEventTargetNode::JSEventTargetNode): Use PassRefPtr.
2709 (WebCore::JSEventTargetNode::createPrototype): Added.
2710 * bindings/js/JSEventTargetNode.h: Updated for above changes.
2711
2712 * bindings/js/JSHTMLAllCollection.h:
2713 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Use PassRefPtr.
2714 * bindings/js/JSHTMLCollectionCustom.cpp:
2715 (WebCore::getNamedItems): Pass ExecState instead of prototype.
2716 * bindings/js/JSHTMLFormElementCustom.cpp:
2717 (WebCore::JSHTMLFormElement::nameGetter): Ditto.
2718 * bindings/js/JSHTMLInputElementBase.cpp:
2719 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Use PassRefPtr.
2720 * bindings/js/JSHTMLInputElementBase.h: Ditto.
2721 * bindings/js/JSHTMLOptionElementConstructor.cpp:
2722 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
2723 Create a unique structure instead of sharing.
2724 * bindings/js/JSImageConstructor.cpp:
2725 (WebCore::JSImageConstructor::JSImageConstructor): Ditto.
2726
2727 * bindings/js/JSInspectedObjectWrapper.cpp:
2728 (WebCore::JSInspectedObjectWrapper::wrap): Removed overload that takes
2729 a prototype rather than a structure. Made the use of inheritorID() here
2730 explicit.
2731 * bindings/js/JSInspectedObjectWrapper.h: Ditto.
2732 * bindings/js/JSInspectorCallbackWrapper.cpp:
2733 (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
2734 * bindings/js/JSInspectorCallbackWrapper.h: Ditto.
2735
2736 * bindings/js/JSNamedNodesCollection.cpp:
2737 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Changed to
2738 take an ExecState argument instead of a prototype. Create a unique
2739 StructureID instead of sharing.
2740 * bindings/js/JSNamedNodesCollection.h: Ditto.
2741
2742 * bindings/js/JSQuarantinedObjectWrapper.cpp: Removed overloaded
2743 constructor that takes a prototype instead of a structure.
2744 * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.
2745
2746 * bindings/js/JSRGBColor.cpp:
2747 (WebCore::JSRGBColor::JSRGBColor): Take ExecState instead of a
2748 prototype; create a unique structure.
2749 (WebCore::getJSRGBColor): Ditto.
2750 * bindings/js/JSRGBColor.h: Ditto.
2751
2752 * bindings/js/JSSQLResultSetRowListCustom.cpp:
2753 (WebCore::JSSQLResultSetRowList::item): Use constructEmptyObject instead
2754 of explicit coding the idiom for making a new object.
2755
2756 * bindings/js/JSXMLHttpRequestConstructor.cpp:
2757 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
2758 Create a unique structure instead of the shared one.
2759 * bindings/js/JSXSLTProcessorConstructor.cpp:
2760 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
2761 Ditto.
2762
2763 * bindings/js/ScriptController.cpp:
2764 (WebCore::ScriptController::clearWindowShell): Let the window shell's
2765 setWindow function create the JSDOMWindow instead of doing it here.
2766
2767 * bindings/scripts/CodeGeneratorJS.pm: Changed to use PassRefPtr for
2768 the structure and the wrapped object when creating wrappers.
2769 Simplified some of the special cases for DOMWindow so they are
2770 different only in ways the need to be. Eliminated the
2771 JSDOMWindow::createPrototype and JSDOMWindowPrototype::self
2772 functions. Moved responsibility for creating the structure and
2773 parent prototype out of the prototype constructor into the
2774 createPrototype function. Removed the unused "DoNotCache" flag for
2775 objects other than DOMWindow. Use getDOMConstructor instead of
2776 cacheGlobalObject for constructors. Make each constructor have
2777 a unique structure ID.
2778
2779 * bridge/objc/objc_runtime.h: Added createPrototype and changed the
2780 name of the info member to s_info so we can use the standard DOM
2781 binding macros to handl the prototype.
2782 * bridge/objc/objc_runtime.mm: Fixed namespacing a bit.
2783 (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
2784 Create a unique structure using getDOMStructure.
2785
2786 * bridge/runtime_array.cpp: Fixed namespacing a bit.
2787 (JSC::RuntimeArray::RuntimeArray): Create a unique structure using
2788 getDOMStructure.
2789 * bridge/runtime_array.h: Added createPrototype so getDOMStructure
2790 will work.
2791
2792 * bridge/runtime_object.cpp:
2793 (JSC::RuntimeObjectImp::RuntimeObjectImp): Create a unique structure using
2794 getDOMStructure.
2795 * bridge/runtime_object.h: Added createPrototype so getDOMStructure
2796 will work.
2797
2798 * history/CachedPage.cpp:
2799 (WebCore::CachedPage::restore): Let the window shell's
2800 setWindow function create the JSDOMWindow instead of doing it here.
2801
2802 * page/DOMWindow.idl: Removed DoNotCache, which is no longer used.
2803
mitz@apple.comd6b74252008-09-19 21:02:55 +000028042008-09-19 Dan Bernstein <mitz@apple.com>
2805
2806 Reviewed by Dave Hyatt.
2807
2808 This optimization was suggested by Daniel Fenwick
2809
2810 - speed up measuring text on the Core Text code path by not specifying a paragraph writing direction
2811
2812 Specifying LTR paragraph directionality when measuring runs of RTL text
mitz@apple.com308acec2008-09-19 21:10:48 +00002813 resulted in typically two CTRuns being generated for every run instead
mitz@apple.comd6b74252008-09-19 21:02:55 +00002814 of one, due to the leading space being reordered to the left.
2815
2816 * platform/graphics/SimpleFontData.h: Removed the ltr parameter to
2817 getCFStringAttributes() and changed m_CFStringAttributes from an array
2818 to a single value.
2819 * platform/graphics/mac/CoreTextController.cpp:
2820 (WebCore::CoreTextController::CoreTextController): Added a
2821 mayUseNaturalWritingDirection parameter.
2822 (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Changed
2823 to force the bidi embedding level whenever
2824 m_mayUseNaturalWritingDirectrion is false. Since this is now a common
2825 case, made the typesetter options dictionaries static.
2826 * platform/graphics/mac/CoreTextController.h:
2827 * platform/graphics/mac/FontMacCoreText.cpp:
2828 (WebCore::Font::selectionRectForComplexText): Renamed a local variable.
2829 (WebCore::Font::floatWidthForComplexText): Changed to allow the
2830 CoreTextController to not set the writing direction.
2831 * platform/graphics/mac/SimpleFontDataMac.mm:
2832 (WebCore::SimpleFontData::getCFStringAttributes): Removed the ltr
2833 parameter and the paragraph style attribute.
2834
hyatt@apple.com2d7bdf72008-09-19 20:54:33 +000028352008-09-19 David Hyatt <hyatt@apple.com>
2836
2837 Reviewed by Sam Weinig
2838
2839 https://bugs.webkit.org/show_bug.cgi?id=20941
2840
2841 Incorrect height calculation for replaced element inside nested
2842 positioned elements (where the inner has a percentage height and
2843 the outer implicitly has a fixed height because of explicit top/bottom
2844 values).
2845
2846 Added fast/block/positioning/replaced-inside-top-bottom.html
2847
2848 * rendering/RenderBox.cpp:
2849 (WebCore::RenderBox::availableHeightUsing):
2850
cfleizach@apple.com37bd8d72008-09-19 20:48:57 +000028512008-09-19 Chris Fleizach <cfleizach@apple.com>
2852
2853 Fix Tiger bustage
2854
2855 * page/mac/AccessibilityObjectWrapper.mm:
2856
cfleizach@apple.com63b88ab2008-09-19 20:24:48 +000028572008-09-18 Chris Fleizach <cfleizach@apple.com>
2858
2859 Reviewed by Darin Adler.
2860
2861 <rdar://problem/6211041> Expose legend tag in accessibility
2862
2863 Exposes the legend tag as the titleUIElement of a fieldset
2864
2865 Test: accessibility/legend.html
2866
2867 * page/AccessibilityObject.h:
2868 (WebCore::AccessibilityObject::isFieldset):
2869 * page/AccessibilityRenderObject.cpp:
2870 (WebCore::AccessibilityRenderObject::isFieldset):
2871 (WebCore::AccessibilityRenderObject::titleUIElement):
2872 * page/AccessibilityRenderObject.h:
2873 * rendering/RenderFieldset.h:
2874
cfleizach@apple.comcff26212008-09-19 20:04:13 +000028752008-09-19 Chris Fleizach <cfleizach@apple.com>
2876
2877 Reviewed by Darin Adler.
2878
2879 <rdar://problem/6213171> WebKit should use new array-centric methods for AX performance
2880
2881 Implement a few AX API methods that will be called by AppKit, which will
2882 speed up access to accessibility objects
2883
2884 * page/mac/AccessibilityObjectWrapper.mm:
2885 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
2886 (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
2887 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
2888
zecke@webkit.org7594eb62008-09-19 11:06:55 +000028892008-09-19 Holger Hans Peter Freyther <zecke@selfish.org>
2890
2891 Reviewed by Simon Hausmann.
2892
zecke@webkit.org3df68032008-09-19 11:43:27 +00002893 [qtwebkit] Set the m_should* flags to their proper value on entry
2894 With plugins it was possible that we finished a job twice. This was
2895 some kind of reentrancy in QNetworkReplyHandler::sendQueuedItems. By
2896 setting the flag to (m_loadMode == LoadDeferred) they will always have
2897 the right value and we will not send responses twice.
2898
2899 * platform/network/qt/QNetworkReplyHandler.cpp:
2900
29012008-09-19 Holger Hans Peter Freyther <zecke@selfish.org>
2902
2903 Reviewed by Simon Hausmann.
2904
zecke@webkit.org7594eb62008-09-19 11:06:55 +00002905 [qtwebkit] Pass test 70 of acid3. Handle text decoding errors
2906 Handle text decoding errors before instructing the parser to parse. We
2907 have converted the text to QString and all encoding errors are gone and
2908 the parser will not be able to detect them. So handle them before parsing.
2909
2910 * dom/XMLTokenizerQt.cpp:
2911 (WebCore::XMLTokenizer::doWrite):
2912
darin@apple.comc9aea832008-09-19 06:49:35 +000029132008-09-18 Darin Adler <darin@apple.com>
2914
2915 Reviewed by Maciej Stachowiak.
2916
2917 - part 1 of https://bugs.webkit.org/show_bug.cgi?id=20858
2918 make each distinct C++ class get a distinct JSC::Structure
2919
2920 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2921 (WebCore::JSCSSStyleDeclaration::customPut): Use setDOMException
2922 instead of DOMExceptionTranslator.
2923
2924 * bindings/js/JSDOMBinding.cpp:
2925 (WebCore::getCachedDOMObjectWrapper): Updated function name.
2926 (WebCore::cacheDOMObjectWrapper): Ditto.
2927 (WebCore::forgetDOMObject): Ditto.
2928 (WebCore::getCachedDOMNodeWrapper): Ditto.
2929 (WebCore::forgetDOMNode): Ditto.
2930 (WebCore::cacheDOMNodeWrapper): Ditto.
2931 (WebCore::forgetAllDOMNodesForDocument): Ditto.
2932 (WebCore::markDOMNodesForDocument): Ditto.
2933 (WebCore::updateDOMNodeDocument): Ditto.
2934 (WebCore::getCachedDOMStructure): Added.
2935 (WebCore::createDOMStructure): Ditto.
2936
2937 * bindings/js/JSDOMBinding.h: Get rid of the ScriptInterpreter
2938 class and replace the static member functions with non-member
2939 functions. Added many other functions for getting at structures,
2940 prototypes, wrappers, and creating them. Also moved the
2941 cacheGlobalObject function here from JavaScriptCore; eventually
2942 I'll remove that once I get rid of the remaining callers. Also
2943 removed the DOMExceptionTranslator class.
2944
2945 * bindings/js/JSDOMWindowBase.h: Added JSDOMStructureMap type,
2946 and put one of those maps in each window.
2947
2948 * bindings/js/JSDOMWindowCustom.cpp:
2949 (WebCore::markDOMObjectWrapper): Updated for function name change.
2950 (WebCore::JSDOMWindow::mark): Added code to mark all the structures
2951 in the structure map.
2952
2953 * bindings/js/JSEventTargetNode.cpp:
2954 (WebCore::JSEventTargetNode::JSEventTargetNode): Changed to take
2955 a structure instead of a prototype.
2956 * bindings/js/JSEventTargetNode.h: Ditto.
2957 * bindings/js/JSHTMLAllCollection.h:
2958 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Ditto.
2959
2960 * bindings/js/JSHTMLInputElementBase.cpp:
2961 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Removed
2962 use of the JSC_IMPLEMENT_PROTOTYPE macro, and changed to take a
2963 structure instead of a prototype.
2964 * bindings/js/JSHTMLInputElementBase.h: Removed use of the
2965 JSC_DEFINE_PROTOTYPE_WITH_PROTOTYPE macro, and changed constructor
2966 to take a structure instead of a prototype. Created a dummy prototype
2967 class that causes the HTMLInputElement prototype to have the
2968 HTMLElement prototype.
2969
2970 * bindings/scripts/CodeGeneratorJS.pm: Change constructors to take
2971 structures instead of prototypes. Changed the prototype self function
2972 to use the getDOMPrototype function -- later we can eliminate it and
2973 have callers invoke getDOMPrototype directly instead. Updated other
2974 functions that have name changes. Added code to generate the
2975 createPrototype member function. Changed use of cacheGlobalObject to
2976 get it from the WebCore namespace instead of the JSC namespace.
2977 Changed cacheDOMObject calls to use getDOMObjectWrapper instead.
2978
2979 * dom/Document.cpp:
2980 (WebCore::Document::~Document): Updated for name change and also
2981 removed unnecessary JSLock use -- there's no need to lock around this.
2982 * dom/Node.cpp:
2983 (WebCore::Node::setDocument): Ditto.
2984
2985 * dom/make_names.pl: Changed to use CREATE_DOM_NODE_WRAPPER macro
2986 instead of calling new directly.
2987
2988 * bindings/js/JSCSSRuleCustom.cpp:
2989 (WebCore::toJS): Updated for function name changes and used the
2990 CREATE_DOM_OBJECT_WRAPPER macro.
2991 * bindings/js/JSCSSValueCustom.cpp:
2992 (WebCore::toJS): Ditto.
2993 * bindings/js/JSCanvasPixelArrayCustom.cpp:
2994 (WebCore::toJS): Ditto.
2995 * bindings/js/JSDocumentCustom.cpp:
2996 (WebCore::JSDocument::mark): Ditto.
2997 (WebCore::toJS): Ditto.
2998 * bindings/js/JSElementCustom.cpp:
2999 (WebCore::toJSNewlyCreated): Ditto.
3000 * bindings/js/JSEventCustom.cpp:
3001 (WebCore::toJS): Ditto.
3002 * bindings/js/JSEventTargetBase.cpp:
3003 (WebCore::jsEventTargetDispatchEvent): Use setDOMException instead
3004 of DOMExceptionTranslator.
3005 (WebCore::toJS): Updated for function name changes and used the
3006 CREATE_DOM_OBJECT_WRAPPER macro.
3007 * bindings/js/JSHTMLCollectionCustom.cpp:
3008 (WebCore::toJS): Ditto.
3009 * bindings/js/JSNodeCustom.cpp:
3010 (WebCore::JSNode::mark): Ditto.
3011 (WebCore::createWrapper): Ditto.
3012 (WebCore::toJS): Ditto.
3013 * bindings/js/JSSVGPathSegCustom.cpp:
3014 (WebCore::toJS): Ditto.
3015 * bindings/js/JSStyleSheetCustom.cpp:
3016 (WebCore::toJS): Ditto.
3017 (WebCore::JSStyleSheet::mark): Ditto.
3018 * bindings/js/JSTextCustom.cpp:
3019 (WebCore::toJSNewlyCreated): Ditto.
3020 * bindings/js/JSXMLHttpRequestConstructor.cpp:
3021 (WebCore::constructXMLHttpRequest): Ditto.
3022 * bindings/js/JSXMLHttpRequestCustom.cpp:
3023 (WebCore::JSXMLHttpRequest::mark): Ditto.
3024 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
3025 (WebCore::JSXMLHttpRequestUpload::mark): Ditto.
3026 * bindings/js/JSXSLTProcessorConstructor.cpp:
3027 (WebCore::constructXSLTProcessor): Ditto.
3028 * bindings/js/ScriptController.cpp:
3029 (WebCore::ScriptController::finishedWithEvent): Ditto.
3030 * xml/XMLHttpRequest.cpp:
3031 (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
3032 (WebCore::XMLHttpRequest::dropProtection): Ditto.
3033
hyatt@apple.com083539d2008-09-19 06:30:16 +000030342008-09-18 David Hyatt <hyatt@apple.com>
3035
3036 This patch gets a viewless scrollbar working on Mac. It is turned off
3037 by default. Hit testing works. For now the scrollbar just paints ugly
3038 debug rects in the place of the buttons, track and thumb. It does match
3039 Aqua metrics though.
3040
3041 Reviewed by Sam Weinig
3042
3043 * WebCore.xcodeproj/project.pbxproj:
3044 * page/mac/EventHandlerMac.mm:
3045 (WebCore::EventHandler::passMousePressEventToScrollbar):
3046 * platform/ScrollbarThemeComposite.cpp:
3047 (WebCore::ScrollbarThemeComposite::paint):
3048 (WebCore::ScrollbarThemeComposite::trackPosition):
3049 * platform/ScrollbarThemeComposite.h:
3050 * platform/mac/ScrollViewMac.mm:
3051 (WebCore::ScrollView::addChild):
3052 * platform/mac/ScrollbarThemeMac.cpp:
3053 (WebCore::):
3054 (WebCore::ScrollbarThemeMac::hasButtons):
3055 (WebCore::ScrollbarThemeMac::hasThumb):
3056 (WebCore::buttonRepaintRect):
3057 (WebCore::ScrollbarThemeMac::backButtonRect):
3058 (WebCore::ScrollbarThemeMac::forwardButtonRect):
3059 (WebCore::trackRepaintRect):
3060 (WebCore::ScrollbarThemeMac::trackRect):
3061 (WebCore::ScrollbarThemeMac::minimumThumbLength):
3062 (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
3063 (WebCore::ScrollbarThemeMac::paintTrack):
3064 (WebCore::ScrollbarThemeMac::paintButton):
3065 (WebCore::ScrollbarThemeMac::paintThumb):
3066 * platform/mac/ScrollbarThemeMac.h:
3067 (WebCore::ScrollbarThemeMac::supportsControlTints):
3068 * platform/qt/ScrollbarThemeQt.cpp:
3069 (WebCore::ScrollbarThemeQt::trackPosition):
3070
collinj@webkit.org51261aa2008-09-19 06:13:22 +000030712008-09-18 Collin Jackson <collinj@webkit.org>
3072
3073 Build fix; added missing header file to GNUmakefile.am
3074
3075 * GNUmakefile.am:
3076
weinig@apple.com39aecbe2008-09-19 04:56:21 +000030772008-09-18 Sam Weinig <sam@webkit.org>
3078
3079 Reviewed by David "the Hair" Hyatt.
3080
3081 Move DataRef, SVGRenderStyle and SVGRenderStyleDefs in render/style.
3082
3083 * GNUmakefile.am:
3084 * WebCore.pro:
3085 * WebCore.vcproj/WebCore.vcproj:
3086 * WebCore.xcodeproj/project.pbxproj:
3087 * rendering/DataRef.h: Removed.
3088 * rendering/SVGRenderStyle.cpp: Removed.
3089 * rendering/SVGRenderStyle.h: Removed.
3090 * rendering/SVGRenderStyleDefs.cpp: Removed.
3091 * rendering/SVGRenderStyleDefs.h: Removed.
3092 * rendering/style/DataRef.h: Copied from rendering/DataRef.h.
3093 * rendering/style/SVGRenderStyle.cpp: Copied from rendering/SVGRenderStyle.cpp.
3094 * rendering/style/SVGRenderStyle.h: Copied from rendering/SVGRenderStyle.h.
3095 * rendering/style/SVGRenderStyleDefs.cpp: Copied from rendering/SVGRenderStyleDefs.cpp.
3096 * rendering/style/SVGRenderStyleDefs.h: Copied from rendering/SVGRenderStyleDefs.h.
3097
mrowe@apple.coma5206592008-09-19 04:47:58 +000030982008-09-18 Mark Rowe <mrowe@apple.com>
3099
3100 Reviewed by Dan Bernstein.
3101
3102 Add a means of clearing a FrameTree's name.
3103
3104 * WebCore.base.exp:
3105 * page/FrameTree.cpp:
3106 (WebCore::FrameTree::clearName):
3107 * page/FrameTree.h:
3108
hyatt@apple.com6eeef382008-09-19 04:30:53 +000031092008-09-18 David Hyatt <hyatt@apple.com>
3110
3111 Eliminate addToSuperview from Widget, since it was only called
3112 by ScrollViewMac's addChild method. Just shift the original body
3113 of addToSuperView into addChild.
3114
3115 Reviewed by Sam Weinig
3116
3117 * platform/Widget.h:
3118 * platform/mac/ScrollViewMac.mm:
3119 (WebCore::ScrollView::addChild):
3120 * platform/mac/WidgetMac.mm:
3121
collinj@webkit.org9c672f62008-09-19 04:15:14 +000031222008-09-18 Collin Jackson <collinj@webkit.org>
3123
3124 Reviewed by Antti Koivisto and Mark Rowe.
3125
3126 Test: http/tests/misc/dns-prefetch-control.html
3127
3128 https://bugs.webkit.org/show_bug.cgi?id=20690
3129
3130 Invoke WebCore::prefetchDNS() on host names that appear in
3131 in the href of hyperlinks and <link rel="dns-prefetch">. This
3132 can be used to implement DNS prefetching.
3133
3134 * WebCore.vcproj/WebCore.vcproj:
3135 * WebCore.xcodeproj/project.pbxproj:
3136 * dom/Document.cpp:
3137 (WebCore::Document::Document):
3138 (WebCore::Document::processHttpEquiv):
3139 (WebCore::Document::setSecurityOrigin):
3140 (WebCore::Document::initDNSPrefetch):
3141 (WebCore::Document::parseDNSPrefetchControlHeader):
3142 * dom/Document.h:
3143 (WebCore::Document::isDNSPrefetchEnabled):
3144 * html/HTMLAnchorElement.cpp:
3145 (WebCore::HTMLAnchorElement::parseMappedAttribute):
3146 * html/HTMLLinkElement.cpp:
3147 (WebCore::HTMLLinkElement::HTMLLinkElement):
3148 (WebCore::HTMLLinkElement::parseMappedAttribute):
3149 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
3150 (WebCore::HTMLLinkElement::process):
3151 * html/HTMLLinkElement.h:
3152 * html/PreloadScanner.cpp:
3153 (WebCore::PreloadScanner::processAttribute):
3154 * loader/FrameLoader.cpp:
3155 (WebCore::FrameLoader::begin):
3156 * platform/gtk/TemporaryLinkStubs.cpp:
3157 (WebCore::prefetchDNS):
3158 * platform/network/DNS.h: Added.
3159 * platform/network/cf/DNSCFNet.cpp: Added.
3160 (WebCore::prefetchDNS):
3161 * platform/qt/TemporaryLinkStubs.cpp:
3162 (WebCore::prefetchDNS):
3163 * platform/wx/TemporaryLinkStubs.cpp:
3164 (WebCore::prefetchDNS):
3165
hyatt@apple.comc5b931a2008-09-19 00:39:51 +000031662008-09-18 David Hyatt <hyatt@apple.com>
3167
hyatt@apple.comcf31c162008-09-19 04:01:56 +00003168 Eliminate the convertToScreenCoordinate method on Widget, since
3169 ScrollView has redundant methods that already do the same thing.
3170
3171 Reviewed by Sam Weinig
3172
3173 * editing/mac/SelectionControllerMac.mm:
3174 (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
3175 * platform/Widget.h:
3176 * platform/mac/WidgetMac.mm:
3177 (WebCore::Widget::containingWindow):
3178
31792008-09-18 David Hyatt <hyatt@apple.com>
3180
hyatt@apple.com179629b3c2008-09-19 03:16:26 +00003181 Move to only one constructor for Widgets. Rename data to m_data and make
3182 it have an #ifdef only for platforms that have platform-specific data (Mac
3183 and Gtk).
3184
3185 Reviewed by Sam Weinig
3186
3187 * WebCore.base.exp:
3188 * platform/Widget.cpp:
3189 (WebCore::Widget::init):
3190 * platform/Widget.h:
3191 * platform/gtk/WidgetGtk.cpp:
3192 (WebCore::Widget::Widget):
3193 (WebCore::Widget::~Widget):
3194 (WebCore::Widget::cursor):
3195 (WebCore::Widget::setCursor):
3196 * platform/mac/WidgetMac.mm:
3197 (WebCore::Widget::Widget):
3198 (WebCore::Widget::~Widget):
3199 (WebCore::Widget::addToSuperview):
3200 (WebCore::Widget::removeFromSuperview):
3201 (WebCore::Widget::beforeMouseDown):
3202 (WebCore::Widget::afterMouseDown):
3203 * platform/qt/WidgetQt.cpp:
3204 (WebCore::Widget::Widget):
3205 * platform/win/WidgetWin.cpp:
3206 (WebCore::Widget::Widget):
3207 * platform/wx/WidgetWx.cpp:
3208 (WebCore::Widget::Widget):
3209
32102008-09-18 David Hyatt <hyatt@apple.com>
3211
hyatt@apple.com470d7e72008-09-19 03:01:08 +00003212 Move Qt's isNPAPIPlugin boolean from Widget down to PluginView, since there
3213 was no reason for it to be on Widget. This change eliminates Qt ifdefs
3214 from Widget.
3215
3216 Reviewed by Sam Weinig
3217
3218 * bindings/js/ScriptControllerQt.cpp:
3219 (WebCore::ScriptController::createScriptInstanceForWidget):
3220 * platform/qt/WidgetQt.cpp:
3221 (WebCore::WidgetPrivate::WidgetPrivate):
3222 (WebCore::WidgetPrivate::~WidgetPrivate):
3223 (WebCore::Widget::Widget):
3224 (WebCore::Widget::~Widget):
3225 * plugins/PluginView.cpp:
3226 (WebCore::PluginView::PluginView):
3227 * plugins/PluginView.h:
3228 (WebCore::PluginView::isNPAPIPlugin):
3229 (WebCore::PluginView::setIsNPAPIPlugin):
3230
32312008-09-18 David Hyatt <hyatt@apple.com>
3232
hyatt@apple.com557408b2008-09-19 02:36:08 +00003233 Make geometryChanged() cross-platform on Widget. GTK and WIN platform
3234 ifdefs are now gone from Widget!
3235
3236 Reviewed by Sam Weinig
3237
3238 * platform/Widget.h:
3239 (WebCore::Widget::geometryChanged):
3240 * platform/gtk/WidgetGtk.cpp:
3241 * platform/qt/WidgetQt.cpp:
3242
32432008-09-18 David Hyatt <hyatt@apple.com>
3244
hyatt@apple.com17e57432008-09-19 02:29:27 +00003245 Consolidate convertTo/FromContainingWindow methods so that all platforms
3246 but Mac share the same code.
3247
3248 Move convertSelfToChild and convertChildToSelf to ScrollView, since
3249 Widget should know nothing about children. Make the methods cross-platform
3250 on ScrollView.
3251
3252 Reviewed by Sam Weinig
3253
3254 * platform/ScrollView.h:
3255 (WebCore::ScrollView::convertChildToSelf):
3256 (WebCore::ScrollView::convertSelfToChild):
3257 * platform/Widget.cpp:
3258 (WebCore::Widget::convertToContainingWindow):
3259 (WebCore::Widget::convertFromContainingWindow):
3260 * platform/Widget.h:
3261 (WebCore::Widget::geometryChanged):
3262 * platform/gtk/ScrollViewGtk.cpp:
3263 (WebCore::ScrollView::isScrollViewScrollbar):
3264 * platform/gtk/WidgetGtk.cpp:
3265 * platform/mac/ScrollViewMac.mm:
3266 (WebCore::ScrollView::isScrollViewScrollbar):
3267 * platform/mac/WidgetMac.mm:
3268 * platform/qt/ScrollViewQt.cpp:
3269 (WebCore::ScrollView::isScrollViewScrollbar):
3270 * platform/qt/WidgetQt.cpp:
3271 * platform/win/ScrollViewWin.cpp:
3272 (WebCore::ScrollView::isScrollViewScrollbar):
3273 * platform/win/WidgetWin.cpp:
3274
32752008-09-18 David Hyatt <hyatt@apple.com>
3276
hyatt@apple.comc5b931a2008-09-19 00:39:51 +00003277 Make the conversion methods that go to and from some containingWindow
3278 cross-platform. Implement them on Mac.
3279
3280 Reviewed by Sam Weinig
3281
3282 * platform/Widget.h:
3283 (WebCore::Widget::setContainingWindow):
3284 * platform/mac/WidgetMac.mm:
3285 (WebCore::Widget::convertFromContainingWindow):
3286 (WebCore::Widget::convertToContainingWindow):
3287
weinig@apple.comd1ea02d2008-09-19 00:28:05 +000032882008-09-18 Sam Weinig <sam@webkit.org>
3289
3290 Rubber-stamped by David "Yeah-yeah" Hyatt.
3291
3292 Cleanup RenderStyle.
3293
3294 * WebCore.xcodeproj/project.pbxproj:
3295 * rendering/style/CounterContent.h:
3296 * rendering/style/RenderStyle.cpp:
3297 * rendering/style/RenderStyle.h:
3298
dino@apple.comef93f532008-09-19 00:01:07 +000032992008-09-18 Chris Marrin <cmarrin@apple.com>
3300
3301 Reviewed by Sam Weinig
3302
3303 Fixed https://bugs.webkit.org/show_bug.cgi?id=20908
3304 Now TransformOperations and AnimationList no longer
3305 inherit from Vector<> but rather have API to access.
3306
3307 * css/CSSComputedStyleDeclaration.cpp:
3308 (WebCore::computedTransform):
3309 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3310 * css/CSSStyleSelector.cpp:
3311 (WebCore::CSSStyleSelector::createTransformOperations):
3312 * page/animation/AnimationBase.cpp:
3313 (WebCore::blendFunc):
3314 * page/animation/CompositeAnimation.cpp:
3315 (WebCore::CompositeAnimation::updateTransitions):
3316 (WebCore::CompositeAnimation::updateKeyframeAnimations):
3317 (WebCore::CompositeAnimation::animate):
3318 * page/animation/ImplicitAnimation.cpp:
3319 (WebCore::ImplicitAnimation::validateTransformFunctionList):
3320 * page/animation/KeyframeAnimation.cpp:
3321 (WebCore::KeyframeAnimation::validateTransformFunctionList):
3322 * rendering/RenderLayer.cpp:
3323 (WebCore::RenderLayer::updateReflectionStyle):
3324 * rendering/style/AnimationList.cpp:
3325 (WebCore::AnimationList::operator==):
3326 * rendering/style/AnimationList.h:
3327 (WebCore::AnimationList::operator!=):
3328 (WebCore::AnimationList::size):
3329 (WebCore::AnimationList::isEmpty):
3330 (WebCore::AnimationList::resize):
3331 (WebCore::AnimationList::remove):
3332 (WebCore::AnimationList::append):
3333 (WebCore::AnimationList::animation):
3334 * rendering/style/RenderStyle.cpp:
3335 (WebCore::StyleRareNonInheritedData::updateKeyframes):
3336 (WebCore::RenderStyle::applyTransform):
3337 (WebCore::RenderStyle::adjustAnimations):
3338 (WebCore::RenderStyle::adjustTransitions):
3339 (WebCore::RenderStyle::transitionForProperty):
3340 * rendering/style/RenderStyle.h:
3341 (WebCore::RenderStyle::hasTransform):
3342 * rendering/style/TransformOperations.cpp:
3343 (WebCore::TransformOperations::TransformOperations):
3344 (WebCore::TransformOperations::operator==):
3345 * rendering/style/TransformOperations.h:
3346 (WebCore::TransformOperations::apply):
3347 (WebCore::TransformOperations::operations):
3348
zecke@webkit.org20690ef2008-09-18 23:28:34 +000033492008-09-18 Holger Hans Peter Freyther <zecke@selfish.org>
3350
zecke@webkit.org30db7422008-09-19 01:00:18 +00003351 Build fix.
3352
3353 [qt] Build fixes after the Widget/ScrollView cleanup
3354 topLevel() is now root()
3355
3356
3357 * platform/qt/ScrollViewQt.cpp:
3358 (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
3359 (WebCore::ScrollView::addChild):
3360 (WebCore::ScrollView::removeChild):
3361
33622008-09-18 Holger Hans Peter Freyther <zecke@selfish.org>
3363
zecke@webkit.org20690ef2008-09-18 23:28:34 +00003364 Reviewed by Mark Rowe.
3365
3366 https://bugs.webkit.org/show_bug.cgi?id=20437
3367
3368 XMLTokenizer.cpp used to contain two different implementations. One was using
3369 libxml2 and the other was using the Qt XML StreamReader. Clean up the code by
3370 separating the two implementations from each other.
3371 Common code and some small bits are kept inside the XMLTokenizer.cpp, the Qt code
3372 was moved to XMLTokenizerQt.cpp and the Libxml2 based code was moved to
3373 XMLTokenizerLibxml2.cpp. There should be no functional changes.
3374
3375 Attempt to add XMLTokenizerLibxml2.cpp to every buildsystem so the build continues
3376 to work.
3377
3378 * GNUmakefile.am:
3379 * WebCore.pro:
3380 * WebCore.vcproj/WebCore.vcproj:
3381 * WebCore.xcodeproj/project.pbxproj:
3382 * WebCoreSources.bkl:
3383 * dom/XMLTokenizer.cpp:
3384 (WebCore::isScriptElement):
3385 (WebCore::castToScriptElement):
3386 (WebCore::XMLTokenizer::setCurrentNode):
3387 (WebCore::XMLTokenizer::write):
3388 (WebCore::XMLTokenizer::eventuallyMarkAsParserCreated):
3389 (WebCore::XMLTokenizer::enterText):
3390 (WebCore::toString):
3391 (WebCore::XMLTokenizer::exitText):
3392 (WebCore::XMLTokenizer::end):
3393 (WebCore::XMLTokenizer::insertErrorMessageBlock):
3394 * dom/XMLTokenizer.h:
3395 (WebCore::XMLTokenizer::wellFormed):
3396 * dom/XMLTokenizerLibxml2.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
3397 (WebCore::createMemoryParser):
3398 (WebCore::XMLTokenizer::XMLTokenizer):
3399 (WebCore::XMLTokenizer::~XMLTokenizer):
3400 (WebCore::XMLTokenizer::doWrite):
3401 (WebCore::ignorableWhitespaceHandler):
3402 (WebCore::XMLTokenizer::initializeParserContext):
3403 (WebCore::XMLTokenizer::doEnd):
3404 (WebCore::XMLTokenizer::lineNumber):
3405 (WebCore::XMLTokenizer::columnNumber):
3406 (WebCore::XMLTokenizer::stopParsing):
3407 (WebCore::XMLTokenizer::resumeParsing):
3408 (WebCore::parseXMLDocumentFragment):
3409 (WebCore::attributesStartElementNsHandler):
3410 (WebCore::parseAttributes):
3411 * dom/XMLTokenizerQt.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
3412 (WebCore::EntityResolver::resolveUndeclaredEntity):
3413 (WebCore::XMLTokenizer::XMLTokenizer):
3414 (WebCore::XMLTokenizer::~XMLTokenizer):
3415 (WebCore::XMLTokenizer::doWrite):
3416 (WebCore::XMLTokenizer::initializeParserContext):
3417 (WebCore::XMLTokenizer::doEnd):
3418 (WebCore::XMLTokenizer::lineNumber):
3419 (WebCore::XMLTokenizer::columnNumber):
3420 (WebCore::XMLTokenizer::stopParsing):
3421 (WebCore::XMLTokenizer::resumeParsing):
3422 (WebCore::parseXMLDocumentFragment):
3423 (WebCore::attributesStartElementNsHandler):
3424 (WebCore::parseAttributes):
3425 (WebCore::):
3426
bdakin@apple.com4c244902008-09-18 23:08:35 +000034272008-09-18 Beth Dakin <bdakin@apple.com>
3428
3429 Reviewed by Geoff Garen.
3430
3431 Build fix for non-Mac builds.
3432
3433 * css/CSSPrimitiveValue.cpp:
3434 (WebCore::CSSPrimitiveValue::cssText):
3435
eric@webkit.org4ac94e62008-09-18 23:07:55 +000034362008-09-18 Peter Kasting <pkasting@google.com>
3437
3438 Reviewed by hyatt. Landed by eseidel.
3439
3440 https://bugs.webkit.org/show_bug.cgi?id=20745
3441 Animated GIFs do not animate properly with (at least) CG.
3442
3443 * WebCore\platform\graphics\BitmapImage.cpp:
3444 * WebCore\platform\graphics\BitmapImage.h:
3445 * WebCore\platform\graphics\cairo\ImageCairo.cpp:
3446 * WebCore\platform\graphics\cg\ImageCG.cpp:
3447 * WebCore\platform\graphics\qt\ImageQt.cpp:
3448 * WebCore\platform\graphics\wx\ImageWx.cpp:
3449
cfleizach@apple.com2a72d8f2008-09-18 22:54:37 +000034502008-09-18 Chris Fleizach <cfleizach@apple.com>
3451
3452 Reviewed by Beth Dakin
3453
3454 <rdar://problem/6224222> AX: should not expose a <table> as an AXTable if ARIA
3455 role specifies otherwise
3456
3457 If a <table> isn't an AXTable, the rows and cells should default to AccessibilityRenderObject
3458
3459 Test: accessibility/table-with-aria-role.html
3460
3461 * page/AccessibilityTable.cpp:
3462 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
3463 (WebCore::AccessibilityTable::addChildren):
3464 (WebCore::AccessibilityTable::roleValue):
3465 (WebCore::AccessibilityTable::accessibilityIsIgnored):
3466 (WebCore::AccessibilityTable::title):
3467 * page/AccessibilityTableCell.cpp:
3468 (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
3469 (WebCore::AccessibilityTableCell::isTableCell):
3470 (WebCore::AccessibilityTableCell::roleValue):
3471 * page/AccessibilityTableCell.h:
3472 * page/AccessibilityTableRow.cpp:
3473 (WebCore::AccessibilityTableRow::roleValue):
3474 (WebCore::AccessibilityTableRow::isTableRow):
3475 (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
3476 * page/AccessibilityTableRow.h:
3477
sfalken@apple.coma96c5d32008-09-18 22:29:34 +000034782008-09-18 Steve Falkenburg <sfalken@apple.com>
3479
3480 Use higher-resolution timers on all variants of Windows.
3481
3482 Reviewed by Darin Adler.
3483
3484 * platform/win/SharedTimerWin.cpp:
3485 (WebCore::setSharedTimerFireTime):
3486
3487
hyatt@apple.comb7d49b62008-09-18 22:21:25 +000034882008-09-18 David Hyatt <hyatt@apple.com>
3489
3490 Make containingWindow() and setContainingWindow() cross-platform.
3491 Add a root() function cross-platform so Qt doesn't have to
3492 define its own.
3493
3494 Reviewed by Darin Adler
3495
3496 * platform/Widget.cpp:
3497 (WebCore::Widget::root):
3498 * platform/Widget.h:
3499 (WebCore::Widget::setContainingWindow):
3500 * platform/gtk/WidgetGtk.cpp:
3501 (WebCore::Widget::Widget):
3502 (WebCore::Widget::containingWindow):
3503 * platform/mac/ScrollViewMac.mm:
3504 (WebCore::ScrollView::addChild):
3505 (WebCore::ScrollView::removeChild):
3506 * platform/mac/WidgetMac.mm:
3507 (WebCore::Widget::containingWindow):
3508 * platform/qt/WidgetQt.cpp:
3509 (WebCore::Widget::invalidateRect):
3510 (WebCore::Widget::containingWindow):
3511 * platform/win/WidgetWin.cpp:
3512 (WebCore::Widget::Widget):
3513 (WebCore::Widget::~Widget):
3514 (WebCore::Widget::containingWindow):
3515
bdakin@apple.comfa1ce162008-09-18 22:18:01 +000035162008-09-18 Beth Dakin <bdakin@apple.com>
3517
3518 Reviewed by Dave Hyatt.
3519
3520 Fix for https://bugs.webkit.org/show_bug.cgi?id=20515 Crash upon
3521 parsing CSS: unicode-range: searchfield-cancel-buttonpt=-webkit-
3522 dashboard-region=
3523 and corresponding: <rdar://problem/6174100>
3524
3525 This patch makes CSSParserValue::createCSSValue handle unknown
3526 identifiers.
3527
3528 * css/CSSParserValues.cpp:
3529 (WebCore::CSSParserValue::createCSSValue): If we have an identifier
3530 with no id (an unknown identifier) create a CSSPrimitiveValue of
3531 type CSS_PARSER_IDENTIFIER
3532 * css/CSSPrimitiveValue.cpp:
3533 (WebCore::CSSPrimitiveValue::cssText):
3534 (WebCore::CSSPrimitiveValue::parserValue):
3535 * css/CSSPrimitiveValue.h:
3536 (WebCore::CSSPrimitiveValue::):
3537
weinig@apple.comfce49be2008-09-18 21:46:14 +000035382008-09-18 Sam Weinig <sam@webkit.org>
3539
3540 Rubber-stamped by David "I'd prefer not" Hyatt.
3541
3542 More the remaining class out of RenderStyle.h/cpp
3543
3544 * GNUmakefile.am:
3545 * WebCore.pro:
3546 * WebCore.vcproj/WebCore.vcproj:
3547 * WebCore.xcodeproj/project.pbxproj:
3548 * WebCoreSources.bkl:
3549 * rendering/style/CursorData.h: Copied from rendering/style/RenderStyle.h.
3550 (WebCore::CursorData::CursorData):
3551 (WebCore::CursorData::operator==):
3552 (WebCore::CursorData::operator!=):
3553 * rendering/style/CursorList.h: Copied from rendering/style/RenderStyle.h.
3554 (WebCore::CursorList::operator[]):
3555 (WebCore::CursorList::CursorList):
3556 * rendering/style/RenderStyle.cpp:
3557 * rendering/style/RenderStyle.h:
3558 (WebCore::RenderStyle::deref):
3559 (WebCore::RenderStyle::hasOneRef):
3560 (WebCore::RenderStyle::InheritedFlags::operator!=):
3561 (WebCore::RenderStyle::NonInheritedFlags::operator!=):
3562 (WebCore::RenderStyle::hasBackground):
3563 (WebCore::RenderStyle::outlineWidth):
3564 (WebCore::RenderStyle::autoWrap):
3565 (WebCore::RenderStyle::preserveNewline):
3566 (WebCore::RenderStyle::collapseWhiteSpace):
3567 (WebCore::RenderStyle::isCollapsibleWhiteSpace):
3568 (WebCore::RenderStyle::breakOnlyAfterWhiteSpace):
3569 (WebCore::RenderStyle::breakWords):
3570 (WebCore::RenderStyle::outlineOffset):
3571 (WebCore::RenderStyle::setLeft):
3572 (WebCore::RenderStyle::setRight):
3573 (WebCore::RenderStyle::setTop):
3574 (WebCore::RenderStyle::setBottom):
3575 (WebCore::RenderStyle::setDashboardRegion):
3576 (WebCore::RenderStyle::setBackgroundColor):
3577 (WebCore::RenderStyle::setBorderImage):
3578 (WebCore::RenderStyle::setBorderRadius):
3579 (WebCore::RenderStyle::setFontDescription):
3580 (WebCore::RenderStyle::adjustBackgroundLayers):
3581 (WebCore::RenderStyle::adjustMaskLayers):
3582 (WebCore::RenderStyle::deleteBindingURIs):
3583 (WebCore::RenderStyle::inheritBindingURIs):
3584 (WebCore::RenderStyle::isDisplayReplacedType):
3585 (WebCore::RenderStyle::isDisplayInlineType):
3586 (WebCore::RenderStyle::isOriginalDisplayInlineType):
3587 * rendering/style/StyleInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
3588 * rendering/style/StyleInheritedData.h: Copied from rendering/style/RenderStyle.h.
3589 (WebCore::StyleInheritedData::operator!=):
3590 * rendering/style/StyleRareInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
3591 * rendering/style/StyleRareInheritedData.h: Copied from rendering/style/RenderStyle.h.
3592 (WebCore::StyleRareInheritedData::operator!=):
3593 * rendering/style/StyleRareNonInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
3594 * rendering/style/StyleRareNonInheritedData.h: Copied from rendering/style/RenderStyle.h.
3595 * rendering/style/StyleReflection.h: Copied from rendering/style/RenderStyle.h.
3596
hyatt@apple.com643534d2008-09-18 20:09:41 +000035972008-09-18 David Hyatt <hyatt@apple.com>
3598
hyatt@apple.comd23089a2008-09-18 20:24:16 +00003599 Move the concept of suppression invalidation on Widgets to Scrollbar
3600 instead. Since this is only used by Scrollbars, there is no need for
3601 it to be on Widget.
3602
3603 Reviewed by Sam Weinig
3604
3605 * platform/Scrollbar.cpp:
3606 (WebCore::Scrollbar::Scrollbar):
3607 (WebCore::Scrollbar::invalidateRect):
3608 * platform/Scrollbar.h:
3609 (WebCore::Scrollbar::suppressInvalidation):
3610 (WebCore::Scrollbar::setSuppressInvalidation):
3611 * platform/Widget.h:
3612 * platform/gtk/WidgetGtk.cpp:
3613 (WebCore::Widget::Widget):
3614 (WebCore::Widget::invalidateRect):
3615 * platform/qt/WidgetQt.cpp:
3616 (WebCore::WidgetPrivate::WidgetPrivate):
3617 (WebCore::Widget::invalidateRect):
3618 * platform/win/WidgetWin.cpp:
3619 (WebCore::Widget::Widget):
3620 (WebCore::Widget::invalidateRect):
3621
36222008-09-18 David Hyatt <hyatt@apple.com>
3623
hyatt@apple.com643534d2008-09-18 20:09:41 +00003624 Make invalidate() on Widget non-virtual and make it just call
3625 invalidateRect() on the boundsGeometry() of the Widget.
3626
3627 Reviewed by Dan Bernstein
3628
3629 * platform/Widget.h:
3630 (WebCore::Widget::boundsGeometry):
3631 (WebCore::Widget::invalidate):
3632 * platform/gtk/WidgetGtk.cpp:
3633 * platform/mac/WidgetMac.mm:
3634 * platform/qt/WidgetQt.cpp:
3635 * platform/win/WidgetWin.cpp:
3636 * platform/wx/WidgetWx.cpp:
3637
weinig@apple.comcaf2df42008-09-18 19:40:24 +000036382008-09-18 Sam Weinig <sam@webkit.org>
3639
3640 Rubber-stamped in exile by David Hyatt.
3641
3642 Split Animation, AnimationList, BindingURI, ContentData, CounterContent,
3643 KeyframeList, ShadowData, StyleFlexibleBoxData and TimingFunction out of
3644 RenderStyle.h/cpp
3645
3646 * GNUmakefile.am:
3647 * WebCore.pro:
3648 * WebCore.vcproj/WebCore.vcproj:
3649 * WebCore.xcodeproj/project.pbxproj:
3650 * WebCoreSources.bkl:
3651 * css/CSSStyleSelector.cpp:
3652 * css/CSSStyleSelector.h:
3653 * page/animation/CompositeAnimation.cpp:
3654 * page/animation/KeyframeAnimation.cpp:
3655 * page/animation/KeyframeAnimation.h:
3656 * rendering/RenderCounter.h:
3657 * rendering/style/Animation.cpp: Copied from rendering/style/RenderStyle.cpp.
3658 (WebCore::Animation::~Animation):
3659 (WebCore::Animation::animationsMatch):
3660 (WebCore::Animation::keyframeList):
3661 (WebCore::Animation::setAnimationKeyframe):
3662 * rendering/style/Animation.h: Copied from rendering/style/RenderStyle.h.
3663 * rendering/style/AnimationList.cpp: Copied from rendering/style/RenderStyle.cpp.
3664 * rendering/style/AnimationList.h: Copied from rendering/style/RenderStyle.h.
3665 * rendering/style/BindingURI.cpp: Copied from rendering/style/RenderStyle.cpp.
3666 * rendering/style/BindingURI.h: Copied from rendering/style/RenderStyle.h.
3667 (WebCore::BindingURI::operator!=):
3668 * rendering/style/ContentData.cpp: Copied from rendering/style/RenderStyle.cpp.
3669 * rendering/style/ContentData.h: Copied from rendering/style/RenderStyle.h.
3670 (WebCore::ContentData::ContentData):
3671 (WebCore::ContentData::~ContentData):
3672 * rendering/style/CounterContent.h: Copied from rendering/style/RenderStyle.h.
3673 (WebCore::CounterContent::CounterContent):
3674 * rendering/style/CounterDirectives.cpp: Copied from rendering/style/RenderStyle.cpp.
3675 * rendering/style/CounterDirectives.h: Copied from rendering/style/RenderStyle.h.
3676 (WebCore::CounterDirectives::CounterDirectives):
3677 * rendering/style/KeyframeList.cpp: Copied from rendering/style/RenderStyle.cpp.
3678 (WebCore::KeyframeList::insert):
3679 * rendering/style/KeyframeList.h: Copied from rendering/style/RenderStyle.h.
3680 (WebCore::KeyframeValue::KeyframeValue):
3681 (WebCore::KeyframeList::create):
3682 (WebCore::KeyframeList::KeyframeList):
3683 * rendering/style/RenderStyle.cpp:
3684 * rendering/style/RenderStyle.h:
3685 * rendering/style/ShadowData.cpp: Copied from rendering/style/RenderStyle.cpp.
3686 * rendering/style/ShadowData.h: Copied from rendering/style/RenderStyle.h.
3687 (WebCore::ShadowData::ShadowData):
3688 (WebCore::ShadowData::~ShadowData):
3689 (WebCore::ShadowData::operator!=):
3690 * rendering/style/StyleFlexibleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
3691 * rendering/style/StyleFlexibleBoxData.h: Copied from rendering/style/RenderStyle.h.
3692 (WebCore::StyleFlexibleBoxData::operator!=):
3693 * rendering/style/TimingFunction.h: Copied from rendering/style/RenderStyle.h.
3694 (WebCore::TimingFunction::TimingFunction):
3695 (WebCore::TimingFunction::operator==):
3696
adele@apple.com5b2b5da2008-09-18 18:49:44 +000036972008-09-18 Adele Peterson <adele@apple.com>
3698
3699 Reviewed by Dan Bernstein.
3700
3701 Fix RenderStyle leaks.
3702
3703 * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::createSubtreeIfNeeded):
3704
kmccullough@apple.comd4089752008-09-18 17:21:49 +000037052008-09-18 Kevin McCullough <kmccullough@apple.com>
3706
kmccullough@apple.com76c708f2008-09-18 18:03:23 +00003707 Accidentally checked in code.
3708
3709 * html/HTMLElementFactory.cpp:
3710 (WebCore::frameConstructor):
3711 (WebCore::iframeConstructor):
3712
37132008-09-18 Kevin McCullough <kmccullough@apple.com>
3714
kmccullough@apple.comd4089752008-09-18 17:21:49 +00003715 Reviewed by Tim.
3716
3717 <rdar://problem/5722310> gracefully handle too many console messages
3718 (20904)
3719 - Keep track of the most previous message and then compare it to the
3720 subsequent messages as they come in. If there are multiple of the same
3721 message create a count that indicates the current number.
3722
3723 * manual-tests/inspector/multiple-console-messages.html: Added.
3724 * page/inspector/Console.js:
3725 * page/inspector/inspector.css:
3726
alp@webkit.org18a1fbc2008-09-18 11:50:26 +000037272008-09-18 Jonathon Jongsma <jonathon@quotidian.org>
3728
3729 Reviewed by Alp Toker
3730
3731 https://bugs.webkit.org/show_bug.cgi?id=20830
3732 [GTK] Don't use deprecated pango API
3733
3734 Replace deprecated pango functions with non-deprecated ones for newer
3735 versions of pango
3736
3737 * platform/graphics/gtk/FontGtk.cpp:
3738 (WebCore::getDefaultPangoLayout):
3739 * platform/graphics/gtk/FontPlatformDataPango.cpp:
3740 (WebCore::FontPlatformData::FontPlatformData):
3741
alp@webkit.org2154ef22008-09-18 08:10:49 +000037422008-09-18 Alp Toker <alp@nuanti.com>
3743
3744 Build fix for r36587. Add new sources (and sort the lists).
3745
3746 * GNUmakefile.am:
3747
weinig@apple.com3a98b2a2008-09-18 05:51:35 +000037482008-09-17 Sam Weinig <sam@webkit.org>
3749
3750 Fix Windows build.
3751
3752 * WebCore.vcproj/WebCore.vcproj:
3753
hyatt@apple.comb3699722008-09-18 05:10:03 +000037542008-09-17 David Hyatt <hyatt@apple.com>
3755
3756 Switch back to having frameGeometry be virtual in order to keep Mac
3757 the way it used to be.
3758
3759 Reviewed by Sam Weinig
3760
3761 * WebCore.base.exp:
3762 * platform/Widget.cpp:
3763 (WebCore::Widget::setParent):
3764 * platform/Widget.h:
3765 * platform/gtk/WidgetGtk.cpp:
3766 (WebCore::Widget::frameGeometry):
3767 (WebCore::Widget::setFrameGeometry):
3768 * platform/mac/WidgetMac.mm:
3769 (WebCore::Widget::frameGeometry):
3770 (WebCore::Widget::setFrameGeometry):
3771 * platform/qt/WidgetQt.cpp:
3772 (WebCore::Widget::frameGeometry):
3773 (WebCore::Widget::setFrameGeometry):
3774 * platform/win/WidgetWin.cpp:
3775 (WebCore::Widget::frameGeometry):
3776 (WebCore::Widget::setFrameGeometry):
3777 * platform/wx/WidgetWx.cpp:
3778 (WebCore::Widget::frameGeometry):
3779 (WebCore::Widget::setFrameGeometry):
3780 * plugins/PluginView.cpp:
3781 (WebCore::PluginView::setFrameGeometry):
3782 (WebCore::PluginView::geometryChanged):
3783 * plugins/PluginView.h:
3784 * plugins/gtk/PluginViewGtk.cpp:
3785 (WebCore::PluginView::updatePluginWidget):
3786 * plugins/qt/PluginViewQt.cpp:
3787 (WebCore::PluginView::updatePluginWidget):
3788 * plugins/win/PluginViewWin.cpp:
3789 (WebCore::PluginView::updatePluginWidget):
3790
weinig@apple.com00f4d5c2008-09-18 03:23:08 +000037912008-09-17 Sam Weinig <sam@webkit.org>
3792
weinig@apple.com4fd54cd2008-09-18 05:03:21 +00003793 Reviewed by Mark Rowe.
3794
3795 Fix assertion in DOMWindow::adjustWindowRect where we were passing
3796 in garbage values and were getting lucky that they were a not Nan.
3797
3798 * bindings/js/JSDOMWindowBase.cpp:
3799 (WebCore::windowProtoFuncOpen):
3800
38012008-09-17 Sam Weinig <sam@webkit.org>
3802
weinig@apple.com95b14762008-09-18 04:28:40 +00003803 Fix gtk build.
3804
3805 * rendering/style/MatrixTransformOperation.cpp:
3806
38072008-09-17 Sam Weinig <sam@webkit.org>
3808
weinig@apple.com00f4d5c2008-09-18 03:23:08 +00003809 Rubber-stamped with love by David Hyatt.
3810
3811 Split IdentityTransformOperation, MatrixTransformOperation, RotateTransformOperation,
3812 ScaleTransformOperation, SkewTransformOperation, StyleTransformData, TransformOperation,
3813 TransformOperations and TranslateTransformOperation out of RenderStyle.h/cpp
3814
3815 * GNUmakefile.am:
3816 * WebCore.pro:
3817 * WebCore.vcproj/WebCore.vcproj:
3818 * WebCore.xcodeproj/project.pbxproj:
3819 * WebCoreSources.bkl:
3820 * css/CSSStyleSelector.cpp:
3821 * page/animation/AnimationBase.cpp:
3822 (WebCore::solveEpsilon):
3823 * rendering/RenderLayer.cpp:
3824 * rendering/style/IdentityTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3825 * rendering/style/MatrixTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3826 * rendering/style/MatrixTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3827 (WebCore::MatrixTransformOperation::MatrixTransformOperation):
3828 * rendering/style/RenderStyle.cpp:
3829 * rendering/style/RenderStyle.h:
3830 * rendering/style/RotateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3831 * rendering/style/RotateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3832 (WebCore::RotateTransformOperation::RotateTransformOperation):
3833 * rendering/style/ScaleTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3834 * rendering/style/ScaleTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3835 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
3836 * rendering/style/SkewTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3837 * rendering/style/SkewTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3838 (WebCore::SkewTransformOperation::SkewTransformOperation):
3839 * rendering/style/StyleTransformData.cpp: Copied from rendering/style/RenderStyle.cpp.
3840 * rendering/style/StyleTransformData.h: Copied from rendering/style/RenderStyle.h.
3841 (WebCore::StyleTransformData::operator!=):
3842 * rendering/style/TransformOperation.h: Copied from rendering/style/RenderStyle.h.
3843 (WebCore::TransformOperation::):
3844 * rendering/style/TransformOperations.cpp: Copied from rendering/style/RenderStyle.cpp.
3845 (WebCore::TransformOperations::TransformOperations):
3846 * rendering/style/TransformOperations.h: Copied from rendering/style/RenderStyle.h.
3847 (WebCore::TransformOperations::operator!=):
3848 * rendering/style/TranslateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3849 * rendering/style/TranslateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3850 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
3851
mrowe@apple.comdbfa8852008-09-18 02:59:20 +000038522008-09-17 Mark Rowe <mrowe@apple.com>
3853
3854 Build fix.
3855
3856 * rendering/style/StyleDashboardRegion.h: PlatformString.h rather than String.h.
3857
hyatt@apple.com76057b42008-09-18 02:48:46 +000038582008-09-17 David Hyatt <hyatt@apple.com>
3859
3860 (1) Inline a bunch of methods for accessing frame geometry.
3861 (2) Make sure frameGeometry() works even when you have no underlying
3862 native widget.
3863 (3) Cache a frame geometry rect cross-platform (even for widgets that
3864 have underlying native widgets.
3865 (4) PluginView's updateWindow call is now a virtual function on Widget.
3866
3867 Reviewed by Sam Weinig
3868
3869 * ChangeLog:
3870 * WebCore.base.exp:
3871 * platform/Widget.cpp:
3872 (WebCore::Widget::setFrameGeometry):
3873 * platform/Widget.h:
3874 (WebCore::Widget::x):
3875 (WebCore::Widget::y):
3876 (WebCore::Widget::width):
3877 (WebCore::Widget::height):
3878 (WebCore::Widget::size):
3879 (WebCore::Widget::pos):
3880 (WebCore::Widget::frameGeometry):
3881 (WebCore::Widget::resize):
3882 (WebCore::Widget::move):
3883 (WebCore::Widget::isFrameView):
3884 (WebCore::Widget::windowClipRect):
3885 * platform/mac/WidgetMac.mm:
3886 (WebCore::Widget::~Widget):
3887 (WebCore::Widget::updatePlatformWidgetFrameGeometry):
3888 * platform/win/WidgetWin.cpp:
3889 (WebCore::Widget::updatePlatformWidgetFrameGeometry):
3890 * plugins/PluginView.cpp:
3891 (WebCore::PluginView::setFrameGeometry):
3892 (WebCore::PluginView::geometryChanged):
3893 * plugins/PluginView.h:
3894 * plugins/gtk/PluginViewGtk.cpp:
3895 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
3896 * plugins/qt/PluginViewQt.cpp:
3897 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
3898 * plugins/win/PluginViewWin.cpp:
3899 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
3900 * plugins/wx/PluginViewWx.cpp:
3901
weinig@apple.coma812a3ce2008-09-18 01:46:26 +000039022008-09-17 Sam Weinig <sam@webkit.org>
3903
weinig@apple.comb4b66742008-09-18 02:47:55 +00003904 Reviewed by David "Waterman" Hyatt.
3905
3906 Fix a leak of NSViews in WidgetMac.mm.
3907
3908 * platform/mac/WidgetMac.mm:
3909 (WebCore::Widget::~Widget):
3910
39112008-09-17 Sam Weinig <sam@webkit.org>
3912
weinig@apple.coma812a3ce2008-09-18 01:46:26 +00003913 Rubber-stamped by David Waterman Hyatt.
3914
3915 Split FillLayer, StyleBackgroundData, StyleBoxData, StyleDashboardRegion, StyleMarqueeData
3916 StyleMultiColData and StyleVisualData out of RenderStyle.h/cpp
3917
3918 * GNUmakefile.am:
3919 * WebCore.pro:
3920 * WebCore.vcproj/WebCore.vcproj:
3921 * WebCore.xcodeproj/project.pbxproj:
3922 * WebCoreSources.bkl:
3923 * rendering/style/FillLayer.cpp: Copied from rendering/style/RenderStyle.cpp.
3924 * rendering/style/FillLayer.h: Copied from rendering/style/RenderStyle.h.
3925 (WebCore::FillLayer::operator!=):
3926 (WebCore::FillLayer::hasImage):
3927 (WebCore::FillLayer::hasFixedImage):
3928 * rendering/style/RenderStyle.cpp:
3929 * rendering/style/RenderStyle.h:
3930 * rendering/style/StyleBackgroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
3931 (WebCore::StyleBackgroundData::StyleBackgroundData):
3932 * rendering/style/StyleBackgroundData.h: Copied from rendering/style/RenderStyle.h.
3933 (WebCore::StyleBackgroundData::~StyleBackgroundData):
3934 (WebCore::StyleBackgroundData::operator!=):
3935 * rendering/style/StyleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
3936 * rendering/style/StyleBoxData.h: Copied from rendering/style/RenderStyle.h.
3937 (WebCore::StyleBoxData::operator!=):
3938 * rendering/style/StyleDashboardRegion.h: Copied from rendering/style/RenderStyle.h.
3939 (WebCore::StyleDashboardRegion::operator!=):
3940 * rendering/style/StyleMarqueeData.cpp: Copied from rendering/style/RenderStyle.cpp.
3941 * rendering/style/StyleMarqueeData.h: Copied from rendering/style/RenderStyle.h.
3942 (WebCore::StyleMarqueeData::operator!=):
3943 * rendering/style/StyleMultiColData.cpp: Copied from rendering/style/RenderStyle.cpp.
3944 * rendering/style/StyleMultiColData.h: Copied from rendering/style/RenderStyle.h.
3945 (WebCore::StyleMultiColData::operator!=):
3946 (WebCore::StyleMultiColData::ruleWidth):
3947 * rendering/style/StyleVisualData.cpp: Copied from rendering/style/RenderStyle.cpp.
3948 * rendering/style/StyleVisualData.h: Copied from rendering/style/RenderStyle.h.
3949 (WebCore::StyleVisualData::operator==):
3950
hyatt@apple.comb4f28b32008-09-18 00:39:36 +000039512008-09-17 David Hyatt <hyatt@apple.com>
3952
hyatt@apple.com3f19eac2008-09-18 00:56:04 +00003953 Remove WidgetClient from Widget.
3954
3955 Reviewed by Sam Weinig
3956
3957 * WebCore.xcodeproj/project.pbxproj:
3958 * platform/Widget.h:
3959 (WebCore::Widget::setClient):
3960 (WebCore::Widget::client):
3961 * platform/WidgetClient.h: Removed.
3962 * platform/gtk/WidgetGtk.cpp:
3963 * platform/mac/WidgetMac.mm:
3964 (WebCore::Widget::Widget):
3965 (WebCore::Widget::show):
3966 (WebCore::Widget::hide):
3967 * platform/qt/WidgetQt.cpp:
3968 (WebCore::WidgetPrivate::WidgetPrivate):
3969 * platform/win/WidgetWin.cpp:
3970 (WebCore::Widget::Widget):
3971 * platform/wx/WidgetWx.cpp:
3972 (WebCore::Widget::Widget):
3973
39742008-09-17 David Hyatt <hyatt@apple.com>
3975
hyatt@apple.comb4f28b32008-09-18 00:39:36 +00003976 Remove isEnabled/setEnabled from Widget. The concept of being enabled now
3977 only applies to Scrollbars so the method has been moved there and made
3978 cross-platform. Scrollbar subclasses that have a corresponding native
3979 widget can subclass setEnabled to change the enabled state of the native
3980 widget.
3981
3982 Reviewed by Sam Weinig & Darin Adler
3983
3984 * WebCore.base.exp:
3985 * platform/Scrollbar.cpp:
3986 (WebCore::Scrollbar::Scrollbar):
3987 * platform/Scrollbar.h:
3988 (WebCore::Scrollbar::enabled):
3989 (WebCore::Scrollbar::setEnabled):
3990 * platform/Widget.h:
3991 * platform/gtk/ScrollbarGtk.cpp:
3992 (ScrollbarGtk::setEnabled):
3993 * platform/gtk/ScrollbarGtk.h:
3994 * platform/gtk/WidgetGtk.cpp:
3995 * platform/mac/ScrollbarMac.h:
3996 * platform/mac/ScrollbarMac.mm:
3997 (WebCore::ScrollbarMac::scrollbarHit):
3998 (WebCore::ScrollbarMac::setEnabled):
3999 * platform/mac/WidgetMac.mm:
4000 * platform/qt/WidgetQt.cpp:
4001 (WebCore::WidgetPrivate::WidgetPrivate):
4002 * platform/win/WidgetWin.cpp:
4003 (WebCore::Widget::Widget):
4004 * platform/wx/WidgetWx.cpp:
4005
weinig@apple.com1ea40602008-09-17 23:56:27 +000040062008-09-17 Sam Weinig <sam@webkit.org>
4007
4008 Rubber-stamped by David Hyatt.
4009
4010 Split all RenderStyle enums into their own file.
4011
4012 * GNUmakefile.am:
4013 * WebCore.vcproj/WebCore.vcproj:
4014 * WebCore.xcodeproj/project.pbxproj:
4015 * rendering/style/BorderValue.h:
4016 * rendering/style/CollapsedBorderValue.h:
4017 * rendering/style/RenderStyle.h:
4018 * rendering/style/RenderStyleConstants.h: Copied from rendering/style/RenderStyle.h.
4019 (WebCore::):
4020 * rendering/style/StyleCachedImage.h:
4021 * rendering/style/StyleGeneratedImage.h:
4022 * rendering/style/StyleImage.h:
4023
sfalken@apple.combf270912008-09-17 23:53:17 +000040242008-09-17 Steve Falkenburg <sfalken@apple.com>
4025
4026 Add back isFrameView check to fix failed assertion during scroll bar teardown.
4027
4028 Reviewed by Dave Hyatt.
4029
4030 * platform/Scrollbar.cpp:
4031 (WebCore::Scrollbar::setParent):
4032
beidson@apple.com4398e482008-09-17 23:30:00 +000040332008-09-17 Brady Eidson <beidson@apple.com>
4034
4035 Reviewed by Mac build fix
4036
4037 * WebCore.xcodeproj/project.pbxproj: Send appropriate headers to WebKit
4038
sfalken@apple.com85cc1392008-09-17 23:28:13 +000040392008-09-17 Steve Falkenburg <sfalken@apple.com>
4040
4041 Fix build.
4042
4043 * platform/win/ScrollViewWin.cpp:
4044 (WebCore::ScrollView::setParentVisible):
4045 * plugins/win/PluginViewWin.cpp:
4046 (WebCore::PluginView::init):
4047
zecke@webkit.org2ba9a4e2008-09-17 23:25:10 +000040482008-09-17 Holger Hans Peter Freyther <zecke@selfish.org>
4049
4050 Reviewed by Simon.
4051
4052 [QtWebKit] Implement error handling in TextCodecQt::decode
4053 Use the QTextCodec parsing state to set the sawError out variable. This
4054 is needed to pass Test 70 of acid3. The test case for this bug is
4055 fast/encoding/invalid-xml.html that is now partially passed. To pass
4056 it completely the Qt text codecs need to be adjusted to have proper
4057 error handling.
4058
4059 * platform/text/qt/TextCodecQt.cpp:
4060 (WebCore::TextCodecQt::decode):
4061
weinig@apple.comf6f0f112008-09-17 23:03:16 +000040622008-09-17 Sam Weinig <sam@webkit.org>
4063
4064 Rubber-stamped by Dave Hyatt.
4065
4066 Split BorderData, BorderValue, CollapsedBorderValue, OutlineValue and StyleSurroundData
4067 out of RenderStyle.h/cpp
4068
4069 * GNUmakefile.am:
4070 * WebCore.pro:
4071 * WebCore.vcproj/WebCore.vcproj:
4072 * WebCore.xcodeproj/project.pbxproj:
4073 * WebCoreSources.bkl:
4074 * rendering/style/BorderData.h: Copied from rendering/style/RenderStyle.h.
4075 (WebCore::BorderData::hasBorderRadius):
4076 (WebCore::BorderData::borderLeftWidth):
4077 (WebCore::BorderData::borderRightWidth):
4078 (WebCore::BorderData::borderTopWidth):
4079 (WebCore::BorderData::borderBottomWidth):
4080 (WebCore::BorderData::operator!=):
4081 * rendering/style/BorderValue.h: Copied from rendering/style/RenderStyle.h.
4082 (WebCore::):
4083 (WebCore::BorderValue::BorderValue):
4084 (WebCore::BorderValue::nonZero):
4085 (WebCore::BorderValue::isTransparent):
4086 (WebCore::BorderValue::isVisible):
4087 * rendering/style/CollapsedBorderValue.h: Copied from rendering/style/RenderStyle.h.
4088 (WebCore::):
4089 (WebCore::CollapsedBorderValue::CollapsedBorderValue):
4090 (WebCore::CollapsedBorderValue::operator==):
4091 * rendering/style/OutlineValue.h: Copied from rendering/style/RenderStyle.h.
4092 (WebCore::OutlineValue::OutlineValue):
4093 * rendering/style/RenderStyle.cpp:
4094 * rendering/style/RenderStyle.h:
4095 * rendering/style/StyleSurroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
4096 * rendering/style/StyleSurroundData.h: Copied from rendering/style/RenderStyle.h.
4097 (WebCore::StyleSurroundData::operator!=):
4098
bdakin@apple.com06b97182008-09-17 23:00:29 +000040992008-09-17 Beth Dakin <bdakin@apple.com>
4100
4101 Reviewed by Darin Adler.
4102
4103 This is a better fix for: Invalid CSS code crashes Safari
4104 https://bugs.webkit.org/show_bug.cgi?id=20512
4105
4106 The spec indicates that the only valid input for a counter is a
4107 number or an identifier. So that is exactly what we allow.
4108
4109 * css/CSSParser.cpp:
4110 (WebCore::CSSParser::parseCounterContent):
4111
alp@webkit.org97ba9222008-09-17 22:16:26 +000041122008-09-17 Alp Toker <alp@nuanti.com>
4113
4114 GTK+ build fix. Adapt to use PlatformWidget functions.
4115
4116 * platform/gtk/ScrollViewGtk.cpp:
4117 (WebCore::ScrollViewScrollbar::geometryChanged):
4118 (WebCore::ScrollView::addChild):
4119 (WebCore::ScrollView::removeChild):
4120 * platform/gtk/ScrollbarGtk.cpp:
4121 (ScrollbarGtk::ScrollbarGtk):
4122 (ScrollbarGtk::~ScrollbarGtk):
4123 (ScrollbarGtk::geometryChanged):
4124
weinig@apple.com930ed392008-09-17 22:00:45 +000041252008-09-17 Sam Weinig <sam@webkit.org>
4126
4127 Reviewed by Adele Peterson.
4128
4129 Patch for <rdar://problem/6133884>
4130 Calling window.resizeTo() on a subframe shouldn't change the window size
4131
4132 Test: fast/dom/Window/window-resize-and-move-sub-frame.html
4133
4134 * page/DOMWindow.cpp:
4135 (WebCore::DOMWindow::moveBy):
4136 (WebCore::DOMWindow::moveTo):
4137 (WebCore::DOMWindow::resizeBy):
4138 (WebCore::DOMWindow::resizeTo):
4139
bdakin@apple.com8f952d82008-09-17 21:35:02 +000041402008-09-17 Beth Dakin <bdakin@apple.com>
4141
4142 Reviewed by Adam Roben.
4143
4144 Fix for https://bugs.webkit.org/show_bug.cgi?id=20512 Invalid CSS
4145 code crashes Safari
4146 and corresponding: <rdar://problem/6173832>
4147
4148 Reading through the spec, it seems like a function is not valid
4149 input for a counter. So this patch checks for that and bails in the
4150 case of invalid input.
4151
4152 * css/CSSParser.cpp:
4153 (WebCore::CSSParser::parseCounterContent):
4154
antti@apple.comb37d4052008-09-17 21:14:13 +000041552008-09-17 Greg Bolsinga <bolsinga@apple.com>
4156
4157 Reviewed by Antti Koivisto.
4158
4159 Fix <rdar://problem/6227089>
4160 Crash in WebCore::Frame::setNeedsReapplyStyles()
4161
4162 View is null checked elsewhere too.
4163
4164 * page/Frame.cpp:
4165 (WebCore::Frame::setNeedsReapplyStyles):
4166
hyatt@apple.com8e340252008-09-17 20:59:45 +000041672008-09-17 David Hyatt <hyatt@apple.com>
4168
4169 Make the notion of having a native widget backing a Widget cross-platform.
4170 The PlatformWidget abstraction (which already existed) is used for this.
4171 Windows = HWND
4172 Qt = QWidget
4173 Mac = NSView
4174 wx = wxWindow
4175 Gtk = GtkWidget
4176
4177 There are new cross-platform methods that replace all of the unique
4178 platform-specific methods.
4179 platformWidget()
4180 setPlatformWidget()
4181
4182 For plugins, on every platform except Qt on Windows, the plugin's native
4183 widget is now stored in the Widget base class. Since Qt on Windows uses
4184 HWNDs for plugins instead of QWidget, it is the only platform to keep the
4185 m_window variable in PluginView.
4186
4187 Reviewed by Sam Weinig
4188
4189 * WebCore.base.exp:
4190 * bindings/js/ScriptControllerMac.mm:
4191 (WebCore::ScriptController::createScriptInstanceForWidget):
4192 * page/mac/AccessibilityObjectWrapper.mm:
4193 (-[AccessibilityObjectWrapper attachmentView]):
4194 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
4195 * page/mac/EventHandlerMac.mm:
4196 (WebCore::EventHandler::passMouseDownEventToWidget):
4197 (WebCore::EventHandler::mouseDownViewIfStillGood):
4198 (WebCore::EventHandler::passWheelEventToWidget):
4199 (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):
4200 * platform/Widget.cpp:
4201 (WebCore::Widget::init):
4202 (WebCore::Widget::setParent):
4203 (WebCore::Widget::releasePlatformWidget):
4204 (WebCore::Widget::retainPlatformWidget):
4205 * platform/Widget.h:
4206 (WebCore::Widget::platformWidget):
4207 (WebCore::Widget::setPlatformWidget):
4208 * platform/gtk/WidgetGtk.cpp:
4209 (WebCore::Widget::Widget):
4210 (WebCore::Widget::setFocus):
4211 (WebCore::gdkDrawable):
4212 (WebCore::Widget::setCursor):
4213 (WebCore::Widget::show):
4214 (WebCore::Widget::hide):
4215 (WebCore::Widget::setEnabled):
4216 (WebCore::Widget::isEnabled):
4217 (WebCore::Widget::paint):
4218 * platform/mac/PlatformScreenMac.mm:
4219 (WebCore::screenRect):
4220 (WebCore::screenAvailableRect):
4221 * platform/mac/ScrollViewMac.mm:
4222 (WebCore::ScrollView::scrollView):
4223 (WebCore::ScrollView::update):
4224 (WebCore::ScrollView::inWindow):
4225 * platform/mac/ScrollbarMac.mm:
4226 (WebCore::ScrollbarMac::ScrollbarMac):
4227 (WebCore::ScrollbarMac::~ScrollbarMac):
4228 (WebCore::ScrollbarMac::updateThumbPosition):
4229 (WebCore::ScrollbarMac::updateThumbProportion):
4230 (WebCore::ScrollbarMac::scrollbarHit):
4231 * platform/mac/WidgetMac.mm:
4232 (WebCore::Widget::Widget):
4233 (WebCore::Widget::setEnabled):
4234 (WebCore::Widget::isEnabled):
4235 (WebCore::Widget::setFocus):
4236 (WebCore::Widget::getOuterView):
4237 (WebCore::Widget::paint):
4238 (WebCore::Widget::invalidate):
4239 (WebCore::Widget::invalidateRect):
4240 (WebCore::Widget::setIsSelected):
4241 (WebCore::Widget::releasePlatformWidget):
4242 (WebCore::Widget::retainPlatformWidget):
4243 * platform/qt/WidgetQt.cpp:
4244 (WebCore::WidgetPrivate::WidgetPrivate):
4245 (WebCore::Widget::Widget):
4246 (WebCore::Widget::setFrameGeometry):
4247 (WebCore::Widget::show):
4248 (WebCore::Widget::hide):
4249 (WebCore::Widget::isEnabled):
4250 (WebCore::Widget::setEnabled):
4251 (WebCore::Widget::invalidateRect):
4252 (WebCore::Widget::containingWindow):
4253 * platform/win/WidgetWin.cpp:
4254 (WebCore::Widget::Widget):
4255 * platform/wx/WidgetWx.cpp:
4256 (WebCore::Widget::Widget):
4257 (WebCore::Widget::frameGeometry):
4258 (WebCore::Widget::setFocus):
4259 (WebCore::Widget::setCursor):
4260 (WebCore::Widget::show):
4261 (WebCore::Widget::hide):
4262 (WebCore::Widget::setFrameGeometry):
4263 (WebCore::Widget::setEnabled):
4264 (WebCore::Widget::isEnabled):
4265 (WebCore::Widget::invalidate):
4266 (WebCore::Widget::invalidateRect):
4267 (WebCore::Widget::paint):
4268 * plugins/PluginView.cpp:
4269 (WebCore::PluginView::PluginView):
4270 * plugins/PluginView.h:
4271 (WebCore::PluginView::platformPluginWidget):
4272 * plugins/gtk/PluginViewGtk.cpp:
4273 (WebCore::PluginView::updateWindow):
4274 (WebCore::PluginView::setFocus):
4275 (WebCore::PluginView::show):
4276 (WebCore::PluginView::hide):
4277 (WebCore::PluginView::setParent):
4278 (WebCore::PluginView::setNPWindowRect):
4279 (WebCore::PluginView::setParentVisible):
4280 (WebCore::PluginView::getValue):
4281 (WebCore::PluginView::forceRedraw):
4282 (WebCore::PluginView::init):
4283 * plugins/qt/PluginViewQt.cpp:
4284 (WebCore::PluginView::updateWindow):
4285 (WebCore::PluginView::setFocus):
4286 (WebCore::PluginView::show):
4287 (WebCore::PluginView::hide):
4288 (WebCore::PluginView::setParent):
4289 (WebCore::PluginView::setNPWindowRect):
4290 (WebCore::PluginView::setParentVisible):
4291 (WebCore::PluginView::getValue):
4292 (WebCore::PluginView::~PluginView):
4293 (WebCore::PluginView::init):
4294 * plugins/win/PluginViewWin.cpp:
4295 (WebCore::PluginView::updateWindow):
4296 (WebCore::PluginView::setFocus):
4297 (WebCore::PluginView::show):
4298 (WebCore::PluginView::hide):
4299 (WebCore::PluginView::paint):
4300 (WebCore::PluginView::setParent):
4301 (WebCore::PluginView::setParentVisible):
4302 (WebCore::PluginView::setNPWindowRect):
4303 (WebCore::PluginView::stop):
4304 (WebCore::PluginView::invalidateRect):
4305 (WebCore::PluginView::forceRedraw):
4306 (WebCore::PluginView::~PluginView):
4307 (WebCore::PluginView::init):
4308
weinig@apple.comf713d132008-09-17 20:16:48 +000043092008-09-17 Sam Weinig <sam@webkit.org>
4310
4311 Fix assert.
4312
4313 * platform/Widget.cpp:
4314 (WebCore::Widget::setParent):
4315
hyatt@apple.comd9242e32008-09-17 18:46:31 +000043162008-09-17 David Hyatt <hyatt@apple.com>
4317
4318 Beginnings of Widget refactoring (in order to make the mixing of
4319 widgets with and without corresponding native widgets more cross-platform).
4320
4321 This first patch makes the concept of a parent ScrollView cross-platform.
4322
4323 Note the similarity of the show/hide methods on the three PluginViews. This
4324 will be refactored better in a later patch so that they can all share
4325 a base class Widget show/hide method. For now the changes were made
4326 simply to be able to bring WidgetWin's setParent method up into Widget.
4327
4328 Reviewed by Sam Weinig
4329
4330 * WebCore.base.exp:
4331 * platform/ScrollView.h:
4332 * platform/Widget.cpp:
4333 (WebCore::Widget::init):
4334 (WebCore::Widget::setParent):
4335 * platform/Widget.h:
4336 (WebCore::Widget::isSelfVisible):
4337 (WebCore::Widget::isParentVisible):
4338 (WebCore::Widget::isVisible):
4339 (WebCore::Widget::setParentVisible):
4340 (WebCore::Widget::isPluginView):
4341 (WebCore::Widget::parent):
4342 (WebCore::Widget::handleEvent):
4343 (WebCore::Widget::geometryChanged):
4344 * platform/gtk/WidgetGtk.cpp:
4345 (WebCore::Widget::Widget):
4346 * platform/mac/ScrollViewMac.mm:
4347 (WebCore::ScrollView::addChild):
4348 (WebCore::ScrollView::removeChild):
4349 * platform/mac/ScrollbarMac.mm:
4350 (WebCore::ScrollbarMac::~ScrollbarMac):
4351 * platform/mac/WidgetMac.mm:
4352 (WebCore::Widget::Widget):
4353 (WebCore::Widget::~Widget):
4354 * platform/qt/WidgetQt.cpp:
4355 (WebCore::WidgetPrivate::WidgetPrivate):
4356 (WebCore::Widget::Widget):
4357 (WebCore::Widget::topLevel):
4358 * platform/win/ScrollViewWin.cpp:
4359 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
4360 (WebCore::ScrollView::setAncestorVisible):
4361 (WebCore::ScrollView::show):
4362 (WebCore::ScrollView::hide):
4363 * platform/win/WidgetWin.cpp:
4364 (WebCore::Widget::Widget):
4365 (WebCore::Widget::setParent):
4366 * platform/wx/WidgetWx.cpp:
4367 (WebCore::Widget::Widget):
4368 * plugins/PluginView.cpp:
4369 (WebCore::PluginView::PluginView):
4370 * plugins/PluginView.h:
4371 * plugins/gtk/PluginViewGtk.cpp:
4372 (WebCore::PluginView::show):
4373 (WebCore::PluginView::hide):
4374 (WebCore::PluginView::setParentVisible):
4375 * plugins/qt/PluginViewQt.cpp:
4376 (WebCore::PluginView::show):
4377 (WebCore::PluginView::hide):
4378 (WebCore::PluginView::setParentVisible):
4379 * plugins/win/PluginViewWin.cpp:
4380 (WebCore::PluginView::show):
4381 (WebCore::PluginView::hide):
4382 (WebCore::PluginView::setParentVisible):
4383
ap@webkit.org18da1a32008-09-17 16:50:22 +000043842008-09-17 Alexey Proskuryakov <ap@webkit.org>
4385
4386 Reviewed by Adam Roben.
4387
4388 <rdar://problem/6219577> Spew in console at launch about encoding mappings when running with ICU 4.0
4389
4390 * platform/text/TextCodecICU.cpp:
4391 (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated for new encoding names.
4392
vestbo@webkit.orge48e6362008-09-17 13:29:42 +000043932008-09-17 Tor Arne Vestbø <tavestbo@trolltech.com>
4394
4395 Fix the QtWebKit/Mac build
4396
4397 * platform/qt/ScrollViewQt.cpp: add include
4398
ap@webkit.org18da1a32008-09-17 16:50:22 +000043992008-09-17 David Hyatt <hyatt@apple.com>
hyatt@apple.com0f37fb52008-09-17 08:17:26 +00004400
4401 Add a #define to control whether or not to use an NSScroller on Mac.
4402 This ifdef will allow the new NSView-less NSScroller on Mac to be
4403 developed side by side with the current one.
4404
4405 The new scroller paints a debug red if turned on (although due to
4406 Widget issues you won't see anything paint yet).
4407
4408 Reviewed by olliej
4409
4410 * platform/Scrollbar.cpp:
4411 * platform/Scrollbar.h:
4412 * platform/mac/ScrollbarMac.h:
4413 * platform/mac/ScrollbarMac.mm:
4414 * platform/mac/ScrollbarThemeMac.cpp:
4415 (WebCore::ScrollbarThemeMac::paint):
4416 * platform/mac/ScrollbarThemeMac.h:
4417
alp@webkit.orgf06bac02008-09-17 04:30:12 +000044182008-09-16 Marco Barisione <marco.barisione@collabora.co.uk>
4419
4420 Reviewed by Alp Toker.
4421
4422 http://bugs.webkit.org/show_bug.cgi?id=20854
4423 [GTK] Windows can be not realized in ScrollView::update
4424
4425 Do not call gdk_window_invalidate_rect on a non-realized GtkWidget.
4426
4427 * platform/gtk/ScrollViewGtk.cpp:
4428 (WebCore::ScrollView::update):
4429
alp@webkit.org226f72a2008-09-17 04:22:02 +000044302008-09-16 Alp Toker <alp@nuanti.com>
4431
4432 Suggested by Dave Hyatt.
4433
4434 Build fix and cleanup. Rename ScrollBar to Scrollbar.
4435
4436 * GNUmakefile.am:
4437 * WebCore.pro:
4438 * WebCore.vcproj/WebCore.vcproj:
4439 * WebCore.xcodeproj/project.pbxproj:
4440 * WebCoreSources.bkl:
4441 * editing/EditorCommand.cpp:
4442 * page/EventHandler.cpp:
4443 * page/gtk/EventHandlerGtk.cpp:
4444 * page/mac/EventHandlerMac.mm:
4445 * page/mac/FrameMac.mm:
4446 * page/qt/EventHandlerQt.cpp:
4447 * page/wx/EventHandlerWx.cpp:
4448 * platform/PopupMenu.h:
4449 * platform/ScrollBar.cpp: Removed.
4450 * platform/ScrollBar.h: Removed.
4451 * platform/Scrollbar.cpp: Copied from WebCore/platform/ScrollBar.cpp.
4452 * platform/Scrollbar.h: Copied from WebCore/platform/ScrollBar.h.
4453 * platform/gtk/ScrollbarGtk.cpp:
4454 (ScrollbarGtk::ScrollbarGtk):
4455 * platform/gtk/ScrollbarGtk.h:
4456 * platform/mac/ScrollbarMac.h:
4457 * platform/qt/ScrollViewQt.cpp:
4458 * platform/qt/ScrollbarQt.cpp:
4459 * platform/qt/ScrollbarThemeQt.cpp:
4460 * platform/win/PlatformScrollBar.h:
4461 * platform/win/PopupMenuWin.cpp:
4462 * platform/win/ScrollViewWin.cpp:
4463 * platform/win/ScrollbarThemeWin.cpp:
4464 * platform/wx/ScrollViewWx.cpp:
4465 * platform/wx/TemporaryLinkStubs.cpp:
4466 * rendering/HitTestResult.cpp:
4467 * rendering/RenderLayer.cpp:
4468 * rendering/RenderTextControl.cpp:
4469
hyatt@apple.com7597c172008-09-17 02:15:08 +000044702008-09-16 David Hyatt <hyatt@apple.com>
4471
hyatt@apple.comfde412d2008-09-17 03:49:48 +00004472 Fix Qt build bustage by making moveThumb a member of Scrollbar so that
4473 it can be called from ScrollbarQt.
4474
4475 * platform/ScrollBar.cpp:
4476 (WebCore::Scrollbar::moveThumb):
4477 (WebCore::Scrollbar::handleMouseMoveEvent):
4478 (WebCore::Scrollbar::handleMousePressEvent):
4479 * platform/ScrollBar.h:
4480 * platform/qt/ScrollViewQt.cpp:
4481 * platform/qt/ScrollbarQt.cpp:
4482 (WebCore::Scrollbar::handleContextMenuEvent):
4483
44842008-09-16 David Hyatt <hyatt@apple.com>
4485
hyatt@apple.com4e3b8602008-09-17 03:17:11 +00004486 Eliminate PlatformScrollbar. Mac and Gtk now have subclasses for their
4487 native-widget scrollbars (ScrollbarMac and ScrollbarGtk). Other platforms
4488 now just use Scrollbar.
4489
4490 Reviewed by Sam Weinig
4491
4492 * GNUmakefile.am:
4493 * WebCore.pro:
4494 * WebCore.vcproj/WebCore.vcproj:
4495 * WebCore.xcodeproj/project.pbxproj:
4496 * page/mac/FrameMac.mm:
4497 * platform/PopupMenu.h:
4498 (WebCore::PopupMenu::scrollbar):
4499 * platform/ScrollBar.cpp:
4500 (WebCore::createNativeScrollbar):
4501 * platform/ScrollBar.h:
4502 * platform/gtk/PlatformScrollBar.h: Removed.
4503 * platform/gtk/PlatformScrollBarGtk.cpp: Removed.
4504 * platform/gtk/ScrollbarGtk.cpp: Copied from platform/gtk/PlatformScrollBarGtk.cpp.
4505 (gtkScrollEventCallback):
4506 (ScrollbarGtk::ScrollbarGtk):
4507 (ScrollbarGtk::~ScrollbarGtk):
4508 (ScrollbarGtk::updateThumbPosition):
4509 (ScrollbarGtk::updateThumbProportion):
4510 (ScrollbarGtk::setFrameGeometry):
4511 (ScrollbarGtk::geometryChanged):
4512 (ScrollbarGtk::gtkValueChanged):
4513 * platform/gtk/ScrollbarGtk.h: Copied from platform/gtk/PlatformScrollBar.h.
4514 * platform/mac/PlatformScrollBar.h: Removed.
4515 * platform/mac/PlatformScrollBarMac.mm: Removed.
4516 * platform/mac/ScrollbarMac.h: Copied from platform/mac/PlatformScrollBar.h.
4517 * platform/mac/ScrollbarMac.mm: Copied from platform/mac/PlatformScrollBarMac.mm.
4518 (-[WebCoreScrollBar initWithScrollbarMac:]):
4519 (-[WebCoreScrollBar detachScrollbarMac]):
4520 (WebCore::Scrollbar::createNativeScrollbar):
4521 (WebCore::ScrollbarMac::ScrollbarMac):
4522 (WebCore::ScrollbarMac::~ScrollbarMac):
4523 (WebCore::ScrollbarMac::updateThumbPosition):
4524 (WebCore::ScrollbarMac::updateThumbProportion):
4525 (WebCore::ScrollbarMac::scrollbarHit):
4526 * platform/qt/PlatformScrollBar.h: Removed.
4527 * platform/qt/PlatformScrollBarQt.cpp: Removed.
4528 * platform/qt/ScrollbarQt.cpp: Copied from platform/qt/PlatformScrollBarQt.cpp.
4529 (WebCore::Scrollbar::handleContextMenuEvent):
4530 * rendering/HitTestResult.cpp:
4531 * rendering/RenderLayer.cpp:
4532 (WebCore::RenderLayer::createScrollbar):
4533 (WebCore::RenderLayer::destroyScrollbar):
4534 * rendering/RenderLayer.h:
4535 * rendering/RenderListBox.cpp:
4536 (WebCore::RenderListBox::~RenderListBox):
4537 (WebCore::RenderListBox::updateFromElement):
4538 (WebCore::RenderListBox::isPointInOverflowControl):
4539 * rendering/RenderObject.h:
4540 * rendering/RenderTextControl.cpp:
4541
45422008-09-16 David Hyatt <hyatt@apple.com>
4543
hyatt@apple.com7597c172008-09-17 02:15:08 +00004544 Make the scrollbar resizer-dodging logic cross-platform in the
4545 Scrollbar class.
4546
4547 Reviewed by Sam Weinig
4548
4549 * platform/ScrollBar.cpp:
4550 (WebCore::Scrollbar::setFrameGeometry):
4551 (WebCore::Scrollbar::setParent):
4552 (WebCore::Scrollbar::windowClipRect):
4553 * platform/ScrollBar.h:
4554 * platform/ScrollView.h:
4555 (WebCore::ScrollView::windowResizerRect):
4556 (WebCore::ScrollView::resizerOverlapsContent):
4557 (WebCore::ScrollView::adjustOverlappingScrollbarCount):
4558 * platform/Widget.h:
4559 (WebCore::Widget::setParent):
4560 * platform/mac/WidgetMac.mm:
4561 (WebCore::Widget::convertToContainingWindow):
4562 * platform/win/PlatformScrollBar.h:
4563 * platform/win/PlatformScrollBarWin.cpp:
4564
mitz@apple.com6d925202008-09-16 17:34:10 +000045652008-09-16 Dan Bernstein <mitz@apple.com>
4566
mitz@apple.comd9462a52008-09-16 17:40:20 +00004567 Reviewed by Darin Adler.
4568
4569 - fix https://bugs.webkit.org/show_bug.cgi?id=15129
4570 <rdar://problem/4644824> adding a new line with DOM does unnecessary additional repaint
4571
4572 Covered by fast/repaint/4776765.html
4573
4574 * rendering/RenderBlock.cpp:
4575 (WebCore::RenderBlock::layoutBlock): Avoid repainting this object if it
4576 did not have layout in the beginning.
4577 (WebCore::RenderBlock::layoutBlockChildren): If a child did not have
4578 layout in the beginning, repaint it in its new position, to compensate
4579 for the above (regardless of whether it "moved").
4580 * rendering/RenderObject.cpp:
4581 (WebCore::RenderObject::checkForRepaintDuringLayout): Added a comment
4582 about generalizing this fix in the future.
4583
45842008-09-16 Dan Bernstein <mitz@apple.com>
4585
mitz@apple.com6d925202008-09-16 17:34:10 +00004586 Reviewed by Dave Hyatt.
4587
4588 - fix https://bugs.webkit.org/show_bug.cgi?id=15384
4589 Div does not notice when grandparent changes height
4590
4591 Test: fast/block/basic/quirk-percent-height-grandchild.html
4592
4593 - fix https://bugs.webkit.org/show_bug.cgi?id=20714
4594 Resizing Gmail inbox vertically results in whitespace at the bottom of the window
4595
4596 Test: fast/replaced/percent-height-in-anonymous-block.html
4597
4598 Added a two-way mapping between boxes with percentage heights and
4599 their non-parent ancestors up to the one the height is computed relative
4600 to. In quirks mode (the first bug), this can be any number of containing
4601 block with auto height. In strict mode (the second bug) this can be
4602 the containing block of an anonymous block containing a replaced
4603 element.
4604
4605 * rendering/RenderBlock.cpp:
4606 (WebCore::RenderBlock::~RenderBlock): Added code to remove the all the
4607 mapping to/from this block to percentage-height descendants.
4608 (WebCore::RenderBlock::layoutBlockChildren): Added code to mark
4609 percentage-height descendants (and their containing block ancestry chain
4610 up to this block) for layout. This ensures that those descendants whose
4611 height depends on the height of this block (or an ancestor) are updated.
4612 (WebCore::RenderBlock::addPercentHeightDescendant): Added. Establishes
4613 a two-way mapping between this block and the given box.
4614 (WebCore::RenderBlock::removePercentHeightDescendant): Added. Removes
4615 all the mapping to/from this box.
4616 * rendering/RenderBlock.h:
4617 * rendering/RenderBox.cpp:
4618 (WebCore::RenderBox::setStyle): Added calls to
4619 removePercentHeightDescendant() when style changes and the box
4620 previously had a percentage height. An exception is when the style
4621 change does not require layout, in which case the box still has
4622 a percentage height and the mappings are valid. In all other cases,
4623 any required mappings will be (re-)established during layout.
4624 (WebCore::RenderBox::destroy): Added a call to
4625 removePercentHeightDescendant.
4626 (WebCore::RenderBox::calcPercentageHeight): Added code that, in quirks
4627 mode, if a higher-than-parent containing block is affecting the box's
4628 height, creates a mapping between the box and that block.
4629 (WebCore::RenderBox::calcReplacedHeightUsing): Changed to skip over
4630 anonymous containing blocks, if any, and when that happens, use
4631 addPercentHeightDescendant() to ensure that the non-anonymous block
4632 is aware of the dependent percent-height box.
4633
alp@webkit.org1dbd9a92008-09-16 16:59:18 +000046342008-09-16 Dirk Schulze <vbs85@gmx.de>
4635
4636 Reviewed by Oliver Hunt and Alp Toker.
4637
4638 Implemented toDataURL in Cairo. Only PNG support
4639 at the moment.
4640
4641 Qt, Cairo and wx require toDataURL implementations
4642 https://bugs.webkit.org/show_bug.cgi?id=17719
4643
4644 * platform/MIMETypeRegistry.cpp:
4645 (WebCore::initializeSupportedImageMIMETypesForEncoding):
4646 * platform/graphics/cairo/ImageBufferCairo.cpp:
4647 (WebCore::ImageBuffer::ImageBuffer):
4648 (WebCore::writeFunction):
4649 (WebCore::ImageBuffer::toDataURL):
4650
vestbo@webkit.org8963b3c2008-09-16 16:45:20 +000046512008-09-16 Tor Arne Vestbø <tavestbo@trolltech.com>
4652
4653 Reviewed by Simon.
4654
4655 Hide unused media element controls in the QtWebKit port
4656
4657 * platform/qt/html4-adjustments-qt.css
4658
hausmann@webkit.orgcd7a1292008-09-16 14:19:16 +000046592008-09-16 Ariya Hidayat <ariya.hidayat@trolltech.com>
4660
4661 Reviewed by Simon.
4662
4663 Fix compilation of the Qt scrollbar code.
4664
4665 * platform/qt/PlatformScrollBarQt.cpp:
4666 (WebCore::scPart):
4667 (WebCore::styleOptionSlider):
4668 (WebCore::thumbLength):
4669 (WebCore::pixelPosToRangeValue):
4670 (WebCore::PlatformScrollbar::handleContextMenuEvent):
4671
treat@webkit.orga35f6b62008-09-16 14:15:29 +000046722008-09-16 Adam Treat <treat@kde.org>
4673
4674 Reviewed by Anders Carlsson.
4675
4676 Prevent accesses off of the end of the buffer introduced in r36450
4677 and when checking for descriptions of mime. Also, coding style fix.
4678
4679 * plugins/qt/PluginPackageQt.cpp:
4680 (WebCore::PluginPackage::fetchInfo):
4681
rwlbuis@webkit.org8f675dd2008-09-16 11:12:52 +000046822008-09-15 Rob Buis <buis@kde.org>
4683
4684 Reviewed by Eric.
4685
4686 https://bugs.webkit.org/show_bug.cgi?id=20634
4687 SVG transform attribute is ignored by <use> in <clipPath>
4688
4689 Transform the paths with the local transform when part
4690 of a clip path.
4691
4692 Test: svg/custom/use-clipped-transform.svg
4693
4694 * svg/SVGClipPathElement.cpp:
4695 (WebCore::SVGClipPathElement::canvasResource):
4696 * svg/SVGStyledTransformableElement.cpp:
4697 (WebCore::SVGStyledTransformableElement::toClipPath):
4698 * svg/SVGStyledTransformableElement.h:
4699
hyatt@apple.com1cd4bcc2008-09-16 06:53:34 +000047002008-09-15 Dave Hyatt <hyatt@apple.com>
4701
4702 Convert Qt over to its ScrollbarTheme. Add cross-platform support for jumping the thumb location directly
4703 to a pressed location on the track (this is done with the middle mouse on Qt and with Shift-Click on Windows).
4704
4705 Reviewed by Sam Weinig
4706
4707 * platform/ScrollBar.cpp:
4708 (WebCore::thumbUnderMouse):
4709 (WebCore::Scrollbar::autoscrollPressedPart):
4710 (WebCore::Scrollbar::startTimerIfNeeded):
4711 (WebCore::moveThumb):
4712 (WebCore::Scrollbar::handleMouseMoveEvent):
4713 (WebCore::Scrollbar::handleMousePressEvent):
4714 * platform/ScrollBar.h:
4715 (WebCore::Scrollbar::pressedPos):
4716 (WebCore::Scrollbar::pixelStep):
4717 (WebCore::Scrollbar::setPressedPos):
4718 * platform/ScrollbarTheme.h:
4719 (WebCore::ScrollbarTheme::thumbPosition):
4720 (WebCore::ScrollbarTheme::thumbLength):
4721 (WebCore::ScrollbarTheme::trackPosition):
4722 (WebCore::ScrollbarTheme::trackLength):
4723 * platform/ScrollbarThemeComposite.cpp:
4724 (WebCore::ScrollbarThemeComposite::trackPosition):
4725 * platform/ScrollbarThemeComposite.h:
4726 * platform/qt/PlatformScrollBarQt.cpp:
4727 (WebCore::PlatformScrollbar::PlatformScrollbar):
4728 (WebCore::):
4729 * platform/qt/ScrollbarThemeQt.cpp:
4730 (WebCore::styleOptionSlider):
4731 (WebCore::ScrollbarThemeQt::hitTest):
4732 (WebCore::ScrollbarThemeQt::shouldCenterOnThumb):
4733 (WebCore::ScrollbarThemeQt::invalidatePart):
4734 (WebCore::ScrollbarThemeQt::thumbPosition):
4735 (WebCore::):
4736 * platform/qt/ScrollbarThemeQt.h:
4737 * platform/win/ScrollbarThemeSafari.cpp:
4738 (WebCore::ScrollbarThemeSafari::shouldCenterOnThumb):
4739 * platform/win/ScrollbarThemeSafari.h:
4740 * platform/win/ScrollbarThemeWin.cpp:
4741 (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
4742 * platform/win/ScrollbarThemeWin.h:
4743
dsmith@webkit.orgb3107b532008-09-16 06:14:22 +000047442008-09-15 David Smith <catfish.man@gmail.com>
4745
4746 Reviewed by Sam Weinig.
4747
4748 https://bugs.webkit.org/show_bug.cgi?id=20180
4749
4750 Cache the result of parsing the an+b expression in :nth-child(an+b). Roughly a 2x speedup for :nth-child on SlickSpeed.
4751
4752 * GNUmakefile.am: Add CSSNthSelector
4753 * WebCore.pro: Add CSSNthSelector
4754 * WebCore.vcproj/WebCore.vcproj: Add CSSNthSelector
4755 * WebCore.xcodeproj/project.pbxproj: Add CSSNthSelector
4756 * css/CSSGrammar.y: Create CSSNthSelectors instead of CSSSelectors for :nth-*
4757 * css/CSSNthSelector.cpp: Added.
4758 (WebCore::CSSNthSelector::parseNth): Moved from CSSStyleSelector and modified to cache
4759 (WebCore::CSSNthSelector::matchNth): Moved from CSSStyleSelector and modified to use the cache
4760 * css/CSSNthSelector.h: Added.
4761 (WebCore::CSSNthSelector::CSSNthSelector):
4762 (WebCore::CSSNthSelector::~CSSNthSelector):
4763 * css/CSSParser.cpp:
4764 (WebCore::CSSParser::createFloatingNthSelector):
4765 * css/CSSParser.h:
4766 * css/CSSSelector.h: Use the free bit here to store a flag for CSSNthSelector
4767 (WebCore::CSSSelector::CSSSelector):
4768 * css/CSSStyleSelector.cpp:
4769 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Take advantage of knowing that all :nth-* selectors are CSSNthSelectors
4770
pewtermoose@webkit.orgfb4d3fb2008-09-16 02:46:39 +000047712008-09-15 Matt Lilek <webkit@mattlilek.com>
4772
4773 Reviewed by Tim Hatcher.
4774
4775 Clean up some inspector JS callbacks to remove an extra return.
4776
4777 * page/InspectorController.cpp:
4778 (WebCore::hideDOMNodeHighlight):
4779 (WebCore::loaded):
4780 (WebCore::unloading):
4781 (WebCore::attach):
4782 (WebCore::detach):
4783 (WebCore::startDebuggingAndReloadInspectedPage):
4784 (WebCore::stopDebugging):
4785 (WebCore::debuggerAttached):
4786 (WebCore::pauseOnExceptions):
4787 (WebCore::pauseInDebugger):
4788 (WebCore::resumeDebugger):
4789 (WebCore::stepOverStatementInDebugger):
4790 (WebCore::stepIntoStatementInDebugger):
4791 (WebCore::stepOutOfFunctionInDebugger):
4792 (WebCore::isWindowVisible):
4793 (WebCore::closeWindow):
4794
hyatt@apple.com8e809932008-09-16 02:29:09 +000047952008-09-15 Dave Hyatt <hyatt@apple.com>
4796
4797 Completely switch Windows scrollbars over to ScrollbarTheme. The Aqua windows scrollbar and native scrollbar
4798 now share most of their code.
4799
4800 Also removing mini size scrollbar support, since it would have crashed Windows had it ever been used, and it
4801 also is never used in our code anyway.
4802
4803 Reviewed by Sam Weinig
4804
4805 * WebCore.vcproj/WebCore.vcproj:
4806 * platform/ScrollTypes.h:
4807 (WebCore::):
4808 * platform/ScrollbarThemeComposite.cpp:
4809 (WebCore::ScrollbarThemeComposite::splitTrack):
4810 (WebCore::ScrollbarThemeComposite::thumbLength):
4811 (WebCore::ScrollbarThemeComposite::minimumThumbLength):
4812 * platform/ScrollbarThemeComposite.h:
4813 * platform/mac/PlatformScrollBarMac.mm:
4814 (NSControlSizeForScrollBarControlSize):
4815 * platform/win/PlatformScrollBar.h:
4816 * platform/win/PlatformScrollBarSafari.cpp: Removed.
4817 * platform/win/PlatformScrollBarWin.cpp:
4818 (WebCore::PlatformScrollbar::PlatformScrollbar):
4819 * platform/win/ScrollbarThemeSafari.cpp:
4820 (WebCore::ScrollbarTheme::nativeTheme):
4821 (WebCore::):
4822 (WebCore::scrollbarControlStateFromThemeState):
4823 (WebCore::ScrollbarThemeSafari::hasButtons):
4824 (WebCore::ScrollbarThemeSafari::hasThumb):
4825 (WebCore::buttonRepaintRect):
4826 (WebCore::ScrollbarThemeSafari::backButtonRect):
4827 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
4828 (WebCore::trackRepaintRect):
4829 (WebCore::ScrollbarThemeSafari::trackRect):
4830 (WebCore::ScrollbarThemeSafari::minimumThumbLength):
4831 (WebCore::ScrollbarThemeSafari::paintTrack):
4832 (WebCore::ScrollbarThemeSafari::paintButton):
4833 (WebCore::ScrollbarThemeSafari::paintThumb):
4834 * platform/win/ScrollbarThemeSafari.h:
4835 * platform/win/ScrollbarThemeWin.cpp:
4836 * platform/win/ScrollbarThemeWin.h:
4837
cfleizach@apple.com0ce07032008-09-16 00:17:58 +000048382008-09-15 Chris Fleizach <cfleizach@apple.com>
4839
4840 Reviewed by Darin Adler, Beth Dakin
4841
4842 <rdar://problem/4003789> Expose lists as AXList
4843 <rdar://problem/5707399> VO: Definition lists not announced in Safari
4844
4845 Lists are now exposed through AX. On the mac (in SnowLeopard) they use two new subroles
4846 AXContentList for <ul>, <ol> and AXDefinitionList for <dl>
4847 Inside the definition list, each <dt> "term" has an accessibility description ("term"),
4848 as does each <dd> tag ("definition")
4849
4850 Test: accessibility/lists.html
4851
4852 * GNUmakefile.am:
4853 * WebCore.pro:
4854 * WebCore.vcproj/WebCore.vcproj:
4855 * WebCore.xcodeproj/project.pbxproj:
4856 * WebCoreSources.bkl:
4857 * page/AXObjectCache.cpp:
4858 * page/AccessibilityList.cpp: Added.
4859 * page/AccessibilityList.h: Added.
4860 * page/AccessibilityObject.h:
4861 * page/AccessibilityRenderObject.cpp:
4862 * page/AccessibilityTable.cpp:
4863 * page/mac/AccessibilityObjectWrapper.mm:
4864 * page/mac/WebCoreViewFactory.h:
4865 * platform/LocalizedStrings.h:
4866 * platform/mac/LocalizedStringsMac.mm:
4867 * platform/qt/Localizations.cpp:
4868
zimmermann@webkit.org8cc8ad02008-09-16 00:01:11 +000048692008-09-15 Nikolas Zimmermann <zimmermann@kde.org>
4870
4871 Reviewed by Eric.
4872
4873 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20865
4874 Prepare HTMLScriptElement & SVGScriptElement unification, and unification of event handling.
4875
4876 Several renames:
4877 dispatchHTMLEvent -> dispatchEventForType
4878 setHTMLEventListener -> setEventListenerForType
4879 getHTMLEventListener -> eventListenerForType
4880 removeHTMLEventListener -> removeEventListenerForType
4881 isHTMLEventListener -> isAttachedToEventTargetNode
4882 ...
4883
4884 Similar renames for the dispatch/get/set/*Window*Event functions.
4885 Kill JSSVGLazyEventListener and merge with JSLazyEventListener.
4886
4887 Most important change: Rename setHTMLEventListener to setEventListenerForTypeAndAttribute,
4888 as there exists a generic createEventListener() method now, taking care of JSLazyEventListener creation.
4889
4890 setHTMLEventListener() used createHTMLEventListener() before and was HTML specific.
4891 SVG is able to use the code as well now. This affects most files in html/.
4892
4893 No functional changes.
4894
4895 * GNUmakefile.am:
4896 * WebCore.pro:
4897 * WebCore.vcproj/WebCore.vcproj:
4898 * WebCore.xcodeproj/project.pbxproj:
4899 * bindings/js/JSDOMWindowBase.cpp:
4900 (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
4901 (WebCore::JSDOMWindowBase::setListener):
4902 (WebCore::JSDOMWindowBase::getListener):
4903 (WebCore::JSDOMWindowBase::findJSEventListener):
4904 (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
4905 (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
4906 (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
4907 (WebCore::JSDOMWindowBase::jsEventListenersAttachedToEventTargetNodes):
4908 (WebCore::JSDOMWindowBase::jsUnprotectedEventListenersAttachedToEventTargetNodes):
4909 * bindings/js/JSDOMWindowBase.h:
4910 * bindings/js/JSEventListener.cpp:
4911 (WebCore::JSAbstractEventListener::handleEvent):
4912 (WebCore::JSAbstractEventListener::isAttachedToEventTargetNode):
4913 (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
4914 (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
4915 (WebCore::JSEventListener::JSEventListener):
4916 (WebCore::JSEventListener::~JSEventListener):
4917 (WebCore::JSLazyEventListener::JSLazyEventListener):
4918 (WebCore::eventParameterName):
4919 (WebCore::JSLazyEventListener::parseCode):
4920 (WebCore::getNodeEventListener):
4921 * bindings/js/JSEventListener.h:
4922 (WebCore::JSAbstractEventListener::JSAbstractEventListener):
4923 (WebCore::JSUnprotectedEventListener::create):
4924 (WebCore::JSEventListener::create):
4925 (WebCore::JSLazyEventListener::):
4926 (WebCore::JSLazyEventListener::create):
4927 * bindings/js/JSEventTargetNode.cpp:
4928 (WebCore::JSEventTargetNode::setListener):
4929 (WebCore::JSEventTargetNode::getListener):
4930 * bindings/js/JSSVGLazyEventListener.cpp: Removed.
4931 * bindings/js/JSSVGLazyEventListener.h: Removed.
4932 * bindings/js/ScriptController.cpp:
4933 (WebCore::ScriptController::createHTMLEventHandler):
4934 (WebCore::ScriptController::createSVGEventHandler):
4935 * dom/Document.cpp:
4936 (WebCore::Document::setFocusedNode):
4937 (WebCore::Document::handleWindowEvent):
4938 (WebCore::Document::setWindowEventListenerForType):
4939 (WebCore::Document::windowEventListenerForType):
4940 (WebCore::Document::removeWindowEventListenerForType):
4941 (WebCore::Document::addWindowEventListener):
4942 (WebCore::Document::hasWindowEventListener):
4943 (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
4944 (WebCore::Document::createEventListener):
4945 (WebCore::Document::setWindowEventListenerForTypeAndAttribute):
4946 * dom/Document.h:
4947 * dom/EventListener.h:
4948 (WebCore::EventListener::isAttachedToEventTargetNode):
4949 * dom/EventTargetNode.cpp:
4950 (WebCore::EventTargetNode::dispatchFocusEvent):
4951 (WebCore::EventTargetNode::dispatchBlurEvent):
4952 (WebCore::EventTargetNode::dispatchEventForType):
4953 (WebCore::EventTargetNode::removeEventListenerForType):
4954 (WebCore::EventTargetNode::setEventListenerForType):
4955 (WebCore::EventTargetNode::setEventListenerForTypeAndAttribute):
4956 (WebCore::EventTargetNode::eventListenerForType):
4957 * dom/EventTargetNode.h:
4958 * dom/XMLTokenizer.cpp:
4959 (WebCore::XMLTokenizer::notifyFinished):
4960 * editing/ReplaceSelectionCommand.cpp:
4961 (WebCore::ReplacementFragment::ReplacementFragment):
4962 * html/HTMLBodyElement.cpp:
4963 (WebCore::HTMLBodyElement::parseMappedAttribute):
4964 * html/HTMLButtonElement.cpp:
4965 (WebCore::HTMLButtonElement::parseMappedAttribute):
4966 * html/HTMLElement.cpp:
4967 (WebCore::HTMLElement::parseMappedAttribute):
4968 (WebCore::HTMLElement::checkDTD):
4969 * html/HTMLElement.h:
4970 * html/HTMLFormControlElement.cpp:
4971 (WebCore::HTMLFormControlElement::onChange):
4972 * html/HTMLFormElement.cpp:
4973 (WebCore::HTMLFormElement::prepareSubmit):
4974 (WebCore::HTMLFormElement::reset):
4975 (WebCore::HTMLFormElement::parseMappedAttribute):
4976 * html/HTMLFrameElementBase.cpp:
4977 (WebCore::HTMLFrameElementBase::parseMappedAttribute):
4978 * html/HTMLFrameSetElement.cpp:
4979 (WebCore::HTMLFrameSetElement::parseMappedAttribute):
4980 * html/HTMLImageElement.cpp:
4981 (WebCore::HTMLImageElement::parseMappedAttribute):
4982 * html/HTMLImageLoader.cpp:
4983 (WebCore::HTMLImageLoader::dispatchLoadEvent):
4984 * html/HTMLInputElement.cpp:
4985 (WebCore::HTMLInputElement::parseMappedAttribute):
4986 (WebCore::HTMLInputElement::setValueFromRenderer):
4987 (WebCore::HTMLInputElement::onSearch):
4988 * html/HTMLMediaElement.cpp:
4989 (WebCore::HTMLMediaElement::asyncEventTimerFired):
4990 (WebCore::HTMLMediaElement::load):
4991 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
4992 (WebCore::HTMLMediaElement::setReadyState):
4993 (WebCore::HTMLMediaElement::seek):
4994 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
4995 (WebCore::HTMLMediaElement::willSaveToCache):
4996 * html/HTMLObjectElement.cpp:
4997 (WebCore::HTMLObjectElement::parseMappedAttribute):
4998 * html/HTMLScriptElement.cpp:
4999 (WebCore::HTMLScriptElement::parseMappedAttribute):
5000 (WebCore::HTMLScriptElement::dispatchLoadEvent):
5001 (WebCore::HTMLScriptElement::dispatchErrorEvent):
5002 * html/HTMLSelectElement.cpp:
5003 (WebCore::HTMLSelectElement::parseMappedAttribute):
5004 * html/HTMLTextAreaElement.cpp:
5005 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
5006 * html/HTMLTokenizer.cpp:
5007 (WebCore::HTMLTokenizer::notifyFinished):
5008 * page/AccessibilityRenderObject.cpp:
5009 (WebCore::AccessibilityRenderObject::mouseButtonListener):
5010 * page/EventHandler.cpp:
5011 (WebCore::EventHandler::canMouseDownStartSelect):
5012 (WebCore::EventHandler::canMouseDragExtendSelect):
5013 * page/Frame.cpp:
5014 (WebCore::Frame::sendScrollEvent):
5015 * page/Page.cpp:
5016 (WebCore::networkStateChanged):
5017 * rendering/RenderListBox.cpp:
5018 (WebCore::RenderListBox::valueChanged):
5019 * rendering/RenderTextControl.cpp:
5020 (WebCore::RenderTextControl::selectionChanged):
5021 * svg/SVGDocumentExtensions.cpp:
5022 * svg/SVGDocumentExtensions.h:
5023 * svg/SVGElement.cpp:
5024 (WebCore::SVGElement::parseMappedAttribute):
5025 (WebCore::SVGElement::finishParsingChildren):
5026 * svg/SVGElement.h:
5027 * svg/SVGSVGElement.cpp:
5028 (WebCore::SVGSVGElement::parseMappedAttribute):
5029 * svg/SVGSVGElement.h:
5030
hyatt@apple.com63739ce2008-09-15 23:44:10 +000050312008-09-15 Dave Hyatt <hyatt@apple.com>
5032
5033 Convert PlatformScrollbarWin to use ScrollbarTheme for hit testing. PlatformScrollbarQt/Gtk still
5034 need to be converted.
5035
5036 Reviewed by Sam Weinig
5037
5038 * platform/ScrollBar.cpp:
5039 (WebCore::Scrollbar::Scrollbar):
5040 (WebCore::Scrollbar::updateThumbPosition):
5041 (WebCore::Scrollbar::updateThumbProportion):
5042 (WebCore::Scrollbar::autoscrollPressedPart):
5043 (WebCore::Scrollbar::startTimerIfNeeded):
5044 * platform/ScrollBar.h:
5045 * platform/ScrollbarTheme.h:
5046 (WebCore::ScrollbarTheme::invalidateParts):
5047 * platform/ScrollbarThemeComposite.cpp:
5048 (WebCore::ScrollbarThemeComposite::hitTest):
5049 (WebCore::ScrollbarThemeComposite::invalidatePart):
5050 (WebCore::ScrollbarThemeComposite::thumbPosition):
5051 (WebCore::ScrollbarThemeComposite::thumbLength):
5052 (WebCore::ScrollbarThemeComposite::trackLength):
5053 * platform/ScrollbarThemeComposite.h:
5054 * platform/win/PlatformScrollBarSafari.cpp:
5055 (WebCore::PlatformScrollbar::PlatformScrollbar):
5056 * platform/win/PlatformScrollBarWin.cpp:
5057 (WebCore::PlatformScrollbar::PlatformScrollbar):
5058
dsmith@webkit.orgaa780ed2008-09-15 23:08:07 +000050592008-09-15 David Smith <catfish.man@gmail.com>
5060
5061 "Just do it"'d by Mark Rowe
5062
5063 https://bugs.webkit.org/show_bug.cgi?id=20856
5064 Add missing license header
5065
5066 * dom/NodeRenderStyle.h:
5067
dino@apple.combf52b682008-09-15 21:31:43 +000050682008-09-15 Dean Jackson <dino@apple.com>
5069
5070 Reviewed by Tim Hatcher.
5071
dino@apple.com3db0b8f2008-09-15 21:52:23 +00005072 Add default constructor for ShadowData
5073 https://bugs.webkit.org/show_bug.cgi?id=20757
5074
5075 Test: transitions/shadow.html
5076
5077 * rendering/style/RenderStyle.h:
5078
50792008-09-15 Dean Jackson <dino@apple.com>
5080
5081 Reviewed by Tim Hatcher.
5082
dino@apple.com03abdce2008-09-15 21:40:52 +00005083 RenderStyle should update keyframes.
5084 http://bugs.webkit.org/show_bug.cgi?id=20756
5085
5086 * rendering/style/RenderStyle.cpp:
5087 (WebCore::StyleRareNonInheritedData::updateKeyframes):
5088
50892008-09-15 Dean Jackson <dino@apple.com>
5090
5091 Reviewed by Tim Hatcher.
5092
dino@apple.combf52b682008-09-15 21:31:43 +00005093 Unnecessary ASSERT in ImplicitAnimation destructor.
5094 https://bugs.webkit.org/show_bug.cgi?id=20817
5095
5096 * page/animation/ImplicitAnimation.cpp:
5097 (WebCore::ImplicitAnimation::~ImplicitAnimation):
5098
treat@webkit.org7e5abc22008-09-15 20:53:49 +000050992008-09-15 Adam Treat <treat@kde.org>
5100
5101 Reviewed by Simon.
5102
5103 Fix plugin extension info. It was returning the mimetype where the
5104 extension was given.
5105
5106 * plugins/qt/PluginPackageQt.cpp:
5107 (WebCore::PluginPackage::fetchInfo):
5108
dino@apple.comecc18dc2008-09-15 20:40:28 +000051092008-09-15 Dean Jackson <dino@apple.com>
5110
5111 Reviewed by Tim Hatcher
5112
5113 Coding style violation!!!! Cleanup AnimationBase.cpp
5114
5115 * page/animation/AnimationBase.cpp:
5116 (WebCore::blendFunc):
5117
hyatt@apple.comf4a9d932008-09-15 20:03:25 +000051182008-09-15 David Hyatt <hyatt@apple.com>
5119
5120 Move all hit testing code for scrollbars into the base class. Refactor
5121 it to accommodate all platform-specific behaviors using virtual ScrollbarTheme
5122 functions.
5123
5124 No platform is using this code yet. Although it has been moved and compiles
5125 (even on Mac), it is not being used on any platform.
5126
5127 Reviewed by Sam Weinig
5128
5129 * platform/ScrollBar.cpp:
5130 (WebCore::Scrollbar::autoscrollPressedPart):
5131 (WebCore::Scrollbar::startTimerIfNeeded):
5132 (WebCore::Scrollbar::handleMouseMoveEvent):
5133 (WebCore::Scrollbar::handleMouseOutEvent):
5134 (WebCore::Scrollbar::handleMouseReleaseEvent):
5135 (WebCore::Scrollbar::handleMousePressEvent):
5136 * platform/ScrollBar.h:
5137 (WebCore::Scrollbar::handleContextMenuEvent):
5138 * platform/ScrollbarTheme.h:
5139 (WebCore::ScrollbarTheme::hitTest):
5140 (WebCore::ScrollbarTheme::invalidateOnMouseEnterExit):
5141 (WebCore::ScrollbarTheme::invalidatePart):
5142 (WebCore::ScrollbarTheme::shouldCenterOnThumb):
5143 (WebCore::ScrollbarTheme::centerOnThumb):
5144 (WebCore::ScrollbarTheme::thumbPosition):
5145 (WebCore::ScrollbarTheme::thumbLength):
5146 (WebCore::ScrollbarTheme::trackLength):
5147 (WebCore::ScrollbarTheme::initialAutoscrollTimerDelay):
5148 (WebCore::ScrollbarTheme::autoscrollTimerDelay):
5149 * platform/Widget.h:
5150 (WebCore::Widget::parent):
5151 * platform/mac/PlatformScrollBar.h:
5152 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
5153 (WebCore::PlatformScrollbar::handleMouseOutEvent):
5154 (WebCore::PlatformScrollbar::handleMousePressEvent):
5155 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
5156 * platform/mac/WidgetMac.mm:
5157 (WebCore::Widget::convertFromContainingWindow):
5158 * platform/win/ScrollbarThemeWin.cpp:
5159 (WebCore::ScrollbarThemeWin::invalidateOnMouseEnterExit):
5160 * platform/win/ScrollbarThemeWin.h:
5161
mitz@apple.comd17dc392008-09-15 18:48:20 +000051622008-09-15 Dan Bernstein <mitz@apple.com>
5163
5164 Reviewed by Sam Weinig.
5165
5166 - fix <rdar://problem/5842247> Single long breakable word takes O(n^2) to lay out
5167
5168 Cache the next breakable position for text nodes in InlineIterator.
5169
5170 * rendering/bidi.cpp:
5171 (WebCore::InlineIterator::InlineIterator):
5172 (WebCore::InlineIterator::increment):
5173 (WebCore::RenderBlock::findNextLineBreak):
5174
simon.fraser@apple.comda604642008-09-15 17:10:48 +000051752008-09-15 Simon Fraser <simon.fraser@apple.com>
5176
5177 Reviewed by Dan Bernstein
5178
5179 Fix assertion and integral pixel issue when creating subimages.
5180 https://bugs.webkit.org/show_bug.cgi?id=20786
5181
5182 * platform/graphics/cg/ImageCG.cpp:
5183 (WebCore::BitmapImage::draw):
5184
vestbo@webkit.orge7eda302008-09-15 12:43:37 +000051852008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
5186
5187 Reviewed by Simon.
5188
5189 Implment seek() and clean up and improve debugging output
5190
5191 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
5192 (debugMediaObject):
5193 (WebCore::MediaPlayerPrivate::seek):
5194 (WebCore::MediaPlayerPrivate::setVolume):
5195 (WebCore::MediaPlayerPrivate::setMuted):
5196 (WebCore::MediaPlayerPrivate::updateStates):
5197 (WebCore::MediaPlayerPrivate::naturalSize):
5198 (WebCore::MediaPlayerPrivate::paint):
5199 (WebCore::MediaPlayerPrivate::stateChanged):
5200 (WebCore::MediaPlayerPrivate::tick):
5201
vestbo@webkit.orgaba01e62008-09-15 11:40:22 +000052022008-09-15 Holger Hans Peter Freyther <zecke@selfish.org>
5203
5204 Reviewed by Simon.
5205
5206 Remove bogus Q_ASSERTs from the MediaPlayer Phonon implementation
5207
5208 m_mediaObject, m_audioOutput, m_videoWidget get created in the
5209 c'tor and will only be deleted in the c'tor. The Q_ASSERTs would
5210 only check if we use the MediaPlayerPrivate after it has been deleted.
5211
5212 Acked-by: Tor Arne Vestbø <tavestbo@trolltech.com>
5213
5214 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
5215 (WebCore::MediaPlayerPrivate::play):
5216 (WebCore::MediaPlayerPrivate::setVolume):
5217 (WebCore::MediaPlayerPrivate::updateStates):
5218
andersca@apple.com18d62682008-09-15 11:35:22 +000052192008-09-15 Anders Carlsson <andersca@apple.com>
5220
5221 Reviewed by Maciej.
5222
5223 <rdar://problem/6163988>
5224 https://bugs.webkit.org/show_bug.cgi?id=20457
5225 Canvas: createPattern crashes WebKit in WTF::RefPtr<WebCore::Image>::operator!() const + 9 with a 1D pattern
5226
5227 Check the width and height and throw an exception if any of them are 0.
5228
5229 * html/CanvasRenderingContext2D.cpp:
5230 (WebCore::CanvasRenderingContext2D::createPattern):
5231
vestbo@webkit.org3a27e182008-09-15 11:28:59 +000052322008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
5233
5234 Reviewed by Simon.
5235
5236 Render media element controls with antialiasing enabled
5237
5238 * platform/qt/RenderThemeQt.cpp:
5239 (WebCore::RenderThemeQt::paintMediaMuteButton):
5240 (WebCore::RenderThemeQt::paintMediaPlayButton):
5241 (WebCore::RenderThemeQt::paintMediaSliderTrack):
5242 (WebCore::RenderThemeQt::paintMediaSliderThumb):
5243
vestbo@webkit.org17e4bfc2008-09-15 11:27:25 +000052442008-09-15 Ariya Hidayat <ariya.hidayat@trolltech.com>
5245
5246 Reviewed by Simon.
5247
5248 Upon non fatal error, switch to the pause state (so that playback can continue)
5249
5250 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
5251 (WebCore::MediaPlayerPrivate::updateStates):
5252
vestbo@webkit.org12a59572008-09-15 11:16:13 +000052532008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
5254
5255 Reviewed by Simon.
5256
vestbo@webkit.org1d1f05e2008-09-15 11:22:05 +00005257 Don't set WTF_USE_JSC in WebCore.pro now that it's set in config.h
5258
5259 * WebCore.pro:
5260
52612008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
5262
5263 Reviewed by Simon.
5264
vestbo@webkit.org12a59572008-09-15 11:16:13 +00005265 Make QtInstance::create() private and fix caching
5266
5267 * bindings/js/ScriptControllerQt.cpp:
5268 (WebCore::ScriptController::createScriptInstanceForWidget):
5269 * bridge/qt/qt_instance.cpp:
5270 (JSC::Bindings::QtInstance::getQtInstance):
5271 (JSC::Bindings::QtInstance::getRuntimeObject):
5272 * bridge/qt/qt_instance.h:
5273 (JSC::Bindings::QtInstance::create):
5274 * bridge/qt/qt_runtime.cpp:
5275 (JSC::Bindings::convertQVariantToValue):
5276 (JSC::Bindings::QtConnectionObject::execute):
5277
dsmith@webkit.orgaba15862008-09-15 08:45:35 +000052782008-09-15 David Smith <catfish.man@gmail.com>
5279
5280 Reviewed by Dave Hyatt.
5281
5282 https://bugs.webkit.org/show_bug.cgi?id=20180
5283
5284 >2x speedup on querySelector[All] with :nth-child by removing the collectRulesOnly argument on SelectorChecker.
5285 With collectRulesOnly set to true (the default) an optimization is turned off, and no callers were intentionally leaving it true.
5286 querySelector[All] assumed that the default was probably the right way to go, and so ended up being slow.
5287
5288 * css/CSSStyleSelector.cpp:
5289 (WebCore::CSSStyleSelector::CSSStyleSelector):
5290 (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
5291 * css/CSSStyleSelector.h:
5292
hyatt@apple.com065494e2008-09-15 06:33:40 +000052932008-09-14 Dave Hyatt <hyatt@apple.com>
5294
5295 Refactor PlatformScrollbarWin's painting so that it is now done by ScrollbarThemeWin. PlatformScrollbarSafari
5296 is still painting itself (a subsequent patch will move its painting into ScrollbarThemeSafari).
5297
5298 Reviewed by Sam Weinig
5299
5300 * platform/ScrollBar.h:
5301 (WebCore::Scrollbar::client):
5302 (WebCore::Scrollbar::currentPos):
5303 (WebCore::Scrollbar::totalSize):
5304 * platform/ScrollbarTheme.h:
5305 * platform/ScrollbarThemeComposite.cpp:
5306 (WebCore::pageForScrollView):
5307 (WebCore::ScrollbarThemeComposite::paint):
5308 * platform/ScrollbarThemeComposite.h:
5309 (WebCore::ScrollbarThemeComposite::trackIsSinglePiece):
5310 * platform/win/PlatformScrollBar.h:
5311 * platform/win/PlatformScrollBarSafari.cpp:
5312 * platform/win/PlatformScrollBarWin.cpp:
5313 * platform/win/ScrollbarThemeSafari.h:
5314 (WebCore::ScrollbarThemeSafari::hasButtons):
5315 (WebCore::ScrollbarThemeSafari::hasThumb):
5316 (WebCore::ScrollbarThemeSafari::backButtonRect):
5317 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
5318 (WebCore::ScrollbarThemeSafari::trackRect):
5319 (WebCore::ScrollbarThemeSafari::splitTrack):
5320 (WebCore::ScrollbarThemeSafari::paintTrack):
5321 (WebCore::ScrollbarThemeSafari::paintButton):
5322 (WebCore::ScrollbarThemeSafari::paintThumb):
5323 * platform/win/ScrollbarThemeWin.cpp:
5324 (WebCore::isRunningOnVistaOrLater):
5325 (WebCore::checkAndInitScrollbarTheme):
5326 (WebCore::ScrollbarThemeWin::ScrollbarThemeWin):
5327 (WebCore::ScrollbarThemeWin::themeChanged):
5328 (WebCore::ScrollbarThemeWin::hasThumb):
5329 (WebCore::ScrollbarThemeWin::backButtonRect):
5330 (WebCore::ScrollbarThemeWin::forwardButtonRect):
5331 (WebCore::ScrollbarThemeWin::trackRect):
5332 (WebCore::ScrollbarThemeWin::splitTrack):
5333 (WebCore::ScrollbarThemeWin::paintTrack):
5334 (WebCore::ScrollbarThemeWin::paintButton):
5335 (WebCore::gripperRect):
5336 (WebCore::paintGripper):
5337 (WebCore::ScrollbarThemeWin::paintThumb):
5338 (WebCore::ScrollbarThemeWin::thumbPosition):
5339 (WebCore::ScrollbarThemeWin::thumbLength):
5340 (WebCore::ScrollbarThemeWin::trackLength):
5341 * platform/win/ScrollbarThemeWin.h:
5342 (WebCore::ScrollbarThemeWin::hasButtons):
5343 (WebCore::ScrollbarThemeWin::trackIsSinglePiece):
5344
timothy@apple.comd91172c2008-09-15 05:38:00 +000053452008-09-14 Anthony Ricaud <rik24d@gmail.com>
5346
5347 Moving all resource graphs under the same container for future scalable feature.
5348 This is a speedup on resize but maybe a loss on changing the sorting function.
5349
5350 https://bugs.webkit.org/show_bug.cgi?id=20555
5351
5352 Reviewed by Timothy Hatcher.
5353
5354 * page/inspector/ResourcesPanel.js: Added a container for all resource graphs.
5355 Added WebInspector.ResourceGraph. No more _updateGraphBars on resize.
5356 * page/inspector/inspector.css: Edited corresponding rules and removed unnecessaries.
5357
ap@webkit.orga14074b2008-09-15 04:52:44 +000053582008-09-14 Alexey Proskuryakov <ap@webkit.org>
5359
5360 Reviewed by Maciej Stachowiak.
5361
5362 https://bugs.webkit.org/show_bug.cgi?id=20738
5363 compareBoundaryPoints gives incorrect results
5364
5365 Test: fast/dom/Range/compareBoundaryPoints-2.html
5366
5367 * dom/Range.cpp: (WebCore::Range::compareBoundaryPoints): Correct meanings of START_TO_END
5368 and END_TO_START.
5369 * page/DOMSelection.cpp: (WebCore::DOMSelection::addRange): Updated for this change.
5370
mjs@apple.com285bdcf2008-09-15 02:55:16 +000053712008-09-14 Maciej Stachowiak <mjs@apple.com>
5372
5373 Unreviewed build fix.
5374
mjs@apple.comcbb31e52008-09-15 03:10:35 +00005375 Trying again.
5376
5377 * bindings/js/JSQuarantinedObjectWrapper.cpp:
5378 (WebCore::JSQuarantinedObjectWrapper::hasInstance):
5379
53802008-09-14 Maciej Stachowiak <mjs@apple.com>
5381
5382 Unreviewed build fix.
5383
mjs@apple.com285bdcf2008-09-15 02:55:16 +00005384 Blind attempt to fix build. Correct parameters for hasInstance.
5385
5386 * bindings/js/JSQuarantinedObjectWrapper.cpp:
5387 (WebCore::JSQuarantinedObjectWrapper::hasInstance):
5388 * bindings/js/JSQuarantinedObjectWrapper.h:
5389
mitz@apple.come85f7362008-09-15 02:23:24 +000053902008-09-14 Dan Bernstein <mitz@apple.com>
5391
5392 Rubber-stamped by Sam Weinig.
5393
5394 - revert <http://trac.webkit.org/changeset/36382> because it exposed
5395 <https://bugs.webkit.org/show_bug.cgi?id=20846> and resulted in crashes
5396 on Tiger.
5397
5398 * platform/graphics/mac/FontCacheMac.mm:
5399 (WebCore::FontCache::getFontDataForCharacters):
5400 (WebCore::FontCache::getLastResortFallbackFont):
5401
hyatt@apple.comf18feec2008-09-15 00:56:11 +000054022008-09-14 Dave Hyatt <hyatt@apple.com>
5403
5404 Add a new ScrollbarThemeComposite base class that is shared by ScrollbarThemeSafari and
5405 ScrollbarThemeWin. Any scrollbar that wants to render by ScrollbarPart can subclass from this
5406 theme.
5407
5408 Reviewed by Sam Weinig
5409
5410 * WebCore.vcproj/WebCore.vcproj:
5411 * platform/win/ScrollbarThemeSafari.h:
5412 * platform/win/ScrollbarThemeWin.h:
5413
alp@webkit.orgd694e942008-09-15 00:20:15 +000054142008-09-14 Alp Toker <alp@nuanti.com>
5415
5416 https://bugs.webkit.org/show_bug.cgi?id=20320
5417 [GTK] A white rectangle is visible behind widgets with rounded corners
5418
5419 Sync bundled gtk2drawing.c to the latest version from Mozilla (coding
5420 style exempt).
5421
5422 Requested by Michael Monreal.
5423
5424 * platform/gtk/RenderThemeGtk.cpp:
5425 (WebCore::RenderThemeGtk::RenderThemeGtk):
5426 * platform/gtk/gtk2drawing.c:
5427 (moz_gtk_set_widget_name):
5428 (ensure_window_widget):
5429 (setup_widget_prototype):
5430 (ensure_button_arrow_widget):
5431 (moz_gtk_get_combo_box_inner_button):
5432 (moz_gtk_get_combo_box_button_inner_widgets):
5433 (ensure_combo_box_widgets):
5434 (moz_gtk_get_combo_box_entry_inner_widgets):
5435 (moz_gtk_get_combo_box_entry_arrow):
5436 (ensure_combo_box_entry_widgets):
5437 (ensure_toolbar_widget):
5438 (ensure_tooltip_widget):
5439 (ensure_menu_bar_widget):
5440 (ensure_menu_bar_item_widget):
5441 (ensure_menu_popup_widget):
5442 (ensure_menu_item_widget):
5443 (ensure_image_menu_item_widget):
5444 (ensure_menu_separator_widget):
5445 (ensure_check_menu_item_widget):
5446 (ensure_tree_header_cell_widget):
5447 (ensure_scrolled_window_widget):
5448 (moz_gtk_button_paint):
5449 (moz_gtk_init):
5450 (moz_gtk_button_get_inner_border):
5451 (moz_gtk_toggle_paint):
5452 (calculate_button_inner_rect):
5453 (calculate_arrow_rect):
5454 (moz_gtk_scrollbar_button_paint):
5455 (moz_gtk_scrollbar_thumb_paint):
5456 (moz_gtk_caret_paint):
5457 (moz_gtk_entry_paint):
5458 (moz_gtk_treeview_paint):
5459 (moz_gtk_tree_header_cell_paint):
5460 (moz_gtk_combo_box_paint):
5461 (moz_gtk_downarrow_paint):
5462 (moz_gtk_combo_box_entry_button_paint):
5463 (moz_gtk_toolbar_paint):
5464 (moz_gtk_tab_scroll_arrow_paint):
5465 (moz_gtk_menu_bar_paint):
5466 (moz_gtk_menu_item_paint):
5467 (moz_gtk_get_widget_border):
5468 (moz_gtk_get_combo_box_entry_button_size):
5469 (moz_gtk_get_tab_scroll_arrow_size):
5470 (moz_gtk_get_downarrow_size):
5471 (moz_gtk_images_in_menus):
5472 (moz_gtk_widget_paint):
5473 (moz_gtk_shutdown):
5474 * platform/gtk/gtkdrawing.h:
5475
hyatt@apple.com3ab48302008-09-14 23:55:16 +000054762008-09-14 David Hyatt <hyatt@apple.com>
5477
5478 Convert Mac, Gtk, wx and Qt over to the new ScrollbarTheme for
5479 painting. Mac and Gtk themes don't do anything and just let the
5480 underlying widget paint. Qt now uses the theme to paint. wx doesn't
5481 do anything yet.
5482
5483 Reviewed by Sam Weinig
5484
5485 * platform/ScrollBar.cpp:
5486 (WebCore::Scrollbar::paint):
5487 * platform/ScrollBar.h:
5488 (WebCore::Scrollbar::value):
5489 (WebCore::Scrollbar::visibleSize):
5490 (WebCore::Scrollbar::maximum):
5491 (WebCore::Scrollbar::lineStep):
5492 (WebCore::Scrollbar::pageStep):
5493 (WebCore::Scrollbar::pixelStep):
5494 (WebCore::Scrollbar::pressedPart):
5495 (WebCore::Scrollbar::hoveredPart):
5496 (WebCore::Scrollbar::theme):
5497 * platform/ScrollbarTheme.h:
5498 (WebCore::ScrollbarTheme::paint):
5499 (WebCore::ScrollbarTheme::scrollbarThickness):
5500 (WebCore::ScrollbarTheme::supportsControlTints):
5501 (WebCore::ScrollbarTheme::themeChanged):
5502 * platform/gtk/PlatformScrollBar.h:
5503 * platform/gtk/PlatformScrollBarGtk.cpp:
5504 * platform/mac/PlatformScrollBar.h:
5505 * platform/mac/PlatformScrollBarMac.mm:
5506 * platform/qt/PlatformScrollBar.h:
5507 * platform/qt/PlatformScrollBarQt.cpp:
5508 * platform/qt/ScrollbarThemeQt.cpp:
5509 (WebCore::styleOptionSlider):
5510 * platform/qt/ScrollbarThemeQt.h:
5511 (WebCore::ScrollbarThemeQt::paint):
5512 * platform/win/PlatformScrollBarSafari.cpp:
5513 (WebCore::PlatformScrollbar::paint):
5514 * platform/win/ScrollbarThemeSafari.h:
5515 (WebCore::ScrollbarThemeSafari::supportsControlTints):
5516 * platform/wx/PlatformScrollBar.h:
5517 * platform/wx/TemporaryLinkStubs.cpp:
5518 (PlatformScrollbar::~PlatformScrollbar):
5519
weinig@apple.comcb93e262008-09-14 21:36:11 +000055202008-09-14 Sam Weinig <sam@webkit.org>
5521
weinig@apple.com6ef2b872008-09-14 22:15:28 +00005522 Qt build fix.
5523
5524 * platform/qt/PlatformScrollBarQt.cpp:
5525
55262008-09-14 Sam Weinig <sam@webkit.org>
5527
weinig@apple.com064861a2008-09-14 22:12:49 +00005528 Reviewed by Mark Rowe.
5529
5530 Remove extraneous semicolons.
5531
5532 * bindings/scripts/CodeGeneratorObjC.pm:
5533 * html/HTMLLinkElement.cpp:
5534 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
5535 * html/HTMLScriptElement.cpp:
5536 (WebCore::HTMLScriptElement::charsetAttributeValue):
5537 (WebCore::HTMLScriptElement::typeAttributeValue):
5538 * platform/graphics/qt/GradientQt.cpp:
5539 (WebCore::Gradient::platformGradient):
5540 * platform/qt/ScrollViewQt.cpp:
5541 (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
5542 * platform/win/ScrollViewWin.cpp:
5543 (WebCore::ScrollView::updateScrollbars):
5544 * rendering/RenderBlock.cpp:
5545 (WebCore::RenderBlock::paintEllipsisBoxes):
5546 * svg/SVGPathSegList.cpp:
5547 (WebCore::SVGPathSegList::toPathData):
5548
55492008-09-14 Sam Weinig <sam@webkit.org>
5550
weinig@apple.comcb93e262008-09-14 21:36:11 +00005551 Qt build fix.
5552
weinig@apple.com31311a62008-09-14 22:00:15 +00005553 * platform/qt/ScrollViewQt.cpp:
5554 (WebCore::ScrollView::updateScrollbars):
5555
55562008-09-14 Sam Weinig <sam@webkit.org>
5557
5558 Qt build fix.
5559
weinig@apple.comcb93e262008-09-14 21:36:11 +00005560 * platform/qt/PlatformScrollBarQt.cpp:
5561 (WebCore::PlatformScrollbar::PlatformScrollbar):
5562 (WebCore::PlatformScrollbar::paint):
5563
jmalonzo@webkit.org65e836c2008-09-14 01:57:13 +000055642008-09-13 Jan Michael Alonzo <jmalonzo@webkit.org>
5565
5566 Gtk build fix, not reviewed.
5567
5568 * platform/gtk/PlatformScrollBarGtk.cpp:
5569 (PlatformScrollbar::PlatformScrollbar):
5570 * platform/gtk/ScrollViewGtk.cpp:
5571 (WebCore::ScrollView::updateScrollbars):
5572
hyatt@apple.comd62f5bf2008-09-14 00:32:19 +000055732008-09-13 Dave Hyatt <hyatt@apple.com>
5574
hyatt@apple.com21ab7c62008-09-14 01:26:22 +00005575 Remove scrollbar's setRect method. Clients can now just call setFrameGeometry (the corresponding Widget) method
5576 to set the dimensions of a scrollbar.
5577
5578 Reviewed by Sam Weinig
5579
5580 * platform/ScrollBar.h:
5581 * platform/gtk/PlatformScrollBar.h:
5582 * platform/gtk/PlatformScrollBarGtk.cpp:
5583 (PlatformScrollbar::setFrameGeometry):
5584 * platform/gtk/ScrollViewGtk.cpp:
5585 (WebCore::ScrollView::updateScrollbars):
5586 * platform/mac/PlatformScrollBarMac.mm:
5587 * platform/qt/PlatformScrollBarQt.cpp:
5588 * platform/qt/ScrollViewQt.cpp:
5589 (WebCore::ScrollView::updateScrollbars):
5590 * platform/win/PlatformScrollBar.h:
5591 * platform/win/PlatformScrollBarSafari.cpp:
5592 (WebCore::PlatformScrollbar::PlatformScrollbar):
5593 (WebCore::PlatformScrollbar::setFrameGeometry):
5594 * platform/win/PlatformScrollBarWin.cpp:
5595 (WebCore::PlatformScrollbar::PlatformScrollbar):
5596 (WebCore::PlatformScrollbar::setFrameGeometry):
5597 * platform/win/PopupMenuWin.cpp:
5598 (WebCore::PopupWndProc):
5599 * platform/win/ScrollViewWin.cpp:
5600 (WebCore::ScrollView::updateScrollbars):
5601 * platform/wx/PlatformScrollBar.h:
5602 * platform/wx/TemporaryLinkStubs.cpp:
5603 (PlatformScrollbar::updateThumbProportion):
5604 * rendering/RenderLayer.cpp:
5605 (WebCore::RenderLayer::positionOverflowControls):
5606 * rendering/RenderListBox.cpp:
5607 (WebCore::RenderListBox::paintScrollbar):
5608
56092008-09-13 Dave Hyatt <hyatt@apple.com>
5610
hyatt@apple.comed9485a2008-09-14 01:06:57 +00005611 Remove setEnabled() from all Scrollbar classes that were just using their Widget base class methods.
5612
5613 Reviewed by Sam Weinig
5614
5615 * platform/ScrollBar.h:
5616 * platform/gtk/PlatformScrollBar.h:
5617 * platform/gtk/PlatformScrollBarGtk.cpp:
5618 * platform/mac/PlatformScrollBar.h:
5619 * platform/mac/PlatformScrollBarMac.mm:
5620 * platform/win/PlatformScrollBar.h:
5621 * platform/win/PlatformScrollBarSafari.cpp:
5622 * platform/win/PlatformScrollBarWin.cpp:
5623 * platform/wx/PlatformScrollBar.h:
5624 * platform/wx/TemporaryLinkStubs.cpp:
5625 (PlatformScrollbar::~PlatformScrollbar):
5626
56272008-09-13 Dave Hyatt <hyatt@apple.com>
5628
hyatt@apple.com64d98032008-09-14 00:58:29 +00005629 Remove width()/height() from Scrollbar now that it derives from Widget. Remove width()/height() from
5630 all PlatformScrollbar subclasses that just called the Widget base class versions of those methods.
5631
5632 Reviewed by Sam Weinig
5633
5634 * platform/ScrollBar.h:
5635 * platform/gtk/PlatformScrollBar.h:
5636 * platform/gtk/PlatformScrollBarGtk.cpp:
5637 * platform/mac/PlatformScrollBar.h:
5638 * platform/mac/PlatformScrollBarMac.mm:
5639 * platform/win/PlatformScrollBarSafari.cpp:
5640 * platform/win/PlatformScrollBarWin.cpp:
5641 * platform/wx/PlatformScrollBar.h:
5642 * platform/wx/TemporaryLinkStubs.cpp:
5643 (PlatformScrollbar::~PlatformScrollbar):
5644
56452008-09-13 Dave Hyatt <hyatt@apple.com>
5646
hyatt@apple.comd62f5bf2008-09-14 00:32:19 +00005647 Move stopTimerIfNeeded out of PlatformScrollbar destructors and into Scrollbar.
5648
5649 Reviewed by Sam Weinig
5650
5651 * platform/ScrollBar.cpp:
5652 (WebCore::Scrollbar::~Scrollbar):
5653 * platform/ScrollBar.h:
5654 * platform/qt/PlatformScrollBarQt.cpp:
5655 (WebCore::PlatformScrollbar::~PlatformScrollbar):
5656 * platform/win/PlatformScrollBarSafari.cpp:
5657 (WebCore::PlatformScrollbar::~PlatformScrollbar):
5658 * platform/win/PlatformScrollBarWin.cpp:
5659 (WebCore::PlatformScrollbar::~PlatformScrollbar):
5660
hyatt@apple.coma3c52492008-09-13 23:57:08 +000056612008-09-13 David Hyatt <hyatt@apple.com>
5662
5663 Move maximum() from Qt's PlatformScrollbar to be a cross-platform
5664 function on Scrollbar. Fixes Qt build bustage.
5665
5666 Reviewed by Sam Weinig
5667
5668 * platform/ScrollBar.h:
5669 (WebCore::Scrollbar::orientation):
5670 (WebCore::Scrollbar::value):
5671 (WebCore::Scrollbar::maximum):
5672 * platform/qt/PlatformScrollBar.h:
5673
mitz@apple.comb3d22882008-09-13 23:06:59 +000056742008-09-13 Dan Bernstein <mitz@apple.com>
5675
5676 Reviewed by Sam Weinig.
5677
5678 - use the LastResort font for missing glyphs instead of showing the
5679 primary font's missing glyph
5680
5681 Test: platform/mac/fast/text/last-resort-font.html
5682
5683 * platform/graphics/mac/FontCacheMac.mm:
5684 (WebCore::FontCache::getFontDataForCharacters): Changed to return the
5685 last resort font if a substitute font cannot be found.
5686 (WebCore::FontCache::getLastResortFallbackFont): Removed an outdated
5687 comment (the user's preferred standard font is included in the search
5688 thanks to code in FontCache::getFontData()) and changed to return the
5689 LastResort font.
5690
hyatt@apple.com0c378c72008-09-13 22:59:05 +000056912008-09-13 Dave Hyatt <hyatt@apple.com>
5692
5693 This patch adds ScrollbarTheme to the build. ScrollbarTheme is similar to RenderTheme (but for
5694 scrollbars only). For now ScrollbarTheme just handles returning the size of scrollbars. Subsequent
5695 patches will move rendering and hit testing functionality into this class.
5696
5697 Implemented ScrollbarTheme subclasses for four ports (Mac, Win, Gtk, Qt). The wxWidgets port does not
5698 implement scrollbars yet, so I added a temporary link stub to keep things compiling on wx.
5699
5700 Reviewed by Sam Weinig
5701
5702 * GNUmakefile.am:
5703 * WebCore.pro:
5704 * WebCore.vcproj/WebCore.vcproj:
5705 * platform/ScrollBar.cpp:
5706 (WebCore::Scrollbar::Scrollbar):
5707 * platform/ScrollBar.h:
5708 * platform/ScrollbarTheme.h: Added.
5709 (WebCore::ScrollbarTheme::~ScrollbarTheme):
5710 (WebCore::ScrollbarTheme::scrollbarThickness):
5711 (WebCore::ScrollbarTheme::themeChanged):
5712 * platform/gtk/ScrollbarThemeGtk.cpp: Added.
5713 (WebCore::ScrollbarTheme::nativeTheme):
5714 (WebCore::ScrollbarThemeGtk::~ScrollbarThemeGtk):
5715 (WebCore::ScrollbarThemeGtk::scrollbarThickness):
5716 * platform/gtk/ScrollbarThemeGtk.h: Added.
5717 * platform/mac/PlatformScrollBar.h:
5718 * platform/mac/ScrollbarThemeMac.cpp: Added.
5719 (WebCore::ScrollbarTheme::nativeTheme):
5720 (WebCore::):
5721 (WebCore::ScrollbarThemeMac::~ScrollbarThemeMac):
5722 (WebCore::ScrollbarThemeMac::scrollbarThickness):
5723 * platform/mac/ScrollbarThemeMac.h: Added.
5724 * platform/qt/PlatformScrollBarQt.cpp:
5725 * platform/qt/ScrollbarThemeQt.cpp: Added.
5726 (WebCore::ScrollbarTheme::nativeTheme):
5727 (WebCore::ScrollbarThemeQt::~ScrollbarThemeQt):
5728 (WebCore::ScrollbarThemeQt::scrollbarThickness):
5729 * platform/qt/ScrollbarThemeQt.h: Added.
5730 * platform/win/PlatformScrollBar.h:
5731 * platform/win/PlatformScrollBarSafari.cpp:
5732 * platform/win/PlatformScrollBarWin.cpp:
5733 * platform/win/PopupMenuWin.cpp:
5734 (WebCore::PopupMenu::calculatePositionAndSize):
5735 * platform/win/ScrollViewWin.cpp:
5736 (WebCore::ScrollView::updateScrollbars):
5737 (WebCore::ScrollView::themeChanged):
5738 * platform/win/ScrollbarThemeSafari.cpp: Added.
5739 (WebCore::ScrollbarTheme::nativeTheme):
5740 (WebCore::):
5741 (WebCore::ScrollbarThemeSafari::~ScrollbarThemeSafari):
5742 (WebCore::ScrollbarThemeSafari::scrollbarThickness):
5743 * platform/win/ScrollbarThemeSafari.h: Added.
5744 * platform/win/ScrollbarThemeWin.cpp: Added.
5745 (WebCore::ScrollbarTheme::nativeTheme):
5746 (WebCore::ScrollbarThemeWin::~ScrollbarThemeWin):
5747 (WebCore::ScrollbarThemeWin::scrollbarThickness):
5748 (WebCore::ScrollbarThemeWin::themeChanged):
5749 * platform/win/ScrollbarThemeWin.h: Added.
5750 * platform/wx/TemporaryLinkStubs.cpp:
5751 (ScrollbarTheme::nativeTheme):
5752 * rendering/RenderLayer.cpp:
5753 (WebCore::scrollCornerRect):
5754 * rendering/RenderTextControl.cpp:
5755 (WebCore::RenderTextControl::calcHeight):
5756 (WebCore::RenderTextControl::calcPrefWidths):
5757
cfleizach@apple.comd26c2762008-09-13 21:05:18 +000057582008-09-13 Chris Fleizach <cfleizach@apple.com>
5759
5760 Reviewed by Timothy Hatcher.
5761
5762 <rdar://problem/5060439> Web elements should have an AXTopLevelUIElement
5763
5764 * page/mac/AccessibilityObjectWrapper.mm:
5765 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
5766
mitz@apple.com6307c9f2008-09-13 20:27:37 +000057672008-09-13 Dan Bernstein <mitz@apple.com>
5768
5769 Reviewed by Timothy Hatcher.
5770
5771 - fix <rdar://problem/6171280> REGRESSION (r35667): Assertion failure in WebCore::FrameView::scheduleRelayout() when releasing a page with counters from the b/f cache
5772
5773 No regression test because the back/forward cache is disabled in DumpRenderTree
5774
5775 * rendering/RenderContainer.cpp:
5776 (WebCore::RenderContainer::invalidateCounters): Bail out if the document
5777 is being destroyed.
5778
kevino@webkit.org1e178ee2008-09-13 18:48:39 +000057792008-09-13 Kevin Ollivier <kevino@theolliviers.com>
5780
5781 wx build fixes for new methods recently introduced.
5782
5783 * platform/graphics/wx/AffineTransformWx.cpp:
5784 (WebCore::AffineTransform::AffineTransform):
5785 (WebCore::AffineTransform::setMatrix):
5786 (WebCore::AffineTransform::setA):
5787 (WebCore::AffineTransform::setB):
5788 (WebCore::AffineTransform::setC):
5789 (WebCore::AffineTransform::setD):
5790 (WebCore::AffineTransform::setE):
5791 (WebCore::AffineTransform::setF):
5792 * platform/wx/LocalizedStringsWx.cpp:
5793 (WebCore::AXDefinitionListTermText):
5794 (WebCore::AXDefinitionListDefinitionText):
5795
hyatt@apple.com30ed5442008-09-13 18:39:58 +000057962008-09-12 Dave Hyatt <hyatt@apple.com>
5797
5798 Move the member variables of PlatformScrollbar up into Scrollbar. Move autoscroll timer handling
5799 up into scrollbar. Make sure a bunch of cross-platform code now just uses "Scrollbar" instead of
5800 "PlatformScrollbar."
5801
5802 Reviewed by Sam Weinig
5803
5804 * WebCore.vcproj/WebCore.vcproj:
5805 * editing/EditorCommand.cpp:
5806 * page/EventHandler.cpp:
5807 (WebCore::EventHandler::selectCursor):
5808 (WebCore::EventHandler::handleMousePressEvent):
5809 (WebCore::EventHandler::handleMouseMoveEvent):
5810 * page/EventHandler.h:
5811 * page/MouseEventWithHitTestResults.cpp:
5812 (WebCore::MouseEventWithHitTestResults::scrollbar):
5813 * page/MouseEventWithHitTestResults.h:
5814 * page/gtk/EventHandlerGtk.cpp:
5815 (WebCore::EventHandler::passMousePressEventToScrollbar):
5816 * page/mac/EventHandlerMac.mm:
5817 (WebCore::EventHandler::passMousePressEventToScrollbar):
5818 * page/qt/EventHandlerQt.cpp:
5819 (WebCore::EventHandler::passMousePressEventToScrollbar):
5820 * page/win/EventHandlerWin.cpp:
5821 (WebCore::EventHandler::passMousePressEventToScrollbar):
5822 * page/wx/EventHandlerWx.cpp:
5823 (WebCore::EventHandler::passMousePressEventToScrollbar):
5824 * platform/PopupMenu.h:
5825 * platform/ScrollBar.cpp:
5826 (WebCore::Scrollbar::Scrollbar):
5827 (WebCore::Scrollbar::autoscrollTimerFired):
5828 (WebCore::Scrollbar::autoscrollPressedPart):
5829 (WebCore::Scrollbar::startTimerIfNeeded):
5830 (WebCore::Scrollbar::stopTimerIfNeeded):
5831 (WebCore::Scrollbar::pressedPartScrollDirection):
5832 (WebCore::Scrollbar::pressedPartScrollGranularity):
5833 * platform/ScrollBar.h:
5834 (WebCore::Scrollbar::handleMousePressEvent):
5835 (WebCore::Scrollbar::invalidatePart):
5836 (WebCore::Scrollbar::thumbUnderMouse):
5837 * platform/ScrollView.h:
5838 * platform/ScrollbarClient.h: Added.
5839 (WebCore::ScrollbarClient::~ScrollbarClient):
5840 * platform/gtk/ScrollViewGtk.cpp:
5841 (WebCore::ScrollView::scrollbarUnderMouse):
5842 * platform/qt/PlatformScrollBar.h:
5843 * platform/qt/PlatformScrollBarQt.cpp:
5844 (WebCore::PlatformScrollbar::PlatformScrollbar):
5845 (WebCore::scrollbarPart):
5846 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
5847 (WebCore::PlatformScrollbar::handleMouseOutEvent):
5848 (WebCore::PlatformScrollbar::handleMousePressEvent):
5849 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
5850 * platform/qt/ScrollViewQt.cpp:
5851 (WebCore::ScrollView::scrollbarUnderMouse):
5852 (WebCore::ScrollView::wheelEvent):
5853 * platform/win/PlatformScrollBar.h:
5854 * platform/win/PlatformScrollBarSafari.cpp:
5855 (WebCore::PlatformScrollbar::PlatformScrollbar):
5856 * platform/win/PlatformScrollBarWin.cpp:
5857 (WebCore::PlatformScrollbar::PlatformScrollbar):
5858 * platform/win/ScrollViewWin.cpp:
5859 (WebCore::ScrollView::scrollbarUnderMouse):
5860 * rendering/HitTestResult.cpp:
5861 (WebCore::HitTestResult::setScrollbar):
5862 * rendering/HitTestResult.h:
5863 (WebCore::HitTestResult::scrollbar):
5864 * rendering/RenderLayer.cpp:
5865 (WebCore::RenderLayer::hitTestOverflowControls):
5866 * rendering/RenderLayer.h:
5867 * rendering/RenderListBox.h:
5868
sfalken@apple.comb4e407e2008-09-13 02:59:00 +000058692008-09-12 Steve Falkenburg <sfalken@apple.com>
5870
5871 Fix Mac build.
5872
5873 * css/CSSStyleSelector.cpp:
5874 (WebCore::getTransformOperationType):
5875
dino@apple.comf937dc62008-09-13 00:45:39 +000058762008-09-12 Chris Marrin <cmarrin@apple.com>
5877
5878 Reviewed by Dave Hyatt.
5879
5880 Make transform animation behavior match spec
5881 https://bugs.webkit.org/show_bug.cgi?id=20770
5882
5883 Tests: transitions/transform-op-list-match.html
5884 transitions/transform-op-list-no-match.html
5885
5886 * css/CSSStyleSelector.cpp:
5887 * css/CSSStyleSelector.h:
5888 * page/animation/AnimationBase.cpp:
5889 * page/animation/AnimationBase.h:
5890 * page/animation/ImplicitAnimation.cpp:
5891 * page/animation/ImplicitAnimation.h:
5892 * page/animation/KeyframeAnimation.cpp:
5893 * page/animation/KeyframeAnimation.h:
5894 * rendering/RenderLayer.cpp:
5895 * rendering/style/RenderStyle.cpp:
5896 * rendering/style/RenderStyle.h:
5897
timothy@apple.comab374dd2008-09-12 22:43:38 +000058982008-09-12 Ojan Vafai <ojan@chromium.org>
5899
5900 Properly escape contents of links added to the inspector.
5901 For now, just build the link with the DOM and get the
5902 outerHTML. Eventually, we probably just want to do
5903 this entirely with the DOM.
5904
5905 Reviewed by Timothy Hatcher.
5906
5907 https://bugs.webkit.org/show_bug.cgi?id=20684
5908
5909 * manual-tests/inspector/escape-links.html: Added.
5910 * page/inspector/StylesSidebarPane.js:
5911 * page/inspector/inspector.js:
5912 * page/inspector/utilities.js:
5913
adele@apple.com87fb3c72008-09-12 22:14:13 +000059142008-09-12 Adele Peterson <adele@apple.com>
5915
5916 Reviewed by John Sullivan and Kevin McCullough.
5917
5918 Fix for <rdar://problem/6216951> REGRESSION (r36000?): Crash due to infinite recursion into EventHandler::hitTestResultAtPoint() with disconnected frames
5919
5920 * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
5921 Hit testing again on the main frame will only work if we aren't already on the main frame. If we are already on the main frame, that will
5922 cause infinite recursion. This change checks that we're not already on the main frame before hit testing again.
5923
kmccullough@apple.combdba2e32008-09-12 22:08:56 +000059242008-09-12 Kevin McCullough <kmccullough@apple.com>
5925
5926 RS by Tim .
5927
5928 Re-introducing the code since it was not the cause of the crash.
5929 See r36343.
5930
5931 * rendering/RenderObject.cpp:
5932 (WebCore::RenderObject::canBeProgramaticallyScrolled):
5933 * rendering/RenderObject.h:
5934
dino@apple.comf712ed02008-09-12 21:54:57 +000059352008-09-12 Chris Marrin <cmarrin@apple.com>
5936
5937 Reviewed by Dave Hyatt.
5938
5939 When changing one animation in a list, don't reset other animations
5940 https://bugs.webkit.org/show_bug.cgi?id=20675
5941
5942 Test: animations/change-one-anim.html
5943
5944 * page/animation/AnimationBase.cpp:
5945 (WebCore::AnimationBase::getNumProperties):
5946 * page/animation/AnimationBase.h:
5947 * page/animation/AnimationController.cpp:
5948 * page/animation/CompositeAnimation.cpp:
5949 (WebCore::CompositeAnimation::updateKeyframeAnimations):
5950 * page/animation/CompositeAnimation.h:
5951 * page/animation/ImplicitAnimation.cpp:
5952 * page/animation/KeyframeAnimation.cpp:
5953 * page/animation/KeyframeAnimation.h:
5954 (WebCore::KeyframeAnimation::setIndex):
5955
beidson@apple.com521e2b52008-09-12 18:40:03 +000059562008-09-12 Brady Eidson <beidson@apple.com>
5957
5958 Reviewed by Mitz Pettel
5959
5960 Fix the ASSERT and failure in webarchive/archive-empty-frame-source.html
5961
5962 * loader/DocumentLoader.cpp:
5963 (WebCore::DocumentLoader::mainResource): Further restoration of original WebArchive behavior.
5964 Subresources can never be created from nil data, but there is always a MainResource, whether
5965 or not there's any data. So in the case where the main resource has no data, fake it for the
5966 sake of creating the ArchiveResource.
5967
hyatt@apple.com818ffe92008-09-12 18:37:23 +000059682008-09-12 Dave Hyatt <hyatt@apple.com>
5969
5970 Preparation for major scrollbar rearchitecture. Eliminate the concept of non-widget based
5971 scrollbars (which we never supported anyway). Make Scrollbar derive from Widget directly.
5972 Remove all the isWidget and hasPlatformScrollbars guards.
5973
5974 Reviewed by Tim Hatcher
5975
5976 * platform/ScrollBar.h:
5977 * platform/gtk/PlatformScrollBar.h:
5978 * platform/mac/PlatformScrollBar.h:
5979 * platform/qt/PlatformScrollBar.h:
5980 * platform/win/PlatformScrollBar.h:
5981 * platform/win/ScrollViewWin.cpp:
5982 (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
5983 (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
5984 * platform/wx/PlatformScrollBar.h:
5985 * rendering/RenderLayer.cpp:
5986 (WebCore::RenderLayer::horizontalScrollbarWidget):
5987 (WebCore::RenderLayer::verticalScrollbarWidget):
5988 (WebCore::RenderLayer::createScrollbar):
5989 (WebCore::RenderLayer::destroyScrollbar):
5990 * rendering/RenderListBox.cpp:
5991 (WebCore::RenderListBox::~RenderListBox):
5992 (WebCore::RenderListBox::updateFromElement):
5993 (WebCore::RenderListBox::isPointInOverflowControl):
5994
mitz@apple.com0bef1302008-09-12 18:22:07 +000059952008-09-12 Dan Bernstein <mitz@apple.com>
5996
5997 Reviewed by Sam Weinig.
5998
5999 - https://bugs.webkit.org/show_bug.cgi?id=20793 clean up page/animation
6000
6001 * page/animation/AnimationController.cpp:
6002 * page/animation/AnimationController.h:
6003 * page/animation/CompositeAnimation.cpp:
6004 * page/animation/CompositeAnimation.h:
6005 * page/animation/ImplicitAnimation.cpp:
6006 * page/animation/ImplicitAnimation.h:
6007 * page/animation/KeyframeAnimation.cpp:
6008 * page/animation/KeyframeAnimation.h:
6009
timothy@apple.com43203432008-09-12 04:44:40 +000060102008-09-11 Timothy Hatcher <timothy@apple.com>
6011
6012 Add a renderedImage method to DOMNode to get an image
6013 of the rendering for the node and it's descendants.
6014
6015 <rdar://problem/5849349> Would like API to create
6016 an image for a DOM node
6017
6018 Reviewed by Oliver Hunt.
6019
6020 * bindings/objc/DOM.mm:
6021 (-[DOMNode renderedImage]): Call Frame::nodeImage.
6022 * bindings/objc/DOMPrivate.h:
6023 * page/Frame.h:
6024 * page/mac/FrameMac.mm:
6025 (WebCore::Frame::nodeImage):
6026
dino@apple.com9300a0b2008-09-12 00:36:31 +000060272008-09-08 Chris Marrin <cmarrin@apple.com>
6028
6029 Reviewed by Dave Hyatt
6030
6031 Need to support comma separated list of key times in keyframes selectors
6032 https://bugs.webkit.org/show_bug.cgi?id=20680
6033
6034 Test: animations/keyframes-comma-separated.html
6035
6036 * css/CSSGrammar.y:
6037 * css/CSSParser.cpp:
6038 (WebCore::CSSParser::createKeyframeRule):
6039 * css/CSSParser.h:
6040 * css/CSSStyleSelector.cpp:
6041 (WebCore::CSSStyleSelector::addKeyframeStyle):
6042 * css/WebKitCSSKeyframeRule.cpp:
6043 (WebCore::WebKitCSSKeyframeRule::WebKitCSSKeyframeRule):
6044 (WebCore::WebKitCSSKeyframeRule::cssText):
6045 (WebCore::WebKitCSSKeyframeRule::parseKeyString):
6046 * css/WebKitCSSKeyframeRule.h:
6047 (WebCore::WebKitCSSKeyframeRule::keyText):
6048 (WebCore::WebKitCSSKeyframeRule::setKeyText):
6049 (WebCore::WebKitCSSKeyframeRule::getKeys):
6050 * css/WebKitCSSKeyframesRule.cpp:
6051 (WebCore::WebKitCSSKeyframesRule::append):
6052 (WebCore::WebKitCSSKeyframesRule::insertRule):
6053 (WebCore::WebKitCSSKeyframesRule::deleteRule):
6054 (WebCore::WebKitCSSKeyframesRule::findRule):
6055 (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
6056 * css/WebKitCSSKeyframesRule.h:
6057 * page/animation/AnimationBase.cpp:
6058 (WebCore::AnimationBase::blendProperties):
6059
kmccullough@apple.com0f9f23a2008-09-11 22:57:09 +000060602008-09-11 Kevin McCullough <kmccullough@apple.com>
6061
6062 RS by Tim.
6063
6064 Reverting because this caused a crash.
6065
6066 * rendering/RenderObject.cpp:
6067 (WebCore::RenderObject::canBeProgramaticallyScrolled):
6068 (WebCore::RenderObject::hasScrollableView):
6069 * rendering/RenderObject.h:
6070
dino@apple.com19853b32008-09-11 21:59:08 +000060712008-09-11 Dean Jackson <dino@apple.com>
6072
6073 Reviewed by Dan Bernstein.
6074
6075 Fix assertion on transition property "none"
6076 https://bugs.webkit.org/show_bug.cgi?id=20751
6077
6078 Test: transitions/transition-end-event-set-none.html
6079
6080 * page/animation/CompositeAnimation.cpp:
6081 (WebCore::CompositeAnimation::updateTransitions):
6082
dsmith@webkit.orge6ea48f2008-09-11 21:41:33 +000060832008-09-11 David Smith <catfish.man@gmail.com>
6084
dsmith@webkit.org08103d92008-09-11 21:54:30 +00006085 Rubber-stamped by mitzpettel.
6086
6087 Remove an accidentally added extra file.
6088
6089 * WebCore: Removed.
6090
60912008-09-11 David Smith <catfish.man@gmail.com>
6092
dsmith@webkit.orge6ea48f2008-09-11 21:41:33 +00006093 Reviewed by Darin
6094
6095 https://bugs.webkit.org/show_bug.cgi?id=20180
6096
6097 This speeds up :nth-child matching as tested by querySelectorAll by around 10% by inlining the common case of Node::renderStyle(). Many thanks to mitzpettel and othermaciej for suggestions and help.
6098
6099 * WebCore.xcodeproj/project.pbxproj: Add NodeRenderStyle.h
6100 * css/CSSStyleSelector.cpp: include NodeRenderStyle.h
6101 * dom/Element.cpp: include NodeRenderStyle.h
6102 * dom/Node.cpp: Remove the definition of renderStyle()
6103 (WebCore::Node::nonRendererRenderStyle):
6104 * dom/Node.h: Make renderStyle() nonvirtual and add nonRendererRenderStyle()
6105 * dom/NodeRenderStyle.h: Added.
6106 (WebCore::Node::renderStyle): Inline the common case of this, call nonRendererRenderStyle for the part that needed to be virtual
6107 * html/HTMLOptGroupElement.cpp: include NodeRenderStyle.h
6108 * html/HTMLOptGroupElement.h:
6109 (WebCore::HTMLOptGroupElement::nonRendererRenderStyle): override to return m_style
6110 * html/HTMLOptionElement.cpp: include NodeRenderStyle.h
6111 * html/HTMLOptionElement.h:
6112 (WebCore::HTMLOptionElement::nonRendererRenderStyle): override to return m_style
6113 * rendering/RenderListBox.cpp: include NodeRenderStyle.h
6114 * rendering/RenderMenuList.cpp: include NodeRenderStyle.h
6115 * svg/SVGUseElement.cpp: include NodeRenderStyle.h
6116
kmccullough@apple.com38d3b0f2008-09-11 17:39:12 +000061172008-09-11 Kevin McCullough <kmccullough@apple.com>
6118
6119 Reviewed by Adele and Tim.
6120
6121 <rdar://problem/6100597> REGRESSION: clicking on search results in Web
6122 Inspector does not scroll to the line of the results (20167)
6123 - This was put in by Max to fix auto scrolling but is not correct for
6124 the whole web: rdar://problem/6213098
6125
6126 * rendering/RenderObject.cpp:
6127 (WebCore::RenderObject::canBeProgramaticallyScrolled):
6128 * rendering/RenderObject.h:
6129
cfleizach@apple.com6a3b1452008-09-11 16:24:09 +000061302008-09-11 Chris Fleizach <cfleizach@apple.com>
6131
6132 Reviewed by Beth Dakin
6133
6134 <rdar://problem/6210511> AX: if a frame has a title, that should be reported as the AXWebArea's title
6135
6136 Test: accessibility/frame-with-title.html
6137
6138 * page/AccessibilityRenderObject.cpp:
6139 (WebCore::AccessibilityRenderObject::accessibilityDescription):
6140
hausmann@webkit.orge8f8ffd2008-09-11 07:34:42 +000061412008-09-11 Dirk Schulze <vbs85@gmx.de>
6142
6143 Reviewed by Simon.
6144
hausmann@webkit.orgea57c432008-09-11 08:03:07 +00006145 Fixed stroke() and strokeRect() to support gradients
6146 and patterns on Qt.
6147
6148 [Qt] Canvas stroke don't work for gradients and patterns
6149 [https://bugs.webkit.org/show_bug.cgi?id=20749]
6150
6151 * platform/graphics/qt/GraphicsContextQt.cpp:
6152 (WebCore::GraphicsContext::strokePath):
6153 (WebCore::GraphicsContext::strokeRect):
6154
61552008-09-11 Dirk Schulze <vbs85@gmx.de>
6156
6157 Reviewed by Simon.
6158
hausmann@webkit.orgc11e3b72008-09-11 07:37:42 +00006159 https://bugs.webkit.org/show_bug.cgi?id=20729
6160
6161 Fixed canvas gradients for Qt
6162
6163 [Qt] Canvas gradients don't work as expected
6164 [https://bugs.webkit.org/show_bug.cgi?id=20729]
6165
6166 * platform/graphics/qt/GradientQt.cpp:
6167 (WebCore::Gradient::platformGradient):
6168
61692008-09-11 Dirk Schulze <vbs85@gmx.de>
6170
6171 Reviewed by Simon.
6172
hausmann@webkit.orge8f8ffd2008-09-11 07:34:42 +00006173 https://bugs.webkit.org/show_bug.cgi?id=20568
6174
6175 Add support for patterns to Qt.
6176
6177 * platform/graphics/qt/PatternQt.cpp:
6178 (WebCore::Pattern::createPlatformPattern):
6179
mitz@apple.com442c5892008-09-10 18:21:14 +000061802008-09-10 Dan Bernstein <mitz@apple.com>
6181
6182 Reviewed by Sam Weinig.
6183
6184 - clean up AnimationBase
6185
6186 * page/animation/AnimationBase.cpp:
6187 * page/animation/AnimationBase.h:
6188 * page/animation/CompositeAnimation.cpp:
6189 * page/animation/ImplicitAnimation.cpp:
6190 * page/animation/ImplicitAnimation.h:
6191 * page/animation/KeyframeAnimation.cpp:
6192 * page/animation/KeyframeAnimation.h:
6193
ap@webkit.orgbaf12872008-09-10 16:42:10 +000061942008-09-10 Alexey Proskuryakov <ap@webkit.org>
6195
6196 Reviewed by Darin Adler.
6197
6198 https://bugs.webkit.org/show_bug.cgi?id=20741
6199 REGRESSION: ISO-8859-8-I encoding is registered incorrectly
6200
6201 Turns out that there were no real behavior changes for 8859-8, as it was only a debug-only
6202 check to ignore this specific registration that was failing. Yet, I decided to add a bunch of
6203 tests for ISO-8859-8 encoding aliases, as we handle them in a quite complicated manner.
6204
6205 I also found and fixed a potential crasher for non-Mac ports.
6206
6207 Tests: fast/encoding/hebrew/8859-8-e.html
6208 fast/encoding/hebrew/8859-8-i.html
6209 fast/encoding/hebrew/8859-8.html
6210 fast/encoding/hebrew/csISO88598I.html
6211 fast/encoding/hebrew/hebrew.html
6212 fast/encoding/hebrew/iso-ir-138.html
6213 fast/encoding/hebrew/logical.html
6214
6215 * platform/text/TextEncodingRegistry.cpp: (WebCore::checkExistingName): Check for iso-8859-8
6216 (case-insensitively, because different versions of ICU report this MIME name in different
6217 case).
6218
6219 * platform/text/TextCodecICU.cpp:
6220 (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated some comments.
6221 (WebCore::TextCodecICU::registerExtendedCodecs): Try both MIME and IANA names here, too.
6222 There are four names in ICU that only have MIME names (x-mac-* ones), so we could end up
6223 with an encoding map entry, but no codec for these. This was not an issue on the Mac, as
6224 we also support these via TEC (which we should stop doing), but on Windows, this would
6225 likely crash.
6226
hyatt@apple.com0197e6b2008-09-10 05:29:46 +000062272008-09-09 Dave Hyatt <hyatt@apple.com
6228
6229 Resurrect PlatformScrollbarWin.
6230
6231 Reviewed by Adam Roben
6232
6233 * WebCore.vcproj/WebCore.vcproj:
6234 * platform/win/PlatformScrollBarWin.cpp:
6235 (WebCore::isRunningOnVistaOrLater):
6236 (WebCore::checkAndInitScrollbarTheme):
6237 (WebCore::PlatformScrollbar::PlatformScrollbar):
6238 (WebCore::PlatformScrollbar::invalidateTrack):
6239 (WebCore::PlatformScrollbar::invalidatePart):
6240 (WebCore::PlatformScrollbar::paint):
6241 (WebCore::PlatformScrollbar::hasButtons):
6242 (WebCore::PlatformScrollbar::hasThumb):
6243 (WebCore::PlatformScrollbar::backButtonRect):
6244 (WebCore::PlatformScrollbar::forwardButtonRect):
6245 (WebCore::PlatformScrollbar::trackRect):
6246 (WebCore::PlatformScrollbar::gripperRect):
6247 (WebCore::PlatformScrollbar::thumbLength):
6248 (WebCore::PlatformScrollbar::paintButton):
6249 (WebCore::PlatformScrollbar::paintTrack):
6250 (WebCore::PlatformScrollbar::paintThumb):
6251 (WebCore::PlatformScrollbar::paintGripper):
6252 (WebCore::PlatformScrollbar::hitTest):
6253 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
6254 (WebCore::PlatformScrollbar::handleMouseOutEvent):
6255 (WebCore::PlatformScrollbar::themeChanged):
6256
cwzwarich@webkit.org8a334572008-09-10 03:22:04 +000062572008-09-09 Cameron Zwarich <cwzwarich@uwaterloo.ca>
6258
6259 Reviewed by Maciej Stachowiak.
6260
6261 Bug 20759: Remove MacroAssembler
6262 <https://bugs.webkit.org/show_bug.cgi?id=20759>
6263
6264 Make the necessary changes to ForwardingHeaders to remove
6265 MacroAssembler.
6266
6267 * ForwardingHeaders/masm/IA32MacroAsm.h: Removed.
6268 * ForwardingHeaders/masm/MacroAssembler.h: Removed.
6269 * ForwardingHeaders/masm/X86Assembler.h: Added.
6270
alp@webkit.org509e3d42008-09-10 01:26:20 +000062712008-09-09 Alp Toker <alp@nuanti.com>
6272
6273 Reviewed by Dave Hyatt.
6274
6275 https://bugs.webkit.org/show_bug.cgi?id=16792
6276 [GTK] Fails to render Japanese/Chinese text with simple path
6277
6278 https://bugs.webkit.org/show_bug.cgi?id=16942
6279 [GTK] Oddities in font selection and fall back
6280
6281 https://bugs.webkit.org/show_bug.cgi?id=16862
6282 [GTK] Custom fonts hard-coded to use grayscale antialiasing and no hinting
6283
6284 GTK+ font fixes and enhancements.
6285
6286 Implement font fallback for the simple FontConfig-based text path and
6287 improve the Pango-based complex text path to make use of requested
6288 font properties and available font selection.
6289
6290 Add text shadow support to the complex path.
6291
6292 * platform/graphics/gtk/FontCacheGtk.cpp:
6293 (WebCore::FontCache::getFontDataForCharacters):
6294 (WebCore::FontCache::getSimilarFontPlatformData):
6295 * platform/graphics/gtk/FontGtk.cpp:
6296 (WebCore::setPangoAttributes):
6297 (WebCore::Font::drawComplexText):
6298 (WebCore::getDefaultPangoLayout):
6299 (WebCore::Font::floatWidthForComplexText):
6300 (WebCore::Font::offsetForPositionForComplexText):
6301 (WebCore::Font::selectionRectForComplexText):
6302 * platform/graphics/gtk/FontPlatformData.h:
6303 (WebCore::FontPlatformData::FontPlatformData):
6304 (WebCore::FontPlatformData::hash):
6305 * platform/graphics/gtk/FontPlatformDataGtk.cpp:
6306 (WebCore::FontPlatformData::FontPlatformData):
6307 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
6308 (WebCore::SimpleFontData::platformDestroy):
6309
hyatt@apple.com33f37f62008-09-09 23:51:46 +000063102008-09-09 Dave Hyatt <hyatt@apple.com>
6311
6312 Make the Windows classic case work again. Overlap in slider constants and other constants broke
6313 the push state for buttons and checkboxes. Make sure to check the RenderObject's appearance
6314 value to make sure it's really a slider thumb to resolve this conflict.
6315
6316 Reviewed by Adam Roben
6317
6318 * rendering/RenderThemeWin.cpp:
6319 (WebCore::drawControl):
6320
dino@apple.com442d0652008-09-09 23:36:56 +000063212008-09-05 Chris Marrin <cmarrin@apple.com>
6322
6323 Reviewed by Sam Weinig.
6324
6325 Need to handle the case when 0% or 100% keyframe is omitted
6326 https://bugs.webkit.org/show_bug.cgi?id=20679
6327
6328 Tests: animations/keyframes-from-missing.html
6329 animations/keyframes-to-missing.html
6330
6331 * css/CSSStyleSelector.cpp:
6332 (WebCore::CSSStyleSelector::addKeyframeStyle):
6333
hyatt@apple.com419d0ad2008-09-09 23:11:14 +000063342008-09-09 Dave Hyatt <hyatt@apple.com>
6335
6336 Resurrect Safari's original RenderThemeWin and bring it up to date with ToT. Having a current
6337 RenderThemeWin that does not have any Skia dependencies should provide a good basis for a potential
6338 merge of Google Chrome's RenderThemeWin (to help us see where the Skia stuff can be cut and to see
6339 what changes have been made as compared with the old RenderThemeWin).
6340
6341 Fix CSS2 system fonts to properly set both the rendering mode (so that they properly pick up GDI vs. CG
6342 text rendering modes) and the printer font setting (so that OS X system fonts properly pick up screen
6343 vs. printer advancement rounding).
6344
6345 Reviewed by Adam/Sam
6346
6347 * css/CSSStyleSelector.cpp:
6348 (WebCore::CSSStyleSelector::applyProperty):
6349 * platform/graphics/Icon.h:
6350 (WebCore::Icon::create):
6351 * rendering/RenderThemeWin.cpp:
6352 (WebCore::RenderThemeWin::RenderThemeWin):
6353 (WebCore::RenderThemeWin::~RenderThemeWin):
6354 (WebCore::RenderThemeWin::buttonTheme):
6355 (WebCore::RenderThemeWin::textFieldTheme):
6356 (WebCore::RenderThemeWin::menuListTheme):
6357 (WebCore::RenderThemeWin::sliderTheme):
6358 (WebCore::RenderThemeWin::close):
6359 (WebCore::RenderThemeWin::themeChanged):
6360 (WebCore::RenderThemeWin::supportsHover):
6361 (WebCore::fillFontDescription):
6362 (WebCore::RenderThemeWin::systemFont):
6363 (WebCore::RenderThemeWin::supportsFocus):
6364 (WebCore::RenderThemeWin::determineClassicState):
6365 (WebCore::RenderThemeWin::determineState):
6366 (WebCore::RenderThemeWin::determineSliderThumbState):
6367 (WebCore::RenderThemeWin::getClassicThemeData):
6368 (WebCore::RenderThemeWin::getThemeData):
6369 (WebCore::drawControl):
6370 (WebCore::RenderThemeWin::paintButton):
6371 (WebCore::RenderThemeWin::paintTextField):
6372 (WebCore::RenderThemeWin::paintMenuList):
6373 (WebCore::RenderThemeWin::adjustMenuListStyle):
6374 (WebCore::RenderThemeWin::adjustMenuListButtonStyle):
6375 (WebCore::RenderThemeWin::paintMenuListButton):
6376 (WebCore::RenderThemeWin::paintSliderTrack):
6377 (WebCore::RenderThemeWin::paintSliderThumb):
6378 (WebCore::RenderThemeWin::adjustSliderThumbSize):
6379 (WebCore::RenderThemeWin::paintSearchField):
6380 (WebCore::RenderThemeWin::adjustSearchFieldStyle):
6381 (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
6382 (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle):
6383 (WebCore::RenderThemeWin::adjustSearchFieldDecorationStyle):
6384 (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle):
6385 (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
6386 (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle):
6387 (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
6388 * rendering/RenderThemeWin.h:
6389 (WebCore::ThemeData::ThemeData):
6390 (WebCore::RenderThemeWin::paintSearchFieldDecoration):
6391 (WebCore::RenderThemeWin::adjustButtonStyle):
6392 (WebCore::RenderThemeWin::adjustTextFieldStyle):
6393 (WebCore::RenderThemeWin::adjustTextAreaStyle):
6394
dino@apple.comd511ce52008-09-09 19:50:25 +000063952008-09-09 Dean Jackson <dino@apple.com>
6396
6397 Reviewed by Sam Weinig.
6398
6399 Document::createEvent missing cases for animation and
6400 transition events.
6401 https://bugs.webkit.org/show_bug.cgi?id=20734
6402
6403 Test: transitions/transition-end-event-create.html
6404 Test: animations/animation-events-create.html
6405
6406 * dom/Document.cpp:
6407 (WebCore::Document::createEvent):
6408 - add the two cases
6409
mitz@apple.com1da7b882008-09-09 18:12:06 +000064102008-09-09 Dan Bernstein <mitz@apple.com>
6411
mitz@apple.com54921562008-09-09 18:48:34 +00006412 - Tiger build fix
6413
6414 * WebCore.Tiger.exp:
6415 * WebCore.base.exp:
6416 * platform/mac/WebCoreSystemInterface.h:
6417 * platform/mac/WebCoreSystemInterface.mm:
6418
64192008-09-09 Dan Bernstein <mitz@apple.com>
6420
mitz@apple.com1da7b882008-09-09 18:12:06 +00006421 Reviewed by Darin Adler.
6422
6423 - WebCore part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard
6424
6425 * WebCore.Tiger.exp:
6426 * WebCore.base.exp:
6427 * platform/graphics/SimpleFontData.h:
6428 * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
6429 (WebCore::GlyphPage::fill):
6430 * platform/graphics/mac/SimpleFontDataMac.mm:
6431 (WebCore::initFontData):
6432 (WebCore::SimpleFontData::platformInit):
6433 (WebCore::SimpleFontData::platformDestroy):
6434 * platform/mac/WebCoreSystemInterface.h:
6435 * platform/mac/WebCoreSystemInterface.mm:
6436
kmccullough@apple.com5ba965b2008-09-09 16:40:31 +000064372008-09-09 Kevin McCullough <kmccullough@apple.com>
6438
6439 Reviewed by Tim.
6440
6441 <rdar://problem/6198545> REGRESSION: Inspector debugger barfs on
6442 breakpoints inside eval.
6443
6444 * page/inspector/inspector.js:
6445
hausmann@webkit.orgdab0e872008-09-09 14:17:21 +000064462008-09-09 Joerg Bornemann <joerg.bornemann@trolltech.com>
6447
6448 Reviewed by Simon.
6449
6450 Fix compilation of the Qt port with disabled plugins on Windows
6451
6452 * WebCore.pro:
6453 * plugins/PluginView.cpp:
6454 (WebCore::PluginView::PluginView):
6455 * plugins/PluginView.h:
6456
ap@webkit.org2ba74d32008-09-09 08:11:01 +000064572008-09-09 Jungshik Shin <jungshik.shin@gmail.com>
6458
6459 Reviewed by Alexey Proskuryakov.
6460
6461 Try MIME charset names before trying IANA names
6462 ( https://bugs.webkit.org/show_bug.cgi?id=17537 )
6463
6464 With this change, shorter and more widely used names (preferred MIME
6465 names) are returned by document.charset, document.characterSet,
6466 document.inputEncoding rather than IANA names. This helps
6467 fixing bug 18085 in addition to web developers who are more familiar
6468 with MIME names. For instance, EUC-JP, ISO-8859-X and US-ASCII will be
6469 returned instead of Extended_UNIX_Code_Packed_Format_for_Japanese,
6470 ISO-8859-X:19xx, and ANSI_X3.4-1968. It also replaces IBM8xx with cp8xx.
6471 Note that cp/IBM 8xx are extremly rare in today's web. Even if they're
6472 used, the former is still recognized as aliases to the latter so that
6473 there's very little, if any, to worry about.
6474
6475 * platform/text/TextCodecICU.cpp:
6476 (WebCore::TextCodecICU::registerExtendedEncodingNames):
6477
weinig@apple.com22294302008-09-09 06:55:39 +000064782008-09-08 Sam Weinig <sam@webkit.org>
6479
6480 Reviewed by Maciej Stachowiak and Oliver Hunt.
6481
6482 Add forwarding headers.
6483
6484 * ForwardingHeaders/wtf/HashFunctions.h: Added.
6485
dino@apple.comd9962af2008-09-09 01:02:00 +000064862008-09-05 Dean Jackson <dino@apple.com>
6487
6488 Reviewed by Dan Bernstein.
6489
6490 Update grammar so that we can add a keyframe rule via the DOM.
6491 https://bugs.webkit.org/show_bug.cgi?id=20613
6492
6493 * css/CSSGrammar.y:
6494 * css/tokenizer.flex:
6495
antti@apple.com4b17a932008-09-09 00:40:45 +000064962008-09-08 Antti Koivisto <antti@apple.com>
6497
6498 Reviewed by Dan Bernstein.
6499
6500 Allow <br> for simple UA stylesheet. Editing code generates them. It does not
6501 actually show up in any of the default stylesheets.
6502
6503 * css/CSSStyleSelector.cpp:
6504 (WebCore::elementCanUseSimpleDefaultStyle):
6505
mitz@apple.com66fa91a2008-09-09 00:35:22 +000065062008-09-08 Dimitri Glazkov <dglazkov@google.com>
6507
6508 Reviewed by Dan Bernstein.
6509
6510 - fix https://bugs.webkit.org/show_bug.cgi?id=20237
6511 Zero width and space characters are displayed incorrectly if not contained in a fallback font
6512
6513 Adds an extra check for Object Replacement Character (U+FFFC) to address
6514 the issue with fast/text/zero-width-characters.html test when run
6515 with Windows system default fonts.
6516
6517 * platform/graphics/Font.h:
6518 (WebCore::Font::treatAsZeroWidthSpace):
6519
dino@apple.comf0a4b212008-09-08 22:51:49 +000065202008-09-08 Dean Jackson <dino@apple.com>
6521
6522 Reviewed by Sam Weinig.
6523
6524 Code style issue I forgot to fix from previous commit.
6525
6526 * platform/graphics/AffineTransform.cpp:
6527 (WebCore::AffineTransform::blend):
6528
dino@apple.com26625122008-09-08 22:46:41 +000065292008-09-08 Chris Marrin <cmarrin@apple.com>
6530
6531 Reviewed by Sam Weinig
6532
6533 - Animation of -webkit-transform matrix() function should not do linear interpolation
6534 https://bugs.webkit.org/show_bug.cgi?id=20667
6535
6536 Test: animations/matrix-anim.html
6537
6538 * ChangeLog:
6539 * platform/graphics/AffineTransform.cpp:
6540 (WebCore::affineTransformDecompose):
6541 (WebCore::affineTransformCompose):
6542 (WebCore::AffineTransform::blend):
6543 * platform/graphics/AffineTransform.h:
6544 * rendering/style/RenderStyle.cpp:
6545 (WebCore::MatrixTransformOperation::blend):
6546
ap@webkit.org243a9752008-09-08 16:21:16 +000065472008-09-08 Alexey Proskuryakov <ap@webkit.org>
6548
6549 Reviewed by Darin Adler.
6550
6551 https://bugs.webkit.org/show_bug.cgi?id=20668
6552 multipart/form-data does not always include Content-type for submitted files
6553
6554 Cannot be tested with DRT or manual tests.
6555
6556 * platform/MIMETypeRegistry.cpp:
6557 (WebCore::initializeSupportedNonImageMimeTypes): Fix spacing.
6558 (WebCore::MIMETypeRegistry::getMIMETypeForPath): Default to application/octet-stream for
6559 unknown extensions, not just missing ones.
6560
hausmann@webkit.orgaf796ea2008-09-08 13:00:19 +000065612008-09-08 Simon Hausmann <hausmann@webkit.org>
6562
6563 Build fix for the Qt/Windows build, define USE_JSC to
6564 enable the WebCore::String -> JSC::UString operator that
6565 MSVC insists on seeing
6566
6567 * WebCore.pro:
6568
andersca@apple.com3ac4f552008-09-08 11:39:34 +000065692008-09-08 Anders Carlsson <andersca@apple.com>
6570
6571 Reviewed by Maciej.
6572
6573 <rdar://problem/5850387> Showing bookmarks reloads Google Reader instead.
6574
6575 In some cases, timeouts scheduled by a page in the onunload handler could fire even when the
6576 page had been unloaded and replaced by a non-HTML representation based view (such as the bookmarks view).
6577
6578 Fix this by clearing timeouts for pages that aren't cached when the provisional load is committed.
6579
6580 * bindings/js/JSDOMWindowBase.h:
6581 * loader/FrameLoader.cpp:
6582 (WebCore::FrameLoader::commitProvisionalLoad):
6583
antti@apple.com57b3a102008-09-08 07:01:36 +000065842008-09-07 Antti Koivisto <antti@apple.com>
6585
6586 Reviewed by Dave Hyatt.
6587
6588 Don't leak the simple stylesheet.
6589 Also call RenderTheme::adjustDefaultStyleSheet() in right place.
6590
6591 * css/CSSStyleSelector.cpp:
6592 (WebCore::loadFullDefaultStyle):
6593 (WebCore::loadSimpleDefaultStyle):
6594 (WebCore::CSSStyleSelector::styleForElement):
6595
cwzwarich@webkit.org3f782f62008-09-08 01:28:33 +000065962008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
6597
cwzwarich@webkit.org951b1452008-09-08 04:25:32 +00006598 Reviewed by Oliver Hunt.
6599
6600 Bug 20711: Change KJS prefix on preprocessor macros to JSC
6601 <https://bugs.webkit.org/show_bug.cgi?id=20711>
6602
6603 * bindings/js/JSEventTargetBase.h:
6604 * bindings/js/JSHTMLInputElementBase.cpp:
6605 * bindings/js/JSHTMLInputElementBase.h:
6606 * bindings/scripts/CodeGeneratorJS.pm:
6607
66082008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
6609
cwzwarich@webkit.org3f782f62008-09-08 01:28:33 +00006610 Reviewed by Maciej Stachowiak.
6611
6612 Bug 20704: Replace the KJS namespace
6613 <https://bugs.webkit.org/show_bug.cgi?id=20704>
6614
6615 Rename the KJS namespace to JSC. There are still some uses of KJS in the
6616 names of JNI functions, and I will check if these are safe to change
6617 as well.
6618
6619 * WebCore.base.exp:
6620 * bindings/js/GCController.cpp:
6621 * bindings/js/JSAttrCustom.cpp:
6622 * bindings/js/JSAudioConstructor.cpp:
6623 * bindings/js/JSAudioConstructor.h:
6624 (WebCore::JSAudioConstructor::classInfo):
6625 * bindings/js/JSCSSRuleCustom.cpp:
6626 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
6627 * bindings/js/JSCSSValueCustom.cpp:
6628 * bindings/js/JSCanvasPixelArrayCustom.cpp:
6629 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
6630 * bindings/js/JSClipboardCustom.cpp:
6631 * bindings/js/JSConsoleCustom.cpp:
6632 * bindings/js/JSCustomSQLStatementCallback.cpp:
6633 (WebCore::JSCustomSQLStatementCallback::handleEvent):
6634 * bindings/js/JSCustomSQLStatementCallback.h:
6635 (WebCore::JSCustomSQLStatementCallback::create):
6636 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
6637 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
6638 * bindings/js/JSCustomSQLStatementErrorCallback.h:
6639 (WebCore::JSCustomSQLStatementErrorCallback::create):
6640 * bindings/js/JSCustomSQLTransactionCallback.cpp:
6641 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
6642 * bindings/js/JSCustomSQLTransactionCallback.h:
6643 (WebCore::JSCustomSQLTransactionCallback::create):
6644 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
6645 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
6646 * bindings/js/JSCustomSQLTransactionErrorCallback.h:
6647 (WebCore::JSCustomSQLTransactionErrorCallback::create):
6648 * bindings/js/JSCustomVoidCallback.cpp:
6649 (WebCore::JSCustomVoidCallback::handleEvent):
6650 * bindings/js/JSCustomVoidCallback.h:
6651 (WebCore::JSCustomVoidCallback::create):
6652 * bindings/js/JSCustomXPathNSResolver.cpp:
6653 (WebCore::JSCustomXPathNSResolver::create):
6654 * bindings/js/JSCustomXPathNSResolver.h:
6655 * bindings/js/JSDOMApplicationCacheCustom.cpp:
6656 (WebCore::JSDOMApplicationCache::dispatchEvent):
6657 * bindings/js/JSDOMBinding.cpp:
6658 (WebCore::jsOwnedStringOrNull):
6659 * bindings/js/JSDOMBinding.h:
6660 (WebCore::DOMObject::DOMObject):
6661 (WebCore::cacheDOMObject):
6662 (WebCore::cacheSVGDOMObject):
6663 (WebCore::DOMExceptionTranslator::DOMExceptionTranslator):
6664 (WebCore::toJS):
6665 * bindings/js/JSDOMWindowBase.cpp:
6666 * bindings/js/JSDOMWindowBase.h:
6667 (WebCore::JSDOMWindowBase::classInfo):
6668 (WebCore::JSDOMWindowBase::d):
6669 * bindings/js/JSDOMWindowCustom.cpp:
6670 (WebCore::JSDOMWindow::getPropertyAttributes):
6671 * bindings/js/JSDOMWindowCustom.h:
6672 (WebCore::asJSDOMWindow):
6673 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
6674 (WebCore::JSDOMWindow::customPut):
6675 (WebCore::JSDOMWindowBase::allowsAccessFrom):
6676 (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
6677 * bindings/js/JSDOMWindowShell.cpp:
6678 (WebCore::JSDOMWindowShell::getPropertyAttributes):
6679 * bindings/js/JSDOMWindowShell.h:
6680 (WebCore::JSDOMWindowShell::classInfo):
6681 * bindings/js/JSDatabaseCustom.cpp:
6682 * bindings/js/JSDocumentCustom.cpp:
6683 * bindings/js/JSDocumentFragmentCustom.cpp:
6684 * bindings/js/JSElementCustom.cpp:
6685 * bindings/js/JSEventCustom.cpp:
6686 * bindings/js/JSEventListener.cpp:
6687 * bindings/js/JSEventListener.h:
6688 (WebCore::JSUnprotectedEventListener::create):
6689 (WebCore::JSEventListener::create):
6690 * bindings/js/JSEventTargetBase.cpp:
6691 * bindings/js/JSEventTargetBase.h:
6692 (WebCore::JSEventTargetBase::getValueProperty):
6693 (WebCore::JSEventTargetBase::putValueProperty):
6694 (WebCore::JSEventTargetBase::getOwnPropertySlot):
6695 (WebCore::JSEventTargetBase::put):
6696 (WebCore::JSEventTargetPrototype::JSEventTargetPrototype):
6697 (WebCore::JSEventTargetPrototype::self):
6698 (WebCore::JSEventTargetPrototype::getOwnPropertySlot):
6699 (WebCore::JSEventTargetPrototype::classInfo):
6700 * bindings/js/JSEventTargetNode.cpp:
6701 * bindings/js/JSEventTargetNode.h:
6702 (WebCore::JSEventTargetNode::getOwnPropertySlot):
6703 (WebCore::JSEventTargetNode::getValueProperty):
6704 (WebCore::JSEventTargetNode::put):
6705 (WebCore::JSEventTargetNode::putValueProperty):
6706 * bindings/js/JSHTMLAllCollection.h:
6707 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
6708 (WebCore::JSHTMLAllCollection::toBoolean):
6709 * bindings/js/JSHTMLAppletElementCustom.cpp:
6710 * bindings/js/JSHTMLCollectionCustom.cpp:
6711 * bindings/js/JSHTMLDocumentCustom.cpp:
6712 * bindings/js/JSHTMLElementCustom.cpp:
6713 * bindings/js/JSHTMLEmbedElementCustom.cpp:
6714 * bindings/js/JSHTMLFormElementCustom.cpp:
6715 * bindings/js/JSHTMLFrameElementCustom.cpp:
6716 * bindings/js/JSHTMLFrameSetElementCustom.cpp:
6717 * bindings/js/JSHTMLIFrameElementCustom.cpp:
6718 * bindings/js/JSHTMLInputElementBase.cpp:
6719 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
6720 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
6721 * bindings/js/JSHTMLInputElementBase.h:
6722 (WebCore::JSHTMLInputElementBase::classInfo):
6723 * bindings/js/JSHTMLObjectElementCustom.cpp:
6724 * bindings/js/JSHTMLOptionElementConstructor.cpp:
6725 * bindings/js/JSHTMLOptionElementConstructor.h:
6726 (WebCore::JSHTMLOptionElementConstructor::classInfo):
6727 * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
6728 * bindings/js/JSHTMLSelectElementCustom.cpp:
6729 (WebCore::selectIndexSetter):
6730 (WebCore::JSHTMLSelectElement::indexSetter):
6731 * bindings/js/JSHTMLSelectElementCustom.h:
6732 * bindings/js/JSHistoryCustom.cpp:
6733 * bindings/js/JSImageConstructor.cpp:
6734 * bindings/js/JSImageConstructor.h:
6735 (WebCore::JSImageConstructor::classInfo):
6736 * bindings/js/JSInspectedObjectWrapper.cpp:
6737 * bindings/js/JSInspectedObjectWrapper.h:
6738 (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
6739 (WebCore::JSInspectedObjectWrapper::classInfo):
6740 * bindings/js/JSInspectorCallbackWrapper.cpp:
6741 * bindings/js/JSInspectorCallbackWrapper.h:
6742 (WebCore::JSInspectorCallbackWrapper::classInfo):
6743 (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
6744 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
6745 * bindings/js/JSLocationCustom.cpp:
6746 * bindings/js/JSMimeTypeArrayCustom.cpp:
6747 * bindings/js/JSNSResolver.cpp:
6748 * bindings/js/JSNSResolver.h:
6749 (WebCore::JSNSResolver::create):
6750 * bindings/js/JSNamedNodeMapCustom.cpp:
6751 * bindings/js/JSNamedNodesCollection.cpp:
6752 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
6753 * bindings/js/JSNamedNodesCollection.h:
6754 (WebCore::JSNamedNodesCollection::classInfo):
6755 * bindings/js/JSNavigatorCustom.cpp:
6756 * bindings/js/JSNodeCustom.cpp:
6757 * bindings/js/JSNodeFilterCondition.cpp:
6758 (WebCore::JSNodeFilterCondition::acceptNode):
6759 * bindings/js/JSNodeFilterCondition.h:
6760 (WebCore::JSNodeFilterCondition::create):
6761 * bindings/js/JSNodeFilterCustom.cpp:
6762 * bindings/js/JSNodeIteratorCustom.cpp:
6763 * bindings/js/JSNodeListCustom.cpp:
6764 * bindings/js/JSPluginArrayCustom.cpp:
6765 * bindings/js/JSPluginCustom.cpp:
6766 * bindings/js/JSPluginElementFunctions.cpp:
6767 (WebCore::getRuntimeObject):
6768 * bindings/js/JSPluginElementFunctions.h:
6769 * bindings/js/JSQuarantinedObjectWrapper.cpp:
6770 (WebCore::JSQuarantinedObjectWrapper::construct):
6771 (WebCore::JSQuarantinedObjectWrapper::call):
6772 * bindings/js/JSQuarantinedObjectWrapper.h:
6773 (WebCore::JSQuarantinedObjectWrapper::unwrappedObject):
6774 (WebCore::JSQuarantinedObjectWrapper::unwrappedGlobalObject):
6775 (WebCore::JSQuarantinedObjectWrapper::className):
6776 * bindings/js/JSRGBColor.cpp:
6777 * bindings/js/JSRGBColor.h:
6778 (WebCore::JSRGBColor::classInfo):
6779 * bindings/js/JSSQLResultSetRowListCustom.cpp:
6780 * bindings/js/JSSQLTransactionCustom.cpp:
6781 * bindings/js/JSSVGLazyEventListener.cpp:
6782 * bindings/js/JSSVGLazyEventListener.h:
6783 * bindings/js/JSSVGLengthCustom.cpp:
6784 * bindings/js/JSSVGMatrixCustom.cpp:
6785 (WebCore::JSSVGMatrix::inverse):
6786 (WebCore::JSSVGMatrix::rotateFromVector):
6787 * bindings/js/JSSVGPathSegCustom.cpp:
6788 * bindings/js/JSSVGPathSegListCustom.cpp:
6789 (WebCore::JSSVGPathSegList::initialize):
6790 (WebCore::JSSVGPathSegList::getItem):
6791 (WebCore::JSSVGPathSegList::insertItemBefore):
6792 (WebCore::JSSVGPathSegList::replaceItem):
6793 (WebCore::JSSVGPathSegList::removeItem):
6794 (WebCore::JSSVGPathSegList::appendItem):
6795 * bindings/js/JSSVGPointListCustom.cpp:
6796 * bindings/js/JSSVGTransformListCustom.cpp:
6797 * bindings/js/JSStorageCustom.cpp:
6798 * bindings/js/JSStyleSheetCustom.cpp:
6799 * bindings/js/JSStyleSheetListCustom.cpp:
6800 * bindings/js/JSTextCustom.cpp:
6801 * bindings/js/JSTreeWalkerCustom.cpp:
6802 * bindings/js/JSXMLHttpRequestConstructor.cpp:
6803 * bindings/js/JSXMLHttpRequestConstructor.h:
6804 (WebCore::JSXMLHttpRequestConstructor::classInfo):
6805 * bindings/js/JSXMLHttpRequestCustom.cpp:
6806 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
6807 * bindings/js/JSXSLTProcessorConstructor.cpp:
6808 * bindings/js/JSXSLTProcessorConstructor.h:
6809 (WebCore::JSXSLTProcessorConstructor::classInfo):
6810 * bindings/js/JSXSLTProcessorCustom.cpp:
6811 * bindings/js/ScheduledAction.cpp:
6812 * bindings/js/ScheduledAction.h:
6813 * bindings/js/ScriptController.cpp:
6814 (WebCore::ScriptController::attachDebugger):
6815 (WebCore::ScriptController::windowScriptNPObject):
6816 * bindings/js/ScriptController.h:
6817 * bindings/js/ScriptControllerGtk.cpp:
6818 (WebCore::ScriptController::createScriptInstanceForWidget):
6819 * bindings/js/ScriptControllerMac.mm:
6820 (WebCore::ScriptController::createScriptInstanceForWidget):
6821 (WebCore::ScriptController::windowScriptObject):
6822 (WebCore::ScriptController::clearPlatformScriptObjects):
6823 (WebCore::updateRenderingForBindings):
6824 (WebCore::ScriptController::initJavaJSBindings):
6825 * bindings/js/ScriptControllerQt.cpp:
6826 (WebCore::ScriptController::createScriptInstanceForWidget):
6827 * bindings/js/ScriptControllerWin.cpp:
6828 (WebCore::ScriptController::createScriptInstanceForWidget):
6829 * bindings/js/ScriptControllerWx.cpp:
6830 (WebCore::ScriptController::createScriptInstanceForWidget):
6831 * bindings/js/StringSourceProvider.h:
6832 (WebCore::StringSourceProvider::getRange):
6833 * bindings/objc/DOM.mm:
6834 (-[DOMNode JSC::Bindings::]):
6835 * bindings/objc/DOMInternal.h:
6836 * bindings/objc/DOMInternal.mm:
6837 (-[WebScriptObject _initializeScriptDOMNodeImp]):
6838 * bindings/objc/DOMUtility.mm:
6839 (JSC::createDOMWrapper):
6840 (WebCore::createDOMWrapper):
6841 * bindings/objc/WebScriptObject.mm:
6842 (WebCore::createJSWrapper):
6843 (-[WebScriptObject _initWithJSObject:JSC::originRootObject:JSC::Bindings::rootObject:JSC::Bindings::]):
6844 * bindings/objc/WebScriptObjectPrivate.h:
6845 * bindings/scripts/CodeGeneratorJS.pm:
6846 * bridge/NP_jsobject.cpp:
6847 * bridge/NP_jsobject.h:
6848 * bridge/c/c_class.cpp:
6849 * bridge/c/c_class.h:
6850 * bridge/c/c_instance.cpp:
6851 * bridge/c/c_instance.h:
6852 * bridge/c/c_runtime.cpp:
6853 * bridge/c/c_runtime.h:
6854 * bridge/c/c_utility.cpp:
6855 * bridge/c/c_utility.h:
6856 * bridge/jni/jni_class.cpp:
6857 * bridge/jni/jni_class.h:
6858 * bridge/jni/jni_instance.cpp:
6859 * bridge/jni/jni_instance.h:
6860 * bridge/jni/jni_jsobject.h:
6861 * bridge/jni/jni_jsobject.mm:
6862 (JavaJSObject::call):
6863 (JavaJSObject::convertJObjectToValue):
6864 * bridge/jni/jni_objc.mm:
6865 (JSC::Bindings::dispatchJNICall):
6866 * bridge/jni/jni_runtime.cpp:
6867 * bridge/jni/jni_runtime.h:
6868 * bridge/jni/jni_utility.cpp:
6869 * bridge/jni/jni_utility.h:
6870 * bridge/npruntime.cpp:
6871 (_NPN_GetStringIdentifier):
6872 * bridge/objc/WebScriptObject.h:
6873 * bridge/objc/objc_class.h:
6874 * bridge/objc/objc_class.mm:
6875 * bridge/objc/objc_instance.h:
6876 * bridge/objc/objc_instance.mm:
6877 * bridge/objc/objc_runtime.h:
6878 * bridge/objc/objc_runtime.mm:
6879 * bridge/objc/objc_utility.h:
6880 * bridge/objc/objc_utility.mm:
6881 * bridge/qt/qt_class.cpp:
6882 * bridge/qt/qt_class.h:
6883 * bridge/qt/qt_instance.cpp:
6884 * bridge/qt/qt_instance.h:
6885 * bridge/qt/qt_runtime.cpp:
6886 (JSC::Bindings::convertQVariantToValue):
6887 (JSC::Bindings::):
6888 * bridge/qt/qt_runtime.h:
6889 * bridge/runtime.cpp:
6890 * bridge/runtime.h:
6891 * bridge/runtime_array.cpp:
6892 * bridge/runtime_array.h:
6893 * bridge/runtime_method.cpp:
6894 * bridge/runtime_method.h:
6895 * bridge/runtime_object.cpp:
6896 * bridge/runtime_object.h:
6897 * bridge/runtime_root.cpp:
6898 (JSC::Bindings::RootObject::invalidate):
6899 (JSC::Bindings::RootObject::gcProtect):
6900 (JSC::Bindings::RootObject::gcUnprotect):
6901 * bridge/runtime_root.h:
6902 * bridge/testbindings.cpp:
6903 * bridge/testbindings.mm:
6904 * bridge/testqtbindings.cpp:
6905 * dom/Document.cpp:
6906 (WebCore::Document::~Document):
6907 * dom/NSResolver.h:
6908 * dom/Node.cpp:
6909 (WebCore::Node::setDocument):
6910 (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
6911 (WebCore::resolveNamespacesForSelector):
6912 (WebCore::Node::querySelector):
6913 (WebCore::Node::querySelectorAll):
6914 * dom/Node.h:
6915 * dom/NodeFilter.cpp:
6916 * dom/NodeFilter.h:
6917 * dom/NodeFilterCondition.cpp:
6918 * dom/NodeFilterCondition.h:
6919 * dom/NodeIterator.cpp:
6920 * dom/NodeIterator.h:
6921 * dom/Traversal.cpp:
6922 * dom/Traversal.h:
6923 * dom/TreeWalker.cpp:
6924 * dom/TreeWalker.h:
6925 * dom/make_names.pl:
6926 * history/CachedPage.cpp:
6927 * history/CachedPage.h:
6928 * html/HTMLPlugInElement.cpp:
6929 (WebCore::HTMLPlugInElement::getInstance):
6930 * html/HTMLPlugInElement.h:
6931 * loader/FrameLoader.cpp:
6932 * loader/FrameLoader.h:
6933 * loader/icon/IconDatabase.cpp:
6934 (WebCore::iconDatabase):
6935 * page/Console.cpp:
6936 * page/Console.h:
6937 * page/InspectorController.cpp:
6938 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
6939 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
6940 (WebCore::InspectorResource::setXMLHttpRequestProperties):
6941 (WebCore::InspectorResource::sourceString):
6942 (WebCore::getResourceDocumentNode):
6943 (WebCore::search):
6944 (WebCore::InspectorController::focusNode):
6945 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
6946 (WebCore::InspectorController::addDatabaseScriptResource):
6947 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
6948 * page/InspectorController.h:
6949 (WebCore::InspectorController::profiles):
6950 * page/JavaScriptCallFrame.cpp:
6951 (WebCore::JavaScriptCallFrame::scopeChain):
6952 * page/JavaScriptCallFrame.h:
6953 (WebCore::JavaScriptCallFrame::create):
6954 (WebCore::JavaScriptCallFrame::update):
6955 * page/JavaScriptDebugListener.h:
6956 * page/JavaScriptDebugServer.cpp:
6957 (WebCore::dispatchDidParseSource):
6958 * page/JavaScriptDebugServer.h:
6959 * page/JavaScriptProfile.cpp:
6960 * page/JavaScriptProfile.h:
6961 * page/JavaScriptProfileNode.cpp:
6962 (WebCore::getTotalTime):
6963 (WebCore::getSelfTime):
6964 (WebCore::getTotalPercent):
6965 (WebCore::getSelfPercent):
6966 (WebCore::getNumberOfCalls):
6967 (WebCore::getChildren):
6968 (WebCore::getVisible):
6969 * page/JavaScriptProfileNode.h:
6970 * page/Page.cpp:
6971 (WebCore::Page::setDebuggerForAllPages):
6972 (WebCore::Page::setDebugger):
6973 * page/Page.h:
6974 (WebCore::Page::debugger):
6975 * page/mac/FrameMac.mm:
6976 * platform/KURL.h:
6977 (WebCore::KURL::operator JSC::UString):
6978 * platform/text/AtomicString.cpp:
6979 (WebCore::AtomicString::add):
6980 (WebCore::AtomicString::find):
6981 * platform/text/AtomicString.h:
6982 (WebCore::AtomicString::AtomicString):
6983 * platform/text/PlatformString.h:
6984 * platform/text/String.cpp:
6985 (WebCore::charactersToDouble):
6986 * platform/win/BString.cpp:
6987 * platform/win/BString.h:
6988 * plugins/MimeTypeArray.h:
6989 * plugins/Plugin.h:
6990 * plugins/PluginArray.h:
6991 * plugins/PluginView.cpp:
6992 (WebCore::PluginView::start):
6993 (WebCore::PluginView::performRequest):
6994 (WebCore::PluginView::bindingInstance):
6995 * plugins/PluginView.h:
6996 * plugins/gtk/PluginViewGtk.cpp:
6997 (WebCore::PluginView::paint):
6998 (WebCore::PluginView::handleKeyboardEvent):
6999 (WebCore::PluginView::handleMouseEvent):
7000 (WebCore::PluginView::setNPWindowRect):
7001 (WebCore::PluginView::stop):
7002 (WebCore::PluginView::init):
7003 * plugins/qt/PluginViewQt.cpp:
7004 (WebCore::PluginView::setNPWindowRect):
7005 (WebCore::PluginView::stop):
7006 (WebCore::PluginView::init):
7007 * plugins/win/PluginViewWin.cpp:
7008 (WebCore::PluginView::dispatchNPEvent):
7009 (WebCore::PluginView::handleKeyboardEvent):
7010 (WebCore::PluginView::handleMouseEvent):
7011 (WebCore::PluginView::setNPWindowRect):
7012 (WebCore::PluginView::stop):
7013 * storage/Database.cpp:
7014 (WebCore::Database::Database):
7015 * xml/XMLHttpRequest.cpp:
7016 (WebCore::XMLHttpRequest::responseText):
7017 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
7018 (WebCore::XMLHttpRequest::clearResponse):
7019 (WebCore::XMLHttpRequest::dropProtection):
7020 (WebCore::XMLHttpRequest::didFinishLoading):
7021 (WebCore::XMLHttpRequest::didReceiveData):
7022 * xml/XMLHttpRequest.h:
7023
abarth@webkit.orge17b6052008-09-08 00:03:30 +000070242008-09-07 Adam Barth <abarth@webkit.org>
7025
7026 Reviewed by Sam Weinig.
7027
7028 Adopt opener restriction on frame navigation.
7029 https://bugs.webkit.org/show_bug.cgi?id=20642
7030
7031 This restriction helps prevent an attacker from navigating top-level
7032 windows that were created by another web site.
7033
7034 Tests: http/tests/security/frameNavigation/not-opener.html
7035 http/tests/security/frameNavigation/opener.html
7036
7037 * loader/FrameLoader.cpp:
7038 (WebCore::canAccessAncestor):
7039 (WebCore::FrameLoader::shouldAllowNavigation):
7040
mitz@apple.com83469af2008-09-07 22:29:56 +000070412008-09-07 Dan Bernstein <mitz@apple.com>
7042
mitz@apple.com08ff58c2008-09-07 23:19:11 +00007043 Reviewed by Maciej Stachowiak.
7044
7045 - use the correct sign for vertical offsets of combining marks
7046
7047 * platform/graphics/win/UniscribeController.cpp:
7048 (WebCore::UniscribeController::shapeAndPlaceItem):
7049
70502008-09-07 Dan Bernstein <mitz@apple.com>
7051
mitz@apple.com83469af2008-09-07 22:29:56 +00007052 Reviewed by Dave Hyatt.
7053
mitz@apple.com78685b22008-09-07 22:30:29 +00007054 - add the combining mark offsets in two places where I forgot them
7055
7056 * platform/graphics/win/FontCGWin.cpp:
7057 (WebCore::Font::drawGlyphs):
7058
70592008-09-07 Dan Bernstein <mitz@apple.com>
7060
7061 Reviewed by Dave Hyatt.
7062
mitz@apple.com83469af2008-09-07 22:29:56 +00007063 - correct glyph advances in complex text using web fonts rendered with
7064 Core Graphics
7065
7066 * platform/graphics/win/FontCustomPlatformData.cpp:
7067 (WebCore::FontCustomPlatformData::fontPlatformData):
7068
timothy@apple.com968ebc92008-09-07 16:48:41 +000070692008-09-07 Keishi Hattori <casey.hattori@gmail.com>
7070
7071 Adds console.dirxml support to the Web Inspector.
7072
7073 https://bugs.webkit.org/show_bug.cgi?id=19156
7074
7075 Reviewed by Timothy Hatcher.
7076
7077 * WebCore.vcproj/WebCore.vcproj: Added ElementsTreeOutline.js.
7078 * bindings/js/JSConsoleCustom.cpp:
7079 (WebCore::JSConsole::dirxml):
7080 * page/Console.cpp:
7081 (WebCore::Console::dirxml): Adds a ConsoleMessage with NodeMessageLevel.
7082 * page/Console.h:
7083 (WebCore::): Added NodeMessageLevel.
7084 * page/Console.idl: Added console.dirxml.
7085 * page/inspector/Console.js: A NodeMessage creates a ElementsTreeOutline.
7086 * page/inspector/ElementsPanel.js: Modified to use ElementsTreeOutline. The ElementsTreeOutline
7087 in the ElementsPanel has includeRootDOMNode and selectEnabled set to true.
7088 * page/inspector/ElementsTreeOutline.js: Added.
7089 (WebInspector.ElementsTreeOutline): A subclass of TreeOutline for displaying a DOM node tree.
7090 (WebInspector.ElementsTreeElement): A subclass of TreeElement for ElementsTreeOutline.
7091 * page/inspector/WebKit.qrc: Added ElementsTreeOutline.js.
7092 * page/inspector/inspector.css:
7093 * page/inspector/inspector.html: Added ElementsTreeOutline.js.
7094 * page/inspector/inspector.js: Moved hover related methods to WebInspector.
7095 (WebInspector.altKeyDown):
7096 (WebInspector.forceHoverHighlight):
7097 (WebInspector.hoveredDOMNode):
7098 (WebInspector._updateHoverHighlightSoon):
7099 (WebInspector._updateHoverHighlight):
7100 (WebInspector.documentKeyDown): Updates WebInspector.altKeyDown
7101 (WebInspector.documentKeyUp): Updates WebInspector.altKeyDown
7102 * page/inspector/utilities.js: Added getDocumentForNode, parentNodeOrFrameElement,
7103 isAncestorIncludingParentFrames.
7104
mrowe@apple.com61ba5f52008-09-07 06:08:56 +000071052008-09-06 Mark Rowe <mrowe@apple.com>
7106
7107 Qt build fix.
7108
7109 * bridge/qt/qt_runtime.cpp:
7110 (KJS::Bindings::convertQVariantToValue):
7111
mrowe@apple.comf88a4632008-09-07 05:44:58 +00007112=== End merge of squirrelfish-extreme ===
7113
71142008-09-05 Oliver Hunt <oliver@apple.com>
7115
7116 Start bringing up SFX on windows.
7117
7118 Reviewed by Mark Rowe and Sam Weinig
7119
7120 Start doing the work to bring up SFX on windows. Initially
7121 just working on WREC, as it does not make any calls so reduces
7122 the amount of code that needs to be corrected.
7123
7124 Add forwarding headers
7125
7126 * ChangeLog:
7127 * ForwardingHeaders/masm/MacroAssembler.h: Added.
7128 * WebCore.vcproj/WebCore.vcproj:
7129
71302008-08-27 Mark Rowe <mrowe@apple.com>
7131
7132 Reviewed by Oliver Hunt.
7133
7134 Fix the build of the full WebKit stack.
7135
7136 Add forwarding headers.
7137
7138 * ForwardingHeaders/masm/IA32MacroAsm.h: Added.
7139 * ForwardingHeaders/wrec/WREC.h: Added.
7140
7141=== Start merge of squirrelfish-extreme ===
7142
antti@apple.com13c24932008-09-07 03:54:21 +000071432008-09-06 Antti Koivisto <antti@apple.com>
7144
7145 Reviewed by Dave Hyatt.
7146
7147 <rdar://problem/6187043>
7148 Don't parse full HTML user agent style sheet unless it is actually needed
7149 <rdar://problem/6131889>
7150 WebView is significantly more expensive to create recently
7151
7152 Parsing the html4.css takes significant amount of time and memory (~50kb) on application
7153 startup. Some clients may never use most of the rules.
7154
7155 With this patch we use simplified UA stylesheet until we hit something it can't handle.
7156 This avoids full stylesheet parsing on application startup (due to empty document construction)
7157 and also makes it possible for clients with very simple demands (divs and spans only) never to load
7158 the full style.
7159
7160 It also delays view source style parsing until it is used.
7161
7162 * css/CSSStyleSelector.cpp:
7163 (WebCore::elementCanUseSimpleDefaultStyle):
7164 (WebCore::CSSStyleSelector::CSSStyleSelector):
7165 (WebCore::loadFullDefaultStyle):
7166 (WebCore::loadSimpleDefaultStyle):
7167 (WebCore::loadViewSourceStyle):
7168 (WebCore::CSSStyleSelector::matchUARules):
7169 (WebCore::CSSStyleSelector::styleForElement):
7170
kevino@webkit.orgd15b50f2008-09-07 03:46:50 +000071712008-09-06 Kevin Ollivier <kevino@theolliviers.com>
7172
7173 wx build fix.
7174
7175 * WebCoreSources.bkl:
7176
antti@apple.come953f862008-09-06 23:27:09 +000071772008-09-06 Antti Koivisto <antti@apple.com>
7178
antti@apple.com00dfa532008-09-06 23:32:26 +00007179 Reverting r35953 which was causing problems on Windows which relies on
7180 WebCore timers in nested event loops. r36132 did alternative fix.
7181
7182 * page/Chrome.cpp:
7183 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
7184 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
7185
71862008-09-06 Antti Koivisto <antti@apple.com>
7187
antti@apple.come953f862008-09-06 23:27:09 +00007188 Reviewed by Dan Bernstein.
7189
7190 Fix <rdar://problem/6201644>
7191 https://bugs.webkit.org/show_bug.cgi?id=20493
7192 Crash after OK in dialog box and reloading page in secure mode
7193
7194 Limited loader only fix since the general timer fix is causing problems on Windows.
7195
7196 * loader/loader.cpp:
7197 (WebCore::Loader::servePendingRequests):
7198 (WebCore::Loader::Host::Host):
7199 (WebCore::Loader::Host::didFinishLoading):
7200 (WebCore::Loader::Host::didFail):
7201 (WebCore::Loader::Host::didReceiveData):
7202 * loader/loader.h:
7203 (WebCore::Loader::Host::processingResource):
7204
mitz@apple.com046bf642008-09-06 08:31:02 +000072052008-09-06 Dan Bernstein <mitz@apple.com>
7206
7207 Reviewed by Dave Hyatt.
7208
mitz@apple.comc0b050b2008-09-06 22:39:34 +00007209 The initial Core Text adoption prototype was made by Daniel Fenwick.
7210
7211 - <rdar://problem/5158514> Add a Core Text-based complex text code path
7212
7213 Currently the Core Text code path is not used in any configuration.
7214
7215 * WebCore.xcodeproj/project.pbxproj: Added files.
7216 * config.h: Defined WTF_USE_ATSUI and WTF_USE_CORE_TEXT.
7217 * platform/graphics/Font.cpp:
7218 (WebCore::WidthIterator::advance): Moved the spacingDisabled() test out
7219 of the loop.
7220 * platform/graphics/GlyphBuffer.h:
7221 (WebCore::GlyphBuffer::add): Added this version that takes an advance.
7222 * platform/graphics/SimpleFontData.h: Added ATSUI and CORE_TEXT #ifdefs.
7223 Added getCTFont() and getCFStringAttributes() and corresponding data
7224 members for Core Text.
7225 * platform/graphics/mac/CoreTextController.cpp: Added.
7226 (WebCore::roundCGFloat): Helper function.
7227 (WebCore::ceilCGFloat): Helper function.
7228 (WebCore::CoreTextController::CoreTextRun::CoreTextRun):
7229 (WebCore::CoreTextController::CoreTextController):
7230 (WebCore::CoreTextController::offsetForPosition):
7231 (WebCore::CoreTextController::collectCoreTextRuns): Added. Segments the
7232 run into subruns as necessary such that each subrun can be rendered with
7233 a single font. Also separates out soft hyphens and replaces them with
7234 real hyphens, because Core Text does not emit a glyph for soft hyphens.
7235 Then calls collectCoreTextRunsForCharacters() on each subrun.
7236 (WebCore::CoreTextController::advance):
7237 (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Creates
7238 a CTLine from the given subrun and collects its CoreTextRuns.
7239 (WebCore::CoreTextController::adjustGlyphsAndAdvances): Applies the
7240 rounding hacks, letter- and word-spacing and glyph substitutions and
7241 stores the resulting adjusted glyphs and advances.
7242 * platform/graphics/mac/CoreTextController.h: Copied from WebCore/platform/graphics/win/UniscribeController.h.
7243 (WebCore::CoreTextController::totalWidth):
7244 (WebCore::CoreTextController::finalRoundingWidth):
7245 (WebCore::CoreTextController::CoreTextRun::ctRun):
7246 (WebCore::CoreTextController::CoreTextRun::glyphCount):
7247 (WebCore::CoreTextController::CoreTextRun::fontData):
7248 (WebCore::CoreTextController::CoreTextRun::characters):
7249 (WebCore::CoreTextController::CoreTextRun::stringLocation):
7250 (WebCore::CoreTextController::CoreTextRun::stringLength):
7251 (WebCore::CoreTextController::CoreTextRun::indexAt):
7252 * platform/graphics/mac/FontMac.mm: Moved the ATSUI-specific parts to
7253 FontMacATSUI.mm.
7254 * platform/graphics/mac/FontMacATSUI.mm: Copied from WebCore/platform/graphics/mac/FontMac.mm.
7255 (WebCore::disableLigatures): Changed to call
7256 FontPlatformData::allowsLigatures().
7257 (WebCore::overrideLayoutOperation): Changed to call
7258 FontPlatformData::roundsGlyphAdvances().
7259 * platform/graphics/mac/FontMacCoreText.cpp: Copied from WebCore/platform/graphics/win/FontWin.cpp.
7260 (WebCore::Font::selectionRectForComplexText): Changed to use
7261 totalWidth() instead of advancing to the end and using runWidthSoFar().
7262 (WebCore::Font::drawComplexText):
7263 (WebCore::Font::floatWidthForComplexText): Ditto.
7264 (WebCore::Font::offsetForPositionForComplexText):
7265 * platform/graphics/mac/FontPlatformData.h:
7266 * platform/graphics/mac/FontPlatformDataMac.mm:
7267 (WebCore::FontPlatformData::setFont):
7268 (WebCore::FontPlatformData::roundsGlyphAdvances): Added. Checks the
7269 AppKit rendering mode.
7270 (WebCore::FontPlatformData::allowsLigatures): Added. Implements the
7271 heuristic that allows ligatures in fonts that do not have a glyph for
7272 'a', based on the assumption that such fonts are only used in complex
7273 text.
7274 * platform/graphics/mac/SimpleFontDataMac.mm:
7275 (WebCore::SimpleFontData::platformInit):
7276 (WebCore::SimpleFontData::platformDestroy):
7277 (WebCore::SimpleFontData::getCTFont): Added.
7278 (WebCore::SimpleFontData::getCFStringAttributes): Added. Caches and
7279 returns an attributes dictionary.
7280 * platform/text/mac/ShapeArabic.c: Added ATSUI #ifdefs.
7281 * platform/text/mac/ShapeArabic.h: Ditto.
7282
72832008-09-06 Dan Bernstein <mitz@apple.com>
7284
7285 Reviewed by Dave Hyatt.
7286
mitz@apple.com046bf642008-09-06 08:31:02 +00007287 - make combining mark offsets work in CG text on Windows
7288
7289 * platform/graphics/win/FontCGWin.cpp:
7290 (WebCore::Font::drawGlyphs): The old code tried to translate the text
7291 matrix, but failed for two reasons: it did not actually change the
7292 matrix, and even if it did, CGContextSetTextPosition overwrites the
7293 translation values in the text matrix. Instead, just added the
7294 translation to the anchor point.
7295
alp@webkit.org369cdca2008-09-06 04:08:30 +000072962008-09-05 Gustavo Noronha Silva <gns@gnome.org>
7297
7298 Reviewed by Alp Toker.
7299
7300 https://bugs.webkit.org/show_bug.cgi?id=18346
7301 [GTK] Remove build warnings
7302
7303 Applied some casts, and removed an unused typedef to make the
7304 compiler happy, printing less warnings when building.
7305
7306 * page/gtk/AccessibilityObjectWrapperAtk.cpp:
7307 * platform/graphics/gtk/SimpleFontDataPango.cpp:
7308 (WebCore::SimpleFontData::containsCharacters):
7309 * platform/graphics/gtk/VideoSinkGStreamer.cpp:
7310 (webkit_video_sink_set_caps):
7311 * platform/network/soup/ResourceHandleSoup.cpp:
7312
eric@webkit.org3cb292c2008-09-05 22:17:56 +000073132008-09-05 Eric Seidel <eric@webkit.org>
7314
eric@webkit.org5ac37902008-09-06 00:21:58 +00007315 Reviewed by Adam Roben.
7316
7317 Build fix for WebKitWin and Chromium
7318
7319 * platform/FileSystem.h:
7320
73212008-09-05 Eric Seidel <eric@webkit.org>
7322
eric@webkit.org3cb292c2008-09-05 22:17:56 +00007323 Reviewed by Darin Adler.
7324
7325 Try to make Chromium compile with ToT:
7326 - Wrap a few places which depend on KJS:: in #if USE(JSC)
7327 - Include some windows forward declarations
7328
7329 * dom/Node.h:
7330 * page/Console.h:
7331 * page/animation/CompositeAnimation.h:
7332 * platform/FileSystem.h:
7333 * platform/graphics/Image.h:
7334 * platform/text/AtomicString.h:
7335 * platform/text/String.cpp:
7336 * rendering/style/RenderStyle.h:
7337
hyatt@apple.comff85d5e2008-09-05 21:52:08 +000073382008-09-05 Dave Hyatt <hyatt@apple.com>
7339
7340 Add support for runtime switchability of the Aqua look and the native look on Windows.
7341 Make RenderThemeWin compile by default even when USE(SAFARI_THEME) is set.
7342
7343 Reviewed by Adam Roben
7344
7345 * WebCore.vcproj/WebCore.vcproj:
7346 * page/Settings.cpp:
7347 (WebCore::Settings::setShouldPaintNativeControls):
7348 * page/Settings.h:
7349 (WebCore::Settings::shouldPaintNativeControls):
7350 * rendering/RenderThemeSafari.cpp:
7351 (WebCore::theme):
7352 * rendering/RenderThemeWin.cpp:
7353
antti@apple.combced97f2008-09-05 18:52:05 +000073542008-09-05 Antti Koivisto <antti@apple.com>
7355
7356 Qt build fix.
7357
7358 * svg/SVGFEImageElement.cpp:
7359 (WebCore::SVGFEImageElement::build):
7360
aroben@apple.comca0c3362008-09-05 15:33:28 +000073612008-09-05 Dirk Schulze <vbs85@gmx.de>
7362
7363 Gtk build fix
7364
7365 * GNUmakefile.am:
7366
antti@apple.com72e4a842008-09-05 09:28:11 +000073672008-09-05 Antti Koivisto <antti@apple.com>
7368
antti@apple.com49e46662008-09-05 10:36:59 +00007369 Another build fix.
7370
7371 * svg/SVGFEImageElement.cpp:
7372 (WebCore::SVGFEImageElement::notifyFinished):
7373
73742008-09-05 Antti Koivisto <antti@apple.com>
7375
antti@apple.comfeec2582008-09-05 10:03:39 +00007376 Build fixes.
7377
7378 * WebCore.xcodeproj/project.pbxproj:
7379 * svg/graphics/filters/SVGFEImage.cpp:
7380 (WebCore::FEImage::cachedImage):
7381
73822008-09-05 Antti Koivisto <antti@apple.com>
7383
darin@apple.com07c80c62008-09-05 18:15:43 +00007384 Reviewed by Darin Adler.
antti@apple.com72e4a842008-09-05 09:28:11 +00007385
7386 Most of the implementation for https://bugs.webkit.org/show_bug.cgi?id=17998
7387 When a resource is cached locally, WebKit should follow RFC 2616 "Specific end-to-end revalidation" instead of "Unspecified end-to-end revalidation"
7388
7389 Implement HTTP 1.1 "Specific end-to-end revalidation" for WebCore memory cache. This patch does
7390 not yet enable it for the biggest use case, reloading. However it is good for general browsing as
7391 well. Doing this in WebCore level as opposed to relying on disk cache has big benefit that
7392 we avoid re-decoding resources, especially images.
7393
7394 To be exact the enabled case is not actually the "Specific end-to-end revalidation" since it does not include
7395 CacheControl: max-age=0 header. That would be added in reload case.
7396
7397 The approach for revalidation is to kick the original resource out from the memory cache
7398 and create a new CachedResource that represents the revalidation request. In case
7399 we get 304 back for the request we put the original resource back to the cache, update
7400 its expiration date and switch the clients registered to revalidation resource to be
7401 clients of the original resource.
7402
7403 All heap allocated CachedImage pointers now use CachedResourceHandle<CachedImage> (and so on) instead.
7404 This allows updating the handles to point to the original resource when the revalidation succeeds. It
7405 also acts as refcounting smart pointer.
7406
7407 * WebCore.pro:
7408 * WebCore.vcproj/WebCore.vcproj:
7409 * WebCore.xcodeproj/project.pbxproj:
7410 * css/CSSFontFaceSource.h:
7411 * css/CSSImportRule.h:
7412 * dom/Clipboard.h:
7413 (WebCore::Clipboard::dragImage):
7414 * dom/ProcessingInstruction.h:
7415 * dom/ScriptElement.h:
7416 * dom/XMLTokenizer.cpp:
7417 (WebCore::XMLTokenizer::isWaitingForScripts):
7418 * dom/XMLTokenizer.h:
7419 * html/HTMLImageLoader.cpp:
7420 (WebCore::HTMLImageLoader::setImage):
7421 (WebCore::HTMLImageLoader::updateFromElement):
7422 (WebCore::HTMLImageLoader::notifyFinished):
7423 * html/HTMLImageLoader.h:
7424 (WebCore::HTMLImageLoader::image):
7425 * html/HTMLLinkElement.h:
7426 * html/HTMLTokenizer.cpp:
7427 (WebCore::HTMLTokenizer::reset):
7428 (WebCore::HTMLTokenizer::scriptHandler):
7429 (WebCore::HTMLTokenizer::notifyFinished):
7430 * html/HTMLTokenizer.h:
7431 * loader/Cache.cpp:
7432 (WebCore::Cache::revalidateResource):
7433 (WebCore::Cache::revalidationSucceeded):
7434 (WebCore::Cache::revalidationFailed):
7435 * loader/Cache.h:
7436 * loader/CachedResource.cpp:
7437 (WebCore::CachedResource::CachedResource):
7438 (WebCore::CachedResource::~CachedResource):
7439 (WebCore::CachedResource::isExpired):
7440 (WebCore::CachedResource::setResponse):
7441 (WebCore::CachedResource::deleteIfPossible):
7442 (WebCore::CachedResource::setResourceToRevalidate):
7443 (WebCore::CachedResource::clearResourceToRevalidate):
7444 (WebCore::CachedResource::switchClientsToRevalidatedResource):
7445 (WebCore::CachedResource::canUseCacheValidator):
7446 (WebCore::CachedResource::mustRevalidate):
7447 * loader/CachedResource.h:
7448 (WebCore::CachedResource::canDelete):
7449 (WebCore::CachedResource::registerHandle):
7450 (WebCore::CachedResource::unregisterHandle):
7451 (WebCore::CachedResource::isCacheValidator):
7452 (WebCore::CachedResource::resourceToRevalidate):
7453 (WebCore::CachedResource::setExpirationDate):
7454 * loader/CachedResourceHandle.cpp: Added.
7455 (WebCore::CachedResourceHandleBase::setResource):
7456 * loader/CachedResourceHandle.h: Added.
7457 (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
7458 (WebCore::CachedResourceHandleBase::get):
7459 (WebCore::CachedResourceHandleBase::operator!):
7460 (WebCore::CachedResourceHandleBase::operator UnspecifiedBoolType):
7461 (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
7462 (WebCore::CachedResourceHandleBase::operator=):
7463 (WebCore::CachedResourceHandle::CachedResourceHandle):
7464 (WebCore::CachedResourceHandle::get):
7465 (WebCore::CachedResourceHandle::operator->):
7466 (WebCore::CachedResourceHandle::operator=):
7467 (WebCore::CachedResourceHandle::operator==):
7468 (WebCore::CachedResourceHandle::operator!=):
7469 (WebCore::operator==):
7470 (WebCore::operator!=):
7471 * loader/DocLoader.cpp:
7472 (WebCore::DocLoader::checkForReload):
7473 * loader/UserStyleSheetLoader.h:
7474 * loader/loader.cpp:
7475 (WebCore::Loader::Host::servePendingRequests):
7476 (WebCore::Loader::Host::didFinishLoading):
7477 (WebCore::Loader::Host::didFail):
7478 (WebCore::Loader::Host::didReceiveResponse):
7479 (WebCore::Loader::Host::didReceiveData):
7480 * page/EventHandler.cpp:
7481 (WebCore::EventHandler::selectCursor):
7482 * rendering/RenderImage.cpp:
7483 (WebCore::RenderImage::setCachedImage):
7484 (WebCore::RenderImage::imageChanged):
7485 * rendering/RenderImage.h:
7486 (WebCore::RenderImage::cachedImage):
7487 (WebCore::RenderImage::imagePtr):
7488 * rendering/style/RenderStyle.h:
7489 * rendering/style/StyleCachedImage.h:
7490 (WebCore::StyleCachedImage::data):
7491 (WebCore::StyleCachedImage::cachedImage):
7492 * svg/SVGFEImageElement.h:
7493 * svg/graphics/filters/SVGFEImage.h:
7494 * xml/XSLImportRule.h:
7495
beidson@apple.comab60d982008-09-05 04:58:12 +000074962008-09-04 Brady Eidson <beidson@apple.com>
7497
7498 Reviewed by Mitz
7499
7500 <rdar://problem/6180236> - Safari times out connections after 1 or 2 minutes
7501
7502 A 60-second default timeout was added in http://trac.webkit.org/changeset/17144 in an attempt
7503 to model default NSURLRequest behavior in a cross-platform manner.
7504
7505 Sadly by always enforcing this 60 second timeout, WebCore was stomping over the wishes of any Webkit
7506 client that wished to enforce a much larger default timeout using NSURLRequest API.
7507
7508 Additionally, upon reviewing what all other browsers do, it seems apparent that "no limit" is desirable
7509 behavior on the web and this restores previous Safari/WebKit behavior.
7510
7511 It would be easy to write a layout test for this, but to be effective it would have
7512 to run for at least 61 seconds, which seems insane until will can parallelize run-webkit-tests
7513
7514 * manual-tests/timeout-test.html: Added.
7515 * manual-tests/timeout-test.php: Added.
7516
7517 * platform/network/ResourceRequestBase.h:
7518 (WebCore::ResourceRequestBase::ResourceRequestBase): Rename the constant to "unspecifiedTimeoutInterval"
7519 and make it UINT_MAX so platforms that do set it have an effective "no timeout." (Windows, for example)
7520 * platform/network/mac/ResourceRequestMac.mm:
7521 (WebCore::ResourceRequest::doUpdatePlatformRequest): If the timeout for this request is
7522 "unspecifiedTimeoutInterval", then don't bother setting the timeout using NSURLRequest API, allowing
7523 WebKit applications to enforce their own default timeout.
7524
mitz@apple.com20268542008-09-05 04:26:32 +000075252008-09-04 Dan Bernstein <mitz@apple.com>
7526
7527 Reviewed by Beth Dakin.
7528
7529 - fix <rdar://problem/6198514> Changing a button's opacity triggers relayout
7530
7531 Test: fast/repaint/button-spurious-layout-hint.html
7532
7533 * rendering/RenderButton.cpp:
7534 (WebCore::RenderButton::setStyle): Reset the inner block's style box
7535 flex to 0 to avoid getting a spurious layout hint.
7536
kevino@webkit.org3e8c4072008-09-04 23:53:04 +000075372008-09-04 Kevin Ollivier <kevino@theolliviers.com>
7538
7539 wx build fixes.
7540
7541 * WebCoreSources.bkl:
7542 * bindings/js/ScriptControllerWx.cpp: Added.
7543 (WebCore::ScriptController::createScriptInstanceForWidget):
7544 * page/wx/AccessibilityObjectWx.cpp: Added.
7545 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
7546 * platform/graphics/wx/GraphicsContextWx.cpp:
7547 * webcore-base.bkl:
7548 * webcore-wx.bkl:
7549
mitz@apple.com95a87502008-09-04 23:27:19 +000075502008-09-04 Dan Bernstein <mitz@apple.com>
7551
7552 Reviewed by Mark Rowe.
7553
7554 - roll out r36050 because it made svg/custom/invalid-fill-hex.svg fail,
7555 and fixing https://bugs.webkit.org/show_bug.cgi?id=15360 appears to
7556 require a different approach
7557
7558 * css/CSSGrammar.y:
7559
mrowe@apple.com12b7c2d2008-09-04 21:00:02 +000075602008-09-04 Mark Rowe <mrowe@apple.com>
7561
mrowe@apple.com5bc4ea82008-09-04 21:44:28 +00007562 Reviewed by Eric Seidel.
7563
7564 Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
7565 Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
7566
7567 * Configurations/WebCore.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
7568 * DerivedSources.make: Revert to checking for ENABLE_DASHBOARD_SUPPORT rather than looking
7569 for ENABLE_DASHBOARD_SUPPORT in FEATURE_DEFINES.
7570
75712008-09-04 Mark Rowe <mrowe@apple.com>
7572
mrowe@apple.com12b7c2d2008-09-04 21:00:02 +00007573 Mac build fix.
7574
7575 * config.h: Only check the value of HAVE_CONFIG_H if it is defined.
7576
eric@webkit.org0716a542008-09-04 20:44:12 +000075772008-09-04 Eric Seidel <eric@webkit.org>
7578
7579 Build fix only, no review.
7580
7581 * dom/XMLTokenizer.cpp: Fix the Chromium merge build by adding a missing header (the Mac files must include it somewhere).
7582
jmalonzo@webkit.org6afc5d42008-09-04 20:26:16 +000075832008-09-04 Marco Barisione <marco.barisione@collabora.co.uk>
7584
7585 Reviewed by Eric Seidel.
7586
7587 http://bugs.webkit.org/show_bug.cgi?id=20380
7588 [GTK][AUTOTOOLS] Include autotoolsconfig.h from config.h
7589
7590 * config.h: Include the configuration header generated by autotools if
7591 available.
7592
mitz@apple.com9d7e4262008-09-04 18:15:25 +000075932008-09-04 Dan Bernstein <mitz@apple.com>
7594
7595 Rubber-stamped by Dave Hyatt.
7596
7597 - rename CachedResource::allReferencesRemoved() to allClientsRemoved()
7598
7599 * loader/CachedFont.cpp:
7600 (WebCore::CachedFont::allClientsRemoved):
7601 * loader/CachedFont.h:
7602 * loader/CachedImage.cpp:
7603 (WebCore::CachedImage::allClientsRemoved):
7604 * loader/CachedImage.h:
7605 * loader/CachedResource.cpp:
7606 (WebCore::CachedResource::removeClient):
7607 * loader/CachedResource.h:
7608 (WebCore::CachedResource::allClientsRemoved):
7609
aroben@apple.com0da404d2008-09-04 16:09:33 +000076102008-09-04 Adam Roben <aroben@apple.com>
7611
aroben@apple.comdd3861a2008-09-04 16:09:53 +00007612 Windows build fix after r36071
7613
7614 We were getting these errors:
7615
7616 error C2356: initialization segment must not change during translation
7617 unit
7618
7619 This was happening because multiple files #included by
7620 DerivedSources.cpp were themselves #including StaticConstructors.h. I
7621 fixed the error by adding header guards to StaticConstructors.h so its
7622 contents will only be included once.
7623
7624 But it's also not a good idea for StaticConstructors.h to end up in
7625 DerivedSources.cpp, since it ends up "polluting" all the source files
7626 we have in there. So I removed all the files that include
7627 StaticConstructors.h and added some preprocessor directives to
7628 DerivedSources.cpp to catch this error in the future.
7629
7630 * DerivedSources.cpp: Removed the *Names.cpp files, which include
7631 StaticConstructors.h, and added some preprocessor directives to make
7632 sure we don't end up accidentally including StaticConstructors.h in
7633 the future.
7634 * WebCore.vcproj/WebCore.vcproj: Added the *Names.cpp files.
7635 * platform/StaticConstructors.h: Added header guards.
7636
76372008-09-04 Adam Roben <aroben@apple.com>
7638
aroben@apple.com0da404d2008-09-04 16:09:33 +00007639 Windows build fix
7640
7641 * platform/graphics/win/FontPlatformData.h: Added a missing #include
7642 of PassRefPtr.h, and corrected the capitalization of RefCounted.h.
7643 * platform/text/PlatformString.h: Added a missing #include of
7644 PassRefPtr.h.
7645
vestbo@webkit.orgc0aeddf2008-09-04 11:44:17 +000076462008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
7647
7648 Reviewed by Simon.
7649
vestbo@webkit.orgb82da912008-09-04 14:24:58 +00007650 Fix the QtWebKit build to match changes in r36016
7651
7652 * WebCore.pro:
7653 * bridge/qt/qt_instance.cpp:
7654 (KJS::Bindings::QtInstance::getRuntimeObject):
7655 * bridge/qt/qt_runtime.cpp:
7656 (KJS::Bindings::convertQVariantToValue):
7657 (KJS::Bindings::QtConnectionObject::execute):
7658
76592008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
7660
7661 Reviewed by Simon.
7662
vestbo@webkit.orgc0aeddf2008-09-04 11:44:17 +00007663 Re-enable support for user stylesheets in QtWebKit
7664
7665 QtWebKit now follows the FRAME_LOADS_USER_STYLESHEET
7666 code path, which allows us to keep API support for
7667 loading user style sheets from remote URLs.
7668
7669 As part of the change UserStyleSheetLoader.cpp/h was
7670 moved from WebCore/loader/mac to WebCore/loader.
7671
7672 * WebCore.pro:
7673 * WebCore.xcodeproj/project.pbxproj:
7674 * dom/Document.h:
7675 * loader/UserStyleSheetLoader.cpp: Renamed from WebCore/loader/mac/UserStyleSheetLoader.cpp.
7676 (UserStyleSheetLoader::UserStyleSheetLoader):
7677 (UserStyleSheetLoader::~UserStyleSheetLoader):
7678 * loader/UserStyleSheetLoader.h: Renamed from WebCore/loader/mac/UserStyleSheetLoader.h.
7679 * page/qt/FrameQt.cpp:
7680 (WebCore::Frame::setUserStyleSheetLocation):
7681 (WebCore::Frame::setUserStyleSheet):
7682
alp@webkit.org539ff852008-09-04 09:14:42 +000076832008-09-04 Alp Toker <alp@nuanti.com>
7684
7685 Reviewed by Eric.
7686
7687 Remove left-over QT and CAIRO platform checks.
7688
7689 * html/CanvasRenderingContext2D.cpp:
7690
eric@webkit.orgbc0aab82008-09-04 08:39:51 +000076912008-09-04 Eric Seidel <eric@webkit.org>
7692
7693 Reviewed by Mark Rowe.
7694
mitz@apple.com9388d252008-09-04 08:58:58 +00007695 Fix leak of TextMetrics due to over-ref as see on buildbot.
eric@webkit.orgbc0aab82008-09-04 08:39:51 +00007696
7697 * html/TextMetrics.h: use adoptRef since RefCounted starts @ refcount 1 instead of 0 now.
7698
mitz@apple.com89557c52008-09-04 07:26:53 +000076992008-09-04 Dan Bernstein <mitz@apple.com>
7700
7701 Reviewed by Dave Hyatt.
7702
7703 - fix https://bugs.webkit.org/show_bug.cgi?id=19717
7704 <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
7705
7706 * rendering/RenderBlock.cpp:
7707 (WebCore::RenderBlock::layoutOnlyPositionedObjects): In the
7708 positioned movement only case, call
7709 tryLayoutDoingPositionedMovementOnly() and fall back on doing a full
7710 layout if that fails.
7711 (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
7712 * rendering/RenderBox.h:
7713 (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): Renamed
7714 layoutDoingPositionedMovementOnly to this, and made this function
7715 check if the width changed. If it did, return, leaving the object
7716 dirty. The caller can then call layout(). The width can change even
7717 in the "positioned movement only" case if the object is shrink-to-fit
7718 and the available width constraint is met. (This was the case in the
7719 bug).
7720 * rendering/RenderObject.h:
7721 (WebCore::RenderObject::tryLayoutDoingPositionedMovementOnly):
7722 Renamed layoutDoingPositionedMovementOnly() to this.
7723
eric@webkit.org8883b4a2008-09-04 06:31:37 +000077242008-09-03 Eric Seidel <eric@webkit.org>
7725
7726 No review, build fix only.
7727
7728 Attempt to fix the Qt build.
7729
7730 * WebCore.pro: add page/animation to include path
7731
mrowe@apple.comaa4bb8d2008-09-04 03:20:30 +000077322008-09-03 Mark Rowe <mrowe@apple.com>
7733
7734 Mac build fix. Correctly detect whether dashboard support is enabled.
7735
7736 * DerivedSources.make:
7737
eric@webkit.org3eefe672008-09-04 01:32:26 +000077382008-09-03 Eric Seidel <eric@webkit.org>
7739
7740 Reviewed by Sam.
7741
eric@webkit.org5e069092008-09-04 01:32:51 +00007742 Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
7743
7744 * Configurations/WebCore.xcconfig: add missing ENABLE_*
7745 * config.h: add rules for V8_BINDINGS
7746
77472008-09-03 Eric Seidel <eric@webkit.org>
7748
7749 Reviewed by Sam.
7750
eric@webkit.org3eefe672008-09-04 01:32:26 +00007751 https://bugs.webkit.org/show_bug.cgi?id=20620
7752
7753 Add #if USE(JSC) around KJS dependencies
7754 Remove !USE(JAVASCRIPTCORE_BINDINGS) support for 3 reasons:
7755 1. Most platforms have it on anyway
7756 2. V8 is going to want to share some of that code
7757 3. Those platforms which want it off, should have a separate file instead of an #ifdef in our .cpp
7758
7759 * bindings/js/JSPluginElementFunctions.cpp: remove !USE(JAVASCRIPTCORE_BINDINGS) support
7760 * config.h: change JAVASCRIPTCORE_BINDINGS to JSC and add USE(V8)
7761 * html/HTMLAppletElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7762 * html/HTMLAppletElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7763 * html/HTMLEmbedElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7764 * html/HTMLEmbedElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7765 * html/HTMLObjectElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7766 * html/HTMLObjectElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7767 * html/HTMLPlugInElement.cpp: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
7768 * html/HTMLPlugInElement.h: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
7769 * platform/text/AtomicString.cpp: add USE(JSC)
7770 * platform/text/AtomicString.h: add USE(JSC)
7771 * platform/text/PlatformString.h: add USE(JSC)
7772 * platform/text/String.cpp: add USE(JSC)
7773 * platform/text/StringImpl.cpp: add USE(JSC)
7774 * platform/text/StringImpl.h: add USE(JSC)
7775
mrowe@apple.comfbe724c2008-09-03 23:46:54 +000077762008-09-03 Dean McNamee <deanm@chromium.org>
7777
7778 Reviewed by Darin Adler.
7779
7780 Fix https://bugs.webkit.org/show_bug.cgi?id=20511
7781 Bug 20511: Remove static initializers on Windows
7782
7783 Avoid static initializers on Windows by forcing Visual C++ to put
7784 all static initializers in a code segment that is never executed.
7785
7786 * config.h:
7787 * css/MediaFeatureNames.cpp:
7788 * dom/EventNames.cpp:
7789 * dom/QualifiedName.cpp:
7790 * dom/make_names.pl:
7791 * platform/StaticConstructors.h:
7792 * platform/text/AtomicString.cpp:
7793
mrowe@apple.com3aa63182008-09-03 23:40:49 +000077942008-09-03 Dirk Schulze <vbs85@gmx.de>
7795
7796 Reviewed by Dave Hyatt.
7797
7798 Make FontCairo draw TextStroke and TextFill separately.
7799
7800 [CAIRO] draw TextFill and TextStroke separately.
7801 [https://bugs.webkit.org/show_bug.cgi?id=20631]
7802
7803 * platform/graphics/cairo/FontCairo.cpp:
7804 (WebCore::Font::drawGlyphs):
7805
eric@webkit.org4ac94e62008-09-18 23:07:55 +000078062008-09-03 Peter Kasting <pkasting@google.com>
mrowe@apple.comdcd72b72008-09-03 23:34:40 +00007807
7808 Reviewed by Dave Hyatt.
7809
7810 https://bugs.webkit.org/show_bug.cgi?id=19663
7811 Account for paint and timer lag when animating images. Also pretend
7812 that images whose animations were paused (by becoming invisible)
7813 continued to animate, by "catching up" to the correct frame when they're
7814 shown again.
7815
7816 * platform/graphics/BitmapImage.cpp:
7817 (WebCore::BitmapImage::BitmapImage):
7818 (WebCore::BitmapImage::startAnimation):
7819 (WebCore::BitmapImage::advanceAnimation):
7820 (WebCore::BitmapImage::internalAdvanceAnimation):
7821 (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
7822 * platform/graphics/BitmapImage.h:
7823 * platform/graphics/cairo/ImageCairo.cpp:
7824 (WebCore::BitmapImage::draw):
7825 * platform/graphics/cg/ImageCG.cpp:
7826 (WebCore::BitmapImage::draw):
7827 * platform/graphics/qt/ImageQt.cpp:
7828 (WebCore::BitmapImage::draw):
7829 * platform/graphics/wx/ImageWx.cpp:
7830 (WebCore::BitmapImage::draw):
7831
kmccullough@apple.comb0f4c622008-09-03 21:53:17 +000078322008-09-03 Kevin McCullough <kmccullough@apple.com>
7833
7834 Reviewed by Tim.
7835
7836 Remove the rest of the "zombie" code from the profiler.
7837 - There is no longer a need for the ProfilerClient callback mechanism.
7838
7839 * page/Console.cpp:
7840 (WebCore::Console::Console):
7841 (WebCore::Console::profile):
7842 (WebCore::Console::profileEnd): Move the variables from the header to
7843 here since we don't have to wait for a callback to use them.
7844 * page/Console.h:
7845 * page/InspectorController.cpp:
7846 (WebCore::InspectorController::startUserInitiatedProfiling):
7847 (WebCore::InspectorController::stopUserInitiatedProfiling):
7848 * page/InspectorController.h:
7849
adachan@apple.com38c66182008-09-03 21:43:44 +000078502008-09-03 Ada Chan <adachan@apple.com>
7851
7852 Windows build fix.
7853
7854 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitCSSKeyframeRule.cpp and JSWebKitCSSKeyframesRule.cpp to the project.
7855
dino@apple.com5c917622008-09-03 21:15:53 +000078562008-09-01 Dean Jackson <dino@apple.com>
7857
7858 Reviewed by Dave Hyatt.
7859
7860 https://bugs.webkit.org/show_bug.cgi?id=20594
7861 Add DOM interfaces for WebKitCSSKeyframeRule
7862 and WebKitCSSKeyframesRule.
7863
7864 TEST: LayoutTests/css3/keyframes-rule.html
7865
7866 * css/WebKitCSSKeyframeRule.idl: Added
7867 * css/WebKitCSSKeyframesRule.idl: Added
7868
7869 * bindings/js/JSCSSRuleCustom.cpp:
7870 (WebCore::toJS):
7871 Add return of new JS Keyframe rules
7872 * bindings/objc/DOMInternal.h:
7873 Include new internal header
7874
7875 * DerivedSources.make:
7876 * GNUmakefile.am:
7877 * WebCore.pro:
7878 * WebCore.vcproj/WebCore.vcproj:
7879 * WebCore.xcodeproj/project.pbxproj:
7880 * WebCoreSources.bkl:
7881 Build configs for new files
7882
aroben@apple.com1f51bfa2008-09-03 20:30:59 +000078832008-09-03 Adam Roben <aroben@apple.com>
7884
7885 Windows build fix
7886
7887 * DerivedSources.cpp: Add JSTextMetrics.cpp to fix the build.
7888 * WebCore.vcproj/WebCore.vcproj: Add JSTextMetrics.h for
7889 convenience/consistency.
7890
adele@apple.com27713582008-09-03 20:13:41 +000078912008-09-03 Adele Peterson <adele@apple.com>
7892
7893 Build fix.
7894
7895 * WebCore.vcproj/WebCore.vcproj:
7896
hyatt@apple.com4b38ed82008-09-03 18:32:05 +000078972008-09-03 David Hyatt <hyatt@apple.com>
7898
7899 Fix for bug 18203, right floats should be allowed to overflow past the left border edge.
7900
7901 Reviewed by Darin (ages ago)
7902
7903 Added fast/block/float/clamped-right-float.html
7904
7905 * rendering/RenderBlock.cpp:
7906 (WebCore::RenderBlock::positionNewFloats):
7907
hyatt@apple.comafe62052008-09-03 18:13:39 +000079082008-09-02 David Hyatt <hyatt@apple.com>
7909
7910 Add support for canvas text drawing APIs.
7911
7912 Reviewed by olliej
7913
7914 Tests added as fast/canvas/canvas-text-*.html
7915
7916 * DerivedSources.make:
7917 * WebCore.xcodeproj/project.pbxproj:
7918 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
7919 (WebCore::JSCanvasRenderingContext2D::fillText):
7920 (WebCore::JSCanvasRenderingContext2D::strokeText):
7921 * css/CSSStyleSelector.cpp:
7922 (WebCore::CSSStyleSelector::initForStyleResolve):
7923 (WebCore::CSSStyleSelector::applyPropertyToStyle):
7924 * css/CSSStyleSelector.h:
7925 * html/CanvasRenderingContext2D.cpp:
7926 (WebCore::CanvasRenderingContext2D::State::State):
7927 (WebCore::CanvasRenderingContext2D::font):
7928 (WebCore::CanvasRenderingContext2D::setFont):
7929 (WebCore::CanvasRenderingContext2D::textAlign):
7930 (WebCore::CanvasRenderingContext2D::setTextAlign):
7931 (WebCore::CanvasRenderingContext2D::textBaseline):
7932 (WebCore::CanvasRenderingContext2D::setTextBaseline):
7933 (WebCore::CanvasRenderingContext2D::fillText):
7934 (WebCore::CanvasRenderingContext2D::strokeText):
7935 (WebCore::CanvasRenderingContext2D::measureText):
7936 (WebCore::CanvasRenderingContext2D::drawTextInternal):
7937 (WebCore::CanvasRenderingContext2D::accessFont):
7938 * html/CanvasRenderingContext2D.h:
7939 * html/CanvasRenderingContext2D.idl:
7940 * html/TextMetrics.h: Added.
7941 (WebCore::TextMetrics::create):
7942 (WebCore::TextMetrics::width):
7943 (WebCore::TextMetrics::setWidth):
7944 (WebCore::TextMetrics::TextMetrics):
7945 * html/TextMetrics.idl: Added.
7946 * platform/graphics/Font.cpp:
7947 (WebCore::Font::lineGap):
7948 * platform/graphics/Font.h:
7949 * platform/graphics/GraphicsContext.cpp:
7950 (WebCore::GraphicsContext::drawBidiText):
7951 * platform/graphics/GraphicsContext.h:
7952 * platform/graphics/GraphicsTypes.cpp:
7953 (WebCore::textAlignName):
7954 (WebCore::parseTextAlign):
7955 (WebCore::textBaselineName):
7956 (WebCore::parseTextBaseline):
7957 * platform/graphics/GraphicsTypes.h:
7958 (WebCore::):
7959
sullivan@apple.combc066af2008-09-03 17:37:24 +000079602008-09-03 John Sullivan <sullivan@apple.com>
7961
7962 Fixed <rdar://problem/6193022> <rdar://problem/6193022> Crash occurs at WebCore::AnimationBase::propertiesEqual () after certain steps
7963
7964 Fixed by Darin, reviewed by me
7965
7966 * page/animation/AnimationBase.cpp:
7967 (WebCore::AnimationBase::propertiesEqual):
7968 added ensurePropertyMap() to this static function
7969 (WebCore::AnimationBase::getPropertyAtIndex):
7970 ditto
7971 (WebCore::AnimationBase::getNumProperties):
7972 ditto
7973
kmccullough@apple.com70168ee2008-09-03 17:35:42 +000079742008-09-03 Kevin McCullough <kmccullough@apple.com>
7975
7976 Reviewed by Darin and Tim.
7977
7978 Remove most of the "zombie" mode from the profiler. Next we will need
7979 to remove the client callback mechanism in profiles.
7980 - These changes are a result of changes to JSCore.
7981
7982 * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html:
7983 * page/Console.cpp:
7984 (WebCore::retrieveLastCaller):
7985 (WebCore::Console::profileEnd):
7986 * page/InspectorController.cpp:
7987 (WebCore::InspectorController::stopUserInitiatedProfiling):
7988
adele@apple.com643616b2008-09-03 16:57:58 +000079892008-09-03 Adele Peterson <adele@apple.com>
7990
7991 Reviewed by Darin Adler.
7992
7993 Test: fast/forms/search-display-none-cancel-button.html
7994
7995 Allow display:none to work on a search field's cancel button. Prepare for adding more style-ability for the results button too.
7996
7997 * css/html4.css: Set display:inline-block for these buttons. Now they can be overridden by a web author.
7998
7999 * rendering/RenderTextControl.cpp:
8000 (WebCore::RenderTextControl::setStyle): Add nil checks for the button renderers.
8001 (WebCore::RenderTextControl::createResultsButtonStyle): Don't set the display explicitly. This is now done in html4.css.
8002 (WebCore::RenderTextControl::createCancelButtonStyle): ditto.
8003 (WebCore::RenderTextControl::createSubtreeIfNeeded):
8004 Reorganize this code so our complicated way of adding shadow nodes is abstracted out into the TextControlInnerElement class.
8005 (WebCore::RenderTextControl::updateFromElement): Added nil checks for the button renderers.
8006 (WebCore::RenderTextControl::subtreeHasChanged): ditto.
8007 (WebCore::RenderTextControl::calcHeight): ditto.
8008 (WebCore::RenderTextControl::nodeAtPoint): ditto.
8009 (WebCore::RenderTextControl::layout): ditto.
8010 (WebCore::RenderTextControl::calcPrefWidths): ditto.
8011 (WebCore::RenderTextControl::clientPaddingLeft): ditto.
8012 (WebCore::RenderTextControl::clientPaddingRight): ditto.
8013
8014 * rendering/TextControlInnerElements.cpp:
8015 (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock): Moved from RenderTextControl.cpp.
8016 (WebCore::RenderTextControlInnerBlock::nodeAtPoint): ditto.
8017 (WebCore::TextControlInnerElement::attachInnerElement): Added.
8018 This does all the separate steps of attaching a shadow node that used to be repeated in RenderTextControl::createSubtreeIfNeeded for each element.
8019 (WebCore::TextControlInnerTextElement::createRenderer): Added. Creates a RenderTextControlInnerBlock.
8020 * rendering/TextControlInnerElements.h:
8021
ap@webkit.orgacd84142008-09-03 08:08:19 +000080222008-08-28 Alexey Proskuryakov <ap@webkit.org>
8023
8024 Reviewed by Maciej.
8025
8026 Elminate SQLiteAuthorizer class.
8027
8028 * WebCore.xcodeproj/project.pbxproj:
8029 * WebCore.vcproj/WebCore.vcproj:
8030 * GNUmakefile.am
8031 Removed SQLiteAuthorizer.h.
8032
8033 * platform/sql/SQLiteAuthorizer.cpp:
8034 * platform/sql/SQLiteAuthorizer.h: Removed.
8035 * platform/sql/SQLiteDatabase.cpp:
8036 (WebCore::SQLiteDatabase::authorizerFunction):
8037 (WebCore::SQLiteDatabase::setAuthorizer):
8038 * platform/sql/SQLiteDatabase.h:
8039 * storage/DatabaseAuthorizer.h:
8040 (WebCore::DatabaseAuthorizer::create):
8041 (WebCore::DatabaseAuthorizer::createView):
8042 (WebCore::DatabaseAuthorizer::createTempView):
8043 (WebCore::DatabaseAuthorizer::dropView):
8044 (WebCore::DatabaseAuthorizer::dropTempView):
8045 (WebCore::DatabaseAuthorizer::allowSelect):
8046 (WebCore::DatabaseAuthorizer::allowReindex):
8047 Merge SQLiteAuthorizer and DatabaseAuthorizer, as keeping them separate serves no purpose.
8048
mrowe@apple.com2ecd4862008-09-03 07:05:48 +000080492008-09-03 Dirk Schulze <vbs85@gmx.de>
8050
8051 Reviewed by Mark Rowe.
8052
8053 WebKitGtk build fix.
8054
8055 * GNUmakefile.am:
8056 * page/animation/AnimationController.h:
8057
mrowe@apple.come344ad02008-09-03 06:59:03 +000080582008-09-02 Robert Blaut <webkit@blaut.biz>
8059
8060 Reviewed by Geoff Garen.
8061
8062 Fix for <https://bugs.webkit.org/show_bug.cgi?id=16913>
8063 Misplaced elements should not close DL lists.
8064
8065 Test: fast/invalid/test-case-tr-th-td-should-not-close-dl-list.html
8066
8067 * html/HTMLParser.cpp:
8068 (WebCore::HTMLParser::handleError):
8069
mrowe@apple.com7a909462008-09-03 06:51:31 +000080702008-09-02 Glenn Wilson <wilsong@gmail.com>
8071
8072 Reviewed by Darin Adler.
8073
8074 Fix for <https://bugs.webkit.org/show_bug.cgi?id=15360>
8075 Bug 15360: color:#{predefined colorName} is treated as colorName in Safari
8076
8077 We would inappropriately interpret and apply an invalid CSS "color" property
8078 when the value is a predefined color preceded by a '#' symbol. For example,
8079 style="color:#gray;" would apply the color gray when it should not.
8080
8081 In the bison template, "hexcolor" was defined as both "HEX maybe_space" OR "IDENT maybe_space".
8082 This caused identifiers not fitting the appropriate hex format but preceded by a '#' to be
8083 interpreted as a valid color (CSSPrimitiveValue::CSS_PARSER_HEXCOLOR), when it was really just
8084 an ignorable token.
8085
8086 To correct this, "IDENT maybe_space" was removed from "hexcolor" and added under "term" as
8087 '#' IDENT maybe_space, which is then processed as a CSSPrimitiveValue::CSS_STRING instead of
8088 CSSPrimitiveValue::CSS_PARSER_HEXCOLOR.
8089
8090 Test: css1/color_and_background/invalid_color.html
8091
8092 * css/CSSGrammar.y:
8093
mrowe@apple.comda9a1442008-09-03 06:22:12 +000080942008-09-02 Mihnea Ovidenie <mihnea@adobe.com>
8095
8096 Reviewed by Darin Adler.
8097
8098 Fix for https://bugs.webkit.org/show_bug.cgi?id=19964
8099 Bug 19964: Divide by zero crash in RenderBox::calculateBackgroundSize with 0,0 bmp background image
8100
8101 Add a check to RenderBox::repaintLayerRectsForImage to make sure the current layer image can be rendered.
8102
8103 Test: css3/khtml-background-size-0x0-bmp.html
8104
8105 * rendering/RenderBox.cpp:
8106 (WebCore::RenderBox::repaintLayerRectsForImage):
8107
mrowe@apple.com6625ae52008-09-03 06:12:30 +000081082008-09-02 Glenn Wilson <wilsong@gmail.com>
8109
8110 Reviewed by Eric Seidel.
8111
8112 Fix https://bugs.webkit.org/show_bug.cgi?id=20397
8113 Bug 20397: Invalid webkit-border-bottom-left-radius property causes crash
8114
8115 The function checkForOrphanedUnits() would change the length of a list whose size was
8116 was already determined before the call to checkForOrphanedUnits was made. Later in
8117 the caller, the old size was being used for boundary management.
8118
8119 This has been fixed by moving the call to checkForOrphanedUnits() earlier in the
8120 calling function, before the size of the list is determined.
8121
8122 Test: fast/css/orphaned_units_crash.html
8123
8124 * css/CSSParser.cpp:
8125 (WebCore::CSSParser::parseValue): Moved call to checkForOrphanedUnits() earlier in the function.
8126
mrowe@apple.com170bd522008-09-03 05:49:51 +000081272008-09-02 Dirk Schulze <vbs85@gmx.de>
8128
8129 Reviewed by Darin Adler.
8130
mrowe@apple.comeb877a52008-09-03 06:01:15 +00008131 Fallback on invalid fill or stroke styles in Canvas was
8132 transparent black. Changed it to last valid style.
8133
8134 Canvas fillStyle() and strokeStyle() needs fallback
8135 https://bugs.webkit.org/show_bug.cgi?id=20474
8136
8137 Tests: fast/canvas/canvas-invalid-fillstyle.html
8138 fast/canvas/canvas-invalid-strokestyle.html
8139
8140 * html/CanvasStyle.cpp:
8141 (WebCore::CanvasStyle::applyStrokeColor):
8142 (WebCore::CanvasStyle::applyFillColor):
8143
81442008-09-02 Dirk Schulze <vbs85@gmx.de>
8145
8146 Reviewed by Darin Adler.
8147
mrowe@apple.com170bd522008-09-03 05:49:51 +00008148 Fix https://bugs.webkit.org/show_bug.cgi?id=20468
8149 Updated drawImage() in canvas to match the current specification.
8150
8151 Test: fast/canvas/drawImage-with-negative-source-destination.html
8152
8153 * html/CanvasRenderingContext2D.cpp:
8154 (WebCore::normalizeRect):
8155 (WebCore::CanvasRenderingContext2D::drawImage):
8156
mrowe@apple.com96916d12008-09-03 05:41:44 +000081572008-08-26 Mark Rowe <mrowe@apple.com>
8158
8159 Reviewed by Darin Adler.
8160
8161 <rdar://problem/5768210> Switch back to the system version of SQLite
8162
8163 Use the system version of SQLite when it is new enough to provide the functionality
8164 that WebCore requires.
8165
8166 * Configurations/Base.xcconfig:
8167 * Configurations/DebugRelease.xcconfig:
8168 * Configurations/WebCore.xcconfig:
8169
mitz@apple.comce268c12008-09-03 02:59:00 +000081702008-09-02 Dan Bernstein <mitz@apple.com>
8171
8172 - build fix
8173
8174 * page/animation/AnimationBase.h:
8175
dino@apple.com7e49a7a2008-09-03 01:32:14 +000081762008-09-02 Chris Marrin <cmarrin@apple.com>
8177
8178 Reviewed by Dave Hyatt.
8179
8180 AnimationController.cpp should be split into separate files
8181 https://bugs.webkit.org/show_bug.cgi?id=20604
8182
8183 Note: All makefiles, except WebCore.xcodeproj have been changed without testing, upon
8184 recommendation of Dave Hyatt.
8185
8186 * GNUmakefile.am:
8187 * WebCore.pro:
8188 * WebCore.vcproj/WebCore.vcproj:
8189 * WebCore.xcodeproj/project.pbxproj:
8190 * WebCoreSources.bkl:
8191 Build files.
8192
8193 * page/AnimationController.cpp: Removed.
8194 * page/AnimationController.h: Removed.
8195 * page/animation: Added.
8196 * page/animation/AnimationBase.cpp: Added.
8197 * page/animation/AnimationBase.h: Added.
8198 * page/animation/AnimationController.cpp: Copied from WebCore/page/AnimationController.cpp.
8199 * page/animation/AnimationController.h: Copied from WebCore/page/AnimationController.h.
8200 * page/animation/CompositeAnimation.cpp: Added.
8201 * page/animation/CompositeAnimation.h: Added.
8202 * page/animation/ImplicitAnimation.cpp: Added.
8203 * page/animation/ImplicitAnimation.h: Added.
8204 * page/animation/KeyframeAnimation.cpp: Added.
8205 * page/animation/KeyframeAnimation.h: Added.
8206
mitz@apple.comcb917a22008-09-03 00:57:37 +000082072008-09-02 Dan Bernstein <mitz@apple.com>
8208
8209 - release build fix
8210
8211 * platform/graphics/cg/GraphicsContextCG.cpp:
8212 (WebCore::calculateDrawingMode):
8213
timothy@apple.comf3aa7342008-09-02 21:30:26 +000082142008-09-02 Timothy Hatcher <timothy@apple.com>
8215
timothy@apple.comc33ff3c2008-09-02 21:35:02 +00008216 Make console functions log the correct resource URL and
8217 line number for where the call originated.
8218
8219 https://bugs.webkit.org/show_bug.cgi?id=17234
8220 <rdar://problem/5732837>
8221
8222 Reviewed by Kevin McCullough.
8223
8224 Test: manual-tests/inspector/console-call-line-numbers.html
8225
8226 * bindings/js/JSConsoleCustom.cpp:
8227 (WebCore::JSConsole::count): Call the impl.
8228 (WebCore::JSConsole::timeEnd): Ditto.
8229 * manual-tests/inspector/console-call-line-numbers.html: Added.
8230 * manual-tests/inspector/resources/script-console-calls.js: Added.
8231 * page/Console.cpp:
8232 (WebCore::retrieveLastCaller): Helper to get the URL and line.
8233 (WebCore::Console::error): Call retrieveLastCaller to get the URL and
8234 line number to pass to addMessageToConsole.
8235 (WebCore::Console::info): Ditto.
8236 (WebCore::Console::log): Ditto.
8237 (WebCore::Console::assertCondition): Ditto.
8238 (WebCore::Console::count): Ditto.
8239 (WebCore::Console::timeEnd): Ditto.
8240 (WebCore::Console::warn): Ditto.
8241 * page/Console.h:
8242 * page/Console.idl: Make count and timeEnd custom.
8243
82442008-09-02 Timothy Hatcher <timothy@apple.com>
8245
timothy@apple.comf3aa7342008-09-02 21:30:26 +00008246 Removed IDL files from WebCore's framework resources.
8247
8248 * WebCore.xcodeproj/project.pbxproj:
8249
mitz@apple.comfb6ad392008-09-02 20:39:29 +000082502008-09-02 Dan Bernstein <mitz@apple.com>
8251
8252 Reviewed by Dave Hyatt.
8253
8254 - <rdar://problem/5681647> pages at http://www.stendmarsofa.com/ are so slow to calculate style it seems like a hang
8255
8256 * html/HTMLParser.cpp:
8257 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added a
8258 cap on the number of consecutive identical residual style tags to
8259 reopen.
8260 (WebCore::HTMLParser::popBlock): Ditto.
8261
ap@webkit.org879328b2008-09-02 16:16:06 +000082622008-09-02 Alexey Proskuryakov <ap@webkit.org>
8263
8264 Reviewed by Adam Roben.
8265
8266 A little database quota management cleanup.
8267
8268 * storage/OriginQuotaManager.cpp:
8269 (WebCore::OriginQuotaManager::OriginQuotaManager):
8270 (WebCore::OriginQuotaManager::lock):
8271 (WebCore::OriginQuotaManager::unlock):
8272 (WebCore::OriginQuotaManager::trackOrigin):
8273 (WebCore::OriginQuotaManager::tracksOrigin):
8274 (WebCore::OriginQuotaManager::addDatabase):
8275 (WebCore::OriginQuotaManager::removeDatabase):
8276 (WebCore::OriginQuotaManager::removeOrigin):
8277 (WebCore::OriginQuotaManager::markDatabase):
8278 (WebCore::OriginQuotaManager::diskUsage):
8279 * storage/OriginQuotaManager.h:
8280 Changed to assert that a lock is taken more directly and reliably. Removed comments about
8281 main/background threads, as this is likely to stop being true with synchronous Database calls
8282 being made on worker threads.
8283
8284 * storage/OriginUsageRecord.cpp:
8285 (WebCore::OriginUsageRecord::OriginUsageRecord):
8286 (WebCore::OriginUsageRecord::addDatabase):
8287 (WebCore::OriginUsageRecord::removeDatabase):
8288 (WebCore::OriginUsageRecord::markDatabase):
8289 (WebCore::OriginUsageRecord::diskUsage):
8290 * storage/OriginUsageRecord.h:
8291 (WebCore::OriginUsageRecord::DatabaseEntry::DatabaseEntry):
8292 Don't use a magic value for unknown. It is totally unnecessary for DatabaseEntry, and
8293 can be replaced with a single boolean for OriginUsageRecord.
8294 Added assertions for string parameters being unshared.
8295
8296
abarth@webkit.orgaea97a02008-09-02 04:26:15 +000082972008-09-01 Adam Barth <abarth@webkit.org>
8298
8299 Reviewed by Sam Weinig.
8300
8301 https://bugs.webkit.org/show_bug.cgi?id=19760
8302
8303 Make granting LoadLocalResources conditional on a policy.
8304
8305 * WebCore.base.exp:
8306 * dom/Document.cpp:
8307 (WebCore::Document::initSecurityContext):
8308 * loader/FrameLoader.cpp:
8309 (WebCore::FrameLoader::setLocalLoadPolicy):
8310 (WebCore::FrameLoader::restrictAccessToLocal):
8311 * loader/FrameLoader.h:
8312 (WebCore::FrameLoader::):
8313 * platform/SecurityOrigin.cpp:
8314 (WebCore::SecurityOrigin::grantLoadLocalResources):
8315 * platform/SecurityOrigin.h:
8316
dino@apple.com6e2db502008-09-01 23:05:28 +000083172008-09-01 Dean Jackson <dino@apple.com>
8318
dino@apple.com59ca9f52008-09-01 23:34:13 +00008319 Reviewed by Sam Weinig.
8320
8321 https://bugs.webkit.org/show_bug.cgi?id=20571
8322 Make sure Window object can assign Animation/Transition event
8323 listeners via attributes.
8324
8325 Also added a bunch of transition event tests, although
8326 only transition-end-event-window is directly relevant to this patch.
8327
8328 (WebCore::JSDOMWindowBase::put):
8329
8330 Tests: transitions/transition-end-event-all-properties.html
8331 transitions/transition-end-event-attributes.html
8332 transitions/transition-end-event-container.html
8333 transitions/transition-end-event-left.html
8334 transitions/transition-end-event-multiple-01.html
8335 transitions/transition-end-event-multiple-02.html
8336 transitions/transition-end-event-multiple-03.html
8337 transitions/transition-end-event-multiple-04.html
8338 transitions/transition-end-event-nested.html
8339 transitions/transition-end-event-transform.html
8340 transitions/transition-end-event-window.html
8341
83422008-09-01 Dean Jackson <dino@apple.com>
8343
dino@apple.com6e2db502008-09-01 23:05:28 +00008344 Reviewed by Sam Weinig
8345
8346 Code styling cleanup.
8347
8348 * bindings/js/JSDOMWindowBase.cpp:
8349 (WebCore::JSDOMWindowBase::getValueProperty):
8350 (WebCore::JSDOMWindowBase::put):
8351
weinig@apple.com3412bb42008-09-01 21:22:54 +000083522008-09-01 Geoffrey Garen <ggaren@apple.com>
8353
8354 Reviewed by Darin Adler.
8355
8356 First cut at inline caching for access to vanilla JavaScript properties.
8357
8358 Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
8359 to WebCore classes, and PutPropertySlot& arguments to put functions.
8360
8361 (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
8362 inline caching for global properties, so global assignment can be optimized.
8363
8364 * ForwardingHeaders/kjs/StructureID.h: Added.
8365 * bindings/js/JSDOMBinding.h:
8366 (WebCore::DOMObject::DOMObject):
8367 * bindings/js/JSDOMWindowBase.cpp:
8368 (WebCore::JSDOMWindowBase::put):
8369 * bindings/js/JSDOMWindowBase.h:
8370 * bindings/js/JSDOMWindowCustom.h:
8371 (WebCore::JSDOMWindow::customPut):
8372 * bindings/js/JSDOMWindowShell.cpp:
8373 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
8374 (WebCore::JSDOMWindowShell::put):
8375 * bindings/js/JSDOMWindowShell.h:
8376 * bindings/js/JSEventTargetBase.h:
8377 (WebCore::JSEventTargetBase::put):
8378 * bindings/js/JSEventTargetNode.h:
8379 (WebCore::JSEventTargetNode::put):
8380 * bindings/js/JSHTMLAppletElementCustom.cpp:
8381 (WebCore::JSHTMLAppletElement::customPut):
8382 * bindings/js/JSHTMLEmbedElementCustom.cpp:
8383 (WebCore::JSHTMLEmbedElement::customPut):
8384 * bindings/js/JSHTMLInputElementBase.cpp:
8385 (WebCore::JSHTMLInputElementBase::put):
8386 * bindings/js/JSHTMLInputElementBase.h:
8387 * bindings/js/JSHTMLObjectElementCustom.cpp:
8388 (WebCore::JSHTMLObjectElement::customPut):
8389 * bindings/js/JSHistoryCustom.cpp:
8390 (WebCore::JSHistory::customPut):
8391 * bindings/js/JSInspectedObjectWrapper.cpp:
8392 (WebCore::JSInspectedObjectWrapper::wrap):
8393 (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
8394 * bindings/js/JSInspectedObjectWrapper.h:
8395 * bindings/js/JSInspectorCallbackWrapper.cpp:
8396 (WebCore::JSInspectorCallbackWrapper::wrap):
8397 (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
8398 * bindings/js/JSInspectorCallbackWrapper.h:
8399 * bindings/js/JSLocationCustom.cpp:
8400 (WebCore::JSLocation::customPut):
8401 * bindings/js/JSPluginElementFunctions.cpp:
8402 (WebCore::runtimeObjectCustomPut):
8403 * bindings/js/JSPluginElementFunctions.h:
8404 * bindings/js/JSQuarantinedObjectWrapper.cpp:
8405 (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
8406 (WebCore::JSQuarantinedObjectWrapper::put):
8407 * bindings/js/JSQuarantinedObjectWrapper.h:
8408 * bindings/js/JSStorageCustom.cpp:
8409 (WebCore::JSStorage::customPut):
8410 * bindings/objc/WebScriptObject.mm:
8411 (-[WebScriptObject setValue:forKey:]):
8412 * bindings/scripts/CodeGeneratorJS.pm:
8413 * bridge/NP_jsobject.cpp:
8414 (_NPN_SetProperty):
8415 * bridge/jni/jni_jsobject.mm:
8416 (JavaJSObject::setMember):
8417 * bridge/objc/objc_class.mm:
8418 (KJS::Bindings::ObjcClass::fallbackObject):
8419 * bridge/objc/objc_runtime.h:
8420 * bridge/objc/objc_runtime.mm:
8421 (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
8422 (ObjcFallbackObjectImp::put):
8423 * bridge/runtime.cpp:
8424 (KJS::Bindings::Instance::createRuntimeObject):
8425 * bridge/runtime_array.cpp:
8426 (RuntimeArray::put):
8427 * bridge/runtime_array.h:
8428 * bridge/runtime_object.cpp:
8429 (RuntimeObjectImp::RuntimeObjectImp):
8430 (RuntimeObjectImp::put):
8431 * bridge/runtime_object.h:
8432
jmalonzo@webkit.org1f770ba2008-09-01 12:43:34 +000084332008-09-01 Dirk Schulze <vbs85@gmx.de>
8434
8435 Reviewed by Eric Seidel.
8436
jmalonzo@webkit.org37f07882008-09-01 12:43:48 +00008437 Fixed border-radius for Cairo.
8438
8439 * platform/graphics/cairo/GraphicsContextCairo.cpp:
8440 (WebCore::GraphicsContext::strokeArc):
8441
84422008-09-01 Dirk Schulze <vbs85@gmx.de>
8443
8444 Reviewed by Eric Seidel.
8445
jmalonzo@webkit.org1f770ba2008-09-01 12:43:34 +00008446 Added canvas's globalAlpha to cairo.
8447
8448 * platform/graphics/GraphicsContext.h:
8449 * platform/graphics/cairo/GraphicsContextCairo.cpp:
8450 (WebCore::GraphicsContext::fillPath):
8451 (WebCore::GraphicsContext::strokePath):
8452 (WebCore::GraphicsContext::setAlpha):
8453 (WebCore::GraphicsContext::getAlpha):
8454 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
8455 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
8456 * platform/graphics/cairo/ImageCairo.cpp:
8457 (WebCore::BitmapImage::draw):
8458
hausmann@webkit.orgecd099d2008-08-31 13:13:28 +000084592008-08-31 Simon Hausmann <hausmann@webkit.org>
8460
8461 Unreviewed Qt build fix.
8462
8463 * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
8464 the .h file
8465
darin@apple.come7945852008-08-31 06:58:07 +000084662008-08-30 Darin Adler <darin@apple.com>
8467
8468 Reviewed by Maciej.
8469
8470 - adopt some new JavaScriptCore functions where appropriate
8471
8472 * bindings/js/JSDOMWindowBase.cpp:
8473 (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
8474 (WebCore::windowProtoFuncBToA): Ditto.
8475 * bindings/js/JSEventListener.cpp:
8476 (WebCore::JSLazyEventListener::eventParameterName): Adopted
8477 jsNontrivialString.
8478 * bindings/js/JSSVGLazyEventListener.cpp:
8479 (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
8480
beidson@apple.com21c821f2008-08-30 00:26:01 +000084812008-08-29 Brady Eidson <beidson@apple.com>
8482
beidson@apple.come1bd6032008-08-30 00:30:11 +00008483 Reviewed by Anders' rubberstamp
8484
8485 Style cleanup to match MediaTokenizer::writeRawData()
8486
8487 * loader/PluginDocument.cpp:
8488 (WebCore::PluginTokenizer::writeRawData):
8489
84902008-08-29 Brady Eidson <beidson@apple.com>
8491
beidson@apple.com21c821f2008-08-30 00:26:01 +00008492 Reviewed by Anders
8493
mitz@apple.com098b1e62008-09-24 16:39:55 +00008494 https://bugs.webkit.org/show_bug.cgi?id=20556
8495 <rdar://problem/6181817> REGRESSION (r35946): media/video-click-dlbclick-standalone.html [sic] fails because load never fires
8496
beidson@apple.com21c821f2008-08-30 00:26:01 +00008497 Fix regression I introducted in 35946
8498 Already covered by media/video-click-dlbclick-standalone.html
8499
8500 * loader/MediaDocument.cpp:
8501 (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
8502 (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called. Also add
8503 an ASSERT signifying that this method should only be called once, to more closely follow the
8504 PluginDocument case.
8505
bdakin@apple.com7ee298c2008-08-30 00:00:30 +000085062008-08-29 Beth Dakin <bdakin@apple.com>
8507
8508 Reviewed by Sam Weinig.
8509
8510 Fix for <rdar://problem/6181588>
8511
8512 This patch makes hit testing take into account the new concept of a
8513 disconnected frame, in which some of the content may not be
8514 visible. The current hit testing mechanism starts at a target frame
8515 and drills down for a HitTestResult. In some cases, drilling down
8516 will find a non-visible result. When this happens, we need to try
8517 again, starting at a higher level -- namely, starting at the main
8518 frame.
8519
8520 * editing/Editor.cpp:
8521 (WebCore::Editor::insideVisibleArea): New function that tests if a
8522 point is inside the visible area for a disconnected frame.
8523 * editing/Editor.h:
8524 * page/EventHandler.cpp:
8525 (WebCore::EventHandler::hitTestResultAtPoint):
8526
adele@apple.comfb903062008-08-29 22:30:18 +000085272008-08-29 Adele Peterson <adele@apple.com>
8528
8529 Reviewed by Adam Roben.
8530
8531 Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
8532
8533 * GNUmakefile.am:
8534 * WebCore.pro:
8535 * WebCore.vcproj/WebCore.vcproj:
8536 * WebCore.xcodeproj/project.pbxproj:
8537 * WebCoreSources.bkl:
8538 * html/HTMLTextFieldInnerElement.cpp: Removed.
8539 * html/HTMLTextFieldInnerElement.h: Removed.
8540 * rendering/RenderTextControl.cpp:
8541 (WebCore::RenderTextControl::createSubtreeIfNeeded):
8542 * rendering/RenderTextControl.h:
8543 * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
8544 (WebCore::TextControlInnerElement::TextControlInnerElement):
8545 (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
8546 (WebCore::TextControlInnerTextElement::defaultEventHandler):
8547 (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
8548 (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
8549 (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
8550 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
8551 * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
8552
eric@webkit.org298c65b2008-08-29 21:39:32 +000085532008-08-29 Eric Seidel <eric@webkit.org>
8554
eric@webkit.org77837ce2008-08-29 21:40:07 +00008555 Rubber-stamped by aroben.
8556
8557 Add GraphicsContext.h include to GraphcisContextPrivate.h
8558
8559 GraphicsContextPrivate uses StrokeStyle which is defined
8560 in GraphicsContext.h but it doesn't include that header.
8561 CoreGraphics build doesn't fail here due to the order
8562 it happens to include files.
8563
8564 * platform/graphics/GraphicsContextPrivate.h:
8565
85662008-08-29 Eric Seidel <eric@webkit.org>
8567
eric@webkit.org298c65b2008-08-29 21:39:32 +00008568 Reviewed by hyatt.
8569
8570 Fix GeneratedImage to respect Image's refcounting
8571 Fixing potential crashers (future if not current)
8572 https://bugs.webkit.org/show_bug.cgi?id=20567
8573
8574 I don't know if it's possible to make the current code
8575 crash, thus I've not made a test.
8576
8577 * css/CSSGradientValue.cpp:
8578 (WebCore::CSSGradientValue::image):
8579 * css/CSSImageGeneratorValue.cpp:
8580 (WebCore::CSSImageGeneratorValue::removeClient):
8581 (WebCore::CSSImageGeneratorValue::getImage):
8582 * css/CSSImageGeneratorValue.h:
8583 * platform/graphics/GeneratedImage.h:
8584 (WebCore::GeneratedImage::GeneratedImage):
8585 * rendering/style/RenderStyle.cpp:
8586 (WebCore::RenderStyle::setContent):
8587 * rendering/style/RenderStyle.h:
8588
eric.carlson@apple.comddeafd42008-08-29 20:07:19 +000085892008-08-29 Eric Carlson <eric.carlson@apple.com>
8590
8591 Reviewed by Adele.
8592
eric.carlson@apple.com850c77c2008-08-29 20:24:50 +00008593 Fix for <rdar://problem/6093767>
8594 https://bugs.webkit.org/show_bug.cgi?id=20526
8595
8596 Don't allow video to render until unsupported track types have been disabled.
8597
8598 * platform/graphics/win/QTMovieWin.cpp:
8599 (QTMovieWinPrivate::task):
8600 (QTMovieWinPrivate::drawingComplete):
8601 (QTMovieWinPrivate::clearGWorld):
8602
86032008-08-29 Eric Carlson <eric.carlson@apple.com>
8604
8605 Reviewed by Adele.
8606
eric.carlson@apple.comddeafd42008-08-29 20:07:19 +00008607 Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
8608 <rdar://problem/6169301>
8609
8610 Return the size of the movie data instead of 1000.
8611
8612 Test: media/progress-event-total.html
8613
8614 * platform/graphics/win/QTMovieWin.cpp:
8615 (QTMovieWin::dataSize):
8616
hausmann@webkit.org0367b582008-08-29 15:56:02 +000086172008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
8618
hausmann@webkit.orgfe7f2ac2008-08-29 15:57:44 +00008619 Reviewed by Eric Seidel.
8620
8621 [janitor/qt] Start replacing port specific getters with the generic native getter
8622 To get the native presentation of an image we currently have platform
8623 specific #ifdef's and a generic getter using NativeImagePtr. This patch
8624 extends this to the ImageBuffer and updates the Qt platform to get rid
8625 of the special #ifdefs.
8626
8627 https://bugs.webkit.org/attachment.cgi?id=22861
8628
8629 * platform/graphics/BitmapImage.h:
8630 * platform/graphics/Image.h:
8631 * platform/graphics/qt/ImageQt.cpp:
8632 * platform/graphics/qt/StillImageQt.cpp:
8633 * platform/graphics/qt/StillImageQt.h:
8634 * platform/qt/ClipboardQt.cpp:
8635 (WebCore::ClipboardQt::createDragImage):
8636 (WebCore::ClipboardQt::declareAndWriteDragImage):
8637 * platform/qt/CursorQt.cpp:
8638 * platform/qt/PasteboardQt.cpp:
8639 (WebCore::Pasteboard::writeImage):
8640
86412008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
8642
hausmann@webkit.org0367b582008-08-29 15:56:02 +00008643 Reviewed by Simon.
8644
hausmann@webkit.orgb99266e2008-08-29 15:56:59 +00008645 [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
8646
8647 * svg/graphics/qt/SVGPaintServerQt.cpp:
8648 (WebCore::SVGPaintServer::renderPath):
8649 * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
8650 (WebCore::SVGPaintServerSolid::setup):
8651
86522008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
8653
8654 Reviewed by Simon.
8655
hausmann@webkit.org0367b582008-08-29 15:56:02 +00008656 [network/qt] Implement defering of loading ResourceHandle's
8657 This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
8658 implementation is simply not forwarding anything to the
8659 ResourceHandleClient until we are allowed to. This might lead to a deadlock
8660 in Qt as we do not empty the QNetworkReply input buffer and wait until we
8661 are allowed to read. If that happens we are forced to buffer the data
8662 within QNetworkReplyHandler, for now this is not done.
8663
8664 Manual test:
8665 - Open http://acid3.acidtests.org
8666 - Wait for the test to complete
8667 - Click on the Reference Rendering link
8668 - Be fast and see the results of acid3
8669 => assert
8670
8671 * platform/network/qt/QNetworkReplyHandler.cpp:
8672 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
8673 (WebCore::QNetworkReplyHandler::setLoadMode):
8674 (WebCore::QNetworkReplyHandler::finish):
8675 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
8676 (WebCore::QNetworkReplyHandler::forwardData):
8677 (WebCore::QNetworkReplyHandler::start):
8678 (WebCore::QNetworkReplyHandler::resetState):
8679 (WebCore::QNetworkReplyHandler::sendQueuedItems):
8680 * platform/network/qt/QNetworkReplyHandler.h:
8681 (WebCore::QNetworkReplyHandler::):
8682 * platform/network/qt/ResourceHandleQt.cpp:
8683 (WebCore::ResourceHandle::start):
8684 (WebCore::ResourceHandle::loadResourceSynchronously):
8685 (WebCore::ResourceHandle::setDefersLoading):
8686
hausmann@webkit.org2f2621f2008-08-29 10:21:38 +000086872008-08-29 Simon Hausmann <hausmann@webkit.org>
8688
hausmann@webkit.orgf5864402008-08-29 12:35:59 +00008689 Reviewed by Holger.
8690
8691 Don't crash when drawing patterns with the HTML canvas. Patterns
8692 remain unimplemented but at least they don't crash anymore. This is
8693 done by changing the PlatformPatternPtr to be a brush for the Qt
8694 platform.
8695
8696 * platform/graphics/Pattern.h:
8697 * platform/graphics/qt/GraphicsContextQt.cpp:
8698 (WebCore::GraphicsContext::fillPath):
8699 (WebCore::GraphicsContext::strokePath):
8700 (WebCore::GraphicsContext::fillRect):
8701 * platform/graphics/qt/PatternQt.cpp:
8702 (WebCore::Pattern::createPlatformPattern):
8703
87042008-08-29 Simon Hausmann <hausmann@webkit.org>
8705
hausmann@webkit.org2f2621f2008-08-29 10:21:38 +00008706 Fix the Qt build, fontSelector() is not used by the Qt port yet
8707 and we just return 0 in Font::fontSelector().
8708
8709 * platform/graphics/Font.h:
8710
alp@webkit.org97d8c102008-08-29 05:09:39 +000087112008-08-28 Alp Toker <alp@nuanti.com>
8712
8713 GTK+ dist/build fix. List newly added header files.
8714
8715 * GNUmakefile.am:
8716
simon.fraser@apple.com8f30d022008-08-28 23:04:18 +000087172008-08-28 Simon Fraser <simon.fraser@apple.com>
8718
8719 Reviewed by Dave Hyatt
8720
8721 Various WebKitCSSTransformValue-related fixes
8722 https://bugs.webkit.org/show_bug.cgi?id=20562
8723
8724 Test: css3/transform-value-types.html
8725
8726 * bindings/js/JSCSSValueCustom.cpp:
8727 (WebCore::toJS):
8728 * css/CSSValue.h:
8729 * css/WebKitCSSTransformValue.cpp:
8730 (WebCore::WebKitCSSTransformValue::cssText):
8731 * css/WebKitCSSTransformValue.h:
8732 (WebCore::WebKitCSSTransformValue::):
8733 * css/WebKitCSSTransformValue.idl:
8734
mitz@apple.comd7222352008-08-28 22:53:31 +000087352008-08-28 Dan Bernstein <mitz@apple.com>
8736
8737 Reviewed by Steve Falkenburg.
8738
8739 - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
8740
8741 * platform/win/SharedTimerWin.cpp:
8742 (WebCore::TimerWindowWndProc):
8743
hyatt@apple.com7d335232008-08-28 21:38:45 +000087442008-08-28 David Hyatt <hyatt@apple.com>
8745
8746 RenderStyle cleanup.
8747
8748 Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
8749
8750 Reviewed by Adam
8751
8752 * css/CSSImageGeneratorValue.cpp:
8753 * css/CSSImageValue.cpp:
8754 * css/CSSStyleSelector.cpp:
8755 * rendering/RenderImageGeneratedContent.cpp:
8756 * rendering/style/NinePieceImage.cpp: Added.
8757 * rendering/style/NinePieceImage.h: Added.
8758 * rendering/style/RenderStyle.cpp:
8759 (WebCore::FillLayer::operator==):
8760 (WebCore::FillLayer::containsImage):
8761 (WebCore::StyleInheritedData::operator==):
8762 (WebCore::RenderStyle::contentDataEquivalent):
8763 * rendering/style/RenderStyle.h:
8764 * rendering/style/StyleCachedImage.cpp: Added.
8765 * rendering/style/StyleCachedImage.h: Added.
8766 * rendering/style/StyleGeneratedImage.cpp: Added.
8767 * rendering/style/StyleGeneratedImage.h: Added.
8768 * rendering/style/StyleImage.h: Added.
8769
simon.fraser@apple.com28bad1a2008-08-28 21:29:21 +000087702008-08-28 Simon Fraser <simon.fraser@apple.com>
8771
8772 Reviewed by Dave Hyatt
8773
8774 Make all the 'isFoo()' methods on CSSValue const,
8775 and fix the subclasses.
8776
8777 https://bugs.webkit.org/show_bug.cgi?id=20561
8778
8779 * css/CSSTimingFunctionValue.h:
8780 * css/CSSValue.h:
8781 (WebCore::CSSValue::isFontValue):
8782 (WebCore::CSSValue::isImageGeneratorValue):
8783 (WebCore::CSSValue::isImageValue):
8784 (WebCore::CSSValue::isImplicitInitialValue):
8785 * css/CSSValueList.h:
8786 * css/FontValue.h:
8787
hyatt@apple.com550a95c2008-08-28 19:53:56 +000087882008-08-28 David Hyatt <hyatt@apple.com>
8789
hyatt@apple.comcb3eb812008-08-28 20:08:03 +00008790 The great RenderStyle cleanup begins!
8791
8792 Move LengthBox and LengthSize out of RenderStyle and into Length.
8793
8794 Reviewed by Adam
8795
8796 * rendering/Length.h:
8797 (WebCore::):
8798 (WebCore::Length::Length):
8799 (WebCore::Length::operator==):
8800 (WebCore::Length::operator!=):
8801 (WebCore::Length::value):
8802 (WebCore::Length::rawValue):
8803 (WebCore::Length::percent):
8804 (WebCore::Length::type):
8805 (WebCore::Length::quirk):
8806 (WebCore::Length::setValue):
8807 (WebCore::Length::setRawValue):
8808 (WebCore::Length::calcValue):
8809 (WebCore::Length::calcMinValue):
8810 (WebCore::Length::calcFloatValue):
8811 (WebCore::Length::isUndefined):
8812 (WebCore::Length::isZero):
8813 (WebCore::Length::isPositive):
8814 (WebCore::Length::isNegative):
8815 (WebCore::Length::isAuto):
8816 (WebCore::Length::isRelative):
8817 (WebCore::Length::isPercent):
8818 (WebCore::Length::isFixed):
8819 (WebCore::Length::isStatic):
8820 (WebCore::Length::isIntrinsicOrAuto):
8821 (WebCore::Length::blend):
8822 (WebCore::LengthBox::LengthBox):
8823 (WebCore::LengthBox::operator=):
8824 (WebCore::LengthBox::operator==):
8825 (WebCore::LengthBox::operator!=):
8826 (WebCore::LengthBox::nonZero):
8827 (WebCore::LengthSize::LengthSize):
8828 * rendering/style/RenderStyle.h:
8829
88302008-08-28 David Hyatt <hyatt@apple.com>
8831
hyatt@apple.com550a95c2008-08-28 19:53:56 +00008832 Reviewed by Darin
8833
8834 https://bugs.webkit.org/show_bug.cgi?id=18091
8835
8836 font-size should be animatable using -webkit-transition.
8837
8838 * page/AnimationController.cpp:
8839 (WebCore::AnimationControllerPrivate::ensurePropertyMap):
8840 * rendering/style/RenderStyle.h:
8841 (WebCore::RenderStyle::setFontSize):
8842
mitz@apple.com30923ad2008-08-28 17:45:47 +000088432008-08-28 Brad Garcia <bgarcia@google.com>
8844
8845 Reviewed by Dan Bernstein.
8846
8847 https://bugs.webkit.org/show_bug.cgi?id=20549
8848 Correctly determine when cursor is over a resizable border within
8849 a nested frameset.
8850
8851 * rendering/RenderFrameSet.cpp:
8852 (WebCore::RenderFrameSet::canResizeRow):
8853 (WebCore::RenderFrameSet::canResizeColumn):
8854
simon.fraser@apple.comae77c412008-08-28 17:30:07 +000088552008-08-28 Simon Fraser <simon.fraser@apple.com>
8856
8857 Reviewed by Eric Seidel
8858
8859 Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
8860 https://bugs.webkit.org/show_bug.cgi?id=20552
8861
8862 Test: animations/animation-css-rule-types.html
8863
8864 * css/CSSRule.idl:
8865
andersca@apple.com12399c32008-08-28 17:26:46 +000088662008-08-28 Anders Carlsson <andersca@apple.com>
8867
8868 Reviewed by Kevin and Darin.
8869
8870 <rdar://problem/6182541>
8871 https://bugs.webkit.org/show_bug.cgi?id=20202
8872 Missing http status line from the http headers.
8873
8874 Add a status line to the header string.
8875
8876 * plugins/PluginStream.cpp:
8877 (WebCore::PluginStream::startStream):
8878
zecke@webkit.orgf1daa422008-08-28 15:56:01 +000088792008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
8880
8881 Rubber-stamped by Darin Adler.
8882
8883 https://bugs.webkit.org/show_bug.cgi?id=17261
8884
8885 Make it possible to theme the default Url icon and enable this for
8886 the Qt port. To have a minimal usage of #ifdef in the code the setting
8887 of the icon was moved to a new method which comes in two flavors.
8888
8889 * loader/icon/IconDatabase.cpp:
8890 (WebCore::loadDefaultIconRecord): Load or set the default icon
8891 (WebCore::IconDatabase::defaultIcon):
8892
zecke@webkit.org1887dc82008-08-28 15:03:21 +000088932008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
8894
8895 Unreviewed compile fix
8896
8897 * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
8898
aroben@apple.comfacf5032008-08-28 13:34:01 +000088992008-08-28 Adam Roben <aroben@apple.com>
8900
8901 Windows (and others?) build fix
8902
8903 * page/Chrome.cpp: Added a missing #include.
8904 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
8905
eric@webkit.org22794fd2008-08-28 12:04:40 +000089062008-08-27 Eric Seidel <eric@webkit.org>
8907
8908 Reviewed by Oliver Hunt.
8909
eric@webkit.org5f874e92008-08-28 12:04:55 +00008910 Qt and Cairo support from krit (and blind stab @ wx compile support)
8911 https://bugs.webkit.org/show_bug.cgi?id=20373
8912
8913 * platform/graphics/cairo/GraphicsContextCairo.cpp:
8914 (WebCore::GraphicsContext::fillPath):
8915 (WebCore::GraphicsContext::strokePath):
8916 (WebCore::GraphicsContext::drawPath):
8917 (WebCore::GraphicsContext::fillRect):
8918 (WebCore::GraphicsContext::setPlatformFillColor):
8919 (WebCore::GraphicsContext::setPlatformStrokeColor):
8920 (WebCore::GraphicsContext::setPlatformStrokeStyle):
8921 (WebCore::GraphicsContext::strokeRect):
8922 (WebCore::GraphicsContext::setImageInterpolationQuality):
8923 (WebCore::GraphicsContext::imageInterpolationQuality):
8924 (WebCore::GraphicsContext::setPlatformFillPattern):
8925 (WebCore::GraphicsContext::setPlatformStrokePattern):
8926 (WebCore::GraphicsContext::setPlatformFillGradient):
8927 (WebCore::GraphicsContext::setPlatformStrokeGradient):
8928 * platform/graphics/qt/GraphicsContextQt.cpp:
8929 (WebCore::GraphicsContext::fillPath):
8930 (WebCore::GraphicsContext::strokePath):
8931 (WebCore::GraphicsContext::fillRect):
8932 (WebCore::GraphicsContext::strokeRect):
8933 (WebCore::GraphicsContext::clipToImageBuffer):
8934 (WebCore::GraphicsContext::setPlatformFillPattern):
8935 (WebCore::GraphicsContext::setPlatformStrokePattern):
8936 (WebCore::GraphicsContext::setPlatformFillGradient):
8937 (WebCore::GraphicsContext::setPlatformStrokeGradient):
8938 (WebCore::GraphicsContext::setImageInterpolationQuality):
8939 (WebCore::GraphicsContext::imageInterpolationQuality):
8940 * platform/graphics/wx/GraphicsContextWx.cpp:
8941 (WebCore::GraphicsContext::clipToImageBuffer):
8942 (WebCore::GraphicsContext::setImageInterpolationQuality):
8943 (WebCore::GraphicsContext::imageInterpolationQuality):
8944 (WebCore::GraphicsContext::fillPath):
8945 (WebCore::GraphicsContext::strokePath):
8946 (WebCore::GraphicsContext::drawPath):
8947 (WebCore::GraphicsContext::fillRect):
8948 (WebCore::GraphicsContext::setPlatformFillPattern):
8949 (WebCore::GraphicsContext::setPlatformStrokePattern):
8950 (WebCore::GraphicsContext::setPlatformFillGradient):
8951
89522008-08-27 Eric Seidel <eric@webkit.org>
8953
8954 Reviewed by Oliver Hunt.
8955
eric@webkit.org22794fd2008-08-28 12:04:40 +00008956 Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
8957 https://bugs.webkit.org/show_bug.cgi?id=20373
8958
8959 Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
8960
8961 Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
8962 have to store large Gradient objects in the GraphicsContextState
8963
8964 Made Pattern RefCounted for the same reason.
8965
8966 Many updates to GraphicsContext to support easier drawing with
8967 Patterns and Gradients.
8968
8969 * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
8970 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
8971 (WebCore::toJS):
8972 * css/CSSGradientValue.cpp:
8973 (WebCore::CSSGradientValue::createGradient):
8974 * css/CSSGradientValue.h:
8975 * html/CanvasGradient.cpp:
8976 (WebCore::CanvasGradient::CanvasGradient):
8977 * html/CanvasGradient.h:
8978 (WebCore::CanvasGradient::gradient):
8979 (WebCore::CanvasGradient::addColorStop):
8980 (WebCore::CanvasGradient::getColor):
8981 * html/CanvasPattern.cpp:
8982 * html/CanvasPattern.h:
8983 (WebCore::CanvasPattern::pattern):
8984 (WebCore::CanvasPattern::originClean):
8985 * html/CanvasRenderingContext2D.cpp:
8986 (WebCore::CanvasRenderingContext2D::State::State):
8987 (WebCore::CanvasRenderingContext2D::setStrokeStyle):
8988 (WebCore::CanvasRenderingContext2D::setFillStyle):
8989 (WebCore::CanvasRenderingContext2D::fill):
8990 (WebCore::CanvasRenderingContext2D::stroke):
8991 (WebCore::CanvasRenderingContext2D::fillRect):
8992 (WebCore::CanvasRenderingContext2D::strokeRect):
8993 * html/CanvasRenderingContext2D.h:
8994 * html/CanvasStyle.cpp:
8995 (WebCore::CanvasStyle::applyStrokeColor):
8996 (WebCore::CanvasStyle::applyFillColor):
8997 * html/CanvasStyle.h:
8998 * platform/graphics/GeneratedImage.h:
8999 (WebCore::GeneratedImage::GeneratedImage):
9000 * platform/graphics/Generator.h:
9001 * platform/graphics/Gradient.h:
9002 (WebCore::Gradient::create):
9003 * platform/graphics/GraphicsContext.cpp:
9004 (WebCore::GraphicsContext::fillRule):
9005 (WebCore::GraphicsContext::setFillRule):
9006 (WebCore::GraphicsContext::setStrokePattern):
9007 (WebCore::GraphicsContext::setFillPattern):
9008 (WebCore::GraphicsContext::setStrokeGradient):
9009 (WebCore::GraphicsContext::setFillGradient):
9010 * platform/graphics/GraphicsContext.h:
9011 * platform/graphics/GraphicsContextPrivate.h:
9012 (WebCore::):
9013 (WebCore::GraphicsContextState::GraphicsContextState):
9014 * platform/graphics/GraphicsTypes.h:
9015 * platform/graphics/Path.h:
9016 * platform/graphics/Pattern.h:
9017 (WebCore::Pattern::create):
9018 (WebCore::Pattern::tileImage):
9019 * platform/graphics/cg/GraphicsContextCG.cpp:
9020 (WebCore::GraphicsContext::drawRect):
9021 (WebCore::GraphicsContext::drawEllipse):
9022 (WebCore::GraphicsContext::drawConvexPolygon):
9023 (WebCore::calculateDrawingMode):
9024 (WebCore::GraphicsContext::drawPath):
9025 (WebCore::fillPathWithFillRule):
9026 (WebCore::GraphicsContext::fillPath):
9027 (WebCore::GraphicsContext::strokePath):
9028 (WebCore::GraphicsContext::fillRect):
9029 (WebCore::GraphicsContext::fillRoundedRect):
9030 (WebCore::GraphicsContext::setPlatformStrokePattern):
9031 (WebCore::GraphicsContext::setPlatformFillPattern):
9032 (WebCore::GraphicsContext::setPlatformStrokeGradient):
9033 (WebCore::GraphicsContext::setPlatformFillGradient):
9034
eric@webkit.org70b099f2008-08-28 11:42:26 +000090352008-08-20 Eric Seidel <eric@webkit.org>
9036
9037 Reviewed by Darin and Alexey.
9038
9039 Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
9040 with timeouts paused.
9041 https://bugs.webkit.org/show_bug.cgi?id=20469
9042
9043 I attempted to clean up the memory management of PausedTimeouts, I'm not
9044 sure the solution I came up with is "cleaner", but it's in some ways
9045 "safer", since it no longer uses raw pointers and manual new/delete.
9046
9047 This also now prevents CachedPage from needlessly creating Window
9048 objects when caching pages which didn't already have one. :)
9049
9050 I also made Chrome.cpp no longer depend on the JavaScript bindings
9051 (aka JSDOMWindowBase.h), since there was no real reason for it to.
9052
9053 * bindings/js/JSDOMWindowBase.cpp:
9054 (WebCore::JSDOMWindowBase::pauseTimeouts):
9055 (WebCore::JSDOMWindowBase::resumeTimeouts):
9056 * bindings/js/JSDOMWindowBase.h:
9057 * bindings/js/ScriptController.cpp:
9058 (WebCore::ScriptController::pauseTimeouts):
9059 (WebCore::ScriptController::resumeTimeouts):
9060 * bindings/js/ScriptController.h:
9061 * history/CachedPage.cpp:
9062 (WebCore::CachedPage::CachedPage):
9063 (WebCore::CachedPage::restore):
9064 * page/Chrome.cpp:
9065 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
9066 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
9067 * page/JavaScriptDebugServer.cpp:
9068 (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
9069 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
9070
zecke@webkit.org7d0df9e2008-08-28 03:36:31 +000090712008-08-27 Holger Hans Peter Freyther <zecke@selfish.org>
9072
9073 Unreviewed compile fix
9074
9075 Add the stub for the Qt port.
9076
9077 * WebCore.pro:
9078 * page/qt/AccessibilityObjectQt.cpp: Added.
9079 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
9080
zecke@webkit.orged5c2fe2008-08-28 02:15:20 +000090812008-08-27 Alp Toker <alp@nuanti.com>
9082
9083 Reviewed by Eric.
9084
9085 https://bugs.webkit.org/show_bug.cgi?id=20551
zecke@webkit.org81540882008-08-28 02:18:20 +00009086 [GTK] search popup crash
9087
9088 * platform/gtk/SearchPopupMenuGtk.cpp:
9089 (WebCore::SearchPopupMenu::enabled):
9090 Fix a search popup crasher by disabling the history popup since we
9091 don't support this feature yet in the GTK+ port.
9092
90932008-08-27 Alp Toker <alp@nuanti.com>
9094
9095 Reviewed by Eric.
9096
9097 https://bugs.webkit.org/show_bug.cgi?id=20551
zecke@webkit.orged5c2fe2008-08-28 02:15:20 +00009098 [GTK] curl crashers
9099
9100 * platform/network/curl/ResourceHandleManager.cpp:
9101 (WebCore::ResourceHandleManager::startScheduledJobs):
9102 Remove the resource handle from the pending list before starting the
9103 job, not afterwards. Fixes crashers in the test suite.
9104
9105 Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
9106 Test: fast/encoding/char-encoding.html
9107
eric@webkit.org712cb892008-08-28 00:26:15 +000091082008-08-27 Dirk Schulze <vbs85@gmx.de>
9109
9110 Reviewed by eseidel.
9111
9112 Fix canvas drawImage to support composite operations.
9113 Composite had no effect on canvas elements like these:
9114 http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
9115
9116 [CAIRO] Canvas composite don't work on canvas-elements.
9117 https://bugs.webkit.org/show_bug.cgi?id=20548
9118
9119 * html/CanvasRenderingContext2D.cpp:
9120 (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
9121
eric@webkit.org75c83a02008-08-28 00:04:59 +000091222008-08-27 Mario Bensi <mbensi@pleyo.com>
9123
9124 Reviewed by Eric Seidel.
9125
9126 Fix the data content of an image with a base64.
9127
9128 * platform/network/curl/ResourceHandleManager.cpp:
9129 (WebCore::parseDataUrl): Remove the String and use only the data
9130 Vector because the data.latin1().data() convert the data content and
9131 the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
9132 not drawn correctly.
9133
antti@apple.comf66a86b2008-08-27 23:59:50 +000091342008-08-27 Antti Koivisto <antti@apple.com>
9135
9136 Reviewed by Eric Seidel.
9137
9138 Crash after OK in dialog box and reloading page in secure mode
9139 https://bugs.webkit.org/show_bug.cgi?id=20493
9140
9141 The new run loop spawned by a modal dialog causes a timer in the loader to run
9142 synchronously inside didFinishLoading() deleting "this" object.
9143
9144 Defer all WebCore timers when a modal dialog is up. They are not
9145 safe to execute.
9146
9147 * page/Chrome.cpp:
9148 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
9149 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
9150
simon.fraser@apple.com7dbde252008-08-27 23:16:36 +000091512008-08-27 Chris Marrin <cmarrin@apple.com>
9152
9153 Reviewed by Dave Hyatt
9154
9155 Memory leaks when animating transforms
9156 https://bugs.webkit.org/show_bug.cgi?id=20532
9157
9158 * rendering/style/RenderStyle.cpp:
9159 (WebCore::ScaleTransformOperation::blend):
9160 (WebCore::RotateTransformOperation::blend):
9161 (WebCore::SkewTransformOperation::blend):
9162 (WebCore::TranslateTransformOperation::blend):
9163 (WebCore::MatrixTransformOperation::blend):
9164 * rendering/style/RenderStyle.h:
9165
timothy@apple.com79cb13a2008-08-27 22:03:24 +000091662008-08-27 Timothy Hatcher <timothy@apple.com>
9167
9168 Add support for support for -webkit-appearance: default-button on the Mac platform.
9169
9170 <rdar://problem/6173530>
9171
9172 Reviewed by Dave Hyatt.
9173
9174 * WebCore.base.exp: Export new symbols.
9175 * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
9176 * platform/mac/WebCoreSystemInterface.mm: Ditto.
9177 * rendering/RenderButton.cpp:
9178 (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
9179 (WebCore::RenderButton::setStyle): Ditto.
9180 * rendering/RenderButton.h: Ditto.
9181 * rendering/RenderThemeMac.mm:
9182 (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
9183 (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
9184 key if the button is default, otherwise reset the key equivalent.
9185 (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
9186 on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
9187 the window's previous default button cell when finished.
9188
hyatt@apple.comf0ec84d2008-08-27 21:18:15 +000091892008-08-26 David Hyatt <hyatt@apple.com>
9190
9191 First cut at making form controls on OS X respect full page zoom. There are lots of bugs.
9192
9193 Reviewed by weinig
9194
9195 Added fast/forms/zoomed-controls.html
9196
9197 * css/CSSStyleSelector.cpp:
9198 (WebCore::addIntrinsicMargins):
9199 * rendering/RenderSlider.cpp:
9200 (WebCore::RenderSlider::calcPrefWidths):
9201 * rendering/RenderThemeMac.h:
9202 * rendering/RenderThemeMac.mm:
9203 (WebCore::RenderThemeMac::adjustRepaintRect):
9204 (WebCore::RenderThemeMac::inflateRect):
9205 (WebCore::RenderThemeMac::baselinePosition):
9206 (WebCore::RenderThemeMac::setControlSize):
9207 (WebCore::RenderThemeMac::sizeForFont):
9208 (WebCore::RenderThemeMac::sizeForSystemFont):
9209 (WebCore::RenderThemeMac::setFontFromControlSize):
9210 (WebCore::RenderThemeMac::paintCheckbox):
9211 (WebCore::RenderThemeMac::setCheckboxCellState):
9212 (WebCore::RenderThemeMac::paintRadio):
9213 (WebCore::RenderThemeMac::setRadioCellState):
9214 (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
9215 (WebCore::RenderThemeMac::adjustButtonStyle):
9216 (WebCore::RenderThemeMac::setButtonCellState):
9217 (WebCore::RenderThemeMac::paintButton):
9218 (WebCore::RenderThemeMac::paintMenuList):
9219 (WebCore::RenderThemeMac::paintMenuListButton):
9220 (WebCore::RenderThemeMac::popupInternalPaddingLeft):
9221 (WebCore::RenderThemeMac::popupInternalPaddingRight):
9222 (WebCore::RenderThemeMac::popupInternalPaddingTop):
9223 (WebCore::RenderThemeMac::popupInternalPaddingBottom):
9224 (WebCore::RenderThemeMac::setPopupButtonCellState):
9225 (WebCore::RenderThemeMac::paintSliderTrack):
9226 (WebCore::RenderThemeMac::paintSliderThumb):
9227 (WebCore::RenderThemeMac::adjustSliderThumbSize):
9228 (WebCore::RenderThemeMac::paintSearchField):
9229 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
9230 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
9231 (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
9232
beidson@apple.comd0793872008-08-27 19:59:55 +000092332008-08-27 Brady Eidson <beidson@apple.com>
9234
9235 Reviewed by Anders
9236
9237 <rdar://problem/6134133> - Crash when loading large movie as a standalone document
9238
9239 We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
9240 to load and buffer the data for the movie in WebCore. With large media files, this results in blowing
9241 away the virtual address space and a crash.
9242
9243 * loader/EmptyClients.h:
9244 (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
9245 * loader/FrameLoaderClient.h: Added client method to get platform specific error for
9246 "plugin will handle load"
9247
9248 * loader/MediaDocument.cpp:
9249 (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
9250 and cancel the WebCore-managed load
9251 (WebCore::MediaTokenizer::writeRawData):
9252 (WebCore::MediaTokenizer::finish):
9253
simon.fraser@apple.come74d6712008-08-27 18:19:55 +000092542008-08-26 Simon Fraser <simon.fraser@apple.com>
9255
9256 Reviewed by Eric Seidel
9257
9258 Linear timing functions should have control points 0, 0, 1, 1.
9259 https://bugs.webkit.org/show_bug.cgi?id=20535
9260
9261 * css/CSSStyleSelector.cpp:
9262 (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
9263 * rendering/style/RenderStyle.h:
9264
aroben@apple.com8cfb6c62008-08-27 14:52:17 +000092652008-08-27 Adam Roben <aroben@apple.com>
9266
9267 Windows build fix
9268
9269 * WebCore.vcproj/WebCore.vcproj: Fix file extension.
9270
mrowe@apple.com37686d42008-09-04 00:10:39 +000092712008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com33a556b2008-08-26 22:29:14 +00009272
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00009273 Reviewed by Beth Dakin.
9274
cfleizach@apple.com2a505f42008-08-26 22:56:03 +00009275 <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
9276
9277 Added platform-specific accessibilityIgnoreAttachment, which allows the platform
9278 to determine if an attachment is ignored through accessibility. Added equivalent
9279 methods in Gtk, Win and Mac
9280
9281 Test: accessibility/plugin.html
9282
9283 * GNUmakefile.am:
9284 * WebCore.vcproj/WebCore.vcproj:
9285 * WebCore.xcodeproj/project.pbxproj:
9286 * page/AccessibilityObject.h:
9287 * page/AccessibilityRenderObject.cpp:
9288 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
9289 * page/gtk/AccessibilityObjectAtk.cpp: Added.
9290 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
9291 * page/mac/AccessibilityObjectMac.mm: Added.
9292 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
9293 * page/mac/AccessibilityObjectWrapper.h:
9294 * page/win/AccessibilityObjectWin.cpp: Added.
9295 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
9296
mrowe@apple.com37686d42008-09-04 00:10:39 +000092972008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com2a505f42008-08-26 22:56:03 +00009298
9299 Reviewed by Beth Dakin.
9300
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00009301 <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
9302
9303 * page/mac/AccessibilityObjectWrapper.mm:
9304 (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
9305 (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
9306
mrowe@apple.com37686d42008-09-04 00:10:39 +000093072008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00009308
cfleizach@apple.com33a556b2008-08-26 22:29:14 +00009309 Reviewed by Darin Adler.
9310
9311 <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
9312
9313 Tests: accessibility/table-notbody.html
9314
9315 * page/AccessibilityTable.cpp:
9316 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
9317
weinig@apple.com33705852008-08-26 19:51:28 +000093182008-08-26 Sam Weinig <sam@webkit.org>
9319
weinig@apple.comf6f553a2008-08-26 21:21:26 +00009320 Reviewed by Beth Dakin.
9321
9322 Fix typo.
9323
9324 * dom/DOMCoreException.h:
9325
93262008-08-26 Sam Weinig <sam@webkit.org>
9327
weinig@apple.com0f34f002008-08-26 19:56:54 +00009328 Reviewed by Oliver Hunt.
9329
9330 Fix https://bugs.webkit.org/show_bug.cgi?id=20479
9331 <rdar://problem/6167660>
9332 Take image redirects into account when tainting the canvas.
9333
9334 Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
9335
9336 * html/CanvasRenderingContext2D.cpp:
9337 (WebCore::CanvasRenderingContext2D::drawImage):
9338 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
9339
93402008-08-26 Sam Weinig <sam@webkit.org>
9341
weinig@apple.com33705852008-08-26 19:51:28 +00009342 Reviewed by Darin Adler.
9343
9344 Change canvas tainting logic to ask the image if it contains
9345 any resources outside of its own origin. Since there is no
9346 way to determine if SVG images contain any resources outside its
9347 origin, we always assume it does.
9348
9349 * html/CanvasRenderingContext2D.cpp:
9350 (WebCore::CanvasRenderingContext2D::drawImage):
9351 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
9352 * platform/graphics/BitmapImage.h:
9353 (WebCore::BitmapImage::hasSingleSecurityOrigin):
9354 * platform/graphics/GeneratedImage.h:
9355 (WebCore::GeneratedImage::hasSingleSecurityOrigin):
9356 * platform/graphics/Image.h:
9357 (WebCore::Image::hasSingleSecurityOrigin):
9358 * platform/graphics/cg/PDFDocumentImage.h:
9359 (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
9360 * svg/graphics/SVGImage.h:
9361
britto@apple.com616ef6d2008-08-26 17:51:03 +000093622008-08-26 Maxime Britto <britto@apple.com>
9363
9364 Reviewed by Adele.
9365
9366 <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
9367 This patch fixes the issues and modify the behavior of the panscroll by allowing it to jump to a parent layer when it reaches the end of its scrollable area.
9368 This is matching the behavior of the mouse wheel when trying to scroll in a smaller layer of the page (div, textarea, ...) and when we reach the edge and keep scrolling then the whole page scrolls.
9369
9370 * page/EventHandler.cpp:
9371 (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
9372 * page/EventHandler.h:
9373 * rendering/RenderLayer.cpp:
9374 (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
9375 (WebCore::RenderLayer::scrollByRecursively): try to scroll the current layer by the xDelta and yDelta provided, if it can't it ask its parent layer to do so.
9376 * rendering/RenderLayer.h:
9377 * rendering/RenderObject.cpp:
9378 (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
9379 (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
9380 (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
9381
jchaffraix@webkit.orge6915392008-08-26 10:27:33 +000093822008-08-25 Julien Chaffraix <jchaffraix@webkit.org>
9383
darin@apple.com07c80c62008-09-05 18:15:43 +00009384 Reviewed by Darin Adler.
jchaffraix@webkit.orge6915392008-08-26 10:27:33 +00009385
9386 Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
9387 https://bugs.webkit.org/show_bug.cgi?id=20247
9388
9389 <rdar://problem/6118218>
9390
9391 Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
9392 check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
9393 (case insensitive for HTML elements).
9394
9395 Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
9396
9397 * dom/Element.cpp:
9398 (WebCore::Element::getAttribute):
9399 * dom/NamedAttrMap.cpp:
9400 (WebCore::NamedAttrMap::getNamedItem):
9401 (WebCore::NamedAttrMap::getAttributeItem):
9402 * dom/NamedAttrMap.h:
9403
weinig@apple.comb4ce06e2008-08-26 01:52:51 +000094042008-08-25 Sam Weinig <sam@webkit.org>
9405
weinig@apple.com8d3ea722008-08-26 04:19:07 +00009406 Reviewed by Oliver Hunt.
9407
9408 Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
9409 <rdar://problem/6174096>
9410 Treat SVG images as dirty when drawing to a canvas.
9411
9412 Test: http/tests/security/canvas-remote-read-svg-image.html
9413
9414 * html/CanvasRenderingContext2D.cpp:
9415 (WebCore::CanvasRenderingContext2D::drawImage):
9416 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
9417 * platform/graphics/Image.h:
9418 (WebCore::Image::isSVGImage):
9419 * svg/graphics/SVGImage.h:
9420 (WebCore::SVGImage::isSVGImage):
9421
94222008-08-25 Sam Weinig <sam@webkit.org>
9423
weinig@apple.comb4ce06e2008-08-26 01:52:51 +00009424 Reviewed by Mark Rowe.
9425
9426 Fix https://bugs.webkit.org/show_bug.cgi?id=20377
9427 Leak in XMLHttpRequest.
9428
9429 * xml/XMLHttpRequest.cpp:
9430 (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
9431
beidson@apple.com46421212008-08-25 21:48:56 +000094322008-08-25 Brady Eidson <beidson@apple.com>
9433
9434 Reviewed by Anders
9435
9436 Speculative fix for <rdar://problem/6173217>
9437
9438 Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
9439 Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
9440 the first null check invalid.
9441
9442 * loader/FrameLoader.cpp:
9443 (WebCore::FrameLoader::stopAllLoaders):
9444
9445
kmccullough@apple.com7b85fbb2008-08-25 21:28:40 +000094462008-08-25 Kevin McCullough <kmccullough@apple.com>
9447
9448 Reviewed by Tim.
9449
9450 <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
9451 there is no profile, can cause crash
9452
9453 * page/inspector/ProfilesPanel.js:
9454
dino@apple.com1baeea62008-08-25 21:06:21 +000094552008-08-25 Dean Jackson <dino@apple.com>
9456
9457 Reviewed by Dave Hyatt
9458
9459 Make sure 'inherit' is handled by transition property.
9460 https://bugs.webkit.org/show_bug.cgi?id=20513
9461
9462 Test: transitions/inherit.html
9463 Test: transitions/inherit-other-props.html
9464
9465 * css/CSSStyleSelector.cpp:
9466 fix macro to check existence of list before getting size
9467
andersca@apple.com2866b8302008-08-25 20:56:21 +000094682008-08-25 Anders Carlsson <andersca@apple.com>
9469
9470 Reviewed by Mark.
9471
9472 <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
9473
9474 Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume
9475 (safely) that any class that needs finalization on the main thread will also need to be deallocated
9476 on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
9477 calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
9478
9479 * platform/mac/WebCoreObjCExtras.c:
9480 (WebCoreObjCFinalizeOnMainThread):
9481
antti@apple.com60381cb2008-08-25 20:41:11 +000094822008-08-25 Antti Koivisto <antti@apple.com>
9483
9484 Reviewed by Dan Bernstein.
9485
9486 Rename CachedResource::referenced() to CachedResource::hasClients() to
9487 match previous ref() -> addClient() rename.
9488
9489 * loader/Cache.cpp:
9490 (WebCore::Cache::pruneLiveResources):
9491 (WebCore::Cache::pruneDeadResources):
9492 (WebCore::Cache::remove):
9493 (WebCore::Cache::getStatistics):
9494 (WebCore::Cache::dumpLRULists):
9495 * loader/CachedResource.cpp:
9496 (WebCore::CachedResource::addClient):
9497 (WebCore::CachedResource::removeClient):
9498 (WebCore::CachedResource::setDecodedSize):
9499 (WebCore::CachedResource::setEncodedSize):
9500 * loader/CachedResource.h:
9501 (WebCore::CachedResource::hasClients):
9502 (WebCore::CachedResource::canDelete):
9503
timothy@apple.com7d809242008-08-25 18:33:05 +000095042008-08-25 Anthony Ricaud <rik24d@gmail.com>
9505
9506 Add a missing Inspector localized string for "other".
9507
9508 https://bugs.webkit.org/show_bug.cgi?id=20509
9509
9510 Reviewed by Tim Hatcher.
9511
9512 * English.lproj/localizedStrings.js:
9513
kmccullough@apple.com560f5fe2008-08-25 18:18:01 +000095142008-08-22 Kevin McCullough <kmccullough@apple.com>
9515
9516 Reviewed by Geoff, Mark and Tim.
9517
9518 <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
9519 in the console said what file and line number they came from
9520 - Lay the foundation for getting line numbers and other data from the
9521 JavaScript engine.
9522
9523 * ForwardingHeaders/VM: Added.
9524 * ForwardingHeaders/VM/Machine.h: Added.
9525 * page/Console.cpp: Gather the line number and file information when
9526 profileEnd has been called, but don't use it until didFinishProfiling is
9527 called. We won't need to wait once we remove the profiler "zombie" mode
9528 which this patch helps pave the foundation for.
9529 (WebCore::Console::Console):
9530 (WebCore::Console::profileEnd):
9531 (WebCore::Console::finishedProfiling):
9532 * page/Console.h:
9533 * page/InspectorController.cpp: Modify calls to
9534 addProfileMessageToConsole to satisfy the new arguments it takes.
9535 (WebCore::InspectorController::finishedProfiling):
9536 (WebCore::InspectorController::addProfile):
9537 (WebCore::InspectorController::addProfileMessageToConsole):
9538 (WebCore::InspectorController::finishedProfiling):
9539 * page/InspectorController.h:
9540
hausmann@webkit.orgf305df42008-08-25 10:06:53 +000095412008-08-25 Holger Hans Peter Freyther <zecke@selfish.org>
9542
9543 Reviewed by Simon.
9544
9545 [inspector] Update the WebKit.qrc Qt resources file
9546 Catchup with the changes in the directory.
9547
9548 * page/inspector/WebKit.qrc:
9549
hausmann@webkit.org5f13af32008-08-25 07:10:22 +000095502008-08-25 Dirk Schulze <vbs85@gmx.de>
9551
9552 Reviewed by Simon.
9553
9554 Transformed the radian to degree, to get rotate()
9555 in canvas work as expected.
9556
9557 [Qt] Canvas.rotate() doesn't work
9558 https://bugs.webkit.org/show_bug.cgi?id=20496
9559
9560 * platform/graphics/qt/GraphicsContextQt.cpp:
9561 (WebCore::GraphicsContext::rotate):
9562
sfalken@apple.com9d442862008-08-25 05:43:33 +000095632008-08-24 Steve Falkenburg <sfalken@apple.com>
9564
9565 Add a "last chance" WM_TIMER to the Windows shared timer.
9566
9567 The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
9568 Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
9569 timers if a timer with an earlier expiration is already pending. This results in no timers
9570 firing from that point on.
9571
9572 We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
9573 buggy window message hook.
9574
9575 This timer will start when the first WM_TIMER is scheduled, and will
9576 fire every 5 seconds thereafter, causing any lost timers to be fired.
9577
9578 Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
9579 and prevents the WebFrame leak.
9580
9581 Reviewed by Darin Adler, Geoff Garen.
9582
9583 * platform/win/SharedTimerWin.cpp:
9584 (WebCore::):
9585 (WebCore::TimerWindowWndProc):
9586 (WebCore::setSharedTimerFireTime):
9587
mitz@apple.com771fb752008-08-25 03:22:44 +000095882008-08-24 Dan Bernstein <mitz@apple.com>
9589
9590 Reviewed by Darin Adler.
9591
9592 - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
9593
9594 Test: fast/css/font-property-priority.html
9595
9596 * css/CSSParser.cpp:
9597 (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
9598 to the font-property-parsing functions.
9599 (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
9600 changed to use it rather than the m_important member.
9601 (WebCore::CSSParser::parseFontVariant): Ditto.
9602 (WebCore::CSSParser::parseFontWeight): Ditto.
9603 * css/CSSParser.h:
9604
timothy@apple.com4cea2632008-08-24 22:28:44 +000096052008-08-24 Timothy Hatcher <timothy@apple.com>
9606
9607 Fixes a bug where the Inspector's UI would not animate or
9608 fully function because JavaScript timeouts, intervals and
9609 CSS animation timers where not firing while paused at a
9610 a breakpoint in the inspected page.
9611
9612 https://bugs.webkit.org/show_bug.cgi?id=20042
9613
9614 Reviewed by Darin Adler.
9615
9616 Test: manual-tests/inspector/forzen-ui-while-paused.html
9617
9618 * page/JavaScriptDebugServer.cpp:
9619 (WebCore::JavaScriptDebugServer::pauseIfNeeded):
9620 Add a call to TimerBase::fireTimersInNestedEventLoop before
9621 spinning the EventLoop.
9622
rwlbuis@webkit.org8a772442008-08-24 18:07:32 +000096232008-08-24 Rob Buis <buis@kde.org>
9624
9625 Reviewed by Sam Weinig.
9626
9627 https://bugs.webkit.org/show_bug.cgi?id=20324
9628 A change in SVG Glyph wont show up
9629
9630 Invalidate the glyph cache when the d attribute is set.
9631
9632 Test: svg/custom/glyph-setting-d-attribute.svg
9633
9634 * svg/SVGGlyphElement.cpp:
9635 (WebCore::SVGGlyphElement::invalidateGlyphCache):
9636 (WebCore::SVGGlyphElement::parseMappedAttribute):
9637 (WebCore::SVGGlyphElement::insertedIntoDocument):
9638 (WebCore::SVGGlyphElement::removedFromDocument):
9639 * svg/SVGGlyphElement.h:
9640
mitz@apple.com5b2c3cc2008-08-24 09:18:39 +000096412008-08-24 Dan Bernstein <mitz@apple.com>
9642
9643 Reviewed by Sam Weinig.
9644
9645 - fix https://bugs.webkit.org/show_bug.cgi?id=13864
9646 <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
9647
9648 * rendering/RenderText.cpp:
9649 (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
9650 beginWS and endWS before the early return to ensure that they are
9651 initialized in that case.
9652
cwzwarich@webkit.org53ddf172008-08-23 08:16:54 +000096532008-08-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
9654
9655 Rubber-stamped by Mark Rowe.
9656
9657 Remove modelines.
9658
9659 * WebCore.pro:
9660 * bridge/testbindings.cpp:
9661 * dom/DocPtr.h:
9662 * loader/SubstituteData.h:
9663 * page/Chrome.cpp:
9664 * page/Chrome.h:
9665 * page/ChromeClient.h:
9666 * page/Frame.h:
9667 * page/FrameLoadRequest.h:
9668 * page/FrameTree.cpp:
9669 * page/FrameTree.h:
9670 * page/Page.h:
9671 * page/mac/ChromeMac.mm:
9672 * platform/network/HTTPHeaderMap.h:
9673 * platform/network/ResourceErrorBase.cpp:
9674 * platform/network/ResourceErrorBase.h:
9675 * platform/network/ResourceHandleInternal.h:
9676 * platform/network/ResourceRequestBase.cpp:
9677 * platform/network/ResourceRequestBase.h:
9678 * platform/network/ResourceResponseBase.cpp:
9679 * platform/network/ResourceResponseBase.h:
9680 * platform/network/cf/ResourceError.h:
9681 * platform/network/cf/ResourceRequest.h:
9682 * platform/network/cf/ResourceRequestCFNet.h:
9683 * platform/network/cf/ResourceResponse.h:
9684 * platform/network/cf/ResourceResponseCFNet.h:
9685 * platform/network/curl/ResourceError.h:
9686 * platform/network/curl/ResourceRequest.h:
9687 * platform/network/curl/ResourceResponse.h:
9688 * platform/network/mac/ResourceError.h:
9689 * platform/network/mac/ResourceErrorMac.mm:
9690 * platform/network/mac/ResourceRequest.h:
9691 * platform/network/mac/ResourceRequestMac.mm:
9692 * platform/network/mac/ResourceResponse.h:
9693 * platform/network/mac/ResourceResponseMac.mm:
9694 * platform/network/qt/ResourceError.h:
9695 * platform/network/qt/ResourceRequest.h:
9696 * platform/network/qt/ResourceResponse.h:
9697 * platform/network/soup/CookieJarSoup.cpp:
9698 * platform/network/soup/ResourceError.h:
9699 * platform/network/soup/ResourceRequest.h:
9700 * platform/network/soup/ResourceResponse.h:
9701
mitz@apple.com57a2f482008-08-23 07:16:41 +000097022008-08-23 Dan Bernstein <mitz@apple.com>
9703
9704 Reviewed by Dave Hyatt.
9705
9706 - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
9707
9708 Test: fast/table/vertical-align-baseline.html
9709
9710 * rendering/RenderTable.cpp:
9711 (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
9712 baseline of the first table row, if there is one, -1 otherwise.
9713 * rendering/RenderTable.h:
9714 * rendering/RenderTableCell.cpp:
9715 (WebCore::RenderTableCell::baselinePosition): Changed to follow the
9716 CSS2.1 definition of the baseline of a table cell.
9717 * rendering/RenderTableSection.cpp:
9718 (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
9719 the baseline of the first row in the section.
9720 * rendering/RenderTableSection.h:
9721
jhoneycutt@apple.com88af18d2008-08-22 23:44:32 +000097222008-08-18 Jon Honeycutt <jhoneycutt@apple.com>
9723
9724 Add SPI to make a Windows WebView transparent.
9725
9726 Reviewed by Dan Bernstein.
9727
9728 * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
9729 determines whether the created context has an alpha channel.
9730 * platform/graphics/win/GraphicsContextCGWin.cpp:
9731 (WebCore::CGContextWithHDC):
9732
timothy@apple.comb63d1172008-08-22 18:39:42 +000097332008-08-22 Timothy Hatcher <timothy@apple.com>
9734
timothy@apple.com964022d2008-08-22 20:35:20 +00009735 Rolls out r35834 because it caused a regression in the Inspector's
9736 Console where some expressions always threw a syntax error.
9737
9738 https://bugs.webkit.org/show_bug.cgi?id=20487
9739
9740 * page/inspector/Console.js:
9741 (Console.prototype._evalInInspectedWindow): Removes parenthesis
9742 around the expression.
9743
97442008-08-22 Timothy Hatcher <timothy@apple.com>
9745
timothy@apple.com056d4782008-08-22 18:39:52 +00009746 Makes getStyleProperty return a value for the overflow property
9747 when overflow-x and overflow-y are equal.
9748
9749 https://bugs.webkit.org/show_bug.cgi?id=20485
9750
9751 Reviewed by Dan Bernstein.
9752
9753 Test: fast/css/overflow-property.html
9754
9755 * css/CSSMutableStyleDeclaration.cpp:
9756 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
9757
97582008-08-22 Timothy Hatcher <timothy@apple.com>
9759
timothy@apple.comb63d1172008-08-22 18:39:42 +00009760 Fixes a bug where while editing in the Inspector the
9761 sidebar scroll position would jump to the top.
9762
9763 https://bugs.webkit.org/show_bug.cgi?id=20484
9764
9765 Reviewed by Darin Adler.
9766
9767 * page/inspector/treeoutline.js:
9768 (TreeOutline._removeChildren): Remove the offsetTop call that
9769 was forcing a layout, since layout causes scroll positions
9770 to be clamped to the new scrollHeight/Width. Layout will happen
9771 normally when needed.
9772
kevino@webkit.org8271c842008-08-22 16:25:52 +000097732008-08-22 Kevin Ollivier <kevino@theolliviers.com>
9774
9775 wx build fix. Add AccessibilityTable sources.
9776
9777 * WebCoreSources.bkl:
9778
mitz@apple.com9befc872008-08-22 06:29:33 +000097792008-08-21 Dan Bernstein <mitz@apple.com>
9780
9781 Reviewed by Jon Honeycutt and Alexey Proskuryakov.
9782
9783 - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
9784
9785 Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
9786
9787 * platform/graphics/mac/SimpleFontDataMac.mm:
9788 (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
9789 ascent and 100% to its reported descent.
9790
mrowe@apple.comac9b6a52008-08-22 02:07:54 +000097912008-08-21 Kalle Vahlman <kalle.vahlman@movial.com>
9792
9793 Reviewed by Darin Adler.
9794
mrowe@apple.com22eaa172008-08-22 02:10:15 +00009795 https://bugs.webkit.org/show_bug.cgi?id=20267
mrowe@apple.comac9b6a52008-08-22 02:07:54 +00009796 [GTK] Crash on some pages due to a plugin
9797
9798 Fix handling of badly formatted and empty plugin mime descriptions
9799
9800 * plugins/gtk/PluginPackageGtk.cpp:
9801 (WebCore::PluginPackage::fetchInfo):
9802
mrowe@apple.com798b3432008-08-22 02:07:48 +000098032008-08-21 Kevin Watters <kevinwatters@gmail.com>
9804
9805 Reviewed by Darin Adler.
9806
9807 Follow other ports (and IE) in ImageSourceWx.cpp never to return an
9808 animated GIF frame duration of less than 50ms.
9809
9810 * platform/graphics/wx/ImageSourceWx.cpp:
9811 (WebCore::ImageSource::frameDurationAtIndex):
9812
britto@apple.com8ed72772008-08-22 00:39:39 +000098132008-08-21 Maxime Britto <britto@apple.com>
9814
9815 Reviewed by Kevin McCullough.
9816
9817 Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
9818 https://bugs.webkit.org/show_bug.cgi?id=20451
9819
9820 rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
9821 When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
9822 This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
9823
9824 * page/EventHandler.cpp:
9825 (WebCore::EventHandler::handleMouseDraggedEvent): when we reach the document node and it can't be scrolled we set the next parent as the document's owner element if it exists.
9826
9827 (WebCore::EventHandler::handleMousePressEvent): ditto
9828
timothy@apple.com5d492192008-08-21 23:54:01 +000098292008-08-21 Anthony Ricaud <rik24d@gmail.com>
9830
9831 Small optimization for when the dividers in the Inspector's
9832 Resources panel are updated.
9833
9834 Reviewed by Tim Hatcher.
9835
9836 * page/inspector/ResourcesPanel.js:
9837 (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
9838 Combind a for loop and clone the divider element.
9839
dino@apple.comaa75e4c2008-08-21 23:35:23 +000098402008-08-21 Chris Marrin <cmarrin@apple.com>
9841
9842 Allow 0 (without units) for Time eg. duration
9843 Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
9844
9845 Reviewed by Dave Hyatt.
9846
9847 Test: css1/units/zero-duration-without-units.html
9848
9849 * css/CSSParser.cpp:
9850 (WebCore::CSSParser::validUnit):
9851
timothy@apple.com29c12d02008-08-21 20:12:47 +000098522008-08-21 Timothy Hatcher <timothy@apple.com>
9853
timothy@apple.comca11cd82008-08-21 20:13:12 +00009854 Make deleting all text while editing a DOM attribute in
9855 the Inspector delete the attribute. This also fixes
9856 an exception that would happen before.
9857
9858 https://bugs.webkit.org/show_bug.cgi?id=20472
9859
9860 Reviewed by Kevin McCullough.
9861
9862 * page/inspector/ElementsPanel.js:
9863 (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
9864 Don't check for hasAttributes on the parseElement, continuing
9865 through the function will correctly remove the attribute.
9866 If the parseElement is null, call _editingCancelled not
9867 editingCancelled, this fixes an exception.
9868
98692008-08-21 Timothy Hatcher <timothy@apple.com>
9870
timothy@apple.comde831cf2008-08-21 20:12:59 +00009871 Update the Inspector's Metrics pane when editing in
9872 the Styles pane. This makes sure the metrics shown
9873 always match what the Styles pane shows.
9874
9875 https://bugs.webkit.org/show_bug.cgi?id=20470
9876
9877 Reviewed by Kevin McCullough.
9878
9879 * page/inspector/ElementsPanel.js:
9880 (WebInspector.ElementsPanel): Add event listeners for
9881 the "style edited" and "style property toggled" events,
9882 so the Metrics pane is updated.
9883 (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
9884 Update the Metrics pane.
9885 * page/inspector/StylesSidebarPane.js:
9886 (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
9887 Dispatch the "style property toggled" event.
9888 (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
9889 Dispatch the "style edited" event when the CSS text is restored.
9890 (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
9891 Dispatch the "style edited" event.
9892
98932008-08-21 Timothy Hatcher <timothy@apple.com>
9894
timothy@apple.com29c12d02008-08-21 20:12:47 +00009895 Make the Inspector's Metrics sidebar pane editable.
9896
9897 https://bugs.webkit.org/show_bug.cgi?id=17218
9898 rdar://problem/5732818
9899
9900 Reviewed by Kevin McCullough.
9901
9902 * page/inspector/ElementsPanel.js:
9903 (WebInspector.ElementsPanel): Add an event listener for
9904 the "metrics edited" event, so the Styles pane is updated.
9905 * page/inspector/MetricsSidebarPane.js:
9906 (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
9907 so future updates work. Add a double click event listener for the
9908 metric values to start editing.
9909 (WebInspector.MetricsSidebarPane.prototype.startEditing):
9910 Call WebInspector.startEditing with some context.
9911 (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
9912 (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
9913 Set the user input on the elements inline style. Fire the
9914 "metrics edited" event.
9915
sfalken@apple.com7e6e5392008-08-21 18:42:44 +000099162008-08-21 Steve Falkenburg <sfalken@apple.com>
9917
9918 Fix a race condition in Windows timer code.
9919 Timer function could end up being called with a 0 timer, leading to a Windows exception.
9920
9921 Don't post a timer message if one is already pending.
9922
9923 Reviewed by Ada Chan.
9924
9925 * platform/win/SharedTimerWin.cpp:
9926 (WebCore::TimerWindowWndProc):
9927 (WebCore::clearTimer):
9928 (WebCore::queueTimerProc):
9929 (WebCore::setSharedTimerFireTime):
9930
timothy@apple.com8d15bcf2008-08-21 16:33:17 +000099312008-08-21 Anthony Ricaud <rik24d@gmail.com>
9932
timothy@apple.com493212c72008-08-21 16:36:06 +00009933 After trying to add the expression, try again with quotes for
9934 easier edition.
9935
9936 https://bugs.webkit.org/show_bug.cgi?id=20466
9937
9938 Reviewed by Tim Hatcher.
9939
9940 * page/inspector/ObjectPropertiesSection.js: Added an
9941 evaluateExpression function.
9942
99432008-08-21 Anthony Ricaud <rik24d@gmail.com>
9944
timothy@apple.com8d15bcf2008-08-21 16:33:17 +00009945 Perform Inspector searches on search event to clear results when
9946 clicking the cross to empty it. Delete the lastQuery when the field
9947 is emptied in order to perform the search if exactly the same query
9948 is entered next.
9949
9950 https://bugs.webkit.org/show_bug.cgi?id=20462
9951
9952 Reviewed by Tim Hatcher.
9953
9954 * page/inspector/inspector.js:
9955
jmalonzo@webkit.orgdd470402008-08-21 11:22:51 +000099562008-08-21 Marco Barisione <marco.barisione@collabora.co.uk>
9957
9958 Reviewed by Mark Rowe.
9959
9960 http://bugs.webkit.org/show_bug.cgi?id=19656
9961 [SOUP] The gio code should call didFail() instead of
9962 didFinishLoading() in case of error
9963
9964 In case of error call didFail() instead of didReceiveResponse() and
9965 didFinishLoading().
9966
9967 * platform/network/soup/ResourceHandleSoup.cpp:
9968 (WebCore::networkErrorForFile):
9969 (WebCore::readCallback):
9970 (WebCore::openCallback):
9971 (WebCore::queryInfoCallback):
9972
mrowe@apple.com72a95b12008-08-21 04:01:51 +000099732008-08-20 Mark Rowe <mrowe@apple.com>
9974
mrowe@apple.com4e593f42008-08-21 06:52:42 +00009975 Reviewed by Jon Honeycutt.
9976
9977 Fix build failure.
9978
9979 * bridge/c/c_instance.cpp:
9980 (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
9981 as that is what NPEnumerationFunctionPtr is declared as accepting.
9982
99832008-08-20 Mark Rowe <mrowe@apple.com>
9984
mrowe@apple.com72a95b12008-08-21 04:01:51 +00009985 Reviewed by Dan Bernstein.
9986
9987 Build fix. Handle kCGInterpolationMedium in switch statements if it is available.
9988
9989 * platform/graphics/GraphicsContext.h:
9990 (WebCore::):
9991 * platform/graphics/cg/GraphicsContextCG.cpp:
9992 (WebCore::GraphicsContext::setImageInterpolationQuality):
9993 (WebCore::GraphicsContext::imageInterpolationQuality):
9994
mitz@apple.comaa938792008-08-21 00:33:29 +000099952008-08-20 Dan Bernstein <mitz@apple.com>
9996
9997 Rubber-stamped by John Sullivan.
9998
9999 - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
10000 rename related methods and variables accordingly.
10001
10002 * WebCore.base.exp:
10003 * page/FrameView.cpp:
10004 (WebCore::FrameViewPrivate::FrameViewPrivate):
10005 (WebCore::FrameView::shouldUpdateWhileOffscreen):
10006 (WebCore::FrameView::setShouldUpdateWhileOffscreen):
10007 * page/FrameView.h:
10008 * platform/ScrollView.h:
10009 * platform/mac/ScrollViewMac.mm:
10010 (WebCore::ScrollView::updateContents):
10011
beidson@apple.com2ace6b12008-08-21 00:13:12 +0000100122008-08-20 Brady Eidson <beidson@apple.com>
10013
10014 Reviewed by Mitzpettel
10015
10016 <rdar://problem/6163636> - Many images broken in Mail
10017
10018 This can be traced back to the preload scanner. With that change, CachedResources are created a lot
10019 sooner than before and confuse the WebArchive machinery.
10020
10021 When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore
10022 such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate
10023 machinery and nothing is known about where the data will eventually come from.
10024
10025 * loader/DocumentLoader.cpp:
10026 (WebCore::DocumentLoader::subresource): Ignore a CachedResource if its preloadResult is
10027 CachedResource::PreloadReferenced.
10028
zecke@webkit.orga8fa0e12008-08-20 22:50:39 +0000100292008-08-20 Holger Hans Peter Freyther <zecke@selfish.org>
10030
10031 Unreviewed compile fix
10032
10033 Catch up with the JSValue::type elimination.
10034
10035 * bridge/qt/qt_instance.cpp:
10036 (KJS::Bindings::QtRuntimeObjectImp::construct):
10037 (KJS::Bindings::QtInstance::defaultValue):
10038 * bridge/qt/qt_runtime.cpp:
10039 (KJS::Bindings::QtRuntimeConnectionMethod::call):
10040
mrowe@apple.com2d74ec92008-08-20 22:15:53 +0000100412008-08-20 Chris Teague <chris.teague@gmail.com>
10042
10043 Reviewed by Mark Rowe.
10044
10045 Fix https://bugs.webkit.org/show_bug.cgi?id=20449
10046 Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
10047
10048 * ChangeLog:
10049 * loader/FrameLoader.cpp:
10050 (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
10051
simon.fraser@apple.combe1d24c2008-08-20 21:57:22 +0000100522008-08-20 Simon Fraser <simon.fraser@apple.com>
10053
10054 Reviewed by Dave Hyatt
10055
10056 getComputedStyle() for webkitTransform should return a transform
10057 that does not have the transform origin baked into it.
10058 https://bugs.webkit.org/show_bug.cgi?id=20464
10059
10060 Test: fast/css/getComputedStyle-transform.html
10061
10062 * css/CSSComputedStyleDeclaration.cpp:
10063 (WebCore::computedTransform):
10064 * rendering/style/RenderStyle.cpp:
10065 (WebCore::RenderStyle::applyTransform):
10066 * rendering/style/RenderStyle.h:
10067
andersca@apple.com021ce772008-08-20 21:04:12 +0000100682008-08-20 Josh Aas <joshmoz@gmail.com>
10069
10070 Reviewed and landed by Anders.
10071
10072 <rdar://problem/6163636>
10073 rename NPCocoaEvent's "event" struct to "data" (20446)
10074
10075 * bridge/npapi.h:
10076 (_NPCocoaEvent::):
10077
bdakin@apple.com699d13d2008-08-20 20:46:28 +0000100782008-08-20 Beth Dakin <bdakin@apple.com>
10079
darin@apple.com07c80c62008-09-05 18:15:43 +000010080 Reviewed by Darin Adler.
bdakin@apple.com699d13d2008-08-20 20:46:28 +000010081
10082 Fix for <rdar://problem/6145626>
10083 This patch fixes a number of remaining problems getting
10084 disconnected frames to work correctly with markAllMatchesForText()
10085 and findString(). Details inline.
10086
10087 This was a static helper function in Frame, but this patch requires
10088 the same functionality in Editor, so I just added it as a function
10089 on Node.
10090 * dom/Node.cpp:
10091 (WebCore::Node::isInShadowTree):
10092 * dom/Node.h:
10093
10094 * editing/Editor.cpp:
10095 (WebCore::Editor::insideVisibleArea): Returns false if
10096 excludeFromTextSearch() is true.
10097
10098 In a normal (non-disconnected) frame, findString returns a range of
10099 the document node if the text is not found in the frame. I changed
10100 firstVisibleRange and lastVisibleRange to match that behavior when
10101 the text is not found
10102 (WebCore::Editor::firstVisibleRange):
10103 (WebCore::Editor::lastVisibleRange):
10104
10105 Here are the bulk of the changes in the patch. A lot of text was
10106 not being found in disconnected frames because I failed to account
10107 for all of the possible problems associated with shadow trees. That
10108 is fixed here.
10109 (WebCore::Editor::nextVisibleRange):
10110 * editing/Editor.h:
10111
10112 excludeFromTextSearch() is new. It allows a WebKit client to mark a
10113 frame as not-text-searchable through SPI.
10114 * WebCore.base.exp:
10115 * page/Frame.cpp:
10116 (WebCore::Frame::excludeFromTextSearch):
10117 (WebCore::Frame::setExcludeFromTextSearch):
10118 (WebCore::FramePrivate::FramePrivate):
10119 * page/Frame.h:
10120 * page/FramePrivate.h:
10121
10122 (WebCore::Frame::findString):
10123 (WebCore::Frame::markAllMatchesForText): I kept running into an
10124 assertion failure in paining code because of the forced paint on
10125 empty visible rects.
10126
timothy@apple.com301befc2008-08-20 19:10:54 +0000101272008-08-20 Timothy Hatcher <timothy@apple.com>
10128
10129 Adds a positon box to the Inspector's Metrics sidebar
10130 pane. When an element is not statically positioned, there
10131 is now a position box that show top, right, bottom and
10132 left computed values.
10133
10134 Reviewed by Kevin McCullough.
10135
10136 * English.lproj/localizedStrings.js: Updated the strings.
10137 * page/inspector/MetricsSidebarPane.js:
10138 (WebInspector.MetricsSidebarPane.prototype.update):
10139 Renamed the boxPartValue function to createBoxPartElement
10140 and made it create the entire element. Made it understand
10141 how to get position style properties. Don't use the figure dash
10142 when 0px is used for positions, since the 0 is meaningful there.
10143 Instead use the figure dash when a position is auto.
10144 * page/inspector/inspector.css: Added a new rule for position.
10145
mrowe@apple.com37686d42008-09-04 00:10:39 +0000101462008-08-20 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com2a5ecc02008-08-20 18:34:56 +000010147
10148 Reviewed by Beth Dakin
10149
10150 Qt build fix
10151
10152 * WebCore.pro:
10153
mitz@apple.comedaa9042008-08-20 18:28:07 +0000101542008-08-20 Dan Bernstein <mitz@apple.com>
10155
10156 Reviewed by Anders Carlsson.
10157
10158 - avoid using a deprecated NSScroller method on Leopard
10159
10160 * platform/mac/PlatformScrollBarMac.mm:
10161 (WebCore::PlatformScrollbar::updateThumbPosition):
10162 (WebCore::PlatformScrollbar::updateThumbProportion):
10163
jmalonzo@webkit.org6e0a3082008-08-20 11:40:31 +0000101642008-08-20 Jan Michael Alonzo <jmalonzo@webkit.org>
10165
10166 Reviewed by Oliver Hunt.
10167
10168 Gtk build fix
10169
10170 * GNUmakefile.am:
10171 * page/AccessibilityTable.cpp: Change nil to 0
10172 (WebCore::AccessibilityTable::cellForColumnAndRow):
10173
ap@webkit.org01aff702008-08-20 07:23:06 +0000101742008-08-19 Alexey Proskuryakov <ap@webkit.org>
10175
10176 Reviewed by Geoff Garen.
10177
10178 Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
10179
10180 * ForwardingHeaders/kjs/JSLock.h: Added.
10181 * WebCore.vcproj/WebCore.vcproj:
10182 * bindings/js/GCController.cpp:
10183 (WebCore::collect):
10184 (WebCore::GCController::gcTimerFired):
10185 (WebCore::GCController::garbageCollectNow):
10186 * bindings/js/JSCustomSQLStatementCallback.cpp:
10187 (WebCore::JSCustomSQLStatementCallback::handleEvent):
10188 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
10189 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
10190 * bindings/js/JSCustomSQLTransactionCallback.cpp:
10191 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
10192 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
10193 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
10194 * bindings/js/JSCustomVoidCallback.cpp:
10195 (WebCore::JSCustomVoidCallback::handleEvent):
10196 * bindings/js/JSCustomXPathNSResolver.cpp:
10197 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
10198 * bindings/js/JSDOMWindowBase.cpp:
10199 (WebCore::DOMWindowTimer::~DOMWindowTimer):
10200 (WebCore::JSDOMWindowBase::clear):
10201 (WebCore::JSDOMWindowBase::timerFired):
10202 * bindings/js/JSEventCustom.cpp:
10203 (WebCore::toJS):
10204 * bindings/js/JSEventListener.cpp:
10205 (WebCore::JSAbstractEventListener::handleEvent):
10206 * bindings/js/JSNSResolver.cpp:
10207 (WebCore::JSNSResolver::lookupNamespaceURI):
10208 * bindings/js/JSNodeFilterCondition.cpp:
10209 (WebCore::JSNodeFilterCondition::acceptNode):
10210 * bindings/js/ScheduledAction.cpp:
10211 (WebCore::ScheduledAction::execute):
10212 * bindings/js/ScriptController.cpp:
10213 (WebCore::ScriptController::evaluate):
10214 (WebCore::ScriptController::clearWindowShell):
10215 (WebCore::ScriptController::createHTMLEventHandler):
10216 (WebCore::ScriptController::createSVGEventHandler):
10217 (WebCore::ScriptController::initScript):
10218 (WebCore::ScriptController::updateDocument):
10219 (WebCore::ScriptController::bindingRootObject):
10220 (WebCore::ScriptController::windowScriptNPObject):
10221 (WebCore::ScriptController::createScriptObjectForPluginElement):
10222 (WebCore::ScriptController::clearScriptObjects):
10223 * bindings/js/ScriptControllerMac.mm:
10224 (WebCore::ScriptController::windowScriptObject):
10225 * bindings/objc/WebScriptObject.mm:
10226 (_didExecute):
10227 (-[WebScriptObject callWebScriptMethod:withArguments:]):
10228 (-[WebScriptObject evaluateWebScript:]):
10229 (-[WebScriptObject setValue:forKey:]):
10230 (-[WebScriptObject valueForKey:]):
10231 (-[WebScriptObject removeWebScriptKey:]):
10232 (-[WebScriptObject stringRepresentation]):
10233 (-[WebScriptObject webScriptValueAtIndex:]):
10234 (-[WebScriptObject setWebScriptValueAtIndex:value:]):
10235 (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
10236 * bridge/NP_jsobject.cpp:
10237 (_NPN_InvokeDefault):
10238 (_NPN_Invoke):
10239 (_NPN_Evaluate):
10240 (_NPN_GetProperty):
10241 (_NPN_SetProperty):
10242 (_NPN_RemoveProperty):
10243 (_NPN_HasProperty):
10244 (_NPN_HasMethod):
10245 (_NPN_Enumerate):
10246 * bridge/c/c_class.cpp:
10247 (KJS::Bindings::CClass::~CClass):
10248 (KJS::Bindings::CClass::methodsNamed):
10249 (KJS::Bindings::CClass::fieldNamed):
10250 * bridge/c/c_instance.cpp:
10251 (KJS::Bindings::CInstance::invokeMethod):
10252 (KJS::Bindings::CInstance::invokeDefaultMethod):
10253 (KJS::Bindings::CInstance::getPropertyNames):
10254 * bridge/c/c_runtime.cpp:
10255 (KJS::Bindings::CField::valueFromInstance):
10256 (KJS::Bindings::CField::setValueToInstance):
10257 * bridge/c/c_utility.cpp:
10258 (KJS::Bindings::convertValueToNPVariant):
10259 (KJS::Bindings::convertNPVariantToValue):
10260 * bridge/jni/jni_class.cpp:
10261 (JavaClass::JavaClass):
10262 (JavaClass::~JavaClass):
10263 * bridge/jni/jni_instance.cpp:
10264 (JavaInstance::stringValue):
10265 * bridge/jni/jni_jsobject.mm:
10266 (JavaJSObject::call):
10267 (JavaJSObject::eval):
10268 (JavaJSObject::getMember):
10269 (JavaJSObject::setMember):
10270 (JavaJSObject::removeMember):
10271 (JavaJSObject::getSlot):
10272 (JavaJSObject::setSlot):
10273 (JavaJSObject::toString):
10274 (JavaJSObject::convertValueToJObject):
10275 (JavaJSObject::convertJObjectToValue):
10276 * bridge/jni/jni_objc.mm:
10277 (KJS::Bindings::dispatchJNICall):
10278 * bridge/jni/jni_runtime.cpp:
10279 (appendClassName):
10280 (JavaMethod::signature):
10281 * bridge/jni/jni_runtime.h:
10282 (KJS::Bindings::JavaString::JavaString):
10283 (KJS::Bindings::JavaString::_commonInit):
10284 (KJS::Bindings::JavaString::~JavaString):
10285 (KJS::Bindings::JavaString::UTF8String):
10286 * bridge/jni/jni_utility.cpp:
10287 (KJS::Bindings::convertValueToJValue):
10288 * bridge/npruntime.cpp:
10289 (_NPN_GetStringIdentifier):
10290 * bridge/objc/objc_instance.mm:
10291 (ObjcInstance::moveGlobalExceptionToExecState):
10292 (ObjcInstance::invokeMethod):
10293 (ObjcInstance::invokeDefaultMethod):
10294 (ObjcInstance::setValueOfUndefinedField):
10295 (ObjcInstance::getValueOfUndefinedField):
10296 * bridge/objc/objc_runtime.mm:
10297 (ObjcField::valueFromInstance):
10298 (ObjcField::setValueToInstance):
10299 * bridge/objc/objc_utility.mm:
10300 (KJS::Bindings::convertValueToObjcValue):
10301 (KJS::Bindings::convertNSStringToString):
10302 (KJS::Bindings::convertObjcValueToValue):
10303 * bridge/qt/qt_instance.cpp:
10304 (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
10305 (KJS::Bindings::QtInstance::~QtInstance):
10306 (KJS::Bindings::QtInstance::getQtInstance):
10307 (KJS::Bindings::QtInstance::getRuntimeObject):
10308 * bridge/qt/qt_runtime.cpp:
10309 (KJS::Bindings::convertValueToQVariant):
10310 (KJS::Bindings::convertQVariantToValue):
10311 (KJS::Bindings::QtRuntimeMetaMethod::call):
10312 (KJS::Bindings::QtRuntimeConnectionMethod::call):
10313 (KJS::Bindings::QtConnectionObject::QtConnectionObject):
10314 (KJS::Bindings::QtConnectionObject::execute):
10315 * bridge/runtime.cpp:
10316 (KJS::Bindings::Instance::createRuntimeObject):
10317 * bridge/testbindings.cpp:
10318 (main):
10319 * bridge/testbindings.mm:
10320 (main):
10321 * bridge/testqtbindings.cpp:
10322 (main):
10323 * dom/Document.cpp:
10324 (WebCore::Document::~Document):
10325 * dom/Node.cpp:
10326 (WebCore::Node::setDocument):
10327 * history/CachedPage.cpp:
10328 (WebCore::CachedPage::CachedPage):
10329 (WebCore::CachedPage::restore):
10330 (WebCore::CachedPage::clear):
10331 * loader/FrameLoader.cpp:
10332 (WebCore::getString):
10333 * page/InspectorController.cpp:
10334 (WebCore::ConsoleMessage::ConsoleMessage):
10335 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
10336 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
10337 (WebCore::getResourceDocumentNode):
10338 (WebCore::search):
10339 (WebCore::inspectedWindow):
10340 (WebCore::wrapCallback):
10341 (WebCore::currentCallFrame):
10342 (WebCore::profiles):
10343 (WebCore::InspectorController::focusNode):
10344 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
10345 (WebCore::InspectorController::addDatabaseScriptResource):
10346 (WebCore::InspectorController::addScriptProfile):
10347 * page/JavaScriptCallFrame.cpp:
10348 (WebCore::JavaScriptCallFrame::evaluate):
10349 * page/JavaScriptProfileNode.cpp:
10350 (WebCore::getTotalTime):
10351 (WebCore::getSelfTime):
10352 (WebCore::getTotalPercent):
10353 (WebCore::getSelfPercent):
10354 (WebCore::getNumberOfCalls):
10355 (WebCore::getChildren):
10356 (WebCore::getVisible):
10357 * page/Page.cpp:
10358 * page/mac/FrameMac.mm:
10359 * plugins/PluginView.cpp:
10360 (WebCore::PluginView::start):
10361 (WebCore::getString):
10362 (WebCore::PluginView::performRequest):
10363 (WebCore::PluginView::bindingInstance):
10364 * plugins/gtk/PluginViewGtk.cpp:
10365 (WebCore::PluginView::paint):
10366 (WebCore::PluginView::handleKeyboardEvent):
10367 (WebCore::PluginView::handleMouseEvent):
10368 (WebCore::PluginView::setNPWindowRect):
10369 (WebCore::PluginView::stop):
10370 (WebCore::PluginView::init):
10371 * plugins/qt/PluginViewQt.cpp:
10372 (WebCore::PluginView::setNPWindowRect):
10373 (WebCore::PluginView::stop):
10374 (WebCore::PluginView::init):
10375 * plugins/win/PluginViewWin.cpp:
10376 (WebCore::PluginView::dispatchNPEvent):
10377 (WebCore::PluginView::handleKeyboardEvent):
10378 (WebCore::PluginView::handleMouseEvent):
10379 (WebCore::PluginView::setNPWindowRect):
10380 (WebCore::PluginView::stop):
10381 * xml/XMLHttpRequest.cpp:
10382 (WebCore::XMLHttpRequest::clearResponse):
10383 (WebCore::XMLHttpRequest::didFinishLoading):
10384 (WebCore::XMLHttpRequest::didReceiveData):
10385
eric@webkit.orgbac93762008-08-19 23:33:07 +0000103862008-08-19 Eric Seidel <eric@webkit.org>
10387
10388 Reviewed by Geoff Garen.
10389
10390 Add the beginnings of Skia graphics support to WebCore
10391 as I try to begin the long process of un-forking the changes
10392 needed to WebCore to make Andriod's WebCore build.
10393
10394 I'll follow this up with actual *Skia.cpp files in a separate patch.
10395
10396 * platform/graphics/AffineTransform.h:
10397 * platform/graphics/FloatPoint.h:
10398 * platform/graphics/FloatRect.h:
10399 * platform/graphics/Gradient.h:
10400 * platform/graphics/GraphicsContext.h:
10401 * platform/graphics/Image.h:
10402 * platform/graphics/ImageBuffer.h:
10403 * platform/graphics/ImageSource.h:
10404 * platform/graphics/IntPoint.h:
10405 * platform/graphics/IntRect.h:
10406 * platform/graphics/Path.h:
10407 * platform/graphics/Pattern.h:
10408 * svg/graphics/SVGPaintServerPattern.h:
10409 * svg/graphics/SVGPaintServerSolid.h:
10410
sfalken@apple.com3f69b332008-08-19 22:34:37 +0000104112008-08-19 Steve Falkenburg <sfalken@apple.com>
10412
sfalken@apple.com45d22802008-08-19 22:46:31 +000010413 Fix Windows build more.
10414
10415 * WebCore.vcproj/WebCore.vcproj:
10416
104172008-08-19 Steve Falkenburg <sfalken@apple.com>
10418
sfalken@apple.com3f69b332008-08-19 22:34:37 +000010419 Fix Windows build.
10420
10421 * page/AccessibilityRenderObject.cpp:
10422 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
10423
mrowe@apple.com37686d42008-09-04 00:10:39 +0000104242008-08-19 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com7c7b5f32008-08-19 22:05:37 +000010425
10426 Reviewed by Beth Dakin.
10427
10428 <rdar://problem/4003764> Expose tables as AXTables
10429
10430 Tests: accessibility/table-attributes.html
10431 accessibility/table-cell-spans.html
10432 accessibility/table-cells.html
10433 accessibility/table-detection.html
10434 accessibility/table-sections.html
10435 accessibility/table-with-rules.html
10436
10437 * WebCore.xcodeproj/project.pbxproj:
10438 * page/AXObjectCache.cpp:
10439 (WebCore::AXObjectCache::get):
10440 * page/AccessibilityObject.h:
10441 (WebCore::):
10442 (WebCore::AccessibilityObject::isDataTable):
10443 (WebCore::AccessibilityObject::isTableRow):
10444 (WebCore::AccessibilityObject::isTableColumn):
10445 (WebCore::AccessibilityObject::isTableCell):
10446 * page/AccessibilityRenderObject.cpp:
10447 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
10448 * page/AccessibilityTable.cpp: Added.
10449 (WebCore::AccessibilityTable::AccessibilityTable):
10450 (WebCore::AccessibilityTable::~AccessibilityTable):
10451 (WebCore::AccessibilityTable::create):
10452 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
10453 (WebCore::AccessibilityTable::clearChildren):
10454 (WebCore::AccessibilityTable::addChildren):
10455 (WebCore::AccessibilityTable::headerContainer):
10456 (WebCore::AccessibilityTable::columns):
10457 (WebCore::AccessibilityTable::rows):
10458 (WebCore::AccessibilityTable::rowHeaders):
10459 (WebCore::AccessibilityTable::columnHeaders):
10460 (WebCore::AccessibilityTable::cells):
10461 (WebCore::AccessibilityTable::columnCount):
10462 (WebCore::AccessibilityTable::rowCount):
10463 (WebCore::AccessibilityTable::cellForColumnAndRow):
10464 (WebCore::AccessibilityTable::roleValue):
10465 (WebCore::AccessibilityTable::accessibilityIsIgnored):
10466 (WebCore::AccessibilityTable::title):
10467 (WebCore::AccessibilityTable::isDataTable):
10468 * page/AccessibilityTable.h: Added.
10469 * page/AccessibilityTableCell.cpp: Added.
10470 (WebCore::AccessibilityTableCell::AccessibilityTableCell):
10471 (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
10472 (WebCore::AccessibilityTableCell::create):
10473 (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
10474 (WebCore::AccessibilityTableCell::rowIndexRange):
10475 (WebCore::AccessibilityTableCell::columnIndexRange):
10476 * page/AccessibilityTableCell.h: Added.
10477 (WebCore::AccessibilityTableCell::isTableCell):
10478 (WebCore::AccessibilityTableCell::roleValue):
10479 * page/AccessibilityTableColumn.cpp: Added.
10480 (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
10481 (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
10482 (WebCore::AccessibilityTableColumn::create):
10483 (WebCore::AccessibilityTableColumn::setParentTable):
10484 (WebCore::AccessibilityTableColumn::elementRect):
10485 (WebCore::AccessibilityTableColumn::size):
10486 (WebCore::AccessibilityTableColumn::children):
10487 (WebCore::AccessibilityTableColumn::headerObject):
10488 (WebCore::AccessibilityTableColumn::headerObjectForSection):
10489 (WebCore::AccessibilityTableColumn::addChildren):
10490 * page/AccessibilityTableColumn.h: Added.
10491 (WebCore::AccessibilityTableColumn::parentObject):
10492 (WebCore::AccessibilityTableColumn::roleValue):
10493 (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
10494 (WebCore::AccessibilityTableColumn::isTableColumn):
10495 (WebCore::AccessibilityTableColumn::setColumnIndex):
10496 (WebCore::AccessibilityTableColumn::columnIndex):
10497 * page/AccessibilityTableHeaderContainer.cpp: Added.
10498 (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
10499 (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
10500 (WebCore::AccessibilityTableHeaderContainer::create):
10501 (WebCore::AccessibilityTableHeaderContainer::children):
10502 (WebCore::AccessibilityTableHeaderContainer::elementRect):
10503 (WebCore::AccessibilityTableHeaderContainer::size):
10504 (WebCore::AccessibilityTableHeaderContainer::addChildren):
10505 * page/AccessibilityTableHeaderContainer.h: Added.
10506 (WebCore::AccessibilityTableHeaderContainer::roleValue):
10507 (WebCore::AccessibilityTableHeaderContainer::setParentTable):
10508 (WebCore::AccessibilityTableHeaderContainer::parentObject):
10509 (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
10510 * page/AccessibilityTableRow.cpp: Added.
10511 (WebCore::AccessibilityTableRow::AccessibilityTableRow):
10512 (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
10513 (WebCore::AccessibilityTableRow::create):
10514 (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
10515 (WebCore::AccessibilityTableRow::headerObject):
10516 * page/AccessibilityTableRow.h: Added.
10517 (WebCore::AccessibilityTableRow::isTableRow):
10518 (WebCore::AccessibilityTableRow::roleValue):
10519 (WebCore::AccessibilityTableRow::setRowIndex):
10520 (WebCore::AccessibilityTableRow::rowIndex):
10521 * page/mac/AccessibilityObjectWrapper.mm:
10522 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
10523 (RoleEntry::):
10524 (-[AccessibilityObjectWrapper roleDescription]):
10525 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
10526 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
10527 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
10528
sfalken@apple.comb83d4692008-08-19 18:39:44 +0000105292008-08-19 Steve Falkenburg <sfalken@apple.com>
10530
10531 Build fix.
10532 Add buildfailed support to stop builds early (preventing inaccurate error messages).
10533 Add missing post-build rule to Release.
10534
10535 * WebCore.vcproj/QTMovieWin.vcproj:
10536
timothy@apple.comda3aa632008-08-19 18:33:02 +0000105372008-08-19 Keishi Hattori <casey.hattori@gmail.com>
10538
timothy@apple.com7d08c322008-08-19 18:33:27 +000010539 Added support for console.count in the inspector.
10540
10541 Reviewed by Geoff Garen.
10542
10543 * page/Console.cpp:
10544 (WebCore::Console::count):
10545 * page/Console.h:
10546 * page/Console.idl: Added console.count.
10547 * page/InspectorController.cpp:
10548 (WebCore::InspectorController::didCommitLoad): Clears m_counts.
10549 (WebCore::InspectorController::count): Updates the count number
10550 sing "title@source:line" as the identifier, and adds a
10551 message to the console.
10552 * page/InspectorController.h: Added m_counts.
10553
105542008-08-19 Keishi Hattori <casey.hattori@gmail.com>
10555
timothy@apple.comda3aa632008-08-19 18:33:02 +000010556 Clear console.time timers when changing page.
10557
10558 Reviewed by Geoff Garen.
10559
10560 * page/InspectorController.cpp:
10561 (WebCore::InspectorController::didCommitLoad):
10562
adele@apple.com1f2d7e02008-08-19 17:55:58 +0000105632008-08-19 Eric Carlson <eric.carlson@apple.com>
10564
10565 Reviewed by Adele.
10566
10567 Fix for <rdar://problem/6154695> Full-page movies flicker while playing
10568 https://bugs.webkit.org/show_bug.cgi?id=20404
10569
10570 Ignore setVisible() when visibility doesn't change.
10571
10572 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
10573 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
10574 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
10575 (WebCore::MediaPlayerPrivate::setVisible):
10576
timothy@apple.com9d9821a2008-08-19 17:00:26 +0000105772008-08-19 Timothy Hatcher <timothy@apple.com>
10578
timothy@apple.come058a792008-08-19 17:01:12 +000010579 Fixes a bug in the Profile view where switching sort order, then
10580 switching from heavy to tree mode would show the tree in the
10581 previous sort order.
10582
10583 https://bugs.webkit.org/show_bug.cgi?id=20441
10584
10585 Reviewed by Kevin McCullough.
10586
10587 * page/inspector/ProfileView.js:
10588 (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
10589 on the next profile before assigning it to this.profile.
10590 (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
10591 (WebInspector.ProfileView.prototype._sortProfile): Moves from
10592 _sortData and takes a profile argument. If the profile passed in
10593 matches the this.profile, then call refresh.
10594
105952008-08-18 Timothy Hatcher <timothy@apple.com>
10596
timothy@apple.come525e402008-08-19 17:01:00 +000010597 Changed the default sort order now that heavy view is the default.
10598 Also fixes a bug where the heavy profile was not sorted at first.
10599
10600 https://bugs.webkit.org/show_bug.cgi?id=20440
10601
10602 Reviewed by Kevin McCullough.
10603
10604 * page/inspector/ProfileView.js:
10605 (WebInspector.ProfileView): Changed the default sort column. Also assign
10606 heavyProfile to profile, so the sortSelfTimeDescending call happens
10607 on the heavy profile before assigning to this.profile.
10608
106092008-08-18 Timothy Hatcher <timothy@apple.com>
10610
timothy@apple.comc9287f32008-08-19 17:00:36 +000010611 Add support for editing DOM properties and scope variables by double
10612 clicking a property to enter edit mode.
10613
10614 https://bugs.webkit.org/show_bug.cgi?id=20415
10615
10616 Reviewed by Kevin McCullough.
10617
10618 * page/inspector/ObjectPropertiesSection.js:
10619 (WebInspector.ObjectPropertiesSection): Set editable to true by default.
10620 (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
10621 Factored out code into update, and calls update.
10622 (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
10623 Call removeChildren since this method can be called multiple times now.
10624 (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
10625 gets made later in onattach.
10626 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
10627 if shouldRefreshChildren is true. Call removeChildren since this method can be
10628 called multiple times now.
10629 (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
10630 (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
10631 (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
10632 this element (code moved from the constructor.)
10633 (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
10634 sibling property elements.
10635 (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
10636 WebInspector.startEditing after rememebring some context.
10637 (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
10638 for the list element, since it might have scrolled during editing.
10639 (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
10640 then restore the state from the context. Then call update to restore the title.
10641 (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
10642 if the user input and the previous input are the same. Call editingEnded, then call applyExpression
10643 to commit the user input.
10644 (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
10645 and stores the result on the object for the property name of this element. If the expression is
10646 empty, delete the property and remove the tree element.
10647 * page/inspector/ScopeChainSidebarPane.js:
10648 (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
10649 property on each ObjectPropertiesSection.
10650 (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
10651 since it is now implemented.
10652 * page/inspector/ScriptsPanel.js:
10653 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
10654 that defaults to true if omitted. It specifies whether to call update on the scope chain.
10655 * page/inspector/inspector.css: New styles.
10656 * page/inspector/treeoutline.js:
10657 (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
10658 change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
10659
106602008-08-18 Timothy Hatcher <timothy@apple.com>
10661
timothy@apple.com9d9821a2008-08-19 17:00:26 +000010662 Surround the expression to be evaluated in parenthesis so the
10663 result of the eval is the result of the whole expression not
10664 the last potential sub-expression. So evaluating {x: 123}
10665 will show the Object not 123.
10666
10667 https://bugs.webkit.org/show_bug.cgi?id=20428
10668
10669 Reviewed by Kevin McCullough.
10670
10671 * page/inspector/Console.js:
10672 (Console.prototype._evalInInspectedWindow): Add parenthesis
10673 around the expression. And add couple comments.
10674
kmccullough@apple.come8ac2f32008-08-19 16:38:06 +0000106752008-08-19 Kevin McCullough <kmccullough@apple.com>
10676
10677 Reviewed by Geoff.
10678
10679 -Implement a page() function to extract a common code pattern.
10680
10681 * WebCore.xcodeproj/project.pbxproj:
10682 * page/Console.cpp:
10683 (WebCore::Console::addMessage):
10684 (WebCore::Console::error):
10685 (WebCore::Console::info):
10686 (WebCore::Console::log):
10687 (WebCore::Console::dir):
10688 (WebCore::Console::assertCondition):
10689 (WebCore::Console::time):
10690 (WebCore::Console::timeEnd):
10691 (WebCore::Console::group):
10692 (WebCore::Console::groupEnd):
10693 (WebCore::Console::finishedProfiling):
10694 (WebCore::Console::warn):
10695 (WebCore::Console::framePage):
10696 * page/Console.h:
10697
darin@apple.com349e1eb2008-08-19 04:39:04 +0000106982008-08-12 Darin Adler <darin@apple.com>
10699
10700 Reviewed by Geoff.
10701
10702 - eliminate JSValue::type()
10703
10704 * bridge/c/c_instance.cpp:
10705 (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
10706 argument instead of JSType argument. Removed unneeded code to handle
10707 boolean, since that's never passed.
10708 * bridge/c/c_instance.h: Ditto.
10709
10710 * bridge/c/c_utility.cpp:
10711 (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
10712 instead of JSValue::type(). Removed unneeded code to handle
10713 "unspecified".
10714
10715 * bridge/jni/jni_instance.cpp:
10716 (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
10717 instead of JSType argument. Removed unneeded code to handle boolean.
10718 * bridge/jni/jni_instance.h: Ditto.
10719
10720 * bridge/jni/jni_jsobject.mm:
10721 (JavaJSObject::convertValueToJObject): Use JSValue::is functions
10722 instead of JSValue::type().
10723
10724 * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
10725 instead of JSType argument. Removed unused argument.
10726 * bridge/objc/objc_instance.mm:
10727 (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
10728 (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
10729 instead of JSType argument. Removed unneeded code to handle boolean
10730 and another dead code path for unknown types.
10731
10732 * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
10733 instead of JSType argument. Removed override of type() that caused
10734 the fallback object to return "UndefinedType" when there is no
10735 invokeUndefinedMethodFromWebScript:withArguments: method defined.
10736 That didn't accomplish much, since most checks for undefined don't
10737 ever call type().
10738 * bridge/objc/objc_runtime.mm:
10739 (ObjcFallbackObjectImp::defaultValue): Ditto.
10740
10741 * bridge/qt/qt_instance.cpp:
10742 (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
10743 argument instead of JSType argument. Removed unneeded code to handle
10744 boolean.
10745 * bridge/qt/qt_instance.h: Ditto.
10746
10747 * bridge/runtime.h:
10748 (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
10749 unsed argument.
10750 * bridge/runtime_object.cpp:
10751 (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
10752 argument instead of JSType argument.
10753 * bridge/runtime_object.h: Ditto.
10754
britto@apple.comaf7f8382008-08-19 00:42:13 +0000107552008-08-18 Maxime Britto <britto@apple.com>
10756
10757 Reviewed by Adele.
10758
10759 <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
10760 Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
10761 We shouldn't be able to create another window while we are in pan scrolling.
10762 Other browsers behaviors :
10763 FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
10764 IE7 : Keys are not disabled but stops immediately the panning.
10765 This patch matches FF3 behavior by disabling every key but the esc key.
10766
10767 * page/EventHandler.cpp:
10768 (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
10769 (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
10770
mitz@apple.com12404d82008-08-19 00:20:38 +0000107712008-08-18 Dan Bernstein <mitz@apple.com>
10772
10773 Reviewed by Dave Hyatt.
10774
10775 - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
10776
10777 Test: fast/replaced/max-width-percent.html
10778
10779 Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
10780 When false, max-width is not factored into the
10781 calculation.
10782 Changed RenderReplaced and subclasses' calcPrefWidths() to call
10783 calcReplacedWidth(false) and then apply max-width only if it has a
10784 fixed, positive value.
10785
10786 * rendering/RenderBox.cpp:
10787 (WebCore::RenderBox::calcReplacedWidth):
10788 * rendering/RenderBox.h:
10789 * rendering/RenderImage.cpp:
10790 (WebCore::RenderImage::calcReplacedWidth):
10791 (WebCore::RenderImage::calcPrefWidths):
10792 * rendering/RenderImage.h:
10793 * rendering/RenderReplaced.cpp:
10794 (WebCore::RenderReplaced::calcPrefWidths):
10795 * rendering/RenderSVGRoot.cpp:
10796 (WebCore::RenderSVGRoot::calcPrefWidths):
10797 * rendering/RenderVideo.cpp:
10798 (WebCore::RenderVideo::calcReplacedWidth):
10799 (WebCore::RenderVideo::calcPrefWidths):
10800 * rendering/RenderVideo.h:
10801
mrowe@apple.comced88732008-08-18 22:47:28 +0000108022008-08-18 Daniel Macks <dmacks@netspace.org>
10803
10804 Reviewed by Mark Rowe.
10805
10806 https://bugs.webkit.org/show_bug.cgi?id=20410
10807 More portable/self-documenting replacement for SIZE_MAX.
10808
10809 * platform/network/curl/FormDataStreamCurl.cpp:
10810 (WebCore::FormDataStream::read):
10811
108122008-08-18 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com6040db32008-08-18 22:11:10 +000010813
10814 Reviewed by Dave Hyatt
10815
10816 Need to make sure we have an Animation in the AnimationList
10817 before setting the initial value.
10818 https://bugs.webkit.org/show_bug.cgi?id=20408
10819
10820 Test: fast/css/transition_shorthand_parsing.html
10821
10822 * css/CSSStyleSelector.cpp:
10823
kmccullough@apple.com64cb2fd2008-08-18 19:55:35 +0000108242008-08-18 Kevin McCullough <kmccullough@apple.com>
10825
kmccullough@apple.com707bd362008-08-18 20:21:57 +000010826 Reviewed by Tim.
10827
10828 <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
10829 is another profile.
10830
10831 * page/inspector/ProfilesPanel.js:
10832
108332008-08-18 Kevin McCullough <kmccullough@apple.com>
10834
kmccullough@apple.com64cb2fd2008-08-18 19:55:35 +000010835 Reviewed by Geoff.
10836
10837 <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
10838 all console messages
10839
10840 * page/inspector/Console.js:
10841
jmalonzo@webkit.org5d1e0482008-08-18 11:20:11 +0000108422008-08-18 Dirk Schulze <vbs85@gmx.de>
10843
10844 Reviewed by Eric Seidel.
10845
10846 Fixed Canvas for Cairo. Stroke and fill colors didn't work after
10847 the canvas clean up.
10848
10849 https://bugs.webkit.org/show_bug.cgi?id=20405
10850
10851 * html/CanvasRenderingContext2D.cpp:
10852 (WebCore::CanvasRenderingContext2D::fill):
10853 (WebCore::CanvasRenderingContext2D::stroke):
10854 (WebCore::CanvasRenderingContext2D::fillRect):
10855
timothy@apple.comc5e1f8d2008-08-18 03:21:46 +0000108562008-08-17 Timothy Hatcher <timothy@apple.com>
10857
10858 Complete in scope variables in the Console when paused.
10859
10860 https://bugs.webkit.org/show_bug.cgi?id=19115
10861
10862 Reviewed by Geoffrey Garen.
10863
10864 * page/inspector/Console.js:
10865 (WebInspector.Console.prototype.completions): If the expressionString
10866 is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
10867 to get an object that declares all the in scope variables. That way
10868 "top level" expressions are completed.
10869 * page/inspector/ScriptsPanel.js:
10870 (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
10871 Return an object that has all the variables that are in scope for the
10872 selected call frame. The value of each property is just true.
10873 The return object is useful for quick lookups or auto completion.
10874
cwzwarich@webkit.orgac715282008-08-17 21:34:46 +0000108752008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
10876
10877 Not reviewed.
10878
10879 Speculative Qt build fix.
10880
10881 * bridge/qt/qt_runtime.cpp:
10882 (KJS::Bindings::convertValueToQVariant):
10883 (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
10884
ggaren@apple.comfea43532008-08-17 20:23:49 +0000108852008-08-17 Geoffrey Garen <ggaren@apple.com>
10886
10887 Reviewed by Cameron Zwarich.
ggaren@apple.com6e53d0a2008-08-17 20:28:37 +000010888
10889 Updated project files to XCode 3.1.
10890
10891 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
10892
108932008-08-17 Geoffrey Garen <ggaren@apple.com>
10894
10895 Reviewed by Cameron Zwarich.
ggaren@apple.comfea43532008-08-17 20:23:49 +000010896
10897 Made room for a free word in JSCell.
10898
10899 Changed JSDOMWindowBase to store its auxiliary data in a subclass of
10900 JSGlobalData, so the two could share a pointer.
10901
10902 Added a bunch of ASSERTs, to help catch over-sized objects.
10903
mrowe@apple.com13570292008-08-16 06:48:10 +0000109042008-08-15 Mark Rowe <mrowe@apple.com>
10905
mitz@apple.comb96c1b92008-08-17 03:28:52 +000010906 Reviewed by Dan Bernstein.
10907
10908 Disable dead code stripping in debug builds.
10909
10910 * Configurations/Base.xcconfig:
10911 * WebCore.xcodeproj/project.pbxproj:
10912
109132008-08-15 Mark Rowe <mrowe@apple.com>
10914
mrowe@apple.com13570292008-08-16 06:48:10 +000010915 Rubber-stamped by Geoff Garen.
10916
10917 <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
10918
10919 * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
10920 between the Debug configuration and debug Production variant.
10921 * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
10922
antti@apple.coma05e8b02008-08-15 22:58:06 +0000109232008-08-15 Antti Koivisto <antti@apple.com>
10924
10925 Reviewed by Anders.
10926
10927 Don't start preloading body resources before the head is complete. This prevents
10928 body preloads from slowing down initial display when there is limited amount
10929 of bandwidth available.
10930
10931 Works by queuing up found body preloads to DocLoader and only issuing them
10932 after document has rendering.
10933
10934 With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
10935 without affecting complete load time.
10936
10937 * html/PreloadScanner.cpp:
10938 (WebCore::PreloadScanner::PreloadScanner):
10939 (WebCore::PreloadScanner::scanningBody):
10940 (WebCore::PreloadScanner::emitTag):
10941 (WebCore::PreloadScanner::emitCSSRule):
10942 * html/PreloadScanner.h:
10943 * loader/DocLoader.cpp:
10944 (WebCore::DocLoader::preload):
10945 (WebCore::DocLoader::checkForPendingPreloads):
10946 (WebCore::DocLoader::requestPreload):
10947 * loader/DocLoader.h:
10948 * loader/loader.cpp:
10949 (WebCore::Loader::Host::didFinishLoading):
10950 (WebCore::Loader::Host::didFail):
10951
adachan@apple.com94ac38d2008-08-15 21:08:40 +0000109522008-08-15 Ada Chan <adachan@apple.com>
10953
10954 Use item's computed style if the render style is 0 before falling back to the <select>'s style.
10955 This way style set on an <hr> within a <select> will be honored.
10956
10957 Reviewed by Dave Hyatt and Dan Bernstein.
10958
10959 * rendering/RenderMenuList.cpp:
10960 (WebCore::RenderMenuList::itemStyle):
10961
antti@apple.com9f7911472008-08-15 20:48:06 +0000109622008-08-15 Antti Koivisto <antti@apple.com>
10963
10964 Reviewed by Oliver.
10965
10966 Some loader performance tweaks:
10967 - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
10968 Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue
10969 to not delay rendering.
10970 - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
10971 can take long time when latency is high so it is good to get started early.
10972 - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
10973 load queues. Issue remaining loads to the network layer.
10974
10975 * loader/loader.cpp:
10976 (WebCore::Loader::determinePriority):
10977 (WebCore::Loader::load):
10978 (WebCore::Loader::Host::servePendingRequests):
10979 * loader/loader.h:
10980
timothy@apple.com2d974c32008-08-15 18:35:39 +0000109812008-08-15 Timothy Hatcher <timothy@apple.com>
10982
10983 Detach the script debugger when the Web Inspector's window closes.
10984 This has always been the intended design, but never fully implemented.
10985
10986 https://bugs.webkit.org/show_bug.cgi?id=20402
10987
10988 Reviewed by Adam Roben.
10989
10990 * page/InspectorController.cpp:
10991 (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
10992 if the window is no longer visible.
10993
hausmann@webkit.orgbb4b9142008-08-15 18:11:34 +0000109942008-08-15 HÃ¥vard Wall <hwall@trolltech.com>
10995
10996 Reviewed by Simon.
10997
hausmann@webkit.org58144a72008-08-15 18:12:08 +000010998 Fixes: compile with QT_NO_CONTEXTMENU
10999
11000 * platform/qt/PlatformMouseEventQt.cpp:
11001 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
11002 * platform/qt/PlatformScrollBarQt.cpp:
11003 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
11004 (WebCore::PlatformScrollbar::handleContextMenuEvent):
11005
110062008-08-15 HÃ¥vard Wall <hwall@trolltech.com>
11007
11008 Reviewed by Simon.
11009
hausmann@webkit.orgbb4b9142008-08-15 18:11:34 +000011010 Fixes: compile with QT_NO_WHEELEVENT
11011
11012 * platform/qt/WheelEventQt.cpp:
11013 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
11014
timothy@apple.com4889e612008-08-15 17:06:14 +0000110152008-08-15 Keishi Hattori <casey.hattori@gmail.com>
11016
timothy@apple.comd64639c2008-08-15 17:48:36 +000011017 Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
11018
11019 https://bugs.webkit.org/show_bug.cgi?id=20210
11020
11021 Reviewed by Tim Hatcher.
11022
11023 * page/Console.cpp:
11024 (WebCore::Console::group):
11025 (WebCore::Console::groupEnd):
11026 * page/Console.h:
11027 (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
11028 * page/InspectorController.cpp:
11029 (WebCore::InspectorController::startGroup): Increments group level by
11030 one and adds console message with StartGroupMessaageLevel.
11031 (WebCore::InspectorController::endGroup): Decrements group level by one
11032 and adds console message with EndGroupMessaageLevel.
11033 * page/InspectorController.h:
11034 * page/inspector/Console.js:
11035 (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
11036 if the message is StartGroupMessaageLevel.
11037 (WebInspector.ConsoleMessage.prototype.toMessageElement):
11038 (WebInspector.ConsoleGroup.prototype.addMessage):
11039 * page/inspector/inspector.js:
11040
110412008-08-15 Keishi Hattori <casey.hattori@gmail.com>
11042
timothy@apple.com7310b6a2008-08-15 17:35:22 +000011043 Adds support for console.dir to the Inspector
11044
11045 https://bugs.webkit.org/show_bug.cgi?id=19155
11046
11047 Reviewed by Tim Hatcher.
11048
11049 * bindings/js/JSConsoleCustom.cpp:
11050 (WebCore::JSConsole::dir):
11051 * page/Console.cpp:
11052 (WebCore::Console::dir):
11053 * page/Console.h: Added ObjectMessageLevel.
11054 * page/Console.idl: Added console.dir.
11055 * page/inspector/Console.js:
11056 (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
11057 ObjectPropertiesSection if the MessageLevel is Object.
11058 * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
11059 used on primitive data types.
11060 * page/inspector/inspector.css:
11061
110622008-08-15 Keishi Hattori <casey.hattori@gmail.com>
11063
timothy@apple.com4889e612008-08-15 17:06:14 +000011064 Adds support for clear() in the Inspector console.
11065
11066 https://bugs.webkit.org/show_bug.cgi?id=19873
11067
11068 Reviewed by Tim Hatcher.
11069
11070 * page/inspector/Console.js:
11071
timothy@apple.com12c5b5d2008-08-15 17:02:44 +0000110722008-08-15 Anthony Ricaud <rik24d@gmail.com>
11073
11074 Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
11075
11076 Platform distinction and modifier key matching adjusted
11077 by Daniel Jalkut <jalkut@red-sweater.com>
11078
11079 Bug 16313: text search (find) keybindings should work in the Web Inspector
11080 https://bugs.webkit.org/show_bug.cgi?id=16313
11081
11082 Reviewed by Tim Hatcher.
11083
11084 * page/inspector/inspector.js: Added a case for the F key
11085
timothy@apple.coma5ba4392008-08-15 16:50:26 +0000110862008-08-15 Keishi Hattori <casey.hattori@gmail.com>
11087
11088 Fix for error when the string doesn't contain a webkit-profile link.
11089
11090 https://bugs.webkit.org/show_bug.cgi?id=20399
11091
11092 Reviewed by Tim Hatcher.
11093
11094 * page/inspector/inspector.js:
11095
timothy@apple.com895b2652008-08-15 16:33:27 +0000110962008-08-15 Timothy Hatcher <timothy@apple.com>
11097
11098 Fixes two bugs where JavaScript could be executed from the page
11099 while the debugger is paused.
11100
11101 The first issue was JSLazyEventListener not checking the paused
11102 state before parsing the code.
11103
11104 The second issue was with the PageGroup version of
11105 JavaScriptDebugServer::setJavaScriptPaused always passing false
11106 to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
11107 and not the paused argument.
11108
11109 https://bugs.webkit.org/show_bug.cgi?id=20284
11110
11111 Reviewed by Adam Roben.
11112
11113 * bindings/js/JSEventListener.cpp:
11114 (WebCore::JSLazyEventListener::parseCode): Check the paused
11115 state of the ScriptController. Return early if paused.
11116 * manual-tests/inspector/debugger-execution-while-paused.html: Added.
11117 * page/JavaScriptDebugServer.cpp:
11118 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
11119 Pass the paused argument to the Page version of setJavaScriptPaused.
11120
ap@webkit.orgbe495d32008-08-15 07:43:48 +0000111212008-08-15 Alexey Proskuryakov <ap@webkit.org>
11122
11123 Reviewed by Geoff Garen.
11124
11125 JSStringRef is created context-free, but can get linked to one via an identifier table,
11126 breaking an implicit API contract.
11127
11128 * page/InspectorController.cpp:
11129 (WebCore::jsStringRef):
11130 (WebCore::InspectorController::didParseSource):
11131 (WebCore::InspectorController::failedToParseSource):
11132 * page/JavaScriptProfile.cpp:
11133 (WebCore::getTitleCallback):
11134 Updated for JavaScriptCore changes.
11135
kevino@webkit.org8fe09ff2008-08-15 05:10:57 +0000111362008-08-14 Kevin Ollivier <kevino@theolliviers.com>
11137
11138 wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
11139 an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
11140
11141 * platform/graphics/AffineTransform.h:
11142
adele@apple.com2b2e2f82008-08-15 00:53:36 +0000111432008-08-14 Eric Carlson <eric.carlson@apple.com>
11144
11145 Reviewed by Adele.
11146
11147 Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
11148 <video> elements on Windows never becomes visible when a page is restored from the cache
11149
11150 Always pass "set" calls down to MediaPlayerPrivate instead of only when the
11151 value is different from the cached value. Let the implementation decide when
11152 to avoid work because nothing has changed.
11153
11154 * platform/graphics/MediaPlayer.cpp:
11155 (WebCore::MediaPlayer::setVolume):
11156 (WebCore::MediaPlayer::setRate):
11157 (WebCore::MediaPlayer::setRect):
11158 (WebCore::MediaPlayer::setVisible):
11159
timothy@apple.comda810f42008-08-14 23:57:14 +0000111602008-08-14 Keishi Hattori <casey.hattori@gmail.com>
11161
11162 Make Firebug command line API respect predefined variables.
11163
timothy@apple.com90751f02008-08-14 23:58:19 +000011164 https://bugs.webkit.org/show_bug.cgi?id=20385
11165
timothy@apple.comda810f42008-08-14 23:57:14 +000011166 Reviewed by Tim Hatcher.
11167
11168 * page/inspector/Console.js:
11169
weinig@apple.com4b51d002008-08-14 23:33:22 +0000111702008-08-14 Sam Weinig <sam@webkit.org>
11171
11172 Reviewed by Geoffrey Garen and Timothy Hatcher.
11173
11174 Allow programatically setting the HTMLTokenizers time delay and chunk size
11175 which are used for determining how aggressively we yield.
11176
11177 * WebCore.base.exp:
11178 * html/HTMLTokenizer.cpp:
11179 (WebCore::HTMLTokenizer::begin):
11180 (WebCore::HTMLTokenizer::continueProcessing):
11181 * html/HTMLTokenizer.h:
11182 * page/Page.cpp:
11183 (WebCore::Page::Page):
11184 (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
11185 (WebCore::Page::setCustomHTMLTokenizerChunkSize):
11186 * page/Page.h:
11187 (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
11188 (WebCore::Page::customHTMLTokenizerTimeDelay):
11189 (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
11190 (WebCore::Page::customHTMLTokenizerChunkSize):
11191
eric@webkit.org89613d22008-08-14 23:19:17 +0000111922008-08-14 Eric Seidel <eric@webkit.org>
11193
eric@webkit.org7e897c32008-08-14 23:20:00 +000011194 Reviewed by Beth.
11195
11196 Move us one step closer to cross-platform svg/graphics code
11197
11198 * WebCore.xcodeproj/project.pbxproj:
11199 * html/CanvasStyle.cpp:
11200 * platform/graphics/Color.cpp:
11201 (WebCore::colorWithOverrideAlpha):
11202 * platform/graphics/Color.h:
11203 * svg/graphics/cg/CgSupport.cpp:
11204 (WebCore::applyStrokeStyleToContext):
11205 (WebCore::strokeBoundingBox):
11206 * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
11207 (WebCore::SVGPaintServerSolid::setup):
11208
112092008-08-14 Eric Seidel <eric@webkit.org>
11210
eric@webkit.org4f490652008-08-14 23:19:31 +000011211 Reviewed by Alexey.
11212
eric@webkit.org73fa9d12008-08-14 23:19:44 +000011213 Remove un-need includes from HTMLCanvas and use the
11214 Gradient platform abstraction in one place in CanvasStyle
11215
11216 * html/CanvasRenderingContext2D.cpp:
11217 (WebCore::CanvasRenderingContext2D::fillRect):
11218 * html/CanvasStyle.cpp:
11219 * html/HTMLCanvasElement.cpp:
11220
112212008-08-14 Eric Seidel <eric@webkit.org>
11222
11223 Reviewed by Alexey.
11224
eric@webkit.org4f490652008-08-14 23:19:31 +000011225 Clean up GlyphBuffer.h, removing more #ifdefs
11226
11227 * platform/graphics/GlyphBuffer.h:
11228 (WebCore::GlyphBuffer::glyphAt):
11229 (WebCore::GlyphBuffer::advanceAt):
11230 (WebCore::GlyphBuffer::add):
11231
112322008-08-14 Eric Seidel <eric@webkit.org>
11233
eric@webkit.org89613d22008-08-14 23:19:17 +000011234 Reviewed by Sam.
11235
11236 Clean up AffineTransform.h, removing #ifdefs
11237
11238 * platform/graphics/AffineTransform.h:
11239 * platform/graphics/cairo/AffineTransformCairo.cpp:
11240 * platform/graphics/cg/AffineTransformCG.cpp:
11241 * platform/graphics/qt/AffineTransformQt.cpp:
11242 * platform/graphics/wx/AffineTransformWx.cpp:
11243
mitz@apple.com551d6252008-08-14 23:08:09 +0000112442008-08-14 Dan Bernstein <mitz@apple.com>
11245
mitz@apple.com94c1a7d2008-08-14 23:12:34 +000011246 - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
11247
11248 * platform/graphics/cairo/ImageSourceCairo.cpp:
11249 (WebCore::ImageSource::frameSizeAtIndex):
11250 * platform/graphics/qt/ImageSourceQt.cpp:
11251 (WebCore::ImageSource::frameSizeAtIndex):
11252 * platform/graphics/wx/ImageSourceWx.cpp:
11253 (WebCore::ImageSource::frameSizeAtIndex):
11254
112552008-08-14 Dan Bernstein <mitz@apple.com>
11256
mitz@apple.com551d6252008-08-14 23:08:09 +000011257 Reviewed by Brady Eidson.
11258
11259 - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
11260
11261 * platform/graphics/BitmapImage.cpp:
11262 (WebCore::BitmapImage::BitmapImage): Added initialization of
11263 m_hasUniformFrameSize.
11264 (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
11265 cached frame for use in decoded size computation and for setting
11266 m_hasUniformFrameSize.
11267 (WebCore::BitmapImage::currentFrameSize): Added.
11268 (WebCore::BitmapImage::dataChanged): Added code to reset
11269 m_hasUniformFrameSize.
11270 * platform/graphics/BitmapImage.h: Added currentFrameSize() and
11271 m_hasUniformFrameSize.
11272 * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
11273 * platform/graphics/cg/ImageCG.cpp:
11274 (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
11275 fixes the bug, which resulted from assuming that the frame being drawn
11276 was the same size as the first frame.
11277 * platform/graphics/cg/ImageSourceCG.cpp:
11278 (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
11279 changed to get the size of the frame at the given index.
11280 (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
11281
simon.fraser@apple.com50954e52008-08-14 23:04:41 +0000112822008-08-13 Simon Fraser <simon.fraser@apple.com>
11283
11284 Reviewed by Eric Seidel
11285
11286 Fix @font-face inside @media rule crash.
11287 https://bugs.webkit.org/show_bug.cgi?id=20367
11288
11289 Test: fast/css/font-face-in-media-rule.html
11290
11291 * css/CSSStyleSelector.cpp:
11292 (WebCore::CSSRuleSet::addRulesFromSheet):
11293
kevino@webkit.org141c4602008-08-14 22:52:55 +0000112942008-08-14 Kevin Ollivier <kevino@theolliviers.com>
11295
11296 wx build fixes after recent changes to Canvas and Image classes.
11297
11298 * platform/graphics/Pattern.h:
11299 * platform/graphics/wx/GradientWx.cpp:
11300 (WebCore::Gradient::fill):
11301 * platform/graphics/wx/GraphicsContextWx.cpp:
11302 (WebCore::GraphicsContext::applyFillPattern):
11303 (WebCore::GraphicsContext::applyStrokePattern):
11304 * platform/graphics/wx/ImageBufferWx.cpp:
11305 (WebCore::ImageBuffer::image):
11306 * platform/graphics/wx/ImageWx.cpp:
11307 (WebCore::Image::loadPlatformResource):
11308
britto@apple.comd7008662008-08-14 19:26:02 +0000113092008-08-14 Maxime Britto <britto@apple.com>
11310
11311 Reviewed by Sam Weinig.
11312
11313 rdar://6102511
11314 When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
11315 IE and FF are both preventing the keyboard event to interact with the page while scrolling.
11316 Some differences exist between them concerning the kind of key which is pressed :
11317 IE7 : every key leads to a stop of the panning
11318 FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
11319 For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
11320
11321 * page/EventHandler.cpp:
11322 (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
11323
christian@webkit.org0e20f322008-08-14 19:14:47 +0000113242008-08-14 Christian Dywan <christian@twotoasts.de>
11325
11326 Gtk+/ Cairo build fix, patch by Dirk Schulze.
11327
11328 * html/CanvasStyle.cpp:
11329 * platform/graphics/cairo/PatternCairo.cpp:
11330 (WebCore::Pattern::createPlatformPattern):
11331 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
11332
kmccullough@apple.comd2b50f12008-08-14 18:11:20 +0000113332008-08-14 Kevin McCullough <kmccullough@apple.com>
11334
11335 Reviewed by Tim.
11336
11337 <rdar://problem/6115819> Notify of profile in console
11338
11339 * page/InspectorController.cpp:
11340 (WebCore::InspectorController::addProfile):
11341 (WebCore::InspectorController::addProfileMessageToConsole): Called by
11342 addProfile this is the function that adds a message to the console that
11343 a profile finished.
11344 * page/InspectorController.h:
11345 * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
11346 the console log to the profile in the web inspector.
11347 (WebCore::getUniqueIdCallback):
11348 (WebCore::ProfileClass):
11349 * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
11350 Id to bring up the requested profile. Also select and reveal the
11351 profile in the profile panel. And created displayTitleForProfileLink()
11352 which formats a title taking into account if it's user initiated or if
11353 there are multiples. Lasty, I put the user initiated profile in a
11354 variable.
11355 * page/inspector/inspector.js: Make the profile title be a clickable
11356 link that will take the user to the identified profile. Also expose
11357 the count of user initiated profiles so they can be displayed in the
11358 console with the correct count.
11359
timothy@apple.comcd7f0f32008-08-14 17:41:05 +0000113602008-08-14 Timothy Hatcher <timothy@apple.com>
11361
11362 Avoid formating ConsoleMessages twice unless the message will be
11363 displayed in bubbles of a SourceFrame.
11364
11365 Reviewed by Kevin McCullough.
11366
11367 * page/inspector/Console.js:
11368 (WebInspector.ConsoleMessage): Only format the plain text message
11369 if the URL and line are valid and the level is error or warning.
11370 (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
11371 Helper to test for error or warning level.
11372 * page/inspector/SourceFrame.js:
11373 (WebInspector.SourceFrame.prototype.addMessage): Don't add the
11374 message if there is no message or valid line or if the msg
11375 isn't an error or warning.
11376
jmalonzo@webkit.orgb469bb72008-08-14 15:07:41 +0000113772008-08-14 Jan Michael Alonzo <jmalonzo@webkit.org>
11378
11379 partial Gtk build fix, not reviewed
11380
11381 * platform/graphics/cairo/PatternCairo.cpp:
11382
weinig@apple.com45e83142008-08-14 04:49:30 +0000113832008-08-13 Sam Weinig <sam@webkit.org>
11384
11385 Reviewed by Anders Carlson.
11386
11387 Fix style issue.
11388
11389 * html/HTMLMediaElement.cpp:
11390 (WebCore::HTMLMediaElement::pickMedia):
11391
zimmermann@webkit.org9ae47e92008-08-14 02:22:35 +0000113922008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
11393
zimmermann@webkit.org7a2f53d2008-08-14 03:06:01 +000011394 Build fix for Cairo, not reviewed. (exposed by gtk build slave)
11395 Continue Erics build fixes, after the Image cleanup.
11396
11397 * platform/graphics/cairo/ImageBufferCairo.cpp:
11398 (WebCore::ImageBuffer::image):
11399
114002008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
11401
zimmermann@webkit.org1ef52132008-08-14 02:38:16 +000011402 Build fix for Qt, not reviewed.
11403 Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
11404
11405 * dom/XMLTokenizer.cpp:
11406 (WebCore::eventuallyMarkAsParserCreated): Was erre
11407
114082008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
11409
zimmermann@webkit.org3e560562008-08-14 02:26:00 +000011410 Build fix, not reviewed.
11411 Add ScriptElement.cpp to Gtk build.
11412
11413 * GNUmakefile.am:
11414
114152008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
11416
zimmermann@webkit.org9ae47e92008-08-14 02:22:35 +000011417 Reviewed by Eric.
11418
11419 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
11420
11421 Refactor HTMLScriptElement's code into a common base class: ScriptElement.
11422 SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
11423
11424 This resolves code duplications and allows us to completly replace the old
11425 SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
11426
11427 As ScriptElement, doesn't actually inherit from Element, we may want to rename
11428 it, though StyleElement uses the same naming convention, so I left it as is for now.
11429 Eventually we'll rename both files in future.
11430
11431 No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
11432
11433 * WebCore.pro: Add new ScriptElement.cpp to build.
11434 * WebCore.vcproj/WebCore.vcproj: Ditto.
11435 * WebCore.xcodeproj/project.pbxproj: Ditto.
11436 * WebCoreSources.bkl: Dutto.
11437 * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
11438 (WebCore::ScriptElement::insertedIntoDocument):
11439 (WebCore::ScriptElement::removedFromDocument):
11440 (WebCore::ScriptElement::childrenChanged):
11441 (WebCore::ScriptElement::finishParsingChildren):
11442 (WebCore::ScriptElement::handleSourceAttribute):
11443 (WebCore::isSupportedJavaScriptLanguage):
11444 (WebCore::ScriptElementData::ScriptElementData):
11445 (WebCore::ScriptElementData::~ScriptElementData):
11446 (WebCore::ScriptElementData::requestScript):
11447 (WebCore::ScriptElementData::evaluateScript):
11448 (WebCore::ScriptElementData::stopLoadRequest):
11449 (WebCore::ScriptElementData::notifyFinished):
11450 (WebCore::ScriptElementData::ignoresLoadRequest):
11451 (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
11452 (WebCore::ScriptElementData::scriptCharset):
11453 (WebCore::ScriptElementData::scriptContent):
11454 * dom/ScriptElement.h: Added.
11455 (WebCore::ScriptElement::ScriptElement):
11456 (WebCore::ScriptElement::~ScriptElement):
11457 (WebCore::ScriptElementData::element):
11458 (WebCore::ScriptElementData::createdByParser):
11459 (WebCore::ScriptElementData::setCreatedByParser):
11460 * dom/XMLTokenizer.cpp:
11461 (WebCore::isScriptElement):
11462 (WebCore::castToScriptElement):
11463 (WebCore::eventuallyMarkAsParserCreated):
11464 (WebCore::XMLTokenizer::startElementNs):
11465 (WebCore::XMLTokenizer::endElementNs):
11466 (WebCore::createXHTMLParserErrorHeader):
11467 (WebCore::XMLTokenizer::insertErrorMessageBlock):
11468 * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
11469 (WebCore::HTMLScriptElement::HTMLScriptElement):
11470 (WebCore::HTMLScriptElement::~HTMLScriptElement):
11471 (WebCore::HTMLScriptElement::isURLAttribute):
11472 (WebCore::HTMLScriptElement::setCreatedByParser):
11473 (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
11474 (WebCore::HTMLScriptElement::childrenChanged):
11475 (WebCore::HTMLScriptElement::parseMappedAttribute):
11476 (WebCore::HTMLScriptElement::finishParsingChildren):
11477 (WebCore::HTMLScriptElement::insertedIntoDocument):
11478 (WebCore::HTMLScriptElement::removedFromDocument):
11479 (WebCore::HTMLScriptElement::text):
11480 (WebCore::HTMLScriptElement::setText):
11481 (WebCore::HTMLScriptElement::setHtmlFor):
11482 (WebCore::HTMLScriptElement::setEvent):
11483 (WebCore::HTMLScriptElement::charset):
11484 (WebCore::HTMLScriptElement::src):
11485 (WebCore::HTMLScriptElement::type):
11486 (WebCore::HTMLScriptElement::scriptCharset):
11487 (WebCore::HTMLScriptElement::scriptContent):
11488 (WebCore::HTMLScriptElement::sourceAttributeValue):
11489 (WebCore::HTMLScriptElement::charsetAttributeValue):
11490 (WebCore::HTMLScriptElement::typeAttributeValue):
11491 (WebCore::HTMLScriptElement::languageAttributeValue):
11492 (WebCore::HTMLScriptElement::dispatchLoadEvent):
11493 (WebCore::HTMLScriptElement::dispatchErrorEvent):
11494 * html/HTMLScriptElement.h:
11495 * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
11496 * svg/SVGScriptElement.cpp:
11497 (WebCore::SVGScriptElement::SVGScriptElement):
11498 (WebCore::SVGScriptElement::scriptContent):
11499 (WebCore::SVGScriptElement::sourceAttributeValue):
11500 (WebCore::SVGScriptElement::charsetAttributeValue):
11501 (WebCore::SVGScriptElement::typeAttributeValue):
11502 (WebCore::SVGScriptElement::languageAttributeValue):
11503 (WebCore::SVGScriptElement::dispatchLoadEvent):
11504 (WebCore::SVGScriptElement::dispatchErrorEvent):
11505 * svg/SVGScriptElement.h:
11506 (WebCore::SVGScriptElement::setCreatedByParser):
11507
eric@webkit.org7811ef02008-08-14 00:28:51 +0000115082008-08-13 Eric Seidel <eric@webkit.org>
11509
eric@webkit.org3562c592008-08-14 02:17:29 +000011510 Attempt to fix the Gtk build, no review.
11511
11512 I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
11513
11514 * platform/graphics/GraphicsContext.h:
11515 * platform/graphics/cairo/GraphicsContextCairo.cpp:
11516 * platform/graphics/qt/GradientQt.cpp:
11517 * platform/graphics/qt/GraphicsContextQt.cpp:
11518 * platform/gtk/RenderThemeGtk.cpp:
11519 (WebCore::paintMozWidget):
11520
115212008-08-13 Eric Seidel <eric@webkit.org>
11522
eric@webkit.org2ec42072008-08-14 02:03:09 +000011523 Yet another attempt to fix the Qt build, no review.
11524
11525 * platform/graphics/qt/GradientQt.cpp:
11526 * platform/graphics/qt/GraphicsContextQt.cpp:
11527 (WebCore::GraphicsContext::applyStrokePattern):
11528 (WebCore::GraphicsContext::applyFillPattern):
11529
115302008-08-13 Eric Seidel <eric@webkit.org>
11531
11532 Attempt to fix the Windows build, no review.
11533
11534 * platform/win/CursorWin.cpp:
11535 (WebCore::loadCursorByName):
11536 * platform/win/ScrollViewWin.cpp:
11537 (WebCore::ScrollView::paint):
11538
115392008-08-13 Eric Seidel <eric@webkit.org>
11540
eric@webkit.org508c0282008-08-14 01:29:34 +000011541 Attempt to fix the Windows build, no review.
11542
11543 * platform/win/CursorWin.cpp:
11544 (WebCore::loadCursorByName):
11545 * platform/win/ScrollViewWin.cpp:
11546 (WebCore::ScrollView::paint):
11547
115482008-08-13 Eric Seidel <eric@webkit.org>
11549
eric@webkit.org1bf70ab2008-08-14 01:24:15 +000011550 Attempt to fix the Qt build, no review.
11551
11552 * platform/graphics/qt/ImageBufferQt.cpp:
11553 (WebCore::ImageBuffer::image):
11554
115552008-08-13 Eric Seidel <eric@webkit.org>
11556
eric@webkit.orgf2d7c212008-08-14 01:21:34 +000011557 Attempt to fix the Windows build, no review.
11558
11559 * platform/graphics/win/ImageWin.cpp:
11560 (WebCore::Image::loadPlatformResource):
11561 * plugins/win/PluginViewWin.cpp:
11562 (WebCore::PluginView::paintMissingPluginIcon):
11563
115642008-08-13 Eric Seidel <eric@webkit.org>
11565
eric@webkit.orgac3f6662008-08-14 01:15:50 +000011566 Another attempt to fix the Qt build, no review.
11567
11568 * platform/graphics/qt/ImageQt.cpp:
11569 * platform/graphics/qt/StillImageQt.h:
11570
115712008-08-13 Eric Seidel <eric@webkit.org>
11572
eric@webkit.org31e0d812008-08-14 01:05:42 +000011573 No review, build fix only.
11574
11575 Fix mac build, due to change in new code since my patch was written.
11576
11577 * svg/graphics/cg/SVGResourceMaskerCg.mm:
11578 (WebCore::SVGResourceMasker::applyMask):
11579
115802008-08-13 Eric Seidel <eric@webkit.org>
11581
eric@webkit.orga20a0032008-08-14 00:42:54 +000011582 Build fix only, no review.
11583
11584 Attempt to fix the Qt build.
11585
eric@webkit.org923255c2008-08-14 00:59:20 +000011586 * platform/graphics/qt/ImageBufferQt.cpp:
11587 * platform/graphics/qt/StillImageQt.h:
11588 (WebCore::StillImage::create):
11589 (WebCore::StillImage::destroyDecodedData):
11590 (WebCore::StillImage::decodedSize):
11591
115922008-08-13 Eric Seidel <eric@webkit.org>
11593
11594 Build fix only, no review.
11595
11596 Attempt to fix the Qt build.
11597
eric@webkit.orga20a0032008-08-14 00:42:54 +000011598 * html/CanvasStyle.cpp:
11599 (WebCore::CanvasStyle::applyStrokeColor):
11600 (WebCore::CanvasStyle::applyFillColor):
11601
116022008-08-13 Eric Seidel <eric@webkit.org>
11603
eric@webkit.org4aca3be2008-08-14 00:30:04 +000011604 Reviewed by Sam.
11605
11606 Match HTML5 spec by throwing INVALID_STATE_ERR when
11607 createPattern is called and the HTMLImageElement is not
11608 yet done loading the image (!isComplete)
11609 https://bugs.webkit.org/show_bug.cgi?id=20351
11610
11611 Test: http/misc/canvas-pattern-from-incremental-image.html
11612
11613 * html/CanvasRenderingContext2D.cpp:
11614 (WebCore::CanvasRenderingContext2D::createPattern):
11615
116162008-08-13 Eric Seidel <eric@webkit.org>
11617
eric@webkit.org5b265602008-08-14 00:29:26 +000011618 Reviewed by Niko.
11619
eric@webkit.orgf0124f62008-08-14 00:29:50 +000011620 Split out a Pattern class from CanvasPattern
11621 and remove all the Pattern-related #ifdefs
11622 (This will break non-mac platforms! I will fix them.)
11623 https://bugs.webkit.org/show_bug.cgi?id=20351
11624
11625 * GNUmakefile.am:
11626 * WebCore.pro:
11627 * WebCore.vcproj/WebCore.vcproj:
11628 * WebCore.xcodeproj/project.pbxproj:
11629 * WebCoreSources.bkl:
11630 * html/CanvasPattern.cpp:
11631 (WebCore::CanvasPattern::parseRepetitionType):
11632 (WebCore::CanvasPattern::CanvasPattern):
11633 * html/CanvasPattern.h:
11634 (WebCore::CanvasPattern::create):
11635 (WebCore::CanvasPattern::pattern):
11636 (WebCore::CanvasPattern::originClean):
11637 * html/CanvasRenderingContext2D.cpp:
11638 (WebCore::CanvasRenderingContext2D::createPattern):
11639 (WebCore::CanvasRenderingContext2D::applyStrokePattern):
11640 (WebCore::CanvasRenderingContext2D::applyFillPattern):
11641 * html/CanvasRenderingContext2D.h:
11642 * html/HTMLCanvasElement.cpp:
11643 * html/HTMLCanvasElement.h:
11644 * loader/FrameLoader.cpp:
11645 (WebCore::FrameLoader::createHistoryItem):
11646 * platform/graphics/GraphicsContext.h:
11647 * platform/graphics/cairo/GraphicsContextCairo.cpp:
11648 (WebCore::GraphicsContext::applyStrokePattern):
11649 (WebCore::GraphicsContext::applyFillPattern):
11650 * platform/graphics/cg/GraphicsContextCG.cpp:
11651 (WebCore::GraphicsContext::clipToImageBuffer):
11652 (WebCore::GraphicsContext::applyStrokePattern):
11653 (WebCore::GraphicsContext::applyFillPattern):
11654
116552008-08-13 Eric Seidel <eric@webkit.org>
11656
11657 Reviewed by Niko.
11658
eric@webkit.org5b265602008-08-14 00:29:26 +000011659 Make Images RefCounted (and clean up callers)
11660 https://bugs.webkit.org/show_bug.cgi?id=20351
11661
11662 * editing/DeleteButtonController.cpp:
11663 (WebCore::DeleteButtonController::createDeletionUI):
11664 * loader/CachedImage.cpp:
11665 (WebCore::CachedImage::CachedImage):
11666 (WebCore::brokenImage):
11667 (WebCore::nullImage):
11668 (WebCore::CachedImage::image):
11669 (WebCore::CachedImage::notifyObservers):
11670 (WebCore::CachedImage::createImage):
11671 * loader/CachedImage.h:
11672 * loader/icon/IconRecord.cpp:
11673 (WebCore::IconRecord::setImageData):
11674 (WebCore::IconRecord::loadImageFromResource):
11675 * loader/icon/IconRecord.h:
11676 * platform/graphics/BitmapImage.h:
11677 (WebCore::BitmapImage::create):
11678 * platform/graphics/GeneratedImage.h:
11679 * platform/graphics/Gradient.cpp:
11680 * platform/graphics/Gradient.h:
11681 * platform/graphics/Image.cpp:
11682 (WebCore::Image::nullImage):
11683 * platform/graphics/Image.h:
11684 * platform/graphics/ImageBuffer.h:
11685 * platform/graphics/cairo/ImageBufferCairo.cpp:
11686 (WebCore::ImageBuffer::image):
11687 * platform/graphics/cg/ImageBufferCG.cpp:
11688 (WebCore::ImageBuffer::image):
11689 (WebCore::ImageBuffer::getImageData):
11690 (WebCore::ImageBuffer::putImageData):
11691 * platform/graphics/cg/PDFDocumentImage.h:
11692 (WebCore::PDFDocumentImage::create):
11693 (WebCore::PDFDocumentImage::destroyDecodedData):
11694 (WebCore::PDFDocumentImage::decodedSize):
11695 * platform/graphics/gtk/ImageGtk.cpp:
11696 (WebCore::Image::loadPlatformResource):
11697 * platform/graphics/mac/ImageMac.mm:
11698 (WebCore::Image::loadPlatformResource):
11699 * rendering/RenderImage.cpp:
11700 * rendering/RenderLayer.cpp:
11701 (WebCore::RenderLayer::paintOverflowControls):
11702 * svg/graphics/SVGImage.cpp:
11703 (WebCore::SVGImage::nativeImageForCurrentFrame):
11704 * svg/graphics/SVGImage.h:
11705 (WebCore::SVGImage::create):
11706 (WebCore::SVGImage::destroyDecodedData):
11707 (WebCore::SVGImage::decodedSize):
11708 (WebCore::SVGImage::frameAtIndex):
11709 * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
11710 (WebCore::SVGPaintServerPattern::setup):
11711 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
11712 (WebCore::SVGResourceMasker::applyMask):
11713 * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
11714 (WebCore::patternCallback):
11715 * svg/graphics/cg/SVGResourceMaskerCg.mm:
11716 (WebCore::SVGResourceMasker::applyMask):
11717
117182008-08-13 Eric Seidel <eric@webkit.org>
11719
11720 Reviewed by Niko.
eric@webkit.org7811ef02008-08-14 00:28:51 +000011721
11722 Remove #ifdefs from CanvasStyle by using platform/Color.h
eric@webkit.org5b265602008-08-14 00:29:26 +000011723 https://bugs.webkit.org/show_bug.cgi?id=20351
eric@webkit.org7811ef02008-08-14 00:28:51 +000011724
11725 There are some down-sides to this commit.
11726 This commit limits us to 255 levels of grey for calls like:
11727 context.setStrokeStyle(.37, 1.0)
11728 previously CG might have used up to 32bits to store the grey level
11729 Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
11730
11731 Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
11732 to RGBA32 (like all the rest of colors in WebCore), thus:
11733 context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
11734 context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
11735
11736 If this is a problem for Dashboard, we can either roll out this commit
11737 or add a beefier Color abstraction, which can be used internally by GraphicsContext
11738 when keeping state, and then GraphicsContext can grow some additional set* routines
11739 for setting the a grey/float/whatever fill and stroke.
11740
11741 * html/CanvasRenderingContext2D.cpp:
11742 (WebCore::CanvasRenderingContext2D::setFillStyle):
11743 * html/CanvasStyle.cpp:
11744 (WebCore::CanvasStyle::CanvasStyle):
11745 (WebCore::colorWithOverrideAlpha):
11746 (WebCore::CanvasStyle::applyStrokeColor):
11747 (WebCore::CanvasStyle::applyFillColor):
11748 * html/CanvasStyle.h:
11749 * platform/graphics/Color.cpp:
11750 (WebCore::colorFloatToRGBAByte):
11751 (WebCore::makeRGBA32FromFloats):
11752 * platform/graphics/Color.h:
11753
adele@apple.com83e44822008-08-13 23:50:41 +0000117542008-08-13 Eric Carlson <eric.carlson@apple.com>
11755
11756 Reviewed by Adele Peterson.
11757
11758 Fix for <rdar://problem/6137931>
11759 https://bugs.webkit.org/show_bug.cgi?id=20360
11760 Remove all parameters from the MIME type before checking with the MIME type registry
11761
11762 Tests: media/video-source-type-params.html
11763
11764 * html/HTMLMediaElement.cpp:
11765 (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';'
11766 to isSupportedMediaMIMEType()
11767
bdakin@apple.com7bc81bf2008-08-13 21:36:15 +0000117682008-08-13 Beth Dakin <bdakin@apple.com>
11769
11770 Reviewed by Sam Weinig.
11771
11772 Fix for <rdar://problem/6141345>
11773
11774 This patch refines findString and markAllMatchesForText functions'
11775 interactions with disconnected frames. They no longer rely on
11776 knowing where a range is relative to the visible region and work
11777 with disconnected frames that contain frames.
11778
11779 * editing/Editor.cpp:
11780 (WebCore::Editor::insideVisibleArea): Now returns a bool instead of
11781 the visiblity enum.
11782 (WebCore::Editor::firstVisibleRange): This now returns the very
11783 first visible range in the document. It's no longer dependent on
11784 searching forward.
11785 (WebCore::Editor::lastVisibleRange): This now returns the very last
11786 visible range in the document. It's no longer dependent on
11787 searching backwards.
11788 (WebCore::Editor::nextVisibleRange): This returns the next visible
11789 range in the appropriate direction from the current range.
11790 * editing/Editor.h:
11791 * page/Frame.cpp:
11792 (WebCore::Frame::findString):
11793 (WebCore::Frame::markAllMatchesForText):
11794
kevino@webkit.orgee5adc42008-08-13 20:07:16 +0000117952008-08-13 Kevin Ollivier <kevino@theolliviers.com>
11796
11797 wx build fix for case-sensitive platforms, like Linux.
11798
11799 * WebCoreSources.bkl:
11800
jmalonzo@webkit.org210145b2008-08-13 19:56:20 +0000118012008-08-13 Marco Barisione <marco.barisione@collabora.co.uk>
11802
11803 Reviewed by Holger Freyther.
11804
11805 http://bugs.webkit.org/show_bug.cgi?id=16881
11806 [GTK] PlatformScreenGtk is unimplemented
11807
11808 Original patch by Christian Dywan.
11809
11810 * platform/gtk/PlatformScreenGtk.cpp:
11811 (WebCore::screenDepth):
11812 (WebCore::screenDepthPerComponent):
11813 (WebCore::screenIsMonochrome):
11814 (WebCore::screenRect):
11815 (WebCore::screenAvailableRect):
11816
jmalonzo@webkit.orge4693932008-08-13 19:42:08 +0000118172008-08-13 Jan Michael Alonzo <jmalonzo@webkit.org>
11818
11819 Reviewed by Holger Freyther.
11820
11821 http://bugs.webkit.org/show_bug.cgi?id=20318
11822 SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
11823
11824 g_idle_add is the same as g_idle_add_full with a priority of
11825 G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
11826
11827 * platform/gtk/SharedTimerGtk.cpp:
11828 (WebCore::setSharedTimerFireTime):
11829
timothy@apple.comf0426602008-08-13 18:11:01 +0000118302008-08-13 Timothy Hatcher <timothy@apple.com>
11831
11832 Changed the InspectorController so it can be notified when the
11833 attached state of the Inspector changes in WebKit.
11834
11835 Reviewed by Kevin McCullough.
11836
11837 * WebCore.base.exp: Updated the symbol for setWindowVisible.
11838 * page/InspectorController.cpp:
11839 (WebCore::InspectorController::setWindowVisible): Added an attached argument,
11840 that defaults to false.Call setAttachedWindow with the attached argument.
11841 (WebCore::InspectorController::setAttachedWindow): Call the script version
11842 of setAttachedWindow.
11843 * page/InspectorController.h:
11844 * page/inspector/inspector.js:
11845 (WebInspector.setAttachedWindow): Set the attached property.
11846
timothy@apple.com9ea832b2008-08-13 18:10:36 +0000118472008-08-12 Timothy Hatcher <timothy@apple.com>
11848
timothy@apple.com72c92ae2008-08-13 18:10:45 +000011849 Added a close button to the Inspector's toolbar when docked.
11850
11851 https://bugs.webkit.org/show_bug.cgi?id=14270
11852
11853 Reviewed by Kevin McCullough.
11854
11855 * page/InspectorController.cpp:
11856 (WebCore::closeWindow): Call InspectorController::closeWindow.
11857 (WebCore::InspectorController::windowScriptObjectAvailable):
11858 Added closeWindow to the script class.
11859 * page/InspectorController.h:
11860 * page/inspector/Images/closeButtons.png: Added.
11861 * page/inspector/inspector.css: Added and changed styles.
11862 * page/inspector/inspector.html: Added the close button.
11863 * page/inspector/inspector.js:
11864 (WebInspector.loaded): Added click event listener to the close button.
11865 (WebInspector.close): Call InspectorController.closeWindow.
11866
118672008-08-12 Timothy Hatcher <timothy@apple.com>
11868
timothy@apple.com9ea832b2008-08-13 18:10:36 +000011869 Make the docked Web Inspector resizable. This is the cross platform
11870 portion of the code. Each InspectorClient needs to implement the
11871 real resize code.
11872
11873 https://bugs.webkit.org/show_bug.cgi?id=14282
11874
11875 Reviewed by Kevin McCullough.
11876
11877 * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
11878 * page/InspectorClient.h: Added setAttachedWindowHeight.
11879 * page/InspectorController.cpp:
11880 (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
11881 on the InspectorController.
11882 (WebCore::InspectorController::setAttachedWindowHeight): Call
11883 setAttachedWindowHeight on the client.
11884 (WebCore::InspectorController::windowScriptObjectAvailable):
11885 Added setAttachedWindowHeight to the script class.
11886 * page/InspectorController.h:
11887 * page/inspector/inspector.css: Make the cursor on the toolbar be
11888 row-resize when docked.
11889 * page/inspector/inspector.js:
11890 (WebInspector.loaded): Always add the toolbarDragStart event listener.
11891 (WebInspector.toolbarDragStart): Return early if we are not attached
11892 and not on Leopard. Call WebInspector.elementDragStart.
11893 (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
11894 (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
11895 otherwise call moveByUnrestricted.
11896
hausmann@webkit.orgd34f1d22008-08-13 13:43:34 +0000118972008-08-13 Simon Hausmann <hausmann@webkit.org>
11898
11899 Reviewed by Holger.
11900
11901 Initialize m_zoomsTextOnly in the Settings constructor.
11902
11903 * page/Settings.cpp:
11904 (WebCore::Settings::Settings):
11905
hausmann@webkit.org74586d62008-08-13 13:31:11 +0000119062008-08-13 Brad Hughes <bhughes@trolltech.com>
11907
11908 Reviewed by Simon.
11909
11910 Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
11911
11912 The latest upgrade of the intel compiler allows us to compile all of
11913 Qt with optimizations enabled (yay!).
11914
11915 * WebCore.pro:
11916
hausmann@webkit.org690b7fc2008-08-13 13:24:56 +0000119172008-08-13 Prasanth Ullattil <prasanth.ullattil@trolltech.com>
11918
11919 Reviewed by Simon.
11920
11921 Fix QtWebKit not displaying content on 403 HTTP responses
11922
11923 Just like with 404 responses also display content with 403, as
11924 used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
11925
11926 * platform/network/qt/QNetworkReplyHandler.cpp:
11927 (WebCore::QNetworkReplyHandler::finish):
11928
hausmann@webkit.org88c4dc92008-08-13 12:02:00 +0000119292008-08-13 Simon Hausmann <hausmann@webkit.org>
11930
hausmann@webkit.orgd2315e32008-08-13 13:16:15 +000011931 Reviewed by Holger.
11932
11933 Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
11934
11935 Make the formatting of String::format() locale independent through the use of QString::vsprintf.
11936
11937 * platform/text/String.cpp:
11938 (WebCore::String::format):
11939
119402008-08-13 Simon Hausmann <hausmann@webkit.org>
11941
hausmann@webkit.org88c4dc92008-08-13 12:02:00 +000011942 Reviewed by Lars.
11943
11944 Fix QWebFrame::setHtml() not setting the new contents immediately.
11945
11946 Added a setter to the DocumentLoader to toggle the deferred loading of the main
11947 resource when it comes from substitute data.
11948
11949 Disable deferred loading of the main resource when we have valid substitute data,
11950 as used by QWebFrame::setHtml.
11951
11952 * loader/DocumentLoader.h:
11953
mrowe@apple.com6aa36d12008-08-13 09:58:32 +0000119542008-08-13 Mark Rowe <mrowe@apple.com>
11955
11956 Speculative GTK build fix.
11957
11958 * GNUmakefile.am: Add dependency info for JSSVGElementWrapperFactory.cpp.
11959
hausmann@webkit.org298ce5f2008-08-13 09:11:23 +0000119602008-08-13 Thiago Macieira <tjmaciei@trolltech.com>
11961
11962 Reviewed by Simon.
11963
11964 Fix encoding of [ and ] in the host part of the URL
11965
11966 Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
11967 add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
11968 doesn't encode [ and ] when they are found in the host part. That is, the
11969 following URL:
11970 http://[::1]/
11971 is valid and should not be reencoded to:
11972 http://%5b::1%5d/
11973
11974 * platform/qt/KURLQt.cpp:
11975 (WebCore::KURL::operator QUrl):
11976
mitz@apple.come198b012008-08-12 21:49:07 +0000119772008-08-12 Mihnea Ovidenie <mihnea@adobe.com>
11978
11979 Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
11980 Broken HTML object elements cause de-reference of pointer to freed memory.
11981 If we fail to load an image for an object tag and we no longer believe the object tag points at
11982 an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
11983 fall back content.
11984
11985 Reviewed by Dave Hyatt and Alexey Proskuryakov.
11986
11987 Test: http/tests/misc/object-image-error-with-onload.html
11988
11989 * html/HTMLObjectElement.cpp:
11990 (WebCore::HTMLObjectElement::renderFallbackContent):
11991 * page/Frame.cpp:
11992 (WebCore::Frame::Frame):
11993
zimmermann@webkit.org36a02512008-08-12 21:11:17 +0000119942008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
11995
11996 Reviewed by Dave.
11997
11998 Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
11999 Masks are translated, and the mask images are swapped on the y-axis.
12000
12001 Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
12002 is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
12003
12004 Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
12005 the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
12006
12007 * svg/graphics/cg/SVGResourceMaskerCg.mm:
12008 (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
12009
mitz@apple.comf8a98692008-08-12 17:04:42 +0000120102008-08-12 Dan Bernstein <mitz@apple.com>
12011
mitz@apple.com1b7e844f2008-08-12 20:54:12 +000012012 - WebCore part of <rdar://problem/6121636>
12013 Make fast*alloc() abort() on failure and add "try" variants that
12014 return NULL on failure.
12015
12016 Reviewed by Darin Adler.
12017
12018 * platform/Arena.cpp:
12019 (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
12020 result.
12021 * platform/graphics/cg/ImageBufferCG.cpp:
12022 (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
12023
120242008-08-12 Dan Bernstein <mitz@apple.com>
12025
mitz@apple.com1e09cd72008-08-12 18:27:58 +000012026 Reviewed by Darin Adler.
12027
12028 - fix https://bugs.webkit.org/show_bug.cgi?id=19348
12029 <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
12030
12031 Test: fast/frames/frameset-style-recalc.html
12032
12033 * html/HTMLFrameSetElement.cpp:
12034 (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
12035 class implementation after marking for layout.
12036
120372008-08-12 Dan Bernstein <mitz@apple.com>
12038
mitz@apple.comf8a98692008-08-12 17:04:42 +000012039 Reviewed by John Sullivan.
12040
12041 - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
12042
12043 * WebCore.base.exp:
12044 * page/FrameView.cpp:
12045 (WebCore::FrameViewPrivate::FrameViewPrivate):
12046 (WebCore::FrameView::shouldUpdateWhileHidden):
12047 (WebCore::FrameView::setShouldUpdateWhileHidden):
12048 * page/FrameView.h:
12049 * page/Settings.cpp:
12050 * page/Settings.h:
12051
aroben@apple.comeeb8ebb2008-08-12 14:58:51 +0000120522008-08-12 Adam Roben <aroben@apple.com>
12053
12054 Windows build fix
12055
12056 * bindings/js/JSSVGPODTypeWrapper.h: Align
12057 JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
12058 members on 16-byte boundaries to avoid an alignment warning.
12059
zimmermann@webkit.orge1388112008-08-12 10:27:53 +0000120602008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
12061
12062 Reviewed by Oliver.
12063
zimmermann@webkit.org504f2552008-08-12 10:35:09 +000012064 Add new dynamice-update layout tests covering SVGMarkerElement.
12065 Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
12066 Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
12067
12068 Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
12069 svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
12070 svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
12071 svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
12072 svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
12073 svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
12074 svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
12075 svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
12076 svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
12077 svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
12078 svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
12079 svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
12080 svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
12081 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
12082 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
12083
12084 * svg/SVGMarkerElement.cpp:
12085 (WebCore::SVGMarkerElement::SVGMarkerElement):
12086 (WebCore::SVGMarkerElement::parseMappedAttribute):
12087 (WebCore::SVGMarkerElement::svgAttributeChanged):
12088 (WebCore::SVGMarkerElement::childrenChanged):
12089 (WebCore::SVGMarkerElement::setOrientToAuto):
12090 (WebCore::SVGMarkerElement::setOrientToAngle):
12091 (WebCore::SVGMarkerElement::canvasResource):
12092
120932008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
12094
12095 Reviewed by Oliver.
12096
zimmermann@webkit.orge1388112008-08-12 10:27:53 +000012097 Add new dynamic-update layout tests covering SVGImageElement.
12098 Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
12099
12100 Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
12101 svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
12102 svg/dynamic-updates/SVGImageElement-dom-width-attr.html
12103 svg/dynamic-updates/SVGImageElement-dom-x-attr.html
12104 svg/dynamic-updates/SVGImageElement-dom-y-attr.html
12105 svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
12106 svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
12107 svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
12108 svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
12109 svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
12110
12111 * svg/SVGImageElement.cpp:
12112 (WebCore::SVGImageElement::svgAttributeChanged):
12113
timothy@apple.com93114722008-08-12 04:20:25 +0000121142008-08-11 Anthony Ricaud <rik24d@gmail.com>
12115
timothy@apple.com2f2cde32008-08-12 04:28:16 +000012116 Changed Option/Alt-Up or Down in CSS editing when the value is
12117 near zero to jump to the next integer.
12118
12119 Reviewed by Tim Hatcher.
12120
12121 https://bugs.webkit.org/show_bug.cgi?id=20326
12122
12123 * page/inspector/StylesSidebarPane.js:
12124
121252008-08-11 Anthony Ricaud <rik24d@gmail.com>
12126
timothy@apple.com93114722008-08-12 04:20:25 +000012127 Changed the line highlight transition for an easier animation.
12128
12129 Reviewed by Tim Hatcher.
12130
12131 * page/inspector/SourceFrame.js:
12132
timothy@apple.com24a14852008-08-12 03:57:39 +0000121332008-08-11 Keishi Hattori <casey.hattori@gmail.com>
12134
12135 Added support for some Firebug Command Line APIs.
12136
12137 Reviewed by Tim Hatcher.
12138
12139 https://bugs.webkit.org/show_bug.cgi?id=19867
12140 https://bugs.webkit.org/show_bug.cgi?id=19868
12141 https://bugs.webkit.org/show_bug.cgi?id=19869
12142 https://bugs.webkit.org/show_bug.cgi?id=19875
12143 https://bugs.webkit.org/show_bug.cgi?id=19876
12144 https://bugs.webkit.org/show_bug.cgi?id=19880
12145
12146 * page/inspector/Console.js:
12147 (WebInspector.Console.prototype._evalInInspectedWindow):
12148 Create an object on the inspected window that holds the console
12149 command line API functions. This object is used in a with statement
12150 around the typed expression.
12151
zimmermann@webkit.org0350b6d2008-08-12 02:22:26 +0000121522008-08-11 Nikolas Zimmermann <zimmermann@kde.org>
12153
12154 Reviewed by Antti.
12155
12156 Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
12157
12158 JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
12159 failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
12160
12161 Added tests: svg/custom/svg-modify-currentTranslate.html
12162 svg/custom/tearoffs-with-tearoffs.html
12163 svg/custom/immutable-properties.html
12164
12165 Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
12166
12167 * bindings/js/JSSVGPODTypeWrapper.h:
12168 (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
12169 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
12170 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
12171 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
12172 (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
12173 (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
12174 (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
12175 (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
12176 * bindings/scripts/CodeGenerator.pm:
12177 * bindings/scripts/CodeGeneratorJS.pm:
12178 * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
12179 * svg/SVGZoomEvent.idl: SVG specification explicitely demands these attributes to be readonly, even its content.
12180
beidson@apple.com0e772f72008-08-12 00:34:46 +0000121812008-08-11 Brady Eidson <beidson@apple.com>
12182
12183 Reviewed by John and Anders
12184
12185 Fix for <rdar://problem/6141797>
12186
12187 When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
12188 would never have nil data.
12189
12190 When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
12191 semantics with some WebKit applications.
12192
12193 The guarantee was a good one and should be restored.
12194
12195 Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
12196 creates an empty data object in the case of null data for its own purposes.
12197
12198 * loader/SubstituteResource.h:
12199 (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null. This
12200 well help any future subclassers not make this mistake.
12201
12202 * loader/archive/ArchiveResource.cpp:
12203 (WebCore::ArchiveResource::create): Return 0 if the data is null.
12204
simon.fraser@apple.come0d44792008-08-11 22:44:06 +0000122052008-08-11 Simon Fraser <simon.fraser@apple.com>
12206
12207 Reviewed by Dave Hyatt
12208
12209 https://bugs.webkit.org/show_bug.cgi?id=20328
12210 Fix a problem when an 'all' transition transition with more than
12211 one property changing is interrupted, and did some AnimationController
12212 cleanup.
12213
12214 Test: transitions/interrupted-all-transition.html
12215
12216 * page/AnimationController.cpp:
12217 (WebCore::ImplicitAnimation::ImplicitAnimation):
12218 (WebCore::AnimationControllerPrivate::blendProperties):
12219 (WebCore::CompositeAnimation::updateTransitions):
12220 (WebCore::CompositeAnimation::cleanupFinishedAnimations):
12221 (WebCore::CompositeAnimation::setTransitionStartTime):
12222 (WebCore::CompositeAnimation::overrideImplicitAnimations):
12223 (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
12224 (WebCore::ImplicitAnimation::animate):
12225 (WebCore::ImplicitAnimation::onAnimationEnd):
12226 (WebCore::ImplicitAnimation::sendTransitionEvent):
12227 (WebCore::ImplicitAnimation::affectsProperty):
12228 (WebCore::KeyframeAnimation::endAnimation):
12229 (WebCore::KeyframeAnimation::onAnimationEnd):
12230
kmccullough@apple.com4a967c12008-08-11 20:45:19 +0000122312008-08-11 Kevin McCullough <kmccullough@apple.com>
12232
12233 Reviewed by Tim.
12234
12235 - Because console messages have group levels now, newly created messages
12236 that do not specify the level lose their message since the number of
12237 arguments is wrong.
12238
12239 * page/inspector/Console.js:
12240 * page/inspector/Resource.js:
12241
alp@webkit.orgeeb55142008-08-11 19:52:14 +0000122422008-08-11 Alp Toker <alp@nuanti.com>
12243
12244 Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
12245 the opportunity to sort the sources lists.
12246
12247 * GNUmakefile.am:
12248
timothy@apple.com9fe09f82008-08-11 18:48:37 +0000122492008-08-11 Timothy Hatcher <timothy@apple.com>
12250
12251 Speed up the the JavaScript syntax highlighter by generating
12252 the finders only once per script instead of per line.
12253
12254 https://bugs.webkit.org/show_bug.cgi?id=20346
12255
12256 Reviewed by Adam Roben.
12257
12258 * page/inspector/SourceFrame.js:
12259 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
12260 Removed, factored into syntaxHighlightJavascript as an inline function.
12261 (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
12262 Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
12263 Generate the finders before iterating the lines.
12264
aroben@apple.com957d2d32008-08-11 18:31:37 +0000122652008-08-11 Adam Roben <aroben@apple.com>
12266
12267 Windows build fix
12268
12269 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
12270 JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
12271 too.
12272
mitz@apple.com3f0060f2008-08-11 18:04:46 +0000122732008-08-11 Dan Bernstein <mitz@apple.com>
12274
12275 Reviewed by Darin Adler.
12276
12277 - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
12278
12279 Test: fast/css/counters/invalidate-cached-counter-node.html
12280
12281 * rendering/RenderContainer.cpp:
12282 (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
12283 RenderCounters in :before and :after content.
12284 * rendering/RenderContainer.h:
12285 * rendering/RenderCounter.cpp:
12286 (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
12287 to match the RenderObject method.
12288 (WebCore::RenderCounter::invalidate): Added. Resets the cached
12289 CounterNode and invalidates the object's layout and preferred widths.
12290 (WebCore::destroyCounterNodeChildren): Added a call to
12291 invalidateCounters().
12292 * rendering/RenderCounter.h:
12293 * rendering/RenderObject.h:
12294 (WebCore::RenderObject::invalidateCounters):
12295
dino@apple.com2af8c3a2008-08-11 17:24:36 +0000122962008-08-11 Dean Jackson <dino@apple.com>
12297
12298 Implement CSS Animation and Transition Events
12299 https://bugs.webkit.org/show_bug.cgi?id=20337
12300
12301 Implement the events defined in the CSS Animations
12302 and Transitions specifications so code can react
12303 to animations and transitions.
12304
12305 Reviewed by Tim Hatcher and Dave Hyatt.
12306
12307 * DerivedSources.make:
12308 * GNUmakefile.am:
12309 * WebCore.pro:
12310 * WebCore.vcproj/WebCore.vcproj:
12311 * WebCore.xcodeproj/project.pbxproj:
12312 * WebCoreSources.bkl:
12313 Build configs for new files
12314
12315 * bindings/js/JSDOMWindowBase.cpp:
12316 * bindings/js/JSDOMWindowBase.h:
12317 * bindings/js/JSEventCustom.cpp:
12318 * dom/Document.h:
12319 * dom/Event.cpp:
12320 * dom/Event.h:
12321 * dom/EventTarget.cpp:
12322 * dom/EventTargetNode.cpp:
12323 * dom/EventTargetNode.h:
12324 * html/HTMLElement.cpp:
12325 * page/AnimationController.cpp:
12326 do all the new event stuff
12327
12328 * html/HTMLAttributeNames.in:
12329 the onwebkitanimation* and onwebkittransitionend attrs
12330
12331 * dom/WebKitAnimationEvent.cpp: Added.
12332 * dom/WebKitAnimationEvent.h: Added.
12333 * dom/WebKitAnimationEvent.idl: Added.
12334 * dom/WebKitTransitionEvent.cpp: Added.
12335 * dom/WebKitTransitionEvent.h: Added.
12336 * dom/WebKitTransitionEvent.idl: Added.
12337 New files for the events
12338
12339 * manual-tests/transition-events.html: Added.
12340 New testfile
12341
aroben@apple.com3eae8622008-08-11 17:21:23 +0000123422008-08-11 Adam Roben <aroben@apple.com>
12343
12344 Add a ForwardingHeader for wtf/NotFound.h
12345
12346 Rubberstamped by Darin Adler.
12347
12348 * ForwardingHeaders/wtf/NotFound.h: Added.
12349
timothy@apple.com2f5bdf02008-08-11 16:53:30 +0000123502008-08-11 Timothy Hatcher <timothy@apple.com>
12351
12352 Fixes a bug where error bubbles in JavaScript resources would
12353 be clobbered by the syntax highlighter.
12354
12355 https://bugs.webkit.org/show_bug.cgi?id=20345
12356
12357 Reviewed by Adam Roben.
12358
12359 * manual-tests/inspector/resources/script-error.js: Added.
12360 * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
12361 * page/inspector/SourceFrame.js:
12362 (WebInspector.SourceFrame.prototype._addMessageToSource):
12363 Check the nodeType and not the nodeName, this is less fragile.
12364 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
12365 Check if the lastChild is an error bubble, if so remove it before
12366 getting the line's textContent. Add the error bubble back at the end.
12367
mrowe@apple.com4ec50d02008-08-11 05:07:42 +000012368== Rolled over to ChangeLog-2008-08-10 ==