blob: 746a27da3d2739b863dd3d83bb3da5c248b695c9 [file] [log] [blame]
hyatt@apple.comea254e22008-09-20 00:42:36 +000012008-09-19 David Hyatt <hyatt@apple.com>
2
3 Add support for painting/hit testing of four possible scrollbar buttons.
4 The Windows themes simply ignore the two parts that they will never
5 show. The Mac theme also ignores the other two buttons for now.
6
7 The cross-platform base for all three themes, ScrollbarThemeComposite,
8 has all the proper support though.
9
10 Reviewed by Sam Weinig
11
12 * platform/ScrollbarThemeComposite.cpp:
13 (WebCore::ScrollbarThemeComposite::hitTest):
14 (WebCore::ScrollbarThemeComposite::invalidatePart):
15 * platform/ScrollbarThemeComposite.h:
16 * platform/mac/ScrollbarThemeMac.h:
17 * platform/mac/ScrollbarThemeMac.mm:
18 (WebCore::ScrollbarThemeMac::backButtonRect):
19 (WebCore::ScrollbarThemeMac::forwardButtonRect):
20 (WebCore::ScrollbarThemeMac::paintButton):
21 * platform/win/ScrollbarThemeSafari.cpp:
22 (WebCore::ScrollbarThemeSafari::backButtonRect):
23 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
24 (WebCore::ScrollbarThemeSafari::paintButton):
25 * platform/win/ScrollbarThemeSafari.h:
26 * platform/win/ScrollbarThemeWin.cpp:
27 (WebCore::ScrollbarThemeWin::backButtonRect):
28 (WebCore::ScrollbarThemeWin::forwardButtonRect):
29 (WebCore::ScrollbarThemeWin::paintButton):
30 * platform/win/ScrollbarThemeWin.h:
31
pewtermoose@webkit.org0e3da6e2008-09-20 00:11:32 +0000322008-09-19 Matt Lilek <webkit@mattlilek.com>
33
34 Reviewed by Tim Hatcher.
35
36 Bug 17772: Inspector should support point-and-click to select a node to inspect
37 https://bugs.webkit.org/show_bug.cgi?id=17772
38 <rdar://problem/5792395>
39
40 * English.lproj/localizedStrings.js:
41 * page/Chrome.cpp:
42 (WebCore::Chrome::mouseDidMoveOverElement):
43 * page/EventHandler.cpp:
44 (WebCore::EventHandler::handleMousePressEvent):
45 * page/InspectorController.cpp:
46 (WebCore::toggleNodeSearch):
47 (WebCore::searchingForNode):
48 (WebCore::InspectorController::InspectorController):
49 (WebCore::InspectorController::toggleSearchForNodeInPage):
50 (WebCore::InspectorController::mouseDidMoveOverElement):
51 (WebCore::InspectorController::handleMousePressOnNode):
52 (WebCore::InspectorController::windowScriptObjectAvailable):
53 * page/InspectorController.h:
54 (WebCore::InspectorController::searchingForNodeInPage):
55 * page/inspector/ElementsPanel.js:
56 * page/inspector/Images/nodeSearchButtons.png: Added.
57 * page/inspector/inspector.css:
58
hyatt@apple.com57b2d522008-09-19 23:39:26 +0000592008-09-19 David Hyatt <hyatt@apple.com>
60
61 Add new scrollbar parts to be able to represent back and forward buttons
62 at either end of the scrollbar. The current scrollbar still just draws
63 a single button at either end, but the parts now exist.
64
65 Reviewed by Sam Weinig
66
67 * platform/ScrollTypes.h:
68 (WebCore::):
69 * platform/Scrollbar.cpp:
70 (WebCore::Scrollbar::autoscrollTimerFired):
71 (WebCore::Scrollbar::pressedPartScrollDirection):
72 (WebCore::Scrollbar::pressedPartScrollGranularity):
73 (WebCore::Scrollbar::handleMouseMoveEvent):
74 * platform/ScrollbarTheme.h:
75 (WebCore::ScrollbarTheme::buttonsPlacement):
76 (WebCore::ScrollbarTheme::invalidateParts):
77 * platform/ScrollbarThemeComposite.cpp:
78 (WebCore::ScrollbarThemeComposite::paint):
79 (WebCore::ScrollbarThemeComposite::hitTest):
80 (WebCore::ScrollbarThemeComposite::invalidatePart):
81 * platform/ScrollbarThemeComposite.h:
82
bdakin@apple.com5b0a3b22008-09-19 23:02:03 +0000832008-09-19 Beth Dakin <bdakin@apple.com>
84
85 Reviewed by Dave Hyatt.
86
87 Fix for <rdar://problem/6231308> crash in AutoTableLayout
88
89 The code assumes later on that a TableSection's grid's row vector
90 will never be empty. So make 1 the minimum number of columns.
91
92 * rendering/RenderTableSection.cpp:
93 (WebCore::RenderTableSection::ensureRows):
94
hyatt@apple.comaf711ec2008-09-19 22:55:56 +0000952008-09-19 David Hyatt <hyatt@apple.com>
96
97 Add a new ScrollbarButtonsPlacement type for specifying where
98 the button arrows are in a scrollbar.
99
100 Read in the placement settings for Mac. Nothing is done with the
101 setting yet.
102
103 Add a new buttonsPlacement() method to ScrollbarTheme composite
104 so that the arrow settings can be obtained.
105
106 Reviewed by Sam Weinig
107
108 * platform/ScrollTypes.h:
109 (WebCore::):
110 * platform/ScrollbarThemeComposite.h:
111 (WebCore::ScrollbarThemeComposite::buttonsPlacement):
112 * platform/mac/ScrollbarThemeMac.mm:
113 (WebCore::updateArrowPlacement):
114 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
115
sfalken@apple.com64602042008-09-19 22:47:45 +00001162008-09-19 Steve Falkenburg <sfalken@apple.com>
117
118 Roll out r36626. It is causing variance in SunSpider numbers on XP.
119
120 Rubber stamped by Mark Rowe.
121
122 * platform/win/SharedTimerWin.cpp:
123 (WebCore::isRunningOnVistaOrLater):
124 (WebCore::setSharedTimerFireTime):
125
kmccullough@apple.comd203b242008-09-19 21:56:14 +00001262008-09-19 Kevin McCullough <kmccullough@apple.com>
127
128 Reviewed by Tim.
129
130 https://bugs.webkit.org/show_bug.cgi?id=20942
131 Bug 20942: Repeated messages in resources don't collapse
132 - Now repeated messages in a resource's view are collapsed and a message
133 says how many were repeated.
134
135 * English.lproj/localizedStrings.js:
136 * manual-tests/inspector/multiple-console-messages.html:
137 * page/inspector/Console.js: Send all the messages to the resource's
138 view before possibly returning early if the message is a repeat.
139 * page/inspector/SourceFrame.js: Add the text about the message being
140 repeated, if it is, and increment it when necessary.
141
cfleizach@apple.com0abaacc2008-09-19 21:39:21 +00001422008-09-19 Chris Fleizach <cfleizach@apple.com>
143
144 Removed unnecessary #if
145
146 * page/mac/AccessibilityObjectWrapper.mm:
147
hyatt@apple.comc9967ce92008-09-19 21:20:59 +00001482008-09-19 David Hyatt <hyatt@apple.com>
149
hyatt@apple.comf658e502008-09-19 22:12:07 +0000150 Read in prefs for the scroll delay repeat values for buttons. Also
151 honor the option-click pref for jumping to the thumb when clicking in
152 the track.
153
154 Reviewed by Sam Weinig
155
156 * platform/mac/ScrollbarThemeMac.h:
157 * platform/mac/ScrollbarThemeMac.mm:
158 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
159 (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
160 (WebCore::ScrollbarThemeMac::autoscrollTimerDelay):
161 (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
162
1632008-09-19 David Hyatt <hyatt@apple.com>
164
hyatt@apple.comc9967ce92008-09-19 21:20:59 +0000165 Move ScrollbarThemeMac.cpp to ScrollbarThemeMac.mm so it can use Obj-C.
166 Set the initial button repeat delay to 0.5 for Mac.
167
168 Reviewed by Sam Weinig
169
170 * WebCore.xcodeproj/project.pbxproj:
171 * platform/mac/ScrollbarThemeMac.cpp: Removed.
172 * platform/mac/ScrollbarThemeMac.h:
173 (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
174 * platform/mac/ScrollbarThemeMac.mm: Copied from platform/mac/ScrollbarThemeMac.cpp.
175
darin@apple.com39a180f2008-09-19 21:15:14 +00001762008-09-19 Darin Adler <darin@apple.com>
177
178 Reviewed by Sam Weinig.
179
180 - part 2 of https://bugs.webkit.org/show_bug.cgi?id=20858
181 make each distinct C++ class get a distinct JSC::Structure
182
183 + Fixed all cases where we were using a shared structure for multiple
184 C++ classes in WebCore. This still has to be done in JavaScriptCore.
185
186 + Got rid of cacheGlobalObject.
187
188 + Improved use of PassRefPtr in bindings code.
189
190 + Removed a couple cases where we were potentially allocating prototypes
191 inside a JSObject's construction process -- this can lead to trouble if
192 we do a garbage collection while an object is only partly constructed.
193
194 * bindings/js/JSAudioConstructor.cpp:
195 (WebCore::JSAudioConstructor::JSAudioConstructor): Create a structure explicitly
196 so we don't implicitly share the structure with other objects that use the object
197 prototype.
198
199 * bindings/js/JSDOMBinding.cpp:
200 (WebCore::getCachedDOMConstructor): Added. To be used for constructors so we
201 don't need cacheGlobalObject any more.
202 (WebCore::cacheDOMConstructor): Ditto.
203
204 * bindings/js/JSDOMBinding.h: Removed DOMObject constructor that takes a prototype.
205 Added functions and a function template for getting cached DOM constructors.
206 Removed cacheGlobalObject function template.
207
208 * bindings/js/JSDOMWindowBase.cpp:
209 (WebCore::JSDOMWindowBase::JSDOMWindowBase): Take a PassRefPtr<DOMWindow> since
210 we're taking ownership.
211 * bindings/js/JSDOMWindowBase.h: Changed constructor to take PassRefPtr, since
212 we're taking ownership. Added constructor map.
213 * bindings/js/JSDOMWindowCustom.cpp:
214 (WebCore::JSDOMWindow::mark): Mark the constructors in the map.
215
216 * bindings/js/JSDOMWindowShell.cpp:
217 (WebCore::JSDOMWindowShell::JSDOMWindowShell): Take a PassRefPtr<DOMWindow> since
218 we're taking ownership. Use the new setWindow function to create the JSDOMWindow;
219 this is now done in only that one place.
220 (WebCore::JSDOMWindowShell::setWindow): Added. Creates the JSDOMWindow based on
221 the passed-in DOMWindow. Code was moved here and changed to allocate unique
222 structures for both the window prototype and the window.
223 * bindings/js/JSDOMWindowShell.h: Ditto.
224
225 * bindings/js/JSEventTargetBase.h: Changed class template argument so it doesn't
226 have the same name (JSEventTarget) as an actual class. Removed unhelpful use of
227 private/friend in JSEventTargetBase. Removed comments referring to defunct
228 macros. Changed JSEventTargetBasePrototype to get the prototype with the new
229 rather than its own copy of cacheGlobalObject (I missed this during pass 1).
230 Changed JSEventTargetBasePrototype so it doesn't have so many template arguments.
231
232 * bindings/js/JSEventTargetNode.cpp: Added s_info; needed for the new scheme
233 for caching structures and prototypes.
234 (WebCore::JSEventTargetNode::JSEventTargetNode): Use PassRefPtr.
235 (WebCore::JSEventTargetNode::createPrototype): Added.
236 * bindings/js/JSEventTargetNode.h: Updated for above changes.
237
238 * bindings/js/JSHTMLAllCollection.h:
239 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Use PassRefPtr.
240 * bindings/js/JSHTMLCollectionCustom.cpp:
241 (WebCore::getNamedItems): Pass ExecState instead of prototype.
242 * bindings/js/JSHTMLFormElementCustom.cpp:
243 (WebCore::JSHTMLFormElement::nameGetter): Ditto.
244 * bindings/js/JSHTMLInputElementBase.cpp:
245 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Use PassRefPtr.
246 * bindings/js/JSHTMLInputElementBase.h: Ditto.
247 * bindings/js/JSHTMLOptionElementConstructor.cpp:
248 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
249 Create a unique structure instead of sharing.
250 * bindings/js/JSImageConstructor.cpp:
251 (WebCore::JSImageConstructor::JSImageConstructor): Ditto.
252
253 * bindings/js/JSInspectedObjectWrapper.cpp:
254 (WebCore::JSInspectedObjectWrapper::wrap): Removed overload that takes
255 a prototype rather than a structure. Made the use of inheritorID() here
256 explicit.
257 * bindings/js/JSInspectedObjectWrapper.h: Ditto.
258 * bindings/js/JSInspectorCallbackWrapper.cpp:
259 (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
260 * bindings/js/JSInspectorCallbackWrapper.h: Ditto.
261
262 * bindings/js/JSNamedNodesCollection.cpp:
263 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Changed to
264 take an ExecState argument instead of a prototype. Create a unique
265 StructureID instead of sharing.
266 * bindings/js/JSNamedNodesCollection.h: Ditto.
267
268 * bindings/js/JSQuarantinedObjectWrapper.cpp: Removed overloaded
269 constructor that takes a prototype instead of a structure.
270 * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.
271
272 * bindings/js/JSRGBColor.cpp:
273 (WebCore::JSRGBColor::JSRGBColor): Take ExecState instead of a
274 prototype; create a unique structure.
275 (WebCore::getJSRGBColor): Ditto.
276 * bindings/js/JSRGBColor.h: Ditto.
277
278 * bindings/js/JSSQLResultSetRowListCustom.cpp:
279 (WebCore::JSSQLResultSetRowList::item): Use constructEmptyObject instead
280 of explicit coding the idiom for making a new object.
281
282 * bindings/js/JSXMLHttpRequestConstructor.cpp:
283 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
284 Create a unique structure instead of the shared one.
285 * bindings/js/JSXSLTProcessorConstructor.cpp:
286 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
287 Ditto.
288
289 * bindings/js/ScriptController.cpp:
290 (WebCore::ScriptController::clearWindowShell): Let the window shell's
291 setWindow function create the JSDOMWindow instead of doing it here.
292
293 * bindings/scripts/CodeGeneratorJS.pm: Changed to use PassRefPtr for
294 the structure and the wrapped object when creating wrappers.
295 Simplified some of the special cases for DOMWindow so they are
296 different only in ways the need to be. Eliminated the
297 JSDOMWindow::createPrototype and JSDOMWindowPrototype::self
298 functions. Moved responsibility for creating the structure and
299 parent prototype out of the prototype constructor into the
300 createPrototype function. Removed the unused "DoNotCache" flag for
301 objects other than DOMWindow. Use getDOMConstructor instead of
302 cacheGlobalObject for constructors. Make each constructor have
303 a unique structure ID.
304
305 * bridge/objc/objc_runtime.h: Added createPrototype and changed the
306 name of the info member to s_info so we can use the standard DOM
307 binding macros to handl the prototype.
308 * bridge/objc/objc_runtime.mm: Fixed namespacing a bit.
309 (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
310 Create a unique structure using getDOMStructure.
311
312 * bridge/runtime_array.cpp: Fixed namespacing a bit.
313 (JSC::RuntimeArray::RuntimeArray): Create a unique structure using
314 getDOMStructure.
315 * bridge/runtime_array.h: Added createPrototype so getDOMStructure
316 will work.
317
318 * bridge/runtime_object.cpp:
319 (JSC::RuntimeObjectImp::RuntimeObjectImp): Create a unique structure using
320 getDOMStructure.
321 * bridge/runtime_object.h: Added createPrototype so getDOMStructure
322 will work.
323
324 * history/CachedPage.cpp:
325 (WebCore::CachedPage::restore): Let the window shell's
326 setWindow function create the JSDOMWindow instead of doing it here.
327
328 * page/DOMWindow.idl: Removed DoNotCache, which is no longer used.
329
mitz@apple.comd6b74252008-09-19 21:02:55 +00003302008-09-19 Dan Bernstein <mitz@apple.com>
331
332 Reviewed by Dave Hyatt.
333
334 This optimization was suggested by Daniel Fenwick
335
336 - speed up measuring text on the Core Text code path by not specifying a paragraph writing direction
337
338 Specifying LTR paragraph directionality when measuring runs of RTL text
mitz@apple.com308acec2008-09-19 21:10:48 +0000339 resulted in typically two CTRuns being generated for every run instead
mitz@apple.comd6b74252008-09-19 21:02:55 +0000340 of one, due to the leading space being reordered to the left.
341
342 * platform/graphics/SimpleFontData.h: Removed the ltr parameter to
343 getCFStringAttributes() and changed m_CFStringAttributes from an array
344 to a single value.
345 * platform/graphics/mac/CoreTextController.cpp:
346 (WebCore::CoreTextController::CoreTextController): Added a
347 mayUseNaturalWritingDirection parameter.
348 (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Changed
349 to force the bidi embedding level whenever
350 m_mayUseNaturalWritingDirectrion is false. Since this is now a common
351 case, made the typesetter options dictionaries static.
352 * platform/graphics/mac/CoreTextController.h:
353 * platform/graphics/mac/FontMacCoreText.cpp:
354 (WebCore::Font::selectionRectForComplexText): Renamed a local variable.
355 (WebCore::Font::floatWidthForComplexText): Changed to allow the
356 CoreTextController to not set the writing direction.
357 * platform/graphics/mac/SimpleFontDataMac.mm:
358 (WebCore::SimpleFontData::getCFStringAttributes): Removed the ltr
359 parameter and the paragraph style attribute.
360
hyatt@apple.com2d7bdf72008-09-19 20:54:33 +00003612008-09-19 David Hyatt <hyatt@apple.com>
362
363 Reviewed by Sam Weinig
364
365 https://bugs.webkit.org/show_bug.cgi?id=20941
366
367 Incorrect height calculation for replaced element inside nested
368 positioned elements (where the inner has a percentage height and
369 the outer implicitly has a fixed height because of explicit top/bottom
370 values).
371
372 Added fast/block/positioning/replaced-inside-top-bottom.html
373
374 * rendering/RenderBox.cpp:
375 (WebCore::RenderBox::availableHeightUsing):
376
cfleizach@apple.com37bd8d72008-09-19 20:48:57 +00003772008-09-19 Chris Fleizach <cfleizach@apple.com>
378
379 Fix Tiger bustage
380
381 * page/mac/AccessibilityObjectWrapper.mm:
382
cfleizach@apple.com63b88ab2008-09-19 20:24:48 +00003832008-09-18 Chris Fleizach <cfleizach@apple.com>
384
385 Reviewed by Darin Adler.
386
387 <rdar://problem/6211041> Expose legend tag in accessibility
388
389 Exposes the legend tag as the titleUIElement of a fieldset
390
391 Test: accessibility/legend.html
392
393 * page/AccessibilityObject.h:
394 (WebCore::AccessibilityObject::isFieldset):
395 * page/AccessibilityRenderObject.cpp:
396 (WebCore::AccessibilityRenderObject::isFieldset):
397 (WebCore::AccessibilityRenderObject::titleUIElement):
398 * page/AccessibilityRenderObject.h:
399 * rendering/RenderFieldset.h:
400
cfleizach@apple.comcff26212008-09-19 20:04:13 +00004012008-09-19 Chris Fleizach <cfleizach@apple.com>
402
403 Reviewed by Darin Adler.
404
405 <rdar://problem/6213171> WebKit should use new array-centric methods for AX performance
406
407 Implement a few AX API methods that will be called by AppKit, which will
408 speed up access to accessibility objects
409
410 * page/mac/AccessibilityObjectWrapper.mm:
411 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
412 (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
413 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
414
zecke@webkit.org7594eb62008-09-19 11:06:55 +00004152008-09-19 Holger Hans Peter Freyther <zecke@selfish.org>
416
417 Reviewed by Simon Hausmann.
418
zecke@webkit.org3df68032008-09-19 11:43:27 +0000419 [qtwebkit] Set the m_should* flags to their proper value on entry
420 With plugins it was possible that we finished a job twice. This was
421 some kind of reentrancy in QNetworkReplyHandler::sendQueuedItems. By
422 setting the flag to (m_loadMode == LoadDeferred) they will always have
423 the right value and we will not send responses twice.
424
425 * platform/network/qt/QNetworkReplyHandler.cpp:
426
4272008-09-19 Holger Hans Peter Freyther <zecke@selfish.org>
428
429 Reviewed by Simon Hausmann.
430
zecke@webkit.org7594eb62008-09-19 11:06:55 +0000431 [qtwebkit] Pass test 70 of acid3. Handle text decoding errors
432 Handle text decoding errors before instructing the parser to parse. We
433 have converted the text to QString and all encoding errors are gone and
434 the parser will not be able to detect them. So handle them before parsing.
435
436 * dom/XMLTokenizerQt.cpp:
437 (WebCore::XMLTokenizer::doWrite):
438
darin@apple.comc9aea832008-09-19 06:49:35 +00004392008-09-18 Darin Adler <darin@apple.com>
440
441 Reviewed by Maciej Stachowiak.
442
443 - part 1 of https://bugs.webkit.org/show_bug.cgi?id=20858
444 make each distinct C++ class get a distinct JSC::Structure
445
446 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
447 (WebCore::JSCSSStyleDeclaration::customPut): Use setDOMException
448 instead of DOMExceptionTranslator.
449
450 * bindings/js/JSDOMBinding.cpp:
451 (WebCore::getCachedDOMObjectWrapper): Updated function name.
452 (WebCore::cacheDOMObjectWrapper): Ditto.
453 (WebCore::forgetDOMObject): Ditto.
454 (WebCore::getCachedDOMNodeWrapper): Ditto.
455 (WebCore::forgetDOMNode): Ditto.
456 (WebCore::cacheDOMNodeWrapper): Ditto.
457 (WebCore::forgetAllDOMNodesForDocument): Ditto.
458 (WebCore::markDOMNodesForDocument): Ditto.
459 (WebCore::updateDOMNodeDocument): Ditto.
460 (WebCore::getCachedDOMStructure): Added.
461 (WebCore::createDOMStructure): Ditto.
462
463 * bindings/js/JSDOMBinding.h: Get rid of the ScriptInterpreter
464 class and replace the static member functions with non-member
465 functions. Added many other functions for getting at structures,
466 prototypes, wrappers, and creating them. Also moved the
467 cacheGlobalObject function here from JavaScriptCore; eventually
468 I'll remove that once I get rid of the remaining callers. Also
469 removed the DOMExceptionTranslator class.
470
471 * bindings/js/JSDOMWindowBase.h: Added JSDOMStructureMap type,
472 and put one of those maps in each window.
473
474 * bindings/js/JSDOMWindowCustom.cpp:
475 (WebCore::markDOMObjectWrapper): Updated for function name change.
476 (WebCore::JSDOMWindow::mark): Added code to mark all the structures
477 in the structure map.
478
479 * bindings/js/JSEventTargetNode.cpp:
480 (WebCore::JSEventTargetNode::JSEventTargetNode): Changed to take
481 a structure instead of a prototype.
482 * bindings/js/JSEventTargetNode.h: Ditto.
483 * bindings/js/JSHTMLAllCollection.h:
484 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Ditto.
485
486 * bindings/js/JSHTMLInputElementBase.cpp:
487 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Removed
488 use of the JSC_IMPLEMENT_PROTOTYPE macro, and changed to take a
489 structure instead of a prototype.
490 * bindings/js/JSHTMLInputElementBase.h: Removed use of the
491 JSC_DEFINE_PROTOTYPE_WITH_PROTOTYPE macro, and changed constructor
492 to take a structure instead of a prototype. Created a dummy prototype
493 class that causes the HTMLInputElement prototype to have the
494 HTMLElement prototype.
495
496 * bindings/scripts/CodeGeneratorJS.pm: Change constructors to take
497 structures instead of prototypes. Changed the prototype self function
498 to use the getDOMPrototype function -- later we can eliminate it and
499 have callers invoke getDOMPrototype directly instead. Updated other
500 functions that have name changes. Added code to generate the
501 createPrototype member function. Changed use of cacheGlobalObject to
502 get it from the WebCore namespace instead of the JSC namespace.
503 Changed cacheDOMObject calls to use getDOMObjectWrapper instead.
504
505 * dom/Document.cpp:
506 (WebCore::Document::~Document): Updated for name change and also
507 removed unnecessary JSLock use -- there's no need to lock around this.
508 * dom/Node.cpp:
509 (WebCore::Node::setDocument): Ditto.
510
511 * dom/make_names.pl: Changed to use CREATE_DOM_NODE_WRAPPER macro
512 instead of calling new directly.
513
514 * bindings/js/JSCSSRuleCustom.cpp:
515 (WebCore::toJS): Updated for function name changes and used the
516 CREATE_DOM_OBJECT_WRAPPER macro.
517 * bindings/js/JSCSSValueCustom.cpp:
518 (WebCore::toJS): Ditto.
519 * bindings/js/JSCanvasPixelArrayCustom.cpp:
520 (WebCore::toJS): Ditto.
521 * bindings/js/JSDocumentCustom.cpp:
522 (WebCore::JSDocument::mark): Ditto.
523 (WebCore::toJS): Ditto.
524 * bindings/js/JSElementCustom.cpp:
525 (WebCore::toJSNewlyCreated): Ditto.
526 * bindings/js/JSEventCustom.cpp:
527 (WebCore::toJS): Ditto.
528 * bindings/js/JSEventTargetBase.cpp:
529 (WebCore::jsEventTargetDispatchEvent): Use setDOMException instead
530 of DOMExceptionTranslator.
531 (WebCore::toJS): Updated for function name changes and used the
532 CREATE_DOM_OBJECT_WRAPPER macro.
533 * bindings/js/JSHTMLCollectionCustom.cpp:
534 (WebCore::toJS): Ditto.
535 * bindings/js/JSNodeCustom.cpp:
536 (WebCore::JSNode::mark): Ditto.
537 (WebCore::createWrapper): Ditto.
538 (WebCore::toJS): Ditto.
539 * bindings/js/JSSVGPathSegCustom.cpp:
540 (WebCore::toJS): Ditto.
541 * bindings/js/JSStyleSheetCustom.cpp:
542 (WebCore::toJS): Ditto.
543 (WebCore::JSStyleSheet::mark): Ditto.
544 * bindings/js/JSTextCustom.cpp:
545 (WebCore::toJSNewlyCreated): Ditto.
546 * bindings/js/JSXMLHttpRequestConstructor.cpp:
547 (WebCore::constructXMLHttpRequest): Ditto.
548 * bindings/js/JSXMLHttpRequestCustom.cpp:
549 (WebCore::JSXMLHttpRequest::mark): Ditto.
550 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
551 (WebCore::JSXMLHttpRequestUpload::mark): Ditto.
552 * bindings/js/JSXSLTProcessorConstructor.cpp:
553 (WebCore::constructXSLTProcessor): Ditto.
554 * bindings/js/ScriptController.cpp:
555 (WebCore::ScriptController::finishedWithEvent): Ditto.
556 * xml/XMLHttpRequest.cpp:
557 (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
558 (WebCore::XMLHttpRequest::dropProtection): Ditto.
559
hyatt@apple.com083539d2008-09-19 06:30:16 +00005602008-09-18 David Hyatt <hyatt@apple.com>
561
562 This patch gets a viewless scrollbar working on Mac. It is turned off
563 by default. Hit testing works. For now the scrollbar just paints ugly
564 debug rects in the place of the buttons, track and thumb. It does match
565 Aqua metrics though.
566
567 Reviewed by Sam Weinig
568
569 * WebCore.xcodeproj/project.pbxproj:
570 * page/mac/EventHandlerMac.mm:
571 (WebCore::EventHandler::passMousePressEventToScrollbar):
572 * platform/ScrollbarThemeComposite.cpp:
573 (WebCore::ScrollbarThemeComposite::paint):
574 (WebCore::ScrollbarThemeComposite::trackPosition):
575 * platform/ScrollbarThemeComposite.h:
576 * platform/mac/ScrollViewMac.mm:
577 (WebCore::ScrollView::addChild):
578 * platform/mac/ScrollbarThemeMac.cpp:
579 (WebCore::):
580 (WebCore::ScrollbarThemeMac::hasButtons):
581 (WebCore::ScrollbarThemeMac::hasThumb):
582 (WebCore::buttonRepaintRect):
583 (WebCore::ScrollbarThemeMac::backButtonRect):
584 (WebCore::ScrollbarThemeMac::forwardButtonRect):
585 (WebCore::trackRepaintRect):
586 (WebCore::ScrollbarThemeMac::trackRect):
587 (WebCore::ScrollbarThemeMac::minimumThumbLength):
588 (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
589 (WebCore::ScrollbarThemeMac::paintTrack):
590 (WebCore::ScrollbarThemeMac::paintButton):
591 (WebCore::ScrollbarThemeMac::paintThumb):
592 * platform/mac/ScrollbarThemeMac.h:
593 (WebCore::ScrollbarThemeMac::supportsControlTints):
594 * platform/qt/ScrollbarThemeQt.cpp:
595 (WebCore::ScrollbarThemeQt::trackPosition):
596
collinj@webkit.org51261aa2008-09-19 06:13:22 +00005972008-09-18 Collin Jackson <collinj@webkit.org>
598
599 Build fix; added missing header file to GNUmakefile.am
600
601 * GNUmakefile.am:
602
weinig@apple.com39aecbe2008-09-19 04:56:21 +00006032008-09-18 Sam Weinig <sam@webkit.org>
604
605 Reviewed by David "the Hair" Hyatt.
606
607 Move DataRef, SVGRenderStyle and SVGRenderStyleDefs in render/style.
608
609 * GNUmakefile.am:
610 * WebCore.pro:
611 * WebCore.vcproj/WebCore.vcproj:
612 * WebCore.xcodeproj/project.pbxproj:
613 * rendering/DataRef.h: Removed.
614 * rendering/SVGRenderStyle.cpp: Removed.
615 * rendering/SVGRenderStyle.h: Removed.
616 * rendering/SVGRenderStyleDefs.cpp: Removed.
617 * rendering/SVGRenderStyleDefs.h: Removed.
618 * rendering/style/DataRef.h: Copied from rendering/DataRef.h.
619 * rendering/style/SVGRenderStyle.cpp: Copied from rendering/SVGRenderStyle.cpp.
620 * rendering/style/SVGRenderStyle.h: Copied from rendering/SVGRenderStyle.h.
621 * rendering/style/SVGRenderStyleDefs.cpp: Copied from rendering/SVGRenderStyleDefs.cpp.
622 * rendering/style/SVGRenderStyleDefs.h: Copied from rendering/SVGRenderStyleDefs.h.
623
mrowe@apple.coma5206592008-09-19 04:47:58 +00006242008-09-18 Mark Rowe <mrowe@apple.com>
625
626 Reviewed by Dan Bernstein.
627
628 Add a means of clearing a FrameTree's name.
629
630 * WebCore.base.exp:
631 * page/FrameTree.cpp:
632 (WebCore::FrameTree::clearName):
633 * page/FrameTree.h:
634
hyatt@apple.com6eeef382008-09-19 04:30:53 +00006352008-09-18 David Hyatt <hyatt@apple.com>
636
637 Eliminate addToSuperview from Widget, since it was only called
638 by ScrollViewMac's addChild method. Just shift the original body
639 of addToSuperView into addChild.
640
641 Reviewed by Sam Weinig
642
643 * platform/Widget.h:
644 * platform/mac/ScrollViewMac.mm:
645 (WebCore::ScrollView::addChild):
646 * platform/mac/WidgetMac.mm:
647
collinj@webkit.org9c672f62008-09-19 04:15:14 +00006482008-09-18 Collin Jackson <collinj@webkit.org>
649
650 Reviewed by Antti Koivisto and Mark Rowe.
651
652 Test: http/tests/misc/dns-prefetch-control.html
653
654 https://bugs.webkit.org/show_bug.cgi?id=20690
655
656 Invoke WebCore::prefetchDNS() on host names that appear in
657 in the href of hyperlinks and <link rel="dns-prefetch">. This
658 can be used to implement DNS prefetching.
659
660 * WebCore.vcproj/WebCore.vcproj:
661 * WebCore.xcodeproj/project.pbxproj:
662 * dom/Document.cpp:
663 (WebCore::Document::Document):
664 (WebCore::Document::processHttpEquiv):
665 (WebCore::Document::setSecurityOrigin):
666 (WebCore::Document::initDNSPrefetch):
667 (WebCore::Document::parseDNSPrefetchControlHeader):
668 * dom/Document.h:
669 (WebCore::Document::isDNSPrefetchEnabled):
670 * html/HTMLAnchorElement.cpp:
671 (WebCore::HTMLAnchorElement::parseMappedAttribute):
672 * html/HTMLLinkElement.cpp:
673 (WebCore::HTMLLinkElement::HTMLLinkElement):
674 (WebCore::HTMLLinkElement::parseMappedAttribute):
675 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
676 (WebCore::HTMLLinkElement::process):
677 * html/HTMLLinkElement.h:
678 * html/PreloadScanner.cpp:
679 (WebCore::PreloadScanner::processAttribute):
680 * loader/FrameLoader.cpp:
681 (WebCore::FrameLoader::begin):
682 * platform/gtk/TemporaryLinkStubs.cpp:
683 (WebCore::prefetchDNS):
684 * platform/network/DNS.h: Added.
685 * platform/network/cf/DNSCFNet.cpp: Added.
686 (WebCore::prefetchDNS):
687 * platform/qt/TemporaryLinkStubs.cpp:
688 (WebCore::prefetchDNS):
689 * platform/wx/TemporaryLinkStubs.cpp:
690 (WebCore::prefetchDNS):
691
hyatt@apple.comc5b931a2008-09-19 00:39:51 +00006922008-09-18 David Hyatt <hyatt@apple.com>
693
hyatt@apple.comcf31c162008-09-19 04:01:56 +0000694 Eliminate the convertToScreenCoordinate method on Widget, since
695 ScrollView has redundant methods that already do the same thing.
696
697 Reviewed by Sam Weinig
698
699 * editing/mac/SelectionControllerMac.mm:
700 (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
701 * platform/Widget.h:
702 * platform/mac/WidgetMac.mm:
703 (WebCore::Widget::containingWindow):
704
7052008-09-18 David Hyatt <hyatt@apple.com>
706
hyatt@apple.com179629b3c2008-09-19 03:16:26 +0000707 Move to only one constructor for Widgets. Rename data to m_data and make
708 it have an #ifdef only for platforms that have platform-specific data (Mac
709 and Gtk).
710
711 Reviewed by Sam Weinig
712
713 * WebCore.base.exp:
714 * platform/Widget.cpp:
715 (WebCore::Widget::init):
716 * platform/Widget.h:
717 * platform/gtk/WidgetGtk.cpp:
718 (WebCore::Widget::Widget):
719 (WebCore::Widget::~Widget):
720 (WebCore::Widget::cursor):
721 (WebCore::Widget::setCursor):
722 * platform/mac/WidgetMac.mm:
723 (WebCore::Widget::Widget):
724 (WebCore::Widget::~Widget):
725 (WebCore::Widget::addToSuperview):
726 (WebCore::Widget::removeFromSuperview):
727 (WebCore::Widget::beforeMouseDown):
728 (WebCore::Widget::afterMouseDown):
729 * platform/qt/WidgetQt.cpp:
730 (WebCore::Widget::Widget):
731 * platform/win/WidgetWin.cpp:
732 (WebCore::Widget::Widget):
733 * platform/wx/WidgetWx.cpp:
734 (WebCore::Widget::Widget):
735
7362008-09-18 David Hyatt <hyatt@apple.com>
737
hyatt@apple.com470d7e72008-09-19 03:01:08 +0000738 Move Qt's isNPAPIPlugin boolean from Widget down to PluginView, since there
739 was no reason for it to be on Widget. This change eliminates Qt ifdefs
740 from Widget.
741
742 Reviewed by Sam Weinig
743
744 * bindings/js/ScriptControllerQt.cpp:
745 (WebCore::ScriptController::createScriptInstanceForWidget):
746 * platform/qt/WidgetQt.cpp:
747 (WebCore::WidgetPrivate::WidgetPrivate):
748 (WebCore::WidgetPrivate::~WidgetPrivate):
749 (WebCore::Widget::Widget):
750 (WebCore::Widget::~Widget):
751 * plugins/PluginView.cpp:
752 (WebCore::PluginView::PluginView):
753 * plugins/PluginView.h:
754 (WebCore::PluginView::isNPAPIPlugin):
755 (WebCore::PluginView::setIsNPAPIPlugin):
756
7572008-09-18 David Hyatt <hyatt@apple.com>
758
hyatt@apple.com557408b2008-09-19 02:36:08 +0000759 Make geometryChanged() cross-platform on Widget. GTK and WIN platform
760 ifdefs are now gone from Widget!
761
762 Reviewed by Sam Weinig
763
764 * platform/Widget.h:
765 (WebCore::Widget::geometryChanged):
766 * platform/gtk/WidgetGtk.cpp:
767 * platform/qt/WidgetQt.cpp:
768
7692008-09-18 David Hyatt <hyatt@apple.com>
770
hyatt@apple.com17e57432008-09-19 02:29:27 +0000771 Consolidate convertTo/FromContainingWindow methods so that all platforms
772 but Mac share the same code.
773
774 Move convertSelfToChild and convertChildToSelf to ScrollView, since
775 Widget should know nothing about children. Make the methods cross-platform
776 on ScrollView.
777
778 Reviewed by Sam Weinig
779
780 * platform/ScrollView.h:
781 (WebCore::ScrollView::convertChildToSelf):
782 (WebCore::ScrollView::convertSelfToChild):
783 * platform/Widget.cpp:
784 (WebCore::Widget::convertToContainingWindow):
785 (WebCore::Widget::convertFromContainingWindow):
786 * platform/Widget.h:
787 (WebCore::Widget::geometryChanged):
788 * platform/gtk/ScrollViewGtk.cpp:
789 (WebCore::ScrollView::isScrollViewScrollbar):
790 * platform/gtk/WidgetGtk.cpp:
791 * platform/mac/ScrollViewMac.mm:
792 (WebCore::ScrollView::isScrollViewScrollbar):
793 * platform/mac/WidgetMac.mm:
794 * platform/qt/ScrollViewQt.cpp:
795 (WebCore::ScrollView::isScrollViewScrollbar):
796 * platform/qt/WidgetQt.cpp:
797 * platform/win/ScrollViewWin.cpp:
798 (WebCore::ScrollView::isScrollViewScrollbar):
799 * platform/win/WidgetWin.cpp:
800
8012008-09-18 David Hyatt <hyatt@apple.com>
802
hyatt@apple.comc5b931a2008-09-19 00:39:51 +0000803 Make the conversion methods that go to and from some containingWindow
804 cross-platform. Implement them on Mac.
805
806 Reviewed by Sam Weinig
807
808 * platform/Widget.h:
809 (WebCore::Widget::setContainingWindow):
810 * platform/mac/WidgetMac.mm:
811 (WebCore::Widget::convertFromContainingWindow):
812 (WebCore::Widget::convertToContainingWindow):
813
weinig@apple.comd1ea02d2008-09-19 00:28:05 +00008142008-09-18 Sam Weinig <sam@webkit.org>
815
816 Rubber-stamped by David "Yeah-yeah" Hyatt.
817
818 Cleanup RenderStyle.
819
820 * WebCore.xcodeproj/project.pbxproj:
821 * rendering/style/CounterContent.h:
822 * rendering/style/RenderStyle.cpp:
823 * rendering/style/RenderStyle.h:
824
dino@apple.comef93f532008-09-19 00:01:07 +00008252008-09-18 Chris Marrin <cmarrin@apple.com>
826
827 Reviewed by Sam Weinig
828
829 Fixed https://bugs.webkit.org/show_bug.cgi?id=20908
830 Now TransformOperations and AnimationList no longer
831 inherit from Vector<> but rather have API to access.
832
833 * css/CSSComputedStyleDeclaration.cpp:
834 (WebCore::computedTransform):
835 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
836 * css/CSSStyleSelector.cpp:
837 (WebCore::CSSStyleSelector::createTransformOperations):
838 * page/animation/AnimationBase.cpp:
839 (WebCore::blendFunc):
840 * page/animation/CompositeAnimation.cpp:
841 (WebCore::CompositeAnimation::updateTransitions):
842 (WebCore::CompositeAnimation::updateKeyframeAnimations):
843 (WebCore::CompositeAnimation::animate):
844 * page/animation/ImplicitAnimation.cpp:
845 (WebCore::ImplicitAnimation::validateTransformFunctionList):
846 * page/animation/KeyframeAnimation.cpp:
847 (WebCore::KeyframeAnimation::validateTransformFunctionList):
848 * rendering/RenderLayer.cpp:
849 (WebCore::RenderLayer::updateReflectionStyle):
850 * rendering/style/AnimationList.cpp:
851 (WebCore::AnimationList::operator==):
852 * rendering/style/AnimationList.h:
853 (WebCore::AnimationList::operator!=):
854 (WebCore::AnimationList::size):
855 (WebCore::AnimationList::isEmpty):
856 (WebCore::AnimationList::resize):
857 (WebCore::AnimationList::remove):
858 (WebCore::AnimationList::append):
859 (WebCore::AnimationList::animation):
860 * rendering/style/RenderStyle.cpp:
861 (WebCore::StyleRareNonInheritedData::updateKeyframes):
862 (WebCore::RenderStyle::applyTransform):
863 (WebCore::RenderStyle::adjustAnimations):
864 (WebCore::RenderStyle::adjustTransitions):
865 (WebCore::RenderStyle::transitionForProperty):
866 * rendering/style/RenderStyle.h:
867 (WebCore::RenderStyle::hasTransform):
868 * rendering/style/TransformOperations.cpp:
869 (WebCore::TransformOperations::TransformOperations):
870 (WebCore::TransformOperations::operator==):
871 * rendering/style/TransformOperations.h:
872 (WebCore::TransformOperations::apply):
873 (WebCore::TransformOperations::operations):
874
zecke@webkit.org20690ef2008-09-18 23:28:34 +00008752008-09-18 Holger Hans Peter Freyther <zecke@selfish.org>
876
zecke@webkit.org30db7422008-09-19 01:00:18 +0000877 Build fix.
878
879 [qt] Build fixes after the Widget/ScrollView cleanup
880 topLevel() is now root()
881
882
883 * platform/qt/ScrollViewQt.cpp:
884 (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
885 (WebCore::ScrollView::addChild):
886 (WebCore::ScrollView::removeChild):
887
8882008-09-18 Holger Hans Peter Freyther <zecke@selfish.org>
889
zecke@webkit.org20690ef2008-09-18 23:28:34 +0000890 Reviewed by Mark Rowe.
891
892 https://bugs.webkit.org/show_bug.cgi?id=20437
893
894 XMLTokenizer.cpp used to contain two different implementations. One was using
895 libxml2 and the other was using the Qt XML StreamReader. Clean up the code by
896 separating the two implementations from each other.
897 Common code and some small bits are kept inside the XMLTokenizer.cpp, the Qt code
898 was moved to XMLTokenizerQt.cpp and the Libxml2 based code was moved to
899 XMLTokenizerLibxml2.cpp. There should be no functional changes.
900
901 Attempt to add XMLTokenizerLibxml2.cpp to every buildsystem so the build continues
902 to work.
903
904 * GNUmakefile.am:
905 * WebCore.pro:
906 * WebCore.vcproj/WebCore.vcproj:
907 * WebCore.xcodeproj/project.pbxproj:
908 * WebCoreSources.bkl:
909 * dom/XMLTokenizer.cpp:
910 (WebCore::isScriptElement):
911 (WebCore::castToScriptElement):
912 (WebCore::XMLTokenizer::setCurrentNode):
913 (WebCore::XMLTokenizer::write):
914 (WebCore::XMLTokenizer::eventuallyMarkAsParserCreated):
915 (WebCore::XMLTokenizer::enterText):
916 (WebCore::toString):
917 (WebCore::XMLTokenizer::exitText):
918 (WebCore::XMLTokenizer::end):
919 (WebCore::XMLTokenizer::insertErrorMessageBlock):
920 * dom/XMLTokenizer.h:
921 (WebCore::XMLTokenizer::wellFormed):
922 * dom/XMLTokenizerLibxml2.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
923 (WebCore::createMemoryParser):
924 (WebCore::XMLTokenizer::XMLTokenizer):
925 (WebCore::XMLTokenizer::~XMLTokenizer):
926 (WebCore::XMLTokenizer::doWrite):
927 (WebCore::ignorableWhitespaceHandler):
928 (WebCore::XMLTokenizer::initializeParserContext):
929 (WebCore::XMLTokenizer::doEnd):
930 (WebCore::XMLTokenizer::lineNumber):
931 (WebCore::XMLTokenizer::columnNumber):
932 (WebCore::XMLTokenizer::stopParsing):
933 (WebCore::XMLTokenizer::resumeParsing):
934 (WebCore::parseXMLDocumentFragment):
935 (WebCore::attributesStartElementNsHandler):
936 (WebCore::parseAttributes):
937 * dom/XMLTokenizerQt.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
938 (WebCore::EntityResolver::resolveUndeclaredEntity):
939 (WebCore::XMLTokenizer::XMLTokenizer):
940 (WebCore::XMLTokenizer::~XMLTokenizer):
941 (WebCore::XMLTokenizer::doWrite):
942 (WebCore::XMLTokenizer::initializeParserContext):
943 (WebCore::XMLTokenizer::doEnd):
944 (WebCore::XMLTokenizer::lineNumber):
945 (WebCore::XMLTokenizer::columnNumber):
946 (WebCore::XMLTokenizer::stopParsing):
947 (WebCore::XMLTokenizer::resumeParsing):
948 (WebCore::parseXMLDocumentFragment):
949 (WebCore::attributesStartElementNsHandler):
950 (WebCore::parseAttributes):
951 (WebCore::):
952
bdakin@apple.com4c244902008-09-18 23:08:35 +00009532008-09-18 Beth Dakin <bdakin@apple.com>
954
955 Reviewed by Geoff Garen.
956
957 Build fix for non-Mac builds.
958
959 * css/CSSPrimitiveValue.cpp:
960 (WebCore::CSSPrimitiveValue::cssText):
961
eric@webkit.org4ac94e62008-09-18 23:07:55 +00009622008-09-18 Peter Kasting <pkasting@google.com>
963
964 Reviewed by hyatt. Landed by eseidel.
965
966 https://bugs.webkit.org/show_bug.cgi?id=20745
967 Animated GIFs do not animate properly with (at least) CG.
968
969 * WebCore\platform\graphics\BitmapImage.cpp:
970 * WebCore\platform\graphics\BitmapImage.h:
971 * WebCore\platform\graphics\cairo\ImageCairo.cpp:
972 * WebCore\platform\graphics\cg\ImageCG.cpp:
973 * WebCore\platform\graphics\qt\ImageQt.cpp:
974 * WebCore\platform\graphics\wx\ImageWx.cpp:
975
cfleizach@apple.com2a72d8f2008-09-18 22:54:37 +00009762008-09-18 Chris Fleizach <cfleizach@apple.com>
977
978 Reviewed by Beth Dakin
979
980 <rdar://problem/6224222> AX: should not expose a <table> as an AXTable if ARIA
981 role specifies otherwise
982
983 If a <table> isn't an AXTable, the rows and cells should default to AccessibilityRenderObject
984
985 Test: accessibility/table-with-aria-role.html
986
987 * page/AccessibilityTable.cpp:
988 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
989 (WebCore::AccessibilityTable::addChildren):
990 (WebCore::AccessibilityTable::roleValue):
991 (WebCore::AccessibilityTable::accessibilityIsIgnored):
992 (WebCore::AccessibilityTable::title):
993 * page/AccessibilityTableCell.cpp:
994 (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
995 (WebCore::AccessibilityTableCell::isTableCell):
996 (WebCore::AccessibilityTableCell::roleValue):
997 * page/AccessibilityTableCell.h:
998 * page/AccessibilityTableRow.cpp:
999 (WebCore::AccessibilityTableRow::roleValue):
1000 (WebCore::AccessibilityTableRow::isTableRow):
1001 (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
1002 * page/AccessibilityTableRow.h:
1003
sfalken@apple.coma96c5d32008-09-18 22:29:34 +000010042008-09-18 Steve Falkenburg <sfalken@apple.com>
1005
1006 Use higher-resolution timers on all variants of Windows.
1007
1008 Reviewed by Darin Adler.
1009
1010 * platform/win/SharedTimerWin.cpp:
1011 (WebCore::setSharedTimerFireTime):
1012
1013
hyatt@apple.comb7d49b62008-09-18 22:21:25 +000010142008-09-18 David Hyatt <hyatt@apple.com>
1015
1016 Make containingWindow() and setContainingWindow() cross-platform.
1017 Add a root() function cross-platform so Qt doesn't have to
1018 define its own.
1019
1020 Reviewed by Darin Adler
1021
1022 * platform/Widget.cpp:
1023 (WebCore::Widget::root):
1024 * platform/Widget.h:
1025 (WebCore::Widget::setContainingWindow):
1026 * platform/gtk/WidgetGtk.cpp:
1027 (WebCore::Widget::Widget):
1028 (WebCore::Widget::containingWindow):
1029 * platform/mac/ScrollViewMac.mm:
1030 (WebCore::ScrollView::addChild):
1031 (WebCore::ScrollView::removeChild):
1032 * platform/mac/WidgetMac.mm:
1033 (WebCore::Widget::containingWindow):
1034 * platform/qt/WidgetQt.cpp:
1035 (WebCore::Widget::invalidateRect):
1036 (WebCore::Widget::containingWindow):
1037 * platform/win/WidgetWin.cpp:
1038 (WebCore::Widget::Widget):
1039 (WebCore::Widget::~Widget):
1040 (WebCore::Widget::containingWindow):
1041
bdakin@apple.comfa1ce162008-09-18 22:18:01 +000010422008-09-18 Beth Dakin <bdakin@apple.com>
1043
1044 Reviewed by Dave Hyatt.
1045
1046 Fix for https://bugs.webkit.org/show_bug.cgi?id=20515 Crash upon
1047 parsing CSS: unicode-range: searchfield-cancel-buttonpt=-webkit-
1048 dashboard-region=
1049 and corresponding: <rdar://problem/6174100>
1050
1051 This patch makes CSSParserValue::createCSSValue handle unknown
1052 identifiers.
1053
1054 * css/CSSParserValues.cpp:
1055 (WebCore::CSSParserValue::createCSSValue): If we have an identifier
1056 with no id (an unknown identifier) create a CSSPrimitiveValue of
1057 type CSS_PARSER_IDENTIFIER
1058 * css/CSSPrimitiveValue.cpp:
1059 (WebCore::CSSPrimitiveValue::cssText):
1060 (WebCore::CSSPrimitiveValue::parserValue):
1061 * css/CSSPrimitiveValue.h:
1062 (WebCore::CSSPrimitiveValue::):
1063
weinig@apple.comfce49be2008-09-18 21:46:14 +000010642008-09-18 Sam Weinig <sam@webkit.org>
1065
1066 Rubber-stamped by David "I'd prefer not" Hyatt.
1067
1068 More the remaining class out of RenderStyle.h/cpp
1069
1070 * GNUmakefile.am:
1071 * WebCore.pro:
1072 * WebCore.vcproj/WebCore.vcproj:
1073 * WebCore.xcodeproj/project.pbxproj:
1074 * WebCoreSources.bkl:
1075 * rendering/style/CursorData.h: Copied from rendering/style/RenderStyle.h.
1076 (WebCore::CursorData::CursorData):
1077 (WebCore::CursorData::operator==):
1078 (WebCore::CursorData::operator!=):
1079 * rendering/style/CursorList.h: Copied from rendering/style/RenderStyle.h.
1080 (WebCore::CursorList::operator[]):
1081 (WebCore::CursorList::CursorList):
1082 * rendering/style/RenderStyle.cpp:
1083 * rendering/style/RenderStyle.h:
1084 (WebCore::RenderStyle::deref):
1085 (WebCore::RenderStyle::hasOneRef):
1086 (WebCore::RenderStyle::InheritedFlags::operator!=):
1087 (WebCore::RenderStyle::NonInheritedFlags::operator!=):
1088 (WebCore::RenderStyle::hasBackground):
1089 (WebCore::RenderStyle::outlineWidth):
1090 (WebCore::RenderStyle::autoWrap):
1091 (WebCore::RenderStyle::preserveNewline):
1092 (WebCore::RenderStyle::collapseWhiteSpace):
1093 (WebCore::RenderStyle::isCollapsibleWhiteSpace):
1094 (WebCore::RenderStyle::breakOnlyAfterWhiteSpace):
1095 (WebCore::RenderStyle::breakWords):
1096 (WebCore::RenderStyle::outlineOffset):
1097 (WebCore::RenderStyle::setLeft):
1098 (WebCore::RenderStyle::setRight):
1099 (WebCore::RenderStyle::setTop):
1100 (WebCore::RenderStyle::setBottom):
1101 (WebCore::RenderStyle::setDashboardRegion):
1102 (WebCore::RenderStyle::setBackgroundColor):
1103 (WebCore::RenderStyle::setBorderImage):
1104 (WebCore::RenderStyle::setBorderRadius):
1105 (WebCore::RenderStyle::setFontDescription):
1106 (WebCore::RenderStyle::adjustBackgroundLayers):
1107 (WebCore::RenderStyle::adjustMaskLayers):
1108 (WebCore::RenderStyle::deleteBindingURIs):
1109 (WebCore::RenderStyle::inheritBindingURIs):
1110 (WebCore::RenderStyle::isDisplayReplacedType):
1111 (WebCore::RenderStyle::isDisplayInlineType):
1112 (WebCore::RenderStyle::isOriginalDisplayInlineType):
1113 * rendering/style/StyleInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
1114 * rendering/style/StyleInheritedData.h: Copied from rendering/style/RenderStyle.h.
1115 (WebCore::StyleInheritedData::operator!=):
1116 * rendering/style/StyleRareInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
1117 * rendering/style/StyleRareInheritedData.h: Copied from rendering/style/RenderStyle.h.
1118 (WebCore::StyleRareInheritedData::operator!=):
1119 * rendering/style/StyleRareNonInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
1120 * rendering/style/StyleRareNonInheritedData.h: Copied from rendering/style/RenderStyle.h.
1121 * rendering/style/StyleReflection.h: Copied from rendering/style/RenderStyle.h.
1122
hyatt@apple.com643534d2008-09-18 20:09:41 +000011232008-09-18 David Hyatt <hyatt@apple.com>
1124
hyatt@apple.comd23089a2008-09-18 20:24:16 +00001125 Move the concept of suppression invalidation on Widgets to Scrollbar
1126 instead. Since this is only used by Scrollbars, there is no need for
1127 it to be on Widget.
1128
1129 Reviewed by Sam Weinig
1130
1131 * platform/Scrollbar.cpp:
1132 (WebCore::Scrollbar::Scrollbar):
1133 (WebCore::Scrollbar::invalidateRect):
1134 * platform/Scrollbar.h:
1135 (WebCore::Scrollbar::suppressInvalidation):
1136 (WebCore::Scrollbar::setSuppressInvalidation):
1137 * platform/Widget.h:
1138 * platform/gtk/WidgetGtk.cpp:
1139 (WebCore::Widget::Widget):
1140 (WebCore::Widget::invalidateRect):
1141 * platform/qt/WidgetQt.cpp:
1142 (WebCore::WidgetPrivate::WidgetPrivate):
1143 (WebCore::Widget::invalidateRect):
1144 * platform/win/WidgetWin.cpp:
1145 (WebCore::Widget::Widget):
1146 (WebCore::Widget::invalidateRect):
1147
11482008-09-18 David Hyatt <hyatt@apple.com>
1149
hyatt@apple.com643534d2008-09-18 20:09:41 +00001150 Make invalidate() on Widget non-virtual and make it just call
1151 invalidateRect() on the boundsGeometry() of the Widget.
1152
1153 Reviewed by Dan Bernstein
1154
1155 * platform/Widget.h:
1156 (WebCore::Widget::boundsGeometry):
1157 (WebCore::Widget::invalidate):
1158 * platform/gtk/WidgetGtk.cpp:
1159 * platform/mac/WidgetMac.mm:
1160 * platform/qt/WidgetQt.cpp:
1161 * platform/win/WidgetWin.cpp:
1162 * platform/wx/WidgetWx.cpp:
1163
weinig@apple.comcaf2df42008-09-18 19:40:24 +000011642008-09-18 Sam Weinig <sam@webkit.org>
1165
1166 Rubber-stamped in exile by David Hyatt.
1167
1168 Split Animation, AnimationList, BindingURI, ContentData, CounterContent,
1169 KeyframeList, ShadowData, StyleFlexibleBoxData and TimingFunction out of
1170 RenderStyle.h/cpp
1171
1172 * GNUmakefile.am:
1173 * WebCore.pro:
1174 * WebCore.vcproj/WebCore.vcproj:
1175 * WebCore.xcodeproj/project.pbxproj:
1176 * WebCoreSources.bkl:
1177 * css/CSSStyleSelector.cpp:
1178 * css/CSSStyleSelector.h:
1179 * page/animation/CompositeAnimation.cpp:
1180 * page/animation/KeyframeAnimation.cpp:
1181 * page/animation/KeyframeAnimation.h:
1182 * rendering/RenderCounter.h:
1183 * rendering/style/Animation.cpp: Copied from rendering/style/RenderStyle.cpp.
1184 (WebCore::Animation::~Animation):
1185 (WebCore::Animation::animationsMatch):
1186 (WebCore::Animation::keyframeList):
1187 (WebCore::Animation::setAnimationKeyframe):
1188 * rendering/style/Animation.h: Copied from rendering/style/RenderStyle.h.
1189 * rendering/style/AnimationList.cpp: Copied from rendering/style/RenderStyle.cpp.
1190 * rendering/style/AnimationList.h: Copied from rendering/style/RenderStyle.h.
1191 * rendering/style/BindingURI.cpp: Copied from rendering/style/RenderStyle.cpp.
1192 * rendering/style/BindingURI.h: Copied from rendering/style/RenderStyle.h.
1193 (WebCore::BindingURI::operator!=):
1194 * rendering/style/ContentData.cpp: Copied from rendering/style/RenderStyle.cpp.
1195 * rendering/style/ContentData.h: Copied from rendering/style/RenderStyle.h.
1196 (WebCore::ContentData::ContentData):
1197 (WebCore::ContentData::~ContentData):
1198 * rendering/style/CounterContent.h: Copied from rendering/style/RenderStyle.h.
1199 (WebCore::CounterContent::CounterContent):
1200 * rendering/style/CounterDirectives.cpp: Copied from rendering/style/RenderStyle.cpp.
1201 * rendering/style/CounterDirectives.h: Copied from rendering/style/RenderStyle.h.
1202 (WebCore::CounterDirectives::CounterDirectives):
1203 * rendering/style/KeyframeList.cpp: Copied from rendering/style/RenderStyle.cpp.
1204 (WebCore::KeyframeList::insert):
1205 * rendering/style/KeyframeList.h: Copied from rendering/style/RenderStyle.h.
1206 (WebCore::KeyframeValue::KeyframeValue):
1207 (WebCore::KeyframeList::create):
1208 (WebCore::KeyframeList::KeyframeList):
1209 * rendering/style/RenderStyle.cpp:
1210 * rendering/style/RenderStyle.h:
1211 * rendering/style/ShadowData.cpp: Copied from rendering/style/RenderStyle.cpp.
1212 * rendering/style/ShadowData.h: Copied from rendering/style/RenderStyle.h.
1213 (WebCore::ShadowData::ShadowData):
1214 (WebCore::ShadowData::~ShadowData):
1215 (WebCore::ShadowData::operator!=):
1216 * rendering/style/StyleFlexibleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
1217 * rendering/style/StyleFlexibleBoxData.h: Copied from rendering/style/RenderStyle.h.
1218 (WebCore::StyleFlexibleBoxData::operator!=):
1219 * rendering/style/TimingFunction.h: Copied from rendering/style/RenderStyle.h.
1220 (WebCore::TimingFunction::TimingFunction):
1221 (WebCore::TimingFunction::operator==):
1222
adele@apple.com5b2b5da2008-09-18 18:49:44 +000012232008-09-18 Adele Peterson <adele@apple.com>
1224
1225 Reviewed by Dan Bernstein.
1226
1227 Fix RenderStyle leaks.
1228
1229 * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::createSubtreeIfNeeded):
1230
kmccullough@apple.comd4089752008-09-18 17:21:49 +000012312008-09-18 Kevin McCullough <kmccullough@apple.com>
1232
kmccullough@apple.com76c708f2008-09-18 18:03:23 +00001233 Accidentally checked in code.
1234
1235 * html/HTMLElementFactory.cpp:
1236 (WebCore::frameConstructor):
1237 (WebCore::iframeConstructor):
1238
12392008-09-18 Kevin McCullough <kmccullough@apple.com>
1240
kmccullough@apple.comd4089752008-09-18 17:21:49 +00001241 Reviewed by Tim.
1242
1243 <rdar://problem/5722310> gracefully handle too many console messages
1244 (20904)
1245 - Keep track of the most previous message and then compare it to the
1246 subsequent messages as they come in. If there are multiple of the same
1247 message create a count that indicates the current number.
1248
1249 * manual-tests/inspector/multiple-console-messages.html: Added.
1250 * page/inspector/Console.js:
1251 * page/inspector/inspector.css:
1252
alp@webkit.org18a1fbc2008-09-18 11:50:26 +000012532008-09-18 Jonathon Jongsma <jonathon@quotidian.org>
1254
1255 Reviewed by Alp Toker
1256
1257 https://bugs.webkit.org/show_bug.cgi?id=20830
1258 [GTK] Don't use deprecated pango API
1259
1260 Replace deprecated pango functions with non-deprecated ones for newer
1261 versions of pango
1262
1263 * platform/graphics/gtk/FontGtk.cpp:
1264 (WebCore::getDefaultPangoLayout):
1265 * platform/graphics/gtk/FontPlatformDataPango.cpp:
1266 (WebCore::FontPlatformData::FontPlatformData):
1267
alp@webkit.org2154ef22008-09-18 08:10:49 +000012682008-09-18 Alp Toker <alp@nuanti.com>
1269
1270 Build fix for r36587. Add new sources (and sort the lists).
1271
1272 * GNUmakefile.am:
1273
weinig@apple.com3a98b2a2008-09-18 05:51:35 +000012742008-09-17 Sam Weinig <sam@webkit.org>
1275
1276 Fix Windows build.
1277
1278 * WebCore.vcproj/WebCore.vcproj:
1279
hyatt@apple.comb3699722008-09-18 05:10:03 +000012802008-09-17 David Hyatt <hyatt@apple.com>
1281
1282 Switch back to having frameGeometry be virtual in order to keep Mac
1283 the way it used to be.
1284
1285 Reviewed by Sam Weinig
1286
1287 * WebCore.base.exp:
1288 * platform/Widget.cpp:
1289 (WebCore::Widget::setParent):
1290 * platform/Widget.h:
1291 * platform/gtk/WidgetGtk.cpp:
1292 (WebCore::Widget::frameGeometry):
1293 (WebCore::Widget::setFrameGeometry):
1294 * platform/mac/WidgetMac.mm:
1295 (WebCore::Widget::frameGeometry):
1296 (WebCore::Widget::setFrameGeometry):
1297 * platform/qt/WidgetQt.cpp:
1298 (WebCore::Widget::frameGeometry):
1299 (WebCore::Widget::setFrameGeometry):
1300 * platform/win/WidgetWin.cpp:
1301 (WebCore::Widget::frameGeometry):
1302 (WebCore::Widget::setFrameGeometry):
1303 * platform/wx/WidgetWx.cpp:
1304 (WebCore::Widget::frameGeometry):
1305 (WebCore::Widget::setFrameGeometry):
1306 * plugins/PluginView.cpp:
1307 (WebCore::PluginView::setFrameGeometry):
1308 (WebCore::PluginView::geometryChanged):
1309 * plugins/PluginView.h:
1310 * plugins/gtk/PluginViewGtk.cpp:
1311 (WebCore::PluginView::updatePluginWidget):
1312 * plugins/qt/PluginViewQt.cpp:
1313 (WebCore::PluginView::updatePluginWidget):
1314 * plugins/win/PluginViewWin.cpp:
1315 (WebCore::PluginView::updatePluginWidget):
1316
weinig@apple.com00f4d5c2008-09-18 03:23:08 +000013172008-09-17 Sam Weinig <sam@webkit.org>
1318
weinig@apple.com4fd54cd2008-09-18 05:03:21 +00001319 Reviewed by Mark Rowe.
1320
1321 Fix assertion in DOMWindow::adjustWindowRect where we were passing
1322 in garbage values and were getting lucky that they were a not Nan.
1323
1324 * bindings/js/JSDOMWindowBase.cpp:
1325 (WebCore::windowProtoFuncOpen):
1326
13272008-09-17 Sam Weinig <sam@webkit.org>
1328
weinig@apple.com95b14762008-09-18 04:28:40 +00001329 Fix gtk build.
1330
1331 * rendering/style/MatrixTransformOperation.cpp:
1332
13332008-09-17 Sam Weinig <sam@webkit.org>
1334
weinig@apple.com00f4d5c2008-09-18 03:23:08 +00001335 Rubber-stamped with love by David Hyatt.
1336
1337 Split IdentityTransformOperation, MatrixTransformOperation, RotateTransformOperation,
1338 ScaleTransformOperation, SkewTransformOperation, StyleTransformData, TransformOperation,
1339 TransformOperations and TranslateTransformOperation out of RenderStyle.h/cpp
1340
1341 * GNUmakefile.am:
1342 * WebCore.pro:
1343 * WebCore.vcproj/WebCore.vcproj:
1344 * WebCore.xcodeproj/project.pbxproj:
1345 * WebCoreSources.bkl:
1346 * css/CSSStyleSelector.cpp:
1347 * page/animation/AnimationBase.cpp:
1348 (WebCore::solveEpsilon):
1349 * rendering/RenderLayer.cpp:
1350 * rendering/style/IdentityTransformOperation.h: Copied from rendering/style/RenderStyle.h.
1351 * rendering/style/MatrixTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
1352 * rendering/style/MatrixTransformOperation.h: Copied from rendering/style/RenderStyle.h.
1353 (WebCore::MatrixTransformOperation::MatrixTransformOperation):
1354 * rendering/style/RenderStyle.cpp:
1355 * rendering/style/RenderStyle.h:
1356 * rendering/style/RotateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
1357 * rendering/style/RotateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
1358 (WebCore::RotateTransformOperation::RotateTransformOperation):
1359 * rendering/style/ScaleTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
1360 * rendering/style/ScaleTransformOperation.h: Copied from rendering/style/RenderStyle.h.
1361 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
1362 * rendering/style/SkewTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
1363 * rendering/style/SkewTransformOperation.h: Copied from rendering/style/RenderStyle.h.
1364 (WebCore::SkewTransformOperation::SkewTransformOperation):
1365 * rendering/style/StyleTransformData.cpp: Copied from rendering/style/RenderStyle.cpp.
1366 * rendering/style/StyleTransformData.h: Copied from rendering/style/RenderStyle.h.
1367 (WebCore::StyleTransformData::operator!=):
1368 * rendering/style/TransformOperation.h: Copied from rendering/style/RenderStyle.h.
1369 (WebCore::TransformOperation::):
1370 * rendering/style/TransformOperations.cpp: Copied from rendering/style/RenderStyle.cpp.
1371 (WebCore::TransformOperations::TransformOperations):
1372 * rendering/style/TransformOperations.h: Copied from rendering/style/RenderStyle.h.
1373 (WebCore::TransformOperations::operator!=):
1374 * rendering/style/TranslateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
1375 * rendering/style/TranslateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
1376 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
1377
mrowe@apple.comdbfa8852008-09-18 02:59:20 +000013782008-09-17 Mark Rowe <mrowe@apple.com>
1379
1380 Build fix.
1381
1382 * rendering/style/StyleDashboardRegion.h: PlatformString.h rather than String.h.
1383
hyatt@apple.com76057b42008-09-18 02:48:46 +000013842008-09-17 David Hyatt <hyatt@apple.com>
1385
1386 (1) Inline a bunch of methods for accessing frame geometry.
1387 (2) Make sure frameGeometry() works even when you have no underlying
1388 native widget.
1389 (3) Cache a frame geometry rect cross-platform (even for widgets that
1390 have underlying native widgets.
1391 (4) PluginView's updateWindow call is now a virtual function on Widget.
1392
1393 Reviewed by Sam Weinig
1394
1395 * ChangeLog:
1396 * WebCore.base.exp:
1397 * platform/Widget.cpp:
1398 (WebCore::Widget::setFrameGeometry):
1399 * platform/Widget.h:
1400 (WebCore::Widget::x):
1401 (WebCore::Widget::y):
1402 (WebCore::Widget::width):
1403 (WebCore::Widget::height):
1404 (WebCore::Widget::size):
1405 (WebCore::Widget::pos):
1406 (WebCore::Widget::frameGeometry):
1407 (WebCore::Widget::resize):
1408 (WebCore::Widget::move):
1409 (WebCore::Widget::isFrameView):
1410 (WebCore::Widget::windowClipRect):
1411 * platform/mac/WidgetMac.mm:
1412 (WebCore::Widget::~Widget):
1413 (WebCore::Widget::updatePlatformWidgetFrameGeometry):
1414 * platform/win/WidgetWin.cpp:
1415 (WebCore::Widget::updatePlatformWidgetFrameGeometry):
1416 * plugins/PluginView.cpp:
1417 (WebCore::PluginView::setFrameGeometry):
1418 (WebCore::PluginView::geometryChanged):
1419 * plugins/PluginView.h:
1420 * plugins/gtk/PluginViewGtk.cpp:
1421 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
1422 * plugins/qt/PluginViewQt.cpp:
1423 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
1424 * plugins/win/PluginViewWin.cpp:
1425 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
1426 * plugins/wx/PluginViewWx.cpp:
1427
weinig@apple.coma812a3ce2008-09-18 01:46:26 +000014282008-09-17 Sam Weinig <sam@webkit.org>
1429
weinig@apple.comb4b66742008-09-18 02:47:55 +00001430 Reviewed by David "Waterman" Hyatt.
1431
1432 Fix a leak of NSViews in WidgetMac.mm.
1433
1434 * platform/mac/WidgetMac.mm:
1435 (WebCore::Widget::~Widget):
1436
14372008-09-17 Sam Weinig <sam@webkit.org>
1438
weinig@apple.coma812a3ce2008-09-18 01:46:26 +00001439 Rubber-stamped by David Waterman Hyatt.
1440
1441 Split FillLayer, StyleBackgroundData, StyleBoxData, StyleDashboardRegion, StyleMarqueeData
1442 StyleMultiColData and StyleVisualData out of RenderStyle.h/cpp
1443
1444 * GNUmakefile.am:
1445 * WebCore.pro:
1446 * WebCore.vcproj/WebCore.vcproj:
1447 * WebCore.xcodeproj/project.pbxproj:
1448 * WebCoreSources.bkl:
1449 * rendering/style/FillLayer.cpp: Copied from rendering/style/RenderStyle.cpp.
1450 * rendering/style/FillLayer.h: Copied from rendering/style/RenderStyle.h.
1451 (WebCore::FillLayer::operator!=):
1452 (WebCore::FillLayer::hasImage):
1453 (WebCore::FillLayer::hasFixedImage):
1454 * rendering/style/RenderStyle.cpp:
1455 * rendering/style/RenderStyle.h:
1456 * rendering/style/StyleBackgroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
1457 (WebCore::StyleBackgroundData::StyleBackgroundData):
1458 * rendering/style/StyleBackgroundData.h: Copied from rendering/style/RenderStyle.h.
1459 (WebCore::StyleBackgroundData::~StyleBackgroundData):
1460 (WebCore::StyleBackgroundData::operator!=):
1461 * rendering/style/StyleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
1462 * rendering/style/StyleBoxData.h: Copied from rendering/style/RenderStyle.h.
1463 (WebCore::StyleBoxData::operator!=):
1464 * rendering/style/StyleDashboardRegion.h: Copied from rendering/style/RenderStyle.h.
1465 (WebCore::StyleDashboardRegion::operator!=):
1466 * rendering/style/StyleMarqueeData.cpp: Copied from rendering/style/RenderStyle.cpp.
1467 * rendering/style/StyleMarqueeData.h: Copied from rendering/style/RenderStyle.h.
1468 (WebCore::StyleMarqueeData::operator!=):
1469 * rendering/style/StyleMultiColData.cpp: Copied from rendering/style/RenderStyle.cpp.
1470 * rendering/style/StyleMultiColData.h: Copied from rendering/style/RenderStyle.h.
1471 (WebCore::StyleMultiColData::operator!=):
1472 (WebCore::StyleMultiColData::ruleWidth):
1473 * rendering/style/StyleVisualData.cpp: Copied from rendering/style/RenderStyle.cpp.
1474 * rendering/style/StyleVisualData.h: Copied from rendering/style/RenderStyle.h.
1475 (WebCore::StyleVisualData::operator==):
1476
hyatt@apple.comb4f28b32008-09-18 00:39:36 +000014772008-09-17 David Hyatt <hyatt@apple.com>
1478
hyatt@apple.com3f19eac2008-09-18 00:56:04 +00001479 Remove WidgetClient from Widget.
1480
1481 Reviewed by Sam Weinig
1482
1483 * WebCore.xcodeproj/project.pbxproj:
1484 * platform/Widget.h:
1485 (WebCore::Widget::setClient):
1486 (WebCore::Widget::client):
1487 * platform/WidgetClient.h: Removed.
1488 * platform/gtk/WidgetGtk.cpp:
1489 * platform/mac/WidgetMac.mm:
1490 (WebCore::Widget::Widget):
1491 (WebCore::Widget::show):
1492 (WebCore::Widget::hide):
1493 * platform/qt/WidgetQt.cpp:
1494 (WebCore::WidgetPrivate::WidgetPrivate):
1495 * platform/win/WidgetWin.cpp:
1496 (WebCore::Widget::Widget):
1497 * platform/wx/WidgetWx.cpp:
1498 (WebCore::Widget::Widget):
1499
15002008-09-17 David Hyatt <hyatt@apple.com>
1501
hyatt@apple.comb4f28b32008-09-18 00:39:36 +00001502 Remove isEnabled/setEnabled from Widget. The concept of being enabled now
1503 only applies to Scrollbars so the method has been moved there and made
1504 cross-platform. Scrollbar subclasses that have a corresponding native
1505 widget can subclass setEnabled to change the enabled state of the native
1506 widget.
1507
1508 Reviewed by Sam Weinig & Darin Adler
1509
1510 * WebCore.base.exp:
1511 * platform/Scrollbar.cpp:
1512 (WebCore::Scrollbar::Scrollbar):
1513 * platform/Scrollbar.h:
1514 (WebCore::Scrollbar::enabled):
1515 (WebCore::Scrollbar::setEnabled):
1516 * platform/Widget.h:
1517 * platform/gtk/ScrollbarGtk.cpp:
1518 (ScrollbarGtk::setEnabled):
1519 * platform/gtk/ScrollbarGtk.h:
1520 * platform/gtk/WidgetGtk.cpp:
1521 * platform/mac/ScrollbarMac.h:
1522 * platform/mac/ScrollbarMac.mm:
1523 (WebCore::ScrollbarMac::scrollbarHit):
1524 (WebCore::ScrollbarMac::setEnabled):
1525 * platform/mac/WidgetMac.mm:
1526 * platform/qt/WidgetQt.cpp:
1527 (WebCore::WidgetPrivate::WidgetPrivate):
1528 * platform/win/WidgetWin.cpp:
1529 (WebCore::Widget::Widget):
1530 * platform/wx/WidgetWx.cpp:
1531
weinig@apple.com1ea40602008-09-17 23:56:27 +000015322008-09-17 Sam Weinig <sam@webkit.org>
1533
1534 Rubber-stamped by David Hyatt.
1535
1536 Split all RenderStyle enums into their own file.
1537
1538 * GNUmakefile.am:
1539 * WebCore.vcproj/WebCore.vcproj:
1540 * WebCore.xcodeproj/project.pbxproj:
1541 * rendering/style/BorderValue.h:
1542 * rendering/style/CollapsedBorderValue.h:
1543 * rendering/style/RenderStyle.h:
1544 * rendering/style/RenderStyleConstants.h: Copied from rendering/style/RenderStyle.h.
1545 (WebCore::):
1546 * rendering/style/StyleCachedImage.h:
1547 * rendering/style/StyleGeneratedImage.h:
1548 * rendering/style/StyleImage.h:
1549
sfalken@apple.combf270912008-09-17 23:53:17 +000015502008-09-17 Steve Falkenburg <sfalken@apple.com>
1551
1552 Add back isFrameView check to fix failed assertion during scroll bar teardown.
1553
1554 Reviewed by Dave Hyatt.
1555
1556 * platform/Scrollbar.cpp:
1557 (WebCore::Scrollbar::setParent):
1558
beidson@apple.com4398e482008-09-17 23:30:00 +000015592008-09-17 Brady Eidson <beidson@apple.com>
1560
1561 Reviewed by Mac build fix
1562
1563 * WebCore.xcodeproj/project.pbxproj: Send appropriate headers to WebKit
1564
sfalken@apple.com85cc1392008-09-17 23:28:13 +000015652008-09-17 Steve Falkenburg <sfalken@apple.com>
1566
1567 Fix build.
1568
1569 * platform/win/ScrollViewWin.cpp:
1570 (WebCore::ScrollView::setParentVisible):
1571 * plugins/win/PluginViewWin.cpp:
1572 (WebCore::PluginView::init):
1573
zecke@webkit.org2ba9a4e2008-09-17 23:25:10 +000015742008-09-17 Holger Hans Peter Freyther <zecke@selfish.org>
1575
1576 Reviewed by Simon.
1577
1578 [QtWebKit] Implement error handling in TextCodecQt::decode
1579 Use the QTextCodec parsing state to set the sawError out variable. This
1580 is needed to pass Test 70 of acid3. The test case for this bug is
1581 fast/encoding/invalid-xml.html that is now partially passed. To pass
1582 it completely the Qt text codecs need to be adjusted to have proper
1583 error handling.
1584
1585 * platform/text/qt/TextCodecQt.cpp:
1586 (WebCore::TextCodecQt::decode):
1587
weinig@apple.comf6f0f112008-09-17 23:03:16 +000015882008-09-17 Sam Weinig <sam@webkit.org>
1589
1590 Rubber-stamped by Dave Hyatt.
1591
1592 Split BorderData, BorderValue, CollapsedBorderValue, OutlineValue and StyleSurroundData
1593 out of RenderStyle.h/cpp
1594
1595 * GNUmakefile.am:
1596 * WebCore.pro:
1597 * WebCore.vcproj/WebCore.vcproj:
1598 * WebCore.xcodeproj/project.pbxproj:
1599 * WebCoreSources.bkl:
1600 * rendering/style/BorderData.h: Copied from rendering/style/RenderStyle.h.
1601 (WebCore::BorderData::hasBorderRadius):
1602 (WebCore::BorderData::borderLeftWidth):
1603 (WebCore::BorderData::borderRightWidth):
1604 (WebCore::BorderData::borderTopWidth):
1605 (WebCore::BorderData::borderBottomWidth):
1606 (WebCore::BorderData::operator!=):
1607 * rendering/style/BorderValue.h: Copied from rendering/style/RenderStyle.h.
1608 (WebCore::):
1609 (WebCore::BorderValue::BorderValue):
1610 (WebCore::BorderValue::nonZero):
1611 (WebCore::BorderValue::isTransparent):
1612 (WebCore::BorderValue::isVisible):
1613 * rendering/style/CollapsedBorderValue.h: Copied from rendering/style/RenderStyle.h.
1614 (WebCore::):
1615 (WebCore::CollapsedBorderValue::CollapsedBorderValue):
1616 (WebCore::CollapsedBorderValue::operator==):
1617 * rendering/style/OutlineValue.h: Copied from rendering/style/RenderStyle.h.
1618 (WebCore::OutlineValue::OutlineValue):
1619 * rendering/style/RenderStyle.cpp:
1620 * rendering/style/RenderStyle.h:
1621 * rendering/style/StyleSurroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
1622 * rendering/style/StyleSurroundData.h: Copied from rendering/style/RenderStyle.h.
1623 (WebCore::StyleSurroundData::operator!=):
1624
bdakin@apple.com06b97182008-09-17 23:00:29 +000016252008-09-17 Beth Dakin <bdakin@apple.com>
1626
1627 Reviewed by Darin Adler.
1628
1629 This is a better fix for: Invalid CSS code crashes Safari
1630 https://bugs.webkit.org/show_bug.cgi?id=20512
1631
1632 The spec indicates that the only valid input for a counter is a
1633 number or an identifier. So that is exactly what we allow.
1634
1635 * css/CSSParser.cpp:
1636 (WebCore::CSSParser::parseCounterContent):
1637
alp@webkit.org97ba9222008-09-17 22:16:26 +000016382008-09-17 Alp Toker <alp@nuanti.com>
1639
1640 GTK+ build fix. Adapt to use PlatformWidget functions.
1641
1642 * platform/gtk/ScrollViewGtk.cpp:
1643 (WebCore::ScrollViewScrollbar::geometryChanged):
1644 (WebCore::ScrollView::addChild):
1645 (WebCore::ScrollView::removeChild):
1646 * platform/gtk/ScrollbarGtk.cpp:
1647 (ScrollbarGtk::ScrollbarGtk):
1648 (ScrollbarGtk::~ScrollbarGtk):
1649 (ScrollbarGtk::geometryChanged):
1650
weinig@apple.com930ed392008-09-17 22:00:45 +000016512008-09-17 Sam Weinig <sam@webkit.org>
1652
1653 Reviewed by Adele Peterson.
1654
1655 Patch for <rdar://problem/6133884>
1656 Calling window.resizeTo() on a subframe shouldn't change the window size
1657
1658 Test: fast/dom/Window/window-resize-and-move-sub-frame.html
1659
1660 * page/DOMWindow.cpp:
1661 (WebCore::DOMWindow::moveBy):
1662 (WebCore::DOMWindow::moveTo):
1663 (WebCore::DOMWindow::resizeBy):
1664 (WebCore::DOMWindow::resizeTo):
1665
bdakin@apple.com8f952d82008-09-17 21:35:02 +000016662008-09-17 Beth Dakin <bdakin@apple.com>
1667
1668 Reviewed by Adam Roben.
1669
1670 Fix for https://bugs.webkit.org/show_bug.cgi?id=20512 Invalid CSS
1671 code crashes Safari
1672 and corresponding: <rdar://problem/6173832>
1673
1674 Reading through the spec, it seems like a function is not valid
1675 input for a counter. So this patch checks for that and bails in the
1676 case of invalid input.
1677
1678 * css/CSSParser.cpp:
1679 (WebCore::CSSParser::parseCounterContent):
1680
antti@apple.comb37d4052008-09-17 21:14:13 +000016812008-09-17 Greg Bolsinga <bolsinga@apple.com>
1682
1683 Reviewed by Antti Koivisto.
1684
1685 Fix <rdar://problem/6227089>
1686 Crash in WebCore::Frame::setNeedsReapplyStyles()
1687
1688 View is null checked elsewhere too.
1689
1690 * page/Frame.cpp:
1691 (WebCore::Frame::setNeedsReapplyStyles):
1692
hyatt@apple.com8e340252008-09-17 20:59:45 +000016932008-09-17 David Hyatt <hyatt@apple.com>
1694
1695 Make the notion of having a native widget backing a Widget cross-platform.
1696 The PlatformWidget abstraction (which already existed) is used for this.
1697 Windows = HWND
1698 Qt = QWidget
1699 Mac = NSView
1700 wx = wxWindow
1701 Gtk = GtkWidget
1702
1703 There are new cross-platform methods that replace all of the unique
1704 platform-specific methods.
1705 platformWidget()
1706 setPlatformWidget()
1707
1708 For plugins, on every platform except Qt on Windows, the plugin's native
1709 widget is now stored in the Widget base class. Since Qt on Windows uses
1710 HWNDs for plugins instead of QWidget, it is the only platform to keep the
1711 m_window variable in PluginView.
1712
1713 Reviewed by Sam Weinig
1714
1715 * WebCore.base.exp:
1716 * bindings/js/ScriptControllerMac.mm:
1717 (WebCore::ScriptController::createScriptInstanceForWidget):
1718 * page/mac/AccessibilityObjectWrapper.mm:
1719 (-[AccessibilityObjectWrapper attachmentView]):
1720 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1721 * page/mac/EventHandlerMac.mm:
1722 (WebCore::EventHandler::passMouseDownEventToWidget):
1723 (WebCore::EventHandler::mouseDownViewIfStillGood):
1724 (WebCore::EventHandler::passWheelEventToWidget):
1725 (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):
1726 * platform/Widget.cpp:
1727 (WebCore::Widget::init):
1728 (WebCore::Widget::setParent):
1729 (WebCore::Widget::releasePlatformWidget):
1730 (WebCore::Widget::retainPlatformWidget):
1731 * platform/Widget.h:
1732 (WebCore::Widget::platformWidget):
1733 (WebCore::Widget::setPlatformWidget):
1734 * platform/gtk/WidgetGtk.cpp:
1735 (WebCore::Widget::Widget):
1736 (WebCore::Widget::setFocus):
1737 (WebCore::gdkDrawable):
1738 (WebCore::Widget::setCursor):
1739 (WebCore::Widget::show):
1740 (WebCore::Widget::hide):
1741 (WebCore::Widget::setEnabled):
1742 (WebCore::Widget::isEnabled):
1743 (WebCore::Widget::paint):
1744 * platform/mac/PlatformScreenMac.mm:
1745 (WebCore::screenRect):
1746 (WebCore::screenAvailableRect):
1747 * platform/mac/ScrollViewMac.mm:
1748 (WebCore::ScrollView::scrollView):
1749 (WebCore::ScrollView::update):
1750 (WebCore::ScrollView::inWindow):
1751 * platform/mac/ScrollbarMac.mm:
1752 (WebCore::ScrollbarMac::ScrollbarMac):
1753 (WebCore::ScrollbarMac::~ScrollbarMac):
1754 (WebCore::ScrollbarMac::updateThumbPosition):
1755 (WebCore::ScrollbarMac::updateThumbProportion):
1756 (WebCore::ScrollbarMac::scrollbarHit):
1757 * platform/mac/WidgetMac.mm:
1758 (WebCore::Widget::Widget):
1759 (WebCore::Widget::setEnabled):
1760 (WebCore::Widget::isEnabled):
1761 (WebCore::Widget::setFocus):
1762 (WebCore::Widget::getOuterView):
1763 (WebCore::Widget::paint):
1764 (WebCore::Widget::invalidate):
1765 (WebCore::Widget::invalidateRect):
1766 (WebCore::Widget::setIsSelected):
1767 (WebCore::Widget::releasePlatformWidget):
1768 (WebCore::Widget::retainPlatformWidget):
1769 * platform/qt/WidgetQt.cpp:
1770 (WebCore::WidgetPrivate::WidgetPrivate):
1771 (WebCore::Widget::Widget):
1772 (WebCore::Widget::setFrameGeometry):
1773 (WebCore::Widget::show):
1774 (WebCore::Widget::hide):
1775 (WebCore::Widget::isEnabled):
1776 (WebCore::Widget::setEnabled):
1777 (WebCore::Widget::invalidateRect):
1778 (WebCore::Widget::containingWindow):
1779 * platform/win/WidgetWin.cpp:
1780 (WebCore::Widget::Widget):
1781 * platform/wx/WidgetWx.cpp:
1782 (WebCore::Widget::Widget):
1783 (WebCore::Widget::frameGeometry):
1784 (WebCore::Widget::setFocus):
1785 (WebCore::Widget::setCursor):
1786 (WebCore::Widget::show):
1787 (WebCore::Widget::hide):
1788 (WebCore::Widget::setFrameGeometry):
1789 (WebCore::Widget::setEnabled):
1790 (WebCore::Widget::isEnabled):
1791 (WebCore::Widget::invalidate):
1792 (WebCore::Widget::invalidateRect):
1793 (WebCore::Widget::paint):
1794 * plugins/PluginView.cpp:
1795 (WebCore::PluginView::PluginView):
1796 * plugins/PluginView.h:
1797 (WebCore::PluginView::platformPluginWidget):
1798 * plugins/gtk/PluginViewGtk.cpp:
1799 (WebCore::PluginView::updateWindow):
1800 (WebCore::PluginView::setFocus):
1801 (WebCore::PluginView::show):
1802 (WebCore::PluginView::hide):
1803 (WebCore::PluginView::setParent):
1804 (WebCore::PluginView::setNPWindowRect):
1805 (WebCore::PluginView::setParentVisible):
1806 (WebCore::PluginView::getValue):
1807 (WebCore::PluginView::forceRedraw):
1808 (WebCore::PluginView::init):
1809 * plugins/qt/PluginViewQt.cpp:
1810 (WebCore::PluginView::updateWindow):
1811 (WebCore::PluginView::setFocus):
1812 (WebCore::PluginView::show):
1813 (WebCore::PluginView::hide):
1814 (WebCore::PluginView::setParent):
1815 (WebCore::PluginView::setNPWindowRect):
1816 (WebCore::PluginView::setParentVisible):
1817 (WebCore::PluginView::getValue):
1818 (WebCore::PluginView::~PluginView):
1819 (WebCore::PluginView::init):
1820 * plugins/win/PluginViewWin.cpp:
1821 (WebCore::PluginView::updateWindow):
1822 (WebCore::PluginView::setFocus):
1823 (WebCore::PluginView::show):
1824 (WebCore::PluginView::hide):
1825 (WebCore::PluginView::paint):
1826 (WebCore::PluginView::setParent):
1827 (WebCore::PluginView::setParentVisible):
1828 (WebCore::PluginView::setNPWindowRect):
1829 (WebCore::PluginView::stop):
1830 (WebCore::PluginView::invalidateRect):
1831 (WebCore::PluginView::forceRedraw):
1832 (WebCore::PluginView::~PluginView):
1833 (WebCore::PluginView::init):
1834
weinig@apple.comf713d132008-09-17 20:16:48 +000018352008-09-17 Sam Weinig <sam@webkit.org>
1836
1837 Fix assert.
1838
1839 * platform/Widget.cpp:
1840 (WebCore::Widget::setParent):
1841
hyatt@apple.comd9242e32008-09-17 18:46:31 +000018422008-09-17 David Hyatt <hyatt@apple.com>
1843
1844 Beginnings of Widget refactoring (in order to make the mixing of
1845 widgets with and without corresponding native widgets more cross-platform).
1846
1847 This first patch makes the concept of a parent ScrollView cross-platform.
1848
1849 Note the similarity of the show/hide methods on the three PluginViews. This
1850 will be refactored better in a later patch so that they can all share
1851 a base class Widget show/hide method. For now the changes were made
1852 simply to be able to bring WidgetWin's setParent method up into Widget.
1853
1854 Reviewed by Sam Weinig
1855
1856 * WebCore.base.exp:
1857 * platform/ScrollView.h:
1858 * platform/Widget.cpp:
1859 (WebCore::Widget::init):
1860 (WebCore::Widget::setParent):
1861 * platform/Widget.h:
1862 (WebCore::Widget::isSelfVisible):
1863 (WebCore::Widget::isParentVisible):
1864 (WebCore::Widget::isVisible):
1865 (WebCore::Widget::setParentVisible):
1866 (WebCore::Widget::isPluginView):
1867 (WebCore::Widget::parent):
1868 (WebCore::Widget::handleEvent):
1869 (WebCore::Widget::geometryChanged):
1870 * platform/gtk/WidgetGtk.cpp:
1871 (WebCore::Widget::Widget):
1872 * platform/mac/ScrollViewMac.mm:
1873 (WebCore::ScrollView::addChild):
1874 (WebCore::ScrollView::removeChild):
1875 * platform/mac/ScrollbarMac.mm:
1876 (WebCore::ScrollbarMac::~ScrollbarMac):
1877 * platform/mac/WidgetMac.mm:
1878 (WebCore::Widget::Widget):
1879 (WebCore::Widget::~Widget):
1880 * platform/qt/WidgetQt.cpp:
1881 (WebCore::WidgetPrivate::WidgetPrivate):
1882 (WebCore::Widget::Widget):
1883 (WebCore::Widget::topLevel):
1884 * platform/win/ScrollViewWin.cpp:
1885 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
1886 (WebCore::ScrollView::setAncestorVisible):
1887 (WebCore::ScrollView::show):
1888 (WebCore::ScrollView::hide):
1889 * platform/win/WidgetWin.cpp:
1890 (WebCore::Widget::Widget):
1891 (WebCore::Widget::setParent):
1892 * platform/wx/WidgetWx.cpp:
1893 (WebCore::Widget::Widget):
1894 * plugins/PluginView.cpp:
1895 (WebCore::PluginView::PluginView):
1896 * plugins/PluginView.h:
1897 * plugins/gtk/PluginViewGtk.cpp:
1898 (WebCore::PluginView::show):
1899 (WebCore::PluginView::hide):
1900 (WebCore::PluginView::setParentVisible):
1901 * plugins/qt/PluginViewQt.cpp:
1902 (WebCore::PluginView::show):
1903 (WebCore::PluginView::hide):
1904 (WebCore::PluginView::setParentVisible):
1905 * plugins/win/PluginViewWin.cpp:
1906 (WebCore::PluginView::show):
1907 (WebCore::PluginView::hide):
1908 (WebCore::PluginView::setParentVisible):
1909
ap@webkit.org18da1a32008-09-17 16:50:22 +000019102008-09-17 Alexey Proskuryakov <ap@webkit.org>
1911
1912 Reviewed by Adam Roben.
1913
1914 <rdar://problem/6219577> Spew in console at launch about encoding mappings when running with ICU 4.0
1915
1916 * platform/text/TextCodecICU.cpp:
1917 (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated for new encoding names.
1918
vestbo@webkit.orge48e6362008-09-17 13:29:42 +000019192008-09-17 Tor Arne Vestbø <tavestbo@trolltech.com>
1920
1921 Fix the QtWebKit/Mac build
1922
1923 * platform/qt/ScrollViewQt.cpp: add include
1924
ap@webkit.org18da1a32008-09-17 16:50:22 +000019252008-09-17 David Hyatt <hyatt@apple.com>
hyatt@apple.com0f37fb52008-09-17 08:17:26 +00001926
1927 Add a #define to control whether or not to use an NSScroller on Mac.
1928 This ifdef will allow the new NSView-less NSScroller on Mac to be
1929 developed side by side with the current one.
1930
1931 The new scroller paints a debug red if turned on (although due to
1932 Widget issues you won't see anything paint yet).
1933
1934 Reviewed by olliej
1935
1936 * platform/Scrollbar.cpp:
1937 * platform/Scrollbar.h:
1938 * platform/mac/ScrollbarMac.h:
1939 * platform/mac/ScrollbarMac.mm:
1940 * platform/mac/ScrollbarThemeMac.cpp:
1941 (WebCore::ScrollbarThemeMac::paint):
1942 * platform/mac/ScrollbarThemeMac.h:
1943
alp@webkit.orgf06bac02008-09-17 04:30:12 +000019442008-09-16 Marco Barisione <marco.barisione@collabora.co.uk>
1945
1946 Reviewed by Alp Toker.
1947
1948 http://bugs.webkit.org/show_bug.cgi?id=20854
1949 [GTK] Windows can be not realized in ScrollView::update
1950
1951 Do not call gdk_window_invalidate_rect on a non-realized GtkWidget.
1952
1953 * platform/gtk/ScrollViewGtk.cpp:
1954 (WebCore::ScrollView::update):
1955
alp@webkit.org226f72a2008-09-17 04:22:02 +000019562008-09-16 Alp Toker <alp@nuanti.com>
1957
1958 Suggested by Dave Hyatt.
1959
1960 Build fix and cleanup. Rename ScrollBar to Scrollbar.
1961
1962 * GNUmakefile.am:
1963 * WebCore.pro:
1964 * WebCore.vcproj/WebCore.vcproj:
1965 * WebCore.xcodeproj/project.pbxproj:
1966 * WebCoreSources.bkl:
1967 * editing/EditorCommand.cpp:
1968 * page/EventHandler.cpp:
1969 * page/gtk/EventHandlerGtk.cpp:
1970 * page/mac/EventHandlerMac.mm:
1971 * page/mac/FrameMac.mm:
1972 * page/qt/EventHandlerQt.cpp:
1973 * page/wx/EventHandlerWx.cpp:
1974 * platform/PopupMenu.h:
1975 * platform/ScrollBar.cpp: Removed.
1976 * platform/ScrollBar.h: Removed.
1977 * platform/Scrollbar.cpp: Copied from WebCore/platform/ScrollBar.cpp.
1978 * platform/Scrollbar.h: Copied from WebCore/platform/ScrollBar.h.
1979 * platform/gtk/ScrollbarGtk.cpp:
1980 (ScrollbarGtk::ScrollbarGtk):
1981 * platform/gtk/ScrollbarGtk.h:
1982 * platform/mac/ScrollbarMac.h:
1983 * platform/qt/ScrollViewQt.cpp:
1984 * platform/qt/ScrollbarQt.cpp:
1985 * platform/qt/ScrollbarThemeQt.cpp:
1986 * platform/win/PlatformScrollBar.h:
1987 * platform/win/PopupMenuWin.cpp:
1988 * platform/win/ScrollViewWin.cpp:
1989 * platform/win/ScrollbarThemeWin.cpp:
1990 * platform/wx/ScrollViewWx.cpp:
1991 * platform/wx/TemporaryLinkStubs.cpp:
1992 * rendering/HitTestResult.cpp:
1993 * rendering/RenderLayer.cpp:
1994 * rendering/RenderTextControl.cpp:
1995
hyatt@apple.com7597c172008-09-17 02:15:08 +000019962008-09-16 David Hyatt <hyatt@apple.com>
1997
hyatt@apple.comfde412d2008-09-17 03:49:48 +00001998 Fix Qt build bustage by making moveThumb a member of Scrollbar so that
1999 it can be called from ScrollbarQt.
2000
2001 * platform/ScrollBar.cpp:
2002 (WebCore::Scrollbar::moveThumb):
2003 (WebCore::Scrollbar::handleMouseMoveEvent):
2004 (WebCore::Scrollbar::handleMousePressEvent):
2005 * platform/ScrollBar.h:
2006 * platform/qt/ScrollViewQt.cpp:
2007 * platform/qt/ScrollbarQt.cpp:
2008 (WebCore::Scrollbar::handleContextMenuEvent):
2009
20102008-09-16 David Hyatt <hyatt@apple.com>
2011
hyatt@apple.com4e3b8602008-09-17 03:17:11 +00002012 Eliminate PlatformScrollbar. Mac and Gtk now have subclasses for their
2013 native-widget scrollbars (ScrollbarMac and ScrollbarGtk). Other platforms
2014 now just use Scrollbar.
2015
2016 Reviewed by Sam Weinig
2017
2018 * GNUmakefile.am:
2019 * WebCore.pro:
2020 * WebCore.vcproj/WebCore.vcproj:
2021 * WebCore.xcodeproj/project.pbxproj:
2022 * page/mac/FrameMac.mm:
2023 * platform/PopupMenu.h:
2024 (WebCore::PopupMenu::scrollbar):
2025 * platform/ScrollBar.cpp:
2026 (WebCore::createNativeScrollbar):
2027 * platform/ScrollBar.h:
2028 * platform/gtk/PlatformScrollBar.h: Removed.
2029 * platform/gtk/PlatformScrollBarGtk.cpp: Removed.
2030 * platform/gtk/ScrollbarGtk.cpp: Copied from platform/gtk/PlatformScrollBarGtk.cpp.
2031 (gtkScrollEventCallback):
2032 (ScrollbarGtk::ScrollbarGtk):
2033 (ScrollbarGtk::~ScrollbarGtk):
2034 (ScrollbarGtk::updateThumbPosition):
2035 (ScrollbarGtk::updateThumbProportion):
2036 (ScrollbarGtk::setFrameGeometry):
2037 (ScrollbarGtk::geometryChanged):
2038 (ScrollbarGtk::gtkValueChanged):
2039 * platform/gtk/ScrollbarGtk.h: Copied from platform/gtk/PlatformScrollBar.h.
2040 * platform/mac/PlatformScrollBar.h: Removed.
2041 * platform/mac/PlatformScrollBarMac.mm: Removed.
2042 * platform/mac/ScrollbarMac.h: Copied from platform/mac/PlatformScrollBar.h.
2043 * platform/mac/ScrollbarMac.mm: Copied from platform/mac/PlatformScrollBarMac.mm.
2044 (-[WebCoreScrollBar initWithScrollbarMac:]):
2045 (-[WebCoreScrollBar detachScrollbarMac]):
2046 (WebCore::Scrollbar::createNativeScrollbar):
2047 (WebCore::ScrollbarMac::ScrollbarMac):
2048 (WebCore::ScrollbarMac::~ScrollbarMac):
2049 (WebCore::ScrollbarMac::updateThumbPosition):
2050 (WebCore::ScrollbarMac::updateThumbProportion):
2051 (WebCore::ScrollbarMac::scrollbarHit):
2052 * platform/qt/PlatformScrollBar.h: Removed.
2053 * platform/qt/PlatformScrollBarQt.cpp: Removed.
2054 * platform/qt/ScrollbarQt.cpp: Copied from platform/qt/PlatformScrollBarQt.cpp.
2055 (WebCore::Scrollbar::handleContextMenuEvent):
2056 * rendering/HitTestResult.cpp:
2057 * rendering/RenderLayer.cpp:
2058 (WebCore::RenderLayer::createScrollbar):
2059 (WebCore::RenderLayer::destroyScrollbar):
2060 * rendering/RenderLayer.h:
2061 * rendering/RenderListBox.cpp:
2062 (WebCore::RenderListBox::~RenderListBox):
2063 (WebCore::RenderListBox::updateFromElement):
2064 (WebCore::RenderListBox::isPointInOverflowControl):
2065 * rendering/RenderObject.h:
2066 * rendering/RenderTextControl.cpp:
2067
20682008-09-16 David Hyatt <hyatt@apple.com>
2069
hyatt@apple.com7597c172008-09-17 02:15:08 +00002070 Make the scrollbar resizer-dodging logic cross-platform in the
2071 Scrollbar class.
2072
2073 Reviewed by Sam Weinig
2074
2075 * platform/ScrollBar.cpp:
2076 (WebCore::Scrollbar::setFrameGeometry):
2077 (WebCore::Scrollbar::setParent):
2078 (WebCore::Scrollbar::windowClipRect):
2079 * platform/ScrollBar.h:
2080 * platform/ScrollView.h:
2081 (WebCore::ScrollView::windowResizerRect):
2082 (WebCore::ScrollView::resizerOverlapsContent):
2083 (WebCore::ScrollView::adjustOverlappingScrollbarCount):
2084 * platform/Widget.h:
2085 (WebCore::Widget::setParent):
2086 * platform/mac/WidgetMac.mm:
2087 (WebCore::Widget::convertToContainingWindow):
2088 * platform/win/PlatformScrollBar.h:
2089 * platform/win/PlatformScrollBarWin.cpp:
2090
mitz@apple.com6d925202008-09-16 17:34:10 +000020912008-09-16 Dan Bernstein <mitz@apple.com>
2092
mitz@apple.comd9462a52008-09-16 17:40:20 +00002093 Reviewed by Darin Adler.
2094
2095 - fix https://bugs.webkit.org/show_bug.cgi?id=15129
2096 <rdar://problem/4644824> adding a new line with DOM does unnecessary additional repaint
2097
2098 Covered by fast/repaint/4776765.html
2099
2100 * rendering/RenderBlock.cpp:
2101 (WebCore::RenderBlock::layoutBlock): Avoid repainting this object if it
2102 did not have layout in the beginning.
2103 (WebCore::RenderBlock::layoutBlockChildren): If a child did not have
2104 layout in the beginning, repaint it in its new position, to compensate
2105 for the above (regardless of whether it "moved").
2106 * rendering/RenderObject.cpp:
2107 (WebCore::RenderObject::checkForRepaintDuringLayout): Added a comment
2108 about generalizing this fix in the future.
2109
21102008-09-16 Dan Bernstein <mitz@apple.com>
2111
mitz@apple.com6d925202008-09-16 17:34:10 +00002112 Reviewed by Dave Hyatt.
2113
2114 - fix https://bugs.webkit.org/show_bug.cgi?id=15384
2115 Div does not notice when grandparent changes height
2116
2117 Test: fast/block/basic/quirk-percent-height-grandchild.html
2118
2119 - fix https://bugs.webkit.org/show_bug.cgi?id=20714
2120 Resizing Gmail inbox vertically results in whitespace at the bottom of the window
2121
2122 Test: fast/replaced/percent-height-in-anonymous-block.html
2123
2124 Added a two-way mapping between boxes with percentage heights and
2125 their non-parent ancestors up to the one the height is computed relative
2126 to. In quirks mode (the first bug), this can be any number of containing
2127 block with auto height. In strict mode (the second bug) this can be
2128 the containing block of an anonymous block containing a replaced
2129 element.
2130
2131 * rendering/RenderBlock.cpp:
2132 (WebCore::RenderBlock::~RenderBlock): Added code to remove the all the
2133 mapping to/from this block to percentage-height descendants.
2134 (WebCore::RenderBlock::layoutBlockChildren): Added code to mark
2135 percentage-height descendants (and their containing block ancestry chain
2136 up to this block) for layout. This ensures that those descendants whose
2137 height depends on the height of this block (or an ancestor) are updated.
2138 (WebCore::RenderBlock::addPercentHeightDescendant): Added. Establishes
2139 a two-way mapping between this block and the given box.
2140 (WebCore::RenderBlock::removePercentHeightDescendant): Added. Removes
2141 all the mapping to/from this box.
2142 * rendering/RenderBlock.h:
2143 * rendering/RenderBox.cpp:
2144 (WebCore::RenderBox::setStyle): Added calls to
2145 removePercentHeightDescendant() when style changes and the box
2146 previously had a percentage height. An exception is when the style
2147 change does not require layout, in which case the box still has
2148 a percentage height and the mappings are valid. In all other cases,
2149 any required mappings will be (re-)established during layout.
2150 (WebCore::RenderBox::destroy): Added a call to
2151 removePercentHeightDescendant.
2152 (WebCore::RenderBox::calcPercentageHeight): Added code that, in quirks
2153 mode, if a higher-than-parent containing block is affecting the box's
2154 height, creates a mapping between the box and that block.
2155 (WebCore::RenderBox::calcReplacedHeightUsing): Changed to skip over
2156 anonymous containing blocks, if any, and when that happens, use
2157 addPercentHeightDescendant() to ensure that the non-anonymous block
2158 is aware of the dependent percent-height box.
2159
alp@webkit.org1dbd9a92008-09-16 16:59:18 +000021602008-09-16 Dirk Schulze <vbs85@gmx.de>
2161
2162 Reviewed by Oliver Hunt and Alp Toker.
2163
2164 Implemented toDataURL in Cairo. Only PNG support
2165 at the moment.
2166
2167 Qt, Cairo and wx require toDataURL implementations
2168 https://bugs.webkit.org/show_bug.cgi?id=17719
2169
2170 * platform/MIMETypeRegistry.cpp:
2171 (WebCore::initializeSupportedImageMIMETypesForEncoding):
2172 * platform/graphics/cairo/ImageBufferCairo.cpp:
2173 (WebCore::ImageBuffer::ImageBuffer):
2174 (WebCore::writeFunction):
2175 (WebCore::ImageBuffer::toDataURL):
2176
vestbo@webkit.org8963b3c2008-09-16 16:45:20 +000021772008-09-16 Tor Arne Vestbø <tavestbo@trolltech.com>
2178
2179 Reviewed by Simon.
2180
2181 Hide unused media element controls in the QtWebKit port
2182
2183 * platform/qt/html4-adjustments-qt.css
2184
hausmann@webkit.orgcd7a1292008-09-16 14:19:16 +000021852008-09-16 Ariya Hidayat <ariya.hidayat@trolltech.com>
2186
2187 Reviewed by Simon.
2188
2189 Fix compilation of the Qt scrollbar code.
2190
2191 * platform/qt/PlatformScrollBarQt.cpp:
2192 (WebCore::scPart):
2193 (WebCore::styleOptionSlider):
2194 (WebCore::thumbLength):
2195 (WebCore::pixelPosToRangeValue):
2196 (WebCore::PlatformScrollbar::handleContextMenuEvent):
2197
treat@webkit.orga35f6b62008-09-16 14:15:29 +000021982008-09-16 Adam Treat <treat@kde.org>
2199
2200 Reviewed by Anders Carlsson.
2201
2202 Prevent accesses off of the end of the buffer introduced in r36450
2203 and when checking for descriptions of mime. Also, coding style fix.
2204
2205 * plugins/qt/PluginPackageQt.cpp:
2206 (WebCore::PluginPackage::fetchInfo):
2207
rwlbuis@webkit.org8f675dd2008-09-16 11:12:52 +000022082008-09-15 Rob Buis <buis@kde.org>
2209
2210 Reviewed by Eric.
2211
2212 https://bugs.webkit.org/show_bug.cgi?id=20634
2213 SVG transform attribute is ignored by <use> in <clipPath>
2214
2215 Transform the paths with the local transform when part
2216 of a clip path.
2217
2218 Test: svg/custom/use-clipped-transform.svg
2219
2220 * svg/SVGClipPathElement.cpp:
2221 (WebCore::SVGClipPathElement::canvasResource):
2222 * svg/SVGStyledTransformableElement.cpp:
2223 (WebCore::SVGStyledTransformableElement::toClipPath):
2224 * svg/SVGStyledTransformableElement.h:
2225
hyatt@apple.com1cd4bcc2008-09-16 06:53:34 +000022262008-09-15 Dave Hyatt <hyatt@apple.com>
2227
2228 Convert Qt over to its ScrollbarTheme. Add cross-platform support for jumping the thumb location directly
2229 to a pressed location on the track (this is done with the middle mouse on Qt and with Shift-Click on Windows).
2230
2231 Reviewed by Sam Weinig
2232
2233 * platform/ScrollBar.cpp:
2234 (WebCore::thumbUnderMouse):
2235 (WebCore::Scrollbar::autoscrollPressedPart):
2236 (WebCore::Scrollbar::startTimerIfNeeded):
2237 (WebCore::moveThumb):
2238 (WebCore::Scrollbar::handleMouseMoveEvent):
2239 (WebCore::Scrollbar::handleMousePressEvent):
2240 * platform/ScrollBar.h:
2241 (WebCore::Scrollbar::pressedPos):
2242 (WebCore::Scrollbar::pixelStep):
2243 (WebCore::Scrollbar::setPressedPos):
2244 * platform/ScrollbarTheme.h:
2245 (WebCore::ScrollbarTheme::thumbPosition):
2246 (WebCore::ScrollbarTheme::thumbLength):
2247 (WebCore::ScrollbarTheme::trackPosition):
2248 (WebCore::ScrollbarTheme::trackLength):
2249 * platform/ScrollbarThemeComposite.cpp:
2250 (WebCore::ScrollbarThemeComposite::trackPosition):
2251 * platform/ScrollbarThemeComposite.h:
2252 * platform/qt/PlatformScrollBarQt.cpp:
2253 (WebCore::PlatformScrollbar::PlatformScrollbar):
2254 (WebCore::):
2255 * platform/qt/ScrollbarThemeQt.cpp:
2256 (WebCore::styleOptionSlider):
2257 (WebCore::ScrollbarThemeQt::hitTest):
2258 (WebCore::ScrollbarThemeQt::shouldCenterOnThumb):
2259 (WebCore::ScrollbarThemeQt::invalidatePart):
2260 (WebCore::ScrollbarThemeQt::thumbPosition):
2261 (WebCore::):
2262 * platform/qt/ScrollbarThemeQt.h:
2263 * platform/win/ScrollbarThemeSafari.cpp:
2264 (WebCore::ScrollbarThemeSafari::shouldCenterOnThumb):
2265 * platform/win/ScrollbarThemeSafari.h:
2266 * platform/win/ScrollbarThemeWin.cpp:
2267 (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
2268 * platform/win/ScrollbarThemeWin.h:
2269
dsmith@webkit.orgb3107b532008-09-16 06:14:22 +000022702008-09-15 David Smith <catfish.man@gmail.com>
2271
2272 Reviewed by Sam Weinig.
2273
2274 https://bugs.webkit.org/show_bug.cgi?id=20180
2275
2276 Cache the result of parsing the an+b expression in :nth-child(an+b). Roughly a 2x speedup for :nth-child on SlickSpeed.
2277
2278 * GNUmakefile.am: Add CSSNthSelector
2279 * WebCore.pro: Add CSSNthSelector
2280 * WebCore.vcproj/WebCore.vcproj: Add CSSNthSelector
2281 * WebCore.xcodeproj/project.pbxproj: Add CSSNthSelector
2282 * css/CSSGrammar.y: Create CSSNthSelectors instead of CSSSelectors for :nth-*
2283 * css/CSSNthSelector.cpp: Added.
2284 (WebCore::CSSNthSelector::parseNth): Moved from CSSStyleSelector and modified to cache
2285 (WebCore::CSSNthSelector::matchNth): Moved from CSSStyleSelector and modified to use the cache
2286 * css/CSSNthSelector.h: Added.
2287 (WebCore::CSSNthSelector::CSSNthSelector):
2288 (WebCore::CSSNthSelector::~CSSNthSelector):
2289 * css/CSSParser.cpp:
2290 (WebCore::CSSParser::createFloatingNthSelector):
2291 * css/CSSParser.h:
2292 * css/CSSSelector.h: Use the free bit here to store a flag for CSSNthSelector
2293 (WebCore::CSSSelector::CSSSelector):
2294 * css/CSSStyleSelector.cpp:
2295 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Take advantage of knowing that all :nth-* selectors are CSSNthSelectors
2296
pewtermoose@webkit.orgfb4d3fb2008-09-16 02:46:39 +000022972008-09-15 Matt Lilek <webkit@mattlilek.com>
2298
2299 Reviewed by Tim Hatcher.
2300
2301 Clean up some inspector JS callbacks to remove an extra return.
2302
2303 * page/InspectorController.cpp:
2304 (WebCore::hideDOMNodeHighlight):
2305 (WebCore::loaded):
2306 (WebCore::unloading):
2307 (WebCore::attach):
2308 (WebCore::detach):
2309 (WebCore::startDebuggingAndReloadInspectedPage):
2310 (WebCore::stopDebugging):
2311 (WebCore::debuggerAttached):
2312 (WebCore::pauseOnExceptions):
2313 (WebCore::pauseInDebugger):
2314 (WebCore::resumeDebugger):
2315 (WebCore::stepOverStatementInDebugger):
2316 (WebCore::stepIntoStatementInDebugger):
2317 (WebCore::stepOutOfFunctionInDebugger):
2318 (WebCore::isWindowVisible):
2319 (WebCore::closeWindow):
2320
hyatt@apple.com8e809932008-09-16 02:29:09 +000023212008-09-15 Dave Hyatt <hyatt@apple.com>
2322
2323 Completely switch Windows scrollbars over to ScrollbarTheme. The Aqua windows scrollbar and native scrollbar
2324 now share most of their code.
2325
2326 Also removing mini size scrollbar support, since it would have crashed Windows had it ever been used, and it
2327 also is never used in our code anyway.
2328
2329 Reviewed by Sam Weinig
2330
2331 * WebCore.vcproj/WebCore.vcproj:
2332 * platform/ScrollTypes.h:
2333 (WebCore::):
2334 * platform/ScrollbarThemeComposite.cpp:
2335 (WebCore::ScrollbarThemeComposite::splitTrack):
2336 (WebCore::ScrollbarThemeComposite::thumbLength):
2337 (WebCore::ScrollbarThemeComposite::minimumThumbLength):
2338 * platform/ScrollbarThemeComposite.h:
2339 * platform/mac/PlatformScrollBarMac.mm:
2340 (NSControlSizeForScrollBarControlSize):
2341 * platform/win/PlatformScrollBar.h:
2342 * platform/win/PlatformScrollBarSafari.cpp: Removed.
2343 * platform/win/PlatformScrollBarWin.cpp:
2344 (WebCore::PlatformScrollbar::PlatformScrollbar):
2345 * platform/win/ScrollbarThemeSafari.cpp:
2346 (WebCore::ScrollbarTheme::nativeTheme):
2347 (WebCore::):
2348 (WebCore::scrollbarControlStateFromThemeState):
2349 (WebCore::ScrollbarThemeSafari::hasButtons):
2350 (WebCore::ScrollbarThemeSafari::hasThumb):
2351 (WebCore::buttonRepaintRect):
2352 (WebCore::ScrollbarThemeSafari::backButtonRect):
2353 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
2354 (WebCore::trackRepaintRect):
2355 (WebCore::ScrollbarThemeSafari::trackRect):
2356 (WebCore::ScrollbarThemeSafari::minimumThumbLength):
2357 (WebCore::ScrollbarThemeSafari::paintTrack):
2358 (WebCore::ScrollbarThemeSafari::paintButton):
2359 (WebCore::ScrollbarThemeSafari::paintThumb):
2360 * platform/win/ScrollbarThemeSafari.h:
2361 * platform/win/ScrollbarThemeWin.cpp:
2362 * platform/win/ScrollbarThemeWin.h:
2363
cfleizach@apple.com0ce07032008-09-16 00:17:58 +000023642008-09-15 Chris Fleizach <cfleizach@apple.com>
2365
2366 Reviewed by Darin Adler, Beth Dakin
2367
2368 <rdar://problem/4003789> Expose lists as AXList
2369 <rdar://problem/5707399> VO: Definition lists not announced in Safari
2370
2371 Lists are now exposed through AX. On the mac (in SnowLeopard) they use two new subroles
2372 AXContentList for <ul>, <ol> and AXDefinitionList for <dl>
2373 Inside the definition list, each <dt> "term" has an accessibility description ("term"),
2374 as does each <dd> tag ("definition")
2375
2376 Test: accessibility/lists.html
2377
2378 * GNUmakefile.am:
2379 * WebCore.pro:
2380 * WebCore.vcproj/WebCore.vcproj:
2381 * WebCore.xcodeproj/project.pbxproj:
2382 * WebCoreSources.bkl:
2383 * page/AXObjectCache.cpp:
2384 * page/AccessibilityList.cpp: Added.
2385 * page/AccessibilityList.h: Added.
2386 * page/AccessibilityObject.h:
2387 * page/AccessibilityRenderObject.cpp:
2388 * page/AccessibilityTable.cpp:
2389 * page/mac/AccessibilityObjectWrapper.mm:
2390 * page/mac/WebCoreViewFactory.h:
2391 * platform/LocalizedStrings.h:
2392 * platform/mac/LocalizedStringsMac.mm:
2393 * platform/qt/Localizations.cpp:
2394
zimmermann@webkit.org8cc8ad02008-09-16 00:01:11 +000023952008-09-15 Nikolas Zimmermann <zimmermann@kde.org>
2396
2397 Reviewed by Eric.
2398
2399 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20865
2400 Prepare HTMLScriptElement & SVGScriptElement unification, and unification of event handling.
2401
2402 Several renames:
2403 dispatchHTMLEvent -> dispatchEventForType
2404 setHTMLEventListener -> setEventListenerForType
2405 getHTMLEventListener -> eventListenerForType
2406 removeHTMLEventListener -> removeEventListenerForType
2407 isHTMLEventListener -> isAttachedToEventTargetNode
2408 ...
2409
2410 Similar renames for the dispatch/get/set/*Window*Event functions.
2411 Kill JSSVGLazyEventListener and merge with JSLazyEventListener.
2412
2413 Most important change: Rename setHTMLEventListener to setEventListenerForTypeAndAttribute,
2414 as there exists a generic createEventListener() method now, taking care of JSLazyEventListener creation.
2415
2416 setHTMLEventListener() used createHTMLEventListener() before and was HTML specific.
2417 SVG is able to use the code as well now. This affects most files in html/.
2418
2419 No functional changes.
2420
2421 * GNUmakefile.am:
2422 * WebCore.pro:
2423 * WebCore.vcproj/WebCore.vcproj:
2424 * WebCore.xcodeproj/project.pbxproj:
2425 * bindings/js/JSDOMWindowBase.cpp:
2426 (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
2427 (WebCore::JSDOMWindowBase::setListener):
2428 (WebCore::JSDOMWindowBase::getListener):
2429 (WebCore::JSDOMWindowBase::findJSEventListener):
2430 (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
2431 (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
2432 (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
2433 (WebCore::JSDOMWindowBase::jsEventListenersAttachedToEventTargetNodes):
2434 (WebCore::JSDOMWindowBase::jsUnprotectedEventListenersAttachedToEventTargetNodes):
2435 * bindings/js/JSDOMWindowBase.h:
2436 * bindings/js/JSEventListener.cpp:
2437 (WebCore::JSAbstractEventListener::handleEvent):
2438 (WebCore::JSAbstractEventListener::isAttachedToEventTargetNode):
2439 (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
2440 (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
2441 (WebCore::JSEventListener::JSEventListener):
2442 (WebCore::JSEventListener::~JSEventListener):
2443 (WebCore::JSLazyEventListener::JSLazyEventListener):
2444 (WebCore::eventParameterName):
2445 (WebCore::JSLazyEventListener::parseCode):
2446 (WebCore::getNodeEventListener):
2447 * bindings/js/JSEventListener.h:
2448 (WebCore::JSAbstractEventListener::JSAbstractEventListener):
2449 (WebCore::JSUnprotectedEventListener::create):
2450 (WebCore::JSEventListener::create):
2451 (WebCore::JSLazyEventListener::):
2452 (WebCore::JSLazyEventListener::create):
2453 * bindings/js/JSEventTargetNode.cpp:
2454 (WebCore::JSEventTargetNode::setListener):
2455 (WebCore::JSEventTargetNode::getListener):
2456 * bindings/js/JSSVGLazyEventListener.cpp: Removed.
2457 * bindings/js/JSSVGLazyEventListener.h: Removed.
2458 * bindings/js/ScriptController.cpp:
2459 (WebCore::ScriptController::createHTMLEventHandler):
2460 (WebCore::ScriptController::createSVGEventHandler):
2461 * dom/Document.cpp:
2462 (WebCore::Document::setFocusedNode):
2463 (WebCore::Document::handleWindowEvent):
2464 (WebCore::Document::setWindowEventListenerForType):
2465 (WebCore::Document::windowEventListenerForType):
2466 (WebCore::Document::removeWindowEventListenerForType):
2467 (WebCore::Document::addWindowEventListener):
2468 (WebCore::Document::hasWindowEventListener):
2469 (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
2470 (WebCore::Document::createEventListener):
2471 (WebCore::Document::setWindowEventListenerForTypeAndAttribute):
2472 * dom/Document.h:
2473 * dom/EventListener.h:
2474 (WebCore::EventListener::isAttachedToEventTargetNode):
2475 * dom/EventTargetNode.cpp:
2476 (WebCore::EventTargetNode::dispatchFocusEvent):
2477 (WebCore::EventTargetNode::dispatchBlurEvent):
2478 (WebCore::EventTargetNode::dispatchEventForType):
2479 (WebCore::EventTargetNode::removeEventListenerForType):
2480 (WebCore::EventTargetNode::setEventListenerForType):
2481 (WebCore::EventTargetNode::setEventListenerForTypeAndAttribute):
2482 (WebCore::EventTargetNode::eventListenerForType):
2483 * dom/EventTargetNode.h:
2484 * dom/XMLTokenizer.cpp:
2485 (WebCore::XMLTokenizer::notifyFinished):
2486 * editing/ReplaceSelectionCommand.cpp:
2487 (WebCore::ReplacementFragment::ReplacementFragment):
2488 * html/HTMLBodyElement.cpp:
2489 (WebCore::HTMLBodyElement::parseMappedAttribute):
2490 * html/HTMLButtonElement.cpp:
2491 (WebCore::HTMLButtonElement::parseMappedAttribute):
2492 * html/HTMLElement.cpp:
2493 (WebCore::HTMLElement::parseMappedAttribute):
2494 (WebCore::HTMLElement::checkDTD):
2495 * html/HTMLElement.h:
2496 * html/HTMLFormControlElement.cpp:
2497 (WebCore::HTMLFormControlElement::onChange):
2498 * html/HTMLFormElement.cpp:
2499 (WebCore::HTMLFormElement::prepareSubmit):
2500 (WebCore::HTMLFormElement::reset):
2501 (WebCore::HTMLFormElement::parseMappedAttribute):
2502 * html/HTMLFrameElementBase.cpp:
2503 (WebCore::HTMLFrameElementBase::parseMappedAttribute):
2504 * html/HTMLFrameSetElement.cpp:
2505 (WebCore::HTMLFrameSetElement::parseMappedAttribute):
2506 * html/HTMLImageElement.cpp:
2507 (WebCore::HTMLImageElement::parseMappedAttribute):
2508 * html/HTMLImageLoader.cpp:
2509 (WebCore::HTMLImageLoader::dispatchLoadEvent):
2510 * html/HTMLInputElement.cpp:
2511 (WebCore::HTMLInputElement::parseMappedAttribute):
2512 (WebCore::HTMLInputElement::setValueFromRenderer):
2513 (WebCore::HTMLInputElement::onSearch):
2514 * html/HTMLMediaElement.cpp:
2515 (WebCore::HTMLMediaElement::asyncEventTimerFired):
2516 (WebCore::HTMLMediaElement::load):
2517 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
2518 (WebCore::HTMLMediaElement::setReadyState):
2519 (WebCore::HTMLMediaElement::seek):
2520 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
2521 (WebCore::HTMLMediaElement::willSaveToCache):
2522 * html/HTMLObjectElement.cpp:
2523 (WebCore::HTMLObjectElement::parseMappedAttribute):
2524 * html/HTMLScriptElement.cpp:
2525 (WebCore::HTMLScriptElement::parseMappedAttribute):
2526 (WebCore::HTMLScriptElement::dispatchLoadEvent):
2527 (WebCore::HTMLScriptElement::dispatchErrorEvent):
2528 * html/HTMLSelectElement.cpp:
2529 (WebCore::HTMLSelectElement::parseMappedAttribute):
2530 * html/HTMLTextAreaElement.cpp:
2531 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
2532 * html/HTMLTokenizer.cpp:
2533 (WebCore::HTMLTokenizer::notifyFinished):
2534 * page/AccessibilityRenderObject.cpp:
2535 (WebCore::AccessibilityRenderObject::mouseButtonListener):
2536 * page/EventHandler.cpp:
2537 (WebCore::EventHandler::canMouseDownStartSelect):
2538 (WebCore::EventHandler::canMouseDragExtendSelect):
2539 * page/Frame.cpp:
2540 (WebCore::Frame::sendScrollEvent):
2541 * page/Page.cpp:
2542 (WebCore::networkStateChanged):
2543 * rendering/RenderListBox.cpp:
2544 (WebCore::RenderListBox::valueChanged):
2545 * rendering/RenderTextControl.cpp:
2546 (WebCore::RenderTextControl::selectionChanged):
2547 * svg/SVGDocumentExtensions.cpp:
2548 * svg/SVGDocumentExtensions.h:
2549 * svg/SVGElement.cpp:
2550 (WebCore::SVGElement::parseMappedAttribute):
2551 (WebCore::SVGElement::finishParsingChildren):
2552 * svg/SVGElement.h:
2553 * svg/SVGSVGElement.cpp:
2554 (WebCore::SVGSVGElement::parseMappedAttribute):
2555 * svg/SVGSVGElement.h:
2556
hyatt@apple.com63739ce2008-09-15 23:44:10 +000025572008-09-15 Dave Hyatt <hyatt@apple.com>
2558
2559 Convert PlatformScrollbarWin to use ScrollbarTheme for hit testing. PlatformScrollbarQt/Gtk still
2560 need to be converted.
2561
2562 Reviewed by Sam Weinig
2563
2564 * platform/ScrollBar.cpp:
2565 (WebCore::Scrollbar::Scrollbar):
2566 (WebCore::Scrollbar::updateThumbPosition):
2567 (WebCore::Scrollbar::updateThumbProportion):
2568 (WebCore::Scrollbar::autoscrollPressedPart):
2569 (WebCore::Scrollbar::startTimerIfNeeded):
2570 * platform/ScrollBar.h:
2571 * platform/ScrollbarTheme.h:
2572 (WebCore::ScrollbarTheme::invalidateParts):
2573 * platform/ScrollbarThemeComposite.cpp:
2574 (WebCore::ScrollbarThemeComposite::hitTest):
2575 (WebCore::ScrollbarThemeComposite::invalidatePart):
2576 (WebCore::ScrollbarThemeComposite::thumbPosition):
2577 (WebCore::ScrollbarThemeComposite::thumbLength):
2578 (WebCore::ScrollbarThemeComposite::trackLength):
2579 * platform/ScrollbarThemeComposite.h:
2580 * platform/win/PlatformScrollBarSafari.cpp:
2581 (WebCore::PlatformScrollbar::PlatformScrollbar):
2582 * platform/win/PlatformScrollBarWin.cpp:
2583 (WebCore::PlatformScrollbar::PlatformScrollbar):
2584
dsmith@webkit.orgaa780ed2008-09-15 23:08:07 +000025852008-09-15 David Smith <catfish.man@gmail.com>
2586
2587 "Just do it"'d by Mark Rowe
2588
2589 https://bugs.webkit.org/show_bug.cgi?id=20856
2590 Add missing license header
2591
2592 * dom/NodeRenderStyle.h:
2593
dino@apple.combf52b682008-09-15 21:31:43 +000025942008-09-15 Dean Jackson <dino@apple.com>
2595
2596 Reviewed by Tim Hatcher.
2597
dino@apple.com3db0b8f2008-09-15 21:52:23 +00002598 Add default constructor for ShadowData
2599 https://bugs.webkit.org/show_bug.cgi?id=20757
2600
2601 Test: transitions/shadow.html
2602
2603 * rendering/style/RenderStyle.h:
2604
26052008-09-15 Dean Jackson <dino@apple.com>
2606
2607 Reviewed by Tim Hatcher.
2608
dino@apple.com03abdce2008-09-15 21:40:52 +00002609 RenderStyle should update keyframes.
2610 http://bugs.webkit.org/show_bug.cgi?id=20756
2611
2612 * rendering/style/RenderStyle.cpp:
2613 (WebCore::StyleRareNonInheritedData::updateKeyframes):
2614
26152008-09-15 Dean Jackson <dino@apple.com>
2616
2617 Reviewed by Tim Hatcher.
2618
dino@apple.combf52b682008-09-15 21:31:43 +00002619 Unnecessary ASSERT in ImplicitAnimation destructor.
2620 https://bugs.webkit.org/show_bug.cgi?id=20817
2621
2622 * page/animation/ImplicitAnimation.cpp:
2623 (WebCore::ImplicitAnimation::~ImplicitAnimation):
2624
treat@webkit.org7e5abc22008-09-15 20:53:49 +000026252008-09-15 Adam Treat <treat@kde.org>
2626
2627 Reviewed by Simon.
2628
2629 Fix plugin extension info. It was returning the mimetype where the
2630 extension was given.
2631
2632 * plugins/qt/PluginPackageQt.cpp:
2633 (WebCore::PluginPackage::fetchInfo):
2634
dino@apple.comecc18dc2008-09-15 20:40:28 +000026352008-09-15 Dean Jackson <dino@apple.com>
2636
2637 Reviewed by Tim Hatcher
2638
2639 Coding style violation!!!! Cleanup AnimationBase.cpp
2640
2641 * page/animation/AnimationBase.cpp:
2642 (WebCore::blendFunc):
2643
hyatt@apple.comf4a9d932008-09-15 20:03:25 +000026442008-09-15 David Hyatt <hyatt@apple.com>
2645
2646 Move all hit testing code for scrollbars into the base class. Refactor
2647 it to accommodate all platform-specific behaviors using virtual ScrollbarTheme
2648 functions.
2649
2650 No platform is using this code yet. Although it has been moved and compiles
2651 (even on Mac), it is not being used on any platform.
2652
2653 Reviewed by Sam Weinig
2654
2655 * platform/ScrollBar.cpp:
2656 (WebCore::Scrollbar::autoscrollPressedPart):
2657 (WebCore::Scrollbar::startTimerIfNeeded):
2658 (WebCore::Scrollbar::handleMouseMoveEvent):
2659 (WebCore::Scrollbar::handleMouseOutEvent):
2660 (WebCore::Scrollbar::handleMouseReleaseEvent):
2661 (WebCore::Scrollbar::handleMousePressEvent):
2662 * platform/ScrollBar.h:
2663 (WebCore::Scrollbar::handleContextMenuEvent):
2664 * platform/ScrollbarTheme.h:
2665 (WebCore::ScrollbarTheme::hitTest):
2666 (WebCore::ScrollbarTheme::invalidateOnMouseEnterExit):
2667 (WebCore::ScrollbarTheme::invalidatePart):
2668 (WebCore::ScrollbarTheme::shouldCenterOnThumb):
2669 (WebCore::ScrollbarTheme::centerOnThumb):
2670 (WebCore::ScrollbarTheme::thumbPosition):
2671 (WebCore::ScrollbarTheme::thumbLength):
2672 (WebCore::ScrollbarTheme::trackLength):
2673 (WebCore::ScrollbarTheme::initialAutoscrollTimerDelay):
2674 (WebCore::ScrollbarTheme::autoscrollTimerDelay):
2675 * platform/Widget.h:
2676 (WebCore::Widget::parent):
2677 * platform/mac/PlatformScrollBar.h:
2678 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
2679 (WebCore::PlatformScrollbar::handleMouseOutEvent):
2680 (WebCore::PlatformScrollbar::handleMousePressEvent):
2681 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
2682 * platform/mac/WidgetMac.mm:
2683 (WebCore::Widget::convertFromContainingWindow):
2684 * platform/win/ScrollbarThemeWin.cpp:
2685 (WebCore::ScrollbarThemeWin::invalidateOnMouseEnterExit):
2686 * platform/win/ScrollbarThemeWin.h:
2687
mitz@apple.comd17dc392008-09-15 18:48:20 +000026882008-09-15 Dan Bernstein <mitz@apple.com>
2689
2690 Reviewed by Sam Weinig.
2691
2692 - fix <rdar://problem/5842247> Single long breakable word takes O(n^2) to lay out
2693
2694 Cache the next breakable position for text nodes in InlineIterator.
2695
2696 * rendering/bidi.cpp:
2697 (WebCore::InlineIterator::InlineIterator):
2698 (WebCore::InlineIterator::increment):
2699 (WebCore::RenderBlock::findNextLineBreak):
2700
simon.fraser@apple.comda604642008-09-15 17:10:48 +000027012008-09-15 Simon Fraser <simon.fraser@apple.com>
2702
2703 Reviewed by Dan Bernstein
2704
2705 Fix assertion and integral pixel issue when creating subimages.
2706 https://bugs.webkit.org/show_bug.cgi?id=20786
2707
2708 * platform/graphics/cg/ImageCG.cpp:
2709 (WebCore::BitmapImage::draw):
2710
vestbo@webkit.orge7eda302008-09-15 12:43:37 +000027112008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
2712
2713 Reviewed by Simon.
2714
2715 Implment seek() and clean up and improve debugging output
2716
2717 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2718 (debugMediaObject):
2719 (WebCore::MediaPlayerPrivate::seek):
2720 (WebCore::MediaPlayerPrivate::setVolume):
2721 (WebCore::MediaPlayerPrivate::setMuted):
2722 (WebCore::MediaPlayerPrivate::updateStates):
2723 (WebCore::MediaPlayerPrivate::naturalSize):
2724 (WebCore::MediaPlayerPrivate::paint):
2725 (WebCore::MediaPlayerPrivate::stateChanged):
2726 (WebCore::MediaPlayerPrivate::tick):
2727
vestbo@webkit.orgaba01e62008-09-15 11:40:22 +000027282008-09-15 Holger Hans Peter Freyther <zecke@selfish.org>
2729
2730 Reviewed by Simon.
2731
2732 Remove bogus Q_ASSERTs from the MediaPlayer Phonon implementation
2733
2734 m_mediaObject, m_audioOutput, m_videoWidget get created in the
2735 c'tor and will only be deleted in the c'tor. The Q_ASSERTs would
2736 only check if we use the MediaPlayerPrivate after it has been deleted.
2737
2738 Acked-by: Tor Arne Vestbø <tavestbo@trolltech.com>
2739
2740 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2741 (WebCore::MediaPlayerPrivate::play):
2742 (WebCore::MediaPlayerPrivate::setVolume):
2743 (WebCore::MediaPlayerPrivate::updateStates):
2744
andersca@apple.com18d62682008-09-15 11:35:22 +000027452008-09-15 Anders Carlsson <andersca@apple.com>
2746
2747 Reviewed by Maciej.
2748
2749 <rdar://problem/6163988>
2750 https://bugs.webkit.org/show_bug.cgi?id=20457
2751 Canvas: createPattern crashes WebKit in WTF::RefPtr<WebCore::Image>::operator!() const + 9 with a 1D pattern
2752
2753 Check the width and height and throw an exception if any of them are 0.
2754
2755 * html/CanvasRenderingContext2D.cpp:
2756 (WebCore::CanvasRenderingContext2D::createPattern):
2757
vestbo@webkit.org3a27e182008-09-15 11:28:59 +000027582008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
2759
2760 Reviewed by Simon.
2761
2762 Render media element controls with antialiasing enabled
2763
2764 * platform/qt/RenderThemeQt.cpp:
2765 (WebCore::RenderThemeQt::paintMediaMuteButton):
2766 (WebCore::RenderThemeQt::paintMediaPlayButton):
2767 (WebCore::RenderThemeQt::paintMediaSliderTrack):
2768 (WebCore::RenderThemeQt::paintMediaSliderThumb):
2769
vestbo@webkit.org17e4bfc2008-09-15 11:27:25 +000027702008-09-15 Ariya Hidayat <ariya.hidayat@trolltech.com>
2771
2772 Reviewed by Simon.
2773
2774 Upon non fatal error, switch to the pause state (so that playback can continue)
2775
2776 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2777 (WebCore::MediaPlayerPrivate::updateStates):
2778
vestbo@webkit.org12a59572008-09-15 11:16:13 +000027792008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
2780
2781 Reviewed by Simon.
2782
vestbo@webkit.org1d1f05e2008-09-15 11:22:05 +00002783 Don't set WTF_USE_JSC in WebCore.pro now that it's set in config.h
2784
2785 * WebCore.pro:
2786
27872008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
2788
2789 Reviewed by Simon.
2790
vestbo@webkit.org12a59572008-09-15 11:16:13 +00002791 Make QtInstance::create() private and fix caching
2792
2793 * bindings/js/ScriptControllerQt.cpp:
2794 (WebCore::ScriptController::createScriptInstanceForWidget):
2795 * bridge/qt/qt_instance.cpp:
2796 (JSC::Bindings::QtInstance::getQtInstance):
2797 (JSC::Bindings::QtInstance::getRuntimeObject):
2798 * bridge/qt/qt_instance.h:
2799 (JSC::Bindings::QtInstance::create):
2800 * bridge/qt/qt_runtime.cpp:
2801 (JSC::Bindings::convertQVariantToValue):
2802 (JSC::Bindings::QtConnectionObject::execute):
2803
dsmith@webkit.orgaba15862008-09-15 08:45:35 +000028042008-09-15 David Smith <catfish.man@gmail.com>
2805
2806 Reviewed by Dave Hyatt.
2807
2808 https://bugs.webkit.org/show_bug.cgi?id=20180
2809
2810 >2x speedup on querySelector[All] with :nth-child by removing the collectRulesOnly argument on SelectorChecker.
2811 With collectRulesOnly set to true (the default) an optimization is turned off, and no callers were intentionally leaving it true.
2812 querySelector[All] assumed that the default was probably the right way to go, and so ended up being slow.
2813
2814 * css/CSSStyleSelector.cpp:
2815 (WebCore::CSSStyleSelector::CSSStyleSelector):
2816 (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
2817 * css/CSSStyleSelector.h:
2818
hyatt@apple.com065494e2008-09-15 06:33:40 +000028192008-09-14 Dave Hyatt <hyatt@apple.com>
2820
2821 Refactor PlatformScrollbarWin's painting so that it is now done by ScrollbarThemeWin. PlatformScrollbarSafari
2822 is still painting itself (a subsequent patch will move its painting into ScrollbarThemeSafari).
2823
2824 Reviewed by Sam Weinig
2825
2826 * platform/ScrollBar.h:
2827 (WebCore::Scrollbar::client):
2828 (WebCore::Scrollbar::currentPos):
2829 (WebCore::Scrollbar::totalSize):
2830 * platform/ScrollbarTheme.h:
2831 * platform/ScrollbarThemeComposite.cpp:
2832 (WebCore::pageForScrollView):
2833 (WebCore::ScrollbarThemeComposite::paint):
2834 * platform/ScrollbarThemeComposite.h:
2835 (WebCore::ScrollbarThemeComposite::trackIsSinglePiece):
2836 * platform/win/PlatformScrollBar.h:
2837 * platform/win/PlatformScrollBarSafari.cpp:
2838 * platform/win/PlatformScrollBarWin.cpp:
2839 * platform/win/ScrollbarThemeSafari.h:
2840 (WebCore::ScrollbarThemeSafari::hasButtons):
2841 (WebCore::ScrollbarThemeSafari::hasThumb):
2842 (WebCore::ScrollbarThemeSafari::backButtonRect):
2843 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
2844 (WebCore::ScrollbarThemeSafari::trackRect):
2845 (WebCore::ScrollbarThemeSafari::splitTrack):
2846 (WebCore::ScrollbarThemeSafari::paintTrack):
2847 (WebCore::ScrollbarThemeSafari::paintButton):
2848 (WebCore::ScrollbarThemeSafari::paintThumb):
2849 * platform/win/ScrollbarThemeWin.cpp:
2850 (WebCore::isRunningOnVistaOrLater):
2851 (WebCore::checkAndInitScrollbarTheme):
2852 (WebCore::ScrollbarThemeWin::ScrollbarThemeWin):
2853 (WebCore::ScrollbarThemeWin::themeChanged):
2854 (WebCore::ScrollbarThemeWin::hasThumb):
2855 (WebCore::ScrollbarThemeWin::backButtonRect):
2856 (WebCore::ScrollbarThemeWin::forwardButtonRect):
2857 (WebCore::ScrollbarThemeWin::trackRect):
2858 (WebCore::ScrollbarThemeWin::splitTrack):
2859 (WebCore::ScrollbarThemeWin::paintTrack):
2860 (WebCore::ScrollbarThemeWin::paintButton):
2861 (WebCore::gripperRect):
2862 (WebCore::paintGripper):
2863 (WebCore::ScrollbarThemeWin::paintThumb):
2864 (WebCore::ScrollbarThemeWin::thumbPosition):
2865 (WebCore::ScrollbarThemeWin::thumbLength):
2866 (WebCore::ScrollbarThemeWin::trackLength):
2867 * platform/win/ScrollbarThemeWin.h:
2868 (WebCore::ScrollbarThemeWin::hasButtons):
2869 (WebCore::ScrollbarThemeWin::trackIsSinglePiece):
2870
timothy@apple.comd91172c2008-09-15 05:38:00 +000028712008-09-14 Anthony Ricaud <rik24d@gmail.com>
2872
2873 Moving all resource graphs under the same container for future scalable feature.
2874 This is a speedup on resize but maybe a loss on changing the sorting function.
2875
2876 https://bugs.webkit.org/show_bug.cgi?id=20555
2877
2878 Reviewed by Timothy Hatcher.
2879
2880 * page/inspector/ResourcesPanel.js: Added a container for all resource graphs.
2881 Added WebInspector.ResourceGraph. No more _updateGraphBars on resize.
2882 * page/inspector/inspector.css: Edited corresponding rules and removed unnecessaries.
2883
ap@webkit.orga14074b2008-09-15 04:52:44 +000028842008-09-14 Alexey Proskuryakov <ap@webkit.org>
2885
2886 Reviewed by Maciej Stachowiak.
2887
2888 https://bugs.webkit.org/show_bug.cgi?id=20738
2889 compareBoundaryPoints gives incorrect results
2890
2891 Test: fast/dom/Range/compareBoundaryPoints-2.html
2892
2893 * dom/Range.cpp: (WebCore::Range::compareBoundaryPoints): Correct meanings of START_TO_END
2894 and END_TO_START.
2895 * page/DOMSelection.cpp: (WebCore::DOMSelection::addRange): Updated for this change.
2896
mjs@apple.com285bdcf2008-09-15 02:55:16 +000028972008-09-14 Maciej Stachowiak <mjs@apple.com>
2898
2899 Unreviewed build fix.
2900
mjs@apple.comcbb31e52008-09-15 03:10:35 +00002901 Trying again.
2902
2903 * bindings/js/JSQuarantinedObjectWrapper.cpp:
2904 (WebCore::JSQuarantinedObjectWrapper::hasInstance):
2905
29062008-09-14 Maciej Stachowiak <mjs@apple.com>
2907
2908 Unreviewed build fix.
2909
mjs@apple.com285bdcf2008-09-15 02:55:16 +00002910 Blind attempt to fix build. Correct parameters for hasInstance.
2911
2912 * bindings/js/JSQuarantinedObjectWrapper.cpp:
2913 (WebCore::JSQuarantinedObjectWrapper::hasInstance):
2914 * bindings/js/JSQuarantinedObjectWrapper.h:
2915
mitz@apple.come85f7362008-09-15 02:23:24 +000029162008-09-14 Dan Bernstein <mitz@apple.com>
2917
2918 Rubber-stamped by Sam Weinig.
2919
2920 - revert <http://trac.webkit.org/changeset/36382> because it exposed
2921 <https://bugs.webkit.org/show_bug.cgi?id=20846> and resulted in crashes
2922 on Tiger.
2923
2924 * platform/graphics/mac/FontCacheMac.mm:
2925 (WebCore::FontCache::getFontDataForCharacters):
2926 (WebCore::FontCache::getLastResortFallbackFont):
2927
hyatt@apple.comf18feec2008-09-15 00:56:11 +000029282008-09-14 Dave Hyatt <hyatt@apple.com>
2929
2930 Add a new ScrollbarThemeComposite base class that is shared by ScrollbarThemeSafari and
2931 ScrollbarThemeWin. Any scrollbar that wants to render by ScrollbarPart can subclass from this
2932 theme.
2933
2934 Reviewed by Sam Weinig
2935
2936 * WebCore.vcproj/WebCore.vcproj:
2937 * platform/win/ScrollbarThemeSafari.h:
2938 * platform/win/ScrollbarThemeWin.h:
2939
alp@webkit.orgd694e942008-09-15 00:20:15 +000029402008-09-14 Alp Toker <alp@nuanti.com>
2941
2942 https://bugs.webkit.org/show_bug.cgi?id=20320
2943 [GTK] A white rectangle is visible behind widgets with rounded corners
2944
2945 Sync bundled gtk2drawing.c to the latest version from Mozilla (coding
2946 style exempt).
2947
2948 Requested by Michael Monreal.
2949
2950 * platform/gtk/RenderThemeGtk.cpp:
2951 (WebCore::RenderThemeGtk::RenderThemeGtk):
2952 * platform/gtk/gtk2drawing.c:
2953 (moz_gtk_set_widget_name):
2954 (ensure_window_widget):
2955 (setup_widget_prototype):
2956 (ensure_button_arrow_widget):
2957 (moz_gtk_get_combo_box_inner_button):
2958 (moz_gtk_get_combo_box_button_inner_widgets):
2959 (ensure_combo_box_widgets):
2960 (moz_gtk_get_combo_box_entry_inner_widgets):
2961 (moz_gtk_get_combo_box_entry_arrow):
2962 (ensure_combo_box_entry_widgets):
2963 (ensure_toolbar_widget):
2964 (ensure_tooltip_widget):
2965 (ensure_menu_bar_widget):
2966 (ensure_menu_bar_item_widget):
2967 (ensure_menu_popup_widget):
2968 (ensure_menu_item_widget):
2969 (ensure_image_menu_item_widget):
2970 (ensure_menu_separator_widget):
2971 (ensure_check_menu_item_widget):
2972 (ensure_tree_header_cell_widget):
2973 (ensure_scrolled_window_widget):
2974 (moz_gtk_button_paint):
2975 (moz_gtk_init):
2976 (moz_gtk_button_get_inner_border):
2977 (moz_gtk_toggle_paint):
2978 (calculate_button_inner_rect):
2979 (calculate_arrow_rect):
2980 (moz_gtk_scrollbar_button_paint):
2981 (moz_gtk_scrollbar_thumb_paint):
2982 (moz_gtk_caret_paint):
2983 (moz_gtk_entry_paint):
2984 (moz_gtk_treeview_paint):
2985 (moz_gtk_tree_header_cell_paint):
2986 (moz_gtk_combo_box_paint):
2987 (moz_gtk_downarrow_paint):
2988 (moz_gtk_combo_box_entry_button_paint):
2989 (moz_gtk_toolbar_paint):
2990 (moz_gtk_tab_scroll_arrow_paint):
2991 (moz_gtk_menu_bar_paint):
2992 (moz_gtk_menu_item_paint):
2993 (moz_gtk_get_widget_border):
2994 (moz_gtk_get_combo_box_entry_button_size):
2995 (moz_gtk_get_tab_scroll_arrow_size):
2996 (moz_gtk_get_downarrow_size):
2997 (moz_gtk_images_in_menus):
2998 (moz_gtk_widget_paint):
2999 (moz_gtk_shutdown):
3000 * platform/gtk/gtkdrawing.h:
3001
hyatt@apple.com3ab48302008-09-14 23:55:16 +000030022008-09-14 David Hyatt <hyatt@apple.com>
3003
3004 Convert Mac, Gtk, wx and Qt over to the new ScrollbarTheme for
3005 painting. Mac and Gtk themes don't do anything and just let the
3006 underlying widget paint. Qt now uses the theme to paint. wx doesn't
3007 do anything yet.
3008
3009 Reviewed by Sam Weinig
3010
3011 * platform/ScrollBar.cpp:
3012 (WebCore::Scrollbar::paint):
3013 * platform/ScrollBar.h:
3014 (WebCore::Scrollbar::value):
3015 (WebCore::Scrollbar::visibleSize):
3016 (WebCore::Scrollbar::maximum):
3017 (WebCore::Scrollbar::lineStep):
3018 (WebCore::Scrollbar::pageStep):
3019 (WebCore::Scrollbar::pixelStep):
3020 (WebCore::Scrollbar::pressedPart):
3021 (WebCore::Scrollbar::hoveredPart):
3022 (WebCore::Scrollbar::theme):
3023 * platform/ScrollbarTheme.h:
3024 (WebCore::ScrollbarTheme::paint):
3025 (WebCore::ScrollbarTheme::scrollbarThickness):
3026 (WebCore::ScrollbarTheme::supportsControlTints):
3027 (WebCore::ScrollbarTheme::themeChanged):
3028 * platform/gtk/PlatformScrollBar.h:
3029 * platform/gtk/PlatformScrollBarGtk.cpp:
3030 * platform/mac/PlatformScrollBar.h:
3031 * platform/mac/PlatformScrollBarMac.mm:
3032 * platform/qt/PlatformScrollBar.h:
3033 * platform/qt/PlatformScrollBarQt.cpp:
3034 * platform/qt/ScrollbarThemeQt.cpp:
3035 (WebCore::styleOptionSlider):
3036 * platform/qt/ScrollbarThemeQt.h:
3037 (WebCore::ScrollbarThemeQt::paint):
3038 * platform/win/PlatformScrollBarSafari.cpp:
3039 (WebCore::PlatformScrollbar::paint):
3040 * platform/win/ScrollbarThemeSafari.h:
3041 (WebCore::ScrollbarThemeSafari::supportsControlTints):
3042 * platform/wx/PlatformScrollBar.h:
3043 * platform/wx/TemporaryLinkStubs.cpp:
3044 (PlatformScrollbar::~PlatformScrollbar):
3045
weinig@apple.comcb93e262008-09-14 21:36:11 +000030462008-09-14 Sam Weinig <sam@webkit.org>
3047
weinig@apple.com6ef2b872008-09-14 22:15:28 +00003048 Qt build fix.
3049
3050 * platform/qt/PlatformScrollBarQt.cpp:
3051
30522008-09-14 Sam Weinig <sam@webkit.org>
3053
weinig@apple.com064861a2008-09-14 22:12:49 +00003054 Reviewed by Mark Rowe.
3055
3056 Remove extraneous semicolons.
3057
3058 * bindings/scripts/CodeGeneratorObjC.pm:
3059 * html/HTMLLinkElement.cpp:
3060 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
3061 * html/HTMLScriptElement.cpp:
3062 (WebCore::HTMLScriptElement::charsetAttributeValue):
3063 (WebCore::HTMLScriptElement::typeAttributeValue):
3064 * platform/graphics/qt/GradientQt.cpp:
3065 (WebCore::Gradient::platformGradient):
3066 * platform/qt/ScrollViewQt.cpp:
3067 (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
3068 * platform/win/ScrollViewWin.cpp:
3069 (WebCore::ScrollView::updateScrollbars):
3070 * rendering/RenderBlock.cpp:
3071 (WebCore::RenderBlock::paintEllipsisBoxes):
3072 * svg/SVGPathSegList.cpp:
3073 (WebCore::SVGPathSegList::toPathData):
3074
30752008-09-14 Sam Weinig <sam@webkit.org>
3076
weinig@apple.comcb93e262008-09-14 21:36:11 +00003077 Qt build fix.
3078
weinig@apple.com31311a62008-09-14 22:00:15 +00003079 * platform/qt/ScrollViewQt.cpp:
3080 (WebCore::ScrollView::updateScrollbars):
3081
30822008-09-14 Sam Weinig <sam@webkit.org>
3083
3084 Qt build fix.
3085
weinig@apple.comcb93e262008-09-14 21:36:11 +00003086 * platform/qt/PlatformScrollBarQt.cpp:
3087 (WebCore::PlatformScrollbar::PlatformScrollbar):
3088 (WebCore::PlatformScrollbar::paint):
3089
jmalonzo@webkit.org65e836c2008-09-14 01:57:13 +000030902008-09-13 Jan Michael Alonzo <jmalonzo@webkit.org>
3091
3092 Gtk build fix, not reviewed.
3093
3094 * platform/gtk/PlatformScrollBarGtk.cpp:
3095 (PlatformScrollbar::PlatformScrollbar):
3096 * platform/gtk/ScrollViewGtk.cpp:
3097 (WebCore::ScrollView::updateScrollbars):
3098
hyatt@apple.comd62f5bf2008-09-14 00:32:19 +000030992008-09-13 Dave Hyatt <hyatt@apple.com>
3100
hyatt@apple.com21ab7c62008-09-14 01:26:22 +00003101 Remove scrollbar's setRect method. Clients can now just call setFrameGeometry (the corresponding Widget) method
3102 to set the dimensions of a scrollbar.
3103
3104 Reviewed by Sam Weinig
3105
3106 * platform/ScrollBar.h:
3107 * platform/gtk/PlatformScrollBar.h:
3108 * platform/gtk/PlatformScrollBarGtk.cpp:
3109 (PlatformScrollbar::setFrameGeometry):
3110 * platform/gtk/ScrollViewGtk.cpp:
3111 (WebCore::ScrollView::updateScrollbars):
3112 * platform/mac/PlatformScrollBarMac.mm:
3113 * platform/qt/PlatformScrollBarQt.cpp:
3114 * platform/qt/ScrollViewQt.cpp:
3115 (WebCore::ScrollView::updateScrollbars):
3116 * platform/win/PlatformScrollBar.h:
3117 * platform/win/PlatformScrollBarSafari.cpp:
3118 (WebCore::PlatformScrollbar::PlatformScrollbar):
3119 (WebCore::PlatformScrollbar::setFrameGeometry):
3120 * platform/win/PlatformScrollBarWin.cpp:
3121 (WebCore::PlatformScrollbar::PlatformScrollbar):
3122 (WebCore::PlatformScrollbar::setFrameGeometry):
3123 * platform/win/PopupMenuWin.cpp:
3124 (WebCore::PopupWndProc):
3125 * platform/win/ScrollViewWin.cpp:
3126 (WebCore::ScrollView::updateScrollbars):
3127 * platform/wx/PlatformScrollBar.h:
3128 * platform/wx/TemporaryLinkStubs.cpp:
3129 (PlatformScrollbar::updateThumbProportion):
3130 * rendering/RenderLayer.cpp:
3131 (WebCore::RenderLayer::positionOverflowControls):
3132 * rendering/RenderListBox.cpp:
3133 (WebCore::RenderListBox::paintScrollbar):
3134
31352008-09-13 Dave Hyatt <hyatt@apple.com>
3136
hyatt@apple.comed9485a2008-09-14 01:06:57 +00003137 Remove setEnabled() from all Scrollbar classes that were just using their Widget base class methods.
3138
3139 Reviewed by Sam Weinig
3140
3141 * platform/ScrollBar.h:
3142 * platform/gtk/PlatformScrollBar.h:
3143 * platform/gtk/PlatformScrollBarGtk.cpp:
3144 * platform/mac/PlatformScrollBar.h:
3145 * platform/mac/PlatformScrollBarMac.mm:
3146 * platform/win/PlatformScrollBar.h:
3147 * platform/win/PlatformScrollBarSafari.cpp:
3148 * platform/win/PlatformScrollBarWin.cpp:
3149 * platform/wx/PlatformScrollBar.h:
3150 * platform/wx/TemporaryLinkStubs.cpp:
3151 (PlatformScrollbar::~PlatformScrollbar):
3152
31532008-09-13 Dave Hyatt <hyatt@apple.com>
3154
hyatt@apple.com64d98032008-09-14 00:58:29 +00003155 Remove width()/height() from Scrollbar now that it derives from Widget. Remove width()/height() from
3156 all PlatformScrollbar subclasses that just called the Widget base class versions of those methods.
3157
3158 Reviewed by Sam Weinig
3159
3160 * platform/ScrollBar.h:
3161 * platform/gtk/PlatformScrollBar.h:
3162 * platform/gtk/PlatformScrollBarGtk.cpp:
3163 * platform/mac/PlatformScrollBar.h:
3164 * platform/mac/PlatformScrollBarMac.mm:
3165 * platform/win/PlatformScrollBarSafari.cpp:
3166 * platform/win/PlatformScrollBarWin.cpp:
3167 * platform/wx/PlatformScrollBar.h:
3168 * platform/wx/TemporaryLinkStubs.cpp:
3169 (PlatformScrollbar::~PlatformScrollbar):
3170
31712008-09-13 Dave Hyatt <hyatt@apple.com>
3172
hyatt@apple.comd62f5bf2008-09-14 00:32:19 +00003173 Move stopTimerIfNeeded out of PlatformScrollbar destructors and into Scrollbar.
3174
3175 Reviewed by Sam Weinig
3176
3177 * platform/ScrollBar.cpp:
3178 (WebCore::Scrollbar::~Scrollbar):
3179 * platform/ScrollBar.h:
3180 * platform/qt/PlatformScrollBarQt.cpp:
3181 (WebCore::PlatformScrollbar::~PlatformScrollbar):
3182 * platform/win/PlatformScrollBarSafari.cpp:
3183 (WebCore::PlatformScrollbar::~PlatformScrollbar):
3184 * platform/win/PlatformScrollBarWin.cpp:
3185 (WebCore::PlatformScrollbar::~PlatformScrollbar):
3186
hyatt@apple.coma3c52492008-09-13 23:57:08 +000031872008-09-13 David Hyatt <hyatt@apple.com>
3188
3189 Move maximum() from Qt's PlatformScrollbar to be a cross-platform
3190 function on Scrollbar. Fixes Qt build bustage.
3191
3192 Reviewed by Sam Weinig
3193
3194 * platform/ScrollBar.h:
3195 (WebCore::Scrollbar::orientation):
3196 (WebCore::Scrollbar::value):
3197 (WebCore::Scrollbar::maximum):
3198 * platform/qt/PlatformScrollBar.h:
3199
mitz@apple.comb3d22882008-09-13 23:06:59 +000032002008-09-13 Dan Bernstein <mitz@apple.com>
3201
3202 Reviewed by Sam Weinig.
3203
3204 - use the LastResort font for missing glyphs instead of showing the
3205 primary font's missing glyph
3206
3207 Test: platform/mac/fast/text/last-resort-font.html
3208
3209 * platform/graphics/mac/FontCacheMac.mm:
3210 (WebCore::FontCache::getFontDataForCharacters): Changed to return the
3211 last resort font if a substitute font cannot be found.
3212 (WebCore::FontCache::getLastResortFallbackFont): Removed an outdated
3213 comment (the user's preferred standard font is included in the search
3214 thanks to code in FontCache::getFontData()) and changed to return the
3215 LastResort font.
3216
hyatt@apple.com0c378c72008-09-13 22:59:05 +000032172008-09-13 Dave Hyatt <hyatt@apple.com>
3218
3219 This patch adds ScrollbarTheme to the build. ScrollbarTheme is similar to RenderTheme (but for
3220 scrollbars only). For now ScrollbarTheme just handles returning the size of scrollbars. Subsequent
3221 patches will move rendering and hit testing functionality into this class.
3222
3223 Implemented ScrollbarTheme subclasses for four ports (Mac, Win, Gtk, Qt). The wxWidgets port does not
3224 implement scrollbars yet, so I added a temporary link stub to keep things compiling on wx.
3225
3226 Reviewed by Sam Weinig
3227
3228 * GNUmakefile.am:
3229 * WebCore.pro:
3230 * WebCore.vcproj/WebCore.vcproj:
3231 * platform/ScrollBar.cpp:
3232 (WebCore::Scrollbar::Scrollbar):
3233 * platform/ScrollBar.h:
3234 * platform/ScrollbarTheme.h: Added.
3235 (WebCore::ScrollbarTheme::~ScrollbarTheme):
3236 (WebCore::ScrollbarTheme::scrollbarThickness):
3237 (WebCore::ScrollbarTheme::themeChanged):
3238 * platform/gtk/ScrollbarThemeGtk.cpp: Added.
3239 (WebCore::ScrollbarTheme::nativeTheme):
3240 (WebCore::ScrollbarThemeGtk::~ScrollbarThemeGtk):
3241 (WebCore::ScrollbarThemeGtk::scrollbarThickness):
3242 * platform/gtk/ScrollbarThemeGtk.h: Added.
3243 * platform/mac/PlatformScrollBar.h:
3244 * platform/mac/ScrollbarThemeMac.cpp: Added.
3245 (WebCore::ScrollbarTheme::nativeTheme):
3246 (WebCore::):
3247 (WebCore::ScrollbarThemeMac::~ScrollbarThemeMac):
3248 (WebCore::ScrollbarThemeMac::scrollbarThickness):
3249 * platform/mac/ScrollbarThemeMac.h: Added.
3250 * platform/qt/PlatformScrollBarQt.cpp:
3251 * platform/qt/ScrollbarThemeQt.cpp: Added.
3252 (WebCore::ScrollbarTheme::nativeTheme):
3253 (WebCore::ScrollbarThemeQt::~ScrollbarThemeQt):
3254 (WebCore::ScrollbarThemeQt::scrollbarThickness):
3255 * platform/qt/ScrollbarThemeQt.h: Added.
3256 * platform/win/PlatformScrollBar.h:
3257 * platform/win/PlatformScrollBarSafari.cpp:
3258 * platform/win/PlatformScrollBarWin.cpp:
3259 * platform/win/PopupMenuWin.cpp:
3260 (WebCore::PopupMenu::calculatePositionAndSize):
3261 * platform/win/ScrollViewWin.cpp:
3262 (WebCore::ScrollView::updateScrollbars):
3263 (WebCore::ScrollView::themeChanged):
3264 * platform/win/ScrollbarThemeSafari.cpp: Added.
3265 (WebCore::ScrollbarTheme::nativeTheme):
3266 (WebCore::):
3267 (WebCore::ScrollbarThemeSafari::~ScrollbarThemeSafari):
3268 (WebCore::ScrollbarThemeSafari::scrollbarThickness):
3269 * platform/win/ScrollbarThemeSafari.h: Added.
3270 * platform/win/ScrollbarThemeWin.cpp: Added.
3271 (WebCore::ScrollbarTheme::nativeTheme):
3272 (WebCore::ScrollbarThemeWin::~ScrollbarThemeWin):
3273 (WebCore::ScrollbarThemeWin::scrollbarThickness):
3274 (WebCore::ScrollbarThemeWin::themeChanged):
3275 * platform/win/ScrollbarThemeWin.h: Added.
3276 * platform/wx/TemporaryLinkStubs.cpp:
3277 (ScrollbarTheme::nativeTheme):
3278 * rendering/RenderLayer.cpp:
3279 (WebCore::scrollCornerRect):
3280 * rendering/RenderTextControl.cpp:
3281 (WebCore::RenderTextControl::calcHeight):
3282 (WebCore::RenderTextControl::calcPrefWidths):
3283
cfleizach@apple.comd26c2762008-09-13 21:05:18 +000032842008-09-13 Chris Fleizach <cfleizach@apple.com>
3285
3286 Reviewed by Timothy Hatcher.
3287
3288 <rdar://problem/5060439> Web elements should have an AXTopLevelUIElement
3289
3290 * page/mac/AccessibilityObjectWrapper.mm:
3291 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3292
mitz@apple.com6307c9f2008-09-13 20:27:37 +000032932008-09-13 Dan Bernstein <mitz@apple.com>
3294
3295 Reviewed by Timothy Hatcher.
3296
3297 - fix <rdar://problem/6171280> REGRESSION (r35667): Assertion failure in WebCore::FrameView::scheduleRelayout() when releasing a page with counters from the b/f cache
3298
3299 No regression test because the back/forward cache is disabled in DumpRenderTree
3300
3301 * rendering/RenderContainer.cpp:
3302 (WebCore::RenderContainer::invalidateCounters): Bail out if the document
3303 is being destroyed.
3304
kevino@webkit.org1e178ee2008-09-13 18:48:39 +000033052008-09-13 Kevin Ollivier <kevino@theolliviers.com>
3306
3307 wx build fixes for new methods recently introduced.
3308
3309 * platform/graphics/wx/AffineTransformWx.cpp:
3310 (WebCore::AffineTransform::AffineTransform):
3311 (WebCore::AffineTransform::setMatrix):
3312 (WebCore::AffineTransform::setA):
3313 (WebCore::AffineTransform::setB):
3314 (WebCore::AffineTransform::setC):
3315 (WebCore::AffineTransform::setD):
3316 (WebCore::AffineTransform::setE):
3317 (WebCore::AffineTransform::setF):
3318 * platform/wx/LocalizedStringsWx.cpp:
3319 (WebCore::AXDefinitionListTermText):
3320 (WebCore::AXDefinitionListDefinitionText):
3321
hyatt@apple.com30ed5442008-09-13 18:39:58 +000033222008-09-12 Dave Hyatt <hyatt@apple.com>
3323
3324 Move the member variables of PlatformScrollbar up into Scrollbar. Move autoscroll timer handling
3325 up into scrollbar. Make sure a bunch of cross-platform code now just uses "Scrollbar" instead of
3326 "PlatformScrollbar."
3327
3328 Reviewed by Sam Weinig
3329
3330 * WebCore.vcproj/WebCore.vcproj:
3331 * editing/EditorCommand.cpp:
3332 * page/EventHandler.cpp:
3333 (WebCore::EventHandler::selectCursor):
3334 (WebCore::EventHandler::handleMousePressEvent):
3335 (WebCore::EventHandler::handleMouseMoveEvent):
3336 * page/EventHandler.h:
3337 * page/MouseEventWithHitTestResults.cpp:
3338 (WebCore::MouseEventWithHitTestResults::scrollbar):
3339 * page/MouseEventWithHitTestResults.h:
3340 * page/gtk/EventHandlerGtk.cpp:
3341 (WebCore::EventHandler::passMousePressEventToScrollbar):
3342 * page/mac/EventHandlerMac.mm:
3343 (WebCore::EventHandler::passMousePressEventToScrollbar):
3344 * page/qt/EventHandlerQt.cpp:
3345 (WebCore::EventHandler::passMousePressEventToScrollbar):
3346 * page/win/EventHandlerWin.cpp:
3347 (WebCore::EventHandler::passMousePressEventToScrollbar):
3348 * page/wx/EventHandlerWx.cpp:
3349 (WebCore::EventHandler::passMousePressEventToScrollbar):
3350 * platform/PopupMenu.h:
3351 * platform/ScrollBar.cpp:
3352 (WebCore::Scrollbar::Scrollbar):
3353 (WebCore::Scrollbar::autoscrollTimerFired):
3354 (WebCore::Scrollbar::autoscrollPressedPart):
3355 (WebCore::Scrollbar::startTimerIfNeeded):
3356 (WebCore::Scrollbar::stopTimerIfNeeded):
3357 (WebCore::Scrollbar::pressedPartScrollDirection):
3358 (WebCore::Scrollbar::pressedPartScrollGranularity):
3359 * platform/ScrollBar.h:
3360 (WebCore::Scrollbar::handleMousePressEvent):
3361 (WebCore::Scrollbar::invalidatePart):
3362 (WebCore::Scrollbar::thumbUnderMouse):
3363 * platform/ScrollView.h:
3364 * platform/ScrollbarClient.h: Added.
3365 (WebCore::ScrollbarClient::~ScrollbarClient):
3366 * platform/gtk/ScrollViewGtk.cpp:
3367 (WebCore::ScrollView::scrollbarUnderMouse):
3368 * platform/qt/PlatformScrollBar.h:
3369 * platform/qt/PlatformScrollBarQt.cpp:
3370 (WebCore::PlatformScrollbar::PlatformScrollbar):
3371 (WebCore::scrollbarPart):
3372 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
3373 (WebCore::PlatformScrollbar::handleMouseOutEvent):
3374 (WebCore::PlatformScrollbar::handleMousePressEvent):
3375 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
3376 * platform/qt/ScrollViewQt.cpp:
3377 (WebCore::ScrollView::scrollbarUnderMouse):
3378 (WebCore::ScrollView::wheelEvent):
3379 * platform/win/PlatformScrollBar.h:
3380 * platform/win/PlatformScrollBarSafari.cpp:
3381 (WebCore::PlatformScrollbar::PlatformScrollbar):
3382 * platform/win/PlatformScrollBarWin.cpp:
3383 (WebCore::PlatformScrollbar::PlatformScrollbar):
3384 * platform/win/ScrollViewWin.cpp:
3385 (WebCore::ScrollView::scrollbarUnderMouse):
3386 * rendering/HitTestResult.cpp:
3387 (WebCore::HitTestResult::setScrollbar):
3388 * rendering/HitTestResult.h:
3389 (WebCore::HitTestResult::scrollbar):
3390 * rendering/RenderLayer.cpp:
3391 (WebCore::RenderLayer::hitTestOverflowControls):
3392 * rendering/RenderLayer.h:
3393 * rendering/RenderListBox.h:
3394
sfalken@apple.comb4e407e2008-09-13 02:59:00 +000033952008-09-12 Steve Falkenburg <sfalken@apple.com>
3396
3397 Fix Mac build.
3398
3399 * css/CSSStyleSelector.cpp:
3400 (WebCore::getTransformOperationType):
3401
dino@apple.comf937dc62008-09-13 00:45:39 +000034022008-09-12 Chris Marrin <cmarrin@apple.com>
3403
3404 Reviewed by Dave Hyatt.
3405
3406 Make transform animation behavior match spec
3407 https://bugs.webkit.org/show_bug.cgi?id=20770
3408
3409 Tests: transitions/transform-op-list-match.html
3410 transitions/transform-op-list-no-match.html
3411
3412 * css/CSSStyleSelector.cpp:
3413 * css/CSSStyleSelector.h:
3414 * page/animation/AnimationBase.cpp:
3415 * page/animation/AnimationBase.h:
3416 * page/animation/ImplicitAnimation.cpp:
3417 * page/animation/ImplicitAnimation.h:
3418 * page/animation/KeyframeAnimation.cpp:
3419 * page/animation/KeyframeAnimation.h:
3420 * rendering/RenderLayer.cpp:
3421 * rendering/style/RenderStyle.cpp:
3422 * rendering/style/RenderStyle.h:
3423
timothy@apple.comab374dd2008-09-12 22:43:38 +000034242008-09-12 Ojan Vafai <ojan@chromium.org>
3425
3426 Properly escape contents of links added to the inspector.
3427 For now, just build the link with the DOM and get the
3428 outerHTML. Eventually, we probably just want to do
3429 this entirely with the DOM.
3430
3431 Reviewed by Timothy Hatcher.
3432
3433 https://bugs.webkit.org/show_bug.cgi?id=20684
3434
3435 * manual-tests/inspector/escape-links.html: Added.
3436 * page/inspector/StylesSidebarPane.js:
3437 * page/inspector/inspector.js:
3438 * page/inspector/utilities.js:
3439
adele@apple.com87fb3c72008-09-12 22:14:13 +000034402008-09-12 Adele Peterson <adele@apple.com>
3441
3442 Reviewed by John Sullivan and Kevin McCullough.
3443
3444 Fix for <rdar://problem/6216951> REGRESSION (r36000?): Crash due to infinite recursion into EventHandler::hitTestResultAtPoint() with disconnected frames
3445
3446 * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
3447 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
3448 cause infinite recursion. This change checks that we're not already on the main frame before hit testing again.
3449
kmccullough@apple.combdba2e32008-09-12 22:08:56 +000034502008-09-12 Kevin McCullough <kmccullough@apple.com>
3451
3452 RS by Tim .
3453
3454 Re-introducing the code since it was not the cause of the crash.
3455 See r36343.
3456
3457 * rendering/RenderObject.cpp:
3458 (WebCore::RenderObject::canBeProgramaticallyScrolled):
3459 * rendering/RenderObject.h:
3460
dino@apple.comf712ed02008-09-12 21:54:57 +000034612008-09-12 Chris Marrin <cmarrin@apple.com>
3462
3463 Reviewed by Dave Hyatt.
3464
3465 When changing one animation in a list, don't reset other animations
3466 https://bugs.webkit.org/show_bug.cgi?id=20675
3467
3468 Test: animations/change-one-anim.html
3469
3470 * page/animation/AnimationBase.cpp:
3471 (WebCore::AnimationBase::getNumProperties):
3472 * page/animation/AnimationBase.h:
3473 * page/animation/AnimationController.cpp:
3474 * page/animation/CompositeAnimation.cpp:
3475 (WebCore::CompositeAnimation::updateKeyframeAnimations):
3476 * page/animation/CompositeAnimation.h:
3477 * page/animation/ImplicitAnimation.cpp:
3478 * page/animation/KeyframeAnimation.cpp:
3479 * page/animation/KeyframeAnimation.h:
3480 (WebCore::KeyframeAnimation::setIndex):
3481
beidson@apple.com521e2b52008-09-12 18:40:03 +000034822008-09-12 Brady Eidson <beidson@apple.com>
3483
3484 Reviewed by Mitz Pettel
3485
3486 Fix the ASSERT and failure in webarchive/archive-empty-frame-source.html
3487
3488 * loader/DocumentLoader.cpp:
3489 (WebCore::DocumentLoader::mainResource): Further restoration of original WebArchive behavior.
3490 Subresources can never be created from nil data, but there is always a MainResource, whether
3491 or not there's any data. So in the case where the main resource has no data, fake it for the
3492 sake of creating the ArchiveResource.
3493
hyatt@apple.com818ffe92008-09-12 18:37:23 +000034942008-09-12 Dave Hyatt <hyatt@apple.com>
3495
3496 Preparation for major scrollbar rearchitecture. Eliminate the concept of non-widget based
3497 scrollbars (which we never supported anyway). Make Scrollbar derive from Widget directly.
3498 Remove all the isWidget and hasPlatformScrollbars guards.
3499
3500 Reviewed by Tim Hatcher
3501
3502 * platform/ScrollBar.h:
3503 * platform/gtk/PlatformScrollBar.h:
3504 * platform/mac/PlatformScrollBar.h:
3505 * platform/qt/PlatformScrollBar.h:
3506 * platform/win/PlatformScrollBar.h:
3507 * platform/win/ScrollViewWin.cpp:
3508 (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
3509 (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
3510 * platform/wx/PlatformScrollBar.h:
3511 * rendering/RenderLayer.cpp:
3512 (WebCore::RenderLayer::horizontalScrollbarWidget):
3513 (WebCore::RenderLayer::verticalScrollbarWidget):
3514 (WebCore::RenderLayer::createScrollbar):
3515 (WebCore::RenderLayer::destroyScrollbar):
3516 * rendering/RenderListBox.cpp:
3517 (WebCore::RenderListBox::~RenderListBox):
3518 (WebCore::RenderListBox::updateFromElement):
3519 (WebCore::RenderListBox::isPointInOverflowControl):
3520
mitz@apple.com0bef1302008-09-12 18:22:07 +000035212008-09-12 Dan Bernstein <mitz@apple.com>
3522
3523 Reviewed by Sam Weinig.
3524
3525 - https://bugs.webkit.org/show_bug.cgi?id=20793 clean up page/animation
3526
3527 * page/animation/AnimationController.cpp:
3528 * page/animation/AnimationController.h:
3529 * page/animation/CompositeAnimation.cpp:
3530 * page/animation/CompositeAnimation.h:
3531 * page/animation/ImplicitAnimation.cpp:
3532 * page/animation/ImplicitAnimation.h:
3533 * page/animation/KeyframeAnimation.cpp:
3534 * page/animation/KeyframeAnimation.h:
3535
timothy@apple.com43203432008-09-12 04:44:40 +000035362008-09-11 Timothy Hatcher <timothy@apple.com>
3537
3538 Add a renderedImage method to DOMNode to get an image
3539 of the rendering for the node and it's descendants.
3540
3541 <rdar://problem/5849349> Would like API to create
3542 an image for a DOM node
3543
3544 Reviewed by Oliver Hunt.
3545
3546 * bindings/objc/DOM.mm:
3547 (-[DOMNode renderedImage]): Call Frame::nodeImage.
3548 * bindings/objc/DOMPrivate.h:
3549 * page/Frame.h:
3550 * page/mac/FrameMac.mm:
3551 (WebCore::Frame::nodeImage):
3552
dino@apple.com9300a0b2008-09-12 00:36:31 +000035532008-09-08 Chris Marrin <cmarrin@apple.com>
3554
3555 Reviewed by Dave Hyatt
3556
3557 Need to support comma separated list of key times in keyframes selectors
3558 https://bugs.webkit.org/show_bug.cgi?id=20680
3559
3560 Test: animations/keyframes-comma-separated.html
3561
3562 * css/CSSGrammar.y:
3563 * css/CSSParser.cpp:
3564 (WebCore::CSSParser::createKeyframeRule):
3565 * css/CSSParser.h:
3566 * css/CSSStyleSelector.cpp:
3567 (WebCore::CSSStyleSelector::addKeyframeStyle):
3568 * css/WebKitCSSKeyframeRule.cpp:
3569 (WebCore::WebKitCSSKeyframeRule::WebKitCSSKeyframeRule):
3570 (WebCore::WebKitCSSKeyframeRule::cssText):
3571 (WebCore::WebKitCSSKeyframeRule::parseKeyString):
3572 * css/WebKitCSSKeyframeRule.h:
3573 (WebCore::WebKitCSSKeyframeRule::keyText):
3574 (WebCore::WebKitCSSKeyframeRule::setKeyText):
3575 (WebCore::WebKitCSSKeyframeRule::getKeys):
3576 * css/WebKitCSSKeyframesRule.cpp:
3577 (WebCore::WebKitCSSKeyframesRule::append):
3578 (WebCore::WebKitCSSKeyframesRule::insertRule):
3579 (WebCore::WebKitCSSKeyframesRule::deleteRule):
3580 (WebCore::WebKitCSSKeyframesRule::findRule):
3581 (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
3582 * css/WebKitCSSKeyframesRule.h:
3583 * page/animation/AnimationBase.cpp:
3584 (WebCore::AnimationBase::blendProperties):
3585
kmccullough@apple.com0f9f23a2008-09-11 22:57:09 +000035862008-09-11 Kevin McCullough <kmccullough@apple.com>
3587
3588 RS by Tim.
3589
3590 Reverting because this caused a crash.
3591
3592 * rendering/RenderObject.cpp:
3593 (WebCore::RenderObject::canBeProgramaticallyScrolled):
3594 (WebCore::RenderObject::hasScrollableView):
3595 * rendering/RenderObject.h:
3596
dino@apple.com19853b32008-09-11 21:59:08 +000035972008-09-11 Dean Jackson <dino@apple.com>
3598
3599 Reviewed by Dan Bernstein.
3600
3601 Fix assertion on transition property "none"
3602 https://bugs.webkit.org/show_bug.cgi?id=20751
3603
3604 Test: transitions/transition-end-event-set-none.html
3605
3606 * page/animation/CompositeAnimation.cpp:
3607 (WebCore::CompositeAnimation::updateTransitions):
3608
dsmith@webkit.orge6ea48f2008-09-11 21:41:33 +000036092008-09-11 David Smith <catfish.man@gmail.com>
3610
dsmith@webkit.org08103d92008-09-11 21:54:30 +00003611 Rubber-stamped by mitzpettel.
3612
3613 Remove an accidentally added extra file.
3614
3615 * WebCore: Removed.
3616
36172008-09-11 David Smith <catfish.man@gmail.com>
3618
dsmith@webkit.orge6ea48f2008-09-11 21:41:33 +00003619 Reviewed by Darin
3620
3621 https://bugs.webkit.org/show_bug.cgi?id=20180
3622
3623 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.
3624
3625 * WebCore.xcodeproj/project.pbxproj: Add NodeRenderStyle.h
3626 * css/CSSStyleSelector.cpp: include NodeRenderStyle.h
3627 * dom/Element.cpp: include NodeRenderStyle.h
3628 * dom/Node.cpp: Remove the definition of renderStyle()
3629 (WebCore::Node::nonRendererRenderStyle):
3630 * dom/Node.h: Make renderStyle() nonvirtual and add nonRendererRenderStyle()
3631 * dom/NodeRenderStyle.h: Added.
3632 (WebCore::Node::renderStyle): Inline the common case of this, call nonRendererRenderStyle for the part that needed to be virtual
3633 * html/HTMLOptGroupElement.cpp: include NodeRenderStyle.h
3634 * html/HTMLOptGroupElement.h:
3635 (WebCore::HTMLOptGroupElement::nonRendererRenderStyle): override to return m_style
3636 * html/HTMLOptionElement.cpp: include NodeRenderStyle.h
3637 * html/HTMLOptionElement.h:
3638 (WebCore::HTMLOptionElement::nonRendererRenderStyle): override to return m_style
3639 * rendering/RenderListBox.cpp: include NodeRenderStyle.h
3640 * rendering/RenderMenuList.cpp: include NodeRenderStyle.h
3641 * svg/SVGUseElement.cpp: include NodeRenderStyle.h
3642
kmccullough@apple.com38d3b0f2008-09-11 17:39:12 +000036432008-09-11 Kevin McCullough <kmccullough@apple.com>
3644
3645 Reviewed by Adele and Tim.
3646
3647 <rdar://problem/6100597> REGRESSION: clicking on search results in Web
3648 Inspector does not scroll to the line of the results (20167)
3649 - This was put in by Max to fix auto scrolling but is not correct for
3650 the whole web: rdar://problem/6213098
3651
3652 * rendering/RenderObject.cpp:
3653 (WebCore::RenderObject::canBeProgramaticallyScrolled):
3654 * rendering/RenderObject.h:
3655
cfleizach@apple.com6a3b1452008-09-11 16:24:09 +000036562008-09-11 Chris Fleizach <cfleizach@apple.com>
3657
3658 Reviewed by Beth Dakin
3659
3660 <rdar://problem/6210511> AX: if a frame has a title, that should be reported as the AXWebArea's title
3661
3662 Test: accessibility/frame-with-title.html
3663
3664 * page/AccessibilityRenderObject.cpp:
3665 (WebCore::AccessibilityRenderObject::accessibilityDescription):
3666
hausmann@webkit.orge8f8ffd2008-09-11 07:34:42 +000036672008-09-11 Dirk Schulze <vbs85@gmx.de>
3668
3669 Reviewed by Simon.
3670
hausmann@webkit.orgea57c432008-09-11 08:03:07 +00003671 Fixed stroke() and strokeRect() to support gradients
3672 and patterns on Qt.
3673
3674 [Qt] Canvas stroke don't work for gradients and patterns
3675 [https://bugs.webkit.org/show_bug.cgi?id=20749]
3676
3677 * platform/graphics/qt/GraphicsContextQt.cpp:
3678 (WebCore::GraphicsContext::strokePath):
3679 (WebCore::GraphicsContext::strokeRect):
3680
36812008-09-11 Dirk Schulze <vbs85@gmx.de>
3682
3683 Reviewed by Simon.
3684
hausmann@webkit.orgc11e3b72008-09-11 07:37:42 +00003685 https://bugs.webkit.org/show_bug.cgi?id=20729
3686
3687 Fixed canvas gradients for Qt
3688
3689 [Qt] Canvas gradients don't work as expected
3690 [https://bugs.webkit.org/show_bug.cgi?id=20729]
3691
3692 * platform/graphics/qt/GradientQt.cpp:
3693 (WebCore::Gradient::platformGradient):
3694
36952008-09-11 Dirk Schulze <vbs85@gmx.de>
3696
3697 Reviewed by Simon.
3698
hausmann@webkit.orge8f8ffd2008-09-11 07:34:42 +00003699 https://bugs.webkit.org/show_bug.cgi?id=20568
3700
3701 Add support for patterns to Qt.
3702
3703 * platform/graphics/qt/PatternQt.cpp:
3704 (WebCore::Pattern::createPlatformPattern):
3705
mitz@apple.com442c5892008-09-10 18:21:14 +000037062008-09-10 Dan Bernstein <mitz@apple.com>
3707
3708 Reviewed by Sam Weinig.
3709
3710 - clean up AnimationBase
3711
3712 * page/animation/AnimationBase.cpp:
3713 * page/animation/AnimationBase.h:
3714 * page/animation/CompositeAnimation.cpp:
3715 * page/animation/ImplicitAnimation.cpp:
3716 * page/animation/ImplicitAnimation.h:
3717 * page/animation/KeyframeAnimation.cpp:
3718 * page/animation/KeyframeAnimation.h:
3719
ap@webkit.orgbaf12872008-09-10 16:42:10 +000037202008-09-10 Alexey Proskuryakov <ap@webkit.org>
3721
3722 Reviewed by Darin Adler.
3723
3724 https://bugs.webkit.org/show_bug.cgi?id=20741
3725 REGRESSION: ISO-8859-8-I encoding is registered incorrectly
3726
3727 Turns out that there were no real behavior changes for 8859-8, as it was only a debug-only
3728 check to ignore this specific registration that was failing. Yet, I decided to add a bunch of
3729 tests for ISO-8859-8 encoding aliases, as we handle them in a quite complicated manner.
3730
3731 I also found and fixed a potential crasher for non-Mac ports.
3732
3733 Tests: fast/encoding/hebrew/8859-8-e.html
3734 fast/encoding/hebrew/8859-8-i.html
3735 fast/encoding/hebrew/8859-8.html
3736 fast/encoding/hebrew/csISO88598I.html
3737 fast/encoding/hebrew/hebrew.html
3738 fast/encoding/hebrew/iso-ir-138.html
3739 fast/encoding/hebrew/logical.html
3740
3741 * platform/text/TextEncodingRegistry.cpp: (WebCore::checkExistingName): Check for iso-8859-8
3742 (case-insensitively, because different versions of ICU report this MIME name in different
3743 case).
3744
3745 * platform/text/TextCodecICU.cpp:
3746 (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated some comments.
3747 (WebCore::TextCodecICU::registerExtendedCodecs): Try both MIME and IANA names here, too.
3748 There are four names in ICU that only have MIME names (x-mac-* ones), so we could end up
3749 with an encoding map entry, but no codec for these. This was not an issue on the Mac, as
3750 we also support these via TEC (which we should stop doing), but on Windows, this would
3751 likely crash.
3752
hyatt@apple.com0197e6b2008-09-10 05:29:46 +000037532008-09-09 Dave Hyatt <hyatt@apple.com
3754
3755 Resurrect PlatformScrollbarWin.
3756
3757 Reviewed by Adam Roben
3758
3759 * WebCore.vcproj/WebCore.vcproj:
3760 * platform/win/PlatformScrollBarWin.cpp:
3761 (WebCore::isRunningOnVistaOrLater):
3762 (WebCore::checkAndInitScrollbarTheme):
3763 (WebCore::PlatformScrollbar::PlatformScrollbar):
3764 (WebCore::PlatformScrollbar::invalidateTrack):
3765 (WebCore::PlatformScrollbar::invalidatePart):
3766 (WebCore::PlatformScrollbar::paint):
3767 (WebCore::PlatformScrollbar::hasButtons):
3768 (WebCore::PlatformScrollbar::hasThumb):
3769 (WebCore::PlatformScrollbar::backButtonRect):
3770 (WebCore::PlatformScrollbar::forwardButtonRect):
3771 (WebCore::PlatformScrollbar::trackRect):
3772 (WebCore::PlatformScrollbar::gripperRect):
3773 (WebCore::PlatformScrollbar::thumbLength):
3774 (WebCore::PlatformScrollbar::paintButton):
3775 (WebCore::PlatformScrollbar::paintTrack):
3776 (WebCore::PlatformScrollbar::paintThumb):
3777 (WebCore::PlatformScrollbar::paintGripper):
3778 (WebCore::PlatformScrollbar::hitTest):
3779 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
3780 (WebCore::PlatformScrollbar::handleMouseOutEvent):
3781 (WebCore::PlatformScrollbar::themeChanged):
3782
cwzwarich@webkit.org8a334572008-09-10 03:22:04 +000037832008-09-09 Cameron Zwarich <cwzwarich@uwaterloo.ca>
3784
3785 Reviewed by Maciej Stachowiak.
3786
3787 Bug 20759: Remove MacroAssembler
3788 <https://bugs.webkit.org/show_bug.cgi?id=20759>
3789
3790 Make the necessary changes to ForwardingHeaders to remove
3791 MacroAssembler.
3792
3793 * ForwardingHeaders/masm/IA32MacroAsm.h: Removed.
3794 * ForwardingHeaders/masm/MacroAssembler.h: Removed.
3795 * ForwardingHeaders/masm/X86Assembler.h: Added.
3796
alp@webkit.org509e3d42008-09-10 01:26:20 +000037972008-09-09 Alp Toker <alp@nuanti.com>
3798
3799 Reviewed by Dave Hyatt.
3800
3801 https://bugs.webkit.org/show_bug.cgi?id=16792
3802 [GTK] Fails to render Japanese/Chinese text with simple path
3803
3804 https://bugs.webkit.org/show_bug.cgi?id=16942
3805 [GTK] Oddities in font selection and fall back
3806
3807 https://bugs.webkit.org/show_bug.cgi?id=16862
3808 [GTK] Custom fonts hard-coded to use grayscale antialiasing and no hinting
3809
3810 GTK+ font fixes and enhancements.
3811
3812 Implement font fallback for the simple FontConfig-based text path and
3813 improve the Pango-based complex text path to make use of requested
3814 font properties and available font selection.
3815
3816 Add text shadow support to the complex path.
3817
3818 * platform/graphics/gtk/FontCacheGtk.cpp:
3819 (WebCore::FontCache::getFontDataForCharacters):
3820 (WebCore::FontCache::getSimilarFontPlatformData):
3821 * platform/graphics/gtk/FontGtk.cpp:
3822 (WebCore::setPangoAttributes):
3823 (WebCore::Font::drawComplexText):
3824 (WebCore::getDefaultPangoLayout):
3825 (WebCore::Font::floatWidthForComplexText):
3826 (WebCore::Font::offsetForPositionForComplexText):
3827 (WebCore::Font::selectionRectForComplexText):
3828 * platform/graphics/gtk/FontPlatformData.h:
3829 (WebCore::FontPlatformData::FontPlatformData):
3830 (WebCore::FontPlatformData::hash):
3831 * platform/graphics/gtk/FontPlatformDataGtk.cpp:
3832 (WebCore::FontPlatformData::FontPlatformData):
3833 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
3834 (WebCore::SimpleFontData::platformDestroy):
3835
hyatt@apple.com33f37f62008-09-09 23:51:46 +000038362008-09-09 Dave Hyatt <hyatt@apple.com>
3837
3838 Make the Windows classic case work again. Overlap in slider constants and other constants broke
3839 the push state for buttons and checkboxes. Make sure to check the RenderObject's appearance
3840 value to make sure it's really a slider thumb to resolve this conflict.
3841
3842 Reviewed by Adam Roben
3843
3844 * rendering/RenderThemeWin.cpp:
3845 (WebCore::drawControl):
3846
dino@apple.com442d0652008-09-09 23:36:56 +000038472008-09-05 Chris Marrin <cmarrin@apple.com>
3848
3849 Reviewed by Sam Weinig.
3850
3851 Need to handle the case when 0% or 100% keyframe is omitted
3852 https://bugs.webkit.org/show_bug.cgi?id=20679
3853
3854 Tests: animations/keyframes-from-missing.html
3855 animations/keyframes-to-missing.html
3856
3857 * css/CSSStyleSelector.cpp:
3858 (WebCore::CSSStyleSelector::addKeyframeStyle):
3859
hyatt@apple.com419d0ad2008-09-09 23:11:14 +000038602008-09-09 Dave Hyatt <hyatt@apple.com>
3861
3862 Resurrect Safari's original RenderThemeWin and bring it up to date with ToT. Having a current
3863 RenderThemeWin that does not have any Skia dependencies should provide a good basis for a potential
3864 merge of Google Chrome's RenderThemeWin (to help us see where the Skia stuff can be cut and to see
3865 what changes have been made as compared with the old RenderThemeWin).
3866
3867 Fix CSS2 system fonts to properly set both the rendering mode (so that they properly pick up GDI vs. CG
3868 text rendering modes) and the printer font setting (so that OS X system fonts properly pick up screen
3869 vs. printer advancement rounding).
3870
3871 Reviewed by Adam/Sam
3872
3873 * css/CSSStyleSelector.cpp:
3874 (WebCore::CSSStyleSelector::applyProperty):
3875 * platform/graphics/Icon.h:
3876 (WebCore::Icon::create):
3877 * rendering/RenderThemeWin.cpp:
3878 (WebCore::RenderThemeWin::RenderThemeWin):
3879 (WebCore::RenderThemeWin::~RenderThemeWin):
3880 (WebCore::RenderThemeWin::buttonTheme):
3881 (WebCore::RenderThemeWin::textFieldTheme):
3882 (WebCore::RenderThemeWin::menuListTheme):
3883 (WebCore::RenderThemeWin::sliderTheme):
3884 (WebCore::RenderThemeWin::close):
3885 (WebCore::RenderThemeWin::themeChanged):
3886 (WebCore::RenderThemeWin::supportsHover):
3887 (WebCore::fillFontDescription):
3888 (WebCore::RenderThemeWin::systemFont):
3889 (WebCore::RenderThemeWin::supportsFocus):
3890 (WebCore::RenderThemeWin::determineClassicState):
3891 (WebCore::RenderThemeWin::determineState):
3892 (WebCore::RenderThemeWin::determineSliderThumbState):
3893 (WebCore::RenderThemeWin::getClassicThemeData):
3894 (WebCore::RenderThemeWin::getThemeData):
3895 (WebCore::drawControl):
3896 (WebCore::RenderThemeWin::paintButton):
3897 (WebCore::RenderThemeWin::paintTextField):
3898 (WebCore::RenderThemeWin::paintMenuList):
3899 (WebCore::RenderThemeWin::adjustMenuListStyle):
3900 (WebCore::RenderThemeWin::adjustMenuListButtonStyle):
3901 (WebCore::RenderThemeWin::paintMenuListButton):
3902 (WebCore::RenderThemeWin::paintSliderTrack):
3903 (WebCore::RenderThemeWin::paintSliderThumb):
3904 (WebCore::RenderThemeWin::adjustSliderThumbSize):
3905 (WebCore::RenderThemeWin::paintSearchField):
3906 (WebCore::RenderThemeWin::adjustSearchFieldStyle):
3907 (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
3908 (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle):
3909 (WebCore::RenderThemeWin::adjustSearchFieldDecorationStyle):
3910 (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle):
3911 (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
3912 (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle):
3913 (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
3914 * rendering/RenderThemeWin.h:
3915 (WebCore::ThemeData::ThemeData):
3916 (WebCore::RenderThemeWin::paintSearchFieldDecoration):
3917 (WebCore::RenderThemeWin::adjustButtonStyle):
3918 (WebCore::RenderThemeWin::adjustTextFieldStyle):
3919 (WebCore::RenderThemeWin::adjustTextAreaStyle):
3920
dino@apple.comd511ce52008-09-09 19:50:25 +000039212008-09-09 Dean Jackson <dino@apple.com>
3922
3923 Reviewed by Sam Weinig.
3924
3925 Document::createEvent missing cases for animation and
3926 transition events.
3927 https://bugs.webkit.org/show_bug.cgi?id=20734
3928
3929 Test: transitions/transition-end-event-create.html
3930 Test: animations/animation-events-create.html
3931
3932 * dom/Document.cpp:
3933 (WebCore::Document::createEvent):
3934 - add the two cases
3935
mitz@apple.com1da7b882008-09-09 18:12:06 +000039362008-09-09 Dan Bernstein <mitz@apple.com>
3937
mitz@apple.com54921562008-09-09 18:48:34 +00003938 - Tiger build fix
3939
3940 * WebCore.Tiger.exp:
3941 * WebCore.base.exp:
3942 * platform/mac/WebCoreSystemInterface.h:
3943 * platform/mac/WebCoreSystemInterface.mm:
3944
39452008-09-09 Dan Bernstein <mitz@apple.com>
3946
mitz@apple.com1da7b882008-09-09 18:12:06 +00003947 Reviewed by Darin Adler.
3948
3949 - WebCore part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard
3950
3951 * WebCore.Tiger.exp:
3952 * WebCore.base.exp:
3953 * platform/graphics/SimpleFontData.h:
3954 * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
3955 (WebCore::GlyphPage::fill):
3956 * platform/graphics/mac/SimpleFontDataMac.mm:
3957 (WebCore::initFontData):
3958 (WebCore::SimpleFontData::platformInit):
3959 (WebCore::SimpleFontData::platformDestroy):
3960 * platform/mac/WebCoreSystemInterface.h:
3961 * platform/mac/WebCoreSystemInterface.mm:
3962
kmccullough@apple.com5ba965b2008-09-09 16:40:31 +000039632008-09-09 Kevin McCullough <kmccullough@apple.com>
3964
3965 Reviewed by Tim.
3966
3967 <rdar://problem/6198545> REGRESSION: Inspector debugger barfs on
3968 breakpoints inside eval.
3969
3970 * page/inspector/inspector.js:
3971
hausmann@webkit.orgdab0e872008-09-09 14:17:21 +000039722008-09-09 Joerg Bornemann <joerg.bornemann@trolltech.com>
3973
3974 Reviewed by Simon.
3975
3976 Fix compilation of the Qt port with disabled plugins on Windows
3977
3978 * WebCore.pro:
3979 * plugins/PluginView.cpp:
3980 (WebCore::PluginView::PluginView):
3981 * plugins/PluginView.h:
3982
ap@webkit.org2ba74d32008-09-09 08:11:01 +000039832008-09-09 Jungshik Shin <jungshik.shin@gmail.com>
3984
3985 Reviewed by Alexey Proskuryakov.
3986
3987 Try MIME charset names before trying IANA names
3988 ( https://bugs.webkit.org/show_bug.cgi?id=17537 )
3989
3990 With this change, shorter and more widely used names (preferred MIME
3991 names) are returned by document.charset, document.characterSet,
3992 document.inputEncoding rather than IANA names. This helps
3993 fixing bug 18085 in addition to web developers who are more familiar
3994 with MIME names. For instance, EUC-JP, ISO-8859-X and US-ASCII will be
3995 returned instead of Extended_UNIX_Code_Packed_Format_for_Japanese,
3996 ISO-8859-X:19xx, and ANSI_X3.4-1968. It also replaces IBM8xx with cp8xx.
3997 Note that cp/IBM 8xx are extremly rare in today's web. Even if they're
3998 used, the former is still recognized as aliases to the latter so that
3999 there's very little, if any, to worry about.
4000
4001 * platform/text/TextCodecICU.cpp:
4002 (WebCore::TextCodecICU::registerExtendedEncodingNames):
4003
weinig@apple.com22294302008-09-09 06:55:39 +000040042008-09-08 Sam Weinig <sam@webkit.org>
4005
4006 Reviewed by Maciej Stachowiak and Oliver Hunt.
4007
4008 Add forwarding headers.
4009
4010 * ForwardingHeaders/wtf/HashFunctions.h: Added.
4011
dino@apple.comd9962af2008-09-09 01:02:00 +000040122008-09-05 Dean Jackson <dino@apple.com>
4013
4014 Reviewed by Dan Bernstein.
4015
4016 Update grammar so that we can add a keyframe rule via the DOM.
4017 https://bugs.webkit.org/show_bug.cgi?id=20613
4018
4019 * css/CSSGrammar.y:
4020 * css/tokenizer.flex:
4021
antti@apple.com4b17a932008-09-09 00:40:45 +000040222008-09-08 Antti Koivisto <antti@apple.com>
4023
4024 Reviewed by Dan Bernstein.
4025
4026 Allow <br> for simple UA stylesheet. Editing code generates them. It does not
4027 actually show up in any of the default stylesheets.
4028
4029 * css/CSSStyleSelector.cpp:
4030 (WebCore::elementCanUseSimpleDefaultStyle):
4031
mitz@apple.com66fa91a2008-09-09 00:35:22 +000040322008-09-08 Dimitri Glazkov <dglazkov@google.com>
4033
4034 Reviewed by Dan Bernstein.
4035
4036 - fix https://bugs.webkit.org/show_bug.cgi?id=20237
4037 Zero width and space characters are displayed incorrectly if not contained in a fallback font
4038
4039 Adds an extra check for Object Replacement Character (U+FFFC) to address
4040 the issue with fast/text/zero-width-characters.html test when run
4041 with Windows system default fonts.
4042
4043 * platform/graphics/Font.h:
4044 (WebCore::Font::treatAsZeroWidthSpace):
4045
dino@apple.comf0a4b212008-09-08 22:51:49 +000040462008-09-08 Dean Jackson <dino@apple.com>
4047
4048 Reviewed by Sam Weinig.
4049
4050 Code style issue I forgot to fix from previous commit.
4051
4052 * platform/graphics/AffineTransform.cpp:
4053 (WebCore::AffineTransform::blend):
4054
dino@apple.com26625122008-09-08 22:46:41 +000040552008-09-08 Chris Marrin <cmarrin@apple.com>
4056
4057 Reviewed by Sam Weinig
4058
4059 - Animation of -webkit-transform matrix() function should not do linear interpolation
4060 https://bugs.webkit.org/show_bug.cgi?id=20667
4061
4062 Test: animations/matrix-anim.html
4063
4064 * ChangeLog:
4065 * platform/graphics/AffineTransform.cpp:
4066 (WebCore::affineTransformDecompose):
4067 (WebCore::affineTransformCompose):
4068 (WebCore::AffineTransform::blend):
4069 * platform/graphics/AffineTransform.h:
4070 * rendering/style/RenderStyle.cpp:
4071 (WebCore::MatrixTransformOperation::blend):
4072
ap@webkit.org243a9752008-09-08 16:21:16 +000040732008-09-08 Alexey Proskuryakov <ap@webkit.org>
4074
4075 Reviewed by Darin Adler.
4076
4077 https://bugs.webkit.org/show_bug.cgi?id=20668
4078 multipart/form-data does not always include Content-type for submitted files
4079
4080 Cannot be tested with DRT or manual tests.
4081
4082 * platform/MIMETypeRegistry.cpp:
4083 (WebCore::initializeSupportedNonImageMimeTypes): Fix spacing.
4084 (WebCore::MIMETypeRegistry::getMIMETypeForPath): Default to application/octet-stream for
4085 unknown extensions, not just missing ones.
4086
hausmann@webkit.orgaf796ea2008-09-08 13:00:19 +000040872008-09-08 Simon Hausmann <hausmann@webkit.org>
4088
4089 Build fix for the Qt/Windows build, define USE_JSC to
4090 enable the WebCore::String -> JSC::UString operator that
4091 MSVC insists on seeing
4092
4093 * WebCore.pro:
4094
andersca@apple.com3ac4f552008-09-08 11:39:34 +000040952008-09-08 Anders Carlsson <andersca@apple.com>
4096
4097 Reviewed by Maciej.
4098
4099 <rdar://problem/5850387> Showing bookmarks reloads Google Reader instead.
4100
4101 In some cases, timeouts scheduled by a page in the onunload handler could fire even when the
4102 page had been unloaded and replaced by a non-HTML representation based view (such as the bookmarks view).
4103
4104 Fix this by clearing timeouts for pages that aren't cached when the provisional load is committed.
4105
4106 * bindings/js/JSDOMWindowBase.h:
4107 * loader/FrameLoader.cpp:
4108 (WebCore::FrameLoader::commitProvisionalLoad):
4109
antti@apple.com57b3a102008-09-08 07:01:36 +000041102008-09-07 Antti Koivisto <antti@apple.com>
4111
4112 Reviewed by Dave Hyatt.
4113
4114 Don't leak the simple stylesheet.
4115 Also call RenderTheme::adjustDefaultStyleSheet() in right place.
4116
4117 * css/CSSStyleSelector.cpp:
4118 (WebCore::loadFullDefaultStyle):
4119 (WebCore::loadSimpleDefaultStyle):
4120 (WebCore::CSSStyleSelector::styleForElement):
4121
cwzwarich@webkit.org3f782f62008-09-08 01:28:33 +000041222008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
4123
cwzwarich@webkit.org951b1452008-09-08 04:25:32 +00004124 Reviewed by Oliver Hunt.
4125
4126 Bug 20711: Change KJS prefix on preprocessor macros to JSC
4127 <https://bugs.webkit.org/show_bug.cgi?id=20711>
4128
4129 * bindings/js/JSEventTargetBase.h:
4130 * bindings/js/JSHTMLInputElementBase.cpp:
4131 * bindings/js/JSHTMLInputElementBase.h:
4132 * bindings/scripts/CodeGeneratorJS.pm:
4133
41342008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
4135
cwzwarich@webkit.org3f782f62008-09-08 01:28:33 +00004136 Reviewed by Maciej Stachowiak.
4137
4138 Bug 20704: Replace the KJS namespace
4139 <https://bugs.webkit.org/show_bug.cgi?id=20704>
4140
4141 Rename the KJS namespace to JSC. There are still some uses of KJS in the
4142 names of JNI functions, and I will check if these are safe to change
4143 as well.
4144
4145 * WebCore.base.exp:
4146 * bindings/js/GCController.cpp:
4147 * bindings/js/JSAttrCustom.cpp:
4148 * bindings/js/JSAudioConstructor.cpp:
4149 * bindings/js/JSAudioConstructor.h:
4150 (WebCore::JSAudioConstructor::classInfo):
4151 * bindings/js/JSCSSRuleCustom.cpp:
4152 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
4153 * bindings/js/JSCSSValueCustom.cpp:
4154 * bindings/js/JSCanvasPixelArrayCustom.cpp:
4155 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
4156 * bindings/js/JSClipboardCustom.cpp:
4157 * bindings/js/JSConsoleCustom.cpp:
4158 * bindings/js/JSCustomSQLStatementCallback.cpp:
4159 (WebCore::JSCustomSQLStatementCallback::handleEvent):
4160 * bindings/js/JSCustomSQLStatementCallback.h:
4161 (WebCore::JSCustomSQLStatementCallback::create):
4162 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
4163 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
4164 * bindings/js/JSCustomSQLStatementErrorCallback.h:
4165 (WebCore::JSCustomSQLStatementErrorCallback::create):
4166 * bindings/js/JSCustomSQLTransactionCallback.cpp:
4167 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
4168 * bindings/js/JSCustomSQLTransactionCallback.h:
4169 (WebCore::JSCustomSQLTransactionCallback::create):
4170 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
4171 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
4172 * bindings/js/JSCustomSQLTransactionErrorCallback.h:
4173 (WebCore::JSCustomSQLTransactionErrorCallback::create):
4174 * bindings/js/JSCustomVoidCallback.cpp:
4175 (WebCore::JSCustomVoidCallback::handleEvent):
4176 * bindings/js/JSCustomVoidCallback.h:
4177 (WebCore::JSCustomVoidCallback::create):
4178 * bindings/js/JSCustomXPathNSResolver.cpp:
4179 (WebCore::JSCustomXPathNSResolver::create):
4180 * bindings/js/JSCustomXPathNSResolver.h:
4181 * bindings/js/JSDOMApplicationCacheCustom.cpp:
4182 (WebCore::JSDOMApplicationCache::dispatchEvent):
4183 * bindings/js/JSDOMBinding.cpp:
4184 (WebCore::jsOwnedStringOrNull):
4185 * bindings/js/JSDOMBinding.h:
4186 (WebCore::DOMObject::DOMObject):
4187 (WebCore::cacheDOMObject):
4188 (WebCore::cacheSVGDOMObject):
4189 (WebCore::DOMExceptionTranslator::DOMExceptionTranslator):
4190 (WebCore::toJS):
4191 * bindings/js/JSDOMWindowBase.cpp:
4192 * bindings/js/JSDOMWindowBase.h:
4193 (WebCore::JSDOMWindowBase::classInfo):
4194 (WebCore::JSDOMWindowBase::d):
4195 * bindings/js/JSDOMWindowCustom.cpp:
4196 (WebCore::JSDOMWindow::getPropertyAttributes):
4197 * bindings/js/JSDOMWindowCustom.h:
4198 (WebCore::asJSDOMWindow):
4199 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
4200 (WebCore::JSDOMWindow::customPut):
4201 (WebCore::JSDOMWindowBase::allowsAccessFrom):
4202 (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
4203 * bindings/js/JSDOMWindowShell.cpp:
4204 (WebCore::JSDOMWindowShell::getPropertyAttributes):
4205 * bindings/js/JSDOMWindowShell.h:
4206 (WebCore::JSDOMWindowShell::classInfo):
4207 * bindings/js/JSDatabaseCustom.cpp:
4208 * bindings/js/JSDocumentCustom.cpp:
4209 * bindings/js/JSDocumentFragmentCustom.cpp:
4210 * bindings/js/JSElementCustom.cpp:
4211 * bindings/js/JSEventCustom.cpp:
4212 * bindings/js/JSEventListener.cpp:
4213 * bindings/js/JSEventListener.h:
4214 (WebCore::JSUnprotectedEventListener::create):
4215 (WebCore::JSEventListener::create):
4216 * bindings/js/JSEventTargetBase.cpp:
4217 * bindings/js/JSEventTargetBase.h:
4218 (WebCore::JSEventTargetBase::getValueProperty):
4219 (WebCore::JSEventTargetBase::putValueProperty):
4220 (WebCore::JSEventTargetBase::getOwnPropertySlot):
4221 (WebCore::JSEventTargetBase::put):
4222 (WebCore::JSEventTargetPrototype::JSEventTargetPrototype):
4223 (WebCore::JSEventTargetPrototype::self):
4224 (WebCore::JSEventTargetPrototype::getOwnPropertySlot):
4225 (WebCore::JSEventTargetPrototype::classInfo):
4226 * bindings/js/JSEventTargetNode.cpp:
4227 * bindings/js/JSEventTargetNode.h:
4228 (WebCore::JSEventTargetNode::getOwnPropertySlot):
4229 (WebCore::JSEventTargetNode::getValueProperty):
4230 (WebCore::JSEventTargetNode::put):
4231 (WebCore::JSEventTargetNode::putValueProperty):
4232 * bindings/js/JSHTMLAllCollection.h:
4233 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
4234 (WebCore::JSHTMLAllCollection::toBoolean):
4235 * bindings/js/JSHTMLAppletElementCustom.cpp:
4236 * bindings/js/JSHTMLCollectionCustom.cpp:
4237 * bindings/js/JSHTMLDocumentCustom.cpp:
4238 * bindings/js/JSHTMLElementCustom.cpp:
4239 * bindings/js/JSHTMLEmbedElementCustom.cpp:
4240 * bindings/js/JSHTMLFormElementCustom.cpp:
4241 * bindings/js/JSHTMLFrameElementCustom.cpp:
4242 * bindings/js/JSHTMLFrameSetElementCustom.cpp:
4243 * bindings/js/JSHTMLIFrameElementCustom.cpp:
4244 * bindings/js/JSHTMLInputElementBase.cpp:
4245 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
4246 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
4247 * bindings/js/JSHTMLInputElementBase.h:
4248 (WebCore::JSHTMLInputElementBase::classInfo):
4249 * bindings/js/JSHTMLObjectElementCustom.cpp:
4250 * bindings/js/JSHTMLOptionElementConstructor.cpp:
4251 * bindings/js/JSHTMLOptionElementConstructor.h:
4252 (WebCore::JSHTMLOptionElementConstructor::classInfo):
4253 * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
4254 * bindings/js/JSHTMLSelectElementCustom.cpp:
4255 (WebCore::selectIndexSetter):
4256 (WebCore::JSHTMLSelectElement::indexSetter):
4257 * bindings/js/JSHTMLSelectElementCustom.h:
4258 * bindings/js/JSHistoryCustom.cpp:
4259 * bindings/js/JSImageConstructor.cpp:
4260 * bindings/js/JSImageConstructor.h:
4261 (WebCore::JSImageConstructor::classInfo):
4262 * bindings/js/JSInspectedObjectWrapper.cpp:
4263 * bindings/js/JSInspectedObjectWrapper.h:
4264 (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
4265 (WebCore::JSInspectedObjectWrapper::classInfo):
4266 * bindings/js/JSInspectorCallbackWrapper.cpp:
4267 * bindings/js/JSInspectorCallbackWrapper.h:
4268 (WebCore::JSInspectorCallbackWrapper::classInfo):
4269 (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
4270 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
4271 * bindings/js/JSLocationCustom.cpp:
4272 * bindings/js/JSMimeTypeArrayCustom.cpp:
4273 * bindings/js/JSNSResolver.cpp:
4274 * bindings/js/JSNSResolver.h:
4275 (WebCore::JSNSResolver::create):
4276 * bindings/js/JSNamedNodeMapCustom.cpp:
4277 * bindings/js/JSNamedNodesCollection.cpp:
4278 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
4279 * bindings/js/JSNamedNodesCollection.h:
4280 (WebCore::JSNamedNodesCollection::classInfo):
4281 * bindings/js/JSNavigatorCustom.cpp:
4282 * bindings/js/JSNodeCustom.cpp:
4283 * bindings/js/JSNodeFilterCondition.cpp:
4284 (WebCore::JSNodeFilterCondition::acceptNode):
4285 * bindings/js/JSNodeFilterCondition.h:
4286 (WebCore::JSNodeFilterCondition::create):
4287 * bindings/js/JSNodeFilterCustom.cpp:
4288 * bindings/js/JSNodeIteratorCustom.cpp:
4289 * bindings/js/JSNodeListCustom.cpp:
4290 * bindings/js/JSPluginArrayCustom.cpp:
4291 * bindings/js/JSPluginCustom.cpp:
4292 * bindings/js/JSPluginElementFunctions.cpp:
4293 (WebCore::getRuntimeObject):
4294 * bindings/js/JSPluginElementFunctions.h:
4295 * bindings/js/JSQuarantinedObjectWrapper.cpp:
4296 (WebCore::JSQuarantinedObjectWrapper::construct):
4297 (WebCore::JSQuarantinedObjectWrapper::call):
4298 * bindings/js/JSQuarantinedObjectWrapper.h:
4299 (WebCore::JSQuarantinedObjectWrapper::unwrappedObject):
4300 (WebCore::JSQuarantinedObjectWrapper::unwrappedGlobalObject):
4301 (WebCore::JSQuarantinedObjectWrapper::className):
4302 * bindings/js/JSRGBColor.cpp:
4303 * bindings/js/JSRGBColor.h:
4304 (WebCore::JSRGBColor::classInfo):
4305 * bindings/js/JSSQLResultSetRowListCustom.cpp:
4306 * bindings/js/JSSQLTransactionCustom.cpp:
4307 * bindings/js/JSSVGLazyEventListener.cpp:
4308 * bindings/js/JSSVGLazyEventListener.h:
4309 * bindings/js/JSSVGLengthCustom.cpp:
4310 * bindings/js/JSSVGMatrixCustom.cpp:
4311 (WebCore::JSSVGMatrix::inverse):
4312 (WebCore::JSSVGMatrix::rotateFromVector):
4313 * bindings/js/JSSVGPathSegCustom.cpp:
4314 * bindings/js/JSSVGPathSegListCustom.cpp:
4315 (WebCore::JSSVGPathSegList::initialize):
4316 (WebCore::JSSVGPathSegList::getItem):
4317 (WebCore::JSSVGPathSegList::insertItemBefore):
4318 (WebCore::JSSVGPathSegList::replaceItem):
4319 (WebCore::JSSVGPathSegList::removeItem):
4320 (WebCore::JSSVGPathSegList::appendItem):
4321 * bindings/js/JSSVGPointListCustom.cpp:
4322 * bindings/js/JSSVGTransformListCustom.cpp:
4323 * bindings/js/JSStorageCustom.cpp:
4324 * bindings/js/JSStyleSheetCustom.cpp:
4325 * bindings/js/JSStyleSheetListCustom.cpp:
4326 * bindings/js/JSTextCustom.cpp:
4327 * bindings/js/JSTreeWalkerCustom.cpp:
4328 * bindings/js/JSXMLHttpRequestConstructor.cpp:
4329 * bindings/js/JSXMLHttpRequestConstructor.h:
4330 (WebCore::JSXMLHttpRequestConstructor::classInfo):
4331 * bindings/js/JSXMLHttpRequestCustom.cpp:
4332 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
4333 * bindings/js/JSXSLTProcessorConstructor.cpp:
4334 * bindings/js/JSXSLTProcessorConstructor.h:
4335 (WebCore::JSXSLTProcessorConstructor::classInfo):
4336 * bindings/js/JSXSLTProcessorCustom.cpp:
4337 * bindings/js/ScheduledAction.cpp:
4338 * bindings/js/ScheduledAction.h:
4339 * bindings/js/ScriptController.cpp:
4340 (WebCore::ScriptController::attachDebugger):
4341 (WebCore::ScriptController::windowScriptNPObject):
4342 * bindings/js/ScriptController.h:
4343 * bindings/js/ScriptControllerGtk.cpp:
4344 (WebCore::ScriptController::createScriptInstanceForWidget):
4345 * bindings/js/ScriptControllerMac.mm:
4346 (WebCore::ScriptController::createScriptInstanceForWidget):
4347 (WebCore::ScriptController::windowScriptObject):
4348 (WebCore::ScriptController::clearPlatformScriptObjects):
4349 (WebCore::updateRenderingForBindings):
4350 (WebCore::ScriptController::initJavaJSBindings):
4351 * bindings/js/ScriptControllerQt.cpp:
4352 (WebCore::ScriptController::createScriptInstanceForWidget):
4353 * bindings/js/ScriptControllerWin.cpp:
4354 (WebCore::ScriptController::createScriptInstanceForWidget):
4355 * bindings/js/ScriptControllerWx.cpp:
4356 (WebCore::ScriptController::createScriptInstanceForWidget):
4357 * bindings/js/StringSourceProvider.h:
4358 (WebCore::StringSourceProvider::getRange):
4359 * bindings/objc/DOM.mm:
4360 (-[DOMNode JSC::Bindings::]):
4361 * bindings/objc/DOMInternal.h:
4362 * bindings/objc/DOMInternal.mm:
4363 (-[WebScriptObject _initializeScriptDOMNodeImp]):
4364 * bindings/objc/DOMUtility.mm:
4365 (JSC::createDOMWrapper):
4366 (WebCore::createDOMWrapper):
4367 * bindings/objc/WebScriptObject.mm:
4368 (WebCore::createJSWrapper):
4369 (-[WebScriptObject _initWithJSObject:JSC::originRootObject:JSC::Bindings::rootObject:JSC::Bindings::]):
4370 * bindings/objc/WebScriptObjectPrivate.h:
4371 * bindings/scripts/CodeGeneratorJS.pm:
4372 * bridge/NP_jsobject.cpp:
4373 * bridge/NP_jsobject.h:
4374 * bridge/c/c_class.cpp:
4375 * bridge/c/c_class.h:
4376 * bridge/c/c_instance.cpp:
4377 * bridge/c/c_instance.h:
4378 * bridge/c/c_runtime.cpp:
4379 * bridge/c/c_runtime.h:
4380 * bridge/c/c_utility.cpp:
4381 * bridge/c/c_utility.h:
4382 * bridge/jni/jni_class.cpp:
4383 * bridge/jni/jni_class.h:
4384 * bridge/jni/jni_instance.cpp:
4385 * bridge/jni/jni_instance.h:
4386 * bridge/jni/jni_jsobject.h:
4387 * bridge/jni/jni_jsobject.mm:
4388 (JavaJSObject::call):
4389 (JavaJSObject::convertJObjectToValue):
4390 * bridge/jni/jni_objc.mm:
4391 (JSC::Bindings::dispatchJNICall):
4392 * bridge/jni/jni_runtime.cpp:
4393 * bridge/jni/jni_runtime.h:
4394 * bridge/jni/jni_utility.cpp:
4395 * bridge/jni/jni_utility.h:
4396 * bridge/npruntime.cpp:
4397 (_NPN_GetStringIdentifier):
4398 * bridge/objc/WebScriptObject.h:
4399 * bridge/objc/objc_class.h:
4400 * bridge/objc/objc_class.mm:
4401 * bridge/objc/objc_instance.h:
4402 * bridge/objc/objc_instance.mm:
4403 * bridge/objc/objc_runtime.h:
4404 * bridge/objc/objc_runtime.mm:
4405 * bridge/objc/objc_utility.h:
4406 * bridge/objc/objc_utility.mm:
4407 * bridge/qt/qt_class.cpp:
4408 * bridge/qt/qt_class.h:
4409 * bridge/qt/qt_instance.cpp:
4410 * bridge/qt/qt_instance.h:
4411 * bridge/qt/qt_runtime.cpp:
4412 (JSC::Bindings::convertQVariantToValue):
4413 (JSC::Bindings::):
4414 * bridge/qt/qt_runtime.h:
4415 * bridge/runtime.cpp:
4416 * bridge/runtime.h:
4417 * bridge/runtime_array.cpp:
4418 * bridge/runtime_array.h:
4419 * bridge/runtime_method.cpp:
4420 * bridge/runtime_method.h:
4421 * bridge/runtime_object.cpp:
4422 * bridge/runtime_object.h:
4423 * bridge/runtime_root.cpp:
4424 (JSC::Bindings::RootObject::invalidate):
4425 (JSC::Bindings::RootObject::gcProtect):
4426 (JSC::Bindings::RootObject::gcUnprotect):
4427 * bridge/runtime_root.h:
4428 * bridge/testbindings.cpp:
4429 * bridge/testbindings.mm:
4430 * bridge/testqtbindings.cpp:
4431 * dom/Document.cpp:
4432 (WebCore::Document::~Document):
4433 * dom/NSResolver.h:
4434 * dom/Node.cpp:
4435 (WebCore::Node::setDocument):
4436 (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
4437 (WebCore::resolveNamespacesForSelector):
4438 (WebCore::Node::querySelector):
4439 (WebCore::Node::querySelectorAll):
4440 * dom/Node.h:
4441 * dom/NodeFilter.cpp:
4442 * dom/NodeFilter.h:
4443 * dom/NodeFilterCondition.cpp:
4444 * dom/NodeFilterCondition.h:
4445 * dom/NodeIterator.cpp:
4446 * dom/NodeIterator.h:
4447 * dom/Traversal.cpp:
4448 * dom/Traversal.h:
4449 * dom/TreeWalker.cpp:
4450 * dom/TreeWalker.h:
4451 * dom/make_names.pl:
4452 * history/CachedPage.cpp:
4453 * history/CachedPage.h:
4454 * html/HTMLPlugInElement.cpp:
4455 (WebCore::HTMLPlugInElement::getInstance):
4456 * html/HTMLPlugInElement.h:
4457 * loader/FrameLoader.cpp:
4458 * loader/FrameLoader.h:
4459 * loader/icon/IconDatabase.cpp:
4460 (WebCore::iconDatabase):
4461 * page/Console.cpp:
4462 * page/Console.h:
4463 * page/InspectorController.cpp:
4464 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
4465 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
4466 (WebCore::InspectorResource::setXMLHttpRequestProperties):
4467 (WebCore::InspectorResource::sourceString):
4468 (WebCore::getResourceDocumentNode):
4469 (WebCore::search):
4470 (WebCore::InspectorController::focusNode):
4471 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
4472 (WebCore::InspectorController::addDatabaseScriptResource):
4473 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
4474 * page/InspectorController.h:
4475 (WebCore::InspectorController::profiles):
4476 * page/JavaScriptCallFrame.cpp:
4477 (WebCore::JavaScriptCallFrame::scopeChain):
4478 * page/JavaScriptCallFrame.h:
4479 (WebCore::JavaScriptCallFrame::create):
4480 (WebCore::JavaScriptCallFrame::update):
4481 * page/JavaScriptDebugListener.h:
4482 * page/JavaScriptDebugServer.cpp:
4483 (WebCore::dispatchDidParseSource):
4484 * page/JavaScriptDebugServer.h:
4485 * page/JavaScriptProfile.cpp:
4486 * page/JavaScriptProfile.h:
4487 * page/JavaScriptProfileNode.cpp:
4488 (WebCore::getTotalTime):
4489 (WebCore::getSelfTime):
4490 (WebCore::getTotalPercent):
4491 (WebCore::getSelfPercent):
4492 (WebCore::getNumberOfCalls):
4493 (WebCore::getChildren):
4494 (WebCore::getVisible):
4495 * page/JavaScriptProfileNode.h:
4496 * page/Page.cpp:
4497 (WebCore::Page::setDebuggerForAllPages):
4498 (WebCore::Page::setDebugger):
4499 * page/Page.h:
4500 (WebCore::Page::debugger):
4501 * page/mac/FrameMac.mm:
4502 * platform/KURL.h:
4503 (WebCore::KURL::operator JSC::UString):
4504 * platform/text/AtomicString.cpp:
4505 (WebCore::AtomicString::add):
4506 (WebCore::AtomicString::find):
4507 * platform/text/AtomicString.h:
4508 (WebCore::AtomicString::AtomicString):
4509 * platform/text/PlatformString.h:
4510 * platform/text/String.cpp:
4511 (WebCore::charactersToDouble):
4512 * platform/win/BString.cpp:
4513 * platform/win/BString.h:
4514 * plugins/MimeTypeArray.h:
4515 * plugins/Plugin.h:
4516 * plugins/PluginArray.h:
4517 * plugins/PluginView.cpp:
4518 (WebCore::PluginView::start):
4519 (WebCore::PluginView::performRequest):
4520 (WebCore::PluginView::bindingInstance):
4521 * plugins/PluginView.h:
4522 * plugins/gtk/PluginViewGtk.cpp:
4523 (WebCore::PluginView::paint):
4524 (WebCore::PluginView::handleKeyboardEvent):
4525 (WebCore::PluginView::handleMouseEvent):
4526 (WebCore::PluginView::setNPWindowRect):
4527 (WebCore::PluginView::stop):
4528 (WebCore::PluginView::init):
4529 * plugins/qt/PluginViewQt.cpp:
4530 (WebCore::PluginView::setNPWindowRect):
4531 (WebCore::PluginView::stop):
4532 (WebCore::PluginView::init):
4533 * plugins/win/PluginViewWin.cpp:
4534 (WebCore::PluginView::dispatchNPEvent):
4535 (WebCore::PluginView::handleKeyboardEvent):
4536 (WebCore::PluginView::handleMouseEvent):
4537 (WebCore::PluginView::setNPWindowRect):
4538 (WebCore::PluginView::stop):
4539 * storage/Database.cpp:
4540 (WebCore::Database::Database):
4541 * xml/XMLHttpRequest.cpp:
4542 (WebCore::XMLHttpRequest::responseText):
4543 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
4544 (WebCore::XMLHttpRequest::clearResponse):
4545 (WebCore::XMLHttpRequest::dropProtection):
4546 (WebCore::XMLHttpRequest::didFinishLoading):
4547 (WebCore::XMLHttpRequest::didReceiveData):
4548 * xml/XMLHttpRequest.h:
4549
abarth@webkit.orge17b6052008-09-08 00:03:30 +000045502008-09-07 Adam Barth <abarth@webkit.org>
4551
4552 Reviewed by Sam Weinig.
4553
4554 Adopt opener restriction on frame navigation.
4555 https://bugs.webkit.org/show_bug.cgi?id=20642
4556
4557 This restriction helps prevent an attacker from navigating top-level
4558 windows that were created by another web site.
4559
4560 Tests: http/tests/security/frameNavigation/not-opener.html
4561 http/tests/security/frameNavigation/opener.html
4562
4563 * loader/FrameLoader.cpp:
4564 (WebCore::canAccessAncestor):
4565 (WebCore::FrameLoader::shouldAllowNavigation):
4566
mitz@apple.com83469af2008-09-07 22:29:56 +000045672008-09-07 Dan Bernstein <mitz@apple.com>
4568
mitz@apple.com08ff58c2008-09-07 23:19:11 +00004569 Reviewed by Maciej Stachowiak.
4570
4571 - use the correct sign for vertical offsets of combining marks
4572
4573 * platform/graphics/win/UniscribeController.cpp:
4574 (WebCore::UniscribeController::shapeAndPlaceItem):
4575
45762008-09-07 Dan Bernstein <mitz@apple.com>
4577
mitz@apple.com83469af2008-09-07 22:29:56 +00004578 Reviewed by Dave Hyatt.
4579
mitz@apple.com78685b22008-09-07 22:30:29 +00004580 - add the combining mark offsets in two places where I forgot them
4581
4582 * platform/graphics/win/FontCGWin.cpp:
4583 (WebCore::Font::drawGlyphs):
4584
45852008-09-07 Dan Bernstein <mitz@apple.com>
4586
4587 Reviewed by Dave Hyatt.
4588
mitz@apple.com83469af2008-09-07 22:29:56 +00004589 - correct glyph advances in complex text using web fonts rendered with
4590 Core Graphics
4591
4592 * platform/graphics/win/FontCustomPlatformData.cpp:
4593 (WebCore::FontCustomPlatformData::fontPlatformData):
4594
timothy@apple.com968ebc92008-09-07 16:48:41 +000045952008-09-07 Keishi Hattori <casey.hattori@gmail.com>
4596
4597 Adds console.dirxml support to the Web Inspector.
4598
4599 https://bugs.webkit.org/show_bug.cgi?id=19156
4600
4601 Reviewed by Timothy Hatcher.
4602
4603 * WebCore.vcproj/WebCore.vcproj: Added ElementsTreeOutline.js.
4604 * bindings/js/JSConsoleCustom.cpp:
4605 (WebCore::JSConsole::dirxml):
4606 * page/Console.cpp:
4607 (WebCore::Console::dirxml): Adds a ConsoleMessage with NodeMessageLevel.
4608 * page/Console.h:
4609 (WebCore::): Added NodeMessageLevel.
4610 * page/Console.idl: Added console.dirxml.
4611 * page/inspector/Console.js: A NodeMessage creates a ElementsTreeOutline.
4612 * page/inspector/ElementsPanel.js: Modified to use ElementsTreeOutline. The ElementsTreeOutline
4613 in the ElementsPanel has includeRootDOMNode and selectEnabled set to true.
4614 * page/inspector/ElementsTreeOutline.js: Added.
4615 (WebInspector.ElementsTreeOutline): A subclass of TreeOutline for displaying a DOM node tree.
4616 (WebInspector.ElementsTreeElement): A subclass of TreeElement for ElementsTreeOutline.
4617 * page/inspector/WebKit.qrc: Added ElementsTreeOutline.js.
4618 * page/inspector/inspector.css:
4619 * page/inspector/inspector.html: Added ElementsTreeOutline.js.
4620 * page/inspector/inspector.js: Moved hover related methods to WebInspector.
4621 (WebInspector.altKeyDown):
4622 (WebInspector.forceHoverHighlight):
4623 (WebInspector.hoveredDOMNode):
4624 (WebInspector._updateHoverHighlightSoon):
4625 (WebInspector._updateHoverHighlight):
4626 (WebInspector.documentKeyDown): Updates WebInspector.altKeyDown
4627 (WebInspector.documentKeyUp): Updates WebInspector.altKeyDown
4628 * page/inspector/utilities.js: Added getDocumentForNode, parentNodeOrFrameElement,
4629 isAncestorIncludingParentFrames.
4630
mrowe@apple.com61ba5f52008-09-07 06:08:56 +000046312008-09-06 Mark Rowe <mrowe@apple.com>
4632
4633 Qt build fix.
4634
4635 * bridge/qt/qt_runtime.cpp:
4636 (KJS::Bindings::convertQVariantToValue):
4637
mrowe@apple.comf88a4632008-09-07 05:44:58 +00004638=== End merge of squirrelfish-extreme ===
4639
46402008-09-05 Oliver Hunt <oliver@apple.com>
4641
4642 Start bringing up SFX on windows.
4643
4644 Reviewed by Mark Rowe and Sam Weinig
4645
4646 Start doing the work to bring up SFX on windows. Initially
4647 just working on WREC, as it does not make any calls so reduces
4648 the amount of code that needs to be corrected.
4649
4650 Add forwarding headers
4651
4652 * ChangeLog:
4653 * ForwardingHeaders/masm/MacroAssembler.h: Added.
4654 * WebCore.vcproj/WebCore.vcproj:
4655
46562008-08-27 Mark Rowe <mrowe@apple.com>
4657
4658 Reviewed by Oliver Hunt.
4659
4660 Fix the build of the full WebKit stack.
4661
4662 Add forwarding headers.
4663
4664 * ForwardingHeaders/masm/IA32MacroAsm.h: Added.
4665 * ForwardingHeaders/wrec/WREC.h: Added.
4666
4667=== Start merge of squirrelfish-extreme ===
4668
antti@apple.com13c24932008-09-07 03:54:21 +000046692008-09-06 Antti Koivisto <antti@apple.com>
4670
4671 Reviewed by Dave Hyatt.
4672
4673 <rdar://problem/6187043>
4674 Don't parse full HTML user agent style sheet unless it is actually needed
4675 <rdar://problem/6131889>
4676 WebView is significantly more expensive to create recently
4677
4678 Parsing the html4.css takes significant amount of time and memory (~50kb) on application
4679 startup. Some clients may never use most of the rules.
4680
4681 With this patch we use simplified UA stylesheet until we hit something it can't handle.
4682 This avoids full stylesheet parsing on application startup (due to empty document construction)
4683 and also makes it possible for clients with very simple demands (divs and spans only) never to load
4684 the full style.
4685
4686 It also delays view source style parsing until it is used.
4687
4688 * css/CSSStyleSelector.cpp:
4689 (WebCore::elementCanUseSimpleDefaultStyle):
4690 (WebCore::CSSStyleSelector::CSSStyleSelector):
4691 (WebCore::loadFullDefaultStyle):
4692 (WebCore::loadSimpleDefaultStyle):
4693 (WebCore::loadViewSourceStyle):
4694 (WebCore::CSSStyleSelector::matchUARules):
4695 (WebCore::CSSStyleSelector::styleForElement):
4696
kevino@webkit.orgd15b50f2008-09-07 03:46:50 +000046972008-09-06 Kevin Ollivier <kevino@theolliviers.com>
4698
4699 wx build fix.
4700
4701 * WebCoreSources.bkl:
4702
antti@apple.come953f862008-09-06 23:27:09 +000047032008-09-06 Antti Koivisto <antti@apple.com>
4704
antti@apple.com00dfa532008-09-06 23:32:26 +00004705 Reverting r35953 which was causing problems on Windows which relies on
4706 WebCore timers in nested event loops. r36132 did alternative fix.
4707
4708 * page/Chrome.cpp:
4709 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
4710 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
4711
47122008-09-06 Antti Koivisto <antti@apple.com>
4713
antti@apple.come953f862008-09-06 23:27:09 +00004714 Reviewed by Dan Bernstein.
4715
4716 Fix <rdar://problem/6201644>
4717 https://bugs.webkit.org/show_bug.cgi?id=20493
4718 Crash after OK in dialog box and reloading page in secure mode
4719
4720 Limited loader only fix since the general timer fix is causing problems on Windows.
4721
4722 * loader/loader.cpp:
4723 (WebCore::Loader::servePendingRequests):
4724 (WebCore::Loader::Host::Host):
4725 (WebCore::Loader::Host::didFinishLoading):
4726 (WebCore::Loader::Host::didFail):
4727 (WebCore::Loader::Host::didReceiveData):
4728 * loader/loader.h:
4729 (WebCore::Loader::Host::processingResource):
4730
mitz@apple.com046bf642008-09-06 08:31:02 +000047312008-09-06 Dan Bernstein <mitz@apple.com>
4732
4733 Reviewed by Dave Hyatt.
4734
mitz@apple.comc0b050b2008-09-06 22:39:34 +00004735 The initial Core Text adoption prototype was made by Daniel Fenwick.
4736
4737 - <rdar://problem/5158514> Add a Core Text-based complex text code path
4738
4739 Currently the Core Text code path is not used in any configuration.
4740
4741 * WebCore.xcodeproj/project.pbxproj: Added files.
4742 * config.h: Defined WTF_USE_ATSUI and WTF_USE_CORE_TEXT.
4743 * platform/graphics/Font.cpp:
4744 (WebCore::WidthIterator::advance): Moved the spacingDisabled() test out
4745 of the loop.
4746 * platform/graphics/GlyphBuffer.h:
4747 (WebCore::GlyphBuffer::add): Added this version that takes an advance.
4748 * platform/graphics/SimpleFontData.h: Added ATSUI and CORE_TEXT #ifdefs.
4749 Added getCTFont() and getCFStringAttributes() and corresponding data
4750 members for Core Text.
4751 * platform/graphics/mac/CoreTextController.cpp: Added.
4752 (WebCore::roundCGFloat): Helper function.
4753 (WebCore::ceilCGFloat): Helper function.
4754 (WebCore::CoreTextController::CoreTextRun::CoreTextRun):
4755 (WebCore::CoreTextController::CoreTextController):
4756 (WebCore::CoreTextController::offsetForPosition):
4757 (WebCore::CoreTextController::collectCoreTextRuns): Added. Segments the
4758 run into subruns as necessary such that each subrun can be rendered with
4759 a single font. Also separates out soft hyphens and replaces them with
4760 real hyphens, because Core Text does not emit a glyph for soft hyphens.
4761 Then calls collectCoreTextRunsForCharacters() on each subrun.
4762 (WebCore::CoreTextController::advance):
4763 (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Creates
4764 a CTLine from the given subrun and collects its CoreTextRuns.
4765 (WebCore::CoreTextController::adjustGlyphsAndAdvances): Applies the
4766 rounding hacks, letter- and word-spacing and glyph substitutions and
4767 stores the resulting adjusted glyphs and advances.
4768 * platform/graphics/mac/CoreTextController.h: Copied from WebCore/platform/graphics/win/UniscribeController.h.
4769 (WebCore::CoreTextController::totalWidth):
4770 (WebCore::CoreTextController::finalRoundingWidth):
4771 (WebCore::CoreTextController::CoreTextRun::ctRun):
4772 (WebCore::CoreTextController::CoreTextRun::glyphCount):
4773 (WebCore::CoreTextController::CoreTextRun::fontData):
4774 (WebCore::CoreTextController::CoreTextRun::characters):
4775 (WebCore::CoreTextController::CoreTextRun::stringLocation):
4776 (WebCore::CoreTextController::CoreTextRun::stringLength):
4777 (WebCore::CoreTextController::CoreTextRun::indexAt):
4778 * platform/graphics/mac/FontMac.mm: Moved the ATSUI-specific parts to
4779 FontMacATSUI.mm.
4780 * platform/graphics/mac/FontMacATSUI.mm: Copied from WebCore/platform/graphics/mac/FontMac.mm.
4781 (WebCore::disableLigatures): Changed to call
4782 FontPlatformData::allowsLigatures().
4783 (WebCore::overrideLayoutOperation): Changed to call
4784 FontPlatformData::roundsGlyphAdvances().
4785 * platform/graphics/mac/FontMacCoreText.cpp: Copied from WebCore/platform/graphics/win/FontWin.cpp.
4786 (WebCore::Font::selectionRectForComplexText): Changed to use
4787 totalWidth() instead of advancing to the end and using runWidthSoFar().
4788 (WebCore::Font::drawComplexText):
4789 (WebCore::Font::floatWidthForComplexText): Ditto.
4790 (WebCore::Font::offsetForPositionForComplexText):
4791 * platform/graphics/mac/FontPlatformData.h:
4792 * platform/graphics/mac/FontPlatformDataMac.mm:
4793 (WebCore::FontPlatformData::setFont):
4794 (WebCore::FontPlatformData::roundsGlyphAdvances): Added. Checks the
4795 AppKit rendering mode.
4796 (WebCore::FontPlatformData::allowsLigatures): Added. Implements the
4797 heuristic that allows ligatures in fonts that do not have a glyph for
4798 'a', based on the assumption that such fonts are only used in complex
4799 text.
4800 * platform/graphics/mac/SimpleFontDataMac.mm:
4801 (WebCore::SimpleFontData::platformInit):
4802 (WebCore::SimpleFontData::platformDestroy):
4803 (WebCore::SimpleFontData::getCTFont): Added.
4804 (WebCore::SimpleFontData::getCFStringAttributes): Added. Caches and
4805 returns an attributes dictionary.
4806 * platform/text/mac/ShapeArabic.c: Added ATSUI #ifdefs.
4807 * platform/text/mac/ShapeArabic.h: Ditto.
4808
48092008-09-06 Dan Bernstein <mitz@apple.com>
4810
4811 Reviewed by Dave Hyatt.
4812
mitz@apple.com046bf642008-09-06 08:31:02 +00004813 - make combining mark offsets work in CG text on Windows
4814
4815 * platform/graphics/win/FontCGWin.cpp:
4816 (WebCore::Font::drawGlyphs): The old code tried to translate the text
4817 matrix, but failed for two reasons: it did not actually change the
4818 matrix, and even if it did, CGContextSetTextPosition overwrites the
4819 translation values in the text matrix. Instead, just added the
4820 translation to the anchor point.
4821
alp@webkit.org369cdca2008-09-06 04:08:30 +000048222008-09-05 Gustavo Noronha Silva <gns@gnome.org>
4823
4824 Reviewed by Alp Toker.
4825
4826 https://bugs.webkit.org/show_bug.cgi?id=18346
4827 [GTK] Remove build warnings
4828
4829 Applied some casts, and removed an unused typedef to make the
4830 compiler happy, printing less warnings when building.
4831
4832 * page/gtk/AccessibilityObjectWrapperAtk.cpp:
4833 * platform/graphics/gtk/SimpleFontDataPango.cpp:
4834 (WebCore::SimpleFontData::containsCharacters):
4835 * platform/graphics/gtk/VideoSinkGStreamer.cpp:
4836 (webkit_video_sink_set_caps):
4837 * platform/network/soup/ResourceHandleSoup.cpp:
4838
eric@webkit.org3cb292c2008-09-05 22:17:56 +000048392008-09-05 Eric Seidel <eric@webkit.org>
4840
eric@webkit.org5ac37902008-09-06 00:21:58 +00004841 Reviewed by Adam Roben.
4842
4843 Build fix for WebKitWin and Chromium
4844
4845 * platform/FileSystem.h:
4846
48472008-09-05 Eric Seidel <eric@webkit.org>
4848
eric@webkit.org3cb292c2008-09-05 22:17:56 +00004849 Reviewed by Darin Adler.
4850
4851 Try to make Chromium compile with ToT:
4852 - Wrap a few places which depend on KJS:: in #if USE(JSC)
4853 - Include some windows forward declarations
4854
4855 * dom/Node.h:
4856 * page/Console.h:
4857 * page/animation/CompositeAnimation.h:
4858 * platform/FileSystem.h:
4859 * platform/graphics/Image.h:
4860 * platform/text/AtomicString.h:
4861 * platform/text/String.cpp:
4862 * rendering/style/RenderStyle.h:
4863
hyatt@apple.comff85d5e2008-09-05 21:52:08 +000048642008-09-05 Dave Hyatt <hyatt@apple.com>
4865
4866 Add support for runtime switchability of the Aqua look and the native look on Windows.
4867 Make RenderThemeWin compile by default even when USE(SAFARI_THEME) is set.
4868
4869 Reviewed by Adam Roben
4870
4871 * WebCore.vcproj/WebCore.vcproj:
4872 * page/Settings.cpp:
4873 (WebCore::Settings::setShouldPaintNativeControls):
4874 * page/Settings.h:
4875 (WebCore::Settings::shouldPaintNativeControls):
4876 * rendering/RenderThemeSafari.cpp:
4877 (WebCore::theme):
4878 * rendering/RenderThemeWin.cpp:
4879
antti@apple.combced97f2008-09-05 18:52:05 +000048802008-09-05 Antti Koivisto <antti@apple.com>
4881
4882 Qt build fix.
4883
4884 * svg/SVGFEImageElement.cpp:
4885 (WebCore::SVGFEImageElement::build):
4886
aroben@apple.comca0c3362008-09-05 15:33:28 +000048872008-09-05 Dirk Schulze <vbs85@gmx.de>
4888
4889 Gtk build fix
4890
4891 * GNUmakefile.am:
4892
antti@apple.com72e4a842008-09-05 09:28:11 +000048932008-09-05 Antti Koivisto <antti@apple.com>
4894
antti@apple.com49e46662008-09-05 10:36:59 +00004895 Another build fix.
4896
4897 * svg/SVGFEImageElement.cpp:
4898 (WebCore::SVGFEImageElement::notifyFinished):
4899
49002008-09-05 Antti Koivisto <antti@apple.com>
4901
antti@apple.comfeec2582008-09-05 10:03:39 +00004902 Build fixes.
4903
4904 * WebCore.xcodeproj/project.pbxproj:
4905 * svg/graphics/filters/SVGFEImage.cpp:
4906 (WebCore::FEImage::cachedImage):
4907
49082008-09-05 Antti Koivisto <antti@apple.com>
4909
darin@apple.com07c80c62008-09-05 18:15:43 +00004910 Reviewed by Darin Adler.
antti@apple.com72e4a842008-09-05 09:28:11 +00004911
4912 Most of the implementation for https://bugs.webkit.org/show_bug.cgi?id=17998
4913 When a resource is cached locally, WebKit should follow RFC 2616 "Specific end-to-end revalidation" instead of "Unspecified end-to-end revalidation"
4914
4915 Implement HTTP 1.1 "Specific end-to-end revalidation" for WebCore memory cache. This patch does
4916 not yet enable it for the biggest use case, reloading. However it is good for general browsing as
4917 well. Doing this in WebCore level as opposed to relying on disk cache has big benefit that
4918 we avoid re-decoding resources, especially images.
4919
4920 To be exact the enabled case is not actually the "Specific end-to-end revalidation" since it does not include
4921 CacheControl: max-age=0 header. That would be added in reload case.
4922
4923 The approach for revalidation is to kick the original resource out from the memory cache
4924 and create a new CachedResource that represents the revalidation request. In case
4925 we get 304 back for the request we put the original resource back to the cache, update
4926 its expiration date and switch the clients registered to revalidation resource to be
4927 clients of the original resource.
4928
4929 All heap allocated CachedImage pointers now use CachedResourceHandle<CachedImage> (and so on) instead.
4930 This allows updating the handles to point to the original resource when the revalidation succeeds. It
4931 also acts as refcounting smart pointer.
4932
4933 * WebCore.pro:
4934 * WebCore.vcproj/WebCore.vcproj:
4935 * WebCore.xcodeproj/project.pbxproj:
4936 * css/CSSFontFaceSource.h:
4937 * css/CSSImportRule.h:
4938 * dom/Clipboard.h:
4939 (WebCore::Clipboard::dragImage):
4940 * dom/ProcessingInstruction.h:
4941 * dom/ScriptElement.h:
4942 * dom/XMLTokenizer.cpp:
4943 (WebCore::XMLTokenizer::isWaitingForScripts):
4944 * dom/XMLTokenizer.h:
4945 * html/HTMLImageLoader.cpp:
4946 (WebCore::HTMLImageLoader::setImage):
4947 (WebCore::HTMLImageLoader::updateFromElement):
4948 (WebCore::HTMLImageLoader::notifyFinished):
4949 * html/HTMLImageLoader.h:
4950 (WebCore::HTMLImageLoader::image):
4951 * html/HTMLLinkElement.h:
4952 * html/HTMLTokenizer.cpp:
4953 (WebCore::HTMLTokenizer::reset):
4954 (WebCore::HTMLTokenizer::scriptHandler):
4955 (WebCore::HTMLTokenizer::notifyFinished):
4956 * html/HTMLTokenizer.h:
4957 * loader/Cache.cpp:
4958 (WebCore::Cache::revalidateResource):
4959 (WebCore::Cache::revalidationSucceeded):
4960 (WebCore::Cache::revalidationFailed):
4961 * loader/Cache.h:
4962 * loader/CachedResource.cpp:
4963 (WebCore::CachedResource::CachedResource):
4964 (WebCore::CachedResource::~CachedResource):
4965 (WebCore::CachedResource::isExpired):
4966 (WebCore::CachedResource::setResponse):
4967 (WebCore::CachedResource::deleteIfPossible):
4968 (WebCore::CachedResource::setResourceToRevalidate):
4969 (WebCore::CachedResource::clearResourceToRevalidate):
4970 (WebCore::CachedResource::switchClientsToRevalidatedResource):
4971 (WebCore::CachedResource::canUseCacheValidator):
4972 (WebCore::CachedResource::mustRevalidate):
4973 * loader/CachedResource.h:
4974 (WebCore::CachedResource::canDelete):
4975 (WebCore::CachedResource::registerHandle):
4976 (WebCore::CachedResource::unregisterHandle):
4977 (WebCore::CachedResource::isCacheValidator):
4978 (WebCore::CachedResource::resourceToRevalidate):
4979 (WebCore::CachedResource::setExpirationDate):
4980 * loader/CachedResourceHandle.cpp: Added.
4981 (WebCore::CachedResourceHandleBase::setResource):
4982 * loader/CachedResourceHandle.h: Added.
4983 (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
4984 (WebCore::CachedResourceHandleBase::get):
4985 (WebCore::CachedResourceHandleBase::operator!):
4986 (WebCore::CachedResourceHandleBase::operator UnspecifiedBoolType):
4987 (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
4988 (WebCore::CachedResourceHandleBase::operator=):
4989 (WebCore::CachedResourceHandle::CachedResourceHandle):
4990 (WebCore::CachedResourceHandle::get):
4991 (WebCore::CachedResourceHandle::operator->):
4992 (WebCore::CachedResourceHandle::operator=):
4993 (WebCore::CachedResourceHandle::operator==):
4994 (WebCore::CachedResourceHandle::operator!=):
4995 (WebCore::operator==):
4996 (WebCore::operator!=):
4997 * loader/DocLoader.cpp:
4998 (WebCore::DocLoader::checkForReload):
4999 * loader/UserStyleSheetLoader.h:
5000 * loader/loader.cpp:
5001 (WebCore::Loader::Host::servePendingRequests):
5002 (WebCore::Loader::Host::didFinishLoading):
5003 (WebCore::Loader::Host::didFail):
5004 (WebCore::Loader::Host::didReceiveResponse):
5005 (WebCore::Loader::Host::didReceiveData):
5006 * page/EventHandler.cpp:
5007 (WebCore::EventHandler::selectCursor):
5008 * rendering/RenderImage.cpp:
5009 (WebCore::RenderImage::setCachedImage):
5010 (WebCore::RenderImage::imageChanged):
5011 * rendering/RenderImage.h:
5012 (WebCore::RenderImage::cachedImage):
5013 (WebCore::RenderImage::imagePtr):
5014 * rendering/style/RenderStyle.h:
5015 * rendering/style/StyleCachedImage.h:
5016 (WebCore::StyleCachedImage::data):
5017 (WebCore::StyleCachedImage::cachedImage):
5018 * svg/SVGFEImageElement.h:
5019 * svg/graphics/filters/SVGFEImage.h:
5020 * xml/XSLImportRule.h:
5021
beidson@apple.comab60d982008-09-05 04:58:12 +000050222008-09-04 Brady Eidson <beidson@apple.com>
5023
5024 Reviewed by Mitz
5025
5026 <rdar://problem/6180236> - Safari times out connections after 1 or 2 minutes
5027
5028 A 60-second default timeout was added in http://trac.webkit.org/changeset/17144 in an attempt
5029 to model default NSURLRequest behavior in a cross-platform manner.
5030
5031 Sadly by always enforcing this 60 second timeout, WebCore was stomping over the wishes of any Webkit
5032 client that wished to enforce a much larger default timeout using NSURLRequest API.
5033
5034 Additionally, upon reviewing what all other browsers do, it seems apparent that "no limit" is desirable
5035 behavior on the web and this restores previous Safari/WebKit behavior.
5036
5037 It would be easy to write a layout test for this, but to be effective it would have
5038 to run for at least 61 seconds, which seems insane until will can parallelize run-webkit-tests
5039
5040 * manual-tests/timeout-test.html: Added.
5041 * manual-tests/timeout-test.php: Added.
5042
5043 * platform/network/ResourceRequestBase.h:
5044 (WebCore::ResourceRequestBase::ResourceRequestBase): Rename the constant to "unspecifiedTimeoutInterval"
5045 and make it UINT_MAX so platforms that do set it have an effective "no timeout." (Windows, for example)
5046 * platform/network/mac/ResourceRequestMac.mm:
5047 (WebCore::ResourceRequest::doUpdatePlatformRequest): If the timeout for this request is
5048 "unspecifiedTimeoutInterval", then don't bother setting the timeout using NSURLRequest API, allowing
5049 WebKit applications to enforce their own default timeout.
5050
mitz@apple.com20268542008-09-05 04:26:32 +000050512008-09-04 Dan Bernstein <mitz@apple.com>
5052
5053 Reviewed by Beth Dakin.
5054
5055 - fix <rdar://problem/6198514> Changing a button's opacity triggers relayout
5056
5057 Test: fast/repaint/button-spurious-layout-hint.html
5058
5059 * rendering/RenderButton.cpp:
5060 (WebCore::RenderButton::setStyle): Reset the inner block's style box
5061 flex to 0 to avoid getting a spurious layout hint.
5062
kevino@webkit.org3e8c4072008-09-04 23:53:04 +000050632008-09-04 Kevin Ollivier <kevino@theolliviers.com>
5064
5065 wx build fixes.
5066
5067 * WebCoreSources.bkl:
5068 * bindings/js/ScriptControllerWx.cpp: Added.
5069 (WebCore::ScriptController::createScriptInstanceForWidget):
5070 * page/wx/AccessibilityObjectWx.cpp: Added.
5071 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
5072 * platform/graphics/wx/GraphicsContextWx.cpp:
5073 * webcore-base.bkl:
5074 * webcore-wx.bkl:
5075
mitz@apple.com95a87502008-09-04 23:27:19 +000050762008-09-04 Dan Bernstein <mitz@apple.com>
5077
5078 Reviewed by Mark Rowe.
5079
5080 - roll out r36050 because it made svg/custom/invalid-fill-hex.svg fail,
5081 and fixing https://bugs.webkit.org/show_bug.cgi?id=15360 appears to
5082 require a different approach
5083
5084 * css/CSSGrammar.y:
5085
mrowe@apple.com12b7c2d2008-09-04 21:00:02 +000050862008-09-04 Mark Rowe <mrowe@apple.com>
5087
mrowe@apple.com5bc4ea82008-09-04 21:44:28 +00005088 Reviewed by Eric Seidel.
5089
5090 Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
5091 Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
5092
5093 * Configurations/WebCore.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
5094 * DerivedSources.make: Revert to checking for ENABLE_DASHBOARD_SUPPORT rather than looking
5095 for ENABLE_DASHBOARD_SUPPORT in FEATURE_DEFINES.
5096
50972008-09-04 Mark Rowe <mrowe@apple.com>
5098
mrowe@apple.com12b7c2d2008-09-04 21:00:02 +00005099 Mac build fix.
5100
5101 * config.h: Only check the value of HAVE_CONFIG_H if it is defined.
5102
eric@webkit.org0716a542008-09-04 20:44:12 +000051032008-09-04 Eric Seidel <eric@webkit.org>
5104
5105 Build fix only, no review.
5106
5107 * dom/XMLTokenizer.cpp: Fix the Chromium merge build by adding a missing header (the Mac files must include it somewhere).
5108
jmalonzo@webkit.org6afc5d42008-09-04 20:26:16 +000051092008-09-04 Marco Barisione <marco.barisione@collabora.co.uk>
5110
5111 Reviewed by Eric Seidel.
5112
5113 http://bugs.webkit.org/show_bug.cgi?id=20380
5114 [GTK][AUTOTOOLS] Include autotoolsconfig.h from config.h
5115
5116 * config.h: Include the configuration header generated by autotools if
5117 available.
5118
mitz@apple.com9d7e4262008-09-04 18:15:25 +000051192008-09-04 Dan Bernstein <mitz@apple.com>
5120
5121 Rubber-stamped by Dave Hyatt.
5122
5123 - rename CachedResource::allReferencesRemoved() to allClientsRemoved()
5124
5125 * loader/CachedFont.cpp:
5126 (WebCore::CachedFont::allClientsRemoved):
5127 * loader/CachedFont.h:
5128 * loader/CachedImage.cpp:
5129 (WebCore::CachedImage::allClientsRemoved):
5130 * loader/CachedImage.h:
5131 * loader/CachedResource.cpp:
5132 (WebCore::CachedResource::removeClient):
5133 * loader/CachedResource.h:
5134 (WebCore::CachedResource::allClientsRemoved):
5135
aroben@apple.com0da404d2008-09-04 16:09:33 +000051362008-09-04 Adam Roben <aroben@apple.com>
5137
aroben@apple.comdd3861a2008-09-04 16:09:53 +00005138 Windows build fix after r36071
5139
5140 We were getting these errors:
5141
5142 error C2356: initialization segment must not change during translation
5143 unit
5144
5145 This was happening because multiple files #included by
5146 DerivedSources.cpp were themselves #including StaticConstructors.h. I
5147 fixed the error by adding header guards to StaticConstructors.h so its
5148 contents will only be included once.
5149
5150 But it's also not a good idea for StaticConstructors.h to end up in
5151 DerivedSources.cpp, since it ends up "polluting" all the source files
5152 we have in there. So I removed all the files that include
5153 StaticConstructors.h and added some preprocessor directives to
5154 DerivedSources.cpp to catch this error in the future.
5155
5156 * DerivedSources.cpp: Removed the *Names.cpp files, which include
5157 StaticConstructors.h, and added some preprocessor directives to make
5158 sure we don't end up accidentally including StaticConstructors.h in
5159 the future.
5160 * WebCore.vcproj/WebCore.vcproj: Added the *Names.cpp files.
5161 * platform/StaticConstructors.h: Added header guards.
5162
51632008-09-04 Adam Roben <aroben@apple.com>
5164
aroben@apple.com0da404d2008-09-04 16:09:33 +00005165 Windows build fix
5166
5167 * platform/graphics/win/FontPlatformData.h: Added a missing #include
5168 of PassRefPtr.h, and corrected the capitalization of RefCounted.h.
5169 * platform/text/PlatformString.h: Added a missing #include of
5170 PassRefPtr.h.
5171
vestbo@webkit.orgc0aeddf2008-09-04 11:44:17 +000051722008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
5173
5174 Reviewed by Simon.
5175
vestbo@webkit.orgb82da912008-09-04 14:24:58 +00005176 Fix the QtWebKit build to match changes in r36016
5177
5178 * WebCore.pro:
5179 * bridge/qt/qt_instance.cpp:
5180 (KJS::Bindings::QtInstance::getRuntimeObject):
5181 * bridge/qt/qt_runtime.cpp:
5182 (KJS::Bindings::convertQVariantToValue):
5183 (KJS::Bindings::QtConnectionObject::execute):
5184
51852008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
5186
5187 Reviewed by Simon.
5188
vestbo@webkit.orgc0aeddf2008-09-04 11:44:17 +00005189 Re-enable support for user stylesheets in QtWebKit
5190
5191 QtWebKit now follows the FRAME_LOADS_USER_STYLESHEET
5192 code path, which allows us to keep API support for
5193 loading user style sheets from remote URLs.
5194
5195 As part of the change UserStyleSheetLoader.cpp/h was
5196 moved from WebCore/loader/mac to WebCore/loader.
5197
5198 * WebCore.pro:
5199 * WebCore.xcodeproj/project.pbxproj:
5200 * dom/Document.h:
5201 * loader/UserStyleSheetLoader.cpp: Renamed from WebCore/loader/mac/UserStyleSheetLoader.cpp.
5202 (UserStyleSheetLoader::UserStyleSheetLoader):
5203 (UserStyleSheetLoader::~UserStyleSheetLoader):
5204 * loader/UserStyleSheetLoader.h: Renamed from WebCore/loader/mac/UserStyleSheetLoader.h.
5205 * page/qt/FrameQt.cpp:
5206 (WebCore::Frame::setUserStyleSheetLocation):
5207 (WebCore::Frame::setUserStyleSheet):
5208
alp@webkit.org539ff852008-09-04 09:14:42 +000052092008-09-04 Alp Toker <alp@nuanti.com>
5210
5211 Reviewed by Eric.
5212
5213 Remove left-over QT and CAIRO platform checks.
5214
5215 * html/CanvasRenderingContext2D.cpp:
5216
eric@webkit.orgbc0aab82008-09-04 08:39:51 +000052172008-09-04 Eric Seidel <eric@webkit.org>
5218
5219 Reviewed by Mark Rowe.
5220
mitz@apple.com9388d252008-09-04 08:58:58 +00005221 Fix leak of TextMetrics due to over-ref as see on buildbot.
eric@webkit.orgbc0aab82008-09-04 08:39:51 +00005222
5223 * html/TextMetrics.h: use adoptRef since RefCounted starts @ refcount 1 instead of 0 now.
5224
mitz@apple.com89557c52008-09-04 07:26:53 +000052252008-09-04 Dan Bernstein <mitz@apple.com>
5226
5227 Reviewed by Dave Hyatt.
5228
5229 - fix https://bugs.webkit.org/show_bug.cgi?id=19717
5230 <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
5231
5232 * rendering/RenderBlock.cpp:
5233 (WebCore::RenderBlock::layoutOnlyPositionedObjects): In the
5234 positioned movement only case, call
5235 tryLayoutDoingPositionedMovementOnly() and fall back on doing a full
5236 layout if that fails.
5237 (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
5238 * rendering/RenderBox.h:
5239 (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): Renamed
5240 layoutDoingPositionedMovementOnly to this, and made this function
5241 check if the width changed. If it did, return, leaving the object
5242 dirty. The caller can then call layout(). The width can change even
5243 in the "positioned movement only" case if the object is shrink-to-fit
5244 and the available width constraint is met. (This was the case in the
5245 bug).
5246 * rendering/RenderObject.h:
5247 (WebCore::RenderObject::tryLayoutDoingPositionedMovementOnly):
5248 Renamed layoutDoingPositionedMovementOnly() to this.
5249
eric@webkit.org8883b4a2008-09-04 06:31:37 +000052502008-09-03 Eric Seidel <eric@webkit.org>
5251
5252 No review, build fix only.
5253
5254 Attempt to fix the Qt build.
5255
5256 * WebCore.pro: add page/animation to include path
5257
mrowe@apple.comaa4bb8d2008-09-04 03:20:30 +000052582008-09-03 Mark Rowe <mrowe@apple.com>
5259
5260 Mac build fix. Correctly detect whether dashboard support is enabled.
5261
5262 * DerivedSources.make:
5263
eric@webkit.org3eefe672008-09-04 01:32:26 +000052642008-09-03 Eric Seidel <eric@webkit.org>
5265
5266 Reviewed by Sam.
5267
eric@webkit.org5e069092008-09-04 01:32:51 +00005268 Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
5269
5270 * Configurations/WebCore.xcconfig: add missing ENABLE_*
5271 * config.h: add rules for V8_BINDINGS
5272
52732008-09-03 Eric Seidel <eric@webkit.org>
5274
5275 Reviewed by Sam.
5276
eric@webkit.org3eefe672008-09-04 01:32:26 +00005277 https://bugs.webkit.org/show_bug.cgi?id=20620
5278
5279 Add #if USE(JSC) around KJS dependencies
5280 Remove !USE(JAVASCRIPTCORE_BINDINGS) support for 3 reasons:
5281 1. Most platforms have it on anyway
5282 2. V8 is going to want to share some of that code
5283 3. Those platforms which want it off, should have a separate file instead of an #ifdef in our .cpp
5284
5285 * bindings/js/JSPluginElementFunctions.cpp: remove !USE(JAVASCRIPTCORE_BINDINGS) support
5286 * config.h: change JAVASCRIPTCORE_BINDINGS to JSC and add USE(V8)
5287 * html/HTMLAppletElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
5288 * html/HTMLAppletElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
5289 * html/HTMLEmbedElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
5290 * html/HTMLEmbedElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
5291 * html/HTMLObjectElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
5292 * html/HTMLObjectElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
5293 * html/HTMLPlugInElement.cpp: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
5294 * html/HTMLPlugInElement.h: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
5295 * platform/text/AtomicString.cpp: add USE(JSC)
5296 * platform/text/AtomicString.h: add USE(JSC)
5297 * platform/text/PlatformString.h: add USE(JSC)
5298 * platform/text/String.cpp: add USE(JSC)
5299 * platform/text/StringImpl.cpp: add USE(JSC)
5300 * platform/text/StringImpl.h: add USE(JSC)
5301
mrowe@apple.comfbe724c2008-09-03 23:46:54 +000053022008-09-03 Dean McNamee <deanm@chromium.org>
5303
5304 Reviewed by Darin Adler.
5305
5306 Fix https://bugs.webkit.org/show_bug.cgi?id=20511
5307 Bug 20511: Remove static initializers on Windows
5308
5309 Avoid static initializers on Windows by forcing Visual C++ to put
5310 all static initializers in a code segment that is never executed.
5311
5312 * config.h:
5313 * css/MediaFeatureNames.cpp:
5314 * dom/EventNames.cpp:
5315 * dom/QualifiedName.cpp:
5316 * dom/make_names.pl:
5317 * platform/StaticConstructors.h:
5318 * platform/text/AtomicString.cpp:
5319
mrowe@apple.com3aa63182008-09-03 23:40:49 +000053202008-09-03 Dirk Schulze <vbs85@gmx.de>
5321
5322 Reviewed by Dave Hyatt.
5323
5324 Make FontCairo draw TextStroke and TextFill separately.
5325
5326 [CAIRO] draw TextFill and TextStroke separately.
5327 [https://bugs.webkit.org/show_bug.cgi?id=20631]
5328
5329 * platform/graphics/cairo/FontCairo.cpp:
5330 (WebCore::Font::drawGlyphs):
5331
eric@webkit.org4ac94e62008-09-18 23:07:55 +000053322008-09-03 Peter Kasting <pkasting@google.com>
mrowe@apple.comdcd72b72008-09-03 23:34:40 +00005333
5334 Reviewed by Dave Hyatt.
5335
5336 https://bugs.webkit.org/show_bug.cgi?id=19663
5337 Account for paint and timer lag when animating images. Also pretend
5338 that images whose animations were paused (by becoming invisible)
5339 continued to animate, by "catching up" to the correct frame when they're
5340 shown again.
5341
5342 * platform/graphics/BitmapImage.cpp:
5343 (WebCore::BitmapImage::BitmapImage):
5344 (WebCore::BitmapImage::startAnimation):
5345 (WebCore::BitmapImage::advanceAnimation):
5346 (WebCore::BitmapImage::internalAdvanceAnimation):
5347 (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
5348 * platform/graphics/BitmapImage.h:
5349 * platform/graphics/cairo/ImageCairo.cpp:
5350 (WebCore::BitmapImage::draw):
5351 * platform/graphics/cg/ImageCG.cpp:
5352 (WebCore::BitmapImage::draw):
5353 * platform/graphics/qt/ImageQt.cpp:
5354 (WebCore::BitmapImage::draw):
5355 * platform/graphics/wx/ImageWx.cpp:
5356 (WebCore::BitmapImage::draw):
5357
kmccullough@apple.comb0f4c622008-09-03 21:53:17 +000053582008-09-03 Kevin McCullough <kmccullough@apple.com>
5359
5360 Reviewed by Tim.
5361
5362 Remove the rest of the "zombie" code from the profiler.
5363 - There is no longer a need for the ProfilerClient callback mechanism.
5364
5365 * page/Console.cpp:
5366 (WebCore::Console::Console):
5367 (WebCore::Console::profile):
5368 (WebCore::Console::profileEnd): Move the variables from the header to
5369 here since we don't have to wait for a callback to use them.
5370 * page/Console.h:
5371 * page/InspectorController.cpp:
5372 (WebCore::InspectorController::startUserInitiatedProfiling):
5373 (WebCore::InspectorController::stopUserInitiatedProfiling):
5374 * page/InspectorController.h:
5375
adachan@apple.com38c66182008-09-03 21:43:44 +000053762008-09-03 Ada Chan <adachan@apple.com>
5377
5378 Windows build fix.
5379
5380 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitCSSKeyframeRule.cpp and JSWebKitCSSKeyframesRule.cpp to the project.
5381
dino@apple.com5c917622008-09-03 21:15:53 +000053822008-09-01 Dean Jackson <dino@apple.com>
5383
5384 Reviewed by Dave Hyatt.
5385
5386 https://bugs.webkit.org/show_bug.cgi?id=20594
5387 Add DOM interfaces for WebKitCSSKeyframeRule
5388 and WebKitCSSKeyframesRule.
5389
5390 TEST: LayoutTests/css3/keyframes-rule.html
5391
5392 * css/WebKitCSSKeyframeRule.idl: Added
5393 * css/WebKitCSSKeyframesRule.idl: Added
5394
5395 * bindings/js/JSCSSRuleCustom.cpp:
5396 (WebCore::toJS):
5397 Add return of new JS Keyframe rules
5398 * bindings/objc/DOMInternal.h:
5399 Include new internal header
5400
5401 * DerivedSources.make:
5402 * GNUmakefile.am:
5403 * WebCore.pro:
5404 * WebCore.vcproj/WebCore.vcproj:
5405 * WebCore.xcodeproj/project.pbxproj:
5406 * WebCoreSources.bkl:
5407 Build configs for new files
5408
aroben@apple.com1f51bfa2008-09-03 20:30:59 +000054092008-09-03 Adam Roben <aroben@apple.com>
5410
5411 Windows build fix
5412
5413 * DerivedSources.cpp: Add JSTextMetrics.cpp to fix the build.
5414 * WebCore.vcproj/WebCore.vcproj: Add JSTextMetrics.h for
5415 convenience/consistency.
5416
adele@apple.com27713582008-09-03 20:13:41 +000054172008-09-03 Adele Peterson <adele@apple.com>
5418
5419 Build fix.
5420
5421 * WebCore.vcproj/WebCore.vcproj:
5422
hyatt@apple.com4b38ed82008-09-03 18:32:05 +000054232008-09-03 David Hyatt <hyatt@apple.com>
5424
5425 Fix for bug 18203, right floats should be allowed to overflow past the left border edge.
5426
5427 Reviewed by Darin (ages ago)
5428
5429 Added fast/block/float/clamped-right-float.html
5430
5431 * rendering/RenderBlock.cpp:
5432 (WebCore::RenderBlock::positionNewFloats):
5433
hyatt@apple.comafe62052008-09-03 18:13:39 +000054342008-09-02 David Hyatt <hyatt@apple.com>
5435
5436 Add support for canvas text drawing APIs.
5437
5438 Reviewed by olliej
5439
5440 Tests added as fast/canvas/canvas-text-*.html
5441
5442 * DerivedSources.make:
5443 * WebCore.xcodeproj/project.pbxproj:
5444 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
5445 (WebCore::JSCanvasRenderingContext2D::fillText):
5446 (WebCore::JSCanvasRenderingContext2D::strokeText):
5447 * css/CSSStyleSelector.cpp:
5448 (WebCore::CSSStyleSelector::initForStyleResolve):
5449 (WebCore::CSSStyleSelector::applyPropertyToStyle):
5450 * css/CSSStyleSelector.h:
5451 * html/CanvasRenderingContext2D.cpp:
5452 (WebCore::CanvasRenderingContext2D::State::State):
5453 (WebCore::CanvasRenderingContext2D::font):
5454 (WebCore::CanvasRenderingContext2D::setFont):
5455 (WebCore::CanvasRenderingContext2D::textAlign):
5456 (WebCore::CanvasRenderingContext2D::setTextAlign):
5457 (WebCore::CanvasRenderingContext2D::textBaseline):
5458 (WebCore::CanvasRenderingContext2D::setTextBaseline):
5459 (WebCore::CanvasRenderingContext2D::fillText):
5460 (WebCore::CanvasRenderingContext2D::strokeText):
5461 (WebCore::CanvasRenderingContext2D::measureText):
5462 (WebCore::CanvasRenderingContext2D::drawTextInternal):
5463 (WebCore::CanvasRenderingContext2D::accessFont):
5464 * html/CanvasRenderingContext2D.h:
5465 * html/CanvasRenderingContext2D.idl:
5466 * html/TextMetrics.h: Added.
5467 (WebCore::TextMetrics::create):
5468 (WebCore::TextMetrics::width):
5469 (WebCore::TextMetrics::setWidth):
5470 (WebCore::TextMetrics::TextMetrics):
5471 * html/TextMetrics.idl: Added.
5472 * platform/graphics/Font.cpp:
5473 (WebCore::Font::lineGap):
5474 * platform/graphics/Font.h:
5475 * platform/graphics/GraphicsContext.cpp:
5476 (WebCore::GraphicsContext::drawBidiText):
5477 * platform/graphics/GraphicsContext.h:
5478 * platform/graphics/GraphicsTypes.cpp:
5479 (WebCore::textAlignName):
5480 (WebCore::parseTextAlign):
5481 (WebCore::textBaselineName):
5482 (WebCore::parseTextBaseline):
5483 * platform/graphics/GraphicsTypes.h:
5484 (WebCore::):
5485
sullivan@apple.combc066af2008-09-03 17:37:24 +000054862008-09-03 John Sullivan <sullivan@apple.com>
5487
5488 Fixed <rdar://problem/6193022> <rdar://problem/6193022> Crash occurs at WebCore::AnimationBase::propertiesEqual () after certain steps
5489
5490 Fixed by Darin, reviewed by me
5491
5492 * page/animation/AnimationBase.cpp:
5493 (WebCore::AnimationBase::propertiesEqual):
5494 added ensurePropertyMap() to this static function
5495 (WebCore::AnimationBase::getPropertyAtIndex):
5496 ditto
5497 (WebCore::AnimationBase::getNumProperties):
5498 ditto
5499
kmccullough@apple.com70168ee2008-09-03 17:35:42 +000055002008-09-03 Kevin McCullough <kmccullough@apple.com>
5501
5502 Reviewed by Darin and Tim.
5503
5504 Remove most of the "zombie" mode from the profiler. Next we will need
5505 to remove the client callback mechanism in profiles.
5506 - These changes are a result of changes to JSCore.
5507
5508 * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html:
5509 * page/Console.cpp:
5510 (WebCore::retrieveLastCaller):
5511 (WebCore::Console::profileEnd):
5512 * page/InspectorController.cpp:
5513 (WebCore::InspectorController::stopUserInitiatedProfiling):
5514
adele@apple.com643616b2008-09-03 16:57:58 +000055152008-09-03 Adele Peterson <adele@apple.com>
5516
5517 Reviewed by Darin Adler.
5518
5519 Test: fast/forms/search-display-none-cancel-button.html
5520
5521 Allow display:none to work on a search field's cancel button. Prepare for adding more style-ability for the results button too.
5522
5523 * css/html4.css: Set display:inline-block for these buttons. Now they can be overridden by a web author.
5524
5525 * rendering/RenderTextControl.cpp:
5526 (WebCore::RenderTextControl::setStyle): Add nil checks for the button renderers.
5527 (WebCore::RenderTextControl::createResultsButtonStyle): Don't set the display explicitly. This is now done in html4.css.
5528 (WebCore::RenderTextControl::createCancelButtonStyle): ditto.
5529 (WebCore::RenderTextControl::createSubtreeIfNeeded):
5530 Reorganize this code so our complicated way of adding shadow nodes is abstracted out into the TextControlInnerElement class.
5531 (WebCore::RenderTextControl::updateFromElement): Added nil checks for the button renderers.
5532 (WebCore::RenderTextControl::subtreeHasChanged): ditto.
5533 (WebCore::RenderTextControl::calcHeight): ditto.
5534 (WebCore::RenderTextControl::nodeAtPoint): ditto.
5535 (WebCore::RenderTextControl::layout): ditto.
5536 (WebCore::RenderTextControl::calcPrefWidths): ditto.
5537 (WebCore::RenderTextControl::clientPaddingLeft): ditto.
5538 (WebCore::RenderTextControl::clientPaddingRight): ditto.
5539
5540 * rendering/TextControlInnerElements.cpp:
5541 (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock): Moved from RenderTextControl.cpp.
5542 (WebCore::RenderTextControlInnerBlock::nodeAtPoint): ditto.
5543 (WebCore::TextControlInnerElement::attachInnerElement): Added.
5544 This does all the separate steps of attaching a shadow node that used to be repeated in RenderTextControl::createSubtreeIfNeeded for each element.
5545 (WebCore::TextControlInnerTextElement::createRenderer): Added. Creates a RenderTextControlInnerBlock.
5546 * rendering/TextControlInnerElements.h:
5547
ap@webkit.orgacd84142008-09-03 08:08:19 +000055482008-08-28 Alexey Proskuryakov <ap@webkit.org>
5549
5550 Reviewed by Maciej.
5551
5552 Elminate SQLiteAuthorizer class.
5553
5554 * WebCore.xcodeproj/project.pbxproj:
5555 * WebCore.vcproj/WebCore.vcproj:
5556 * GNUmakefile.am
5557 Removed SQLiteAuthorizer.h.
5558
5559 * platform/sql/SQLiteAuthorizer.cpp:
5560 * platform/sql/SQLiteAuthorizer.h: Removed.
5561 * platform/sql/SQLiteDatabase.cpp:
5562 (WebCore::SQLiteDatabase::authorizerFunction):
5563 (WebCore::SQLiteDatabase::setAuthorizer):
5564 * platform/sql/SQLiteDatabase.h:
5565 * storage/DatabaseAuthorizer.h:
5566 (WebCore::DatabaseAuthorizer::create):
5567 (WebCore::DatabaseAuthorizer::createView):
5568 (WebCore::DatabaseAuthorizer::createTempView):
5569 (WebCore::DatabaseAuthorizer::dropView):
5570 (WebCore::DatabaseAuthorizer::dropTempView):
5571 (WebCore::DatabaseAuthorizer::allowSelect):
5572 (WebCore::DatabaseAuthorizer::allowReindex):
5573 Merge SQLiteAuthorizer and DatabaseAuthorizer, as keeping them separate serves no purpose.
5574
mrowe@apple.com2ecd4862008-09-03 07:05:48 +000055752008-09-03 Dirk Schulze <vbs85@gmx.de>
5576
5577 Reviewed by Mark Rowe.
5578
5579 WebKitGtk build fix.
5580
5581 * GNUmakefile.am:
5582 * page/animation/AnimationController.h:
5583
mrowe@apple.come344ad02008-09-03 06:59:03 +000055842008-09-02 Robert Blaut <webkit@blaut.biz>
5585
5586 Reviewed by Geoff Garen.
5587
5588 Fix for <https://bugs.webkit.org/show_bug.cgi?id=16913>
5589 Misplaced elements should not close DL lists.
5590
5591 Test: fast/invalid/test-case-tr-th-td-should-not-close-dl-list.html
5592
5593 * html/HTMLParser.cpp:
5594 (WebCore::HTMLParser::handleError):
5595
mrowe@apple.com7a909462008-09-03 06:51:31 +000055962008-09-02 Glenn Wilson <wilsong@gmail.com>
5597
5598 Reviewed by Darin Adler.
5599
5600 Fix for <https://bugs.webkit.org/show_bug.cgi?id=15360>
5601 Bug 15360: color:#{predefined colorName} is treated as colorName in Safari
5602
5603 We would inappropriately interpret and apply an invalid CSS "color" property
5604 when the value is a predefined color preceded by a '#' symbol. For example,
5605 style="color:#gray;" would apply the color gray when it should not.
5606
5607 In the bison template, "hexcolor" was defined as both "HEX maybe_space" OR "IDENT maybe_space".
5608 This caused identifiers not fitting the appropriate hex format but preceded by a '#' to be
5609 interpreted as a valid color (CSSPrimitiveValue::CSS_PARSER_HEXCOLOR), when it was really just
5610 an ignorable token.
5611
5612 To correct this, "IDENT maybe_space" was removed from "hexcolor" and added under "term" as
5613 '#' IDENT maybe_space, which is then processed as a CSSPrimitiveValue::CSS_STRING instead of
5614 CSSPrimitiveValue::CSS_PARSER_HEXCOLOR.
5615
5616 Test: css1/color_and_background/invalid_color.html
5617
5618 * css/CSSGrammar.y:
5619
mrowe@apple.comda9a1442008-09-03 06:22:12 +000056202008-09-02 Mihnea Ovidenie <mihnea@adobe.com>
5621
5622 Reviewed by Darin Adler.
5623
5624 Fix for https://bugs.webkit.org/show_bug.cgi?id=19964
5625 Bug 19964: Divide by zero crash in RenderBox::calculateBackgroundSize with 0,0 bmp background image
5626
5627 Add a check to RenderBox::repaintLayerRectsForImage to make sure the current layer image can be rendered.
5628
5629 Test: css3/khtml-background-size-0x0-bmp.html
5630
5631 * rendering/RenderBox.cpp:
5632 (WebCore::RenderBox::repaintLayerRectsForImage):
5633
mrowe@apple.com6625ae52008-09-03 06:12:30 +000056342008-09-02 Glenn Wilson <wilsong@gmail.com>
5635
5636 Reviewed by Eric Seidel.
5637
5638 Fix https://bugs.webkit.org/show_bug.cgi?id=20397
5639 Bug 20397: Invalid webkit-border-bottom-left-radius property causes crash
5640
5641 The function checkForOrphanedUnits() would change the length of a list whose size was
5642 was already determined before the call to checkForOrphanedUnits was made. Later in
5643 the caller, the old size was being used for boundary management.
5644
5645 This has been fixed by moving the call to checkForOrphanedUnits() earlier in the
5646 calling function, before the size of the list is determined.
5647
5648 Test: fast/css/orphaned_units_crash.html
5649
5650 * css/CSSParser.cpp:
5651 (WebCore::CSSParser::parseValue): Moved call to checkForOrphanedUnits() earlier in the function.
5652
mrowe@apple.com170bd522008-09-03 05:49:51 +000056532008-09-02 Dirk Schulze <vbs85@gmx.de>
5654
5655 Reviewed by Darin Adler.
5656
mrowe@apple.comeb877a52008-09-03 06:01:15 +00005657 Fallback on invalid fill or stroke styles in Canvas was
5658 transparent black. Changed it to last valid style.
5659
5660 Canvas fillStyle() and strokeStyle() needs fallback
5661 https://bugs.webkit.org/show_bug.cgi?id=20474
5662
5663 Tests: fast/canvas/canvas-invalid-fillstyle.html
5664 fast/canvas/canvas-invalid-strokestyle.html
5665
5666 * html/CanvasStyle.cpp:
5667 (WebCore::CanvasStyle::applyStrokeColor):
5668 (WebCore::CanvasStyle::applyFillColor):
5669
56702008-09-02 Dirk Schulze <vbs85@gmx.de>
5671
5672 Reviewed by Darin Adler.
5673
mrowe@apple.com170bd522008-09-03 05:49:51 +00005674 Fix https://bugs.webkit.org/show_bug.cgi?id=20468
5675 Updated drawImage() in canvas to match the current specification.
5676
5677 Test: fast/canvas/drawImage-with-negative-source-destination.html
5678
5679 * html/CanvasRenderingContext2D.cpp:
5680 (WebCore::normalizeRect):
5681 (WebCore::CanvasRenderingContext2D::drawImage):
5682
mrowe@apple.com96916d12008-09-03 05:41:44 +000056832008-08-26 Mark Rowe <mrowe@apple.com>
5684
5685 Reviewed by Darin Adler.
5686
5687 <rdar://problem/5768210> Switch back to the system version of SQLite
5688
5689 Use the system version of SQLite when it is new enough to provide the functionality
5690 that WebCore requires.
5691
5692 * Configurations/Base.xcconfig:
5693 * Configurations/DebugRelease.xcconfig:
5694 * Configurations/WebCore.xcconfig:
5695
mitz@apple.comce268c12008-09-03 02:59:00 +000056962008-09-02 Dan Bernstein <mitz@apple.com>
5697
5698 - build fix
5699
5700 * page/animation/AnimationBase.h:
5701
dino@apple.com7e49a7a2008-09-03 01:32:14 +000057022008-09-02 Chris Marrin <cmarrin@apple.com>
5703
5704 Reviewed by Dave Hyatt.
5705
5706 AnimationController.cpp should be split into separate files
5707 https://bugs.webkit.org/show_bug.cgi?id=20604
5708
5709 Note: All makefiles, except WebCore.xcodeproj have been changed without testing, upon
5710 recommendation of Dave Hyatt.
5711
5712 * GNUmakefile.am:
5713 * WebCore.pro:
5714 * WebCore.vcproj/WebCore.vcproj:
5715 * WebCore.xcodeproj/project.pbxproj:
5716 * WebCoreSources.bkl:
5717 Build files.
5718
5719 * page/AnimationController.cpp: Removed.
5720 * page/AnimationController.h: Removed.
5721 * page/animation: Added.
5722 * page/animation/AnimationBase.cpp: Added.
5723 * page/animation/AnimationBase.h: Added.
5724 * page/animation/AnimationController.cpp: Copied from WebCore/page/AnimationController.cpp.
5725 * page/animation/AnimationController.h: Copied from WebCore/page/AnimationController.h.
5726 * page/animation/CompositeAnimation.cpp: Added.
5727 * page/animation/CompositeAnimation.h: Added.
5728 * page/animation/ImplicitAnimation.cpp: Added.
5729 * page/animation/ImplicitAnimation.h: Added.
5730 * page/animation/KeyframeAnimation.cpp: Added.
5731 * page/animation/KeyframeAnimation.h: Added.
5732
mitz@apple.comcb917a22008-09-03 00:57:37 +000057332008-09-02 Dan Bernstein <mitz@apple.com>
5734
5735 - release build fix
5736
5737 * platform/graphics/cg/GraphicsContextCG.cpp:
5738 (WebCore::calculateDrawingMode):
5739
timothy@apple.comf3aa7342008-09-02 21:30:26 +000057402008-09-02 Timothy Hatcher <timothy@apple.com>
5741
timothy@apple.comc33ff3c2008-09-02 21:35:02 +00005742 Make console functions log the correct resource URL and
5743 line number for where the call originated.
5744
5745 https://bugs.webkit.org/show_bug.cgi?id=17234
5746 <rdar://problem/5732837>
5747
5748 Reviewed by Kevin McCullough.
5749
5750 Test: manual-tests/inspector/console-call-line-numbers.html
5751
5752 * bindings/js/JSConsoleCustom.cpp:
5753 (WebCore::JSConsole::count): Call the impl.
5754 (WebCore::JSConsole::timeEnd): Ditto.
5755 * manual-tests/inspector/console-call-line-numbers.html: Added.
5756 * manual-tests/inspector/resources/script-console-calls.js: Added.
5757 * page/Console.cpp:
5758 (WebCore::retrieveLastCaller): Helper to get the URL and line.
5759 (WebCore::Console::error): Call retrieveLastCaller to get the URL and
5760 line number to pass to addMessageToConsole.
5761 (WebCore::Console::info): Ditto.
5762 (WebCore::Console::log): Ditto.
5763 (WebCore::Console::assertCondition): Ditto.
5764 (WebCore::Console::count): Ditto.
5765 (WebCore::Console::timeEnd): Ditto.
5766 (WebCore::Console::warn): Ditto.
5767 * page/Console.h:
5768 * page/Console.idl: Make count and timeEnd custom.
5769
57702008-09-02 Timothy Hatcher <timothy@apple.com>
5771
timothy@apple.comf3aa7342008-09-02 21:30:26 +00005772 Removed IDL files from WebCore's framework resources.
5773
5774 * WebCore.xcodeproj/project.pbxproj:
5775
mitz@apple.comfb6ad392008-09-02 20:39:29 +000057762008-09-02 Dan Bernstein <mitz@apple.com>
5777
5778 Reviewed by Dave Hyatt.
5779
5780 - <rdar://problem/5681647> pages at http://www.stendmarsofa.com/ are so slow to calculate style it seems like a hang
5781
5782 * html/HTMLParser.cpp:
5783 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added a
5784 cap on the number of consecutive identical residual style tags to
5785 reopen.
5786 (WebCore::HTMLParser::popBlock): Ditto.
5787
ap@webkit.org879328b2008-09-02 16:16:06 +000057882008-09-02 Alexey Proskuryakov <ap@webkit.org>
5789
5790 Reviewed by Adam Roben.
5791
5792 A little database quota management cleanup.
5793
5794 * storage/OriginQuotaManager.cpp:
5795 (WebCore::OriginQuotaManager::OriginQuotaManager):
5796 (WebCore::OriginQuotaManager::lock):
5797 (WebCore::OriginQuotaManager::unlock):
5798 (WebCore::OriginQuotaManager::trackOrigin):
5799 (WebCore::OriginQuotaManager::tracksOrigin):
5800 (WebCore::OriginQuotaManager::addDatabase):
5801 (WebCore::OriginQuotaManager::removeDatabase):
5802 (WebCore::OriginQuotaManager::removeOrigin):
5803 (WebCore::OriginQuotaManager::markDatabase):
5804 (WebCore::OriginQuotaManager::diskUsage):
5805 * storage/OriginQuotaManager.h:
5806 Changed to assert that a lock is taken more directly and reliably. Removed comments about
5807 main/background threads, as this is likely to stop being true with synchronous Database calls
5808 being made on worker threads.
5809
5810 * storage/OriginUsageRecord.cpp:
5811 (WebCore::OriginUsageRecord::OriginUsageRecord):
5812 (WebCore::OriginUsageRecord::addDatabase):
5813 (WebCore::OriginUsageRecord::removeDatabase):
5814 (WebCore::OriginUsageRecord::markDatabase):
5815 (WebCore::OriginUsageRecord::diskUsage):
5816 * storage/OriginUsageRecord.h:
5817 (WebCore::OriginUsageRecord::DatabaseEntry::DatabaseEntry):
5818 Don't use a magic value for unknown. It is totally unnecessary for DatabaseEntry, and
5819 can be replaced with a single boolean for OriginUsageRecord.
5820 Added assertions for string parameters being unshared.
5821
5822
abarth@webkit.orgaea97a02008-09-02 04:26:15 +000058232008-09-01 Adam Barth <abarth@webkit.org>
5824
5825 Reviewed by Sam Weinig.
5826
5827 https://bugs.webkit.org/show_bug.cgi?id=19760
5828
5829 Make granting LoadLocalResources conditional on a policy.
5830
5831 * WebCore.base.exp:
5832 * dom/Document.cpp:
5833 (WebCore::Document::initSecurityContext):
5834 * loader/FrameLoader.cpp:
5835 (WebCore::FrameLoader::setLocalLoadPolicy):
5836 (WebCore::FrameLoader::restrictAccessToLocal):
5837 * loader/FrameLoader.h:
5838 (WebCore::FrameLoader::):
5839 * platform/SecurityOrigin.cpp:
5840 (WebCore::SecurityOrigin::grantLoadLocalResources):
5841 * platform/SecurityOrigin.h:
5842
dino@apple.com6e2db502008-09-01 23:05:28 +000058432008-09-01 Dean Jackson <dino@apple.com>
5844
dino@apple.com59ca9f52008-09-01 23:34:13 +00005845 Reviewed by Sam Weinig.
5846
5847 https://bugs.webkit.org/show_bug.cgi?id=20571
5848 Make sure Window object can assign Animation/Transition event
5849 listeners via attributes.
5850
5851 Also added a bunch of transition event tests, although
5852 only transition-end-event-window is directly relevant to this patch.
5853
5854 (WebCore::JSDOMWindowBase::put):
5855
5856 Tests: transitions/transition-end-event-all-properties.html
5857 transitions/transition-end-event-attributes.html
5858 transitions/transition-end-event-container.html
5859 transitions/transition-end-event-left.html
5860 transitions/transition-end-event-multiple-01.html
5861 transitions/transition-end-event-multiple-02.html
5862 transitions/transition-end-event-multiple-03.html
5863 transitions/transition-end-event-multiple-04.html
5864 transitions/transition-end-event-nested.html
5865 transitions/transition-end-event-transform.html
5866 transitions/transition-end-event-window.html
5867
58682008-09-01 Dean Jackson <dino@apple.com>
5869
dino@apple.com6e2db502008-09-01 23:05:28 +00005870 Reviewed by Sam Weinig
5871
5872 Code styling cleanup.
5873
5874 * bindings/js/JSDOMWindowBase.cpp:
5875 (WebCore::JSDOMWindowBase::getValueProperty):
5876 (WebCore::JSDOMWindowBase::put):
5877
weinig@apple.com3412bb42008-09-01 21:22:54 +000058782008-09-01 Geoffrey Garen <ggaren@apple.com>
5879
5880 Reviewed by Darin Adler.
5881
5882 First cut at inline caching for access to vanilla JavaScript properties.
5883
5884 Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
5885 to WebCore classes, and PutPropertySlot& arguments to put functions.
5886
5887 (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
5888 inline caching for global properties, so global assignment can be optimized.
5889
5890 * ForwardingHeaders/kjs/StructureID.h: Added.
5891 * bindings/js/JSDOMBinding.h:
5892 (WebCore::DOMObject::DOMObject):
5893 * bindings/js/JSDOMWindowBase.cpp:
5894 (WebCore::JSDOMWindowBase::put):
5895 * bindings/js/JSDOMWindowBase.h:
5896 * bindings/js/JSDOMWindowCustom.h:
5897 (WebCore::JSDOMWindow::customPut):
5898 * bindings/js/JSDOMWindowShell.cpp:
5899 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
5900 (WebCore::JSDOMWindowShell::put):
5901 * bindings/js/JSDOMWindowShell.h:
5902 * bindings/js/JSEventTargetBase.h:
5903 (WebCore::JSEventTargetBase::put):
5904 * bindings/js/JSEventTargetNode.h:
5905 (WebCore::JSEventTargetNode::put):
5906 * bindings/js/JSHTMLAppletElementCustom.cpp:
5907 (WebCore::JSHTMLAppletElement::customPut):
5908 * bindings/js/JSHTMLEmbedElementCustom.cpp:
5909 (WebCore::JSHTMLEmbedElement::customPut):
5910 * bindings/js/JSHTMLInputElementBase.cpp:
5911 (WebCore::JSHTMLInputElementBase::put):
5912 * bindings/js/JSHTMLInputElementBase.h:
5913 * bindings/js/JSHTMLObjectElementCustom.cpp:
5914 (WebCore::JSHTMLObjectElement::customPut):
5915 * bindings/js/JSHistoryCustom.cpp:
5916 (WebCore::JSHistory::customPut):
5917 * bindings/js/JSInspectedObjectWrapper.cpp:
5918 (WebCore::JSInspectedObjectWrapper::wrap):
5919 (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
5920 * bindings/js/JSInspectedObjectWrapper.h:
5921 * bindings/js/JSInspectorCallbackWrapper.cpp:
5922 (WebCore::JSInspectorCallbackWrapper::wrap):
5923 (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
5924 * bindings/js/JSInspectorCallbackWrapper.h:
5925 * bindings/js/JSLocationCustom.cpp:
5926 (WebCore::JSLocation::customPut):
5927 * bindings/js/JSPluginElementFunctions.cpp:
5928 (WebCore::runtimeObjectCustomPut):
5929 * bindings/js/JSPluginElementFunctions.h:
5930 * bindings/js/JSQuarantinedObjectWrapper.cpp:
5931 (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
5932 (WebCore::JSQuarantinedObjectWrapper::put):
5933 * bindings/js/JSQuarantinedObjectWrapper.h:
5934 * bindings/js/JSStorageCustom.cpp:
5935 (WebCore::JSStorage::customPut):
5936 * bindings/objc/WebScriptObject.mm:
5937 (-[WebScriptObject setValue:forKey:]):
5938 * bindings/scripts/CodeGeneratorJS.pm:
5939 * bridge/NP_jsobject.cpp:
5940 (_NPN_SetProperty):
5941 * bridge/jni/jni_jsobject.mm:
5942 (JavaJSObject::setMember):
5943 * bridge/objc/objc_class.mm:
5944 (KJS::Bindings::ObjcClass::fallbackObject):
5945 * bridge/objc/objc_runtime.h:
5946 * bridge/objc/objc_runtime.mm:
5947 (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
5948 (ObjcFallbackObjectImp::put):
5949 * bridge/runtime.cpp:
5950 (KJS::Bindings::Instance::createRuntimeObject):
5951 * bridge/runtime_array.cpp:
5952 (RuntimeArray::put):
5953 * bridge/runtime_array.h:
5954 * bridge/runtime_object.cpp:
5955 (RuntimeObjectImp::RuntimeObjectImp):
5956 (RuntimeObjectImp::put):
5957 * bridge/runtime_object.h:
5958
jmalonzo@webkit.org1f770ba2008-09-01 12:43:34 +000059592008-09-01 Dirk Schulze <vbs85@gmx.de>
5960
5961 Reviewed by Eric Seidel.
5962
jmalonzo@webkit.org37f07882008-09-01 12:43:48 +00005963 Fixed border-radius for Cairo.
5964
5965 * platform/graphics/cairo/GraphicsContextCairo.cpp:
5966 (WebCore::GraphicsContext::strokeArc):
5967
59682008-09-01 Dirk Schulze <vbs85@gmx.de>
5969
5970 Reviewed by Eric Seidel.
5971
jmalonzo@webkit.org1f770ba2008-09-01 12:43:34 +00005972 Added canvas's globalAlpha to cairo.
5973
5974 * platform/graphics/GraphicsContext.h:
5975 * platform/graphics/cairo/GraphicsContextCairo.cpp:
5976 (WebCore::GraphicsContext::fillPath):
5977 (WebCore::GraphicsContext::strokePath):
5978 (WebCore::GraphicsContext::setAlpha):
5979 (WebCore::GraphicsContext::getAlpha):
5980 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
5981 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
5982 * platform/graphics/cairo/ImageCairo.cpp:
5983 (WebCore::BitmapImage::draw):
5984
hausmann@webkit.orgecd099d2008-08-31 13:13:28 +000059852008-08-31 Simon Hausmann <hausmann@webkit.org>
5986
5987 Unreviewed Qt build fix.
5988
5989 * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
5990 the .h file
5991
darin@apple.come7945852008-08-31 06:58:07 +000059922008-08-30 Darin Adler <darin@apple.com>
5993
5994 Reviewed by Maciej.
5995
5996 - adopt some new JavaScriptCore functions where appropriate
5997
5998 * bindings/js/JSDOMWindowBase.cpp:
5999 (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
6000 (WebCore::windowProtoFuncBToA): Ditto.
6001 * bindings/js/JSEventListener.cpp:
6002 (WebCore::JSLazyEventListener::eventParameterName): Adopted
6003 jsNontrivialString.
6004 * bindings/js/JSSVGLazyEventListener.cpp:
6005 (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
6006
beidson@apple.com21c821f2008-08-30 00:26:01 +000060072008-08-29 Brady Eidson <beidson@apple.com>
6008
beidson@apple.come1bd6032008-08-30 00:30:11 +00006009 Reviewed by Anders' rubberstamp
6010
6011 Style cleanup to match MediaTokenizer::writeRawData()
6012
6013 * loader/PluginDocument.cpp:
6014 (WebCore::PluginTokenizer::writeRawData):
6015
60162008-08-29 Brady Eidson <beidson@apple.com>
6017
beidson@apple.com21c821f2008-08-30 00:26:01 +00006018 Reviewed by Anders
6019
6020 Fix regression I introducted in 35946
6021 Already covered by media/video-click-dlbclick-standalone.html
6022
6023 * loader/MediaDocument.cpp:
6024 (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
6025 (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called. Also add
6026 an ASSERT signifying that this method should only be called once, to more closely follow the
6027 PluginDocument case.
6028
bdakin@apple.com7ee298c2008-08-30 00:00:30 +000060292008-08-29 Beth Dakin <bdakin@apple.com>
6030
6031 Reviewed by Sam Weinig.
6032
6033 Fix for <rdar://problem/6181588>
6034
6035 This patch makes hit testing take into account the new concept of a
6036 disconnected frame, in which some of the content may not be
6037 visible. The current hit testing mechanism starts at a target frame
6038 and drills down for a HitTestResult. In some cases, drilling down
6039 will find a non-visible result. When this happens, we need to try
6040 again, starting at a higher level -- namely, starting at the main
6041 frame.
6042
6043 * editing/Editor.cpp:
6044 (WebCore::Editor::insideVisibleArea): New function that tests if a
6045 point is inside the visible area for a disconnected frame.
6046 * editing/Editor.h:
6047 * page/EventHandler.cpp:
6048 (WebCore::EventHandler::hitTestResultAtPoint):
6049
adele@apple.comfb903062008-08-29 22:30:18 +000060502008-08-29 Adele Peterson <adele@apple.com>
6051
6052 Reviewed by Adam Roben.
6053
6054 Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
6055
6056 * GNUmakefile.am:
6057 * WebCore.pro:
6058 * WebCore.vcproj/WebCore.vcproj:
6059 * WebCore.xcodeproj/project.pbxproj:
6060 * WebCoreSources.bkl:
6061 * html/HTMLTextFieldInnerElement.cpp: Removed.
6062 * html/HTMLTextFieldInnerElement.h: Removed.
6063 * rendering/RenderTextControl.cpp:
6064 (WebCore::RenderTextControl::createSubtreeIfNeeded):
6065 * rendering/RenderTextControl.h:
6066 * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
6067 (WebCore::TextControlInnerElement::TextControlInnerElement):
6068 (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
6069 (WebCore::TextControlInnerTextElement::defaultEventHandler):
6070 (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
6071 (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
6072 (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
6073 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
6074 * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
6075
eric@webkit.org298c65b2008-08-29 21:39:32 +000060762008-08-29 Eric Seidel <eric@webkit.org>
6077
eric@webkit.org77837ce2008-08-29 21:40:07 +00006078 Rubber-stamped by aroben.
6079
6080 Add GraphicsContext.h include to GraphcisContextPrivate.h
6081
6082 GraphicsContextPrivate uses StrokeStyle which is defined
6083 in GraphicsContext.h but it doesn't include that header.
6084 CoreGraphics build doesn't fail here due to the order
6085 it happens to include files.
6086
6087 * platform/graphics/GraphicsContextPrivate.h:
6088
60892008-08-29 Eric Seidel <eric@webkit.org>
6090
eric@webkit.org298c65b2008-08-29 21:39:32 +00006091 Reviewed by hyatt.
6092
6093 Fix GeneratedImage to respect Image's refcounting
6094 Fixing potential crashers (future if not current)
6095 https://bugs.webkit.org/show_bug.cgi?id=20567
6096
6097 I don't know if it's possible to make the current code
6098 crash, thus I've not made a test.
6099
6100 * css/CSSGradientValue.cpp:
6101 (WebCore::CSSGradientValue::image):
6102 * css/CSSImageGeneratorValue.cpp:
6103 (WebCore::CSSImageGeneratorValue::removeClient):
6104 (WebCore::CSSImageGeneratorValue::getImage):
6105 * css/CSSImageGeneratorValue.h:
6106 * platform/graphics/GeneratedImage.h:
6107 (WebCore::GeneratedImage::GeneratedImage):
6108 * rendering/style/RenderStyle.cpp:
6109 (WebCore::RenderStyle::setContent):
6110 * rendering/style/RenderStyle.h:
6111
eric.carlson@apple.comddeafd42008-08-29 20:07:19 +000061122008-08-29 Eric Carlson <eric.carlson@apple.com>
6113
6114 Reviewed by Adele.
6115
eric.carlson@apple.com850c77c2008-08-29 20:24:50 +00006116 Fix for <rdar://problem/6093767>
6117 https://bugs.webkit.org/show_bug.cgi?id=20526
6118
6119 Don't allow video to render until unsupported track types have been disabled.
6120
6121 * platform/graphics/win/QTMovieWin.cpp:
6122 (QTMovieWinPrivate::task):
6123 (QTMovieWinPrivate::drawingComplete):
6124 (QTMovieWinPrivate::clearGWorld):
6125
61262008-08-29 Eric Carlson <eric.carlson@apple.com>
6127
6128 Reviewed by Adele.
6129
eric.carlson@apple.comddeafd42008-08-29 20:07:19 +00006130 Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
6131 <rdar://problem/6169301>
6132
6133 Return the size of the movie data instead of 1000.
6134
6135 Test: media/progress-event-total.html
6136
6137 * platform/graphics/win/QTMovieWin.cpp:
6138 (QTMovieWin::dataSize):
6139
hausmann@webkit.org0367b582008-08-29 15:56:02 +000061402008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
6141
hausmann@webkit.orgfe7f2ac2008-08-29 15:57:44 +00006142 Reviewed by Eric Seidel.
6143
6144 [janitor/qt] Start replacing port specific getters with the generic native getter
6145 To get the native presentation of an image we currently have platform
6146 specific #ifdef's and a generic getter using NativeImagePtr. This patch
6147 extends this to the ImageBuffer and updates the Qt platform to get rid
6148 of the special #ifdefs.
6149
6150 https://bugs.webkit.org/attachment.cgi?id=22861
6151
6152 * platform/graphics/BitmapImage.h:
6153 * platform/graphics/Image.h:
6154 * platform/graphics/qt/ImageQt.cpp:
6155 * platform/graphics/qt/StillImageQt.cpp:
6156 * platform/graphics/qt/StillImageQt.h:
6157 * platform/qt/ClipboardQt.cpp:
6158 (WebCore::ClipboardQt::createDragImage):
6159 (WebCore::ClipboardQt::declareAndWriteDragImage):
6160 * platform/qt/CursorQt.cpp:
6161 * platform/qt/PasteboardQt.cpp:
6162 (WebCore::Pasteboard::writeImage):
6163
61642008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
6165
hausmann@webkit.org0367b582008-08-29 15:56:02 +00006166 Reviewed by Simon.
6167
hausmann@webkit.orgb99266e2008-08-29 15:56:59 +00006168 [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
6169
6170 * svg/graphics/qt/SVGPaintServerQt.cpp:
6171 (WebCore::SVGPaintServer::renderPath):
6172 * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
6173 (WebCore::SVGPaintServerSolid::setup):
6174
61752008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
6176
6177 Reviewed by Simon.
6178
hausmann@webkit.org0367b582008-08-29 15:56:02 +00006179 [network/qt] Implement defering of loading ResourceHandle's
6180 This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
6181 implementation is simply not forwarding anything to the
6182 ResourceHandleClient until we are allowed to. This might lead to a deadlock
6183 in Qt as we do not empty the QNetworkReply input buffer and wait until we
6184 are allowed to read. If that happens we are forced to buffer the data
6185 within QNetworkReplyHandler, for now this is not done.
6186
6187 Manual test:
6188 - Open http://acid3.acidtests.org
6189 - Wait for the test to complete
6190 - Click on the Reference Rendering link
6191 - Be fast and see the results of acid3
6192 => assert
6193
6194 * platform/network/qt/QNetworkReplyHandler.cpp:
6195 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
6196 (WebCore::QNetworkReplyHandler::setLoadMode):
6197 (WebCore::QNetworkReplyHandler::finish):
6198 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
6199 (WebCore::QNetworkReplyHandler::forwardData):
6200 (WebCore::QNetworkReplyHandler::start):
6201 (WebCore::QNetworkReplyHandler::resetState):
6202 (WebCore::QNetworkReplyHandler::sendQueuedItems):
6203 * platform/network/qt/QNetworkReplyHandler.h:
6204 (WebCore::QNetworkReplyHandler::):
6205 * platform/network/qt/ResourceHandleQt.cpp:
6206 (WebCore::ResourceHandle::start):
6207 (WebCore::ResourceHandle::loadResourceSynchronously):
6208 (WebCore::ResourceHandle::setDefersLoading):
6209
hausmann@webkit.org2f2621f2008-08-29 10:21:38 +000062102008-08-29 Simon Hausmann <hausmann@webkit.org>
6211
hausmann@webkit.orgf5864402008-08-29 12:35:59 +00006212 Reviewed by Holger.
6213
6214 Don't crash when drawing patterns with the HTML canvas. Patterns
6215 remain unimplemented but at least they don't crash anymore. This is
6216 done by changing the PlatformPatternPtr to be a brush for the Qt
6217 platform.
6218
6219 * platform/graphics/Pattern.h:
6220 * platform/graphics/qt/GraphicsContextQt.cpp:
6221 (WebCore::GraphicsContext::fillPath):
6222 (WebCore::GraphicsContext::strokePath):
6223 (WebCore::GraphicsContext::fillRect):
6224 * platform/graphics/qt/PatternQt.cpp:
6225 (WebCore::Pattern::createPlatformPattern):
6226
62272008-08-29 Simon Hausmann <hausmann@webkit.org>
6228
hausmann@webkit.org2f2621f2008-08-29 10:21:38 +00006229 Fix the Qt build, fontSelector() is not used by the Qt port yet
6230 and we just return 0 in Font::fontSelector().
6231
6232 * platform/graphics/Font.h:
6233
alp@webkit.org97d8c102008-08-29 05:09:39 +000062342008-08-28 Alp Toker <alp@nuanti.com>
6235
6236 GTK+ dist/build fix. List newly added header files.
6237
6238 * GNUmakefile.am:
6239
simon.fraser@apple.com8f30d022008-08-28 23:04:18 +000062402008-08-28 Simon Fraser <simon.fraser@apple.com>
6241
6242 Reviewed by Dave Hyatt
6243
6244 Various WebKitCSSTransformValue-related fixes
6245 https://bugs.webkit.org/show_bug.cgi?id=20562
6246
6247 Test: css3/transform-value-types.html
6248
6249 * bindings/js/JSCSSValueCustom.cpp:
6250 (WebCore::toJS):
6251 * css/CSSValue.h:
6252 * css/WebKitCSSTransformValue.cpp:
6253 (WebCore::WebKitCSSTransformValue::cssText):
6254 * css/WebKitCSSTransformValue.h:
6255 (WebCore::WebKitCSSTransformValue::):
6256 * css/WebKitCSSTransformValue.idl:
6257
mitz@apple.comd7222352008-08-28 22:53:31 +000062582008-08-28 Dan Bernstein <mitz@apple.com>
6259
6260 Reviewed by Steve Falkenburg.
6261
6262 - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
6263
6264 * platform/win/SharedTimerWin.cpp:
6265 (WebCore::TimerWindowWndProc):
6266
hyatt@apple.com7d335232008-08-28 21:38:45 +000062672008-08-28 David Hyatt <hyatt@apple.com>
6268
6269 RenderStyle cleanup.
6270
6271 Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
6272
6273 Reviewed by Adam
6274
6275 * css/CSSImageGeneratorValue.cpp:
6276 * css/CSSImageValue.cpp:
6277 * css/CSSStyleSelector.cpp:
6278 * rendering/RenderImageGeneratedContent.cpp:
6279 * rendering/style/NinePieceImage.cpp: Added.
6280 * rendering/style/NinePieceImage.h: Added.
6281 * rendering/style/RenderStyle.cpp:
6282 (WebCore::FillLayer::operator==):
6283 (WebCore::FillLayer::containsImage):
6284 (WebCore::StyleInheritedData::operator==):
6285 (WebCore::RenderStyle::contentDataEquivalent):
6286 * rendering/style/RenderStyle.h:
6287 * rendering/style/StyleCachedImage.cpp: Added.
6288 * rendering/style/StyleCachedImage.h: Added.
6289 * rendering/style/StyleGeneratedImage.cpp: Added.
6290 * rendering/style/StyleGeneratedImage.h: Added.
6291 * rendering/style/StyleImage.h: Added.
6292
simon.fraser@apple.com28bad1a2008-08-28 21:29:21 +000062932008-08-28 Simon Fraser <simon.fraser@apple.com>
6294
6295 Reviewed by Dave Hyatt
6296
6297 Make all the 'isFoo()' methods on CSSValue const,
6298 and fix the subclasses.
6299
6300 https://bugs.webkit.org/show_bug.cgi?id=20561
6301
6302 * css/CSSTimingFunctionValue.h:
6303 * css/CSSValue.h:
6304 (WebCore::CSSValue::isFontValue):
6305 (WebCore::CSSValue::isImageGeneratorValue):
6306 (WebCore::CSSValue::isImageValue):
6307 (WebCore::CSSValue::isImplicitInitialValue):
6308 * css/CSSValueList.h:
6309 * css/FontValue.h:
6310
hyatt@apple.com550a95c2008-08-28 19:53:56 +000063112008-08-28 David Hyatt <hyatt@apple.com>
6312
hyatt@apple.comcb3eb812008-08-28 20:08:03 +00006313 The great RenderStyle cleanup begins!
6314
6315 Move LengthBox and LengthSize out of RenderStyle and into Length.
6316
6317 Reviewed by Adam
6318
6319 * rendering/Length.h:
6320 (WebCore::):
6321 (WebCore::Length::Length):
6322 (WebCore::Length::operator==):
6323 (WebCore::Length::operator!=):
6324 (WebCore::Length::value):
6325 (WebCore::Length::rawValue):
6326 (WebCore::Length::percent):
6327 (WebCore::Length::type):
6328 (WebCore::Length::quirk):
6329 (WebCore::Length::setValue):
6330 (WebCore::Length::setRawValue):
6331 (WebCore::Length::calcValue):
6332 (WebCore::Length::calcMinValue):
6333 (WebCore::Length::calcFloatValue):
6334 (WebCore::Length::isUndefined):
6335 (WebCore::Length::isZero):
6336 (WebCore::Length::isPositive):
6337 (WebCore::Length::isNegative):
6338 (WebCore::Length::isAuto):
6339 (WebCore::Length::isRelative):
6340 (WebCore::Length::isPercent):
6341 (WebCore::Length::isFixed):
6342 (WebCore::Length::isStatic):
6343 (WebCore::Length::isIntrinsicOrAuto):
6344 (WebCore::Length::blend):
6345 (WebCore::LengthBox::LengthBox):
6346 (WebCore::LengthBox::operator=):
6347 (WebCore::LengthBox::operator==):
6348 (WebCore::LengthBox::operator!=):
6349 (WebCore::LengthBox::nonZero):
6350 (WebCore::LengthSize::LengthSize):
6351 * rendering/style/RenderStyle.h:
6352
63532008-08-28 David Hyatt <hyatt@apple.com>
6354
hyatt@apple.com550a95c2008-08-28 19:53:56 +00006355 Reviewed by Darin
6356
6357 https://bugs.webkit.org/show_bug.cgi?id=18091
6358
6359 font-size should be animatable using -webkit-transition.
6360
6361 * page/AnimationController.cpp:
6362 (WebCore::AnimationControllerPrivate::ensurePropertyMap):
6363 * rendering/style/RenderStyle.h:
6364 (WebCore::RenderStyle::setFontSize):
6365
mitz@apple.com30923ad2008-08-28 17:45:47 +000063662008-08-28 Brad Garcia <bgarcia@google.com>
6367
6368 Reviewed by Dan Bernstein.
6369
6370 https://bugs.webkit.org/show_bug.cgi?id=20549
6371 Correctly determine when cursor is over a resizable border within
6372 a nested frameset.
6373
6374 * rendering/RenderFrameSet.cpp:
6375 (WebCore::RenderFrameSet::canResizeRow):
6376 (WebCore::RenderFrameSet::canResizeColumn):
6377
simon.fraser@apple.comae77c412008-08-28 17:30:07 +000063782008-08-28 Simon Fraser <simon.fraser@apple.com>
6379
6380 Reviewed by Eric Seidel
6381
6382 Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
6383 https://bugs.webkit.org/show_bug.cgi?id=20552
6384
6385 Test: animations/animation-css-rule-types.html
6386
6387 * css/CSSRule.idl:
6388
andersca@apple.com12399c32008-08-28 17:26:46 +000063892008-08-28 Anders Carlsson <andersca@apple.com>
6390
6391 Reviewed by Kevin and Darin.
6392
6393 <rdar://problem/6182541>
6394 https://bugs.webkit.org/show_bug.cgi?id=20202
6395 Missing http status line from the http headers.
6396
6397 Add a status line to the header string.
6398
6399 * plugins/PluginStream.cpp:
6400 (WebCore::PluginStream::startStream):
6401
zecke@webkit.orgf1daa422008-08-28 15:56:01 +000064022008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
6403
6404 Rubber-stamped by Darin Adler.
6405
6406 https://bugs.webkit.org/show_bug.cgi?id=17261
6407
6408 Make it possible to theme the default Url icon and enable this for
6409 the Qt port. To have a minimal usage of #ifdef in the code the setting
6410 of the icon was moved to a new method which comes in two flavors.
6411
6412 * loader/icon/IconDatabase.cpp:
6413 (WebCore::loadDefaultIconRecord): Load or set the default icon
6414 (WebCore::IconDatabase::defaultIcon):
6415
zecke@webkit.org1887dc82008-08-28 15:03:21 +000064162008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
6417
6418 Unreviewed compile fix
6419
6420 * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
6421
aroben@apple.comfacf5032008-08-28 13:34:01 +000064222008-08-28 Adam Roben <aroben@apple.com>
6423
6424 Windows (and others?) build fix
6425
6426 * page/Chrome.cpp: Added a missing #include.
6427 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
6428
eric@webkit.org22794fd2008-08-28 12:04:40 +000064292008-08-27 Eric Seidel <eric@webkit.org>
6430
6431 Reviewed by Oliver Hunt.
6432
eric@webkit.org5f874e92008-08-28 12:04:55 +00006433 Qt and Cairo support from krit (and blind stab @ wx compile support)
6434 https://bugs.webkit.org/show_bug.cgi?id=20373
6435
6436 * platform/graphics/cairo/GraphicsContextCairo.cpp:
6437 (WebCore::GraphicsContext::fillPath):
6438 (WebCore::GraphicsContext::strokePath):
6439 (WebCore::GraphicsContext::drawPath):
6440 (WebCore::GraphicsContext::fillRect):
6441 (WebCore::GraphicsContext::setPlatformFillColor):
6442 (WebCore::GraphicsContext::setPlatformStrokeColor):
6443 (WebCore::GraphicsContext::setPlatformStrokeStyle):
6444 (WebCore::GraphicsContext::strokeRect):
6445 (WebCore::GraphicsContext::setImageInterpolationQuality):
6446 (WebCore::GraphicsContext::imageInterpolationQuality):
6447 (WebCore::GraphicsContext::setPlatformFillPattern):
6448 (WebCore::GraphicsContext::setPlatformStrokePattern):
6449 (WebCore::GraphicsContext::setPlatformFillGradient):
6450 (WebCore::GraphicsContext::setPlatformStrokeGradient):
6451 * platform/graphics/qt/GraphicsContextQt.cpp:
6452 (WebCore::GraphicsContext::fillPath):
6453 (WebCore::GraphicsContext::strokePath):
6454 (WebCore::GraphicsContext::fillRect):
6455 (WebCore::GraphicsContext::strokeRect):
6456 (WebCore::GraphicsContext::clipToImageBuffer):
6457 (WebCore::GraphicsContext::setPlatformFillPattern):
6458 (WebCore::GraphicsContext::setPlatformStrokePattern):
6459 (WebCore::GraphicsContext::setPlatformFillGradient):
6460 (WebCore::GraphicsContext::setPlatformStrokeGradient):
6461 (WebCore::GraphicsContext::setImageInterpolationQuality):
6462 (WebCore::GraphicsContext::imageInterpolationQuality):
6463 * platform/graphics/wx/GraphicsContextWx.cpp:
6464 (WebCore::GraphicsContext::clipToImageBuffer):
6465 (WebCore::GraphicsContext::setImageInterpolationQuality):
6466 (WebCore::GraphicsContext::imageInterpolationQuality):
6467 (WebCore::GraphicsContext::fillPath):
6468 (WebCore::GraphicsContext::strokePath):
6469 (WebCore::GraphicsContext::drawPath):
6470 (WebCore::GraphicsContext::fillRect):
6471 (WebCore::GraphicsContext::setPlatformFillPattern):
6472 (WebCore::GraphicsContext::setPlatformStrokePattern):
6473 (WebCore::GraphicsContext::setPlatformFillGradient):
6474
64752008-08-27 Eric Seidel <eric@webkit.org>
6476
6477 Reviewed by Oliver Hunt.
6478
eric@webkit.org22794fd2008-08-28 12:04:40 +00006479 Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
6480 https://bugs.webkit.org/show_bug.cgi?id=20373
6481
6482 Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
6483
6484 Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
6485 have to store large Gradient objects in the GraphicsContextState
6486
6487 Made Pattern RefCounted for the same reason.
6488
6489 Many updates to GraphicsContext to support easier drawing with
6490 Patterns and Gradients.
6491
6492 * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
6493 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
6494 (WebCore::toJS):
6495 * css/CSSGradientValue.cpp:
6496 (WebCore::CSSGradientValue::createGradient):
6497 * css/CSSGradientValue.h:
6498 * html/CanvasGradient.cpp:
6499 (WebCore::CanvasGradient::CanvasGradient):
6500 * html/CanvasGradient.h:
6501 (WebCore::CanvasGradient::gradient):
6502 (WebCore::CanvasGradient::addColorStop):
6503 (WebCore::CanvasGradient::getColor):
6504 * html/CanvasPattern.cpp:
6505 * html/CanvasPattern.h:
6506 (WebCore::CanvasPattern::pattern):
6507 (WebCore::CanvasPattern::originClean):
6508 * html/CanvasRenderingContext2D.cpp:
6509 (WebCore::CanvasRenderingContext2D::State::State):
6510 (WebCore::CanvasRenderingContext2D::setStrokeStyle):
6511 (WebCore::CanvasRenderingContext2D::setFillStyle):
6512 (WebCore::CanvasRenderingContext2D::fill):
6513 (WebCore::CanvasRenderingContext2D::stroke):
6514 (WebCore::CanvasRenderingContext2D::fillRect):
6515 (WebCore::CanvasRenderingContext2D::strokeRect):
6516 * html/CanvasRenderingContext2D.h:
6517 * html/CanvasStyle.cpp:
6518 (WebCore::CanvasStyle::applyStrokeColor):
6519 (WebCore::CanvasStyle::applyFillColor):
6520 * html/CanvasStyle.h:
6521 * platform/graphics/GeneratedImage.h:
6522 (WebCore::GeneratedImage::GeneratedImage):
6523 * platform/graphics/Generator.h:
6524 * platform/graphics/Gradient.h:
6525 (WebCore::Gradient::create):
6526 * platform/graphics/GraphicsContext.cpp:
6527 (WebCore::GraphicsContext::fillRule):
6528 (WebCore::GraphicsContext::setFillRule):
6529 (WebCore::GraphicsContext::setStrokePattern):
6530 (WebCore::GraphicsContext::setFillPattern):
6531 (WebCore::GraphicsContext::setStrokeGradient):
6532 (WebCore::GraphicsContext::setFillGradient):
6533 * platform/graphics/GraphicsContext.h:
6534 * platform/graphics/GraphicsContextPrivate.h:
6535 (WebCore::):
6536 (WebCore::GraphicsContextState::GraphicsContextState):
6537 * platform/graphics/GraphicsTypes.h:
6538 * platform/graphics/Path.h:
6539 * platform/graphics/Pattern.h:
6540 (WebCore::Pattern::create):
6541 (WebCore::Pattern::tileImage):
6542 * platform/graphics/cg/GraphicsContextCG.cpp:
6543 (WebCore::GraphicsContext::drawRect):
6544 (WebCore::GraphicsContext::drawEllipse):
6545 (WebCore::GraphicsContext::drawConvexPolygon):
6546 (WebCore::calculateDrawingMode):
6547 (WebCore::GraphicsContext::drawPath):
6548 (WebCore::fillPathWithFillRule):
6549 (WebCore::GraphicsContext::fillPath):
6550 (WebCore::GraphicsContext::strokePath):
6551 (WebCore::GraphicsContext::fillRect):
6552 (WebCore::GraphicsContext::fillRoundedRect):
6553 (WebCore::GraphicsContext::setPlatformStrokePattern):
6554 (WebCore::GraphicsContext::setPlatformFillPattern):
6555 (WebCore::GraphicsContext::setPlatformStrokeGradient):
6556 (WebCore::GraphicsContext::setPlatformFillGradient):
6557
eric@webkit.org70b099f2008-08-28 11:42:26 +000065582008-08-20 Eric Seidel <eric@webkit.org>
6559
6560 Reviewed by Darin and Alexey.
6561
6562 Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
6563 with timeouts paused.
6564 https://bugs.webkit.org/show_bug.cgi?id=20469
6565
6566 I attempted to clean up the memory management of PausedTimeouts, I'm not
6567 sure the solution I came up with is "cleaner", but it's in some ways
6568 "safer", since it no longer uses raw pointers and manual new/delete.
6569
6570 This also now prevents CachedPage from needlessly creating Window
6571 objects when caching pages which didn't already have one. :)
6572
6573 I also made Chrome.cpp no longer depend on the JavaScript bindings
6574 (aka JSDOMWindowBase.h), since there was no real reason for it to.
6575
6576 * bindings/js/JSDOMWindowBase.cpp:
6577 (WebCore::JSDOMWindowBase::pauseTimeouts):
6578 (WebCore::JSDOMWindowBase::resumeTimeouts):
6579 * bindings/js/JSDOMWindowBase.h:
6580 * bindings/js/ScriptController.cpp:
6581 (WebCore::ScriptController::pauseTimeouts):
6582 (WebCore::ScriptController::resumeTimeouts):
6583 * bindings/js/ScriptController.h:
6584 * history/CachedPage.cpp:
6585 (WebCore::CachedPage::CachedPage):
6586 (WebCore::CachedPage::restore):
6587 * page/Chrome.cpp:
6588 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
6589 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
6590 * page/JavaScriptDebugServer.cpp:
6591 (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
6592 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
6593
zecke@webkit.org7d0df9e2008-08-28 03:36:31 +000065942008-08-27 Holger Hans Peter Freyther <zecke@selfish.org>
6595
6596 Unreviewed compile fix
6597
6598 Add the stub for the Qt port.
6599
6600 * WebCore.pro:
6601 * page/qt/AccessibilityObjectQt.cpp: Added.
6602 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
6603
zecke@webkit.orged5c2fe2008-08-28 02:15:20 +000066042008-08-27 Alp Toker <alp@nuanti.com>
6605
6606 Reviewed by Eric.
6607
6608 https://bugs.webkit.org/show_bug.cgi?id=20551
zecke@webkit.org81540882008-08-28 02:18:20 +00006609 [GTK] search popup crash
6610
6611 * platform/gtk/SearchPopupMenuGtk.cpp:
6612 (WebCore::SearchPopupMenu::enabled):
6613 Fix a search popup crasher by disabling the history popup since we
6614 don't support this feature yet in the GTK+ port.
6615
66162008-08-27 Alp Toker <alp@nuanti.com>
6617
6618 Reviewed by Eric.
6619
6620 https://bugs.webkit.org/show_bug.cgi?id=20551
zecke@webkit.orged5c2fe2008-08-28 02:15:20 +00006621 [GTK] curl crashers
6622
6623 * platform/network/curl/ResourceHandleManager.cpp:
6624 (WebCore::ResourceHandleManager::startScheduledJobs):
6625 Remove the resource handle from the pending list before starting the
6626 job, not afterwards. Fixes crashers in the test suite.
6627
6628 Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
6629 Test: fast/encoding/char-encoding.html
6630
eric@webkit.org712cb892008-08-28 00:26:15 +000066312008-08-27 Dirk Schulze <vbs85@gmx.de>
6632
6633 Reviewed by eseidel.
6634
6635 Fix canvas drawImage to support composite operations.
6636 Composite had no effect on canvas elements like these:
6637 http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
6638
6639 [CAIRO] Canvas composite don't work on canvas-elements.
6640 https://bugs.webkit.org/show_bug.cgi?id=20548
6641
6642 * html/CanvasRenderingContext2D.cpp:
6643 (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
6644
eric@webkit.org75c83a02008-08-28 00:04:59 +000066452008-08-27 Mario Bensi <mbensi@pleyo.com>
6646
6647 Reviewed by Eric Seidel.
6648
6649 Fix the data content of an image with a base64.
6650
6651 * platform/network/curl/ResourceHandleManager.cpp:
6652 (WebCore::parseDataUrl): Remove the String and use only the data
6653 Vector because the data.latin1().data() convert the data content and
6654 the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
6655 not drawn correctly.
6656
antti@apple.comf66a86b2008-08-27 23:59:50 +000066572008-08-27 Antti Koivisto <antti@apple.com>
6658
6659 Reviewed by Eric Seidel.
6660
6661 Crash after OK in dialog box and reloading page in secure mode
6662 https://bugs.webkit.org/show_bug.cgi?id=20493
6663
6664 The new run loop spawned by a modal dialog causes a timer in the loader to run
6665 synchronously inside didFinishLoading() deleting "this" object.
6666
6667 Defer all WebCore timers when a modal dialog is up. They are not
6668 safe to execute.
6669
6670 * page/Chrome.cpp:
6671 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
6672 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
6673
simon.fraser@apple.com7dbde252008-08-27 23:16:36 +000066742008-08-27 Chris Marrin <cmarrin@apple.com>
6675
6676 Reviewed by Dave Hyatt
6677
6678 Memory leaks when animating transforms
6679 https://bugs.webkit.org/show_bug.cgi?id=20532
6680
6681 * rendering/style/RenderStyle.cpp:
6682 (WebCore::ScaleTransformOperation::blend):
6683 (WebCore::RotateTransformOperation::blend):
6684 (WebCore::SkewTransformOperation::blend):
6685 (WebCore::TranslateTransformOperation::blend):
6686 (WebCore::MatrixTransformOperation::blend):
6687 * rendering/style/RenderStyle.h:
6688
timothy@apple.com79cb13a2008-08-27 22:03:24 +000066892008-08-27 Timothy Hatcher <timothy@apple.com>
6690
6691 Add support for support for -webkit-appearance: default-button on the Mac platform.
6692
6693 <rdar://problem/6173530>
6694
6695 Reviewed by Dave Hyatt.
6696
6697 * WebCore.base.exp: Export new symbols.
6698 * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
6699 * platform/mac/WebCoreSystemInterface.mm: Ditto.
6700 * rendering/RenderButton.cpp:
6701 (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
6702 (WebCore::RenderButton::setStyle): Ditto.
6703 * rendering/RenderButton.h: Ditto.
6704 * rendering/RenderThemeMac.mm:
6705 (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
6706 (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
6707 key if the button is default, otherwise reset the key equivalent.
6708 (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
6709 on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
6710 the window's previous default button cell when finished.
6711
hyatt@apple.comf0ec84d2008-08-27 21:18:15 +000067122008-08-26 David Hyatt <hyatt@apple.com>
6713
6714 First cut at making form controls on OS X respect full page zoom. There are lots of bugs.
6715
6716 Reviewed by weinig
6717
6718 Added fast/forms/zoomed-controls.html
6719
6720 * css/CSSStyleSelector.cpp:
6721 (WebCore::addIntrinsicMargins):
6722 * rendering/RenderSlider.cpp:
6723 (WebCore::RenderSlider::calcPrefWidths):
6724 * rendering/RenderThemeMac.h:
6725 * rendering/RenderThemeMac.mm:
6726 (WebCore::RenderThemeMac::adjustRepaintRect):
6727 (WebCore::RenderThemeMac::inflateRect):
6728 (WebCore::RenderThemeMac::baselinePosition):
6729 (WebCore::RenderThemeMac::setControlSize):
6730 (WebCore::RenderThemeMac::sizeForFont):
6731 (WebCore::RenderThemeMac::sizeForSystemFont):
6732 (WebCore::RenderThemeMac::setFontFromControlSize):
6733 (WebCore::RenderThemeMac::paintCheckbox):
6734 (WebCore::RenderThemeMac::setCheckboxCellState):
6735 (WebCore::RenderThemeMac::paintRadio):
6736 (WebCore::RenderThemeMac::setRadioCellState):
6737 (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
6738 (WebCore::RenderThemeMac::adjustButtonStyle):
6739 (WebCore::RenderThemeMac::setButtonCellState):
6740 (WebCore::RenderThemeMac::paintButton):
6741 (WebCore::RenderThemeMac::paintMenuList):
6742 (WebCore::RenderThemeMac::paintMenuListButton):
6743 (WebCore::RenderThemeMac::popupInternalPaddingLeft):
6744 (WebCore::RenderThemeMac::popupInternalPaddingRight):
6745 (WebCore::RenderThemeMac::popupInternalPaddingTop):
6746 (WebCore::RenderThemeMac::popupInternalPaddingBottom):
6747 (WebCore::RenderThemeMac::setPopupButtonCellState):
6748 (WebCore::RenderThemeMac::paintSliderTrack):
6749 (WebCore::RenderThemeMac::paintSliderThumb):
6750 (WebCore::RenderThemeMac::adjustSliderThumbSize):
6751 (WebCore::RenderThemeMac::paintSearchField):
6752 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
6753 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
6754 (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
6755
beidson@apple.comd0793872008-08-27 19:59:55 +000067562008-08-27 Brady Eidson <beidson@apple.com>
6757
6758 Reviewed by Anders
6759
6760 <rdar://problem/6134133> - Crash when loading large movie as a standalone document
6761
6762 We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
6763 to load and buffer the data for the movie in WebCore. With large media files, this results in blowing
6764 away the virtual address space and a crash.
6765
6766 * loader/EmptyClients.h:
6767 (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
6768 * loader/FrameLoaderClient.h: Added client method to get platform specific error for
6769 "plugin will handle load"
6770
6771 * loader/MediaDocument.cpp:
6772 (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
6773 and cancel the WebCore-managed load
6774 (WebCore::MediaTokenizer::writeRawData):
6775 (WebCore::MediaTokenizer::finish):
6776
simon.fraser@apple.come74d6712008-08-27 18:19:55 +000067772008-08-26 Simon Fraser <simon.fraser@apple.com>
6778
6779 Reviewed by Eric Seidel
6780
6781 Linear timing functions should have control points 0, 0, 1, 1.
6782 https://bugs.webkit.org/show_bug.cgi?id=20535
6783
6784 * css/CSSStyleSelector.cpp:
6785 (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
6786 * rendering/style/RenderStyle.h:
6787
aroben@apple.com8cfb6c62008-08-27 14:52:17 +000067882008-08-27 Adam Roben <aroben@apple.com>
6789
6790 Windows build fix
6791
6792 * WebCore.vcproj/WebCore.vcproj: Fix file extension.
6793
mrowe@apple.com37686d42008-09-04 00:10:39 +000067942008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com33a556b2008-08-26 22:29:14 +00006795
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00006796 Reviewed by Beth Dakin.
6797
cfleizach@apple.com2a505f42008-08-26 22:56:03 +00006798 <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
6799
6800 Added platform-specific accessibilityIgnoreAttachment, which allows the platform
6801 to determine if an attachment is ignored through accessibility. Added equivalent
6802 methods in Gtk, Win and Mac
6803
6804 Test: accessibility/plugin.html
6805
6806 * GNUmakefile.am:
6807 * WebCore.vcproj/WebCore.vcproj:
6808 * WebCore.xcodeproj/project.pbxproj:
6809 * page/AccessibilityObject.h:
6810 * page/AccessibilityRenderObject.cpp:
6811 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
6812 * page/gtk/AccessibilityObjectAtk.cpp: Added.
6813 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
6814 * page/mac/AccessibilityObjectMac.mm: Added.
6815 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
6816 * page/mac/AccessibilityObjectWrapper.h:
6817 * page/win/AccessibilityObjectWin.cpp: Added.
6818 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
6819
mrowe@apple.com37686d42008-09-04 00:10:39 +000068202008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com2a505f42008-08-26 22:56:03 +00006821
6822 Reviewed by Beth Dakin.
6823
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00006824 <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
6825
6826 * page/mac/AccessibilityObjectWrapper.mm:
6827 (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
6828 (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
6829
mrowe@apple.com37686d42008-09-04 00:10:39 +000068302008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00006831
cfleizach@apple.com33a556b2008-08-26 22:29:14 +00006832 Reviewed by Darin Adler.
6833
6834 <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
6835
6836 Tests: accessibility/table-notbody.html
6837
6838 * page/AccessibilityTable.cpp:
6839 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
6840
weinig@apple.com33705852008-08-26 19:51:28 +000068412008-08-26 Sam Weinig <sam@webkit.org>
6842
weinig@apple.comf6f553a2008-08-26 21:21:26 +00006843 Reviewed by Beth Dakin.
6844
6845 Fix typo.
6846
6847 * dom/DOMCoreException.h:
6848
68492008-08-26 Sam Weinig <sam@webkit.org>
6850
weinig@apple.com0f34f002008-08-26 19:56:54 +00006851 Reviewed by Oliver Hunt.
6852
6853 Fix https://bugs.webkit.org/show_bug.cgi?id=20479
6854 <rdar://problem/6167660>
6855 Take image redirects into account when tainting the canvas.
6856
6857 Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
6858
6859 * html/CanvasRenderingContext2D.cpp:
6860 (WebCore::CanvasRenderingContext2D::drawImage):
6861 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
6862
68632008-08-26 Sam Weinig <sam@webkit.org>
6864
weinig@apple.com33705852008-08-26 19:51:28 +00006865 Reviewed by Darin Adler.
6866
6867 Change canvas tainting logic to ask the image if it contains
6868 any resources outside of its own origin. Since there is no
6869 way to determine if SVG images contain any resources outside its
6870 origin, we always assume it does.
6871
6872 * html/CanvasRenderingContext2D.cpp:
6873 (WebCore::CanvasRenderingContext2D::drawImage):
6874 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
6875 * platform/graphics/BitmapImage.h:
6876 (WebCore::BitmapImage::hasSingleSecurityOrigin):
6877 * platform/graphics/GeneratedImage.h:
6878 (WebCore::GeneratedImage::hasSingleSecurityOrigin):
6879 * platform/graphics/Image.h:
6880 (WebCore::Image::hasSingleSecurityOrigin):
6881 * platform/graphics/cg/PDFDocumentImage.h:
6882 (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
6883 * svg/graphics/SVGImage.h:
6884
britto@apple.com616ef6d2008-08-26 17:51:03 +000068852008-08-26 Maxime Britto <britto@apple.com>
6886
6887 Reviewed by Adele.
6888
6889 <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
6890 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.
6891 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.
6892
6893 * page/EventHandler.cpp:
6894 (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
6895 * page/EventHandler.h:
6896 * rendering/RenderLayer.cpp:
6897 (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
6898 (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.
6899 * rendering/RenderLayer.h:
6900 * rendering/RenderObject.cpp:
6901 (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
6902 (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
6903 (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
6904
jchaffraix@webkit.orge6915392008-08-26 10:27:33 +000069052008-08-25 Julien Chaffraix <jchaffraix@webkit.org>
6906
darin@apple.com07c80c62008-09-05 18:15:43 +00006907 Reviewed by Darin Adler.
jchaffraix@webkit.orge6915392008-08-26 10:27:33 +00006908
6909 Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
6910 https://bugs.webkit.org/show_bug.cgi?id=20247
6911
6912 <rdar://problem/6118218>
6913
6914 Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
6915 check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
6916 (case insensitive for HTML elements).
6917
6918 Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
6919
6920 * dom/Element.cpp:
6921 (WebCore::Element::getAttribute):
6922 * dom/NamedAttrMap.cpp:
6923 (WebCore::NamedAttrMap::getNamedItem):
6924 (WebCore::NamedAttrMap::getAttributeItem):
6925 * dom/NamedAttrMap.h:
6926
weinig@apple.comb4ce06e2008-08-26 01:52:51 +000069272008-08-25 Sam Weinig <sam@webkit.org>
6928
weinig@apple.com8d3ea722008-08-26 04:19:07 +00006929 Reviewed by Oliver Hunt.
6930
6931 Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
6932 <rdar://problem/6174096>
6933 Treat SVG images as dirty when drawing to a canvas.
6934
6935 Test: http/tests/security/canvas-remote-read-svg-image.html
6936
6937 * html/CanvasRenderingContext2D.cpp:
6938 (WebCore::CanvasRenderingContext2D::drawImage):
6939 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
6940 * platform/graphics/Image.h:
6941 (WebCore::Image::isSVGImage):
6942 * svg/graphics/SVGImage.h:
6943 (WebCore::SVGImage::isSVGImage):
6944
69452008-08-25 Sam Weinig <sam@webkit.org>
6946
weinig@apple.comb4ce06e2008-08-26 01:52:51 +00006947 Reviewed by Mark Rowe.
6948
6949 Fix https://bugs.webkit.org/show_bug.cgi?id=20377
6950 Leak in XMLHttpRequest.
6951
6952 * xml/XMLHttpRequest.cpp:
6953 (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
6954
beidson@apple.com46421212008-08-25 21:48:56 +000069552008-08-25 Brady Eidson <beidson@apple.com>
6956
6957 Reviewed by Anders
6958
6959 Speculative fix for <rdar://problem/6173217>
6960
6961 Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
6962 Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
6963 the first null check invalid.
6964
6965 * loader/FrameLoader.cpp:
6966 (WebCore::FrameLoader::stopAllLoaders):
6967
6968
kmccullough@apple.com7b85fbb2008-08-25 21:28:40 +000069692008-08-25 Kevin McCullough <kmccullough@apple.com>
6970
6971 Reviewed by Tim.
6972
6973 <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
6974 there is no profile, can cause crash
6975
6976 * page/inspector/ProfilesPanel.js:
6977
dino@apple.com1baeea62008-08-25 21:06:21 +000069782008-08-25 Dean Jackson <dino@apple.com>
6979
6980 Reviewed by Dave Hyatt
6981
6982 Make sure 'inherit' is handled by transition property.
6983 https://bugs.webkit.org/show_bug.cgi?id=20513
6984
6985 Test: transitions/inherit.html
6986 Test: transitions/inherit-other-props.html
6987
6988 * css/CSSStyleSelector.cpp:
6989 fix macro to check existence of list before getting size
6990
andersca@apple.com2866b8302008-08-25 20:56:21 +000069912008-08-25 Anders Carlsson <andersca@apple.com>
6992
6993 Reviewed by Mark.
6994
6995 <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
6996
6997 Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume
6998 (safely) that any class that needs finalization on the main thread will also need to be deallocated
6999 on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
7000 calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
7001
7002 * platform/mac/WebCoreObjCExtras.c:
7003 (WebCoreObjCFinalizeOnMainThread):
7004
antti@apple.com60381cb2008-08-25 20:41:11 +000070052008-08-25 Antti Koivisto <antti@apple.com>
7006
7007 Reviewed by Dan Bernstein.
7008
7009 Rename CachedResource::referenced() to CachedResource::hasClients() to
7010 match previous ref() -> addClient() rename.
7011
7012 * loader/Cache.cpp:
7013 (WebCore::Cache::pruneLiveResources):
7014 (WebCore::Cache::pruneDeadResources):
7015 (WebCore::Cache::remove):
7016 (WebCore::Cache::getStatistics):
7017 (WebCore::Cache::dumpLRULists):
7018 * loader/CachedResource.cpp:
7019 (WebCore::CachedResource::addClient):
7020 (WebCore::CachedResource::removeClient):
7021 (WebCore::CachedResource::setDecodedSize):
7022 (WebCore::CachedResource::setEncodedSize):
7023 * loader/CachedResource.h:
7024 (WebCore::CachedResource::hasClients):
7025 (WebCore::CachedResource::canDelete):
7026
timothy@apple.com7d809242008-08-25 18:33:05 +000070272008-08-25 Anthony Ricaud <rik24d@gmail.com>
7028
7029 Add a missing Inspector localized string for "other".
7030
7031 https://bugs.webkit.org/show_bug.cgi?id=20509
7032
7033 Reviewed by Tim Hatcher.
7034
7035 * English.lproj/localizedStrings.js:
7036
kmccullough@apple.com560f5fe2008-08-25 18:18:01 +000070372008-08-22 Kevin McCullough <kmccullough@apple.com>
7038
7039 Reviewed by Geoff, Mark and Tim.
7040
7041 <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
7042 in the console said what file and line number they came from
7043 - Lay the foundation for getting line numbers and other data from the
7044 JavaScript engine.
7045
7046 * ForwardingHeaders/VM: Added.
7047 * ForwardingHeaders/VM/Machine.h: Added.
7048 * page/Console.cpp: Gather the line number and file information when
7049 profileEnd has been called, but don't use it until didFinishProfiling is
7050 called. We won't need to wait once we remove the profiler "zombie" mode
7051 which this patch helps pave the foundation for.
7052 (WebCore::Console::Console):
7053 (WebCore::Console::profileEnd):
7054 (WebCore::Console::finishedProfiling):
7055 * page/Console.h:
7056 * page/InspectorController.cpp: Modify calls to
7057 addProfileMessageToConsole to satisfy the new arguments it takes.
7058 (WebCore::InspectorController::finishedProfiling):
7059 (WebCore::InspectorController::addProfile):
7060 (WebCore::InspectorController::addProfileMessageToConsole):
7061 (WebCore::InspectorController::finishedProfiling):
7062 * page/InspectorController.h:
7063
hausmann@webkit.orgf305df42008-08-25 10:06:53 +000070642008-08-25 Holger Hans Peter Freyther <zecke@selfish.org>
7065
7066 Reviewed by Simon.
7067
7068 [inspector] Update the WebKit.qrc Qt resources file
7069 Catchup with the changes in the directory.
7070
7071 * page/inspector/WebKit.qrc:
7072
hausmann@webkit.org5f13af32008-08-25 07:10:22 +000070732008-08-25 Dirk Schulze <vbs85@gmx.de>
7074
7075 Reviewed by Simon.
7076
7077 Transformed the radian to degree, to get rotate()
7078 in canvas work as expected.
7079
7080 [Qt] Canvas.rotate() doesn't work
7081 https://bugs.webkit.org/show_bug.cgi?id=20496
7082
7083 * platform/graphics/qt/GraphicsContextQt.cpp:
7084 (WebCore::GraphicsContext::rotate):
7085
sfalken@apple.com9d442862008-08-25 05:43:33 +000070862008-08-24 Steve Falkenburg <sfalken@apple.com>
7087
7088 Add a "last chance" WM_TIMER to the Windows shared timer.
7089
7090 The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
7091 Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
7092 timers if a timer with an earlier expiration is already pending. This results in no timers
7093 firing from that point on.
7094
7095 We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
7096 buggy window message hook.
7097
7098 This timer will start when the first WM_TIMER is scheduled, and will
7099 fire every 5 seconds thereafter, causing any lost timers to be fired.
7100
7101 Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
7102 and prevents the WebFrame leak.
7103
7104 Reviewed by Darin Adler, Geoff Garen.
7105
7106 * platform/win/SharedTimerWin.cpp:
7107 (WebCore::):
7108 (WebCore::TimerWindowWndProc):
7109 (WebCore::setSharedTimerFireTime):
7110
mitz@apple.com771fb752008-08-25 03:22:44 +000071112008-08-24 Dan Bernstein <mitz@apple.com>
7112
7113 Reviewed by Darin Adler.
7114
7115 - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
7116
7117 Test: fast/css/font-property-priority.html
7118
7119 * css/CSSParser.cpp:
7120 (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
7121 to the font-property-parsing functions.
7122 (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
7123 changed to use it rather than the m_important member.
7124 (WebCore::CSSParser::parseFontVariant): Ditto.
7125 (WebCore::CSSParser::parseFontWeight): Ditto.
7126 * css/CSSParser.h:
7127
timothy@apple.com4cea2632008-08-24 22:28:44 +000071282008-08-24 Timothy Hatcher <timothy@apple.com>
7129
7130 Fixes a bug where the Inspector's UI would not animate or
7131 fully function because JavaScript timeouts, intervals and
7132 CSS animation timers where not firing while paused at a
7133 a breakpoint in the inspected page.
7134
7135 https://bugs.webkit.org/show_bug.cgi?id=20042
7136
7137 Reviewed by Darin Adler.
7138
7139 Test: manual-tests/inspector/forzen-ui-while-paused.html
7140
7141 * page/JavaScriptDebugServer.cpp:
7142 (WebCore::JavaScriptDebugServer::pauseIfNeeded):
7143 Add a call to TimerBase::fireTimersInNestedEventLoop before
7144 spinning the EventLoop.
7145
rwlbuis@webkit.org8a772442008-08-24 18:07:32 +000071462008-08-24 Rob Buis <buis@kde.org>
7147
7148 Reviewed by Sam Weinig.
7149
7150 https://bugs.webkit.org/show_bug.cgi?id=20324
7151 A change in SVG Glyph wont show up
7152
7153 Invalidate the glyph cache when the d attribute is set.
7154
7155 Test: svg/custom/glyph-setting-d-attribute.svg
7156
7157 * svg/SVGGlyphElement.cpp:
7158 (WebCore::SVGGlyphElement::invalidateGlyphCache):
7159 (WebCore::SVGGlyphElement::parseMappedAttribute):
7160 (WebCore::SVGGlyphElement::insertedIntoDocument):
7161 (WebCore::SVGGlyphElement::removedFromDocument):
7162 * svg/SVGGlyphElement.h:
7163
mitz@apple.com5b2c3cc2008-08-24 09:18:39 +000071642008-08-24 Dan Bernstein <mitz@apple.com>
7165
7166 Reviewed by Sam Weinig.
7167
7168 - fix https://bugs.webkit.org/show_bug.cgi?id=13864
7169 <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
7170
7171 * rendering/RenderText.cpp:
7172 (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
7173 beginWS and endWS before the early return to ensure that they are
7174 initialized in that case.
7175
cwzwarich@webkit.org53ddf172008-08-23 08:16:54 +000071762008-08-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
7177
7178 Rubber-stamped by Mark Rowe.
7179
7180 Remove modelines.
7181
7182 * WebCore.pro:
7183 * bridge/testbindings.cpp:
7184 * dom/DocPtr.h:
7185 * loader/SubstituteData.h:
7186 * page/Chrome.cpp:
7187 * page/Chrome.h:
7188 * page/ChromeClient.h:
7189 * page/Frame.h:
7190 * page/FrameLoadRequest.h:
7191 * page/FrameTree.cpp:
7192 * page/FrameTree.h:
7193 * page/Page.h:
7194 * page/mac/ChromeMac.mm:
7195 * platform/network/HTTPHeaderMap.h:
7196 * platform/network/ResourceErrorBase.cpp:
7197 * platform/network/ResourceErrorBase.h:
7198 * platform/network/ResourceHandleInternal.h:
7199 * platform/network/ResourceRequestBase.cpp:
7200 * platform/network/ResourceRequestBase.h:
7201 * platform/network/ResourceResponseBase.cpp:
7202 * platform/network/ResourceResponseBase.h:
7203 * platform/network/cf/ResourceError.h:
7204 * platform/network/cf/ResourceRequest.h:
7205 * platform/network/cf/ResourceRequestCFNet.h:
7206 * platform/network/cf/ResourceResponse.h:
7207 * platform/network/cf/ResourceResponseCFNet.h:
7208 * platform/network/curl/ResourceError.h:
7209 * platform/network/curl/ResourceRequest.h:
7210 * platform/network/curl/ResourceResponse.h:
7211 * platform/network/mac/ResourceError.h:
7212 * platform/network/mac/ResourceErrorMac.mm:
7213 * platform/network/mac/ResourceRequest.h:
7214 * platform/network/mac/ResourceRequestMac.mm:
7215 * platform/network/mac/ResourceResponse.h:
7216 * platform/network/mac/ResourceResponseMac.mm:
7217 * platform/network/qt/ResourceError.h:
7218 * platform/network/qt/ResourceRequest.h:
7219 * platform/network/qt/ResourceResponse.h:
7220 * platform/network/soup/CookieJarSoup.cpp:
7221 * platform/network/soup/ResourceError.h:
7222 * platform/network/soup/ResourceRequest.h:
7223 * platform/network/soup/ResourceResponse.h:
7224
mitz@apple.com57a2f482008-08-23 07:16:41 +000072252008-08-23 Dan Bernstein <mitz@apple.com>
7226
7227 Reviewed by Dave Hyatt.
7228
7229 - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
7230
7231 Test: fast/table/vertical-align-baseline.html
7232
7233 * rendering/RenderTable.cpp:
7234 (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
7235 baseline of the first table row, if there is one, -1 otherwise.
7236 * rendering/RenderTable.h:
7237 * rendering/RenderTableCell.cpp:
7238 (WebCore::RenderTableCell::baselinePosition): Changed to follow the
7239 CSS2.1 definition of the baseline of a table cell.
7240 * rendering/RenderTableSection.cpp:
7241 (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
7242 the baseline of the first row in the section.
7243 * rendering/RenderTableSection.h:
7244
jhoneycutt@apple.com88af18d2008-08-22 23:44:32 +000072452008-08-18 Jon Honeycutt <jhoneycutt@apple.com>
7246
7247 Add SPI to make a Windows WebView transparent.
7248
7249 Reviewed by Dan Bernstein.
7250
7251 * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
7252 determines whether the created context has an alpha channel.
7253 * platform/graphics/win/GraphicsContextCGWin.cpp:
7254 (WebCore::CGContextWithHDC):
7255
timothy@apple.comb63d1172008-08-22 18:39:42 +000072562008-08-22 Timothy Hatcher <timothy@apple.com>
7257
timothy@apple.com964022d2008-08-22 20:35:20 +00007258 Rolls out r35834 because it caused a regression in the Inspector's
7259 Console where some expressions always threw a syntax error.
7260
7261 https://bugs.webkit.org/show_bug.cgi?id=20487
7262
7263 * page/inspector/Console.js:
7264 (Console.prototype._evalInInspectedWindow): Removes parenthesis
7265 around the expression.
7266
72672008-08-22 Timothy Hatcher <timothy@apple.com>
7268
timothy@apple.com056d4782008-08-22 18:39:52 +00007269 Makes getStyleProperty return a value for the overflow property
7270 when overflow-x and overflow-y are equal.
7271
7272 https://bugs.webkit.org/show_bug.cgi?id=20485
7273
7274 Reviewed by Dan Bernstein.
7275
7276 Test: fast/css/overflow-property.html
7277
7278 * css/CSSMutableStyleDeclaration.cpp:
7279 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
7280
72812008-08-22 Timothy Hatcher <timothy@apple.com>
7282
timothy@apple.comb63d1172008-08-22 18:39:42 +00007283 Fixes a bug where while editing in the Inspector the
7284 sidebar scroll position would jump to the top.
7285
7286 https://bugs.webkit.org/show_bug.cgi?id=20484
7287
7288 Reviewed by Darin Adler.
7289
7290 * page/inspector/treeoutline.js:
7291 (TreeOutline._removeChildren): Remove the offsetTop call that
7292 was forcing a layout, since layout causes scroll positions
7293 to be clamped to the new scrollHeight/Width. Layout will happen
7294 normally when needed.
7295
kevino@webkit.org8271c842008-08-22 16:25:52 +000072962008-08-22 Kevin Ollivier <kevino@theolliviers.com>
7297
7298 wx build fix. Add AccessibilityTable sources.
7299
7300 * WebCoreSources.bkl:
7301
mitz@apple.com9befc872008-08-22 06:29:33 +000073022008-08-21 Dan Bernstein <mitz@apple.com>
7303
7304 Reviewed by Jon Honeycutt and Alexey Proskuryakov.
7305
7306 - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
7307
7308 Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
7309
7310 * platform/graphics/mac/SimpleFontDataMac.mm:
7311 (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
7312 ascent and 100% to its reported descent.
7313
mrowe@apple.comac9b6a52008-08-22 02:07:54 +000073142008-08-21 Kalle Vahlman <kalle.vahlman@movial.com>
7315
7316 Reviewed by Darin Adler.
7317
mrowe@apple.com22eaa172008-08-22 02:10:15 +00007318 https://bugs.webkit.org/show_bug.cgi?id=20267
mrowe@apple.comac9b6a52008-08-22 02:07:54 +00007319 [GTK] Crash on some pages due to a plugin
7320
7321 Fix handling of badly formatted and empty plugin mime descriptions
7322
7323 * plugins/gtk/PluginPackageGtk.cpp:
7324 (WebCore::PluginPackage::fetchInfo):
7325
mrowe@apple.com798b3432008-08-22 02:07:48 +000073262008-08-21 Kevin Watters <kevinwatters@gmail.com>
7327
7328 Reviewed by Darin Adler.
7329
7330 Follow other ports (and IE) in ImageSourceWx.cpp never to return an
7331 animated GIF frame duration of less than 50ms.
7332
7333 * platform/graphics/wx/ImageSourceWx.cpp:
7334 (WebCore::ImageSource::frameDurationAtIndex):
7335
britto@apple.com8ed72772008-08-22 00:39:39 +000073362008-08-21 Maxime Britto <britto@apple.com>
7337
7338 Reviewed by Kevin McCullough.
7339
7340 Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
7341 https://bugs.webkit.org/show_bug.cgi?id=20451
7342
7343 rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
7344 When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
7345 This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
7346
7347 * page/EventHandler.cpp:
7348 (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.
7349
7350 (WebCore::EventHandler::handleMousePressEvent): ditto
7351
timothy@apple.com5d492192008-08-21 23:54:01 +000073522008-08-21 Anthony Ricaud <rik24d@gmail.com>
7353
7354 Small optimization for when the dividers in the Inspector's
7355 Resources panel are updated.
7356
7357 Reviewed by Tim Hatcher.
7358
7359 * page/inspector/ResourcesPanel.js:
7360 (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
7361 Combind a for loop and clone the divider element.
7362
dino@apple.comaa75e4c2008-08-21 23:35:23 +000073632008-08-21 Chris Marrin <cmarrin@apple.com>
7364
7365 Allow 0 (without units) for Time eg. duration
7366 Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
7367
7368 Reviewed by Dave Hyatt.
7369
7370 Test: css1/units/zero-duration-without-units.html
7371
7372 * css/CSSParser.cpp:
7373 (WebCore::CSSParser::validUnit):
7374
timothy@apple.com29c12d02008-08-21 20:12:47 +000073752008-08-21 Timothy Hatcher <timothy@apple.com>
7376
timothy@apple.comca11cd82008-08-21 20:13:12 +00007377 Make deleting all text while editing a DOM attribute in
7378 the Inspector delete the attribute. This also fixes
7379 an exception that would happen before.
7380
7381 https://bugs.webkit.org/show_bug.cgi?id=20472
7382
7383 Reviewed by Kevin McCullough.
7384
7385 * page/inspector/ElementsPanel.js:
7386 (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
7387 Don't check for hasAttributes on the parseElement, continuing
7388 through the function will correctly remove the attribute.
7389 If the parseElement is null, call _editingCancelled not
7390 editingCancelled, this fixes an exception.
7391
73922008-08-21 Timothy Hatcher <timothy@apple.com>
7393
timothy@apple.comde831cf2008-08-21 20:12:59 +00007394 Update the Inspector's Metrics pane when editing in
7395 the Styles pane. This makes sure the metrics shown
7396 always match what the Styles pane shows.
7397
7398 https://bugs.webkit.org/show_bug.cgi?id=20470
7399
7400 Reviewed by Kevin McCullough.
7401
7402 * page/inspector/ElementsPanel.js:
7403 (WebInspector.ElementsPanel): Add event listeners for
7404 the "style edited" and "style property toggled" events,
7405 so the Metrics pane is updated.
7406 (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
7407 Update the Metrics pane.
7408 * page/inspector/StylesSidebarPane.js:
7409 (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
7410 Dispatch the "style property toggled" event.
7411 (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
7412 Dispatch the "style edited" event when the CSS text is restored.
7413 (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
7414 Dispatch the "style edited" event.
7415
74162008-08-21 Timothy Hatcher <timothy@apple.com>
7417
timothy@apple.com29c12d02008-08-21 20:12:47 +00007418 Make the Inspector's Metrics sidebar pane editable.
7419
7420 https://bugs.webkit.org/show_bug.cgi?id=17218
7421 rdar://problem/5732818
7422
7423 Reviewed by Kevin McCullough.
7424
7425 * page/inspector/ElementsPanel.js:
7426 (WebInspector.ElementsPanel): Add an event listener for
7427 the "metrics edited" event, so the Styles pane is updated.
7428 * page/inspector/MetricsSidebarPane.js:
7429 (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
7430 so future updates work. Add a double click event listener for the
7431 metric values to start editing.
7432 (WebInspector.MetricsSidebarPane.prototype.startEditing):
7433 Call WebInspector.startEditing with some context.
7434 (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
7435 (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
7436 Set the user input on the elements inline style. Fire the
7437 "metrics edited" event.
7438
sfalken@apple.com7e6e5392008-08-21 18:42:44 +000074392008-08-21 Steve Falkenburg <sfalken@apple.com>
7440
7441 Fix a race condition in Windows timer code.
7442 Timer function could end up being called with a 0 timer, leading to a Windows exception.
7443
7444 Don't post a timer message if one is already pending.
7445
7446 Reviewed by Ada Chan.
7447
7448 * platform/win/SharedTimerWin.cpp:
7449 (WebCore::TimerWindowWndProc):
7450 (WebCore::clearTimer):
7451 (WebCore::queueTimerProc):
7452 (WebCore::setSharedTimerFireTime):
7453
timothy@apple.com8d15bcf2008-08-21 16:33:17 +000074542008-08-21 Anthony Ricaud <rik24d@gmail.com>
7455
timothy@apple.com493212c72008-08-21 16:36:06 +00007456 After trying to add the expression, try again with quotes for
7457 easier edition.
7458
7459 https://bugs.webkit.org/show_bug.cgi?id=20466
7460
7461 Reviewed by Tim Hatcher.
7462
7463 * page/inspector/ObjectPropertiesSection.js: Added an
7464 evaluateExpression function.
7465
74662008-08-21 Anthony Ricaud <rik24d@gmail.com>
7467
timothy@apple.com8d15bcf2008-08-21 16:33:17 +00007468 Perform Inspector searches on search event to clear results when
7469 clicking the cross to empty it. Delete the lastQuery when the field
7470 is emptied in order to perform the search if exactly the same query
7471 is entered next.
7472
7473 https://bugs.webkit.org/show_bug.cgi?id=20462
7474
7475 Reviewed by Tim Hatcher.
7476
7477 * page/inspector/inspector.js:
7478
jmalonzo@webkit.orgdd470402008-08-21 11:22:51 +000074792008-08-21 Marco Barisione <marco.barisione@collabora.co.uk>
7480
7481 Reviewed by Mark Rowe.
7482
7483 http://bugs.webkit.org/show_bug.cgi?id=19656
7484 [SOUP] The gio code should call didFail() instead of
7485 didFinishLoading() in case of error
7486
7487 In case of error call didFail() instead of didReceiveResponse() and
7488 didFinishLoading().
7489
7490 * platform/network/soup/ResourceHandleSoup.cpp:
7491 (WebCore::networkErrorForFile):
7492 (WebCore::readCallback):
7493 (WebCore::openCallback):
7494 (WebCore::queryInfoCallback):
7495
mrowe@apple.com72a95b12008-08-21 04:01:51 +000074962008-08-20 Mark Rowe <mrowe@apple.com>
7497
mrowe@apple.com4e593f42008-08-21 06:52:42 +00007498 Reviewed by Jon Honeycutt.
7499
7500 Fix build failure.
7501
7502 * bridge/c/c_instance.cpp:
7503 (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
7504 as that is what NPEnumerationFunctionPtr is declared as accepting.
7505
75062008-08-20 Mark Rowe <mrowe@apple.com>
7507
mrowe@apple.com72a95b12008-08-21 04:01:51 +00007508 Reviewed by Dan Bernstein.
7509
7510 Build fix. Handle kCGInterpolationMedium in switch statements if it is available.
7511
7512 * platform/graphics/GraphicsContext.h:
7513 (WebCore::):
7514 * platform/graphics/cg/GraphicsContextCG.cpp:
7515 (WebCore::GraphicsContext::setImageInterpolationQuality):
7516 (WebCore::GraphicsContext::imageInterpolationQuality):
7517
mitz@apple.comaa938792008-08-21 00:33:29 +000075182008-08-20 Dan Bernstein <mitz@apple.com>
7519
7520 Rubber-stamped by John Sullivan.
7521
7522 - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
7523 rename related methods and variables accordingly.
7524
7525 * WebCore.base.exp:
7526 * page/FrameView.cpp:
7527 (WebCore::FrameViewPrivate::FrameViewPrivate):
7528 (WebCore::FrameView::shouldUpdateWhileOffscreen):
7529 (WebCore::FrameView::setShouldUpdateWhileOffscreen):
7530 * page/FrameView.h:
7531 * platform/ScrollView.h:
7532 * platform/mac/ScrollViewMac.mm:
7533 (WebCore::ScrollView::updateContents):
7534
beidson@apple.com2ace6b12008-08-21 00:13:12 +000075352008-08-20 Brady Eidson <beidson@apple.com>
7536
7537 Reviewed by Mitzpettel
7538
7539 <rdar://problem/6163636> - Many images broken in Mail
7540
7541 This can be traced back to the preload scanner. With that change, CachedResources are created a lot
7542 sooner than before and confuse the WebArchive machinery.
7543
7544 When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore
7545 such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate
7546 machinery and nothing is known about where the data will eventually come from.
7547
7548 * loader/DocumentLoader.cpp:
7549 (WebCore::DocumentLoader::subresource): Ignore a CachedResource if its preloadResult is
7550 CachedResource::PreloadReferenced.
7551
zecke@webkit.orga8fa0e12008-08-20 22:50:39 +000075522008-08-20 Holger Hans Peter Freyther <zecke@selfish.org>
7553
7554 Unreviewed compile fix
7555
7556 Catch up with the JSValue::type elimination.
7557
7558 * bridge/qt/qt_instance.cpp:
7559 (KJS::Bindings::QtRuntimeObjectImp::construct):
7560 (KJS::Bindings::QtInstance::defaultValue):
7561 * bridge/qt/qt_runtime.cpp:
7562 (KJS::Bindings::QtRuntimeConnectionMethod::call):
7563
mrowe@apple.com2d74ec92008-08-20 22:15:53 +000075642008-08-20 Chris Teague <chris.teague@gmail.com>
7565
7566 Reviewed by Mark Rowe.
7567
7568 Fix https://bugs.webkit.org/show_bug.cgi?id=20449
7569 Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
7570
7571 * ChangeLog:
7572 * loader/FrameLoader.cpp:
7573 (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
7574
simon.fraser@apple.combe1d24c2008-08-20 21:57:22 +000075752008-08-20 Simon Fraser <simon.fraser@apple.com>
7576
7577 Reviewed by Dave Hyatt
7578
7579 getComputedStyle() for webkitTransform should return a transform
7580 that does not have the transform origin baked into it.
7581 https://bugs.webkit.org/show_bug.cgi?id=20464
7582
7583 Test: fast/css/getComputedStyle-transform.html
7584
7585 * css/CSSComputedStyleDeclaration.cpp:
7586 (WebCore::computedTransform):
7587 * rendering/style/RenderStyle.cpp:
7588 (WebCore::RenderStyle::applyTransform):
7589 * rendering/style/RenderStyle.h:
7590
andersca@apple.com021ce772008-08-20 21:04:12 +000075912008-08-20 Josh Aas <joshmoz@gmail.com>
7592
7593 Reviewed and landed by Anders.
7594
7595 <rdar://problem/6163636>
7596 rename NPCocoaEvent's "event" struct to "data" (20446)
7597
7598 * bridge/npapi.h:
7599 (_NPCocoaEvent::):
7600
bdakin@apple.com699d13d2008-08-20 20:46:28 +000076012008-08-20 Beth Dakin <bdakin@apple.com>
7602
darin@apple.com07c80c62008-09-05 18:15:43 +00007603 Reviewed by Darin Adler.
bdakin@apple.com699d13d2008-08-20 20:46:28 +00007604
7605 Fix for <rdar://problem/6145626>
7606 This patch fixes a number of remaining problems getting
7607 disconnected frames to work correctly with markAllMatchesForText()
7608 and findString(). Details inline.
7609
7610 This was a static helper function in Frame, but this patch requires
7611 the same functionality in Editor, so I just added it as a function
7612 on Node.
7613 * dom/Node.cpp:
7614 (WebCore::Node::isInShadowTree):
7615 * dom/Node.h:
7616
7617 * editing/Editor.cpp:
7618 (WebCore::Editor::insideVisibleArea): Returns false if
7619 excludeFromTextSearch() is true.
7620
7621 In a normal (non-disconnected) frame, findString returns a range of
7622 the document node if the text is not found in the frame. I changed
7623 firstVisibleRange and lastVisibleRange to match that behavior when
7624 the text is not found
7625 (WebCore::Editor::firstVisibleRange):
7626 (WebCore::Editor::lastVisibleRange):
7627
7628 Here are the bulk of the changes in the patch. A lot of text was
7629 not being found in disconnected frames because I failed to account
7630 for all of the possible problems associated with shadow trees. That
7631 is fixed here.
7632 (WebCore::Editor::nextVisibleRange):
7633 * editing/Editor.h:
7634
7635 excludeFromTextSearch() is new. It allows a WebKit client to mark a
7636 frame as not-text-searchable through SPI.
7637 * WebCore.base.exp:
7638 * page/Frame.cpp:
7639 (WebCore::Frame::excludeFromTextSearch):
7640 (WebCore::Frame::setExcludeFromTextSearch):
7641 (WebCore::FramePrivate::FramePrivate):
7642 * page/Frame.h:
7643 * page/FramePrivate.h:
7644
7645 (WebCore::Frame::findString):
7646 (WebCore::Frame::markAllMatchesForText): I kept running into an
7647 assertion failure in paining code because of the forced paint on
7648 empty visible rects.
7649
timothy@apple.com301befc2008-08-20 19:10:54 +000076502008-08-20 Timothy Hatcher <timothy@apple.com>
7651
7652 Adds a positon box to the Inspector's Metrics sidebar
7653 pane. When an element is not statically positioned, there
7654 is now a position box that show top, right, bottom and
7655 left computed values.
7656
7657 Reviewed by Kevin McCullough.
7658
7659 * English.lproj/localizedStrings.js: Updated the strings.
7660 * page/inspector/MetricsSidebarPane.js:
7661 (WebInspector.MetricsSidebarPane.prototype.update):
7662 Renamed the boxPartValue function to createBoxPartElement
7663 and made it create the entire element. Made it understand
7664 how to get position style properties. Don't use the figure dash
7665 when 0px is used for positions, since the 0 is meaningful there.
7666 Instead use the figure dash when a position is auto.
7667 * page/inspector/inspector.css: Added a new rule for position.
7668
mrowe@apple.com37686d42008-09-04 00:10:39 +000076692008-08-20 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com2a5ecc02008-08-20 18:34:56 +00007670
7671 Reviewed by Beth Dakin
7672
7673 Qt build fix
7674
7675 * WebCore.pro:
7676
mitz@apple.comedaa9042008-08-20 18:28:07 +000076772008-08-20 Dan Bernstein <mitz@apple.com>
7678
7679 Reviewed by Anders Carlsson.
7680
7681 - avoid using a deprecated NSScroller method on Leopard
7682
7683 * platform/mac/PlatformScrollBarMac.mm:
7684 (WebCore::PlatformScrollbar::updateThumbPosition):
7685 (WebCore::PlatformScrollbar::updateThumbProportion):
7686
jmalonzo@webkit.org6e0a3082008-08-20 11:40:31 +000076872008-08-20 Jan Michael Alonzo <jmalonzo@webkit.org>
7688
7689 Reviewed by Oliver Hunt.
7690
7691 Gtk build fix
7692
7693 * GNUmakefile.am:
7694 * page/AccessibilityTable.cpp: Change nil to 0
7695 (WebCore::AccessibilityTable::cellForColumnAndRow):
7696
ap@webkit.org01aff702008-08-20 07:23:06 +000076972008-08-19 Alexey Proskuryakov <ap@webkit.org>
7698
7699 Reviewed by Geoff Garen.
7700
7701 Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
7702
7703 * ForwardingHeaders/kjs/JSLock.h: Added.
7704 * WebCore.vcproj/WebCore.vcproj:
7705 * bindings/js/GCController.cpp:
7706 (WebCore::collect):
7707 (WebCore::GCController::gcTimerFired):
7708 (WebCore::GCController::garbageCollectNow):
7709 * bindings/js/JSCustomSQLStatementCallback.cpp:
7710 (WebCore::JSCustomSQLStatementCallback::handleEvent):
7711 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
7712 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
7713 * bindings/js/JSCustomSQLTransactionCallback.cpp:
7714 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
7715 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
7716 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
7717 * bindings/js/JSCustomVoidCallback.cpp:
7718 (WebCore::JSCustomVoidCallback::handleEvent):
7719 * bindings/js/JSCustomXPathNSResolver.cpp:
7720 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
7721 * bindings/js/JSDOMWindowBase.cpp:
7722 (WebCore::DOMWindowTimer::~DOMWindowTimer):
7723 (WebCore::JSDOMWindowBase::clear):
7724 (WebCore::JSDOMWindowBase::timerFired):
7725 * bindings/js/JSEventCustom.cpp:
7726 (WebCore::toJS):
7727 * bindings/js/JSEventListener.cpp:
7728 (WebCore::JSAbstractEventListener::handleEvent):
7729 * bindings/js/JSNSResolver.cpp:
7730 (WebCore::JSNSResolver::lookupNamespaceURI):
7731 * bindings/js/JSNodeFilterCondition.cpp:
7732 (WebCore::JSNodeFilterCondition::acceptNode):
7733 * bindings/js/ScheduledAction.cpp:
7734 (WebCore::ScheduledAction::execute):
7735 * bindings/js/ScriptController.cpp:
7736 (WebCore::ScriptController::evaluate):
7737 (WebCore::ScriptController::clearWindowShell):
7738 (WebCore::ScriptController::createHTMLEventHandler):
7739 (WebCore::ScriptController::createSVGEventHandler):
7740 (WebCore::ScriptController::initScript):
7741 (WebCore::ScriptController::updateDocument):
7742 (WebCore::ScriptController::bindingRootObject):
7743 (WebCore::ScriptController::windowScriptNPObject):
7744 (WebCore::ScriptController::createScriptObjectForPluginElement):
7745 (WebCore::ScriptController::clearScriptObjects):
7746 * bindings/js/ScriptControllerMac.mm:
7747 (WebCore::ScriptController::windowScriptObject):
7748 * bindings/objc/WebScriptObject.mm:
7749 (_didExecute):
7750 (-[WebScriptObject callWebScriptMethod:withArguments:]):
7751 (-[WebScriptObject evaluateWebScript:]):
7752 (-[WebScriptObject setValue:forKey:]):
7753 (-[WebScriptObject valueForKey:]):
7754 (-[WebScriptObject removeWebScriptKey:]):
7755 (-[WebScriptObject stringRepresentation]):
7756 (-[WebScriptObject webScriptValueAtIndex:]):
7757 (-[WebScriptObject setWebScriptValueAtIndex:value:]):
7758 (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
7759 * bridge/NP_jsobject.cpp:
7760 (_NPN_InvokeDefault):
7761 (_NPN_Invoke):
7762 (_NPN_Evaluate):
7763 (_NPN_GetProperty):
7764 (_NPN_SetProperty):
7765 (_NPN_RemoveProperty):
7766 (_NPN_HasProperty):
7767 (_NPN_HasMethod):
7768 (_NPN_Enumerate):
7769 * bridge/c/c_class.cpp:
7770 (KJS::Bindings::CClass::~CClass):
7771 (KJS::Bindings::CClass::methodsNamed):
7772 (KJS::Bindings::CClass::fieldNamed):
7773 * bridge/c/c_instance.cpp:
7774 (KJS::Bindings::CInstance::invokeMethod):
7775 (KJS::Bindings::CInstance::invokeDefaultMethod):
7776 (KJS::Bindings::CInstance::getPropertyNames):
7777 * bridge/c/c_runtime.cpp:
7778 (KJS::Bindings::CField::valueFromInstance):
7779 (KJS::Bindings::CField::setValueToInstance):
7780 * bridge/c/c_utility.cpp:
7781 (KJS::Bindings::convertValueToNPVariant):
7782 (KJS::Bindings::convertNPVariantToValue):
7783 * bridge/jni/jni_class.cpp:
7784 (JavaClass::JavaClass):
7785 (JavaClass::~JavaClass):
7786 * bridge/jni/jni_instance.cpp:
7787 (JavaInstance::stringValue):
7788 * bridge/jni/jni_jsobject.mm:
7789 (JavaJSObject::call):
7790 (JavaJSObject::eval):
7791 (JavaJSObject::getMember):
7792 (JavaJSObject::setMember):
7793 (JavaJSObject::removeMember):
7794 (JavaJSObject::getSlot):
7795 (JavaJSObject::setSlot):
7796 (JavaJSObject::toString):
7797 (JavaJSObject::convertValueToJObject):
7798 (JavaJSObject::convertJObjectToValue):
7799 * bridge/jni/jni_objc.mm:
7800 (KJS::Bindings::dispatchJNICall):
7801 * bridge/jni/jni_runtime.cpp:
7802 (appendClassName):
7803 (JavaMethod::signature):
7804 * bridge/jni/jni_runtime.h:
7805 (KJS::Bindings::JavaString::JavaString):
7806 (KJS::Bindings::JavaString::_commonInit):
7807 (KJS::Bindings::JavaString::~JavaString):
7808 (KJS::Bindings::JavaString::UTF8String):
7809 * bridge/jni/jni_utility.cpp:
7810 (KJS::Bindings::convertValueToJValue):
7811 * bridge/npruntime.cpp:
7812 (_NPN_GetStringIdentifier):
7813 * bridge/objc/objc_instance.mm:
7814 (ObjcInstance::moveGlobalExceptionToExecState):
7815 (ObjcInstance::invokeMethod):
7816 (ObjcInstance::invokeDefaultMethod):
7817 (ObjcInstance::setValueOfUndefinedField):
7818 (ObjcInstance::getValueOfUndefinedField):
7819 * bridge/objc/objc_runtime.mm:
7820 (ObjcField::valueFromInstance):
7821 (ObjcField::setValueToInstance):
7822 * bridge/objc/objc_utility.mm:
7823 (KJS::Bindings::convertValueToObjcValue):
7824 (KJS::Bindings::convertNSStringToString):
7825 (KJS::Bindings::convertObjcValueToValue):
7826 * bridge/qt/qt_instance.cpp:
7827 (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
7828 (KJS::Bindings::QtInstance::~QtInstance):
7829 (KJS::Bindings::QtInstance::getQtInstance):
7830 (KJS::Bindings::QtInstance::getRuntimeObject):
7831 * bridge/qt/qt_runtime.cpp:
7832 (KJS::Bindings::convertValueToQVariant):
7833 (KJS::Bindings::convertQVariantToValue):
7834 (KJS::Bindings::QtRuntimeMetaMethod::call):
7835 (KJS::Bindings::QtRuntimeConnectionMethod::call):
7836 (KJS::Bindings::QtConnectionObject::QtConnectionObject):
7837 (KJS::Bindings::QtConnectionObject::execute):
7838 * bridge/runtime.cpp:
7839 (KJS::Bindings::Instance::createRuntimeObject):
7840 * bridge/testbindings.cpp:
7841 (main):
7842 * bridge/testbindings.mm:
7843 (main):
7844 * bridge/testqtbindings.cpp:
7845 (main):
7846 * dom/Document.cpp:
7847 (WebCore::Document::~Document):
7848 * dom/Node.cpp:
7849 (WebCore::Node::setDocument):
7850 * history/CachedPage.cpp:
7851 (WebCore::CachedPage::CachedPage):
7852 (WebCore::CachedPage::restore):
7853 (WebCore::CachedPage::clear):
7854 * loader/FrameLoader.cpp:
7855 (WebCore::getString):
7856 * page/InspectorController.cpp:
7857 (WebCore::ConsoleMessage::ConsoleMessage):
7858 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
7859 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
7860 (WebCore::getResourceDocumentNode):
7861 (WebCore::search):
7862 (WebCore::inspectedWindow):
7863 (WebCore::wrapCallback):
7864 (WebCore::currentCallFrame):
7865 (WebCore::profiles):
7866 (WebCore::InspectorController::focusNode):
7867 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
7868 (WebCore::InspectorController::addDatabaseScriptResource):
7869 (WebCore::InspectorController::addScriptProfile):
7870 * page/JavaScriptCallFrame.cpp:
7871 (WebCore::JavaScriptCallFrame::evaluate):
7872 * page/JavaScriptProfileNode.cpp:
7873 (WebCore::getTotalTime):
7874 (WebCore::getSelfTime):
7875 (WebCore::getTotalPercent):
7876 (WebCore::getSelfPercent):
7877 (WebCore::getNumberOfCalls):
7878 (WebCore::getChildren):
7879 (WebCore::getVisible):
7880 * page/Page.cpp:
7881 * page/mac/FrameMac.mm:
7882 * plugins/PluginView.cpp:
7883 (WebCore::PluginView::start):
7884 (WebCore::getString):
7885 (WebCore::PluginView::performRequest):
7886 (WebCore::PluginView::bindingInstance):
7887 * plugins/gtk/PluginViewGtk.cpp:
7888 (WebCore::PluginView::paint):
7889 (WebCore::PluginView::handleKeyboardEvent):
7890 (WebCore::PluginView::handleMouseEvent):
7891 (WebCore::PluginView::setNPWindowRect):
7892 (WebCore::PluginView::stop):
7893 (WebCore::PluginView::init):
7894 * plugins/qt/PluginViewQt.cpp:
7895 (WebCore::PluginView::setNPWindowRect):
7896 (WebCore::PluginView::stop):
7897 (WebCore::PluginView::init):
7898 * plugins/win/PluginViewWin.cpp:
7899 (WebCore::PluginView::dispatchNPEvent):
7900 (WebCore::PluginView::handleKeyboardEvent):
7901 (WebCore::PluginView::handleMouseEvent):
7902 (WebCore::PluginView::setNPWindowRect):
7903 (WebCore::PluginView::stop):
7904 * xml/XMLHttpRequest.cpp:
7905 (WebCore::XMLHttpRequest::clearResponse):
7906 (WebCore::XMLHttpRequest::didFinishLoading):
7907 (WebCore::XMLHttpRequest::didReceiveData):
7908
eric@webkit.orgbac93762008-08-19 23:33:07 +000079092008-08-19 Eric Seidel <eric@webkit.org>
7910
7911 Reviewed by Geoff Garen.
7912
7913 Add the beginnings of Skia graphics support to WebCore
7914 as I try to begin the long process of un-forking the changes
7915 needed to WebCore to make Andriod's WebCore build.
7916
7917 I'll follow this up with actual *Skia.cpp files in a separate patch.
7918
7919 * platform/graphics/AffineTransform.h:
7920 * platform/graphics/FloatPoint.h:
7921 * platform/graphics/FloatRect.h:
7922 * platform/graphics/Gradient.h:
7923 * platform/graphics/GraphicsContext.h:
7924 * platform/graphics/Image.h:
7925 * platform/graphics/ImageBuffer.h:
7926 * platform/graphics/ImageSource.h:
7927 * platform/graphics/IntPoint.h:
7928 * platform/graphics/IntRect.h:
7929 * platform/graphics/Path.h:
7930 * platform/graphics/Pattern.h:
7931 * svg/graphics/SVGPaintServerPattern.h:
7932 * svg/graphics/SVGPaintServerSolid.h:
7933
sfalken@apple.com3f69b332008-08-19 22:34:37 +000079342008-08-19 Steve Falkenburg <sfalken@apple.com>
7935
sfalken@apple.com45d22802008-08-19 22:46:31 +00007936 Fix Windows build more.
7937
7938 * WebCore.vcproj/WebCore.vcproj:
7939
79402008-08-19 Steve Falkenburg <sfalken@apple.com>
7941
sfalken@apple.com3f69b332008-08-19 22:34:37 +00007942 Fix Windows build.
7943
7944 * page/AccessibilityRenderObject.cpp:
7945 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
7946
mrowe@apple.com37686d42008-09-04 00:10:39 +000079472008-08-19 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com7c7b5f32008-08-19 22:05:37 +00007948
7949 Reviewed by Beth Dakin.
7950
7951 <rdar://problem/4003764> Expose tables as AXTables
7952
7953 Tests: accessibility/table-attributes.html
7954 accessibility/table-cell-spans.html
7955 accessibility/table-cells.html
7956 accessibility/table-detection.html
7957 accessibility/table-sections.html
7958 accessibility/table-with-rules.html
7959
7960 * WebCore.xcodeproj/project.pbxproj:
7961 * page/AXObjectCache.cpp:
7962 (WebCore::AXObjectCache::get):
7963 * page/AccessibilityObject.h:
7964 (WebCore::):
7965 (WebCore::AccessibilityObject::isDataTable):
7966 (WebCore::AccessibilityObject::isTableRow):
7967 (WebCore::AccessibilityObject::isTableColumn):
7968 (WebCore::AccessibilityObject::isTableCell):
7969 * page/AccessibilityRenderObject.cpp:
7970 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
7971 * page/AccessibilityTable.cpp: Added.
7972 (WebCore::AccessibilityTable::AccessibilityTable):
7973 (WebCore::AccessibilityTable::~AccessibilityTable):
7974 (WebCore::AccessibilityTable::create):
7975 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
7976 (WebCore::AccessibilityTable::clearChildren):
7977 (WebCore::AccessibilityTable::addChildren):
7978 (WebCore::AccessibilityTable::headerContainer):
7979 (WebCore::AccessibilityTable::columns):
7980 (WebCore::AccessibilityTable::rows):
7981 (WebCore::AccessibilityTable::rowHeaders):
7982 (WebCore::AccessibilityTable::columnHeaders):
7983 (WebCore::AccessibilityTable::cells):
7984 (WebCore::AccessibilityTable::columnCount):
7985 (WebCore::AccessibilityTable::rowCount):
7986 (WebCore::AccessibilityTable::cellForColumnAndRow):
7987 (WebCore::AccessibilityTable::roleValue):
7988 (WebCore::AccessibilityTable::accessibilityIsIgnored):
7989 (WebCore::AccessibilityTable::title):
7990 (WebCore::AccessibilityTable::isDataTable):
7991 * page/AccessibilityTable.h: Added.
7992 * page/AccessibilityTableCell.cpp: Added.
7993 (WebCore::AccessibilityTableCell::AccessibilityTableCell):
7994 (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
7995 (WebCore::AccessibilityTableCell::create):
7996 (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
7997 (WebCore::AccessibilityTableCell::rowIndexRange):
7998 (WebCore::AccessibilityTableCell::columnIndexRange):
7999 * page/AccessibilityTableCell.h: Added.
8000 (WebCore::AccessibilityTableCell::isTableCell):
8001 (WebCore::AccessibilityTableCell::roleValue):
8002 * page/AccessibilityTableColumn.cpp: Added.
8003 (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
8004 (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
8005 (WebCore::AccessibilityTableColumn::create):
8006 (WebCore::AccessibilityTableColumn::setParentTable):
8007 (WebCore::AccessibilityTableColumn::elementRect):
8008 (WebCore::AccessibilityTableColumn::size):
8009 (WebCore::AccessibilityTableColumn::children):
8010 (WebCore::AccessibilityTableColumn::headerObject):
8011 (WebCore::AccessibilityTableColumn::headerObjectForSection):
8012 (WebCore::AccessibilityTableColumn::addChildren):
8013 * page/AccessibilityTableColumn.h: Added.
8014 (WebCore::AccessibilityTableColumn::parentObject):
8015 (WebCore::AccessibilityTableColumn::roleValue):
8016 (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
8017 (WebCore::AccessibilityTableColumn::isTableColumn):
8018 (WebCore::AccessibilityTableColumn::setColumnIndex):
8019 (WebCore::AccessibilityTableColumn::columnIndex):
8020 * page/AccessibilityTableHeaderContainer.cpp: Added.
8021 (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
8022 (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
8023 (WebCore::AccessibilityTableHeaderContainer::create):
8024 (WebCore::AccessibilityTableHeaderContainer::children):
8025 (WebCore::AccessibilityTableHeaderContainer::elementRect):
8026 (WebCore::AccessibilityTableHeaderContainer::size):
8027 (WebCore::AccessibilityTableHeaderContainer::addChildren):
8028 * page/AccessibilityTableHeaderContainer.h: Added.
8029 (WebCore::AccessibilityTableHeaderContainer::roleValue):
8030 (WebCore::AccessibilityTableHeaderContainer::setParentTable):
8031 (WebCore::AccessibilityTableHeaderContainer::parentObject):
8032 (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
8033 * page/AccessibilityTableRow.cpp: Added.
8034 (WebCore::AccessibilityTableRow::AccessibilityTableRow):
8035 (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
8036 (WebCore::AccessibilityTableRow::create):
8037 (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
8038 (WebCore::AccessibilityTableRow::headerObject):
8039 * page/AccessibilityTableRow.h: Added.
8040 (WebCore::AccessibilityTableRow::isTableRow):
8041 (WebCore::AccessibilityTableRow::roleValue):
8042 (WebCore::AccessibilityTableRow::setRowIndex):
8043 (WebCore::AccessibilityTableRow::rowIndex):
8044 * page/mac/AccessibilityObjectWrapper.mm:
8045 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
8046 (RoleEntry::):
8047 (-[AccessibilityObjectWrapper roleDescription]):
8048 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
8049 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
8050 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
8051
sfalken@apple.comb83d4692008-08-19 18:39:44 +000080522008-08-19 Steve Falkenburg <sfalken@apple.com>
8053
8054 Build fix.
8055 Add buildfailed support to stop builds early (preventing inaccurate error messages).
8056 Add missing post-build rule to Release.
8057
8058 * WebCore.vcproj/QTMovieWin.vcproj:
8059
timothy@apple.comda3aa632008-08-19 18:33:02 +000080602008-08-19 Keishi Hattori <casey.hattori@gmail.com>
8061
timothy@apple.com7d08c322008-08-19 18:33:27 +00008062 Added support for console.count in the inspector.
8063
8064 Reviewed by Geoff Garen.
8065
8066 * page/Console.cpp:
8067 (WebCore::Console::count):
8068 * page/Console.h:
8069 * page/Console.idl: Added console.count.
8070 * page/InspectorController.cpp:
8071 (WebCore::InspectorController::didCommitLoad): Clears m_counts.
8072 (WebCore::InspectorController::count): Updates the count number
8073 sing "title@source:line" as the identifier, and adds a
8074 message to the console.
8075 * page/InspectorController.h: Added m_counts.
8076
80772008-08-19 Keishi Hattori <casey.hattori@gmail.com>
8078
timothy@apple.comda3aa632008-08-19 18:33:02 +00008079 Clear console.time timers when changing page.
8080
8081 Reviewed by Geoff Garen.
8082
8083 * page/InspectorController.cpp:
8084 (WebCore::InspectorController::didCommitLoad):
8085
adele@apple.com1f2d7e02008-08-19 17:55:58 +000080862008-08-19 Eric Carlson <eric.carlson@apple.com>
8087
8088 Reviewed by Adele.
8089
8090 Fix for <rdar://problem/6154695> Full-page movies flicker while playing
8091 https://bugs.webkit.org/show_bug.cgi?id=20404
8092
8093 Ignore setVisible() when visibility doesn't change.
8094
8095 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
8096 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
8097 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
8098 (WebCore::MediaPlayerPrivate::setVisible):
8099
timothy@apple.com9d9821a2008-08-19 17:00:26 +000081002008-08-19 Timothy Hatcher <timothy@apple.com>
8101
timothy@apple.come058a792008-08-19 17:01:12 +00008102 Fixes a bug in the Profile view where switching sort order, then
8103 switching from heavy to tree mode would show the tree in the
8104 previous sort order.
8105
8106 https://bugs.webkit.org/show_bug.cgi?id=20441
8107
8108 Reviewed by Kevin McCullough.
8109
8110 * page/inspector/ProfileView.js:
8111 (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
8112 on the next profile before assigning it to this.profile.
8113 (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
8114 (WebInspector.ProfileView.prototype._sortProfile): Moves from
8115 _sortData and takes a profile argument. If the profile passed in
8116 matches the this.profile, then call refresh.
8117
81182008-08-18 Timothy Hatcher <timothy@apple.com>
8119
timothy@apple.come525e402008-08-19 17:01:00 +00008120 Changed the default sort order now that heavy view is the default.
8121 Also fixes a bug where the heavy profile was not sorted at first.
8122
8123 https://bugs.webkit.org/show_bug.cgi?id=20440
8124
8125 Reviewed by Kevin McCullough.
8126
8127 * page/inspector/ProfileView.js:
8128 (WebInspector.ProfileView): Changed the default sort column. Also assign
8129 heavyProfile to profile, so the sortSelfTimeDescending call happens
8130 on the heavy profile before assigning to this.profile.
8131
81322008-08-18 Timothy Hatcher <timothy@apple.com>
8133
timothy@apple.comc9287f32008-08-19 17:00:36 +00008134 Add support for editing DOM properties and scope variables by double
8135 clicking a property to enter edit mode.
8136
8137 https://bugs.webkit.org/show_bug.cgi?id=20415
8138
8139 Reviewed by Kevin McCullough.
8140
8141 * page/inspector/ObjectPropertiesSection.js:
8142 (WebInspector.ObjectPropertiesSection): Set editable to true by default.
8143 (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
8144 Factored out code into update, and calls update.
8145 (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
8146 Call removeChildren since this method can be called multiple times now.
8147 (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
8148 gets made later in onattach.
8149 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
8150 if shouldRefreshChildren is true. Call removeChildren since this method can be
8151 called multiple times now.
8152 (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
8153 (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
8154 (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
8155 this element (code moved from the constructor.)
8156 (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
8157 sibling property elements.
8158 (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
8159 WebInspector.startEditing after rememebring some context.
8160 (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
8161 for the list element, since it might have scrolled during editing.
8162 (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
8163 then restore the state from the context. Then call update to restore the title.
8164 (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
8165 if the user input and the previous input are the same. Call editingEnded, then call applyExpression
8166 to commit the user input.
8167 (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
8168 and stores the result on the object for the property name of this element. If the expression is
8169 empty, delete the property and remove the tree element.
8170 * page/inspector/ScopeChainSidebarPane.js:
8171 (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
8172 property on each ObjectPropertiesSection.
8173 (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
8174 since it is now implemented.
8175 * page/inspector/ScriptsPanel.js:
8176 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
8177 that defaults to true if omitted. It specifies whether to call update on the scope chain.
8178 * page/inspector/inspector.css: New styles.
8179 * page/inspector/treeoutline.js:
8180 (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
8181 change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
8182
81832008-08-18 Timothy Hatcher <timothy@apple.com>
8184
timothy@apple.com9d9821a2008-08-19 17:00:26 +00008185 Surround the expression to be evaluated in parenthesis so the
8186 result of the eval is the result of the whole expression not
8187 the last potential sub-expression. So evaluating {x: 123}
8188 will show the Object not 123.
8189
8190 https://bugs.webkit.org/show_bug.cgi?id=20428
8191
8192 Reviewed by Kevin McCullough.
8193
8194 * page/inspector/Console.js:
8195 (Console.prototype._evalInInspectedWindow): Add parenthesis
8196 around the expression. And add couple comments.
8197
kmccullough@apple.come8ac2f32008-08-19 16:38:06 +000081982008-08-19 Kevin McCullough <kmccullough@apple.com>
8199
8200 Reviewed by Geoff.
8201
8202 -Implement a page() function to extract a common code pattern.
8203
8204 * WebCore.xcodeproj/project.pbxproj:
8205 * page/Console.cpp:
8206 (WebCore::Console::addMessage):
8207 (WebCore::Console::error):
8208 (WebCore::Console::info):
8209 (WebCore::Console::log):
8210 (WebCore::Console::dir):
8211 (WebCore::Console::assertCondition):
8212 (WebCore::Console::time):
8213 (WebCore::Console::timeEnd):
8214 (WebCore::Console::group):
8215 (WebCore::Console::groupEnd):
8216 (WebCore::Console::finishedProfiling):
8217 (WebCore::Console::warn):
8218 (WebCore::Console::framePage):
8219 * page/Console.h:
8220
darin@apple.com349e1eb2008-08-19 04:39:04 +000082212008-08-12 Darin Adler <darin@apple.com>
8222
8223 Reviewed by Geoff.
8224
8225 - eliminate JSValue::type()
8226
8227 * bridge/c/c_instance.cpp:
8228 (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
8229 argument instead of JSType argument. Removed unneeded code to handle
8230 boolean, since that's never passed.
8231 * bridge/c/c_instance.h: Ditto.
8232
8233 * bridge/c/c_utility.cpp:
8234 (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
8235 instead of JSValue::type(). Removed unneeded code to handle
8236 "unspecified".
8237
8238 * bridge/jni/jni_instance.cpp:
8239 (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
8240 instead of JSType argument. Removed unneeded code to handle boolean.
8241 * bridge/jni/jni_instance.h: Ditto.
8242
8243 * bridge/jni/jni_jsobject.mm:
8244 (JavaJSObject::convertValueToJObject): Use JSValue::is functions
8245 instead of JSValue::type().
8246
8247 * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
8248 instead of JSType argument. Removed unused argument.
8249 * bridge/objc/objc_instance.mm:
8250 (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
8251 (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
8252 instead of JSType argument. Removed unneeded code to handle boolean
8253 and another dead code path for unknown types.
8254
8255 * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
8256 instead of JSType argument. Removed override of type() that caused
8257 the fallback object to return "UndefinedType" when there is no
8258 invokeUndefinedMethodFromWebScript:withArguments: method defined.
8259 That didn't accomplish much, since most checks for undefined don't
8260 ever call type().
8261 * bridge/objc/objc_runtime.mm:
8262 (ObjcFallbackObjectImp::defaultValue): Ditto.
8263
8264 * bridge/qt/qt_instance.cpp:
8265 (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
8266 argument instead of JSType argument. Removed unneeded code to handle
8267 boolean.
8268 * bridge/qt/qt_instance.h: Ditto.
8269
8270 * bridge/runtime.h:
8271 (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
8272 unsed argument.
8273 * bridge/runtime_object.cpp:
8274 (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
8275 argument instead of JSType argument.
8276 * bridge/runtime_object.h: Ditto.
8277
britto@apple.comaf7f8382008-08-19 00:42:13 +000082782008-08-18 Maxime Britto <britto@apple.com>
8279
8280 Reviewed by Adele.
8281
8282 <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
8283 Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
8284 We shouldn't be able to create another window while we are in pan scrolling.
8285 Other browsers behaviors :
8286 FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
8287 IE7 : Keys are not disabled but stops immediately the panning.
8288 This patch matches FF3 behavior by disabling every key but the esc key.
8289
8290 * page/EventHandler.cpp:
8291 (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
8292 (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
8293
mitz@apple.com12404d82008-08-19 00:20:38 +000082942008-08-18 Dan Bernstein <mitz@apple.com>
8295
8296 Reviewed by Dave Hyatt.
8297
8298 - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
8299
8300 Test: fast/replaced/max-width-percent.html
8301
8302 Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
8303 When false, max-width is not factored into the
8304 calculation.
8305 Changed RenderReplaced and subclasses' calcPrefWidths() to call
8306 calcReplacedWidth(false) and then apply max-width only if it has a
8307 fixed, positive value.
8308
8309 * rendering/RenderBox.cpp:
8310 (WebCore::RenderBox::calcReplacedWidth):
8311 * rendering/RenderBox.h:
8312 * rendering/RenderImage.cpp:
8313 (WebCore::RenderImage::calcReplacedWidth):
8314 (WebCore::RenderImage::calcPrefWidths):
8315 * rendering/RenderImage.h:
8316 * rendering/RenderReplaced.cpp:
8317 (WebCore::RenderReplaced::calcPrefWidths):
8318 * rendering/RenderSVGRoot.cpp:
8319 (WebCore::RenderSVGRoot::calcPrefWidths):
8320 * rendering/RenderVideo.cpp:
8321 (WebCore::RenderVideo::calcReplacedWidth):
8322 (WebCore::RenderVideo::calcPrefWidths):
8323 * rendering/RenderVideo.h:
8324
mrowe@apple.comced88732008-08-18 22:47:28 +000083252008-08-18 Daniel Macks <dmacks@netspace.org>
8326
8327 Reviewed by Mark Rowe.
8328
8329 https://bugs.webkit.org/show_bug.cgi?id=20410
8330 More portable/self-documenting replacement for SIZE_MAX.
8331
8332 * platform/network/curl/FormDataStreamCurl.cpp:
8333 (WebCore::FormDataStream::read):
8334
83352008-08-18 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com6040db32008-08-18 22:11:10 +00008336
8337 Reviewed by Dave Hyatt
8338
8339 Need to make sure we have an Animation in the AnimationList
8340 before setting the initial value.
8341 https://bugs.webkit.org/show_bug.cgi?id=20408
8342
8343 Test: fast/css/transition_shorthand_parsing.html
8344
8345 * css/CSSStyleSelector.cpp:
8346
kmccullough@apple.com64cb2fd2008-08-18 19:55:35 +000083472008-08-18 Kevin McCullough <kmccullough@apple.com>
8348
kmccullough@apple.com707bd362008-08-18 20:21:57 +00008349 Reviewed by Tim.
8350
8351 <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
8352 is another profile.
8353
8354 * page/inspector/ProfilesPanel.js:
8355
83562008-08-18 Kevin McCullough <kmccullough@apple.com>
8357
kmccullough@apple.com64cb2fd2008-08-18 19:55:35 +00008358 Reviewed by Geoff.
8359
8360 <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
8361 all console messages
8362
8363 * page/inspector/Console.js:
8364
jmalonzo@webkit.org5d1e0482008-08-18 11:20:11 +000083652008-08-18 Dirk Schulze <vbs85@gmx.de>
8366
8367 Reviewed by Eric Seidel.
8368
8369 Fixed Canvas for Cairo. Stroke and fill colors didn't work after
8370 the canvas clean up.
8371
8372 https://bugs.webkit.org/show_bug.cgi?id=20405
8373
8374 * html/CanvasRenderingContext2D.cpp:
8375 (WebCore::CanvasRenderingContext2D::fill):
8376 (WebCore::CanvasRenderingContext2D::stroke):
8377 (WebCore::CanvasRenderingContext2D::fillRect):
8378
timothy@apple.comc5e1f8d2008-08-18 03:21:46 +000083792008-08-17 Timothy Hatcher <timothy@apple.com>
8380
8381 Complete in scope variables in the Console when paused.
8382
8383 https://bugs.webkit.org/show_bug.cgi?id=19115
8384
8385 Reviewed by Geoffrey Garen.
8386
8387 * page/inspector/Console.js:
8388 (WebInspector.Console.prototype.completions): If the expressionString
8389 is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
8390 to get an object that declares all the in scope variables. That way
8391 "top level" expressions are completed.
8392 * page/inspector/ScriptsPanel.js:
8393 (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
8394 Return an object that has all the variables that are in scope for the
8395 selected call frame. The value of each property is just true.
8396 The return object is useful for quick lookups or auto completion.
8397
cwzwarich@webkit.orgac715282008-08-17 21:34:46 +000083982008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
8399
8400 Not reviewed.
8401
8402 Speculative Qt build fix.
8403
8404 * bridge/qt/qt_runtime.cpp:
8405 (KJS::Bindings::convertValueToQVariant):
8406 (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
8407
ggaren@apple.comfea43532008-08-17 20:23:49 +000084082008-08-17 Geoffrey Garen <ggaren@apple.com>
8409
8410 Reviewed by Cameron Zwarich.
ggaren@apple.com6e53d0a2008-08-17 20:28:37 +00008411
8412 Updated project files to XCode 3.1.
8413
8414 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
8415
84162008-08-17 Geoffrey Garen <ggaren@apple.com>
8417
8418 Reviewed by Cameron Zwarich.
ggaren@apple.comfea43532008-08-17 20:23:49 +00008419
8420 Made room for a free word in JSCell.
8421
8422 Changed JSDOMWindowBase to store its auxiliary data in a subclass of
8423 JSGlobalData, so the two could share a pointer.
8424
8425 Added a bunch of ASSERTs, to help catch over-sized objects.
8426
mrowe@apple.com13570292008-08-16 06:48:10 +000084272008-08-15 Mark Rowe <mrowe@apple.com>
8428
mitz@apple.comb96c1b92008-08-17 03:28:52 +00008429 Reviewed by Dan Bernstein.
8430
8431 Disable dead code stripping in debug builds.
8432
8433 * Configurations/Base.xcconfig:
8434 * WebCore.xcodeproj/project.pbxproj:
8435
84362008-08-15 Mark Rowe <mrowe@apple.com>
8437
mrowe@apple.com13570292008-08-16 06:48:10 +00008438 Rubber-stamped by Geoff Garen.
8439
8440 <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
8441
8442 * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
8443 between the Debug configuration and debug Production variant.
8444 * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
8445
antti@apple.coma05e8b02008-08-15 22:58:06 +000084462008-08-15 Antti Koivisto <antti@apple.com>
8447
8448 Reviewed by Anders.
8449
8450 Don't start preloading body resources before the head is complete. This prevents
8451 body preloads from slowing down initial display when there is limited amount
8452 of bandwidth available.
8453
8454 Works by queuing up found body preloads to DocLoader and only issuing them
8455 after document has rendering.
8456
8457 With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
8458 without affecting complete load time.
8459
8460 * html/PreloadScanner.cpp:
8461 (WebCore::PreloadScanner::PreloadScanner):
8462 (WebCore::PreloadScanner::scanningBody):
8463 (WebCore::PreloadScanner::emitTag):
8464 (WebCore::PreloadScanner::emitCSSRule):
8465 * html/PreloadScanner.h:
8466 * loader/DocLoader.cpp:
8467 (WebCore::DocLoader::preload):
8468 (WebCore::DocLoader::checkForPendingPreloads):
8469 (WebCore::DocLoader::requestPreload):
8470 * loader/DocLoader.h:
8471 * loader/loader.cpp:
8472 (WebCore::Loader::Host::didFinishLoading):
8473 (WebCore::Loader::Host::didFail):
8474
adachan@apple.com94ac38d2008-08-15 21:08:40 +000084752008-08-15 Ada Chan <adachan@apple.com>
8476
8477 Use item's computed style if the render style is 0 before falling back to the <select>'s style.
8478 This way style set on an <hr> within a <select> will be honored.
8479
8480 Reviewed by Dave Hyatt and Dan Bernstein.
8481
8482 * rendering/RenderMenuList.cpp:
8483 (WebCore::RenderMenuList::itemStyle):
8484
antti@apple.com9f7911472008-08-15 20:48:06 +000084852008-08-15 Antti Koivisto <antti@apple.com>
8486
8487 Reviewed by Oliver.
8488
8489 Some loader performance tweaks:
8490 - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
8491 Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue
8492 to not delay rendering.
8493 - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
8494 can take long time when latency is high so it is good to get started early.
8495 - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
8496 load queues. Issue remaining loads to the network layer.
8497
8498 * loader/loader.cpp:
8499 (WebCore::Loader::determinePriority):
8500 (WebCore::Loader::load):
8501 (WebCore::Loader::Host::servePendingRequests):
8502 * loader/loader.h:
8503
timothy@apple.com2d974c32008-08-15 18:35:39 +000085042008-08-15 Timothy Hatcher <timothy@apple.com>
8505
8506 Detach the script debugger when the Web Inspector's window closes.
8507 This has always been the intended design, but never fully implemented.
8508
8509 https://bugs.webkit.org/show_bug.cgi?id=20402
8510
8511 Reviewed by Adam Roben.
8512
8513 * page/InspectorController.cpp:
8514 (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
8515 if the window is no longer visible.
8516
hausmann@webkit.orgbb4b9142008-08-15 18:11:34 +000085172008-08-15 HÃ¥vard Wall <hwall@trolltech.com>
8518
8519 Reviewed by Simon.
8520
hausmann@webkit.org58144a72008-08-15 18:12:08 +00008521 Fixes: compile with QT_NO_CONTEXTMENU
8522
8523 * platform/qt/PlatformMouseEventQt.cpp:
8524 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
8525 * platform/qt/PlatformScrollBarQt.cpp:
8526 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
8527 (WebCore::PlatformScrollbar::handleContextMenuEvent):
8528
85292008-08-15 HÃ¥vard Wall <hwall@trolltech.com>
8530
8531 Reviewed by Simon.
8532
hausmann@webkit.orgbb4b9142008-08-15 18:11:34 +00008533 Fixes: compile with QT_NO_WHEELEVENT
8534
8535 * platform/qt/WheelEventQt.cpp:
8536 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
8537
timothy@apple.com4889e612008-08-15 17:06:14 +000085382008-08-15 Keishi Hattori <casey.hattori@gmail.com>
8539
timothy@apple.comd64639c2008-08-15 17:48:36 +00008540 Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
8541
8542 https://bugs.webkit.org/show_bug.cgi?id=20210
8543
8544 Reviewed by Tim Hatcher.
8545
8546 * page/Console.cpp:
8547 (WebCore::Console::group):
8548 (WebCore::Console::groupEnd):
8549 * page/Console.h:
8550 (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
8551 * page/InspectorController.cpp:
8552 (WebCore::InspectorController::startGroup): Increments group level by
8553 one and adds console message with StartGroupMessaageLevel.
8554 (WebCore::InspectorController::endGroup): Decrements group level by one
8555 and adds console message with EndGroupMessaageLevel.
8556 * page/InspectorController.h:
8557 * page/inspector/Console.js:
8558 (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
8559 if the message is StartGroupMessaageLevel.
8560 (WebInspector.ConsoleMessage.prototype.toMessageElement):
8561 (WebInspector.ConsoleGroup.prototype.addMessage):
8562 * page/inspector/inspector.js:
8563
85642008-08-15 Keishi Hattori <casey.hattori@gmail.com>
8565
timothy@apple.com7310b6a2008-08-15 17:35:22 +00008566 Adds support for console.dir to the Inspector
8567
8568 https://bugs.webkit.org/show_bug.cgi?id=19155
8569
8570 Reviewed by Tim Hatcher.
8571
8572 * bindings/js/JSConsoleCustom.cpp:
8573 (WebCore::JSConsole::dir):
8574 * page/Console.cpp:
8575 (WebCore::Console::dir):
8576 * page/Console.h: Added ObjectMessageLevel.
8577 * page/Console.idl: Added console.dir.
8578 * page/inspector/Console.js:
8579 (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
8580 ObjectPropertiesSection if the MessageLevel is Object.
8581 * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
8582 used on primitive data types.
8583 * page/inspector/inspector.css:
8584
85852008-08-15 Keishi Hattori <casey.hattori@gmail.com>
8586
timothy@apple.com4889e612008-08-15 17:06:14 +00008587 Adds support for clear() in the Inspector console.
8588
8589 https://bugs.webkit.org/show_bug.cgi?id=19873
8590
8591 Reviewed by Tim Hatcher.
8592
8593 * page/inspector/Console.js:
8594
timothy@apple.com12c5b5d2008-08-15 17:02:44 +000085952008-08-15 Anthony Ricaud <rik24d@gmail.com>
8596
8597 Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
8598
8599 Platform distinction and modifier key matching adjusted
8600 by Daniel Jalkut <jalkut@red-sweater.com>
8601
8602 Bug 16313: text search (find) keybindings should work in the Web Inspector
8603 https://bugs.webkit.org/show_bug.cgi?id=16313
8604
8605 Reviewed by Tim Hatcher.
8606
8607 * page/inspector/inspector.js: Added a case for the F key
8608
timothy@apple.coma5ba4392008-08-15 16:50:26 +000086092008-08-15 Keishi Hattori <casey.hattori@gmail.com>
8610
8611 Fix for error when the string doesn't contain a webkit-profile link.
8612
8613 https://bugs.webkit.org/show_bug.cgi?id=20399
8614
8615 Reviewed by Tim Hatcher.
8616
8617 * page/inspector/inspector.js:
8618
timothy@apple.com895b2652008-08-15 16:33:27 +000086192008-08-15 Timothy Hatcher <timothy@apple.com>
8620
8621 Fixes two bugs where JavaScript could be executed from the page
8622 while the debugger is paused.
8623
8624 The first issue was JSLazyEventListener not checking the paused
8625 state before parsing the code.
8626
8627 The second issue was with the PageGroup version of
8628 JavaScriptDebugServer::setJavaScriptPaused always passing false
8629 to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
8630 and not the paused argument.
8631
8632 https://bugs.webkit.org/show_bug.cgi?id=20284
8633
8634 Reviewed by Adam Roben.
8635
8636 * bindings/js/JSEventListener.cpp:
8637 (WebCore::JSLazyEventListener::parseCode): Check the paused
8638 state of the ScriptController. Return early if paused.
8639 * manual-tests/inspector/debugger-execution-while-paused.html: Added.
8640 * page/JavaScriptDebugServer.cpp:
8641 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
8642 Pass the paused argument to the Page version of setJavaScriptPaused.
8643
ap@webkit.orgbe495d32008-08-15 07:43:48 +000086442008-08-15 Alexey Proskuryakov <ap@webkit.org>
8645
8646 Reviewed by Geoff Garen.
8647
8648 JSStringRef is created context-free, but can get linked to one via an identifier table,
8649 breaking an implicit API contract.
8650
8651 * page/InspectorController.cpp:
8652 (WebCore::jsStringRef):
8653 (WebCore::InspectorController::didParseSource):
8654 (WebCore::InspectorController::failedToParseSource):
8655 * page/JavaScriptProfile.cpp:
8656 (WebCore::getTitleCallback):
8657 Updated for JavaScriptCore changes.
8658
kevino@webkit.org8fe09ff2008-08-15 05:10:57 +000086592008-08-14 Kevin Ollivier <kevino@theolliviers.com>
8660
8661 wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
8662 an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
8663
8664 * platform/graphics/AffineTransform.h:
8665
adele@apple.com2b2e2f82008-08-15 00:53:36 +000086662008-08-14 Eric Carlson <eric.carlson@apple.com>
8667
8668 Reviewed by Adele.
8669
8670 Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
8671 <video> elements on Windows never becomes visible when a page is restored from the cache
8672
8673 Always pass "set" calls down to MediaPlayerPrivate instead of only when the
8674 value is different from the cached value. Let the implementation decide when
8675 to avoid work because nothing has changed.
8676
8677 * platform/graphics/MediaPlayer.cpp:
8678 (WebCore::MediaPlayer::setVolume):
8679 (WebCore::MediaPlayer::setRate):
8680 (WebCore::MediaPlayer::setRect):
8681 (WebCore::MediaPlayer::setVisible):
8682
timothy@apple.comda810f42008-08-14 23:57:14 +000086832008-08-14 Keishi Hattori <casey.hattori@gmail.com>
8684
8685 Make Firebug command line API respect predefined variables.
8686
timothy@apple.com90751f02008-08-14 23:58:19 +00008687 https://bugs.webkit.org/show_bug.cgi?id=20385
8688
timothy@apple.comda810f42008-08-14 23:57:14 +00008689 Reviewed by Tim Hatcher.
8690
8691 * page/inspector/Console.js:
8692
weinig@apple.com4b51d002008-08-14 23:33:22 +000086932008-08-14 Sam Weinig <sam@webkit.org>
8694
8695 Reviewed by Geoffrey Garen and Timothy Hatcher.
8696
8697 Allow programatically setting the HTMLTokenizers time delay and chunk size
8698 which are used for determining how aggressively we yield.
8699
8700 * WebCore.base.exp:
8701 * html/HTMLTokenizer.cpp:
8702 (WebCore::HTMLTokenizer::begin):
8703 (WebCore::HTMLTokenizer::continueProcessing):
8704 * html/HTMLTokenizer.h:
8705 * page/Page.cpp:
8706 (WebCore::Page::Page):
8707 (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
8708 (WebCore::Page::setCustomHTMLTokenizerChunkSize):
8709 * page/Page.h:
8710 (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
8711 (WebCore::Page::customHTMLTokenizerTimeDelay):
8712 (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
8713 (WebCore::Page::customHTMLTokenizerChunkSize):
8714
eric@webkit.org89613d22008-08-14 23:19:17 +000087152008-08-14 Eric Seidel <eric@webkit.org>
8716
eric@webkit.org7e897c32008-08-14 23:20:00 +00008717 Reviewed by Beth.
8718
8719 Move us one step closer to cross-platform svg/graphics code
8720
8721 * WebCore.xcodeproj/project.pbxproj:
8722 * html/CanvasStyle.cpp:
8723 * platform/graphics/Color.cpp:
8724 (WebCore::colorWithOverrideAlpha):
8725 * platform/graphics/Color.h:
8726 * svg/graphics/cg/CgSupport.cpp:
8727 (WebCore::applyStrokeStyleToContext):
8728 (WebCore::strokeBoundingBox):
8729 * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
8730 (WebCore::SVGPaintServerSolid::setup):
8731
87322008-08-14 Eric Seidel <eric@webkit.org>
8733
eric@webkit.org4f490652008-08-14 23:19:31 +00008734 Reviewed by Alexey.
8735
eric@webkit.org73fa9d12008-08-14 23:19:44 +00008736 Remove un-need includes from HTMLCanvas and use the
8737 Gradient platform abstraction in one place in CanvasStyle
8738
8739 * html/CanvasRenderingContext2D.cpp:
8740 (WebCore::CanvasRenderingContext2D::fillRect):
8741 * html/CanvasStyle.cpp:
8742 * html/HTMLCanvasElement.cpp:
8743
87442008-08-14 Eric Seidel <eric@webkit.org>
8745
8746 Reviewed by Alexey.
8747
eric@webkit.org4f490652008-08-14 23:19:31 +00008748 Clean up GlyphBuffer.h, removing more #ifdefs
8749
8750 * platform/graphics/GlyphBuffer.h:
8751 (WebCore::GlyphBuffer::glyphAt):
8752 (WebCore::GlyphBuffer::advanceAt):
8753 (WebCore::GlyphBuffer::add):
8754
87552008-08-14 Eric Seidel <eric@webkit.org>
8756
eric@webkit.org89613d22008-08-14 23:19:17 +00008757 Reviewed by Sam.
8758
8759 Clean up AffineTransform.h, removing #ifdefs
8760
8761 * platform/graphics/AffineTransform.h:
8762 * platform/graphics/cairo/AffineTransformCairo.cpp:
8763 * platform/graphics/cg/AffineTransformCG.cpp:
8764 * platform/graphics/qt/AffineTransformQt.cpp:
8765 * platform/graphics/wx/AffineTransformWx.cpp:
8766
mitz@apple.com551d6252008-08-14 23:08:09 +000087672008-08-14 Dan Bernstein <mitz@apple.com>
8768
mitz@apple.com94c1a7d2008-08-14 23:12:34 +00008769 - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
8770
8771 * platform/graphics/cairo/ImageSourceCairo.cpp:
8772 (WebCore::ImageSource::frameSizeAtIndex):
8773 * platform/graphics/qt/ImageSourceQt.cpp:
8774 (WebCore::ImageSource::frameSizeAtIndex):
8775 * platform/graphics/wx/ImageSourceWx.cpp:
8776 (WebCore::ImageSource::frameSizeAtIndex):
8777
87782008-08-14 Dan Bernstein <mitz@apple.com>
8779
mitz@apple.com551d6252008-08-14 23:08:09 +00008780 Reviewed by Brady Eidson.
8781
8782 - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
8783
8784 * platform/graphics/BitmapImage.cpp:
8785 (WebCore::BitmapImage::BitmapImage): Added initialization of
8786 m_hasUniformFrameSize.
8787 (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
8788 cached frame for use in decoded size computation and for setting
8789 m_hasUniformFrameSize.
8790 (WebCore::BitmapImage::currentFrameSize): Added.
8791 (WebCore::BitmapImage::dataChanged): Added code to reset
8792 m_hasUniformFrameSize.
8793 * platform/graphics/BitmapImage.h: Added currentFrameSize() and
8794 m_hasUniformFrameSize.
8795 * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
8796 * platform/graphics/cg/ImageCG.cpp:
8797 (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
8798 fixes the bug, which resulted from assuming that the frame being drawn
8799 was the same size as the first frame.
8800 * platform/graphics/cg/ImageSourceCG.cpp:
8801 (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
8802 changed to get the size of the frame at the given index.
8803 (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
8804
simon.fraser@apple.com50954e52008-08-14 23:04:41 +000088052008-08-13 Simon Fraser <simon.fraser@apple.com>
8806
8807 Reviewed by Eric Seidel
8808
8809 Fix @font-face inside @media rule crash.
8810 https://bugs.webkit.org/show_bug.cgi?id=20367
8811
8812 Test: fast/css/font-face-in-media-rule.html
8813
8814 * css/CSSStyleSelector.cpp:
8815 (WebCore::CSSRuleSet::addRulesFromSheet):
8816
kevino@webkit.org141c4602008-08-14 22:52:55 +000088172008-08-14 Kevin Ollivier <kevino@theolliviers.com>
8818
8819 wx build fixes after recent changes to Canvas and Image classes.
8820
8821 * platform/graphics/Pattern.h:
8822 * platform/graphics/wx/GradientWx.cpp:
8823 (WebCore::Gradient::fill):
8824 * platform/graphics/wx/GraphicsContextWx.cpp:
8825 (WebCore::GraphicsContext::applyFillPattern):
8826 (WebCore::GraphicsContext::applyStrokePattern):
8827 * platform/graphics/wx/ImageBufferWx.cpp:
8828 (WebCore::ImageBuffer::image):
8829 * platform/graphics/wx/ImageWx.cpp:
8830 (WebCore::Image::loadPlatformResource):
8831
britto@apple.comd7008662008-08-14 19:26:02 +000088322008-08-14 Maxime Britto <britto@apple.com>
8833
8834 Reviewed by Sam Weinig.
8835
8836 rdar://6102511
8837 When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
8838 IE and FF are both preventing the keyboard event to interact with the page while scrolling.
8839 Some differences exist between them concerning the kind of key which is pressed :
8840 IE7 : every key leads to a stop of the panning
8841 FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
8842 For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
8843
8844 * page/EventHandler.cpp:
8845 (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
8846
christian@webkit.org0e20f322008-08-14 19:14:47 +000088472008-08-14 Christian Dywan <christian@twotoasts.de>
8848
8849 Gtk+/ Cairo build fix, patch by Dirk Schulze.
8850
8851 * html/CanvasStyle.cpp:
8852 * platform/graphics/cairo/PatternCairo.cpp:
8853 (WebCore::Pattern::createPlatformPattern):
8854 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
8855
kmccullough@apple.comd2b50f12008-08-14 18:11:20 +000088562008-08-14 Kevin McCullough <kmccullough@apple.com>
8857
8858 Reviewed by Tim.
8859
8860 <rdar://problem/6115819> Notify of profile in console
8861
8862 * page/InspectorController.cpp:
8863 (WebCore::InspectorController::addProfile):
8864 (WebCore::InspectorController::addProfileMessageToConsole): Called by
8865 addProfile this is the function that adds a message to the console that
8866 a profile finished.
8867 * page/InspectorController.h:
8868 * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
8869 the console log to the profile in the web inspector.
8870 (WebCore::getUniqueIdCallback):
8871 (WebCore::ProfileClass):
8872 * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
8873 Id to bring up the requested profile. Also select and reveal the
8874 profile in the profile panel. And created displayTitleForProfileLink()
8875 which formats a title taking into account if it's user initiated or if
8876 there are multiples. Lasty, I put the user initiated profile in a
8877 variable.
8878 * page/inspector/inspector.js: Make the profile title be a clickable
8879 link that will take the user to the identified profile. Also expose
8880 the count of user initiated profiles so they can be displayed in the
8881 console with the correct count.
8882
timothy@apple.comcd7f0f32008-08-14 17:41:05 +000088832008-08-14 Timothy Hatcher <timothy@apple.com>
8884
8885 Avoid formating ConsoleMessages twice unless the message will be
8886 displayed in bubbles of a SourceFrame.
8887
8888 Reviewed by Kevin McCullough.
8889
8890 * page/inspector/Console.js:
8891 (WebInspector.ConsoleMessage): Only format the plain text message
8892 if the URL and line are valid and the level is error or warning.
8893 (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
8894 Helper to test for error or warning level.
8895 * page/inspector/SourceFrame.js:
8896 (WebInspector.SourceFrame.prototype.addMessage): Don't add the
8897 message if there is no message or valid line or if the msg
8898 isn't an error or warning.
8899
jmalonzo@webkit.orgb469bb72008-08-14 15:07:41 +000089002008-08-14 Jan Michael Alonzo <jmalonzo@webkit.org>
8901
8902 partial Gtk build fix, not reviewed
8903
8904 * platform/graphics/cairo/PatternCairo.cpp:
8905
weinig@apple.com45e83142008-08-14 04:49:30 +000089062008-08-13 Sam Weinig <sam@webkit.org>
8907
8908 Reviewed by Anders Carlson.
8909
8910 Fix style issue.
8911
8912 * html/HTMLMediaElement.cpp:
8913 (WebCore::HTMLMediaElement::pickMedia):
8914
zimmermann@webkit.org9ae47e92008-08-14 02:22:35 +000089152008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
8916
zimmermann@webkit.org7a2f53d2008-08-14 03:06:01 +00008917 Build fix for Cairo, not reviewed. (exposed by gtk build slave)
8918 Continue Erics build fixes, after the Image cleanup.
8919
8920 * platform/graphics/cairo/ImageBufferCairo.cpp:
8921 (WebCore::ImageBuffer::image):
8922
89232008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
8924
zimmermann@webkit.org1ef52132008-08-14 02:38:16 +00008925 Build fix for Qt, not reviewed.
8926 Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
8927
8928 * dom/XMLTokenizer.cpp:
8929 (WebCore::eventuallyMarkAsParserCreated): Was erre
8930
89312008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
8932
zimmermann@webkit.org3e560562008-08-14 02:26:00 +00008933 Build fix, not reviewed.
8934 Add ScriptElement.cpp to Gtk build.
8935
8936 * GNUmakefile.am:
8937
89382008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
8939
zimmermann@webkit.org9ae47e92008-08-14 02:22:35 +00008940 Reviewed by Eric.
8941
8942 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
8943
8944 Refactor HTMLScriptElement's code into a common base class: ScriptElement.
8945 SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
8946
8947 This resolves code duplications and allows us to completly replace the old
8948 SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
8949
8950 As ScriptElement, doesn't actually inherit from Element, we may want to rename
8951 it, though StyleElement uses the same naming convention, so I left it as is for now.
8952 Eventually we'll rename both files in future.
8953
8954 No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
8955
8956 * WebCore.pro: Add new ScriptElement.cpp to build.
8957 * WebCore.vcproj/WebCore.vcproj: Ditto.
8958 * WebCore.xcodeproj/project.pbxproj: Ditto.
8959 * WebCoreSources.bkl: Dutto.
8960 * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
8961 (WebCore::ScriptElement::insertedIntoDocument):
8962 (WebCore::ScriptElement::removedFromDocument):
8963 (WebCore::ScriptElement::childrenChanged):
8964 (WebCore::ScriptElement::finishParsingChildren):
8965 (WebCore::ScriptElement::handleSourceAttribute):
8966 (WebCore::isSupportedJavaScriptLanguage):
8967 (WebCore::ScriptElementData::ScriptElementData):
8968 (WebCore::ScriptElementData::~ScriptElementData):
8969 (WebCore::ScriptElementData::requestScript):
8970 (WebCore::ScriptElementData::evaluateScript):
8971 (WebCore::ScriptElementData::stopLoadRequest):
8972 (WebCore::ScriptElementData::notifyFinished):
8973 (WebCore::ScriptElementData::ignoresLoadRequest):
8974 (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
8975 (WebCore::ScriptElementData::scriptCharset):
8976 (WebCore::ScriptElementData::scriptContent):
8977 * dom/ScriptElement.h: Added.
8978 (WebCore::ScriptElement::ScriptElement):
8979 (WebCore::ScriptElement::~ScriptElement):
8980 (WebCore::ScriptElementData::element):
8981 (WebCore::ScriptElementData::createdByParser):
8982 (WebCore::ScriptElementData::setCreatedByParser):
8983 * dom/XMLTokenizer.cpp:
8984 (WebCore::isScriptElement):
8985 (WebCore::castToScriptElement):
8986 (WebCore::eventuallyMarkAsParserCreated):
8987 (WebCore::XMLTokenizer::startElementNs):
8988 (WebCore::XMLTokenizer::endElementNs):
8989 (WebCore::createXHTMLParserErrorHeader):
8990 (WebCore::XMLTokenizer::insertErrorMessageBlock):
8991 * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
8992 (WebCore::HTMLScriptElement::HTMLScriptElement):
8993 (WebCore::HTMLScriptElement::~HTMLScriptElement):
8994 (WebCore::HTMLScriptElement::isURLAttribute):
8995 (WebCore::HTMLScriptElement::setCreatedByParser):
8996 (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
8997 (WebCore::HTMLScriptElement::childrenChanged):
8998 (WebCore::HTMLScriptElement::parseMappedAttribute):
8999 (WebCore::HTMLScriptElement::finishParsingChildren):
9000 (WebCore::HTMLScriptElement::insertedIntoDocument):
9001 (WebCore::HTMLScriptElement::removedFromDocument):
9002 (WebCore::HTMLScriptElement::text):
9003 (WebCore::HTMLScriptElement::setText):
9004 (WebCore::HTMLScriptElement::setHtmlFor):
9005 (WebCore::HTMLScriptElement::setEvent):
9006 (WebCore::HTMLScriptElement::charset):
9007 (WebCore::HTMLScriptElement::src):
9008 (WebCore::HTMLScriptElement::type):
9009 (WebCore::HTMLScriptElement::scriptCharset):
9010 (WebCore::HTMLScriptElement::scriptContent):
9011 (WebCore::HTMLScriptElement::sourceAttributeValue):
9012 (WebCore::HTMLScriptElement::charsetAttributeValue):
9013 (WebCore::HTMLScriptElement::typeAttributeValue):
9014 (WebCore::HTMLScriptElement::languageAttributeValue):
9015 (WebCore::HTMLScriptElement::dispatchLoadEvent):
9016 (WebCore::HTMLScriptElement::dispatchErrorEvent):
9017 * html/HTMLScriptElement.h:
9018 * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
9019 * svg/SVGScriptElement.cpp:
9020 (WebCore::SVGScriptElement::SVGScriptElement):
9021 (WebCore::SVGScriptElement::scriptContent):
9022 (WebCore::SVGScriptElement::sourceAttributeValue):
9023 (WebCore::SVGScriptElement::charsetAttributeValue):
9024 (WebCore::SVGScriptElement::typeAttributeValue):
9025 (WebCore::SVGScriptElement::languageAttributeValue):
9026 (WebCore::SVGScriptElement::dispatchLoadEvent):
9027 (WebCore::SVGScriptElement::dispatchErrorEvent):
9028 * svg/SVGScriptElement.h:
9029 (WebCore::SVGScriptElement::setCreatedByParser):
9030
eric@webkit.org7811ef02008-08-14 00:28:51 +000090312008-08-13 Eric Seidel <eric@webkit.org>
9032
eric@webkit.org3562c592008-08-14 02:17:29 +00009033 Attempt to fix the Gtk build, no review.
9034
9035 I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
9036
9037 * platform/graphics/GraphicsContext.h:
9038 * platform/graphics/cairo/GraphicsContextCairo.cpp:
9039 * platform/graphics/qt/GradientQt.cpp:
9040 * platform/graphics/qt/GraphicsContextQt.cpp:
9041 * platform/gtk/RenderThemeGtk.cpp:
9042 (WebCore::paintMozWidget):
9043
90442008-08-13 Eric Seidel <eric@webkit.org>
9045
eric@webkit.org2ec42072008-08-14 02:03:09 +00009046 Yet another attempt to fix the Qt build, no review.
9047
9048 * platform/graphics/qt/GradientQt.cpp:
9049 * platform/graphics/qt/GraphicsContextQt.cpp:
9050 (WebCore::GraphicsContext::applyStrokePattern):
9051 (WebCore::GraphicsContext::applyFillPattern):
9052
90532008-08-13 Eric Seidel <eric@webkit.org>
9054
9055 Attempt to fix the Windows build, no review.
9056
9057 * platform/win/CursorWin.cpp:
9058 (WebCore::loadCursorByName):
9059 * platform/win/ScrollViewWin.cpp:
9060 (WebCore::ScrollView::paint):
9061
90622008-08-13 Eric Seidel <eric@webkit.org>
9063
eric@webkit.org508c0282008-08-14 01:29:34 +00009064 Attempt to fix the Windows build, no review.
9065
9066 * platform/win/CursorWin.cpp:
9067 (WebCore::loadCursorByName):
9068 * platform/win/ScrollViewWin.cpp:
9069 (WebCore::ScrollView::paint):
9070
90712008-08-13 Eric Seidel <eric@webkit.org>
9072
eric@webkit.org1bf70ab2008-08-14 01:24:15 +00009073 Attempt to fix the Qt build, no review.
9074
9075 * platform/graphics/qt/ImageBufferQt.cpp:
9076 (WebCore::ImageBuffer::image):
9077
90782008-08-13 Eric Seidel <eric@webkit.org>
9079
eric@webkit.orgf2d7c212008-08-14 01:21:34 +00009080 Attempt to fix the Windows build, no review.
9081
9082 * platform/graphics/win/ImageWin.cpp:
9083 (WebCore::Image::loadPlatformResource):
9084 * plugins/win/PluginViewWin.cpp:
9085 (WebCore::PluginView::paintMissingPluginIcon):
9086
90872008-08-13 Eric Seidel <eric@webkit.org>
9088
eric@webkit.orgac3f6662008-08-14 01:15:50 +00009089 Another attempt to fix the Qt build, no review.
9090
9091 * platform/graphics/qt/ImageQt.cpp:
9092 * platform/graphics/qt/StillImageQt.h:
9093
90942008-08-13 Eric Seidel <eric@webkit.org>
9095
eric@webkit.org31e0d812008-08-14 01:05:42 +00009096 No review, build fix only.
9097
9098 Fix mac build, due to change in new code since my patch was written.
9099
9100 * svg/graphics/cg/SVGResourceMaskerCg.mm:
9101 (WebCore::SVGResourceMasker::applyMask):
9102
91032008-08-13 Eric Seidel <eric@webkit.org>
9104
eric@webkit.orga20a0032008-08-14 00:42:54 +00009105 Build fix only, no review.
9106
9107 Attempt to fix the Qt build.
9108
eric@webkit.org923255c2008-08-14 00:59:20 +00009109 * platform/graphics/qt/ImageBufferQt.cpp:
9110 * platform/graphics/qt/StillImageQt.h:
9111 (WebCore::StillImage::create):
9112 (WebCore::StillImage::destroyDecodedData):
9113 (WebCore::StillImage::decodedSize):
9114
91152008-08-13 Eric Seidel <eric@webkit.org>
9116
9117 Build fix only, no review.
9118
9119 Attempt to fix the Qt build.
9120
eric@webkit.orga20a0032008-08-14 00:42:54 +00009121 * html/CanvasStyle.cpp:
9122 (WebCore::CanvasStyle::applyStrokeColor):
9123 (WebCore::CanvasStyle::applyFillColor):
9124
91252008-08-13 Eric Seidel <eric@webkit.org>
9126
eric@webkit.org4aca3be2008-08-14 00:30:04 +00009127 Reviewed by Sam.
9128
9129 Match HTML5 spec by throwing INVALID_STATE_ERR when
9130 createPattern is called and the HTMLImageElement is not
9131 yet done loading the image (!isComplete)
9132 https://bugs.webkit.org/show_bug.cgi?id=20351
9133
9134 Test: http/misc/canvas-pattern-from-incremental-image.html
9135
9136 * html/CanvasRenderingContext2D.cpp:
9137 (WebCore::CanvasRenderingContext2D::createPattern):
9138
91392008-08-13 Eric Seidel <eric@webkit.org>
9140
eric@webkit.org5b265602008-08-14 00:29:26 +00009141 Reviewed by Niko.
9142
eric@webkit.orgf0124f62008-08-14 00:29:50 +00009143 Split out a Pattern class from CanvasPattern
9144 and remove all the Pattern-related #ifdefs
9145 (This will break non-mac platforms! I will fix them.)
9146 https://bugs.webkit.org/show_bug.cgi?id=20351
9147
9148 * GNUmakefile.am:
9149 * WebCore.pro:
9150 * WebCore.vcproj/WebCore.vcproj:
9151 * WebCore.xcodeproj/project.pbxproj:
9152 * WebCoreSources.bkl:
9153 * html/CanvasPattern.cpp:
9154 (WebCore::CanvasPattern::parseRepetitionType):
9155 (WebCore::CanvasPattern::CanvasPattern):
9156 * html/CanvasPattern.h:
9157 (WebCore::CanvasPattern::create):
9158 (WebCore::CanvasPattern::pattern):
9159 (WebCore::CanvasPattern::originClean):
9160 * html/CanvasRenderingContext2D.cpp:
9161 (WebCore::CanvasRenderingContext2D::createPattern):
9162 (WebCore::CanvasRenderingContext2D::applyStrokePattern):
9163 (WebCore::CanvasRenderingContext2D::applyFillPattern):
9164 * html/CanvasRenderingContext2D.h:
9165 * html/HTMLCanvasElement.cpp:
9166 * html/HTMLCanvasElement.h:
9167 * loader/FrameLoader.cpp:
9168 (WebCore::FrameLoader::createHistoryItem):
9169 * platform/graphics/GraphicsContext.h:
9170 * platform/graphics/cairo/GraphicsContextCairo.cpp:
9171 (WebCore::GraphicsContext::applyStrokePattern):
9172 (WebCore::GraphicsContext::applyFillPattern):
9173 * platform/graphics/cg/GraphicsContextCG.cpp:
9174 (WebCore::GraphicsContext::clipToImageBuffer):
9175 (WebCore::GraphicsContext::applyStrokePattern):
9176 (WebCore::GraphicsContext::applyFillPattern):
9177
91782008-08-13 Eric Seidel <eric@webkit.org>
9179
9180 Reviewed by Niko.
9181
eric@webkit.org5b265602008-08-14 00:29:26 +00009182 Make Images RefCounted (and clean up callers)
9183 https://bugs.webkit.org/show_bug.cgi?id=20351
9184
9185 * editing/DeleteButtonController.cpp:
9186 (WebCore::DeleteButtonController::createDeletionUI):
9187 * loader/CachedImage.cpp:
9188 (WebCore::CachedImage::CachedImage):
9189 (WebCore::brokenImage):
9190 (WebCore::nullImage):
9191 (WebCore::CachedImage::image):
9192 (WebCore::CachedImage::notifyObservers):
9193 (WebCore::CachedImage::createImage):
9194 * loader/CachedImage.h:
9195 * loader/icon/IconRecord.cpp:
9196 (WebCore::IconRecord::setImageData):
9197 (WebCore::IconRecord::loadImageFromResource):
9198 * loader/icon/IconRecord.h:
9199 * platform/graphics/BitmapImage.h:
9200 (WebCore::BitmapImage::create):
9201 * platform/graphics/GeneratedImage.h:
9202 * platform/graphics/Gradient.cpp:
9203 * platform/graphics/Gradient.h:
9204 * platform/graphics/Image.cpp:
9205 (WebCore::Image::nullImage):
9206 * platform/graphics/Image.h:
9207 * platform/graphics/ImageBuffer.h:
9208 * platform/graphics/cairo/ImageBufferCairo.cpp:
9209 (WebCore::ImageBuffer::image):
9210 * platform/graphics/cg/ImageBufferCG.cpp:
9211 (WebCore::ImageBuffer::image):
9212 (WebCore::ImageBuffer::getImageData):
9213 (WebCore::ImageBuffer::putImageData):
9214 * platform/graphics/cg/PDFDocumentImage.h:
9215 (WebCore::PDFDocumentImage::create):
9216 (WebCore::PDFDocumentImage::destroyDecodedData):
9217 (WebCore::PDFDocumentImage::decodedSize):
9218 * platform/graphics/gtk/ImageGtk.cpp:
9219 (WebCore::Image::loadPlatformResource):
9220 * platform/graphics/mac/ImageMac.mm:
9221 (WebCore::Image::loadPlatformResource):
9222 * rendering/RenderImage.cpp:
9223 * rendering/RenderLayer.cpp:
9224 (WebCore::RenderLayer::paintOverflowControls):
9225 * svg/graphics/SVGImage.cpp:
9226 (WebCore::SVGImage::nativeImageForCurrentFrame):
9227 * svg/graphics/SVGImage.h:
9228 (WebCore::SVGImage::create):
9229 (WebCore::SVGImage::destroyDecodedData):
9230 (WebCore::SVGImage::decodedSize):
9231 (WebCore::SVGImage::frameAtIndex):
9232 * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
9233 (WebCore::SVGPaintServerPattern::setup):
9234 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
9235 (WebCore::SVGResourceMasker::applyMask):
9236 * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
9237 (WebCore::patternCallback):
9238 * svg/graphics/cg/SVGResourceMaskerCg.mm:
9239 (WebCore::SVGResourceMasker::applyMask):
9240
92412008-08-13 Eric Seidel <eric@webkit.org>
9242
9243 Reviewed by Niko.
eric@webkit.org7811ef02008-08-14 00:28:51 +00009244
9245 Remove #ifdefs from CanvasStyle by using platform/Color.h
eric@webkit.org5b265602008-08-14 00:29:26 +00009246 https://bugs.webkit.org/show_bug.cgi?id=20351
eric@webkit.org7811ef02008-08-14 00:28:51 +00009247
9248 There are some down-sides to this commit.
9249 This commit limits us to 255 levels of grey for calls like:
9250 context.setStrokeStyle(.37, 1.0)
9251 previously CG might have used up to 32bits to store the grey level
9252 Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
9253
9254 Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
9255 to RGBA32 (like all the rest of colors in WebCore), thus:
9256 context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
9257 context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
9258
9259 If this is a problem for Dashboard, we can either roll out this commit
9260 or add a beefier Color abstraction, which can be used internally by GraphicsContext
9261 when keeping state, and then GraphicsContext can grow some additional set* routines
9262 for setting the a grey/float/whatever fill and stroke.
9263
9264 * html/CanvasRenderingContext2D.cpp:
9265 (WebCore::CanvasRenderingContext2D::setFillStyle):
9266 * html/CanvasStyle.cpp:
9267 (WebCore::CanvasStyle::CanvasStyle):
9268 (WebCore::colorWithOverrideAlpha):
9269 (WebCore::CanvasStyle::applyStrokeColor):
9270 (WebCore::CanvasStyle::applyFillColor):
9271 * html/CanvasStyle.h:
9272 * platform/graphics/Color.cpp:
9273 (WebCore::colorFloatToRGBAByte):
9274 (WebCore::makeRGBA32FromFloats):
9275 * platform/graphics/Color.h:
9276
adele@apple.com83e44822008-08-13 23:50:41 +000092772008-08-13 Eric Carlson <eric.carlson@apple.com>
9278
9279 Reviewed by Adele Peterson.
9280
9281 Fix for <rdar://problem/6137931>
9282 https://bugs.webkit.org/show_bug.cgi?id=20360
9283 Remove all parameters from the MIME type before checking with the MIME type registry
9284
9285 Tests: media/video-source-type-params.html
9286
9287 * html/HTMLMediaElement.cpp:
9288 (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';'
9289 to isSupportedMediaMIMEType()
9290
bdakin@apple.com7bc81bf2008-08-13 21:36:15 +000092912008-08-13 Beth Dakin <bdakin@apple.com>
9292
9293 Reviewed by Sam Weinig.
9294
9295 Fix for <rdar://problem/6141345>
9296
9297 This patch refines findString and markAllMatchesForText functions'
9298 interactions with disconnected frames. They no longer rely on
9299 knowing where a range is relative to the visible region and work
9300 with disconnected frames that contain frames.
9301
9302 * editing/Editor.cpp:
9303 (WebCore::Editor::insideVisibleArea): Now returns a bool instead of
9304 the visiblity enum.
9305 (WebCore::Editor::firstVisibleRange): This now returns the very
9306 first visible range in the document. It's no longer dependent on
9307 searching forward.
9308 (WebCore::Editor::lastVisibleRange): This now returns the very last
9309 visible range in the document. It's no longer dependent on
9310 searching backwards.
9311 (WebCore::Editor::nextVisibleRange): This returns the next visible
9312 range in the appropriate direction from the current range.
9313 * editing/Editor.h:
9314 * page/Frame.cpp:
9315 (WebCore::Frame::findString):
9316 (WebCore::Frame::markAllMatchesForText):
9317
kevino@webkit.orgee5adc42008-08-13 20:07:16 +000093182008-08-13 Kevin Ollivier <kevino@theolliviers.com>
9319
9320 wx build fix for case-sensitive platforms, like Linux.
9321
9322 * WebCoreSources.bkl:
9323
jmalonzo@webkit.org210145b2008-08-13 19:56:20 +000093242008-08-13 Marco Barisione <marco.barisione@collabora.co.uk>
9325
9326 Reviewed by Holger Freyther.
9327
9328 http://bugs.webkit.org/show_bug.cgi?id=16881
9329 [GTK] PlatformScreenGtk is unimplemented
9330
9331 Original patch by Christian Dywan.
9332
9333 * platform/gtk/PlatformScreenGtk.cpp:
9334 (WebCore::screenDepth):
9335 (WebCore::screenDepthPerComponent):
9336 (WebCore::screenIsMonochrome):
9337 (WebCore::screenRect):
9338 (WebCore::screenAvailableRect):
9339
jmalonzo@webkit.orge4693932008-08-13 19:42:08 +000093402008-08-13 Jan Michael Alonzo <jmalonzo@webkit.org>
9341
9342 Reviewed by Holger Freyther.
9343
9344 http://bugs.webkit.org/show_bug.cgi?id=20318
9345 SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
9346
9347 g_idle_add is the same as g_idle_add_full with a priority of
9348 G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
9349
9350 * platform/gtk/SharedTimerGtk.cpp:
9351 (WebCore::setSharedTimerFireTime):
9352
timothy@apple.comf0426602008-08-13 18:11:01 +000093532008-08-13 Timothy Hatcher <timothy@apple.com>
9354
9355 Changed the InspectorController so it can be notified when the
9356 attached state of the Inspector changes in WebKit.
9357
9358 Reviewed by Kevin McCullough.
9359
9360 * WebCore.base.exp: Updated the symbol for setWindowVisible.
9361 * page/InspectorController.cpp:
9362 (WebCore::InspectorController::setWindowVisible): Added an attached argument,
9363 that defaults to false.Call setAttachedWindow with the attached argument.
9364 (WebCore::InspectorController::setAttachedWindow): Call the script version
9365 of setAttachedWindow.
9366 * page/InspectorController.h:
9367 * page/inspector/inspector.js:
9368 (WebInspector.setAttachedWindow): Set the attached property.
9369
timothy@apple.com9ea832b2008-08-13 18:10:36 +000093702008-08-12 Timothy Hatcher <timothy@apple.com>
9371
timothy@apple.com72c92ae2008-08-13 18:10:45 +00009372 Added a close button to the Inspector's toolbar when docked.
9373
9374 https://bugs.webkit.org/show_bug.cgi?id=14270
9375
9376 Reviewed by Kevin McCullough.
9377
9378 * page/InspectorController.cpp:
9379 (WebCore::closeWindow): Call InspectorController::closeWindow.
9380 (WebCore::InspectorController::windowScriptObjectAvailable):
9381 Added closeWindow to the script class.
9382 * page/InspectorController.h:
9383 * page/inspector/Images/closeButtons.png: Added.
9384 * page/inspector/inspector.css: Added and changed styles.
9385 * page/inspector/inspector.html: Added the close button.
9386 * page/inspector/inspector.js:
9387 (WebInspector.loaded): Added click event listener to the close button.
9388 (WebInspector.close): Call InspectorController.closeWindow.
9389
93902008-08-12 Timothy Hatcher <timothy@apple.com>
9391
timothy@apple.com9ea832b2008-08-13 18:10:36 +00009392 Make the docked Web Inspector resizable. This is the cross platform
9393 portion of the code. Each InspectorClient needs to implement the
9394 real resize code.
9395
9396 https://bugs.webkit.org/show_bug.cgi?id=14282
9397
9398 Reviewed by Kevin McCullough.
9399
9400 * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
9401 * page/InspectorClient.h: Added setAttachedWindowHeight.
9402 * page/InspectorController.cpp:
9403 (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
9404 on the InspectorController.
9405 (WebCore::InspectorController::setAttachedWindowHeight): Call
9406 setAttachedWindowHeight on the client.
9407 (WebCore::InspectorController::windowScriptObjectAvailable):
9408 Added setAttachedWindowHeight to the script class.
9409 * page/InspectorController.h:
9410 * page/inspector/inspector.css: Make the cursor on the toolbar be
9411 row-resize when docked.
9412 * page/inspector/inspector.js:
9413 (WebInspector.loaded): Always add the toolbarDragStart event listener.
9414 (WebInspector.toolbarDragStart): Return early if we are not attached
9415 and not on Leopard. Call WebInspector.elementDragStart.
9416 (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
9417 (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
9418 otherwise call moveByUnrestricted.
9419
hausmann@webkit.orgd34f1d22008-08-13 13:43:34 +000094202008-08-13 Simon Hausmann <hausmann@webkit.org>
9421
9422 Reviewed by Holger.
9423
9424 Initialize m_zoomsTextOnly in the Settings constructor.
9425
9426 * page/Settings.cpp:
9427 (WebCore::Settings::Settings):
9428
hausmann@webkit.org74586d62008-08-13 13:31:11 +000094292008-08-13 Brad Hughes <bhughes@trolltech.com>
9430
9431 Reviewed by Simon.
9432
9433 Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
9434
9435 The latest upgrade of the intel compiler allows us to compile all of
9436 Qt with optimizations enabled (yay!).
9437
9438 * WebCore.pro:
9439
hausmann@webkit.org690b7fc2008-08-13 13:24:56 +000094402008-08-13 Prasanth Ullattil <prasanth.ullattil@trolltech.com>
9441
9442 Reviewed by Simon.
9443
9444 Fix QtWebKit not displaying content on 403 HTTP responses
9445
9446 Just like with 404 responses also display content with 403, as
9447 used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
9448
9449 * platform/network/qt/QNetworkReplyHandler.cpp:
9450 (WebCore::QNetworkReplyHandler::finish):
9451
hausmann@webkit.org88c4dc92008-08-13 12:02:00 +000094522008-08-13 Simon Hausmann <hausmann@webkit.org>
9453
hausmann@webkit.orgd2315e32008-08-13 13:16:15 +00009454 Reviewed by Holger.
9455
9456 Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
9457
9458 Make the formatting of String::format() locale independent through the use of QString::vsprintf.
9459
9460 * platform/text/String.cpp:
9461 (WebCore::String::format):
9462
94632008-08-13 Simon Hausmann <hausmann@webkit.org>
9464
hausmann@webkit.org88c4dc92008-08-13 12:02:00 +00009465 Reviewed by Lars.
9466
9467 Fix QWebFrame::setHtml() not setting the new contents immediately.
9468
9469 Added a setter to the DocumentLoader to toggle the deferred loading of the main
9470 resource when it comes from substitute data.
9471
9472 Disable deferred loading of the main resource when we have valid substitute data,
9473 as used by QWebFrame::setHtml.
9474
9475 * loader/DocumentLoader.h:
9476
mrowe@apple.com6aa36d12008-08-13 09:58:32 +000094772008-08-13 Mark Rowe <mrowe@apple.com>
9478
9479 Speculative GTK build fix.
9480
9481 * GNUmakefile.am: Add dependency info for JSSVGElementWrapperFactory.cpp.
9482
hausmann@webkit.org298ce5f2008-08-13 09:11:23 +000094832008-08-13 Thiago Macieira <tjmaciei@trolltech.com>
9484
9485 Reviewed by Simon.
9486
9487 Fix encoding of [ and ] in the host part of the URL
9488
9489 Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
9490 add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
9491 doesn't encode [ and ] when they are found in the host part. That is, the
9492 following URL:
9493 http://[::1]/
9494 is valid and should not be reencoded to:
9495 http://%5b::1%5d/
9496
9497 * platform/qt/KURLQt.cpp:
9498 (WebCore::KURL::operator QUrl):
9499
mitz@apple.come198b012008-08-12 21:49:07 +000095002008-08-12 Mihnea Ovidenie <mihnea@adobe.com>
9501
9502 Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
9503 Broken HTML object elements cause de-reference of pointer to freed memory.
9504 If we fail to load an image for an object tag and we no longer believe the object tag points at
9505 an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
9506 fall back content.
9507
9508 Reviewed by Dave Hyatt and Alexey Proskuryakov.
9509
9510 Test: http/tests/misc/object-image-error-with-onload.html
9511
9512 * html/HTMLObjectElement.cpp:
9513 (WebCore::HTMLObjectElement::renderFallbackContent):
9514 * page/Frame.cpp:
9515 (WebCore::Frame::Frame):
9516
zimmermann@webkit.org36a02512008-08-12 21:11:17 +000095172008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
9518
9519 Reviewed by Dave.
9520
9521 Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
9522 Masks are translated, and the mask images are swapped on the y-axis.
9523
9524 Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
9525 is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
9526
9527 Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
9528 the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
9529
9530 * svg/graphics/cg/SVGResourceMaskerCg.mm:
9531 (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
9532
mitz@apple.comf8a98692008-08-12 17:04:42 +000095332008-08-12 Dan Bernstein <mitz@apple.com>
9534
mitz@apple.com1b7e844f2008-08-12 20:54:12 +00009535 - WebCore part of <rdar://problem/6121636>
9536 Make fast*alloc() abort() on failure and add "try" variants that
9537 return NULL on failure.
9538
9539 Reviewed by Darin Adler.
9540
9541 * platform/Arena.cpp:
9542 (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
9543 result.
9544 * platform/graphics/cg/ImageBufferCG.cpp:
9545 (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
9546
95472008-08-12 Dan Bernstein <mitz@apple.com>
9548
mitz@apple.com1e09cd72008-08-12 18:27:58 +00009549 Reviewed by Darin Adler.
9550
9551 - fix https://bugs.webkit.org/show_bug.cgi?id=19348
9552 <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
9553
9554 Test: fast/frames/frameset-style-recalc.html
9555
9556 * html/HTMLFrameSetElement.cpp:
9557 (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
9558 class implementation after marking for layout.
9559
95602008-08-12 Dan Bernstein <mitz@apple.com>
9561
mitz@apple.comf8a98692008-08-12 17:04:42 +00009562 Reviewed by John Sullivan.
9563
9564 - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
9565
9566 * WebCore.base.exp:
9567 * page/FrameView.cpp:
9568 (WebCore::FrameViewPrivate::FrameViewPrivate):
9569 (WebCore::FrameView::shouldUpdateWhileHidden):
9570 (WebCore::FrameView::setShouldUpdateWhileHidden):
9571 * page/FrameView.h:
9572 * page/Settings.cpp:
9573 * page/Settings.h:
9574
aroben@apple.comeeb8ebb2008-08-12 14:58:51 +000095752008-08-12 Adam Roben <aroben@apple.com>
9576
9577 Windows build fix
9578
9579 * bindings/js/JSSVGPODTypeWrapper.h: Align
9580 JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
9581 members on 16-byte boundaries to avoid an alignment warning.
9582
zimmermann@webkit.orge1388112008-08-12 10:27:53 +000095832008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
9584
9585 Reviewed by Oliver.
9586
zimmermann@webkit.org504f2552008-08-12 10:35:09 +00009587 Add new dynamice-update layout tests covering SVGMarkerElement.
9588 Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
9589 Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
9590
9591 Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
9592 svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
9593 svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
9594 svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
9595 svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
9596 svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
9597 svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
9598 svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
9599 svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
9600 svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
9601 svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
9602 svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
9603 svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
9604 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
9605 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
9606
9607 * svg/SVGMarkerElement.cpp:
9608 (WebCore::SVGMarkerElement::SVGMarkerElement):
9609 (WebCore::SVGMarkerElement::parseMappedAttribute):
9610 (WebCore::SVGMarkerElement::svgAttributeChanged):
9611 (WebCore::SVGMarkerElement::childrenChanged):
9612 (WebCore::SVGMarkerElement::setOrientToAuto):
9613 (WebCore::SVGMarkerElement::setOrientToAngle):
9614 (WebCore::SVGMarkerElement::canvasResource):
9615
96162008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
9617
9618 Reviewed by Oliver.
9619
zimmermann@webkit.orge1388112008-08-12 10:27:53 +00009620 Add new dynamic-update layout tests covering SVGImageElement.
9621 Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
9622
9623 Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
9624 svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
9625 svg/dynamic-updates/SVGImageElement-dom-width-attr.html
9626 svg/dynamic-updates/SVGImageElement-dom-x-attr.html
9627 svg/dynamic-updates/SVGImageElement-dom-y-attr.html
9628 svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
9629 svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
9630 svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
9631 svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
9632 svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
9633
9634 * svg/SVGImageElement.cpp:
9635 (WebCore::SVGImageElement::svgAttributeChanged):
9636
timothy@apple.com93114722008-08-12 04:20:25 +000096372008-08-11 Anthony Ricaud <rik24d@gmail.com>
9638
timothy@apple.com2f2cde32008-08-12 04:28:16 +00009639 Changed Option/Alt-Up or Down in CSS editing when the value is
9640 near zero to jump to the next integer.
9641
9642 Reviewed by Tim Hatcher.
9643
9644 https://bugs.webkit.org/show_bug.cgi?id=20326
9645
9646 * page/inspector/StylesSidebarPane.js:
9647
96482008-08-11 Anthony Ricaud <rik24d@gmail.com>
9649
timothy@apple.com93114722008-08-12 04:20:25 +00009650 Changed the line highlight transition for an easier animation.
9651
9652 Reviewed by Tim Hatcher.
9653
9654 * page/inspector/SourceFrame.js:
9655
timothy@apple.com24a14852008-08-12 03:57:39 +000096562008-08-11 Keishi Hattori <casey.hattori@gmail.com>
9657
9658 Added support for some Firebug Command Line APIs.
9659
9660 Reviewed by Tim Hatcher.
9661
9662 https://bugs.webkit.org/show_bug.cgi?id=19867
9663 https://bugs.webkit.org/show_bug.cgi?id=19868
9664 https://bugs.webkit.org/show_bug.cgi?id=19869
9665 https://bugs.webkit.org/show_bug.cgi?id=19875
9666 https://bugs.webkit.org/show_bug.cgi?id=19876
9667 https://bugs.webkit.org/show_bug.cgi?id=19880
9668
9669 * page/inspector/Console.js:
9670 (WebInspector.Console.prototype._evalInInspectedWindow):
9671 Create an object on the inspected window that holds the console
9672 command line API functions. This object is used in a with statement
9673 around the typed expression.
9674
zimmermann@webkit.org0350b6d2008-08-12 02:22:26 +000096752008-08-11 Nikolas Zimmermann <zimmermann@kde.org>
9676
9677 Reviewed by Antti.
9678
9679 Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
9680
9681 JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
9682 failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
9683
9684 Added tests: svg/custom/svg-modify-currentTranslate.html
9685 svg/custom/tearoffs-with-tearoffs.html
9686 svg/custom/immutable-properties.html
9687
9688 Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
9689
9690 * bindings/js/JSSVGPODTypeWrapper.h:
9691 (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
9692 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
9693 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
9694 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
9695 (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
9696 (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
9697 (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
9698 (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
9699 * bindings/scripts/CodeGenerator.pm:
9700 * bindings/scripts/CodeGeneratorJS.pm:
9701 * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
9702 * svg/SVGZoomEvent.idl: SVG specification explicitely demands these attributes to be readonly, even its content.
9703
beidson@apple.com0e772f72008-08-12 00:34:46 +000097042008-08-11 Brady Eidson <beidson@apple.com>
9705
9706 Reviewed by John and Anders
9707
9708 Fix for <rdar://problem/6141797>
9709
9710 When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
9711 would never have nil data.
9712
9713 When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
9714 semantics with some WebKit applications.
9715
9716 The guarantee was a good one and should be restored.
9717
9718 Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
9719 creates an empty data object in the case of null data for its own purposes.
9720
9721 * loader/SubstituteResource.h:
9722 (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null. This
9723 well help any future subclassers not make this mistake.
9724
9725 * loader/archive/ArchiveResource.cpp:
9726 (WebCore::ArchiveResource::create): Return 0 if the data is null.
9727
simon.fraser@apple.come0d44792008-08-11 22:44:06 +000097282008-08-11 Simon Fraser <simon.fraser@apple.com>
9729
9730 Reviewed by Dave Hyatt
9731
9732 https://bugs.webkit.org/show_bug.cgi?id=20328
9733 Fix a problem when an 'all' transition transition with more than
9734 one property changing is interrupted, and did some AnimationController
9735 cleanup.
9736
9737 Test: transitions/interrupted-all-transition.html
9738
9739 * page/AnimationController.cpp:
9740 (WebCore::ImplicitAnimation::ImplicitAnimation):
9741 (WebCore::AnimationControllerPrivate::blendProperties):
9742 (WebCore::CompositeAnimation::updateTransitions):
9743 (WebCore::CompositeAnimation::cleanupFinishedAnimations):
9744 (WebCore::CompositeAnimation::setTransitionStartTime):
9745 (WebCore::CompositeAnimation::overrideImplicitAnimations):
9746 (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
9747 (WebCore::ImplicitAnimation::animate):
9748 (WebCore::ImplicitAnimation::onAnimationEnd):
9749 (WebCore::ImplicitAnimation::sendTransitionEvent):
9750 (WebCore::ImplicitAnimation::affectsProperty):
9751 (WebCore::KeyframeAnimation::endAnimation):
9752 (WebCore::KeyframeAnimation::onAnimationEnd):
9753
kmccullough@apple.com4a967c12008-08-11 20:45:19 +000097542008-08-11 Kevin McCullough <kmccullough@apple.com>
9755
9756 Reviewed by Tim.
9757
9758 - Because console messages have group levels now, newly created messages
9759 that do not specify the level lose their message since the number of
9760 arguments is wrong.
9761
9762 * page/inspector/Console.js:
9763 * page/inspector/Resource.js:
9764
alp@webkit.orgeeb55142008-08-11 19:52:14 +000097652008-08-11 Alp Toker <alp@nuanti.com>
9766
9767 Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
9768 the opportunity to sort the sources lists.
9769
9770 * GNUmakefile.am:
9771
timothy@apple.com9fe09f82008-08-11 18:48:37 +000097722008-08-11 Timothy Hatcher <timothy@apple.com>
9773
9774 Speed up the the JavaScript syntax highlighter by generating
9775 the finders only once per script instead of per line.
9776
9777 https://bugs.webkit.org/show_bug.cgi?id=20346
9778
9779 Reviewed by Adam Roben.
9780
9781 * page/inspector/SourceFrame.js:
9782 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
9783 Removed, factored into syntaxHighlightJavascript as an inline function.
9784 (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
9785 Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
9786 Generate the finders before iterating the lines.
9787
aroben@apple.com957d2d32008-08-11 18:31:37 +000097882008-08-11 Adam Roben <aroben@apple.com>
9789
9790 Windows build fix
9791
9792 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
9793 JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
9794 too.
9795
mitz@apple.com3f0060f2008-08-11 18:04:46 +000097962008-08-11 Dan Bernstein <mitz@apple.com>
9797
9798 Reviewed by Darin Adler.
9799
9800 - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
9801
9802 Test: fast/css/counters/invalidate-cached-counter-node.html
9803
9804 * rendering/RenderContainer.cpp:
9805 (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
9806 RenderCounters in :before and :after content.
9807 * rendering/RenderContainer.h:
9808 * rendering/RenderCounter.cpp:
9809 (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
9810 to match the RenderObject method.
9811 (WebCore::RenderCounter::invalidate): Added. Resets the cached
9812 CounterNode and invalidates the object's layout and preferred widths.
9813 (WebCore::destroyCounterNodeChildren): Added a call to
9814 invalidateCounters().
9815 * rendering/RenderCounter.h:
9816 * rendering/RenderObject.h:
9817 (WebCore::RenderObject::invalidateCounters):
9818
dino@apple.com2af8c3a2008-08-11 17:24:36 +000098192008-08-11 Dean Jackson <dino@apple.com>
9820
9821 Implement CSS Animation and Transition Events
9822 https://bugs.webkit.org/show_bug.cgi?id=20337
9823
9824 Implement the events defined in the CSS Animations
9825 and Transitions specifications so code can react
9826 to animations and transitions.
9827
9828 Reviewed by Tim Hatcher and Dave Hyatt.
9829
9830 * DerivedSources.make:
9831 * GNUmakefile.am:
9832 * WebCore.pro:
9833 * WebCore.vcproj/WebCore.vcproj:
9834 * WebCore.xcodeproj/project.pbxproj:
9835 * WebCoreSources.bkl:
9836 Build configs for new files
9837
9838 * bindings/js/JSDOMWindowBase.cpp:
9839 * bindings/js/JSDOMWindowBase.h:
9840 * bindings/js/JSEventCustom.cpp:
9841 * dom/Document.h:
9842 * dom/Event.cpp:
9843 * dom/Event.h:
9844 * dom/EventTarget.cpp:
9845 * dom/EventTargetNode.cpp:
9846 * dom/EventTargetNode.h:
9847 * html/HTMLElement.cpp:
9848 * page/AnimationController.cpp:
9849 do all the new event stuff
9850
9851 * html/HTMLAttributeNames.in:
9852 the onwebkitanimation* and onwebkittransitionend attrs
9853
9854 * dom/WebKitAnimationEvent.cpp: Added.
9855 * dom/WebKitAnimationEvent.h: Added.
9856 * dom/WebKitAnimationEvent.idl: Added.
9857 * dom/WebKitTransitionEvent.cpp: Added.
9858 * dom/WebKitTransitionEvent.h: Added.
9859 * dom/WebKitTransitionEvent.idl: Added.
9860 New files for the events
9861
9862 * manual-tests/transition-events.html: Added.
9863 New testfile
9864
aroben@apple.com3eae8622008-08-11 17:21:23 +000098652008-08-11 Adam Roben <aroben@apple.com>
9866
9867 Add a ForwardingHeader for wtf/NotFound.h
9868
9869 Rubberstamped by Darin Adler.
9870
9871 * ForwardingHeaders/wtf/NotFound.h: Added.
9872
timothy@apple.com2f5bdf02008-08-11 16:53:30 +000098732008-08-11 Timothy Hatcher <timothy@apple.com>
9874
9875 Fixes a bug where error bubbles in JavaScript resources would
9876 be clobbered by the syntax highlighter.
9877
9878 https://bugs.webkit.org/show_bug.cgi?id=20345
9879
9880 Reviewed by Adam Roben.
9881
9882 * manual-tests/inspector/resources/script-error.js: Added.
9883 * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
9884 * page/inspector/SourceFrame.js:
9885 (WebInspector.SourceFrame.prototype._addMessageToSource):
9886 Check the nodeType and not the nodeName, this is less fragile.
9887 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
9888 Check if the lastChild is an error bubble, if so remove it before
9889 getting the line's textContent. Add the error bubble back at the end.
9890
mrowe@apple.com4ec50d02008-08-11 05:07:42 +00009891== Rolled over to ChangeLog-2008-08-10 ==