blob: 4a133e004436054ae0f8b2bd2423bad78834ea9a [file] [log] [blame]
kmccullough@apple.comaf908e62008-09-24 20:22:23 +000012008-09-24 Kevin McCullough <kmccullough@apple.com>
2
3 Reviewed by Tim.
4
5 Bug 21070: REGRESSION Repeated messages with arguments are not repeated
6 or displayed multiple times
7 - The Insepctor Controller was comparing JSValue pointers so thought the
8 message was not a repeat, but the JS of the inspector compared the
9 strings and so knew it was the same message and so overwrote the old
10 message.
11
12 * page/InspectorController.cpp:
13 (WebCore::ConsoleMessage::isEqual):
14 (WebCore::InspectorController::addMessageToConsole):
15 (WebCore::InspectorController::addConsoleMessage):
16 (WebCore::InspectorController::startGroup):
17 (WebCore::InspectorController::endGroup):
18 * page/InspectorController.h:
19
hyatt@apple.comf4c8f172008-09-24 20:19:26 +0000202008-09-24 David Hyatt <hyatt@apple.com>
21
22 Make sure the viewless Mac scrollbar responds properly to system preference changes (including the
23 arrow placement preference and the thumb jump preference).
24
25 Reviewed by Adam Roben
26
27 * platform/Scrollbar.cpp:
28 (WebCore::Scrollbar::Scrollbar):
29 (WebCore::Scrollbar::~Scrollbar):
30 * platform/ScrollbarTheme.h:
31 (WebCore::ScrollbarTheme::registerScrollbar):
32 (WebCore::ScrollbarTheme::unregisterScrollbar):
33 * platform/mac/ScrollbarThemeMac.h:
34 * platform/mac/ScrollbarThemeMac.mm:
35 (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
36 (+[ScrollbarPrefsObserver behaviorPrefsChanged:]):
37 (+[ScrollbarPrefsObserver registerAsObserver]):
38 (WebCore::ScrollbarThemeMac::registerScrollbar):
39 (WebCore::ScrollbarThemeMac::unregisterScrollbar):
40 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
41 (WebCore::ScrollbarThemeMac::preferencesChanged):
42
rwlbuis@webkit.orga5dafa8d2008-09-24 19:23:54 +0000432008-09-24 Rob Buis <buis@kde.org>
44
45 Reviewed by Darin.
46
47 https://bugs.webkit.org/show_bug.cgi?id=20557
48 getScreenCTM() returns wrong values
49
50 Use the absolute position of the svg root when
51 determining the screen ctm.
52
53 Test: svg/custom/getscreenctm-in-mixed-content2.xhtml
54
55 * svg/SVGSVGElement.cpp:
56 (WebCore::SVGSVGElement::getScreenCTM):
57
hyatt@apple.com40a73652008-09-24 18:15:15 +0000582008-09-24 David Hyatt <hyatt@apple.com>
59
hyatt@apple.come77b7d42008-09-24 18:26:51 +000060 Turn off support for CSS variables.
61
62 * ChangeLog:
63 * css/CSSParser.cpp:
64 (WebCore::CSSParser::createVariablesRule):
65 (WebCore::CSSParser::addVariable):
66 (WebCore::CSSParser::addVariableDeclarationBlock):
67
682008-09-24 David Hyatt <hyatt@apple.com>
69
hyatt@apple.com40a73652008-09-24 18:15:15 +000070 Back out the alternate forms of CSS variable call syntax (leaving only the -webkit-var version).
71
72 * css/CSSGrammar.y:
73 * css/CSSParserValues.cpp:
74 (WebCore::CSSParserValue::isVariable):
75 * css/CSSPrimitiveValue.cpp:
76 (WebCore::CSSPrimitiveValue::cleanup):
77 (WebCore::CSSPrimitiveValue::getStringValue):
78 (WebCore::CSSPrimitiveValue::cssText):
79 (WebCore::CSSPrimitiveValue::parserValue):
80 * css/CSSPrimitiveValue.h:
81 (WebCore::CSSPrimitiveValue::):
82 (WebCore::CSSPrimitiveValue::isVariable):
83
timothy@apple.com0214f092008-09-24 16:23:17 +0000842008-09-24 Timothy Hatcher <timothy@apple.com>
85
86 Fixes a regression where the "incorrect MIME-type" warning would not
87 show up correctly in the Console or the resources sidebar.
88
89 Reviewed by Kevin McCullough.
90
91 * page/inspector/Resource.js:
92 (WebInspector.Resource.prototype._addTip): Add the repeat count argument
93 to the WebInspector.ConsoleMessage constructor call.
94 (WebInspector.Resource.prototype._checkWarning): Ditto.
95
vestbo@webkit.orgb298eda2008-09-24 13:47:06 +0000962008-09-23 Tor Arne Vestbø <tavestbo@trolltech.com>
97
98 Reviewed by Simon.
99
100 Remove deprecated JS Qt bindings object call/construct code and fix autotests
101
102 * bridge/qt/qt_instance.cpp:
103 (JSC::Bindings::QtInstance::QtInstance):
104 * bridge/qt/qt_instance.h:
105
jmalonzo@webkit.orgbe1da352008-09-24 07:42:39 +00001062008-09-23 Julien Chaffraix <jchaffraix@pleyo.com>
107
108 Reviewed by Alp Toker. Landed by Jan Alonzo.
109
110 Bug 20883: [CURL] Add deferred loading
111 https://bugs.webkit.org/show_bug.cgi?id=20883
112
113 Implement deferred loading for the libcURL backend using curl_easy_pause.
114 As the method was introduced in version 7.18.0, all the code checks for libcURL
115 version.
116
117 * platform/network/curl/ResourceHandleCurl.cpp:
118 (WebCore::ResourceHandle::setDefersLoading):
119 * platform/network/curl/ResourceHandleManager.cpp:
120 (WebCore::writeCallback): Add an assertion that deferred loading is not
121 activated.
122 (WebCore::headerCallback): Ditto.
123 (WebCore::readCallback): Ditto.
124 (WebCore::ResourceHandleManager::dispatchSynchronousJob): Force
125 defersLoading to be false in order to avoid triggering an assertion.
126 (WebCore::ResourceHandleManager::initializeHandle): If deferred loading is
127 activated, pause the easy handle.
128
pewtermoose@webkit.org0ebdfc02008-09-24 03:24:43 +00001292008-09-23 Matt Lilek <webkit@mattlilek.com>
130
131 Reviewed by Tim Hatcher.
132
133 Inspector search field style tweaks.
134
135 * page/inspector/inspector.css:
136
zimmermann@webkit.org1acc6262008-09-24 02:23:24 +00001372008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
138
139 Reviewed by Eric.
140
141 Fixes: https://bugs.webkit.org/show_bug.cgi?id=21046 (Several LayoutTests crash)
142
143 Fix missing negation in EventTargetNode::insertedIntoDocument.
144 Made handleLocalEvents() virtual again, HTMLFormElement overrides it.
145 Remove code, that wasn't supposed to go in in dispatchGenericEvent().
146
147 * dom/EventTargetNode.cpp:
148 (WebCore::EventTargetNode::insertedIntoDocument):
149 (WebCore::EventTargetNode::dispatchGenericEvent):
150 * dom/EventTargetNode.h:
151
timothy@apple.combffde042008-09-24 02:07:39 +00001522008-09-23 Timothy Hatcher <timothy@apple.com>
153
timothy@apple.com99c03532008-09-24 02:08:44 +0000154 Adds search support to the Profiles panel.
155
156 The Profiles panel supports a few types of queries:
157 * Standard string matching for function names and file URLs.
158 * Greater than and less than search for numeric columns.
159 So a query of ">24" will match all rows that have calls
160 greater than 24. Or "<=42" will match all 42 or less.
161 * Percent and time units. Adding a unit of "s", "ms" or "%"
162 is supported and will match only the Self and Total columns.
163 So a query of ">1.25s" will match all rows that took longer
164 than 1.25 seconds.
165
166 Reviewed by Oliver Hunt.
167
168 * page/inspector/ProfileView.js:
169 (WebInspector.ProfileView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
170 it will start at the first result.
171 (WebInspector.ProfileView.prototype.refreshShowAsPercents): Moved from the bottom of the file.
172 (WebInspector.ProfileView.prototype.searchCanceled): Clear the search properties and refresh highlighted
173 data grid nodes.
174 (WebInspector.ProfileView.prototype.performSearch): Search the profile nodes.
175 (WebInspector.ProfileView.prototype.jumpToFirstSearchResult): Does what the function says. Calls _jumpToSearchResult.
176 (WebInspector.ProfileView.prototype.jumpToLastSearchResult): Ditto.
177 (WebInspector.ProfileView.prototype.jumpToNextSearchResult): Ditto.
178 (WebInspector.ProfileView.prototype.jumpToPreviousSearchResult): Ditto.
179 (WebInspector.ProfileView.prototype.showingFirstSearchResult): Does what the function says.
180 (WebInspector.ProfileView.prototype.showingLastSearchResult): Ditto.
181 (WebInspector.ProfileView.prototype._jumpToSearchResult): Select and reveal the profile node.
182 Expand all the ancestors first so the profile node will have a DataGridNode.
183 (WebInspector.ProfileView.prototype._changeView): Perform the search again on the new tree.
184 (WebInspector.ProfileDataGridNode.prototype.createCell): Add the highlight class to cells that
185 have search matches.
186 * page/inspector/ProfilesPanel.js:
187 (WebInspector.ProfilesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
188 (WebInspector.ProfilesPanel.prototype.showProfile): Use profileViewForProfile.
189 (WebInspector.ProfilesPanel.prototype.showView): Call showProfile. Used by Panel to show a view.
190 (WebInspector.ProfilesPanel.prototype.profileViewForProfile): Create the ProfileView if needed.
191 (WebInspector.ProfilesPanel.prototype.closeVisibleView): Renamed visibleProfileView to visibleView.
192 (WebInspector.ProfilesPanel.prototype.get searchableViews): Return all the views.
193 (WebInspector.ProfilesPanel.prototype.searchMatchFound): Update the sidebar search matches.
194 (WebInspector.ProfilesPanel.prototype.searchCanceled): Clear all the sidebar search matches.
195 (WebInspector.ProfileSidebarTreeElement.prototype.set searchMatches): Set the class and bubbleText.
196 * page/inspector/inspector.css: New style rules for the cell highlight color.
197
1982008-09-23 Timothy Hatcher <timothy@apple.com>
199
timothy@apple.com33c28442008-09-24 02:08:39 +0000200 Adds search support to the Resources and Scripts panels.
201
202 https://bugs.webkit.org/show_bug.cgi?id=21005
203
204 Reviewed by Oliver Hunt.
205
206 * page/inspector/Images/searchSmallBlue.png: Added.
207 * page/inspector/Images/searchSmallBrightBlue.png: Added.
208 * page/inspector/Images/searchSmallGray.png: Added.
209 * page/inspector/Images/searchSmallWhite.png: Added.
210 * page/inspector/ResourceView.js:
211 (WebInspector.ResourceView.prototype.attach): Attempt to attach to "resource-views"
212 or "script-resource-views" since one might not be created yet.
213 * page/inspector/ResourcesPanel.js:
214 (WebInspector.ResourcesPanel.prototype.show): Hide any views that are visible that
215 are not this panel's current visible view. This can happen when a ResourceView is
216 visible in the Scripts panel then switched to the this panel.
217 (WebInspector.ResourcesPanel.prototype.get searchableViews): Return all views, with the
218 visibleView first.
219 (WebInspector.ResourcesPanel.prototype.searchResultsSortFunction): Return a sort function
220 that uses the current graph search function. So cycling through results will be in the order
221 things appear in the sidebar.
222 (WebInspector.ResourcesPanel.prototype.searchMatchFound): Update the search matches on the
223 resource's sidebar tree element.
224 (WebInspector.ResourcesPanel.prototype.searchCanceled): Restore the error and warning bubbles
225 in the sidebar. Calls the Panel prototype's searchCanceled.
226 (WebInspector.ResourcesPanel.prototype.performSearch): Hide all the error and warning bubbles
227 in the sidebar. Calls the Panel prototype's performSearch.
228 (WebInspector.ResourcesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
229 (WebInspector.ResourcesPanel.prototype.addMessageToResource): Don't call updateErrorsAndWarnings
230 if there is a current search query.
231 (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto.
232 (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Ditto.
233 (WebInspector.ResourcesPanel.prototype.showView): Call showResource. Used by Panel to show a view.
234 (WebInspector.ResourceSidebarTreeElement.prototype.resetBubble): Clear all the classes and content.
235 (WebInspector.ResourceSidebarTreeElement.prototype.set searchMatches): Set the bubbleText and class.
236 (WebInspector.ResourceSidebarTreeElement.prototype.updateErrorsAndWarnings): Call resetBubble.
237 * page/inspector/ScriptView.js:
238 (WebInspector.ScriptView): Set _sourceFrameSetup to flase.
239 (WebInspector.ScriptView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
240 it will start at the first result.
241 (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): Add an event listener for "syntax
242 highlighting complete".
243 (WebInspector.ScriptView.prototype): Share many methods with SourceView.
244 * page/inspector/ScriptsPanel.js:
245 (WebInspector.ScriptsPanel.prototype.show): Hide any views that are visible that are not this
246 This can happen when a ResourceView is visible in the Resources panel then switched to the this panel.
247 (WebInspector.ScriptsPanel.prototype.get searchableViews): Return all views, with the visibleView first.
248 (WebInspector.ScriptsPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
249 (WebInspector.ScriptsPanel.prototype.showView): Call _showScriptOrResource. Used by Panel to show a view.
250 (WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource): Added helper.
251 * page/inspector/SourceFrame.js:
252 (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Dispatch a "syntax highlighting complete" event.
253 * page/inspector/SourceView.js:
254 (WebInspector.SourceView.prototype.hide):
255 (WebInspector.SourceView.prototype.detach):
256 (WebInspector.SourceView.prototype._resourceLoadingFinished): Moved from the bottom of the file.
257 (WebInspector.SourceView.prototype._addBreakpoint): Ditto.
258 (WebInspector.SourceView.prototype.searchCanceled): Delete search properties.
259 (WebInspector.SourceView.prototype.performSearch): Search the frame if it is loaded, otherwise
260 store the worker function as _delayedFindSearchMatches and call it later in _sourceFrameSetupFinished.
261 (WebInspector.SourceView.prototype.jumpToFirstSearchResult):
262 (WebInspector.SourceView.prototype.jumpToLastSearchResult):
263 (WebInspector.SourceView.prototype.jumpToNextSearchResult):
264 (WebInspector.SourceView.prototype.jumpToPreviousSearchResult):
265 (WebInspector.SourceView.prototype.showingFirstSearchResult):
266 (WebInspector.SourceView.prototype.showingLastSearchResult):
267 (WebInspector.SourceView.prototype._jumpToSearchResult): Selects the found Range.
268 (WebInspector.SourceView.prototype._sourceFrameSetupFinished): Calls _delayedFindSearchMatches.
269 (WebInspector.SourceView.prototype._syntaxHighlightingComplete): Call _sourceFrameSetupFinished.
270 * page/inspector/inspector.css:
271
2722008-09-23 Timothy Hatcher <timothy@apple.com>
273
timothy@apple.com18950ed2008-09-24 02:08:32 +0000274 Rename some properties of ResourcesPanel and ScriptsPanel to be the same,
275 so future code can be shared.
276
277 https://bugs.webkit.org/show_bug.cgi?id=21005
278
279 Reviewed by Oliver Hunt.
280
281 * page/inspector/ResourcesPanel.js: Renamed resourceViews to viewsContainerElement.
282 And visibleResourceView to visibleView.
283 * page/inspector/ScriptsPanel.js: Renamed scriptResourceViews to viewsContainerElement.
284
2852008-09-23 Timothy Hatcher <timothy@apple.com>
286
timothy@apple.comcb23f4a2008-09-24 02:08:27 +0000287 Highlight all matched search results in the Elements panel DOM tree.
288
289 https://bugs.webkit.org/show_bug.cgi?id=21005
290
291 Reviewed by Oliver Hunt.
292
293 * page/inspector/ElementsPanel.js:
294 (WebInspector.ElementsPanel.prototype.searchCanceled): Clear the highlight
295 on all previous search results.
296 (WebInspector.ElementsPanel.prototype.performSearch): Set the hihglight
297 on all new search results.
298 * page/inspector/ElementsTreeOutline.js:
299 (WebInspector.ElementsTreeElement): Delay setting the title until onattach.
300 (WebInspector.ElementsTreeElement.prototype.get/set highlighted): Sets or removes
301 the highlighted class on the listItemElement.
302 (WebInspector.ElementsTreeElement.prototype.onattach): Set the highlighted class
303 if needed. Calls _updateTitle.
304 (WebInspector.ElementsTreeElement.prototype._updateTitle): Adds a span with the highlight
305 class so it can be styled when the highlighted class is present.
306 * page/inspector/inspector.css: New style rules for the hihglight.
307
3082008-09-23 Timothy Hatcher <timothy@apple.com>
309
timothy@apple.com574c0522008-09-24 02:08:19 +0000310 Add search support to the Elements panel.
311
312 https://bugs.webkit.org/show_bug.cgi?id=21005
313
314 Reviewed by Oliver Hunt.
315
316 * page/inspector/ElementsPanel.js:
317 (WebInspector.ElementsPanel.prototype.searchCanceled): Call updateSearchMatchesCount
318 with a 0 match count to rest. Reset the other search properties.
319 (WebInspector.ElementsPanel.prototype.performSearch): Evaluates the search as an XPath
320 query and a CSS selector on all the Documents in the page. Remembers the found nodes
321 and avoids duplicates. Focuses the first result.
322 (WebInspector.ElementsPanel.prototype.jumpToNextSearchResult): Focuses the next result.
323 (WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult): Focuses the previous result.
324
3252008-09-23 Timothy Hatcher <timothy@apple.com>
326
timothy@apple.com82d233c2008-09-24 02:08:15 +0000327 Add support to Panel that allows easy searching of sub-views.
328
329 https://bugs.webkit.org/show_bug.cgi?id=21005
330
331 Reviewed by Oliver Hunt.
332
333 * page/inspector/Panel.js:
334 (WebInspector.Panel.prototype.searchCanceled): Call searchCanceled on all the
335 views in the search results and delete the currentQuery property. Call
336 WebInspector.updateSearchMatchesCount wit ha 0 match count to rest. Reset the
337 other search properties.
338 (WebInspector.Panel.prototype.performSearch): Call searchCanceled since it will
339 reset everything we need before doing a new search. Get an array of searchableViews
340 from the panel, implemented by sub-classes. Iterate over the views one-by-one
341 with an interval to prevent blocking the UI for large lists of searchableViews.
342 This keeps the interface really responsive. Pass a finishedCallback function to
343 the performSearch on each view so it can notify the panel of results.
344 (WebInspector.Panel.prototype.jumpToNextSearchResult): Finds the index in the
345 searchResults of the visibleView, so we know where in the results we are.
346 This is done every time incase the user manually navigates to a new view.
347 If the view is showing the last result, jump to the next view and show it's
348 first result. Otherwise jump to the next result in the current view.
349 (WebInspector.Panel.prototype.jumpToPreviousSearchResult): Ditto, but in reverse.
350
3512008-09-23 Timothy Hatcher <timothy@apple.com>
352
timothy@apple.comc8cfd5e2008-09-24 02:08:11 +0000353 Add support for asking the current panel to perform a search, find next/previous and clear.
354 A search is performed on the new new current panel when switching between panels. The search
355 label/placeholder in the toolbar now includes the panel name to make it clear that panel will
356 be searched. The search field contents are selected when Command/Control-F or Enter/Return
357 is pressed, so the user can easily type an entirely new query. The search match count shows
358 up in the toolbar next to the search field.
359
360 Also changed:
361 * Rename lastQuery to currentQuery since it better matches the truth.
362 * Set the search field "results" attribute to zero since results arn't saved for
363 how we use the search field.
364 * Make repeated presses of the Return key jump to the next search result instead
365 of doing nothing.
366 * Increased the search field width.
367
368 https://bugs.webkit.org/show_bug.cgi?id=21005
369
370 Reviewed by Oliver Hunt.
371
372 * English.lproj/localizedStrings.js: New strings.
373 * page/inspector/inspector.css: New styles.
374 * page/inspector/inspector.html: Add the search-results-matches element. Add the
375 incremental attribute to the search field and set the results attribute to zero.
376 * page/inspector/inspector.js:
377 (WebInspector.set currentPanel): perform the search on the new panel.
378 (WebInspector.loaded): Change the event listeners and remove code that changes
379 the search label text.
380 (WebInspector.documentKeyDown): Add support for Command/Control-G and
381 Command/Control-Shift-G. To jump to the next and previous search results.
382 (WebInspector.updateSearchLabel): Added. Update the search placeholder/label.
383 This does different things depending on the attached state.
384 (WebInspector.searchKeyDown): Call preventDefault since this was the Enter key.
385 This prevents a "search" event from firing for key down. We handle the Enter key
386 on key up in searchKeyUp. This stops performSearch from being called twice in a row.
387 (WebInspector.searchKeyUp): Calls performSearch when it is the Enter key.
388 (WebInspector.performSearch): Delete the currentQuery property and call searchCanceled
389 on all the panels. Call jumpToNextSearchResult when this is the same query or a forced search.
390 Call updateSearchMatchesCount to reset the matches count in the toolbar.
391 (WebInspector.updateSearchMatchesCount): Added. Updates the matches count in the toolbar.
392
3932008-09-23 Timothy Hatcher <timothy@apple.com>
394
timothy@apple.com1d5227a2008-09-24 02:08:01 +0000395 Remove the previous Inspector search code to make room for the new stuff.
396
397 https://bugs.webkit.org/show_bug.cgi?id=21005
398
399 Reviewed by Oliver Hunt.
400
401 * page/inspector/inspector.css:
402 * page/inspector/inspector.html:
403 * page/inspector/inspector.js:
404 (WebInspector.get/set showingSearchResults): Removed.
405 (WebInspector.searchResultsKeyDown): Removed.
406 (WebInspector.searchResultsResizerDragStart): Removed.
407 (WebInspector.searchResultsResizerDragEnd): Removed.
408 (WebInspector.searchResultsResizerDrag): Removed.
409 (WebInspector.performSearch): Removed searching parts.
410
4112008-09-23 Timothy Hatcher <timothy@apple.com>
412
timothy@apple.com5e915b722008-09-24 02:07:56 +0000413 Use the Array.remove helper function in more places.
414
415 https://bugs.webkit.org/show_bug.cgi?id=21037
416
417 Reviewed by Kevin McCullough.
418
419 * page/inspector/ResourceCategory.js:
420 (WebInspector.ResourceCategory.prototype.removeResource): Use Array.remove.
421 * page/inspector/ResourcesPanel.js:
422 (WebInspector.ResourcesPanel.prototype.removeResource): Ditto.
423 * page/inspector/inspector.js:
424 (WebInspector.removeResource): Ditto.
425
4262008-09-23 Timothy Hatcher <timothy@apple.com>
427
timothy@apple.com3e116f12008-09-24 02:07:50 +0000428 Fixes a bug where inspecting a node after reloading the page
429 would not reveal the node in the DOM tree. The TreeOutline
430 was not being told to forget decendants of a removed child.
431 So old TreeElements would be found that are not in the tree.
432
433 https://bugs.webkit.org/show_bug.cgi?id=21036
434
435 Reviewed by Kevin McCullough.
436
437 * page/inspector/treeoutline.js:
438 (TreeOutline._removeChildAtIndex): Call _forgetChildrenRecursive
439 in addition to _forgetTreeElement.
440 (TreeOutline._removeChildren): Call _forgetChildrenRecursive
441 in addition to _forgetTreeElement.
442 (TreeOutline._rememberTreeElement): Use Array.indexOf to quickly
443 search for known elements.
444 (TreeOutline._forgetTreeElement): Use Array.remove to remove elements.
445 (TreeOutline._forgetChildrenRecursive): Recursively traverse the
446 descendants and call _forgetTreeElement.
447 * page/inspector/utilities.js:
448 (Array.prototype.remove): Speed up this function by using Array.indexOf
449 when onlyFirst is true.
450
4512008-09-23 Timothy Hatcher <timothy@apple.com>
452
timothy@apple.com2e9f2ff2008-09-24 02:07:45 +0000453 Fixes a bug where inspecting some short text nodes does
454 not reveal them in the Elements panel DOM tree.
455
456 https://bugs.webkit.org/show_bug.cgi?id=21035
457
458 Reviewed by Oliver Hunt.
459
460 * page/inspector/ElementsTreeOutline.js:
461 (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
462 The revealAndSelectNode() method might find a different element
463 if there is inlined text, and the select() call would change the
464 focusedDOMNode and reenter this setter. So to avoid calling
465 focusedNodeChanged() twice, first check if _focusedDOMNode is
466 the same node as the one passed in.
467 (WebInspector.ElementsTreeOutline.prototype.update): Remove use of
468 this.treeOutline, since this is the TreeOutline.
469 (WebInspector.ElementsTreeOutline.prototype.findTreeElement): Added.
470 Provides default functions for isAncestor, getParet and equal.
471 Calls the base protoype's findTreeElement. If that returns null
472 and the node is a text node, try finding it's parent.
473 (WebInspector.ElementsTreeOutline.prototype.revealNode): Removed.
474 Renamed to revealAndSelectNode.
475 (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode):
476 Selects and reveals the node passed in. Use the simple findTreeElement.
477 (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
478 Remove use of this.treeOutline, since this is the TreeOutline.
479
4802008-09-23 Timothy Hatcher <timothy@apple.com>
481
timothy@apple.combffde042008-09-24 02:07:39 +0000482 Fixes an exception that happened when removing a Resource
483 from the ResourcesPanel.
484
485 https://bugs.webkit.org/show_bug.cgi?id=21034
486
487 Reviewed by Kevin McCullough.
488
489 * page/inspector/ResourcesPanel.js:
490 (WebInspctor.ResourcesPanel.prototype.removeResource):
491 Remove the graphElement.
492
kmccullough@apple.com70d32f22008-09-24 01:18:31 +00004932008-09-23 Kevin McCullough <kmccullough@apple.com>
494
495 Fixed "Time" to "Tim"
496
497 * ChangeLog:
498
zimmermann@webkit.org718a2232008-09-24 01:00:42 +00004992008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
500
501 Reviewed by Oliver.
502
503 Move mapInstanceToElement/removeInstanceMapping/instancesForElement
504 from SVGDocumentExtensions to SVGElement. It's more useful to store
505 the list of SVGElementInstances per SVGElement, instead of using
506 a document-wide hash for this purpose.
507
508 * svg/SVGAnimateMotionElement.cpp:
509 (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
510 * svg/SVGAnimateTransformElement.cpp:
511 (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
512 * svg/SVGAnimationElement.cpp:
513 (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
514 * svg/SVGDocumentExtensions.cpp:
515 (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
516 * svg/SVGDocumentExtensions.h:
517 * svg/SVGElement.cpp:
518 (WebCore::SVGElement::mapInstanceToElement):
519 (WebCore::SVGElement::removeInstanceMapping):
520 (WebCore::SVGElement::instancesForElement):
521 * svg/SVGElement.h:
522 * svg/SVGElementInstance.cpp:
523 (WebCore::SVGElementInstance::SVGElementInstance):
524 (WebCore::SVGElementInstance::~SVGElementInstance):
525 (WebCore::SVGElementInstance::updateAllInstancesOfElement):
526 * svg/SVGElementInstance.h:
527 * svg/SVGStyledElement.cpp:
528 (WebCore::SVGStyledElement::svgAttributeChanged):
529 (WebCore::SVGStyledElement::childrenChanged):
530 * svg/SVGStyledElement.h:
531
kevino@webkit.org706ea432008-09-24 00:53:56 +00005322008-09-23 Kevin Ollivier <kevino@theolliviers.com>
533
534 wx build fix.
535
536 * WebCoreSources.bkl:
537
zimmermann@webkit.org97c71082008-09-24 00:23:28 +00005382008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
539
540 Rubber stamped by Sam.
541
542 Move code from EventTarget to EventTargetNode.
543
544 I refactored most parts to live in EventTarget, a year ago,
545 though the implementation of EventTargetSVGElementInstance is
546 done in another way, that obsoletes this.
547
548 * dom/Document.cpp:
549 (WebCore::Document::addListenerTypeIfNeeded):
550 * dom/Document.h:
551 * dom/EventTarget.cpp:
552 * dom/EventTarget.h:
553 (WebCore::allowEventDispatch):
554 * dom/EventTargetNode.cpp:
555 (WebCore::EventTargetNode::insertedIntoDocument):
556 (WebCore::EventTargetNode::removedFromDocument):
557 (WebCore::EventTargetNode::willMoveToNewOwnerDocument):
558 (WebCore::EventTargetNode::didMoveToNewOwnerDocument):
559 (WebCore::EventTargetNode::addEventListener):
560 (WebCore::EventTargetNode::removeEventListener):
561 (WebCore::EventTargetNode::removeAllEventListeners):
562 (WebCore::EventTargetNode::handleLocalEvents):
563 (WebCore::setCurrentEventTargetRespectingSVGTargetRules):
564 (WebCore::EventTargetNode::dispatchEvent):
565 (WebCore::EventTargetNode::dispatchGenericEvent):
566 (WebCore::EventTargetNode::dispatchWindowEvent):
567 (WebCore::EventTargetNode::removeEventListenerForType):
568 * dom/EventTargetNode.h:
569 * svg/EventTargetSVGElementInstance.cpp:
570 (WebCore::EventTargetSVGElementInstance::dispatchEvent):
571 * svg/SVGElement.cpp:
572 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
573 * svg/SVGElement.h:
574 (WebCore::SVGElement::supplementalTransform):
575
hyatt@apple.com7c9fc6f2008-09-24 00:14:42 +00005762008-09-23 Dave Hyatt <hyatt@apple.com>
577
578 Fix for bug 21012. The Aqua scrollbar was returning the wrong track rect on Windows Aqua theme. Make
579 sure to not accidentally fall into the vertical scrollbar case for horizontal scrollbars. :)
580
581 Reviewed by Sam Weinig
582
583 * platform/mac/ScrollbarThemeMac.mm:
584 (WebCore::ScrollbarThemeMac::trackRect):
585 * platform/win/ScrollbarThemeSafari.cpp:
586 (WebCore::ScrollbarTheme::nativeTheme):
587 (WebCore::ScrollbarThemeSafari::trackRect):
588
bdakin@apple.comaab5d692008-09-24 00:09:33 +00005892008-09-23 Beth Dakin <bdakin@apple.com>
590
591 Reviewed by Sam Weinig.
592
593 Fix for https://bugs.webkit.org/show_bug.cgi?id=21041 "Add Contact"
594 link at gmail does not support AXPress action
595 and corresponding: <rdar://problem/6216178>
596
597 I fixed this bug by making AccessibilityObject::anchorElement
598 support ARIA links.
599
600 * page/AccessibilityImageMapLink.cpp:
601 (WebCore::AccessibilityImageMapLink::anchorElement):
602 * page/AccessibilityImageMapLink.h:
603 * page/AccessibilityObject.cpp:
604 (WebCore::AccessibilityObject::anchorElement):
605 * page/AccessibilityObject.h:
606 (WebCore::AccessibilityObject::isNativeAnchor):
607 * page/AccessibilityRenderObject.cpp:
608 (WebCore::AccessibilityRenderObject::isNativeAnchor):
609 (WebCore::AccessibilityRenderObject::anchorElement):
610 (WebCore::AccessibilityRenderObject::internalLinkElement):
611 (WebCore::AccessibilityRenderObject::url):
612 * page/AccessibilityRenderObject.h:
613 * page/mac/AccessibilityObjectWrapper.mm:
614 (AXLinkElementForNode):
615
kmccullough@apple.com58f6b182008-09-24 00:05:34 +00006162008-09-23 Kevin McCullough <kmccullough@apple.com>
617
kmccullough@apple.com70d32f22008-09-24 01:18:31 +0000618 Reviewed by Tim and Oliver.
kmccullough@apple.com58f6b182008-09-24 00:05:34 +0000619
620 Bug 20949: Catch repeated messages in Inspector Controller to limit
621 memory usage
622 - Store the repeat count in the Console Message object, in the
623 Inspector Controller and JS ConsoleMessage object.
624
625 * page/InspectorController.cpp:
626 (WebCore::ConsoleMessage::ConsoleMessage):
627 (WebCore::ConsoleMessage::operator==):
628 (WebCore::InspectorController::InspectorController):
629 (WebCore::InspectorController::addConsoleMessage):
630 (WebCore::InspectorController::addScriptConsoleMessage):
631 * page/InspectorController.h:
632 * page/inspector/Console.js:
633 * page/inspector/Resource.js:
634 * page/inspector/ResourcesPanel.js:
635 * page/inspector/SourceFrame.js:
636
zimmermann@webkit.org29d22032008-09-23 23:44:20 +00006372008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
638
639 Reviewed by Eric.
640
641 Working on proper EventTarget support for SVGElementInstance.
642
643 Add new EventTargetSVGElementInstance class, and it's corresponding JS wrapper.
644 Finally JSEventTargetBase, is actually used for another class than JSEventTargetnode.
645
646 Remove EventTarget inheritance from SVGElementInstance, and the manual "TreeShared"
647 implementation. Let it use TreeShared directly.
648
649 It's not activated so far (SVGUseElement still creating SVGElementInstance objects).
650 The transition to EventTargetSVGElementInstance will be done in a few individual patches.
651
652 * GNUmakefile.am:
653 * WebCore.pro:
654 * WebCore.vcproj/WebCore.vcproj:
655 * WebCore.xcodeproj/project.pbxproj:
656 * bindings/js/JSEventTargetBase.cpp:
657 (WebCore::retrieveEventTargetAndCorrespondingNode):
658 (WebCore::toJS):
659 * bindings/js/JSEventTargetBase.h:
660 * bindings/js/JSEventTargetSVGElementInstance.cpp: Added.
661 (WebCore::):
662 (WebCore::JSEventTargetSVGElementInstance::JSEventTargetSVGElementInstance):
663 (WebCore::JSEventTargetSVGElementInstance::createPrototype):
664 (WebCore::JSEventTargetSVGElementInstance::setListener):
665 (WebCore::JSEventTargetSVGElementInstance::getListener):
666 (WebCore::toEventTargetSVGElementInstance):
667 * bindings/js/JSEventTargetSVGElementInstance.h: Added.
668 (WebCore::JSEventTargetSVGElementInstance::prototypeClassName):
669 (WebCore::JSEventTargetSVGElementInstance::getOwnPropertySlot):
670 (WebCore::JSEventTargetSVGElementInstance::getValueProperty):
671 (WebCore::JSEventTargetSVGElementInstance::put):
672 (WebCore::JSEventTargetSVGElementInstance::putValueProperty):
673 * bindings/js/JSSVGElementInstanceCustom.cpp: Added.
674 (WebCore::toJS):
675 * bindings/objc/DOM.mm:
676 (+[DOMNode _wrapEventTarget:WebCore::]):
677 (-[DOMSVGElementInstance _initWithSVGElementInstance:WebCore::]):
678 (+[DOMSVGElementInstance _wrapSVGElementInstance:WebCore::]):
679 (+[DOMSVGElementInstance _wrapEventTarget:WebCore::]):
680 (-[DOMSVGElementInstance WebCore::]):
681 (-[DOMSVGElementInstance addEventListener:listener:useCapture:]):
682 (-[DOMSVGElementInstance addEventListener:::]):
683 (-[DOMSVGElementInstance removeEventListener:listener:useCapture:]):
684 (-[DOMSVGElementInstance removeEventListener:::]):
685 (-[DOMSVGElementInstance dispatchEvent:]):
686 * bindings/objc/DOMEvents.h:
687 * bindings/scripts/CodeGeneratorJS.pm:
688 * bindings/scripts/CodeGeneratorObjC.pm:
689 * svg/EventTargetSVGElementInstance.cpp: Added.
690 (WebCore::EventTargetSVGElementInstance::EventTargetSVGElementInstance):
691 (WebCore::EventTargetSVGElementInstance::~EventTargetSVGElementInstance):
692 (WebCore::EventTargetSVGElementInstance::addEventListener):
693 (WebCore::EventTargetSVGElementInstance::removeEventListener):
694 (WebCore::EventTargetSVGElementInstance::dispatchEvent):
695 * svg/EventTargetSVGElementInstance.h: Added.
696 (WebCore::EventTargetSVGElementInstance::isEventTargetSVGElementInstance):
697 (WebCore::EventTargetSVGElementInstance::toNode):
698 (WebCore::EventTargetSVGElementInstance::toSVGElementInstance):
699 (WebCore::EventTargetSVGElementInstance::refEventTarget):
700 (WebCore::EventTargetSVGElementInstance::derefEventTarget):
701 (WebCore::EventTargetSVGElementInstanceCast):
702 * svg/SVGElement.cpp:
703 (WebCore::SVGElement::dispatchEvent):
704 * svg/SVGElementInstance.cpp:
705 (WebCore::SVGElementInstance::SVGElementInstance):
706 (WebCore::SVGElementInstance::~SVGElementInstance):
707 * svg/SVGElementInstance.h:
708 (WebCore::SVGElementInstance::isEventTargetSVGElementInstance):
709 * svg/SVGElementInstance.idl:
710
mitz@apple.come47c5af2008-09-23 21:47:54 +00007112008-09-23 Dan Bernstein <mitz@apple.com>
712
713 Reviewed by Dave Hyatt.
714
715 - https://bugs.webkit.org/show_bug.cgi?id=21040
716 Pass NULL instead of the identity matrix to CTFontCreateWithGraphicsFont()
717
718 * platform/graphics/mac/SimpleFontDataMac.mm:
719 (WebCore::SimpleFontData::getCTFont):
720
hyatt@apple.com6e6bd8e2008-09-23 21:43:37 +00007212008-09-23 David Hyatt <hyatt@apple.com>
722
723 https://bugs.webkit.org/show_bug.cgi?id=21039
724
725 Teach the viewless Mac scrollbar how to avoid NSWindow's resizer.
726
727 Reviewed by Sam Weinig
728
729 * platform/ScrollView.h:
730 * platform/Scrollbar.cpp:
731 (WebCore::Scrollbar::setFrameGeometry):
732 * platform/Scrollbar.h:
733 * platform/Widget.cpp:
734 (WebCore::Widget::convertFromContainingWindow):
735 * platform/Widget.h:
736 * platform/mac/ScrollViewMac.mm:
737 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
738 (WebCore::ScrollView::ScrollView):
739 (WebCore::ScrollView::~ScrollView):
740 (WebCore::ScrollView::windowResizerRect):
741 (WebCore::ScrollView::resizerOverlapsContent):
742 (WebCore::ScrollView::adjustOverlappingScrollbarCount):
743 (WebCore::ScrollView::setParent):
744 * platform/mac/WidgetMac.mm:
745 (WebCore::Widget::convertFromContainingWindow):
746
jmalonzo@webkit.orge5598ad2008-09-23 21:33:21 +00007472008-09-23 Dirk Schulze <vbs85@gmx.de>
748
749 Reviewed by Darin Adler. Landed by Jan Alonzo.
750
751 Added support for getImageData() and putImageData()
752 to Cairo.
753
754 [CAIRO] needs getImageData and putImageData support
755 https://bugs.webkit.org/show_bug.cgi?id=20838
756
757 * platform/graphics/cairo/ImageBufferCairo.cpp:
758 (WebCore::ImageBuffer::ImageBuffer):
759 (WebCore::ImageBuffer::getImageData):
760 (WebCore::ImageBuffer::putImageData):
761
jmalonzo@webkit.orgfb939412008-09-23 21:07:50 +00007622008-09-23 Marco Barisione <marco.barisione@collabora.co.uk>
763
764 Reviewed by Holger Freyther.
765
766 http://bugs.webkit.org/show_bug.cgi?id=18987
767 [GTK] Implement SharedBuffer::createWithContentsOfFile and
768 KURL::fileSystemPath
769
770 * GNUmakefile.am: Add KURLGtk.cpp and SharedBufferGtk.cpp.
771 * platform/gtk/KURLGtk.cpp: Added.
772 (WebCore::KURL::fileSystemPath): Implemented.
773 * platform/gtk/SharedBufferGtk.cpp: Added.
774 (WebCore::SharedBuffer::createWithContentsOfFile): Implemented.
775 * platform/gtk/TemporaryLinkStubs.cpp: Remove the old stubs.
776
ap@webkit.org198304c2008-09-23 16:34:41 +00007772008-09-23 Alexey Proskuryakov <ap@webkit.org>
778
ap@webkit.orgccfa60a2008-09-23 20:39:22 +0000779 Reviewed by Oliver Hunt, okayed by Darin Adler.
780
781 <rdar://problem/5575547> REGRESSION: ATOK has no phrase boundary on Safari/Mail.app
782
783 * rendering/InlineTextBox.cpp:
784 (WebCore::InlineTextBox::paintCompositionUnderline): Add 2 pixel spacing between clauses.
785
7862008-09-23 Alexey Proskuryakov <ap@webkit.org>
787
ap@webkit.org198304c2008-09-23 16:34:41 +0000788 Reviewed by Darin Adler.
789
790 https://bugs.webkit.org/show_bug.cgi?id=21023
791 Don't use TEC for encodings supported by ICU
792
793 * platform/text/mac/mac-encodings.txt: Removed x-mac-centraleurroman, x-mac-cyrillic,
794 x-mac-greek, and x-mac-turkish.
795
796 * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
797 Register aliases for these encodings that are not registered automatically; updated comments.
798
mjs@apple.coma6dc93d2008-09-23 07:46:55 +00007992008-09-23 Maciej Stachowiak <mjs@apple.com>
800
801 Reviewed by Darin.
802
803 - speed up instanceof some more
804 https://bugs.webkit.org/show_bug.cgi?id=20818
805
806 ~2% speedup on EarleyBoyer
807
808 (WebCore updates.)
809
810 * bindings/js/JSQuarantinedObjectWrapper.h:
811 (WebCore::JSQuarantinedObjectWrapper::createStructureID):
812
oliver@apple.combc10aae2008-09-23 07:40:49 +00008132008-09-22 Darin Adler <darin@apple.com>
814
815 Reviewed by Oliver Hunt.
816
817 - fix https://bugs.webkit.org/show_bug.cgi?id=21008
818 getting pixels by index from CanvasPixelArray is unnecessarily slow
819
820 * GNUmakefile.am: Added JSCanvasPixelArrayCustom.h.
821 * WebCore.vcproj/WebCore.vcproj: Ditto.
822 * WebCore.xcodeproj/project.pbxproj: Ditto.
823
824 * bindings/js/JSCanvasPixelArrayCustom.cpp: Removed indexGetter and
825 indexSetter. These are now both inlined, so in the header.
826 * bindings/js/JSCanvasPixelArrayCustom.h: Added. The getByIndex
827 function is what's used for HasCustomIndexGetter. Also moved the
828 indexSetter function here.
829
830 * bindings/scripts/CodeGeneratorJS.pm: Changed HasCustomIndexGetter
831 to use a getByIndex member function rather than an indexGetter static
832 member function in a property slot. This lets us avoid the property
833 slot mechanism's rule where it turns numeric property names into
834 strings in the identifier table, which is good because that's slow.
835 Also added a new property CustomHeader that allows IDL files to
836 introduce headers to be included -- useful when we have functions
837 that we want to inline into the binding.
838
839 * html/CanvasPixelArray.idl: Added CustomHeader attribute.
840
eric@webkit.org924a2d32008-09-23 07:04:11 +00008412008-09-23 Eric Seidel <eric@webkit.org>
842
843 No review, build fix only.
eric@webkit.org8d2a21a2008-09-23 07:23:14 +0000844
845 Another blind stab in the dark.
846
847 * svg/graphics/cg/SVGResourceClipperCg.cpp: Add missing header.
848
8492008-09-23 Eric Seidel <eric@webkit.org>
850
851 No review, build fix only.
eric@webkit.org924a2d32008-09-23 07:04:11 +0000852
853 Third time's the charm, eh? My local build is sadly still not done...
854
855 * platform/graphics/AffineTransform.cpp: remove extra &
856 * platform/graphics/AffineTransform.h: remove extra &
857
eric@webkit.orgf394f462008-09-23 06:38:10 +00008582008-09-22 Eric Seidel <eric@webkit.org>
859
860 No review, build fix only.
861
eric@webkit.orgf9212312008-09-23 06:47:51 +0000862 * platform/graphics/AffineTransform.cpp: remove extra ;
863
8642008-09-22 Eric Seidel <eric@webkit.org>
865
866 No review, build fix only.
867
eric@webkit.orgf394f462008-09-23 06:38:10 +0000868 Speculative fix for the build while I wait for my compile to finish.
869
870 * platform/graphics/AffineTransform.cpp:
871
eric@webkit.org10583212008-09-23 06:05:59 +00008722008-09-22 Dirk Schulze <vbs85@gmx.de>
873
874 Reviewed by eseidel. Landed by eseidel.
875
876 Moved makeMapBetweenRects from SVG/CG to AffineTransform
877 Make SVGResourceClipper::applyClip more cross-platform
878
879 * platform/graphics/AffineTransform.cpp:
880 * platform/graphics/AffineTransform.h:
881 * svg/graphics/cg/CgSupport.cpp:
882 * svg/graphics/cg/CgSupport.h:
883 * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
884 (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
885 * svg/graphics/cg/SVGResourceClipperCg.cpp:
886 (WebCore::SVGResourceClipper::applyClip):
887
alp@webkit.orgfaa63e42008-09-23 03:08:57 +00008882008-09-22 Alp Toker <alp@nuanti.com>
889
890 Reviewed by David Hyatt.
891
892 https://bugs.webkit.org/show_bug.cgi?id=16331
893 [Gtk] no focus when button/checkbox/radiobutton clicked, only when tabbed
894
895 Obey GTK+ focusing conventions for controls and anchor elements.
896
897 It could be interesting to push these decisions up to Settings or
898 ChromeClient some day but this gets things working.
899
900 Right and middle click events still need some work to match GTK+
901 conventions.
902
903 * html/HTMLAnchorElement.cpp:
904 (WebCore::HTMLAnchorElement::isMouseFocusable):
905 * html/HTMLFormControlElement.cpp:
906 (WebCore::HTMLFormControlElement::isMouseFocusable):
907 * page/EventHandler.cpp:
908 (WebCore::EventHandler::sendContextMenuEvent):
909
darin@apple.com4a266462008-09-23 01:24:31 +00009102008-09-22 Darin Adler <darin@apple.com>
911
912 * page/mac/FrameMac.mm:
913 (WebCore::Frame::baseWritingDirectionForSelectionStart): Fix indentation.
914
weinig@apple.comb6a39b72008-09-23 01:19:56 +00009152008-09-22 Sam Weinig <sam@webkit.org>
916
917 Reviewed by Dan Bernstein.
918
919 Patch for https://bugs.webkit.org/show_bug.cgi?id=21013
920 Match Firefox in how we hide HTMLInputElement.selectionStart, selectionEnd
921 and setSelectionRange. This also allows us to remove the legacy JSHTMLInputElementBase
922 class!
923
924 - selectionStart, selectionEnd and setSelectionRange now are visible in iteration of
925 non-selectable input types, but return undefined when accessed.
926
927 * DerivedSources.make:
928 * GNUmakefile.am:
929 * WebCore.pro:
930 * WebCore.vcproj/WebCore.vcproj:
931 * WebCore.xcodeproj/project.pbxproj:
932 * WebCoreSources.bkl:
933 * bindings/js/JSHTMLInputElementBase.cpp: Removed.
934 * bindings/js/JSHTMLInputElementBase.h: Removed.
935 * bindings/js/JSHTMLInputElementCustom.cpp: Added.
936 (WebCore::JSHTMLInputElement::customGetOwnPropertySlot):
937 (WebCore::JSHTMLInputElement::selectionStart):
938 (WebCore::JSHTMLInputElement::selectionEnd):
939 * bindings/js/JSHTMLInputElementCustom.h: Added.
940 * html/HTMLInputElement.idl:
941
mitz@apple.com895c54c2008-09-23 00:48:17 +00009422008-09-22 Dan Bernstein <mitz@apple.com>
943
944 Reviewed by Sam Weinig.
945
946 - fix <rdar://problem/5699571> Mail: Unable to change writing direction to LTR in an empty message
947
948 Not testable in DumpRenderTree or in Safari
949
950 * page/mac/FrameMac.mm:
951 (WebCore::Frame::baseWritingDirectionForSelectionStart): Account for the
952 case that the selection start node is a block.
953
hyatt@apple.com78083552008-09-22 22:17:40 +00009542008-09-22 David Hyatt <hyatt@apple.com>
955
956 https://bugs.webkit.org/show_bug.cgi?id=21007
957
958 Make sure that the scrollbar gets sent a release event on platforms that call handleMouseDoubleClickEvent.
959
960 Reviewed by Sam Weinig
961
962 * page/EventHandler.cpp:
963 (WebCore::EventHandler::handleMouseDoubleClickEvent):
964
eric@webkit.orgb57170b2008-09-22 21:44:28 +00009652008-09-22 Eric Seidel <eric@webkit.org>
966
967 No review, rollback only.
968
969 Roll out Peter's change (per his request)
970 http://trac.webkit.org/changeset/36069
971 https://bugs.webkit.org/show_bug.cgi?id=19663
972 This change has been the source of numerous regressions
973 (several of which were latent bugs revealed by this change,
974 others were bugs in this change)
975
976 * platform/graphics/BitmapImage.cpp:
977 (WebCore::BitmapImage::BitmapImage):
978 (WebCore::BitmapImage::startAnimation):
979 (WebCore::BitmapImage::advanceAnimation):
980 * platform/graphics/BitmapImage.h:
981 * platform/graphics/cairo/ImageCairo.cpp:
982 (WebCore::BitmapImage::draw):
983 * platform/graphics/cg/ImageCG.cpp:
984 (WebCore::BitmapImage::draw):
985 * platform/graphics/qt/ImageQt.cpp:
986 (WebCore::BitmapImage::draw):
987 * platform/graphics/wx/ImageWx.cpp:
988 (WebCore::BitmapImage::draw):
989
mitz@apple.comdc318202008-09-22 21:32:14 +00009902008-09-22 Dan Bernstein <mitz@apple.com>
991
992 Reviewed by Sam Weinig.
993
994 - fix <rdar://problem/5158514> Switch the complex text code path to Core Text
995
996 Tests: platform/mac-snowleopard/fast/text/myanmar-shaping.html
997 platform/mac-snowleopard/fast/text/thai-combining-mark-positioning.html
998
999 * config.h: Use Core Text if not building for Leopard or Tiger.
1000
hyatt@apple.com143e97c2008-09-22 21:03:02 +000010012008-09-22 David Hyatt <hyatt@apple.com>
1002
1003 https://bugs.webkit.org/show_bug.cgi?id=21006
1004
1005 Add code that paints an NSView-less scroller using HIThemeDrawTrack. This scrollbar is still not
1006 switched on. There are still a few more refinements to make to the rendering and behavior.
1007
1008 Reviewed by Darin Adler
1009
1010 * platform/ScrollbarThemeComposite.cpp:
1011 (WebCore::ScrollbarThemeComposite::paint):
1012 * platform/ScrollbarThemeComposite.h:
1013 (WebCore::ScrollbarThemeComposite::paintTrack):
1014 (WebCore::ScrollbarThemeComposite::paintButton):
1015 (WebCore::ScrollbarThemeComposite::paintThumb):
1016 * platform/mac/ScrollbarThemeMac.h:
1017 * platform/mac/ScrollbarThemeMac.mm:
1018 (WebCore::ScrollbarThemeMac::backButtonRect):
1019 (WebCore::ScrollbarThemeMac::forwardButtonRect):
1020 (WebCore::scrollbarPartToHIPressedState):
1021 (WebCore::ScrollbarThemeMac::paint):
1022 * platform/mac/WidgetMac.mm:
1023 (WebCore::Widget::invalidateRect):
1024
simon.fraser@apple.com0f83a512008-09-22 20:19:53 +000010252008-09-22 Chris Marrin <cmarrin@apple.com>
1026
1027 Reviewed by Sam Weinig
1028
1029 transition end event when -webkit-transition-property: all puts wrong
1030 propertyName in event
1031 https://bugs.webkit.org/show_bug.cgi?id=20903
1032
1033 * page/animation/ImplicitAnimation.cpp:
1034 (WebCore::ImplicitAnimation::sendTransitionEvent):
1035
cfleizach@apple.com70013042008-09-22 18:30:36 +000010362008-09-22 Chris Fleizach <cfleizach@apple.com>
1037
1038 Reviewed by Darin Adler.
1039
cfleizach@apple.comdebb8722008-09-22 18:47:16 +00001040 <rdar://problem/6230234> AXTable should probably not be exposed in there's only one cell
1041
1042 Test: accessibility/table-one-cell.html
1043
1044 * page/AccessibilityTable.cpp:
1045 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
1046
10472008-09-22 Chris Fleizach <cfleizach@apple.com>
1048
1049 Reviewed by Darin Adler.
1050
cfleizach@apple.com70013042008-09-22 18:30:36 +00001051 <rdar://problem/6167779> Setting AXSelectedTextRange for TextAreas in a WebView behaves incorrectly
1052
1053 Test: accessibility/textarea-selected-text-range.html
1054
1055 * page/AccessibilityRenderObject.cpp:
1056 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
1057
hyatt@apple.com4139b152008-09-22 18:21:37 +000010582008-09-22 David Hyatt <hyatt@apple.com>
1059
1060 Clean up some parent relationships in the back end stylesheet code. Make sure parentStyleSheet
1061 properly walks up nested rule blocks to reach the parent sheet instead of giving up at the immediate
1062 parent. Also fix the doc() method so that it is properly set when the parent of the sheet is an import
1063 rule.
1064
1065 Reviewed by Sam Weinig
1066
1067 Added fast/css/nested-rule-parent-sheet.html
1068
1069 * css/CSSImportRule.cpp:
1070 (WebCore::CSSImportRule::insertedIntoParent):
1071 * css/CSSRule.cpp:
1072 (WebCore::CSSRule::parentStyleSheet):
1073 (WebCore::CSSRule::parentRule):
1074 * css/CSSStyleSheet.cpp:
1075 (WebCore::CSSStyleSheet::CSSStyleSheet):
1076 * css/CSSStyleSheet.h:
1077
mitz@apple.comd409a262008-09-22 18:17:57 +000010782008-09-22 Dan Bernstein <mitz@apple.com>
1079
1080 Reviewed by Sam Weinig.
1081
1082 - fix https://bugs.webkit.org/show_bug.cgi?id=21002
1083 Make the ATSUI code path respect spacingDisabled()
1084
1085 Fixes svg/text/text-spacing-01-b.svg in run-webkit-tests --complex-text
1086
1087 * platform/graphics/mac/FontMacATSUI.mm:
1088 (WebCore::overrideLayoutOperation):
1089
mjs@apple.com221b4752008-09-22 15:03:52 +000010902008-09-22 Maciej Stachowiak <mjs@apple.com>
1091
1092 Reviewed by Cameron Zwarich.
1093
1094 - speed up instanceof operator by replacing implementsHasInstance method with a TypeInfo flag
1095
1096 Partial work towards <https://bugs.webkit.org/show_bug.cgi?id=20818>
1097
1098 2.2% speedup on EarleyBoyer benchmark.
1099
1100 * bindings/js/JSQuarantinedObjectWrapper.cpp:
1101 * bindings/js/JSQuarantinedObjectWrapper.h:
1102 (WebCore::JSQuarantinedObjectWrapper::createStructureID):
1103 * bindings/scripts/CodeGeneratorJS.pm:
1104
aroben@apple.comd5cbddc2008-09-22 14:31:08 +000011052008-09-22 Adam Roben <aroben@apple.com>
1106
1107 Windows build fix
1108
1109 * WebCore.vcproj/WebCore.vcproj: Add a missing </File> tag.
1110
mjs@apple.coma173abd2008-09-22 13:59:06 +000011112008-09-22 Maciej Stachowiak <mjs@apple.com>
1112
1113 Reviewed by Dave Hyatt.
1114
1115 Based on initial work by Darin Adler.
1116
1117 - replace masqueradesAsUndefined virtual method with a flag in TypeInfo
1118 - use this to JIT inline code for eq_null and neq_null
1119 https://bugs.webkit.org/show_bug.cgi?id=20823
1120
1121 * WebCore.xcodeproj/project.pbxproj:
1122 * WebCore.vcproj/WebCore.vcproj:
1123 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1124 (WebCore::JSCSSStyleDeclaration::nameGetter):
1125 * bindings/js/JSHTMLAllCollection.cpp: Added.
1126 (WebCore::):
1127 * bindings/js/JSHTMLAllCollection.h:
1128 (WebCore::JSHTMLAllCollection::createStructureID):
1129 (WebCore::JSHTMLAllCollection::toBoolean):
1130
vestbo@webkit.orgab848362008-09-22 13:27:06 +000011312008-09-22 Tor Arne Vestbø <tavestbo@trolltech.com>
1132
1133 Reviewed by Simon.
1134
1135 Fix the QtWebKit build
1136
1137 * bridge/qt/qt_instance.cpp:
1138 (JSC::Bindings::QtRuntimeObjectImp::construct):
1139 * bridge/qt/qt_runtime.cpp:
1140
alp@webkit.orgcc9b0812008-09-22 08:53:06 +000011412008-09-22 Alp Toker <alp@nuanti.com>
1142
1143 Suggested by David Hyatt.
1144
1145 Build fix: ScrollView::update() is still used by Document.cpp on !MAC
1146 so make it public.
1147
1148 * platform/ScrollView.h:
1149
hyatt@apple.com7cb18562008-09-22 07:57:52 +000011502008-09-22 David Hyatt <hyatt@apple.com>
1151
hyatt@apple.combac66582008-09-22 08:36:44 +00001152 Fix a regression in Windows scrollbar painting. (Also fix the same
1153 bug in my new viewless Mac scrollbar painting code). The track rect
1154 was being improperly inflated when painting resulting in the scrollbar
1155 being too tall and painting in the border of overflow sections.
1156
1157 Reviewed by Oliver Hunt
1158
1159 * platform/mac/ScrollbarThemeMac.mm:
1160 (WebCore::ScrollbarThemeMac::trackRect):
1161 * platform/win/ScrollbarThemeSafari.cpp:
1162 (WebCore::ScrollbarThemeSafari::trackRect):
1163
11642008-09-22 David Hyatt <hyatt@apple.com>
1165
hyatt@apple.com7cb18562008-09-22 07:57:52 +00001166 Fix a hit testing bug where events are mistakenly passed to subframes
1167 if the mouse is over the border or padding area of the frame. Add
1168 a boolean flag, isOverWidget(), to hit test results so that EventHandler
1169 can check it to tell if the mouse is really over the content box of a
1170 RenderWidget and not just in the border/padding area.
1171
1172 This is not testable, since the old code properly recovered when it detected
1173 that the mouse was outside the bounds of the view, but this prevents
1174 the extra passdown from even occurring (and is basically a nice cleanup).
1175
1176 Reviewed by Oliver Hunt
1177
1178 * page/EventHandler.cpp:
1179 (WebCore::EventHandler::handleMousePressEvent):
1180 (WebCore::EventHandler::hitTestResultAtPoint):
1181 (WebCore::subframeForHitTestResult):
1182 (WebCore::EventHandler::handleMouseDoubleClickEvent):
1183 (WebCore::EventHandler::handleMouseMoveEvent):
1184 (WebCore::EventHandler::handleMouseReleaseEvent):
1185 (WebCore::EventHandler::handleWheelEvent):
1186 * page/MouseEventWithHitTestResults.h:
1187 (WebCore::MouseEventWithHitTestResults::isOverWidget):
1188 * rendering/HitTestResult.cpp:
1189 (WebCore::HitTestResult::HitTestResult):
1190 (WebCore::HitTestResult::operator=):
1191 * rendering/HitTestResult.h:
1192 (WebCore::HitTestResult::isOverWidget):
1193 (WebCore::HitTestResult::setIsOverWidget):
1194 * rendering/RenderWidget.cpp:
1195 (WebCore::RenderWidget::nodeAtPoint):
1196 * rendering/RenderWidget.h:
1197
hyatt@apple.comb2bf5272008-09-22 05:54:40 +000011982008-09-21 David Hyatt <hyatt@apple.com>
1199
1200 Rename FrameView's repaintRectangle method to repaintContentRectangle. Make
1201 both it and ScrollView's updateContents method be off-limits to everyone in
1202 WebCore except for RenderView.
1203
1204 Make repaintViewRectangle the only possible method for WebCore code to do
1205 an invalidation. This ensures that all invalidates triggered by WebCore
1206 cross-platform code that cross ownerElement() boundaries are transform-aware.
1207
1208 Make sure that iframes/frames contained inside objects that have transforms
1209 or reflections are not allowed to blit (this was already true for transparency).
1210
1211 It is not possible to make a test for any of this, since iframe scrolling
1212 still doesn't work on Mac (since the invalidates are not being done
1213 through WebCore's cross-platform invalidation code but are instead going
1214 through NSScrollView's setNeedsDisplay still).
1215
1216 Reviewed by Oliver Hunt
1217
1218 * editing/SelectionController.cpp:
1219 (WebCore::SelectionController::recomputeCaretRect):
1220 (WebCore::SelectionController::invalidateCaretRect):
1221 (WebCore::SelectionController::focusedOrActiveStateChanged):
1222 * page/FrameView.cpp:
1223 (WebCore::FrameView::repaintContentRectangle):
1224 (WebCore::FrameView::endDeferredRepaints):
1225 * page/FrameView.h:
1226 * platform/ScrollView.h:
1227 * rendering/RenderBox.cpp:
1228 (WebCore::RenderBox::paintFillLayerExtended):
1229 * rendering/RenderLayer.cpp:
1230 (WebCore::RenderLayer::enclosingPositionedAncestor):
1231 (WebCore::RenderLayer::requiresSlowRepaints):
1232 * rendering/RenderLayer.h:
1233 (WebCore::RenderLayer::hasTransform):
1234 * rendering/RenderView.cpp:
1235 (WebCore::RenderView::paintBoxDecorations):
1236 (WebCore::RenderView::repaintViewRectangle):
1237 (WebCore::RenderView::setSelection):
1238
mjs@apple.com52b67602008-09-22 03:15:52 +000012392008-09-21 Maciej Stachowiak <mjs@apple.com>
1240
1241 Reviewed by Darin.
1242
1243 - introduce a TypeInfo class, for holding per-type (in the C++ class sense) date in StructureID
1244 https://bugs.webkit.org/show_bug.cgi?id=20981
1245
1246 * bindings/js/JSAudioConstructor.cpp:
1247 (WebCore::JSAudioConstructor::JSAudioConstructor):
1248 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1249 (WebCore::JSCSSStyleDeclaration::nameGetter):
1250 * bindings/js/JSDOMBinding.cpp:
1251 (WebCore::createDOMStructure):
1252 * bindings/js/JSDOMBinding.h:
1253 (WebCore::getDOMStructure):
1254 * bindings/js/JSDOMWindowShell.cpp:
1255 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
1256 (WebCore::JSDOMWindowShell::setWindow):
1257 * bindings/js/JSEventTargetNode.cpp:
1258 (WebCore::JSEventTargetNode::createPrototype):
1259 * bindings/js/JSHTMLOptionElementConstructor.cpp:
1260 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
1261 * bindings/js/JSImageConstructor.cpp:
1262 (WebCore::JSImageConstructor::JSImageConstructor):
1263 * bindings/js/JSXMLHttpRequestConstructor.cpp:
1264 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
1265 * bindings/js/JSXSLTProcessorConstructor.cpp:
1266 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
1267 * bindings/scripts/CodeGeneratorJS.pm:
1268
darin@apple.comad89d662008-09-22 02:12:57 +000012692008-09-21 Darin Adler <darin@apple.com>
1270
1271 Reviewed by Maciej Stachowiak.
1272
1273 - fix problem Maciej noticed where every JSNamedNodesCollection
1274 gets its own StructureID
1275
1276 * bindings/js/JSNamedNodesCollection.cpp:
1277 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Use
1278 getDOMStructure to get the structure.
1279 * bindings/js/JSNamedNodesCollection.h:
1280 (WebCore::JSNamedNodesCollection::createPrototype): Return the
1281 object prototype.
1282
hyatt@apple.com1f2ad1e2008-09-22 00:33:19 +000012832008-09-20 David Hyatt <hyatt@apple.com>
1284
1285 Make sure transformed scrollbars in overflow sections position
1286 properly. This patch mimics the same behavior that works for
1287 iframes, namely making sure that the same code that dynamically
1288 adjusts iframe widget positions at paint time for fixed positioning
1289 and transforms also applies to scrollbars. (This is as simple as passing
1290 in the current translation factor at paint time rather than crawling
1291 up the layer tree to compute a "false" absolute position.)
1292
1293 An existing transform test covers this (although only a pixel result
1294 reveals the correct rendering).
1295
1296 Reviewed by Darin Adler
1297
1298 * rendering/RenderLayer.cpp:
1299 (WebCore::RenderLayer::updateLayerPositions):
1300 (WebCore::RenderLayer::positionOverflowControls):
1301 (WebCore::RenderLayer::paintOverflowControls):
1302 (WebCore::RenderLayer::paintLayer):
1303 * rendering/RenderLayer.h:
1304
sfalken@apple.comd0274692008-09-22 00:08:30 +000013052008-09-21 Steve Falkenburg <sfalken@apple.com>
1306
sfalken@apple.com4fe10f92008-09-22 00:12:28 +00001307 Removed unnecessary nested timer check.
1308
1309 Rubber-stamped by Dan Bernstein.
1310
1311 * platform/win/SharedTimerWin.cpp:
1312 (WebCore::TimerWindowWndProc):
1313
13142008-09-21 Steve Falkenburg <sfalken@apple.com>
1315
sfalken@apple.comd0274692008-09-22 00:08:30 +00001316 Improve timer resolution on WinXP.
1317 https://bugs.webkit.org/show_bug.cgi?id=20979
1318
1319 Removed last-chance timer. It should not be necessary.
1320 Change timeEndPeriod timer to fire in 300ms instead of 20ms. Calling timeBeginPeriod/timeEndPeriod too often throws off accuracy.
1321 Remove Vista checks. We now run the same code on both XP and Vista.
1322
1323 Call through to JSC::getCurrentUTCTimeWithMicroseconds from WebCore::currentTime.
1324 The code previously called GetSystemTimeAsFileTime, which is always low-resolution on XP, even within timeBeginPeriod(1).
1325
1326 Reviewed by Maciej Stachowiak.
1327
1328 * platform/win/SharedTimerWin.cpp:
1329 (WebCore::):
1330 (WebCore::TimerWindowWndProc):
1331 (WebCore::setSharedTimerFireTime):
1332 * platform/win/SystemTimeWin.cpp:
1333 (WebCore::currentTime):
1334
eric@webkit.org3e96c482008-09-21 07:59:58 +000013352008-09-21 Dirk Schulze <vbs85@gmx.de>
1336
1337 Reviewed by eseidel. Landed by eseidel.
1338
eric@webkit.orgc3431282008-09-21 10:37:37 +00001339 All platforms use the DashArray in the GraphicsContext.
1340
1341 * svg/graphics/SVGPaintServer.h:
1342 * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
1343 (WebCore::SVGPaintServerGradient::setup):
1344 * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
1345 (WebCore::SVGPaintServerPattern::setup):
1346 * svg/graphics/cairo/SVGPaintServerSolidCairo.cpp:
1347 (WebCore::SVGPaintServerSolid::setup):
1348 * svg/graphics/qt/SVGPaintServerGradientQt.cpp:
1349 (WebCore::SVGPaintServerGradient::setup):
1350 * svg/graphics/qt/SVGPaintServerQt.cpp:
1351 * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
1352 (WebCore::SVGPaintServerSolid::setup):
1353
13542008-09-21 Dirk Schulze <vbs85@gmx.de>
1355
1356 Reviewed by eseidel. Landed by eseidel.
1357
eric@webkit.org3e96c482008-09-21 07:59:58 +00001358 Moved DashArray to GraphicsContext.
1359
1360 * GNUmakefile.am:
1361 * WebCore.vcproj/WebCore.vcproj:
1362 * WebCore.xcodeproj/project.pbxproj:
1363 * platform/graphics/DashArray.h: Added.
1364 * platform/graphics/GraphicsContext.h:
1365 * platform/graphics/cairo/GraphicsContextCairo.cpp:
1366 (WebCore::GraphicsContext::setLineDash):
1367 * platform/graphics/cg/GraphicsContextCG.cpp:
1368 (WebCore::GraphicsContext::setLineDash):
1369 * platform/graphics/qt/GraphicsContextQt.cpp:
1370 (WebCore::GraphicsContext::setLineDash):
1371 * svg/graphics/SVGPaintServer.cpp:
1372 (WebCore::applyStrokeStyleToContext):
1373 * svg/graphics/SVGPaintServer.h:
1374 * svg/graphics/cg/CgSupport.cpp:
1375 * svg/graphics/cg/CgSupport.h:
1376
mitz@apple.com9138eca2008-09-21 07:16:29 +000013772008-09-21 Dan Bernstein <mitz@apple.com>
1378
1379 Reviewed by Mark Rowe.
1380
1381 - fix linker warnings
1382
1383 * WebCore.base.exp:
1384
darin@apple.comb1491772008-09-21 06:34:40 +000013852008-09-20 Darin Adler <darin@apple.com>
1386
darin@apple.comc3215132008-09-21 06:50:35 +00001387 - another try at fixing Qt
1388
1389 * bridge/qt/qt_runtime.cpp: "using namespce WebCore"
1390
13912008-09-20 Darin Adler <darin@apple.com>
1392
darin@apple.comb1491772008-09-21 06:34:40 +00001393 - blind attempt to fix Qt build
1394
1395 * bridge/qt/qt_runtime.cpp:
1396 (JSC::Bindings::convertQVariantToValue): Use regExpStructure instead
1397 of regExpPrototype to make a RegExpObject. There should really be
1398 some sort of public helper function for this. Same thing for
1399 DateInstance and dateStructure. For JSObject, use constructEmptyObject.
1400 (JSC::Bindings::):
1401 (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod): Use getDOMStructure.
1402 It is not correct to do this inside the constructor because it could
1403 cause a garbage collect while the QtRuntimeMethod object is half-
1404 allocated, which could lead to a crash; note that RuntimeMethod,
1405 QtRuntimeObjectImp, and RuntimeObjectImp have the same bug.
1406 * bridge/qt/qt_runtime.h: Add s_info and createPrototype.
1407
collinj@webkit.org8e01a432008-09-21 06:26:54 +000014082008-09-20 Collin Jackson <collinj@webkit.org>
1409
1410 Prefetch DNS for hyperlinks that the user mouses over.
1411
1412 https://bugs.webkit.org/show_bug.cgi?id=20931
1413
1414 Reviewed by Sam Weinig.
1415
1416 * page/Chrome.cpp:
1417 (WebCore::Chrome::mouseDidMoveOverElement):
1418
darin@apple.com8281d832008-09-21 02:29:12 +000014192008-09-20 Darin Adler <darin@apple.com>
1420
1421 Reviewed by Maciej Stachowiak.
1422
1423 - finish https://bugs.webkit.org/show_bug.cgi?id=20858
1424 make each distinct C++ class get a distinct JSC::Structure
1425
1426 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1427 (WebCore::JSCSSStyleDeclaration::nameGetter): Pass in a structure
1428 ID. Note that this makes a new structure every time -- we could
1429 optimize this slightly be caching and reusing a single one.
1430
1431 * bridge/runtime_method.cpp:
1432 (JSC::RuntimeMethod::RuntimeMethod): Create a unique structure using
1433 getDOMStructure.
1434 * bridge/runtime_method.h:
1435 (JSC::RuntimeMethod::createPrototype): Added createPrototype so
1436 getDOMStructure will work.
1437
1438 * bindings/js/JSDOMWindowShell.cpp:
1439 (WebCore::JSDOMWindowShell::JSDOMWindowShell): Initialize m_window to
1440 0; needed in case garbage collection happens while creating the
1441 JSDOMWindow.
1442
mitz@apple.com9b3ac792008-09-21 00:42:30 +000014432008-09-20 Dan Bernstein <mitz@apple.com>
1444
mitz@apple.comf674f4f2008-09-21 00:49:49 +00001445 Reviewed by Eric Seidel.
1446
1447 - fix https://bugs.webkit.org/show_bug.cgi?id=20950
mitz@apple.comc3dfbac2008-09-21 00:52:41 +00001448 <rdar://problem/6234059> Reproducible assertion failure running svg/custom/acid3-test-77.html multiple times under guard malloc
mitz@apple.comf674f4f2008-09-21 00:49:49 +00001449
1450 * svg/SVGTextContentElement.cpp:
1451 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback): Changed to
1452 not include the first character in the extraCharsAvailable count.
1453
kevino@webkit.org2bc0d822008-09-20 22:31:24 +000014542008-09-20 Kevin Ollivier <kevino@theolliviers.com>
1455
kevino@webkit.orge66435f2008-09-20 23:39:25 +00001456 Reviewed by Dan Bernstein.
1457
1458 Fix memory leak.
kevino@webkit.org6f86cbb2008-09-20 23:56:57 +00001459
1460 https://bugs.webkit.org/show_bug.cgi?id=20505
kevino@webkit.orge66435f2008-09-20 23:39:25 +00001461
1462 * platform/wx/wxcode/mac/carbon/fontprops.cpp:
1463 (GetTextExtent):
1464
14652008-09-20 Kevin Ollivier <kevino@theolliviers.com>
1466
kevino@webkit.org2bc0d822008-09-20 22:31:24 +00001467 wx build fixes. Added/removed build sources, and nativeWindow->platformWidget updates.
1468
1469 * WebCoreSources.bkl:
1470 * platform/ScrollView.h:
1471 * platform/wx/PopupMenuWx.cpp:
1472 (WebCore::PopupMenu::show):
1473 * platform/wx/RenderThemeWx.cpp:
1474 (WebCore::RenderThemeWx::paintButton):
1475 (WebCore::RenderThemeWx::paintTextField):
1476 (WebCore::RenderThemeWx::paintMenuList):
1477 (WebCore::RenderThemeWx::paintMenuListButton):
1478 * platform/wx/ScrollViewWx.cpp:
1479 (WebCore::ScrollView::setPlatformWidget):
1480 (WebCore::ScrollView::updateContents):
1481 (WebCore::ScrollView::update):
1482 (WebCore::ScrollView::visibleWidth):
1483 (WebCore::ScrollView::visibleHeight):
1484 (WebCore::ScrollView::scrollBy):
1485 (WebCore::ScrollView::resizeContents):
1486 (WebCore::ScrollView::contentsWidth):
1487 (WebCore::ScrollView::contentsHeight):
1488 (WebCore::ScrollView::isScrollViewScrollbar):
1489 (WebCore::ScrollView::adjustScrollbars):
1490 (WebCore::ScrollView::inWindow):
1491 (WebCore::ScrollView::removeChild):
1492 * platform/wx/WidgetWx.cpp:
1493 * plugins/wx/PluginViewWx.cpp:
1494 (WebCore::PluginView::setParentVisible):
1495 (WebCore::PluginView::updatePluginWidget):
1496
timothy@apple.comb697f272008-09-20 22:21:59 +000014972008-09-20 Timothy Hatcher <timothy@apple.com>
1498
1499 Fix the new Node Search button image to not be blurry.
1500
1501 * page/inspector/Images/nodeSearchButtons.png:
1502
pewtermoose@webkit.org4cc99202008-09-20 21:30:43 +000015032008-09-20 Matt Lilek <webkit@mattlilek.com>
1504
1505 Reviewed by Tim Hatcher.
1506
pewtermoose@webkit.orge1fc4462008-09-20 21:53:43 +00001507 Cut down some of the inspector javascript -> InspectorController glue code
1508 with two new macros. Also rearrange the exposed function list to be grouped
1509 by implementation and to all explicitly use the WebCore namespace.
1510
1511 * page/InspectorController.cpp:
1512 (WebCore::InspectorController::windowScriptObjectAvailable):
1513
15142008-09-20 Matt Lilek <webkit@mattlilek.com>
1515
1516 Reviewed by Tim Hatcher.
1517
pewtermoose@webkit.org4cc99202008-09-20 21:30:43 +00001518 Fix regression from my previous patch where the breadcrumbs bar was not displayed.
1519
1520 * page/inspector/inspector.css:
1521
zimmermann@webkit.org953b7442008-09-20 20:19:45 +000015222008-09-20 Nikolas Zimmermann <zimmermann@kde.org>
1523
1524 Reviewed by Eric.
1525
1526 Refactor HTMLImageLoader/SVGImageLoader code.
1527 Move html/HTMLImageLoader.* to loader/ImageLoader.*
1528
1529 Let HTMLImageLoader & SVGImageLoader inherit from the new base class.
1530 SVGImageLoader used to inherit from HTMLImageLoader which is awkward.
1531
1532 * GNUmakefile.am:
1533 * WebCore.pro:
1534 * WebCore.vcproj/WebCore.vcproj:
1535 * WebCore.xcodeproj/project.pbxproj:
1536 * WebCoreSources.bkl:
1537 * dom/Document.cpp:
1538 (WebCore::Document::dispatchImageLoadEventSoon):
1539 (WebCore::Document::removeImage):
1540 (WebCore::Document::dispatchImageLoadEventsNow):
1541 * dom/Document.h:
1542 * html/HTMLImageLoader.cpp:
1543 (WebCore::HTMLImageLoader::HTMLImageLoader):
1544 (WebCore::HTMLImageLoader::~HTMLImageLoader):
1545 (WebCore::HTMLImageLoader::sourceURI):
1546 (WebCore::HTMLImageLoader::notifyFinished):
1547 * html/HTMLImageLoader.h:
1548 * loader/DocLoader.h:
1549 * loader/ImageLoader.cpp: Copied from html/HTMLImageLoader.cpp.
1550 (WebCore::ImageLoader::ImageLoader):
1551 (WebCore::ImageLoader::~ImageLoader):
1552 (WebCore::ImageLoader::setImage):
1553 (WebCore::ImageLoader::setLoadingImage):
1554 (WebCore::ImageLoader::updateFromElement):
1555 (WebCore::ImageLoader::notifyFinished):
1556 * loader/ImageLoader.h: Copied from html/HTMLImageLoader.h.
1557 * svg/SVGImageElement.cpp:
1558 (WebCore::SVGImageElement::attach):
1559 (WebCore::SVGImageElement::insertedIntoDocument):
1560 (WebCore::SVGImageElement::imageSourceAttributeName):
1561 * svg/SVGImageElement.h:
1562 * svg/SVGImageLoader.cpp:
1563 (WebCore::SVGImageLoader::SVGImageLoader):
1564 (WebCore::SVGImageLoader::dispatchLoadEvent):
1565 (WebCore::SVGImageLoader::sourceURI):
1566 * svg/SVGImageLoader.h:
1567
zecke@webkit.orgf3834492008-09-20 14:23:55 +000015682008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
1569
zecke@webkit.org7a15a532008-09-20 14:24:27 +00001570 Build fix.
1571
zecke@webkit.orga832cca2008-09-20 14:24:45 +00001572 [qtwebkit] ScrollBar build fix after r36684.
1573 BackButtonPart was split into Start and End Part
1574 ForwardButtonPart was split into Start and End Part
1575
zecke@webkit.orga832cca2008-09-20 14:24:45 +00001576 * platform/qt/ScrollbarThemeQt.cpp:
1577 (WebCore::scPart):
1578 (WebCore::scrollbarPart):
1579 (WebCore::styleOptionSlider):
1580
15812008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
1582
1583 Build fix.
1584
zecke@webkit.org7a15a532008-09-20 14:24:27 +00001585 [qtwebkit] Make qt_instance.cpp compile.
1586 Revision of 36675 introduced getDOMStructure to give unique
1587 structure id's to C++ classes. Catch up. RuntimeObjectImp assigns
1588 the the StructureID inside the c'tor, do the same in QtRuntimeObjectImp
1589
1590 * bridge/qt/qt_instance.cpp:
1591 (JSC::Bindings::QtInstance::getRuntimeObject):
1592
15932008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
1594
zecke@webkit.orgf3834492008-09-20 14:23:55 +00001595 Reviewed by Nikolas Zimmermann.
1596
zecke@webkit.org95ff1412008-09-20 14:24:10 +00001597 [svg] Change SVGLocatable to deal with a plain SVGElement
1598 There is no requirement in the code that we have to have a
1599 SVGStyledElement. Remove that artificial limitation and compile
1600 with SVGElement.
1601
1602 * svg/SVGLocatable.cpp:
1603 * svg/SVGLocatable.h:
1604
16052008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
1606
1607 Reviewed by Nikolas Zimmermann.
1608
zecke@webkit.orgf3834492008-09-20 14:23:55 +00001609 [svg] Use OwnPtr for the SVGExtensions to avoid custom lifetime
1610 management.
1611
1612 * dom/Document.cpp:
1613 (WebCore::Document::~Document):
1614 (WebCore::Document::svgExtensions):
1615 (WebCore::Document::accessSVGExtensions):
1616 * dom/Document.h:
1617
hyatt@apple.com02bbc2c2008-09-20 04:50:21 +000016182008-09-19 David Hyatt <hyatt@apple.com>
1619
hyatt@apple.com1fe09172008-09-20 05:09:44 +00001620 Fix for crash in updateTransitions. Make sure to test for a style
1621 being null when comparing two RenderStyles.
1622
1623 Reviewed by Oliver Hunt
1624
1625 * page/animation/AnimationBase.cpp:
1626 (WebCore::PropertyWrapperGetter::equals):
1627
16282008-09-19 David Hyatt <hyatt@apple.com>
1629
hyatt@apple.com02bbc2c2008-09-20 04:50:21 +00001630 https://bugs.webkit.org/show_bug.cgi?id=20954
1631
1632 Roll out r36628 since it has caused horrible regressions with
1633 animated GIF CPU usage.
1634
1635 * platform/graphics/BitmapImage.cpp:
1636 (WebCore::BitmapImage::cacheFrame):
1637 (WebCore::BitmapImage::startAnimation):
1638 * platform/graphics/BitmapImage.h:
1639 (WebCore::FrameData::FrameData):
1640 * platform/graphics/cairo/ImageCairo.cpp:
1641 (WebCore::FrameData::clear):
1642 * platform/graphics/cg/ImageCG.cpp:
1643 (WebCore::FrameData::clear):
1644 * platform/graphics/qt/ImageQt.cpp:
1645 (WebCore::FrameData::clear):
1646 * platform/graphics/wx/ImageWx.cpp:
1647 (WebCore::FrameData::clear):
1648
alp@webkit.orgd1e860e2008-09-20 03:43:42 +000016492008-09-20 Alp Toker <alp@nuanti.com>
1650
1651 Reviewed by Timothy Hatcher.
1652
1653 https://bugs.webkit.org/show_bug.cgi?id=20913
1654 Avoid redudant includes
1655
1656 Document.h is included excessively such that a modification to Document.h (or
1657 any of the header it includes itself) triggers a rebuild of many files
1658 including the whole of SVG and a lot of the JS bindings.
1659
1660 Some of these includes can be avoided by only including Document.h where
1661 necessary.
1662
1663 * bindings/js/JSAttrCustom.cpp:
1664 * bindings/js/JSElementCustom.cpp:
1665 * bindings/js/JSEventTargetBase.cpp:
1666 * bindings/js/JSEventTargetBase.h:
1667 * bindings/js/JSEventTargetNode.cpp:
1668 * bindings/js/JSHTMLFrameElementCustom.cpp:
1669 * bindings/js/JSHTMLIFrameElementCustom.cpp:
1670 * bindings/scripts/CodeGeneratorJS.pm:
1671 * css/CSSCursorImageValue.cpp:
1672 * css/SVGCSSStyleSelector.cpp:
1673 * dom/make_names.pl:
1674 * svg/SVGAnimateElement.h:
1675 * svg/SVGAnimatedProperty.h:
1676 (WebCore::::baseValue):
1677 (WebCore::::setBaseValue):
1678 (WebCore::::startAnimation):
1679 (WebCore::::stopAnimation):
1680 * svg/SVGElement.cpp:
1681 (WebCore::SVGElement::accessDocumentSVGExtensions):
1682 * svg/SVGElement.h:
1683 * svg/SVGElementInstance.cpp:
1684 * svg/SVGFitToViewBox.cpp:
1685 * svg/SVGFontElement.cpp:
1686 * svg/SVGFontFaceElement.cpp:
1687 * svg/SVGLinearGradientElement.cpp:
1688 * svg/SVGMPathElement.cpp:
1689 * svg/SVGViewSpec.cpp:
1690
zimmermann@webkit.org50e33c72008-09-20 03:33:43 +000016912008-09-19 Nikolas Zimmermann <zimmermann@kde.org>
1692
1693 Reviewed by Antti & Eric.
1694
1695 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
1696
1697 Finish HTMLScriptElement / SVGScriptElement unification.
1698 SVG <script> support is complete now, full SVGLoad event
1699 respecting the influence of the externalResourcesRequired attribute
1700 as well as SVGError event support. All other features shared with HTML.
1701
1702 Tests: fast/dom/HTMLScriptElement/script-reexecution.html
1703 svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg
1704 svg/dom/SVGScriptElement/script-load-and-error-events.svg
1705 svg/dom/SVGScriptElement/script-reexecution.svg
1706 svg/dom/SVGScriptElement/script-set-href.svg
1707
1708 * dom/ScriptElement.cpp:
1709 (WebCore::ScriptElementData::ScriptElementData):
1710 (WebCore::ScriptElementData::requestScript):
1711 * dom/ScriptElement.h:
1712 (WebCore::ScriptElementData::haveFiredLoadEvent):
1713 (WebCore::ScriptElementData::setHaveFiredLoadEvent):
1714 * dom/XMLTokenizer.cpp:
1715 (WebCore::XMLTokenizer::notifyFinished):
1716 * html/HTMLScriptElement.cpp:
1717 (WebCore::HTMLScriptElement::dispatchLoadEvent):
1718 * svg/SVGScriptElement.cpp:
1719 (WebCore::SVGScriptElement::setCreatedByParser):
1720 (WebCore::SVGScriptElement::parseMappedAttribute):
1721 (WebCore::SVGScriptElement::svgAttributeChanged):
1722 (WebCore::SVGScriptElement::insertedIntoDocument):
1723 (WebCore::SVGScriptElement::removedFromDocument):
1724 (WebCore::SVGScriptElement::childrenChanged):
1725 (WebCore::SVGScriptElement::isURLAttribute):
1726 (WebCore::SVGScriptElement::finishParsingChildren):
1727 (WebCore::SVGScriptElement::type):
1728 (WebCore::SVGScriptElement::setType):
1729 (WebCore::SVGScriptElement::haveLoadedRequiredResources):
1730 (WebCore::SVGScriptElement::dispatchLoadEvent):
1731 (WebCore::SVGScriptElement::dispatchErrorEvent):
1732 * svg/SVGScriptElement.h:
1733
mitz@apple.comc7b24ea2008-09-20 03:23:22 +000017342008-09-19 Dan Bernstein <mitz@apple.com>
1735
1736 Reviewed by John Sullivan.
1737
1738 - fix https://bugs.webkit.org/show_bug.cgi?id=20951
1739 Typo in Position::getInlineBoxAndOffset()
1740 and add an assertion
1741
1742 Without the fix, the newly-added assertion fails in platform/mac/editing/input/caret-primary-bidi.html
1743
1744 * dom/Position.cpp:
1745 (WebCore::Position::getInlineBoxAndOffset):
1746 * rendering/InlineTextBox.cpp:
1747 (WebCore::InlineTextBox::positionForOffset):
1748
hyatt@apple.comd48dbf32008-09-20 03:21:14 +000017492008-09-19 David Hyatt <hyatt@apple.com>
1750
1751 Add support for hit testing of all five possible scrollbar button placements.
1752
1753 Reviewed by Sam Weinig
1754
1755 * platform/ScrollbarThemeComposite.cpp:
1756 (WebCore::ScrollbarThemeComposite::paint):
1757 * platform/mac/ScrollbarThemeMac.mm:
1758 (WebCore::):
1759 (WebCore::ScrollbarThemeMac::backButtonRect):
1760 (WebCore::ScrollbarThemeMac::forwardButtonRect):
1761 (WebCore::ScrollbarThemeMac::trackRect):
1762 (WebCore::ScrollbarThemeMac::paintButton):
1763
darin@apple.com1c4cd8f2008-09-20 01:05:35 +000017642008-09-19 Darin Adler <darin@apple.com>
1765
1766 - try to fix Qt build
1767
1768 * bridge/qt/qt_instance.cpp:
1769 (JSC::Bindings::QtRuntimeObjectImp::QtRuntimeObjectImp): Add structure argument.
1770 (JSC::Bindings::QtInstance::getRuntimeObject): Ditto.
1771 * bridge/runtime_object.cpp:
1772 (JSC::RuntimeObjectImp::RuntimeObjectImp): Add an overload just for Qt.
1773 * bridge/runtime_object.h: Ditto.
1774
dino@apple.com7c236592008-09-20 00:53:49 +000017752008-09-19 Chris Marrin <cmarrin@apple.com>
1776
1777 Reviewed by Dave Hyatt.
1778
1779 Transition starts running when it shouldn't
1780 https://bugs.webkit.org/show_bug.cgi?id=20892
1781
1782 When there is a transition and an animation on the
1783 same element, make sure the animation wins.
1784
1785 The fix is to save the unanimated style when an animation is started.
1786 Then, when starting a transition, check to see if there is a current
1787 animation on the same prop. If so, use the unanimated style as the
1788 fromStyle rather than the current style.
1789
1790 Test: animations/transition-and-animation-1.html
1791
1792 * page/animation/CompositeAnimation.cpp:
1793 (WebCore::CompositeAnimation::updateTransitions):
1794 (WebCore::CompositeAnimation::updateKeyframeAnimations):
1795 (WebCore::CompositeAnimation::animate):
1796 (WebCore::CompositeAnimation::getAnimationForProperty):
1797 * page/animation/CompositeAnimation.h:
1798 * page/animation/ImplicitAnimation.cpp:
1799 (WebCore::ImplicitAnimation::reset):
1800 * page/animation/ImplicitAnimation.h:
1801 * page/animation/KeyframeAnimation.cpp:
1802 (WebCore::KeyframeAnimation::hasAnimationForProperty):
1803 * page/animation/KeyframeAnimation.h:
1804 (WebCore::KeyframeAnimation::KeyframeAnimation):
1805 (WebCore::KeyframeAnimation::unanimatedStyle):
1806
hyatt@apple.comea254e22008-09-20 00:42:36 +000018072008-09-19 David Hyatt <hyatt@apple.com>
1808
1809 Add support for painting/hit testing of four possible scrollbar buttons.
1810 The Windows themes simply ignore the two parts that they will never
1811 show. The Mac theme also ignores the other two buttons for now.
1812
1813 The cross-platform base for all three themes, ScrollbarThemeComposite,
1814 has all the proper support though.
1815
1816 Reviewed by Sam Weinig
1817
1818 * platform/ScrollbarThemeComposite.cpp:
1819 (WebCore::ScrollbarThemeComposite::hitTest):
1820 (WebCore::ScrollbarThemeComposite::invalidatePart):
1821 * platform/ScrollbarThemeComposite.h:
1822 * platform/mac/ScrollbarThemeMac.h:
1823 * platform/mac/ScrollbarThemeMac.mm:
1824 (WebCore::ScrollbarThemeMac::backButtonRect):
1825 (WebCore::ScrollbarThemeMac::forwardButtonRect):
1826 (WebCore::ScrollbarThemeMac::paintButton):
1827 * platform/win/ScrollbarThemeSafari.cpp:
1828 (WebCore::ScrollbarThemeSafari::backButtonRect):
1829 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
1830 (WebCore::ScrollbarThemeSafari::paintButton):
1831 * platform/win/ScrollbarThemeSafari.h:
1832 * platform/win/ScrollbarThemeWin.cpp:
1833 (WebCore::ScrollbarThemeWin::backButtonRect):
1834 (WebCore::ScrollbarThemeWin::forwardButtonRect):
1835 (WebCore::ScrollbarThemeWin::paintButton):
1836 * platform/win/ScrollbarThemeWin.h:
1837
pewtermoose@webkit.org0e3da6e2008-09-20 00:11:32 +000018382008-09-19 Matt Lilek <webkit@mattlilek.com>
1839
1840 Reviewed by Tim Hatcher.
1841
1842 Bug 17772: Inspector should support point-and-click to select a node to inspect
1843 https://bugs.webkit.org/show_bug.cgi?id=17772
1844 <rdar://problem/5792395>
1845
1846 * English.lproj/localizedStrings.js:
1847 * page/Chrome.cpp:
1848 (WebCore::Chrome::mouseDidMoveOverElement):
1849 * page/EventHandler.cpp:
1850 (WebCore::EventHandler::handleMousePressEvent):
1851 * page/InspectorController.cpp:
1852 (WebCore::toggleNodeSearch):
1853 (WebCore::searchingForNode):
1854 (WebCore::InspectorController::InspectorController):
1855 (WebCore::InspectorController::toggleSearchForNodeInPage):
1856 (WebCore::InspectorController::mouseDidMoveOverElement):
1857 (WebCore::InspectorController::handleMousePressOnNode):
1858 (WebCore::InspectorController::windowScriptObjectAvailable):
1859 * page/InspectorController.h:
1860 (WebCore::InspectorController::searchingForNodeInPage):
1861 * page/inspector/ElementsPanel.js:
1862 * page/inspector/Images/nodeSearchButtons.png: Added.
1863 * page/inspector/inspector.css:
1864
hyatt@apple.com57b2d522008-09-19 23:39:26 +000018652008-09-19 David Hyatt <hyatt@apple.com>
1866
1867 Add new scrollbar parts to be able to represent back and forward buttons
1868 at either end of the scrollbar. The current scrollbar still just draws
1869 a single button at either end, but the parts now exist.
1870
1871 Reviewed by Sam Weinig
1872
1873 * platform/ScrollTypes.h:
1874 (WebCore::):
1875 * platform/Scrollbar.cpp:
1876 (WebCore::Scrollbar::autoscrollTimerFired):
1877 (WebCore::Scrollbar::pressedPartScrollDirection):
1878 (WebCore::Scrollbar::pressedPartScrollGranularity):
1879 (WebCore::Scrollbar::handleMouseMoveEvent):
1880 * platform/ScrollbarTheme.h:
1881 (WebCore::ScrollbarTheme::buttonsPlacement):
1882 (WebCore::ScrollbarTheme::invalidateParts):
1883 * platform/ScrollbarThemeComposite.cpp:
1884 (WebCore::ScrollbarThemeComposite::paint):
1885 (WebCore::ScrollbarThemeComposite::hitTest):
1886 (WebCore::ScrollbarThemeComposite::invalidatePart):
1887 * platform/ScrollbarThemeComposite.h:
1888
bdakin@apple.com5b0a3b22008-09-19 23:02:03 +000018892008-09-19 Beth Dakin <bdakin@apple.com>
1890
1891 Reviewed by Dave Hyatt.
1892
1893 Fix for <rdar://problem/6231308> crash in AutoTableLayout
1894
1895 The code assumes later on that a TableSection's grid's row vector
1896 will never be empty. So make 1 the minimum number of columns.
1897
1898 * rendering/RenderTableSection.cpp:
1899 (WebCore::RenderTableSection::ensureRows):
1900
hyatt@apple.comaf711ec2008-09-19 22:55:56 +000019012008-09-19 David Hyatt <hyatt@apple.com>
1902
1903 Add a new ScrollbarButtonsPlacement type for specifying where
1904 the button arrows are in a scrollbar.
1905
1906 Read in the placement settings for Mac. Nothing is done with the
1907 setting yet.
1908
1909 Add a new buttonsPlacement() method to ScrollbarTheme composite
1910 so that the arrow settings can be obtained.
1911
1912 Reviewed by Sam Weinig
1913
1914 * platform/ScrollTypes.h:
1915 (WebCore::):
1916 * platform/ScrollbarThemeComposite.h:
1917 (WebCore::ScrollbarThemeComposite::buttonsPlacement):
1918 * platform/mac/ScrollbarThemeMac.mm:
1919 (WebCore::updateArrowPlacement):
1920 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
1921
sfalken@apple.com64602042008-09-19 22:47:45 +000019222008-09-19 Steve Falkenburg <sfalken@apple.com>
1923
1924 Roll out r36626. It is causing variance in SunSpider numbers on XP.
1925
1926 Rubber stamped by Mark Rowe.
1927
1928 * platform/win/SharedTimerWin.cpp:
1929 (WebCore::isRunningOnVistaOrLater):
1930 (WebCore::setSharedTimerFireTime):
1931
kmccullough@apple.comd203b242008-09-19 21:56:14 +000019322008-09-19 Kevin McCullough <kmccullough@apple.com>
1933
1934 Reviewed by Tim.
1935
1936 https://bugs.webkit.org/show_bug.cgi?id=20942
1937 Bug 20942: Repeated messages in resources don't collapse
1938 - Now repeated messages in a resource's view are collapsed and a message
1939 says how many were repeated.
1940
1941 * English.lproj/localizedStrings.js:
1942 * manual-tests/inspector/multiple-console-messages.html:
1943 * page/inspector/Console.js: Send all the messages to the resource's
1944 view before possibly returning early if the message is a repeat.
1945 * page/inspector/SourceFrame.js: Add the text about the message being
1946 repeated, if it is, and increment it when necessary.
1947
cfleizach@apple.com0abaacc2008-09-19 21:39:21 +000019482008-09-19 Chris Fleizach <cfleizach@apple.com>
1949
1950 Removed unnecessary #if
1951
1952 * page/mac/AccessibilityObjectWrapper.mm:
1953
hyatt@apple.comc9967ce92008-09-19 21:20:59 +000019542008-09-19 David Hyatt <hyatt@apple.com>
1955
hyatt@apple.comf658e502008-09-19 22:12:07 +00001956 Read in prefs for the scroll delay repeat values for buttons. Also
1957 honor the option-click pref for jumping to the thumb when clicking in
1958 the track.
1959
1960 Reviewed by Sam Weinig
1961
1962 * platform/mac/ScrollbarThemeMac.h:
1963 * platform/mac/ScrollbarThemeMac.mm:
1964 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
1965 (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
1966 (WebCore::ScrollbarThemeMac::autoscrollTimerDelay):
1967 (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
1968
19692008-09-19 David Hyatt <hyatt@apple.com>
1970
hyatt@apple.comc9967ce92008-09-19 21:20:59 +00001971 Move ScrollbarThemeMac.cpp to ScrollbarThemeMac.mm so it can use Obj-C.
1972 Set the initial button repeat delay to 0.5 for Mac.
1973
1974 Reviewed by Sam Weinig
1975
1976 * WebCore.xcodeproj/project.pbxproj:
1977 * platform/mac/ScrollbarThemeMac.cpp: Removed.
1978 * platform/mac/ScrollbarThemeMac.h:
1979 (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
1980 * platform/mac/ScrollbarThemeMac.mm: Copied from platform/mac/ScrollbarThemeMac.cpp.
1981
darin@apple.com39a180f2008-09-19 21:15:14 +000019822008-09-19 Darin Adler <darin@apple.com>
1983
1984 Reviewed by Sam Weinig.
1985
1986 - part 2 of https://bugs.webkit.org/show_bug.cgi?id=20858
1987 make each distinct C++ class get a distinct JSC::Structure
1988
1989 + Fixed all cases where we were using a shared structure for multiple
1990 C++ classes in WebCore. This still has to be done in JavaScriptCore.
1991
1992 + Got rid of cacheGlobalObject.
1993
1994 + Improved use of PassRefPtr in bindings code.
1995
1996 + Removed a couple cases where we were potentially allocating prototypes
1997 inside a JSObject's construction process -- this can lead to trouble if
1998 we do a garbage collection while an object is only partly constructed.
1999
2000 * bindings/js/JSAudioConstructor.cpp:
2001 (WebCore::JSAudioConstructor::JSAudioConstructor): Create a structure explicitly
2002 so we don't implicitly share the structure with other objects that use the object
2003 prototype.
2004
2005 * bindings/js/JSDOMBinding.cpp:
2006 (WebCore::getCachedDOMConstructor): Added. To be used for constructors so we
2007 don't need cacheGlobalObject any more.
2008 (WebCore::cacheDOMConstructor): Ditto.
2009
2010 * bindings/js/JSDOMBinding.h: Removed DOMObject constructor that takes a prototype.
2011 Added functions and a function template for getting cached DOM constructors.
2012 Removed cacheGlobalObject function template.
2013
2014 * bindings/js/JSDOMWindowBase.cpp:
2015 (WebCore::JSDOMWindowBase::JSDOMWindowBase): Take a PassRefPtr<DOMWindow> since
2016 we're taking ownership.
2017 * bindings/js/JSDOMWindowBase.h: Changed constructor to take PassRefPtr, since
2018 we're taking ownership. Added constructor map.
2019 * bindings/js/JSDOMWindowCustom.cpp:
2020 (WebCore::JSDOMWindow::mark): Mark the constructors in the map.
2021
2022 * bindings/js/JSDOMWindowShell.cpp:
2023 (WebCore::JSDOMWindowShell::JSDOMWindowShell): Take a PassRefPtr<DOMWindow> since
2024 we're taking ownership. Use the new setWindow function to create the JSDOMWindow;
2025 this is now done in only that one place.
2026 (WebCore::JSDOMWindowShell::setWindow): Added. Creates the JSDOMWindow based on
2027 the passed-in DOMWindow. Code was moved here and changed to allocate unique
2028 structures for both the window prototype and the window.
2029 * bindings/js/JSDOMWindowShell.h: Ditto.
2030
2031 * bindings/js/JSEventTargetBase.h: Changed class template argument so it doesn't
2032 have the same name (JSEventTarget) as an actual class. Removed unhelpful use of
2033 private/friend in JSEventTargetBase. Removed comments referring to defunct
2034 macros. Changed JSEventTargetBasePrototype to get the prototype with the new
2035 rather than its own copy of cacheGlobalObject (I missed this during pass 1).
2036 Changed JSEventTargetBasePrototype so it doesn't have so many template arguments.
2037
2038 * bindings/js/JSEventTargetNode.cpp: Added s_info; needed for the new scheme
2039 for caching structures and prototypes.
2040 (WebCore::JSEventTargetNode::JSEventTargetNode): Use PassRefPtr.
2041 (WebCore::JSEventTargetNode::createPrototype): Added.
2042 * bindings/js/JSEventTargetNode.h: Updated for above changes.
2043
2044 * bindings/js/JSHTMLAllCollection.h:
2045 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Use PassRefPtr.
2046 * bindings/js/JSHTMLCollectionCustom.cpp:
2047 (WebCore::getNamedItems): Pass ExecState instead of prototype.
2048 * bindings/js/JSHTMLFormElementCustom.cpp:
2049 (WebCore::JSHTMLFormElement::nameGetter): Ditto.
2050 * bindings/js/JSHTMLInputElementBase.cpp:
2051 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Use PassRefPtr.
2052 * bindings/js/JSHTMLInputElementBase.h: Ditto.
2053 * bindings/js/JSHTMLOptionElementConstructor.cpp:
2054 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
2055 Create a unique structure instead of sharing.
2056 * bindings/js/JSImageConstructor.cpp:
2057 (WebCore::JSImageConstructor::JSImageConstructor): Ditto.
2058
2059 * bindings/js/JSInspectedObjectWrapper.cpp:
2060 (WebCore::JSInspectedObjectWrapper::wrap): Removed overload that takes
2061 a prototype rather than a structure. Made the use of inheritorID() here
2062 explicit.
2063 * bindings/js/JSInspectedObjectWrapper.h: Ditto.
2064 * bindings/js/JSInspectorCallbackWrapper.cpp:
2065 (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
2066 * bindings/js/JSInspectorCallbackWrapper.h: Ditto.
2067
2068 * bindings/js/JSNamedNodesCollection.cpp:
2069 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Changed to
2070 take an ExecState argument instead of a prototype. Create a unique
2071 StructureID instead of sharing.
2072 * bindings/js/JSNamedNodesCollection.h: Ditto.
2073
2074 * bindings/js/JSQuarantinedObjectWrapper.cpp: Removed overloaded
2075 constructor that takes a prototype instead of a structure.
2076 * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.
2077
2078 * bindings/js/JSRGBColor.cpp:
2079 (WebCore::JSRGBColor::JSRGBColor): Take ExecState instead of a
2080 prototype; create a unique structure.
2081 (WebCore::getJSRGBColor): Ditto.
2082 * bindings/js/JSRGBColor.h: Ditto.
2083
2084 * bindings/js/JSSQLResultSetRowListCustom.cpp:
2085 (WebCore::JSSQLResultSetRowList::item): Use constructEmptyObject instead
2086 of explicit coding the idiom for making a new object.
2087
2088 * bindings/js/JSXMLHttpRequestConstructor.cpp:
2089 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
2090 Create a unique structure instead of the shared one.
2091 * bindings/js/JSXSLTProcessorConstructor.cpp:
2092 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
2093 Ditto.
2094
2095 * bindings/js/ScriptController.cpp:
2096 (WebCore::ScriptController::clearWindowShell): Let the window shell's
2097 setWindow function create the JSDOMWindow instead of doing it here.
2098
2099 * bindings/scripts/CodeGeneratorJS.pm: Changed to use PassRefPtr for
2100 the structure and the wrapped object when creating wrappers.
2101 Simplified some of the special cases for DOMWindow so they are
2102 different only in ways the need to be. Eliminated the
2103 JSDOMWindow::createPrototype and JSDOMWindowPrototype::self
2104 functions. Moved responsibility for creating the structure and
2105 parent prototype out of the prototype constructor into the
2106 createPrototype function. Removed the unused "DoNotCache" flag for
2107 objects other than DOMWindow. Use getDOMConstructor instead of
2108 cacheGlobalObject for constructors. Make each constructor have
2109 a unique structure ID.
2110
2111 * bridge/objc/objc_runtime.h: Added createPrototype and changed the
2112 name of the info member to s_info so we can use the standard DOM
2113 binding macros to handl the prototype.
2114 * bridge/objc/objc_runtime.mm: Fixed namespacing a bit.
2115 (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
2116 Create a unique structure using getDOMStructure.
2117
2118 * bridge/runtime_array.cpp: Fixed namespacing a bit.
2119 (JSC::RuntimeArray::RuntimeArray): Create a unique structure using
2120 getDOMStructure.
2121 * bridge/runtime_array.h: Added createPrototype so getDOMStructure
2122 will work.
2123
2124 * bridge/runtime_object.cpp:
2125 (JSC::RuntimeObjectImp::RuntimeObjectImp): Create a unique structure using
2126 getDOMStructure.
2127 * bridge/runtime_object.h: Added createPrototype so getDOMStructure
2128 will work.
2129
2130 * history/CachedPage.cpp:
2131 (WebCore::CachedPage::restore): Let the window shell's
2132 setWindow function create the JSDOMWindow instead of doing it here.
2133
2134 * page/DOMWindow.idl: Removed DoNotCache, which is no longer used.
2135
mitz@apple.comd6b74252008-09-19 21:02:55 +000021362008-09-19 Dan Bernstein <mitz@apple.com>
2137
2138 Reviewed by Dave Hyatt.
2139
2140 This optimization was suggested by Daniel Fenwick
2141
2142 - speed up measuring text on the Core Text code path by not specifying a paragraph writing direction
2143
2144 Specifying LTR paragraph directionality when measuring runs of RTL text
mitz@apple.com308acec2008-09-19 21:10:48 +00002145 resulted in typically two CTRuns being generated for every run instead
mitz@apple.comd6b74252008-09-19 21:02:55 +00002146 of one, due to the leading space being reordered to the left.
2147
2148 * platform/graphics/SimpleFontData.h: Removed the ltr parameter to
2149 getCFStringAttributes() and changed m_CFStringAttributes from an array
2150 to a single value.
2151 * platform/graphics/mac/CoreTextController.cpp:
2152 (WebCore::CoreTextController::CoreTextController): Added a
2153 mayUseNaturalWritingDirection parameter.
2154 (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Changed
2155 to force the bidi embedding level whenever
2156 m_mayUseNaturalWritingDirectrion is false. Since this is now a common
2157 case, made the typesetter options dictionaries static.
2158 * platform/graphics/mac/CoreTextController.h:
2159 * platform/graphics/mac/FontMacCoreText.cpp:
2160 (WebCore::Font::selectionRectForComplexText): Renamed a local variable.
2161 (WebCore::Font::floatWidthForComplexText): Changed to allow the
2162 CoreTextController to not set the writing direction.
2163 * platform/graphics/mac/SimpleFontDataMac.mm:
2164 (WebCore::SimpleFontData::getCFStringAttributes): Removed the ltr
2165 parameter and the paragraph style attribute.
2166
hyatt@apple.com2d7bdf72008-09-19 20:54:33 +000021672008-09-19 David Hyatt <hyatt@apple.com>
2168
2169 Reviewed by Sam Weinig
2170
2171 https://bugs.webkit.org/show_bug.cgi?id=20941
2172
2173 Incorrect height calculation for replaced element inside nested
2174 positioned elements (where the inner has a percentage height and
2175 the outer implicitly has a fixed height because of explicit top/bottom
2176 values).
2177
2178 Added fast/block/positioning/replaced-inside-top-bottom.html
2179
2180 * rendering/RenderBox.cpp:
2181 (WebCore::RenderBox::availableHeightUsing):
2182
cfleizach@apple.com37bd8d72008-09-19 20:48:57 +000021832008-09-19 Chris Fleizach <cfleizach@apple.com>
2184
2185 Fix Tiger bustage
2186
2187 * page/mac/AccessibilityObjectWrapper.mm:
2188
cfleizach@apple.com63b88ab2008-09-19 20:24:48 +000021892008-09-18 Chris Fleizach <cfleizach@apple.com>
2190
2191 Reviewed by Darin Adler.
2192
2193 <rdar://problem/6211041> Expose legend tag in accessibility
2194
2195 Exposes the legend tag as the titleUIElement of a fieldset
2196
2197 Test: accessibility/legend.html
2198
2199 * page/AccessibilityObject.h:
2200 (WebCore::AccessibilityObject::isFieldset):
2201 * page/AccessibilityRenderObject.cpp:
2202 (WebCore::AccessibilityRenderObject::isFieldset):
2203 (WebCore::AccessibilityRenderObject::titleUIElement):
2204 * page/AccessibilityRenderObject.h:
2205 * rendering/RenderFieldset.h:
2206
cfleizach@apple.comcff26212008-09-19 20:04:13 +000022072008-09-19 Chris Fleizach <cfleizach@apple.com>
2208
2209 Reviewed by Darin Adler.
2210
2211 <rdar://problem/6213171> WebKit should use new array-centric methods for AX performance
2212
2213 Implement a few AX API methods that will be called by AppKit, which will
2214 speed up access to accessibility objects
2215
2216 * page/mac/AccessibilityObjectWrapper.mm:
2217 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
2218 (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
2219 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
2220
zecke@webkit.org7594eb62008-09-19 11:06:55 +000022212008-09-19 Holger Hans Peter Freyther <zecke@selfish.org>
2222
2223 Reviewed by Simon Hausmann.
2224
zecke@webkit.org3df68032008-09-19 11:43:27 +00002225 [qtwebkit] Set the m_should* flags to their proper value on entry
2226 With plugins it was possible that we finished a job twice. This was
2227 some kind of reentrancy in QNetworkReplyHandler::sendQueuedItems. By
2228 setting the flag to (m_loadMode == LoadDeferred) they will always have
2229 the right value and we will not send responses twice.
2230
2231 * platform/network/qt/QNetworkReplyHandler.cpp:
2232
22332008-09-19 Holger Hans Peter Freyther <zecke@selfish.org>
2234
2235 Reviewed by Simon Hausmann.
2236
zecke@webkit.org7594eb62008-09-19 11:06:55 +00002237 [qtwebkit] Pass test 70 of acid3. Handle text decoding errors
2238 Handle text decoding errors before instructing the parser to parse. We
2239 have converted the text to QString and all encoding errors are gone and
2240 the parser will not be able to detect them. So handle them before parsing.
2241
2242 * dom/XMLTokenizerQt.cpp:
2243 (WebCore::XMLTokenizer::doWrite):
2244
darin@apple.comc9aea832008-09-19 06:49:35 +000022452008-09-18 Darin Adler <darin@apple.com>
2246
2247 Reviewed by Maciej Stachowiak.
2248
2249 - part 1 of https://bugs.webkit.org/show_bug.cgi?id=20858
2250 make each distinct C++ class get a distinct JSC::Structure
2251
2252 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2253 (WebCore::JSCSSStyleDeclaration::customPut): Use setDOMException
2254 instead of DOMExceptionTranslator.
2255
2256 * bindings/js/JSDOMBinding.cpp:
2257 (WebCore::getCachedDOMObjectWrapper): Updated function name.
2258 (WebCore::cacheDOMObjectWrapper): Ditto.
2259 (WebCore::forgetDOMObject): Ditto.
2260 (WebCore::getCachedDOMNodeWrapper): Ditto.
2261 (WebCore::forgetDOMNode): Ditto.
2262 (WebCore::cacheDOMNodeWrapper): Ditto.
2263 (WebCore::forgetAllDOMNodesForDocument): Ditto.
2264 (WebCore::markDOMNodesForDocument): Ditto.
2265 (WebCore::updateDOMNodeDocument): Ditto.
2266 (WebCore::getCachedDOMStructure): Added.
2267 (WebCore::createDOMStructure): Ditto.
2268
2269 * bindings/js/JSDOMBinding.h: Get rid of the ScriptInterpreter
2270 class and replace the static member functions with non-member
2271 functions. Added many other functions for getting at structures,
2272 prototypes, wrappers, and creating them. Also moved the
2273 cacheGlobalObject function here from JavaScriptCore; eventually
2274 I'll remove that once I get rid of the remaining callers. Also
2275 removed the DOMExceptionTranslator class.
2276
2277 * bindings/js/JSDOMWindowBase.h: Added JSDOMStructureMap type,
2278 and put one of those maps in each window.
2279
2280 * bindings/js/JSDOMWindowCustom.cpp:
2281 (WebCore::markDOMObjectWrapper): Updated for function name change.
2282 (WebCore::JSDOMWindow::mark): Added code to mark all the structures
2283 in the structure map.
2284
2285 * bindings/js/JSEventTargetNode.cpp:
2286 (WebCore::JSEventTargetNode::JSEventTargetNode): Changed to take
2287 a structure instead of a prototype.
2288 * bindings/js/JSEventTargetNode.h: Ditto.
2289 * bindings/js/JSHTMLAllCollection.h:
2290 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Ditto.
2291
2292 * bindings/js/JSHTMLInputElementBase.cpp:
2293 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Removed
2294 use of the JSC_IMPLEMENT_PROTOTYPE macro, and changed to take a
2295 structure instead of a prototype.
2296 * bindings/js/JSHTMLInputElementBase.h: Removed use of the
2297 JSC_DEFINE_PROTOTYPE_WITH_PROTOTYPE macro, and changed constructor
2298 to take a structure instead of a prototype. Created a dummy prototype
2299 class that causes the HTMLInputElement prototype to have the
2300 HTMLElement prototype.
2301
2302 * bindings/scripts/CodeGeneratorJS.pm: Change constructors to take
2303 structures instead of prototypes. Changed the prototype self function
2304 to use the getDOMPrototype function -- later we can eliminate it and
2305 have callers invoke getDOMPrototype directly instead. Updated other
2306 functions that have name changes. Added code to generate the
2307 createPrototype member function. Changed use of cacheGlobalObject to
2308 get it from the WebCore namespace instead of the JSC namespace.
2309 Changed cacheDOMObject calls to use getDOMObjectWrapper instead.
2310
2311 * dom/Document.cpp:
2312 (WebCore::Document::~Document): Updated for name change and also
2313 removed unnecessary JSLock use -- there's no need to lock around this.
2314 * dom/Node.cpp:
2315 (WebCore::Node::setDocument): Ditto.
2316
2317 * dom/make_names.pl: Changed to use CREATE_DOM_NODE_WRAPPER macro
2318 instead of calling new directly.
2319
2320 * bindings/js/JSCSSRuleCustom.cpp:
2321 (WebCore::toJS): Updated for function name changes and used the
2322 CREATE_DOM_OBJECT_WRAPPER macro.
2323 * bindings/js/JSCSSValueCustom.cpp:
2324 (WebCore::toJS): Ditto.
2325 * bindings/js/JSCanvasPixelArrayCustom.cpp:
2326 (WebCore::toJS): Ditto.
2327 * bindings/js/JSDocumentCustom.cpp:
2328 (WebCore::JSDocument::mark): Ditto.
2329 (WebCore::toJS): Ditto.
2330 * bindings/js/JSElementCustom.cpp:
2331 (WebCore::toJSNewlyCreated): Ditto.
2332 * bindings/js/JSEventCustom.cpp:
2333 (WebCore::toJS): Ditto.
2334 * bindings/js/JSEventTargetBase.cpp:
2335 (WebCore::jsEventTargetDispatchEvent): Use setDOMException instead
2336 of DOMExceptionTranslator.
2337 (WebCore::toJS): Updated for function name changes and used the
2338 CREATE_DOM_OBJECT_WRAPPER macro.
2339 * bindings/js/JSHTMLCollectionCustom.cpp:
2340 (WebCore::toJS): Ditto.
2341 * bindings/js/JSNodeCustom.cpp:
2342 (WebCore::JSNode::mark): Ditto.
2343 (WebCore::createWrapper): Ditto.
2344 (WebCore::toJS): Ditto.
2345 * bindings/js/JSSVGPathSegCustom.cpp:
2346 (WebCore::toJS): Ditto.
2347 * bindings/js/JSStyleSheetCustom.cpp:
2348 (WebCore::toJS): Ditto.
2349 (WebCore::JSStyleSheet::mark): Ditto.
2350 * bindings/js/JSTextCustom.cpp:
2351 (WebCore::toJSNewlyCreated): Ditto.
2352 * bindings/js/JSXMLHttpRequestConstructor.cpp:
2353 (WebCore::constructXMLHttpRequest): Ditto.
2354 * bindings/js/JSXMLHttpRequestCustom.cpp:
2355 (WebCore::JSXMLHttpRequest::mark): Ditto.
2356 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2357 (WebCore::JSXMLHttpRequestUpload::mark): Ditto.
2358 * bindings/js/JSXSLTProcessorConstructor.cpp:
2359 (WebCore::constructXSLTProcessor): Ditto.
2360 * bindings/js/ScriptController.cpp:
2361 (WebCore::ScriptController::finishedWithEvent): Ditto.
2362 * xml/XMLHttpRequest.cpp:
2363 (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
2364 (WebCore::XMLHttpRequest::dropProtection): Ditto.
2365
hyatt@apple.com083539d2008-09-19 06:30:16 +000023662008-09-18 David Hyatt <hyatt@apple.com>
2367
2368 This patch gets a viewless scrollbar working on Mac. It is turned off
2369 by default. Hit testing works. For now the scrollbar just paints ugly
2370 debug rects in the place of the buttons, track and thumb. It does match
2371 Aqua metrics though.
2372
2373 Reviewed by Sam Weinig
2374
2375 * WebCore.xcodeproj/project.pbxproj:
2376 * page/mac/EventHandlerMac.mm:
2377 (WebCore::EventHandler::passMousePressEventToScrollbar):
2378 * platform/ScrollbarThemeComposite.cpp:
2379 (WebCore::ScrollbarThemeComposite::paint):
2380 (WebCore::ScrollbarThemeComposite::trackPosition):
2381 * platform/ScrollbarThemeComposite.h:
2382 * platform/mac/ScrollViewMac.mm:
2383 (WebCore::ScrollView::addChild):
2384 * platform/mac/ScrollbarThemeMac.cpp:
2385 (WebCore::):
2386 (WebCore::ScrollbarThemeMac::hasButtons):
2387 (WebCore::ScrollbarThemeMac::hasThumb):
2388 (WebCore::buttonRepaintRect):
2389 (WebCore::ScrollbarThemeMac::backButtonRect):
2390 (WebCore::ScrollbarThemeMac::forwardButtonRect):
2391 (WebCore::trackRepaintRect):
2392 (WebCore::ScrollbarThemeMac::trackRect):
2393 (WebCore::ScrollbarThemeMac::minimumThumbLength):
2394 (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
2395 (WebCore::ScrollbarThemeMac::paintTrack):
2396 (WebCore::ScrollbarThemeMac::paintButton):
2397 (WebCore::ScrollbarThemeMac::paintThumb):
2398 * platform/mac/ScrollbarThemeMac.h:
2399 (WebCore::ScrollbarThemeMac::supportsControlTints):
2400 * platform/qt/ScrollbarThemeQt.cpp:
2401 (WebCore::ScrollbarThemeQt::trackPosition):
2402
collinj@webkit.org51261aa2008-09-19 06:13:22 +000024032008-09-18 Collin Jackson <collinj@webkit.org>
2404
2405 Build fix; added missing header file to GNUmakefile.am
2406
2407 * GNUmakefile.am:
2408
weinig@apple.com39aecbe2008-09-19 04:56:21 +000024092008-09-18 Sam Weinig <sam@webkit.org>
2410
2411 Reviewed by David "the Hair" Hyatt.
2412
2413 Move DataRef, SVGRenderStyle and SVGRenderStyleDefs in render/style.
2414
2415 * GNUmakefile.am:
2416 * WebCore.pro:
2417 * WebCore.vcproj/WebCore.vcproj:
2418 * WebCore.xcodeproj/project.pbxproj:
2419 * rendering/DataRef.h: Removed.
2420 * rendering/SVGRenderStyle.cpp: Removed.
2421 * rendering/SVGRenderStyle.h: Removed.
2422 * rendering/SVGRenderStyleDefs.cpp: Removed.
2423 * rendering/SVGRenderStyleDefs.h: Removed.
2424 * rendering/style/DataRef.h: Copied from rendering/DataRef.h.
2425 * rendering/style/SVGRenderStyle.cpp: Copied from rendering/SVGRenderStyle.cpp.
2426 * rendering/style/SVGRenderStyle.h: Copied from rendering/SVGRenderStyle.h.
2427 * rendering/style/SVGRenderStyleDefs.cpp: Copied from rendering/SVGRenderStyleDefs.cpp.
2428 * rendering/style/SVGRenderStyleDefs.h: Copied from rendering/SVGRenderStyleDefs.h.
2429
mrowe@apple.coma5206592008-09-19 04:47:58 +000024302008-09-18 Mark Rowe <mrowe@apple.com>
2431
2432 Reviewed by Dan Bernstein.
2433
2434 Add a means of clearing a FrameTree's name.
2435
2436 * WebCore.base.exp:
2437 * page/FrameTree.cpp:
2438 (WebCore::FrameTree::clearName):
2439 * page/FrameTree.h:
2440
hyatt@apple.com6eeef382008-09-19 04:30:53 +000024412008-09-18 David Hyatt <hyatt@apple.com>
2442
2443 Eliminate addToSuperview from Widget, since it was only called
2444 by ScrollViewMac's addChild method. Just shift the original body
2445 of addToSuperView into addChild.
2446
2447 Reviewed by Sam Weinig
2448
2449 * platform/Widget.h:
2450 * platform/mac/ScrollViewMac.mm:
2451 (WebCore::ScrollView::addChild):
2452 * platform/mac/WidgetMac.mm:
2453
collinj@webkit.org9c672f62008-09-19 04:15:14 +000024542008-09-18 Collin Jackson <collinj@webkit.org>
2455
2456 Reviewed by Antti Koivisto and Mark Rowe.
2457
2458 Test: http/tests/misc/dns-prefetch-control.html
2459
2460 https://bugs.webkit.org/show_bug.cgi?id=20690
2461
2462 Invoke WebCore::prefetchDNS() on host names that appear in
2463 in the href of hyperlinks and <link rel="dns-prefetch">. This
2464 can be used to implement DNS prefetching.
2465
2466 * WebCore.vcproj/WebCore.vcproj:
2467 * WebCore.xcodeproj/project.pbxproj:
2468 * dom/Document.cpp:
2469 (WebCore::Document::Document):
2470 (WebCore::Document::processHttpEquiv):
2471 (WebCore::Document::setSecurityOrigin):
2472 (WebCore::Document::initDNSPrefetch):
2473 (WebCore::Document::parseDNSPrefetchControlHeader):
2474 * dom/Document.h:
2475 (WebCore::Document::isDNSPrefetchEnabled):
2476 * html/HTMLAnchorElement.cpp:
2477 (WebCore::HTMLAnchorElement::parseMappedAttribute):
2478 * html/HTMLLinkElement.cpp:
2479 (WebCore::HTMLLinkElement::HTMLLinkElement):
2480 (WebCore::HTMLLinkElement::parseMappedAttribute):
2481 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
2482 (WebCore::HTMLLinkElement::process):
2483 * html/HTMLLinkElement.h:
2484 * html/PreloadScanner.cpp:
2485 (WebCore::PreloadScanner::processAttribute):
2486 * loader/FrameLoader.cpp:
2487 (WebCore::FrameLoader::begin):
2488 * platform/gtk/TemporaryLinkStubs.cpp:
2489 (WebCore::prefetchDNS):
2490 * platform/network/DNS.h: Added.
2491 * platform/network/cf/DNSCFNet.cpp: Added.
2492 (WebCore::prefetchDNS):
2493 * platform/qt/TemporaryLinkStubs.cpp:
2494 (WebCore::prefetchDNS):
2495 * platform/wx/TemporaryLinkStubs.cpp:
2496 (WebCore::prefetchDNS):
2497
hyatt@apple.comc5b931a2008-09-19 00:39:51 +000024982008-09-18 David Hyatt <hyatt@apple.com>
2499
hyatt@apple.comcf31c162008-09-19 04:01:56 +00002500 Eliminate the convertToScreenCoordinate method on Widget, since
2501 ScrollView has redundant methods that already do the same thing.
2502
2503 Reviewed by Sam Weinig
2504
2505 * editing/mac/SelectionControllerMac.mm:
2506 (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
2507 * platform/Widget.h:
2508 * platform/mac/WidgetMac.mm:
2509 (WebCore::Widget::containingWindow):
2510
25112008-09-18 David Hyatt <hyatt@apple.com>
2512
hyatt@apple.com179629b3c2008-09-19 03:16:26 +00002513 Move to only one constructor for Widgets. Rename data to m_data and make
2514 it have an #ifdef only for platforms that have platform-specific data (Mac
2515 and Gtk).
2516
2517 Reviewed by Sam Weinig
2518
2519 * WebCore.base.exp:
2520 * platform/Widget.cpp:
2521 (WebCore::Widget::init):
2522 * platform/Widget.h:
2523 * platform/gtk/WidgetGtk.cpp:
2524 (WebCore::Widget::Widget):
2525 (WebCore::Widget::~Widget):
2526 (WebCore::Widget::cursor):
2527 (WebCore::Widget::setCursor):
2528 * platform/mac/WidgetMac.mm:
2529 (WebCore::Widget::Widget):
2530 (WebCore::Widget::~Widget):
2531 (WebCore::Widget::addToSuperview):
2532 (WebCore::Widget::removeFromSuperview):
2533 (WebCore::Widget::beforeMouseDown):
2534 (WebCore::Widget::afterMouseDown):
2535 * platform/qt/WidgetQt.cpp:
2536 (WebCore::Widget::Widget):
2537 * platform/win/WidgetWin.cpp:
2538 (WebCore::Widget::Widget):
2539 * platform/wx/WidgetWx.cpp:
2540 (WebCore::Widget::Widget):
2541
25422008-09-18 David Hyatt <hyatt@apple.com>
2543
hyatt@apple.com470d7e72008-09-19 03:01:08 +00002544 Move Qt's isNPAPIPlugin boolean from Widget down to PluginView, since there
2545 was no reason for it to be on Widget. This change eliminates Qt ifdefs
2546 from Widget.
2547
2548 Reviewed by Sam Weinig
2549
2550 * bindings/js/ScriptControllerQt.cpp:
2551 (WebCore::ScriptController::createScriptInstanceForWidget):
2552 * platform/qt/WidgetQt.cpp:
2553 (WebCore::WidgetPrivate::WidgetPrivate):
2554 (WebCore::WidgetPrivate::~WidgetPrivate):
2555 (WebCore::Widget::Widget):
2556 (WebCore::Widget::~Widget):
2557 * plugins/PluginView.cpp:
2558 (WebCore::PluginView::PluginView):
2559 * plugins/PluginView.h:
2560 (WebCore::PluginView::isNPAPIPlugin):
2561 (WebCore::PluginView::setIsNPAPIPlugin):
2562
25632008-09-18 David Hyatt <hyatt@apple.com>
2564
hyatt@apple.com557408b2008-09-19 02:36:08 +00002565 Make geometryChanged() cross-platform on Widget. GTK and WIN platform
2566 ifdefs are now gone from Widget!
2567
2568 Reviewed by Sam Weinig
2569
2570 * platform/Widget.h:
2571 (WebCore::Widget::geometryChanged):
2572 * platform/gtk/WidgetGtk.cpp:
2573 * platform/qt/WidgetQt.cpp:
2574
25752008-09-18 David Hyatt <hyatt@apple.com>
2576
hyatt@apple.com17e57432008-09-19 02:29:27 +00002577 Consolidate convertTo/FromContainingWindow methods so that all platforms
2578 but Mac share the same code.
2579
2580 Move convertSelfToChild and convertChildToSelf to ScrollView, since
2581 Widget should know nothing about children. Make the methods cross-platform
2582 on ScrollView.
2583
2584 Reviewed by Sam Weinig
2585
2586 * platform/ScrollView.h:
2587 (WebCore::ScrollView::convertChildToSelf):
2588 (WebCore::ScrollView::convertSelfToChild):
2589 * platform/Widget.cpp:
2590 (WebCore::Widget::convertToContainingWindow):
2591 (WebCore::Widget::convertFromContainingWindow):
2592 * platform/Widget.h:
2593 (WebCore::Widget::geometryChanged):
2594 * platform/gtk/ScrollViewGtk.cpp:
2595 (WebCore::ScrollView::isScrollViewScrollbar):
2596 * platform/gtk/WidgetGtk.cpp:
2597 * platform/mac/ScrollViewMac.mm:
2598 (WebCore::ScrollView::isScrollViewScrollbar):
2599 * platform/mac/WidgetMac.mm:
2600 * platform/qt/ScrollViewQt.cpp:
2601 (WebCore::ScrollView::isScrollViewScrollbar):
2602 * platform/qt/WidgetQt.cpp:
2603 * platform/win/ScrollViewWin.cpp:
2604 (WebCore::ScrollView::isScrollViewScrollbar):
2605 * platform/win/WidgetWin.cpp:
2606
26072008-09-18 David Hyatt <hyatt@apple.com>
2608
hyatt@apple.comc5b931a2008-09-19 00:39:51 +00002609 Make the conversion methods that go to and from some containingWindow
2610 cross-platform. Implement them on Mac.
2611
2612 Reviewed by Sam Weinig
2613
2614 * platform/Widget.h:
2615 (WebCore::Widget::setContainingWindow):
2616 * platform/mac/WidgetMac.mm:
2617 (WebCore::Widget::convertFromContainingWindow):
2618 (WebCore::Widget::convertToContainingWindow):
2619
weinig@apple.comd1ea02d2008-09-19 00:28:05 +000026202008-09-18 Sam Weinig <sam@webkit.org>
2621
2622 Rubber-stamped by David "Yeah-yeah" Hyatt.
2623
2624 Cleanup RenderStyle.
2625
2626 * WebCore.xcodeproj/project.pbxproj:
2627 * rendering/style/CounterContent.h:
2628 * rendering/style/RenderStyle.cpp:
2629 * rendering/style/RenderStyle.h:
2630
dino@apple.comef93f532008-09-19 00:01:07 +000026312008-09-18 Chris Marrin <cmarrin@apple.com>
2632
2633 Reviewed by Sam Weinig
2634
2635 Fixed https://bugs.webkit.org/show_bug.cgi?id=20908
2636 Now TransformOperations and AnimationList no longer
2637 inherit from Vector<> but rather have API to access.
2638
2639 * css/CSSComputedStyleDeclaration.cpp:
2640 (WebCore::computedTransform):
2641 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2642 * css/CSSStyleSelector.cpp:
2643 (WebCore::CSSStyleSelector::createTransformOperations):
2644 * page/animation/AnimationBase.cpp:
2645 (WebCore::blendFunc):
2646 * page/animation/CompositeAnimation.cpp:
2647 (WebCore::CompositeAnimation::updateTransitions):
2648 (WebCore::CompositeAnimation::updateKeyframeAnimations):
2649 (WebCore::CompositeAnimation::animate):
2650 * page/animation/ImplicitAnimation.cpp:
2651 (WebCore::ImplicitAnimation::validateTransformFunctionList):
2652 * page/animation/KeyframeAnimation.cpp:
2653 (WebCore::KeyframeAnimation::validateTransformFunctionList):
2654 * rendering/RenderLayer.cpp:
2655 (WebCore::RenderLayer::updateReflectionStyle):
2656 * rendering/style/AnimationList.cpp:
2657 (WebCore::AnimationList::operator==):
2658 * rendering/style/AnimationList.h:
2659 (WebCore::AnimationList::operator!=):
2660 (WebCore::AnimationList::size):
2661 (WebCore::AnimationList::isEmpty):
2662 (WebCore::AnimationList::resize):
2663 (WebCore::AnimationList::remove):
2664 (WebCore::AnimationList::append):
2665 (WebCore::AnimationList::animation):
2666 * rendering/style/RenderStyle.cpp:
2667 (WebCore::StyleRareNonInheritedData::updateKeyframes):
2668 (WebCore::RenderStyle::applyTransform):
2669 (WebCore::RenderStyle::adjustAnimations):
2670 (WebCore::RenderStyle::adjustTransitions):
2671 (WebCore::RenderStyle::transitionForProperty):
2672 * rendering/style/RenderStyle.h:
2673 (WebCore::RenderStyle::hasTransform):
2674 * rendering/style/TransformOperations.cpp:
2675 (WebCore::TransformOperations::TransformOperations):
2676 (WebCore::TransformOperations::operator==):
2677 * rendering/style/TransformOperations.h:
2678 (WebCore::TransformOperations::apply):
2679 (WebCore::TransformOperations::operations):
2680
zecke@webkit.org20690ef2008-09-18 23:28:34 +000026812008-09-18 Holger Hans Peter Freyther <zecke@selfish.org>
2682
zecke@webkit.org30db7422008-09-19 01:00:18 +00002683 Build fix.
2684
2685 [qt] Build fixes after the Widget/ScrollView cleanup
2686 topLevel() is now root()
2687
2688
2689 * platform/qt/ScrollViewQt.cpp:
2690 (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
2691 (WebCore::ScrollView::addChild):
2692 (WebCore::ScrollView::removeChild):
2693
26942008-09-18 Holger Hans Peter Freyther <zecke@selfish.org>
2695
zecke@webkit.org20690ef2008-09-18 23:28:34 +00002696 Reviewed by Mark Rowe.
2697
2698 https://bugs.webkit.org/show_bug.cgi?id=20437
2699
2700 XMLTokenizer.cpp used to contain two different implementations. One was using
2701 libxml2 and the other was using the Qt XML StreamReader. Clean up the code by
2702 separating the two implementations from each other.
2703 Common code and some small bits are kept inside the XMLTokenizer.cpp, the Qt code
2704 was moved to XMLTokenizerQt.cpp and the Libxml2 based code was moved to
2705 XMLTokenizerLibxml2.cpp. There should be no functional changes.
2706
2707 Attempt to add XMLTokenizerLibxml2.cpp to every buildsystem so the build continues
2708 to work.
2709
2710 * GNUmakefile.am:
2711 * WebCore.pro:
2712 * WebCore.vcproj/WebCore.vcproj:
2713 * WebCore.xcodeproj/project.pbxproj:
2714 * WebCoreSources.bkl:
2715 * dom/XMLTokenizer.cpp:
2716 (WebCore::isScriptElement):
2717 (WebCore::castToScriptElement):
2718 (WebCore::XMLTokenizer::setCurrentNode):
2719 (WebCore::XMLTokenizer::write):
2720 (WebCore::XMLTokenizer::eventuallyMarkAsParserCreated):
2721 (WebCore::XMLTokenizer::enterText):
2722 (WebCore::toString):
2723 (WebCore::XMLTokenizer::exitText):
2724 (WebCore::XMLTokenizer::end):
2725 (WebCore::XMLTokenizer::insertErrorMessageBlock):
2726 * dom/XMLTokenizer.h:
2727 (WebCore::XMLTokenizer::wellFormed):
2728 * dom/XMLTokenizerLibxml2.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
2729 (WebCore::createMemoryParser):
2730 (WebCore::XMLTokenizer::XMLTokenizer):
2731 (WebCore::XMLTokenizer::~XMLTokenizer):
2732 (WebCore::XMLTokenizer::doWrite):
2733 (WebCore::ignorableWhitespaceHandler):
2734 (WebCore::XMLTokenizer::initializeParserContext):
2735 (WebCore::XMLTokenizer::doEnd):
2736 (WebCore::XMLTokenizer::lineNumber):
2737 (WebCore::XMLTokenizer::columnNumber):
2738 (WebCore::XMLTokenizer::stopParsing):
2739 (WebCore::XMLTokenizer::resumeParsing):
2740 (WebCore::parseXMLDocumentFragment):
2741 (WebCore::attributesStartElementNsHandler):
2742 (WebCore::parseAttributes):
2743 * dom/XMLTokenizerQt.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
2744 (WebCore::EntityResolver::resolveUndeclaredEntity):
2745 (WebCore::XMLTokenizer::XMLTokenizer):
2746 (WebCore::XMLTokenizer::~XMLTokenizer):
2747 (WebCore::XMLTokenizer::doWrite):
2748 (WebCore::XMLTokenizer::initializeParserContext):
2749 (WebCore::XMLTokenizer::doEnd):
2750 (WebCore::XMLTokenizer::lineNumber):
2751 (WebCore::XMLTokenizer::columnNumber):
2752 (WebCore::XMLTokenizer::stopParsing):
2753 (WebCore::XMLTokenizer::resumeParsing):
2754 (WebCore::parseXMLDocumentFragment):
2755 (WebCore::attributesStartElementNsHandler):
2756 (WebCore::parseAttributes):
2757 (WebCore::):
2758
bdakin@apple.com4c244902008-09-18 23:08:35 +000027592008-09-18 Beth Dakin <bdakin@apple.com>
2760
2761 Reviewed by Geoff Garen.
2762
2763 Build fix for non-Mac builds.
2764
2765 * css/CSSPrimitiveValue.cpp:
2766 (WebCore::CSSPrimitiveValue::cssText):
2767
eric@webkit.org4ac94e62008-09-18 23:07:55 +000027682008-09-18 Peter Kasting <pkasting@google.com>
2769
2770 Reviewed by hyatt. Landed by eseidel.
2771
2772 https://bugs.webkit.org/show_bug.cgi?id=20745
2773 Animated GIFs do not animate properly with (at least) CG.
2774
2775 * WebCore\platform\graphics\BitmapImage.cpp:
2776 * WebCore\platform\graphics\BitmapImage.h:
2777 * WebCore\platform\graphics\cairo\ImageCairo.cpp:
2778 * WebCore\platform\graphics\cg\ImageCG.cpp:
2779 * WebCore\platform\graphics\qt\ImageQt.cpp:
2780 * WebCore\platform\graphics\wx\ImageWx.cpp:
2781
cfleizach@apple.com2a72d8f2008-09-18 22:54:37 +000027822008-09-18 Chris Fleizach <cfleizach@apple.com>
2783
2784 Reviewed by Beth Dakin
2785
2786 <rdar://problem/6224222> AX: should not expose a <table> as an AXTable if ARIA
2787 role specifies otherwise
2788
2789 If a <table> isn't an AXTable, the rows and cells should default to AccessibilityRenderObject
2790
2791 Test: accessibility/table-with-aria-role.html
2792
2793 * page/AccessibilityTable.cpp:
2794 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2795 (WebCore::AccessibilityTable::addChildren):
2796 (WebCore::AccessibilityTable::roleValue):
2797 (WebCore::AccessibilityTable::accessibilityIsIgnored):
2798 (WebCore::AccessibilityTable::title):
2799 * page/AccessibilityTableCell.cpp:
2800 (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
2801 (WebCore::AccessibilityTableCell::isTableCell):
2802 (WebCore::AccessibilityTableCell::roleValue):
2803 * page/AccessibilityTableCell.h:
2804 * page/AccessibilityTableRow.cpp:
2805 (WebCore::AccessibilityTableRow::roleValue):
2806 (WebCore::AccessibilityTableRow::isTableRow):
2807 (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
2808 * page/AccessibilityTableRow.h:
2809
sfalken@apple.coma96c5d32008-09-18 22:29:34 +000028102008-09-18 Steve Falkenburg <sfalken@apple.com>
2811
2812 Use higher-resolution timers on all variants of Windows.
2813
2814 Reviewed by Darin Adler.
2815
2816 * platform/win/SharedTimerWin.cpp:
2817 (WebCore::setSharedTimerFireTime):
2818
2819
hyatt@apple.comb7d49b62008-09-18 22:21:25 +000028202008-09-18 David Hyatt <hyatt@apple.com>
2821
2822 Make containingWindow() and setContainingWindow() cross-platform.
2823 Add a root() function cross-platform so Qt doesn't have to
2824 define its own.
2825
2826 Reviewed by Darin Adler
2827
2828 * platform/Widget.cpp:
2829 (WebCore::Widget::root):
2830 * platform/Widget.h:
2831 (WebCore::Widget::setContainingWindow):
2832 * platform/gtk/WidgetGtk.cpp:
2833 (WebCore::Widget::Widget):
2834 (WebCore::Widget::containingWindow):
2835 * platform/mac/ScrollViewMac.mm:
2836 (WebCore::ScrollView::addChild):
2837 (WebCore::ScrollView::removeChild):
2838 * platform/mac/WidgetMac.mm:
2839 (WebCore::Widget::containingWindow):
2840 * platform/qt/WidgetQt.cpp:
2841 (WebCore::Widget::invalidateRect):
2842 (WebCore::Widget::containingWindow):
2843 * platform/win/WidgetWin.cpp:
2844 (WebCore::Widget::Widget):
2845 (WebCore::Widget::~Widget):
2846 (WebCore::Widget::containingWindow):
2847
bdakin@apple.comfa1ce162008-09-18 22:18:01 +000028482008-09-18 Beth Dakin <bdakin@apple.com>
2849
2850 Reviewed by Dave Hyatt.
2851
2852 Fix for https://bugs.webkit.org/show_bug.cgi?id=20515 Crash upon
2853 parsing CSS: unicode-range: searchfield-cancel-buttonpt=-webkit-
2854 dashboard-region=
2855 and corresponding: <rdar://problem/6174100>
2856
2857 This patch makes CSSParserValue::createCSSValue handle unknown
2858 identifiers.
2859
2860 * css/CSSParserValues.cpp:
2861 (WebCore::CSSParserValue::createCSSValue): If we have an identifier
2862 with no id (an unknown identifier) create a CSSPrimitiveValue of
2863 type CSS_PARSER_IDENTIFIER
2864 * css/CSSPrimitiveValue.cpp:
2865 (WebCore::CSSPrimitiveValue::cssText):
2866 (WebCore::CSSPrimitiveValue::parserValue):
2867 * css/CSSPrimitiveValue.h:
2868 (WebCore::CSSPrimitiveValue::):
2869
weinig@apple.comfce49be2008-09-18 21:46:14 +000028702008-09-18 Sam Weinig <sam@webkit.org>
2871
2872 Rubber-stamped by David "I'd prefer not" Hyatt.
2873
2874 More the remaining class out of RenderStyle.h/cpp
2875
2876 * GNUmakefile.am:
2877 * WebCore.pro:
2878 * WebCore.vcproj/WebCore.vcproj:
2879 * WebCore.xcodeproj/project.pbxproj:
2880 * WebCoreSources.bkl:
2881 * rendering/style/CursorData.h: Copied from rendering/style/RenderStyle.h.
2882 (WebCore::CursorData::CursorData):
2883 (WebCore::CursorData::operator==):
2884 (WebCore::CursorData::operator!=):
2885 * rendering/style/CursorList.h: Copied from rendering/style/RenderStyle.h.
2886 (WebCore::CursorList::operator[]):
2887 (WebCore::CursorList::CursorList):
2888 * rendering/style/RenderStyle.cpp:
2889 * rendering/style/RenderStyle.h:
2890 (WebCore::RenderStyle::deref):
2891 (WebCore::RenderStyle::hasOneRef):
2892 (WebCore::RenderStyle::InheritedFlags::operator!=):
2893 (WebCore::RenderStyle::NonInheritedFlags::operator!=):
2894 (WebCore::RenderStyle::hasBackground):
2895 (WebCore::RenderStyle::outlineWidth):
2896 (WebCore::RenderStyle::autoWrap):
2897 (WebCore::RenderStyle::preserveNewline):
2898 (WebCore::RenderStyle::collapseWhiteSpace):
2899 (WebCore::RenderStyle::isCollapsibleWhiteSpace):
2900 (WebCore::RenderStyle::breakOnlyAfterWhiteSpace):
2901 (WebCore::RenderStyle::breakWords):
2902 (WebCore::RenderStyle::outlineOffset):
2903 (WebCore::RenderStyle::setLeft):
2904 (WebCore::RenderStyle::setRight):
2905 (WebCore::RenderStyle::setTop):
2906 (WebCore::RenderStyle::setBottom):
2907 (WebCore::RenderStyle::setDashboardRegion):
2908 (WebCore::RenderStyle::setBackgroundColor):
2909 (WebCore::RenderStyle::setBorderImage):
2910 (WebCore::RenderStyle::setBorderRadius):
2911 (WebCore::RenderStyle::setFontDescription):
2912 (WebCore::RenderStyle::adjustBackgroundLayers):
2913 (WebCore::RenderStyle::adjustMaskLayers):
2914 (WebCore::RenderStyle::deleteBindingURIs):
2915 (WebCore::RenderStyle::inheritBindingURIs):
2916 (WebCore::RenderStyle::isDisplayReplacedType):
2917 (WebCore::RenderStyle::isDisplayInlineType):
2918 (WebCore::RenderStyle::isOriginalDisplayInlineType):
2919 * rendering/style/StyleInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
2920 * rendering/style/StyleInheritedData.h: Copied from rendering/style/RenderStyle.h.
2921 (WebCore::StyleInheritedData::operator!=):
2922 * rendering/style/StyleRareInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
2923 * rendering/style/StyleRareInheritedData.h: Copied from rendering/style/RenderStyle.h.
2924 (WebCore::StyleRareInheritedData::operator!=):
2925 * rendering/style/StyleRareNonInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
2926 * rendering/style/StyleRareNonInheritedData.h: Copied from rendering/style/RenderStyle.h.
2927 * rendering/style/StyleReflection.h: Copied from rendering/style/RenderStyle.h.
2928
hyatt@apple.com643534d2008-09-18 20:09:41 +000029292008-09-18 David Hyatt <hyatt@apple.com>
2930
hyatt@apple.comd23089a2008-09-18 20:24:16 +00002931 Move the concept of suppression invalidation on Widgets to Scrollbar
2932 instead. Since this is only used by Scrollbars, there is no need for
2933 it to be on Widget.
2934
2935 Reviewed by Sam Weinig
2936
2937 * platform/Scrollbar.cpp:
2938 (WebCore::Scrollbar::Scrollbar):
2939 (WebCore::Scrollbar::invalidateRect):
2940 * platform/Scrollbar.h:
2941 (WebCore::Scrollbar::suppressInvalidation):
2942 (WebCore::Scrollbar::setSuppressInvalidation):
2943 * platform/Widget.h:
2944 * platform/gtk/WidgetGtk.cpp:
2945 (WebCore::Widget::Widget):
2946 (WebCore::Widget::invalidateRect):
2947 * platform/qt/WidgetQt.cpp:
2948 (WebCore::WidgetPrivate::WidgetPrivate):
2949 (WebCore::Widget::invalidateRect):
2950 * platform/win/WidgetWin.cpp:
2951 (WebCore::Widget::Widget):
2952 (WebCore::Widget::invalidateRect):
2953
29542008-09-18 David Hyatt <hyatt@apple.com>
2955
hyatt@apple.com643534d2008-09-18 20:09:41 +00002956 Make invalidate() on Widget non-virtual and make it just call
2957 invalidateRect() on the boundsGeometry() of the Widget.
2958
2959 Reviewed by Dan Bernstein
2960
2961 * platform/Widget.h:
2962 (WebCore::Widget::boundsGeometry):
2963 (WebCore::Widget::invalidate):
2964 * platform/gtk/WidgetGtk.cpp:
2965 * platform/mac/WidgetMac.mm:
2966 * platform/qt/WidgetQt.cpp:
2967 * platform/win/WidgetWin.cpp:
2968 * platform/wx/WidgetWx.cpp:
2969
weinig@apple.comcaf2df42008-09-18 19:40:24 +000029702008-09-18 Sam Weinig <sam@webkit.org>
2971
2972 Rubber-stamped in exile by David Hyatt.
2973
2974 Split Animation, AnimationList, BindingURI, ContentData, CounterContent,
2975 KeyframeList, ShadowData, StyleFlexibleBoxData and TimingFunction out of
2976 RenderStyle.h/cpp
2977
2978 * GNUmakefile.am:
2979 * WebCore.pro:
2980 * WebCore.vcproj/WebCore.vcproj:
2981 * WebCore.xcodeproj/project.pbxproj:
2982 * WebCoreSources.bkl:
2983 * css/CSSStyleSelector.cpp:
2984 * css/CSSStyleSelector.h:
2985 * page/animation/CompositeAnimation.cpp:
2986 * page/animation/KeyframeAnimation.cpp:
2987 * page/animation/KeyframeAnimation.h:
2988 * rendering/RenderCounter.h:
2989 * rendering/style/Animation.cpp: Copied from rendering/style/RenderStyle.cpp.
2990 (WebCore::Animation::~Animation):
2991 (WebCore::Animation::animationsMatch):
2992 (WebCore::Animation::keyframeList):
2993 (WebCore::Animation::setAnimationKeyframe):
2994 * rendering/style/Animation.h: Copied from rendering/style/RenderStyle.h.
2995 * rendering/style/AnimationList.cpp: Copied from rendering/style/RenderStyle.cpp.
2996 * rendering/style/AnimationList.h: Copied from rendering/style/RenderStyle.h.
2997 * rendering/style/BindingURI.cpp: Copied from rendering/style/RenderStyle.cpp.
2998 * rendering/style/BindingURI.h: Copied from rendering/style/RenderStyle.h.
2999 (WebCore::BindingURI::operator!=):
3000 * rendering/style/ContentData.cpp: Copied from rendering/style/RenderStyle.cpp.
3001 * rendering/style/ContentData.h: Copied from rendering/style/RenderStyle.h.
3002 (WebCore::ContentData::ContentData):
3003 (WebCore::ContentData::~ContentData):
3004 * rendering/style/CounterContent.h: Copied from rendering/style/RenderStyle.h.
3005 (WebCore::CounterContent::CounterContent):
3006 * rendering/style/CounterDirectives.cpp: Copied from rendering/style/RenderStyle.cpp.
3007 * rendering/style/CounterDirectives.h: Copied from rendering/style/RenderStyle.h.
3008 (WebCore::CounterDirectives::CounterDirectives):
3009 * rendering/style/KeyframeList.cpp: Copied from rendering/style/RenderStyle.cpp.
3010 (WebCore::KeyframeList::insert):
3011 * rendering/style/KeyframeList.h: Copied from rendering/style/RenderStyle.h.
3012 (WebCore::KeyframeValue::KeyframeValue):
3013 (WebCore::KeyframeList::create):
3014 (WebCore::KeyframeList::KeyframeList):
3015 * rendering/style/RenderStyle.cpp:
3016 * rendering/style/RenderStyle.h:
3017 * rendering/style/ShadowData.cpp: Copied from rendering/style/RenderStyle.cpp.
3018 * rendering/style/ShadowData.h: Copied from rendering/style/RenderStyle.h.
3019 (WebCore::ShadowData::ShadowData):
3020 (WebCore::ShadowData::~ShadowData):
3021 (WebCore::ShadowData::operator!=):
3022 * rendering/style/StyleFlexibleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
3023 * rendering/style/StyleFlexibleBoxData.h: Copied from rendering/style/RenderStyle.h.
3024 (WebCore::StyleFlexibleBoxData::operator!=):
3025 * rendering/style/TimingFunction.h: Copied from rendering/style/RenderStyle.h.
3026 (WebCore::TimingFunction::TimingFunction):
3027 (WebCore::TimingFunction::operator==):
3028
adele@apple.com5b2b5da2008-09-18 18:49:44 +000030292008-09-18 Adele Peterson <adele@apple.com>
3030
3031 Reviewed by Dan Bernstein.
3032
3033 Fix RenderStyle leaks.
3034
3035 * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::createSubtreeIfNeeded):
3036
kmccullough@apple.comd4089752008-09-18 17:21:49 +000030372008-09-18 Kevin McCullough <kmccullough@apple.com>
3038
kmccullough@apple.com76c708f2008-09-18 18:03:23 +00003039 Accidentally checked in code.
3040
3041 * html/HTMLElementFactory.cpp:
3042 (WebCore::frameConstructor):
3043 (WebCore::iframeConstructor):
3044
30452008-09-18 Kevin McCullough <kmccullough@apple.com>
3046
kmccullough@apple.comd4089752008-09-18 17:21:49 +00003047 Reviewed by Tim.
3048
3049 <rdar://problem/5722310> gracefully handle too many console messages
3050 (20904)
3051 - Keep track of the most previous message and then compare it to the
3052 subsequent messages as they come in. If there are multiple of the same
3053 message create a count that indicates the current number.
3054
3055 * manual-tests/inspector/multiple-console-messages.html: Added.
3056 * page/inspector/Console.js:
3057 * page/inspector/inspector.css:
3058
alp@webkit.org18a1fbc2008-09-18 11:50:26 +000030592008-09-18 Jonathon Jongsma <jonathon@quotidian.org>
3060
3061 Reviewed by Alp Toker
3062
3063 https://bugs.webkit.org/show_bug.cgi?id=20830
3064 [GTK] Don't use deprecated pango API
3065
3066 Replace deprecated pango functions with non-deprecated ones for newer
3067 versions of pango
3068
3069 * platform/graphics/gtk/FontGtk.cpp:
3070 (WebCore::getDefaultPangoLayout):
3071 * platform/graphics/gtk/FontPlatformDataPango.cpp:
3072 (WebCore::FontPlatformData::FontPlatformData):
3073
alp@webkit.org2154ef22008-09-18 08:10:49 +000030742008-09-18 Alp Toker <alp@nuanti.com>
3075
3076 Build fix for r36587. Add new sources (and sort the lists).
3077
3078 * GNUmakefile.am:
3079
weinig@apple.com3a98b2a2008-09-18 05:51:35 +000030802008-09-17 Sam Weinig <sam@webkit.org>
3081
3082 Fix Windows build.
3083
3084 * WebCore.vcproj/WebCore.vcproj:
3085
hyatt@apple.comb3699722008-09-18 05:10:03 +000030862008-09-17 David Hyatt <hyatt@apple.com>
3087
3088 Switch back to having frameGeometry be virtual in order to keep Mac
3089 the way it used to be.
3090
3091 Reviewed by Sam Weinig
3092
3093 * WebCore.base.exp:
3094 * platform/Widget.cpp:
3095 (WebCore::Widget::setParent):
3096 * platform/Widget.h:
3097 * platform/gtk/WidgetGtk.cpp:
3098 (WebCore::Widget::frameGeometry):
3099 (WebCore::Widget::setFrameGeometry):
3100 * platform/mac/WidgetMac.mm:
3101 (WebCore::Widget::frameGeometry):
3102 (WebCore::Widget::setFrameGeometry):
3103 * platform/qt/WidgetQt.cpp:
3104 (WebCore::Widget::frameGeometry):
3105 (WebCore::Widget::setFrameGeometry):
3106 * platform/win/WidgetWin.cpp:
3107 (WebCore::Widget::frameGeometry):
3108 (WebCore::Widget::setFrameGeometry):
3109 * platform/wx/WidgetWx.cpp:
3110 (WebCore::Widget::frameGeometry):
3111 (WebCore::Widget::setFrameGeometry):
3112 * plugins/PluginView.cpp:
3113 (WebCore::PluginView::setFrameGeometry):
3114 (WebCore::PluginView::geometryChanged):
3115 * plugins/PluginView.h:
3116 * plugins/gtk/PluginViewGtk.cpp:
3117 (WebCore::PluginView::updatePluginWidget):
3118 * plugins/qt/PluginViewQt.cpp:
3119 (WebCore::PluginView::updatePluginWidget):
3120 * plugins/win/PluginViewWin.cpp:
3121 (WebCore::PluginView::updatePluginWidget):
3122
weinig@apple.com00f4d5c2008-09-18 03:23:08 +000031232008-09-17 Sam Weinig <sam@webkit.org>
3124
weinig@apple.com4fd54cd2008-09-18 05:03:21 +00003125 Reviewed by Mark Rowe.
3126
3127 Fix assertion in DOMWindow::adjustWindowRect where we were passing
3128 in garbage values and were getting lucky that they were a not Nan.
3129
3130 * bindings/js/JSDOMWindowBase.cpp:
3131 (WebCore::windowProtoFuncOpen):
3132
31332008-09-17 Sam Weinig <sam@webkit.org>
3134
weinig@apple.com95b14762008-09-18 04:28:40 +00003135 Fix gtk build.
3136
3137 * rendering/style/MatrixTransformOperation.cpp:
3138
31392008-09-17 Sam Weinig <sam@webkit.org>
3140
weinig@apple.com00f4d5c2008-09-18 03:23:08 +00003141 Rubber-stamped with love by David Hyatt.
3142
3143 Split IdentityTransformOperation, MatrixTransformOperation, RotateTransformOperation,
3144 ScaleTransformOperation, SkewTransformOperation, StyleTransformData, TransformOperation,
3145 TransformOperations and TranslateTransformOperation out of RenderStyle.h/cpp
3146
3147 * GNUmakefile.am:
3148 * WebCore.pro:
3149 * WebCore.vcproj/WebCore.vcproj:
3150 * WebCore.xcodeproj/project.pbxproj:
3151 * WebCoreSources.bkl:
3152 * css/CSSStyleSelector.cpp:
3153 * page/animation/AnimationBase.cpp:
3154 (WebCore::solveEpsilon):
3155 * rendering/RenderLayer.cpp:
3156 * rendering/style/IdentityTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3157 * rendering/style/MatrixTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3158 * rendering/style/MatrixTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3159 (WebCore::MatrixTransformOperation::MatrixTransformOperation):
3160 * rendering/style/RenderStyle.cpp:
3161 * rendering/style/RenderStyle.h:
3162 * rendering/style/RotateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3163 * rendering/style/RotateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3164 (WebCore::RotateTransformOperation::RotateTransformOperation):
3165 * rendering/style/ScaleTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3166 * rendering/style/ScaleTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3167 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
3168 * rendering/style/SkewTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3169 * rendering/style/SkewTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3170 (WebCore::SkewTransformOperation::SkewTransformOperation):
3171 * rendering/style/StyleTransformData.cpp: Copied from rendering/style/RenderStyle.cpp.
3172 * rendering/style/StyleTransformData.h: Copied from rendering/style/RenderStyle.h.
3173 (WebCore::StyleTransformData::operator!=):
3174 * rendering/style/TransformOperation.h: Copied from rendering/style/RenderStyle.h.
3175 (WebCore::TransformOperation::):
3176 * rendering/style/TransformOperations.cpp: Copied from rendering/style/RenderStyle.cpp.
3177 (WebCore::TransformOperations::TransformOperations):
3178 * rendering/style/TransformOperations.h: Copied from rendering/style/RenderStyle.h.
3179 (WebCore::TransformOperations::operator!=):
3180 * rendering/style/TranslateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
3181 * rendering/style/TranslateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
3182 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
3183
mrowe@apple.comdbfa8852008-09-18 02:59:20 +000031842008-09-17 Mark Rowe <mrowe@apple.com>
3185
3186 Build fix.
3187
3188 * rendering/style/StyleDashboardRegion.h: PlatformString.h rather than String.h.
3189
hyatt@apple.com76057b42008-09-18 02:48:46 +000031902008-09-17 David Hyatt <hyatt@apple.com>
3191
3192 (1) Inline a bunch of methods for accessing frame geometry.
3193 (2) Make sure frameGeometry() works even when you have no underlying
3194 native widget.
3195 (3) Cache a frame geometry rect cross-platform (even for widgets that
3196 have underlying native widgets.
3197 (4) PluginView's updateWindow call is now a virtual function on Widget.
3198
3199 Reviewed by Sam Weinig
3200
3201 * ChangeLog:
3202 * WebCore.base.exp:
3203 * platform/Widget.cpp:
3204 (WebCore::Widget::setFrameGeometry):
3205 * platform/Widget.h:
3206 (WebCore::Widget::x):
3207 (WebCore::Widget::y):
3208 (WebCore::Widget::width):
3209 (WebCore::Widget::height):
3210 (WebCore::Widget::size):
3211 (WebCore::Widget::pos):
3212 (WebCore::Widget::frameGeometry):
3213 (WebCore::Widget::resize):
3214 (WebCore::Widget::move):
3215 (WebCore::Widget::isFrameView):
3216 (WebCore::Widget::windowClipRect):
3217 * platform/mac/WidgetMac.mm:
3218 (WebCore::Widget::~Widget):
3219 (WebCore::Widget::updatePlatformWidgetFrameGeometry):
3220 * platform/win/WidgetWin.cpp:
3221 (WebCore::Widget::updatePlatformWidgetFrameGeometry):
3222 * plugins/PluginView.cpp:
3223 (WebCore::PluginView::setFrameGeometry):
3224 (WebCore::PluginView::geometryChanged):
3225 * plugins/PluginView.h:
3226 * plugins/gtk/PluginViewGtk.cpp:
3227 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
3228 * plugins/qt/PluginViewQt.cpp:
3229 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
3230 * plugins/win/PluginViewWin.cpp:
3231 (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
3232 * plugins/wx/PluginViewWx.cpp:
3233
weinig@apple.coma812a3ce2008-09-18 01:46:26 +000032342008-09-17 Sam Weinig <sam@webkit.org>
3235
weinig@apple.comb4b66742008-09-18 02:47:55 +00003236 Reviewed by David "Waterman" Hyatt.
3237
3238 Fix a leak of NSViews in WidgetMac.mm.
3239
3240 * platform/mac/WidgetMac.mm:
3241 (WebCore::Widget::~Widget):
3242
32432008-09-17 Sam Weinig <sam@webkit.org>
3244
weinig@apple.coma812a3ce2008-09-18 01:46:26 +00003245 Rubber-stamped by David Waterman Hyatt.
3246
3247 Split FillLayer, StyleBackgroundData, StyleBoxData, StyleDashboardRegion, StyleMarqueeData
3248 StyleMultiColData and StyleVisualData out of RenderStyle.h/cpp
3249
3250 * GNUmakefile.am:
3251 * WebCore.pro:
3252 * WebCore.vcproj/WebCore.vcproj:
3253 * WebCore.xcodeproj/project.pbxproj:
3254 * WebCoreSources.bkl:
3255 * rendering/style/FillLayer.cpp: Copied from rendering/style/RenderStyle.cpp.
3256 * rendering/style/FillLayer.h: Copied from rendering/style/RenderStyle.h.
3257 (WebCore::FillLayer::operator!=):
3258 (WebCore::FillLayer::hasImage):
3259 (WebCore::FillLayer::hasFixedImage):
3260 * rendering/style/RenderStyle.cpp:
3261 * rendering/style/RenderStyle.h:
3262 * rendering/style/StyleBackgroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
3263 (WebCore::StyleBackgroundData::StyleBackgroundData):
3264 * rendering/style/StyleBackgroundData.h: Copied from rendering/style/RenderStyle.h.
3265 (WebCore::StyleBackgroundData::~StyleBackgroundData):
3266 (WebCore::StyleBackgroundData::operator!=):
3267 * rendering/style/StyleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
3268 * rendering/style/StyleBoxData.h: Copied from rendering/style/RenderStyle.h.
3269 (WebCore::StyleBoxData::operator!=):
3270 * rendering/style/StyleDashboardRegion.h: Copied from rendering/style/RenderStyle.h.
3271 (WebCore::StyleDashboardRegion::operator!=):
3272 * rendering/style/StyleMarqueeData.cpp: Copied from rendering/style/RenderStyle.cpp.
3273 * rendering/style/StyleMarqueeData.h: Copied from rendering/style/RenderStyle.h.
3274 (WebCore::StyleMarqueeData::operator!=):
3275 * rendering/style/StyleMultiColData.cpp: Copied from rendering/style/RenderStyle.cpp.
3276 * rendering/style/StyleMultiColData.h: Copied from rendering/style/RenderStyle.h.
3277 (WebCore::StyleMultiColData::operator!=):
3278 (WebCore::StyleMultiColData::ruleWidth):
3279 * rendering/style/StyleVisualData.cpp: Copied from rendering/style/RenderStyle.cpp.
3280 * rendering/style/StyleVisualData.h: Copied from rendering/style/RenderStyle.h.
3281 (WebCore::StyleVisualData::operator==):
3282
hyatt@apple.comb4f28b32008-09-18 00:39:36 +000032832008-09-17 David Hyatt <hyatt@apple.com>
3284
hyatt@apple.com3f19eac2008-09-18 00:56:04 +00003285 Remove WidgetClient from Widget.
3286
3287 Reviewed by Sam Weinig
3288
3289 * WebCore.xcodeproj/project.pbxproj:
3290 * platform/Widget.h:
3291 (WebCore::Widget::setClient):
3292 (WebCore::Widget::client):
3293 * platform/WidgetClient.h: Removed.
3294 * platform/gtk/WidgetGtk.cpp:
3295 * platform/mac/WidgetMac.mm:
3296 (WebCore::Widget::Widget):
3297 (WebCore::Widget::show):
3298 (WebCore::Widget::hide):
3299 * platform/qt/WidgetQt.cpp:
3300 (WebCore::WidgetPrivate::WidgetPrivate):
3301 * platform/win/WidgetWin.cpp:
3302 (WebCore::Widget::Widget):
3303 * platform/wx/WidgetWx.cpp:
3304 (WebCore::Widget::Widget):
3305
33062008-09-17 David Hyatt <hyatt@apple.com>
3307
hyatt@apple.comb4f28b32008-09-18 00:39:36 +00003308 Remove isEnabled/setEnabled from Widget. The concept of being enabled now
3309 only applies to Scrollbars so the method has been moved there and made
3310 cross-platform. Scrollbar subclasses that have a corresponding native
3311 widget can subclass setEnabled to change the enabled state of the native
3312 widget.
3313
3314 Reviewed by Sam Weinig & Darin Adler
3315
3316 * WebCore.base.exp:
3317 * platform/Scrollbar.cpp:
3318 (WebCore::Scrollbar::Scrollbar):
3319 * platform/Scrollbar.h:
3320 (WebCore::Scrollbar::enabled):
3321 (WebCore::Scrollbar::setEnabled):
3322 * platform/Widget.h:
3323 * platform/gtk/ScrollbarGtk.cpp:
3324 (ScrollbarGtk::setEnabled):
3325 * platform/gtk/ScrollbarGtk.h:
3326 * platform/gtk/WidgetGtk.cpp:
3327 * platform/mac/ScrollbarMac.h:
3328 * platform/mac/ScrollbarMac.mm:
3329 (WebCore::ScrollbarMac::scrollbarHit):
3330 (WebCore::ScrollbarMac::setEnabled):
3331 * platform/mac/WidgetMac.mm:
3332 * platform/qt/WidgetQt.cpp:
3333 (WebCore::WidgetPrivate::WidgetPrivate):
3334 * platform/win/WidgetWin.cpp:
3335 (WebCore::Widget::Widget):
3336 * platform/wx/WidgetWx.cpp:
3337
weinig@apple.com1ea40602008-09-17 23:56:27 +000033382008-09-17 Sam Weinig <sam@webkit.org>
3339
3340 Rubber-stamped by David Hyatt.
3341
3342 Split all RenderStyle enums into their own file.
3343
3344 * GNUmakefile.am:
3345 * WebCore.vcproj/WebCore.vcproj:
3346 * WebCore.xcodeproj/project.pbxproj:
3347 * rendering/style/BorderValue.h:
3348 * rendering/style/CollapsedBorderValue.h:
3349 * rendering/style/RenderStyle.h:
3350 * rendering/style/RenderStyleConstants.h: Copied from rendering/style/RenderStyle.h.
3351 (WebCore::):
3352 * rendering/style/StyleCachedImage.h:
3353 * rendering/style/StyleGeneratedImage.h:
3354 * rendering/style/StyleImage.h:
3355
sfalken@apple.combf270912008-09-17 23:53:17 +000033562008-09-17 Steve Falkenburg <sfalken@apple.com>
3357
3358 Add back isFrameView check to fix failed assertion during scroll bar teardown.
3359
3360 Reviewed by Dave Hyatt.
3361
3362 * platform/Scrollbar.cpp:
3363 (WebCore::Scrollbar::setParent):
3364
beidson@apple.com4398e482008-09-17 23:30:00 +000033652008-09-17 Brady Eidson <beidson@apple.com>
3366
3367 Reviewed by Mac build fix
3368
3369 * WebCore.xcodeproj/project.pbxproj: Send appropriate headers to WebKit
3370
sfalken@apple.com85cc1392008-09-17 23:28:13 +000033712008-09-17 Steve Falkenburg <sfalken@apple.com>
3372
3373 Fix build.
3374
3375 * platform/win/ScrollViewWin.cpp:
3376 (WebCore::ScrollView::setParentVisible):
3377 * plugins/win/PluginViewWin.cpp:
3378 (WebCore::PluginView::init):
3379
zecke@webkit.org2ba9a4e2008-09-17 23:25:10 +000033802008-09-17 Holger Hans Peter Freyther <zecke@selfish.org>
3381
3382 Reviewed by Simon.
3383
3384 [QtWebKit] Implement error handling in TextCodecQt::decode
3385 Use the QTextCodec parsing state to set the sawError out variable. This
3386 is needed to pass Test 70 of acid3. The test case for this bug is
3387 fast/encoding/invalid-xml.html that is now partially passed. To pass
3388 it completely the Qt text codecs need to be adjusted to have proper
3389 error handling.
3390
3391 * platform/text/qt/TextCodecQt.cpp:
3392 (WebCore::TextCodecQt::decode):
3393
weinig@apple.comf6f0f112008-09-17 23:03:16 +000033942008-09-17 Sam Weinig <sam@webkit.org>
3395
3396 Rubber-stamped by Dave Hyatt.
3397
3398 Split BorderData, BorderValue, CollapsedBorderValue, OutlineValue and StyleSurroundData
3399 out of RenderStyle.h/cpp
3400
3401 * GNUmakefile.am:
3402 * WebCore.pro:
3403 * WebCore.vcproj/WebCore.vcproj:
3404 * WebCore.xcodeproj/project.pbxproj:
3405 * WebCoreSources.bkl:
3406 * rendering/style/BorderData.h: Copied from rendering/style/RenderStyle.h.
3407 (WebCore::BorderData::hasBorderRadius):
3408 (WebCore::BorderData::borderLeftWidth):
3409 (WebCore::BorderData::borderRightWidth):
3410 (WebCore::BorderData::borderTopWidth):
3411 (WebCore::BorderData::borderBottomWidth):
3412 (WebCore::BorderData::operator!=):
3413 * rendering/style/BorderValue.h: Copied from rendering/style/RenderStyle.h.
3414 (WebCore::):
3415 (WebCore::BorderValue::BorderValue):
3416 (WebCore::BorderValue::nonZero):
3417 (WebCore::BorderValue::isTransparent):
3418 (WebCore::BorderValue::isVisible):
3419 * rendering/style/CollapsedBorderValue.h: Copied from rendering/style/RenderStyle.h.
3420 (WebCore::):
3421 (WebCore::CollapsedBorderValue::CollapsedBorderValue):
3422 (WebCore::CollapsedBorderValue::operator==):
3423 * rendering/style/OutlineValue.h: Copied from rendering/style/RenderStyle.h.
3424 (WebCore::OutlineValue::OutlineValue):
3425 * rendering/style/RenderStyle.cpp:
3426 * rendering/style/RenderStyle.h:
3427 * rendering/style/StyleSurroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
3428 * rendering/style/StyleSurroundData.h: Copied from rendering/style/RenderStyle.h.
3429 (WebCore::StyleSurroundData::operator!=):
3430
bdakin@apple.com06b97182008-09-17 23:00:29 +000034312008-09-17 Beth Dakin <bdakin@apple.com>
3432
3433 Reviewed by Darin Adler.
3434
3435 This is a better fix for: Invalid CSS code crashes Safari
3436 https://bugs.webkit.org/show_bug.cgi?id=20512
3437
3438 The spec indicates that the only valid input for a counter is a
3439 number or an identifier. So that is exactly what we allow.
3440
3441 * css/CSSParser.cpp:
3442 (WebCore::CSSParser::parseCounterContent):
3443
alp@webkit.org97ba9222008-09-17 22:16:26 +000034442008-09-17 Alp Toker <alp@nuanti.com>
3445
3446 GTK+ build fix. Adapt to use PlatformWidget functions.
3447
3448 * platform/gtk/ScrollViewGtk.cpp:
3449 (WebCore::ScrollViewScrollbar::geometryChanged):
3450 (WebCore::ScrollView::addChild):
3451 (WebCore::ScrollView::removeChild):
3452 * platform/gtk/ScrollbarGtk.cpp:
3453 (ScrollbarGtk::ScrollbarGtk):
3454 (ScrollbarGtk::~ScrollbarGtk):
3455 (ScrollbarGtk::geometryChanged):
3456
weinig@apple.com930ed392008-09-17 22:00:45 +000034572008-09-17 Sam Weinig <sam@webkit.org>
3458
3459 Reviewed by Adele Peterson.
3460
3461 Patch for <rdar://problem/6133884>
3462 Calling window.resizeTo() on a subframe shouldn't change the window size
3463
3464 Test: fast/dom/Window/window-resize-and-move-sub-frame.html
3465
3466 * page/DOMWindow.cpp:
3467 (WebCore::DOMWindow::moveBy):
3468 (WebCore::DOMWindow::moveTo):
3469 (WebCore::DOMWindow::resizeBy):
3470 (WebCore::DOMWindow::resizeTo):
3471
bdakin@apple.com8f952d82008-09-17 21:35:02 +000034722008-09-17 Beth Dakin <bdakin@apple.com>
3473
3474 Reviewed by Adam Roben.
3475
3476 Fix for https://bugs.webkit.org/show_bug.cgi?id=20512 Invalid CSS
3477 code crashes Safari
3478 and corresponding: <rdar://problem/6173832>
3479
3480 Reading through the spec, it seems like a function is not valid
3481 input for a counter. So this patch checks for that and bails in the
3482 case of invalid input.
3483
3484 * css/CSSParser.cpp:
3485 (WebCore::CSSParser::parseCounterContent):
3486
antti@apple.comb37d4052008-09-17 21:14:13 +000034872008-09-17 Greg Bolsinga <bolsinga@apple.com>
3488
3489 Reviewed by Antti Koivisto.
3490
3491 Fix <rdar://problem/6227089>
3492 Crash in WebCore::Frame::setNeedsReapplyStyles()
3493
3494 View is null checked elsewhere too.
3495
3496 * page/Frame.cpp:
3497 (WebCore::Frame::setNeedsReapplyStyles):
3498
hyatt@apple.com8e340252008-09-17 20:59:45 +000034992008-09-17 David Hyatt <hyatt@apple.com>
3500
3501 Make the notion of having a native widget backing a Widget cross-platform.
3502 The PlatformWidget abstraction (which already existed) is used for this.
3503 Windows = HWND
3504 Qt = QWidget
3505 Mac = NSView
3506 wx = wxWindow
3507 Gtk = GtkWidget
3508
3509 There are new cross-platform methods that replace all of the unique
3510 platform-specific methods.
3511 platformWidget()
3512 setPlatformWidget()
3513
3514 For plugins, on every platform except Qt on Windows, the plugin's native
3515 widget is now stored in the Widget base class. Since Qt on Windows uses
3516 HWNDs for plugins instead of QWidget, it is the only platform to keep the
3517 m_window variable in PluginView.
3518
3519 Reviewed by Sam Weinig
3520
3521 * WebCore.base.exp:
3522 * bindings/js/ScriptControllerMac.mm:
3523 (WebCore::ScriptController::createScriptInstanceForWidget):
3524 * page/mac/AccessibilityObjectWrapper.mm:
3525 (-[AccessibilityObjectWrapper attachmentView]):
3526 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3527 * page/mac/EventHandlerMac.mm:
3528 (WebCore::EventHandler::passMouseDownEventToWidget):
3529 (WebCore::EventHandler::mouseDownViewIfStillGood):
3530 (WebCore::EventHandler::passWheelEventToWidget):
3531 (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):
3532 * platform/Widget.cpp:
3533 (WebCore::Widget::init):
3534 (WebCore::Widget::setParent):
3535 (WebCore::Widget::releasePlatformWidget):
3536 (WebCore::Widget::retainPlatformWidget):
3537 * platform/Widget.h:
3538 (WebCore::Widget::platformWidget):
3539 (WebCore::Widget::setPlatformWidget):
3540 * platform/gtk/WidgetGtk.cpp:
3541 (WebCore::Widget::Widget):
3542 (WebCore::Widget::setFocus):
3543 (WebCore::gdkDrawable):
3544 (WebCore::Widget::setCursor):
3545 (WebCore::Widget::show):
3546 (WebCore::Widget::hide):
3547 (WebCore::Widget::setEnabled):
3548 (WebCore::Widget::isEnabled):
3549 (WebCore::Widget::paint):
3550 * platform/mac/PlatformScreenMac.mm:
3551 (WebCore::screenRect):
3552 (WebCore::screenAvailableRect):
3553 * platform/mac/ScrollViewMac.mm:
3554 (WebCore::ScrollView::scrollView):
3555 (WebCore::ScrollView::update):
3556 (WebCore::ScrollView::inWindow):
3557 * platform/mac/ScrollbarMac.mm:
3558 (WebCore::ScrollbarMac::ScrollbarMac):
3559 (WebCore::ScrollbarMac::~ScrollbarMac):
3560 (WebCore::ScrollbarMac::updateThumbPosition):
3561 (WebCore::ScrollbarMac::updateThumbProportion):
3562 (WebCore::ScrollbarMac::scrollbarHit):
3563 * platform/mac/WidgetMac.mm:
3564 (WebCore::Widget::Widget):
3565 (WebCore::Widget::setEnabled):
3566 (WebCore::Widget::isEnabled):
3567 (WebCore::Widget::setFocus):
3568 (WebCore::Widget::getOuterView):
3569 (WebCore::Widget::paint):
3570 (WebCore::Widget::invalidate):
3571 (WebCore::Widget::invalidateRect):
3572 (WebCore::Widget::setIsSelected):
3573 (WebCore::Widget::releasePlatformWidget):
3574 (WebCore::Widget::retainPlatformWidget):
3575 * platform/qt/WidgetQt.cpp:
3576 (WebCore::WidgetPrivate::WidgetPrivate):
3577 (WebCore::Widget::Widget):
3578 (WebCore::Widget::setFrameGeometry):
3579 (WebCore::Widget::show):
3580 (WebCore::Widget::hide):
3581 (WebCore::Widget::isEnabled):
3582 (WebCore::Widget::setEnabled):
3583 (WebCore::Widget::invalidateRect):
3584 (WebCore::Widget::containingWindow):
3585 * platform/win/WidgetWin.cpp:
3586 (WebCore::Widget::Widget):
3587 * platform/wx/WidgetWx.cpp:
3588 (WebCore::Widget::Widget):
3589 (WebCore::Widget::frameGeometry):
3590 (WebCore::Widget::setFocus):
3591 (WebCore::Widget::setCursor):
3592 (WebCore::Widget::show):
3593 (WebCore::Widget::hide):
3594 (WebCore::Widget::setFrameGeometry):
3595 (WebCore::Widget::setEnabled):
3596 (WebCore::Widget::isEnabled):
3597 (WebCore::Widget::invalidate):
3598 (WebCore::Widget::invalidateRect):
3599 (WebCore::Widget::paint):
3600 * plugins/PluginView.cpp:
3601 (WebCore::PluginView::PluginView):
3602 * plugins/PluginView.h:
3603 (WebCore::PluginView::platformPluginWidget):
3604 * plugins/gtk/PluginViewGtk.cpp:
3605 (WebCore::PluginView::updateWindow):
3606 (WebCore::PluginView::setFocus):
3607 (WebCore::PluginView::show):
3608 (WebCore::PluginView::hide):
3609 (WebCore::PluginView::setParent):
3610 (WebCore::PluginView::setNPWindowRect):
3611 (WebCore::PluginView::setParentVisible):
3612 (WebCore::PluginView::getValue):
3613 (WebCore::PluginView::forceRedraw):
3614 (WebCore::PluginView::init):
3615 * plugins/qt/PluginViewQt.cpp:
3616 (WebCore::PluginView::updateWindow):
3617 (WebCore::PluginView::setFocus):
3618 (WebCore::PluginView::show):
3619 (WebCore::PluginView::hide):
3620 (WebCore::PluginView::setParent):
3621 (WebCore::PluginView::setNPWindowRect):
3622 (WebCore::PluginView::setParentVisible):
3623 (WebCore::PluginView::getValue):
3624 (WebCore::PluginView::~PluginView):
3625 (WebCore::PluginView::init):
3626 * plugins/win/PluginViewWin.cpp:
3627 (WebCore::PluginView::updateWindow):
3628 (WebCore::PluginView::setFocus):
3629 (WebCore::PluginView::show):
3630 (WebCore::PluginView::hide):
3631 (WebCore::PluginView::paint):
3632 (WebCore::PluginView::setParent):
3633 (WebCore::PluginView::setParentVisible):
3634 (WebCore::PluginView::setNPWindowRect):
3635 (WebCore::PluginView::stop):
3636 (WebCore::PluginView::invalidateRect):
3637 (WebCore::PluginView::forceRedraw):
3638 (WebCore::PluginView::~PluginView):
3639 (WebCore::PluginView::init):
3640
weinig@apple.comf713d132008-09-17 20:16:48 +000036412008-09-17 Sam Weinig <sam@webkit.org>
3642
3643 Fix assert.
3644
3645 * platform/Widget.cpp:
3646 (WebCore::Widget::setParent):
3647
hyatt@apple.comd9242e32008-09-17 18:46:31 +000036482008-09-17 David Hyatt <hyatt@apple.com>
3649
3650 Beginnings of Widget refactoring (in order to make the mixing of
3651 widgets with and without corresponding native widgets more cross-platform).
3652
3653 This first patch makes the concept of a parent ScrollView cross-platform.
3654
3655 Note the similarity of the show/hide methods on the three PluginViews. This
3656 will be refactored better in a later patch so that they can all share
3657 a base class Widget show/hide method. For now the changes were made
3658 simply to be able to bring WidgetWin's setParent method up into Widget.
3659
3660 Reviewed by Sam Weinig
3661
3662 * WebCore.base.exp:
3663 * platform/ScrollView.h:
3664 * platform/Widget.cpp:
3665 (WebCore::Widget::init):
3666 (WebCore::Widget::setParent):
3667 * platform/Widget.h:
3668 (WebCore::Widget::isSelfVisible):
3669 (WebCore::Widget::isParentVisible):
3670 (WebCore::Widget::isVisible):
3671 (WebCore::Widget::setParentVisible):
3672 (WebCore::Widget::isPluginView):
3673 (WebCore::Widget::parent):
3674 (WebCore::Widget::handleEvent):
3675 (WebCore::Widget::geometryChanged):
3676 * platform/gtk/WidgetGtk.cpp:
3677 (WebCore::Widget::Widget):
3678 * platform/mac/ScrollViewMac.mm:
3679 (WebCore::ScrollView::addChild):
3680 (WebCore::ScrollView::removeChild):
3681 * platform/mac/ScrollbarMac.mm:
3682 (WebCore::ScrollbarMac::~ScrollbarMac):
3683 * platform/mac/WidgetMac.mm:
3684 (WebCore::Widget::Widget):
3685 (WebCore::Widget::~Widget):
3686 * platform/qt/WidgetQt.cpp:
3687 (WebCore::WidgetPrivate::WidgetPrivate):
3688 (WebCore::Widget::Widget):
3689 (WebCore::Widget::topLevel):
3690 * platform/win/ScrollViewWin.cpp:
3691 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
3692 (WebCore::ScrollView::setAncestorVisible):
3693 (WebCore::ScrollView::show):
3694 (WebCore::ScrollView::hide):
3695 * platform/win/WidgetWin.cpp:
3696 (WebCore::Widget::Widget):
3697 (WebCore::Widget::setParent):
3698 * platform/wx/WidgetWx.cpp:
3699 (WebCore::Widget::Widget):
3700 * plugins/PluginView.cpp:
3701 (WebCore::PluginView::PluginView):
3702 * plugins/PluginView.h:
3703 * plugins/gtk/PluginViewGtk.cpp:
3704 (WebCore::PluginView::show):
3705 (WebCore::PluginView::hide):
3706 (WebCore::PluginView::setParentVisible):
3707 * plugins/qt/PluginViewQt.cpp:
3708 (WebCore::PluginView::show):
3709 (WebCore::PluginView::hide):
3710 (WebCore::PluginView::setParentVisible):
3711 * plugins/win/PluginViewWin.cpp:
3712 (WebCore::PluginView::show):
3713 (WebCore::PluginView::hide):
3714 (WebCore::PluginView::setParentVisible):
3715
ap@webkit.org18da1a32008-09-17 16:50:22 +000037162008-09-17 Alexey Proskuryakov <ap@webkit.org>
3717
3718 Reviewed by Adam Roben.
3719
3720 <rdar://problem/6219577> Spew in console at launch about encoding mappings when running with ICU 4.0
3721
3722 * platform/text/TextCodecICU.cpp:
3723 (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated for new encoding names.
3724
vestbo@webkit.orge48e6362008-09-17 13:29:42 +000037252008-09-17 Tor Arne Vestbø <tavestbo@trolltech.com>
3726
3727 Fix the QtWebKit/Mac build
3728
3729 * platform/qt/ScrollViewQt.cpp: add include
3730
ap@webkit.org18da1a32008-09-17 16:50:22 +000037312008-09-17 David Hyatt <hyatt@apple.com>
hyatt@apple.com0f37fb52008-09-17 08:17:26 +00003732
3733 Add a #define to control whether or not to use an NSScroller on Mac.
3734 This ifdef will allow the new NSView-less NSScroller on Mac to be
3735 developed side by side with the current one.
3736
3737 The new scroller paints a debug red if turned on (although due to
3738 Widget issues you won't see anything paint yet).
3739
3740 Reviewed by olliej
3741
3742 * platform/Scrollbar.cpp:
3743 * platform/Scrollbar.h:
3744 * platform/mac/ScrollbarMac.h:
3745 * platform/mac/ScrollbarMac.mm:
3746 * platform/mac/ScrollbarThemeMac.cpp:
3747 (WebCore::ScrollbarThemeMac::paint):
3748 * platform/mac/ScrollbarThemeMac.h:
3749
alp@webkit.orgf06bac02008-09-17 04:30:12 +000037502008-09-16 Marco Barisione <marco.barisione@collabora.co.uk>
3751
3752 Reviewed by Alp Toker.
3753
3754 http://bugs.webkit.org/show_bug.cgi?id=20854
3755 [GTK] Windows can be not realized in ScrollView::update
3756
3757 Do not call gdk_window_invalidate_rect on a non-realized GtkWidget.
3758
3759 * platform/gtk/ScrollViewGtk.cpp:
3760 (WebCore::ScrollView::update):
3761
alp@webkit.org226f72a2008-09-17 04:22:02 +000037622008-09-16 Alp Toker <alp@nuanti.com>
3763
3764 Suggested by Dave Hyatt.
3765
3766 Build fix and cleanup. Rename ScrollBar to Scrollbar.
3767
3768 * GNUmakefile.am:
3769 * WebCore.pro:
3770 * WebCore.vcproj/WebCore.vcproj:
3771 * WebCore.xcodeproj/project.pbxproj:
3772 * WebCoreSources.bkl:
3773 * editing/EditorCommand.cpp:
3774 * page/EventHandler.cpp:
3775 * page/gtk/EventHandlerGtk.cpp:
3776 * page/mac/EventHandlerMac.mm:
3777 * page/mac/FrameMac.mm:
3778 * page/qt/EventHandlerQt.cpp:
3779 * page/wx/EventHandlerWx.cpp:
3780 * platform/PopupMenu.h:
3781 * platform/ScrollBar.cpp: Removed.
3782 * platform/ScrollBar.h: Removed.
3783 * platform/Scrollbar.cpp: Copied from WebCore/platform/ScrollBar.cpp.
3784 * platform/Scrollbar.h: Copied from WebCore/platform/ScrollBar.h.
3785 * platform/gtk/ScrollbarGtk.cpp:
3786 (ScrollbarGtk::ScrollbarGtk):
3787 * platform/gtk/ScrollbarGtk.h:
3788 * platform/mac/ScrollbarMac.h:
3789 * platform/qt/ScrollViewQt.cpp:
3790 * platform/qt/ScrollbarQt.cpp:
3791 * platform/qt/ScrollbarThemeQt.cpp:
3792 * platform/win/PlatformScrollBar.h:
3793 * platform/win/PopupMenuWin.cpp:
3794 * platform/win/ScrollViewWin.cpp:
3795 * platform/win/ScrollbarThemeWin.cpp:
3796 * platform/wx/ScrollViewWx.cpp:
3797 * platform/wx/TemporaryLinkStubs.cpp:
3798 * rendering/HitTestResult.cpp:
3799 * rendering/RenderLayer.cpp:
3800 * rendering/RenderTextControl.cpp:
3801
hyatt@apple.com7597c172008-09-17 02:15:08 +000038022008-09-16 David Hyatt <hyatt@apple.com>
3803
hyatt@apple.comfde412d2008-09-17 03:49:48 +00003804 Fix Qt build bustage by making moveThumb a member of Scrollbar so that
3805 it can be called from ScrollbarQt.
3806
3807 * platform/ScrollBar.cpp:
3808 (WebCore::Scrollbar::moveThumb):
3809 (WebCore::Scrollbar::handleMouseMoveEvent):
3810 (WebCore::Scrollbar::handleMousePressEvent):
3811 * platform/ScrollBar.h:
3812 * platform/qt/ScrollViewQt.cpp:
3813 * platform/qt/ScrollbarQt.cpp:
3814 (WebCore::Scrollbar::handleContextMenuEvent):
3815
38162008-09-16 David Hyatt <hyatt@apple.com>
3817
hyatt@apple.com4e3b8602008-09-17 03:17:11 +00003818 Eliminate PlatformScrollbar. Mac and Gtk now have subclasses for their
3819 native-widget scrollbars (ScrollbarMac and ScrollbarGtk). Other platforms
3820 now just use Scrollbar.
3821
3822 Reviewed by Sam Weinig
3823
3824 * GNUmakefile.am:
3825 * WebCore.pro:
3826 * WebCore.vcproj/WebCore.vcproj:
3827 * WebCore.xcodeproj/project.pbxproj:
3828 * page/mac/FrameMac.mm:
3829 * platform/PopupMenu.h:
3830 (WebCore::PopupMenu::scrollbar):
3831 * platform/ScrollBar.cpp:
3832 (WebCore::createNativeScrollbar):
3833 * platform/ScrollBar.h:
3834 * platform/gtk/PlatformScrollBar.h: Removed.
3835 * platform/gtk/PlatformScrollBarGtk.cpp: Removed.
3836 * platform/gtk/ScrollbarGtk.cpp: Copied from platform/gtk/PlatformScrollBarGtk.cpp.
3837 (gtkScrollEventCallback):
3838 (ScrollbarGtk::ScrollbarGtk):
3839 (ScrollbarGtk::~ScrollbarGtk):
3840 (ScrollbarGtk::updateThumbPosition):
3841 (ScrollbarGtk::updateThumbProportion):
3842 (ScrollbarGtk::setFrameGeometry):
3843 (ScrollbarGtk::geometryChanged):
3844 (ScrollbarGtk::gtkValueChanged):
3845 * platform/gtk/ScrollbarGtk.h: Copied from platform/gtk/PlatformScrollBar.h.
3846 * platform/mac/PlatformScrollBar.h: Removed.
3847 * platform/mac/PlatformScrollBarMac.mm: Removed.
3848 * platform/mac/ScrollbarMac.h: Copied from platform/mac/PlatformScrollBar.h.
3849 * platform/mac/ScrollbarMac.mm: Copied from platform/mac/PlatformScrollBarMac.mm.
3850 (-[WebCoreScrollBar initWithScrollbarMac:]):
3851 (-[WebCoreScrollBar detachScrollbarMac]):
3852 (WebCore::Scrollbar::createNativeScrollbar):
3853 (WebCore::ScrollbarMac::ScrollbarMac):
3854 (WebCore::ScrollbarMac::~ScrollbarMac):
3855 (WebCore::ScrollbarMac::updateThumbPosition):
3856 (WebCore::ScrollbarMac::updateThumbProportion):
3857 (WebCore::ScrollbarMac::scrollbarHit):
3858 * platform/qt/PlatformScrollBar.h: Removed.
3859 * platform/qt/PlatformScrollBarQt.cpp: Removed.
3860 * platform/qt/ScrollbarQt.cpp: Copied from platform/qt/PlatformScrollBarQt.cpp.
3861 (WebCore::Scrollbar::handleContextMenuEvent):
3862 * rendering/HitTestResult.cpp:
3863 * rendering/RenderLayer.cpp:
3864 (WebCore::RenderLayer::createScrollbar):
3865 (WebCore::RenderLayer::destroyScrollbar):
3866 * rendering/RenderLayer.h:
3867 * rendering/RenderListBox.cpp:
3868 (WebCore::RenderListBox::~RenderListBox):
3869 (WebCore::RenderListBox::updateFromElement):
3870 (WebCore::RenderListBox::isPointInOverflowControl):
3871 * rendering/RenderObject.h:
3872 * rendering/RenderTextControl.cpp:
3873
38742008-09-16 David Hyatt <hyatt@apple.com>
3875
hyatt@apple.com7597c172008-09-17 02:15:08 +00003876 Make the scrollbar resizer-dodging logic cross-platform in the
3877 Scrollbar class.
3878
3879 Reviewed by Sam Weinig
3880
3881 * platform/ScrollBar.cpp:
3882 (WebCore::Scrollbar::setFrameGeometry):
3883 (WebCore::Scrollbar::setParent):
3884 (WebCore::Scrollbar::windowClipRect):
3885 * platform/ScrollBar.h:
3886 * platform/ScrollView.h:
3887 (WebCore::ScrollView::windowResizerRect):
3888 (WebCore::ScrollView::resizerOverlapsContent):
3889 (WebCore::ScrollView::adjustOverlappingScrollbarCount):
3890 * platform/Widget.h:
3891 (WebCore::Widget::setParent):
3892 * platform/mac/WidgetMac.mm:
3893 (WebCore::Widget::convertToContainingWindow):
3894 * platform/win/PlatformScrollBar.h:
3895 * platform/win/PlatformScrollBarWin.cpp:
3896
mitz@apple.com6d925202008-09-16 17:34:10 +000038972008-09-16 Dan Bernstein <mitz@apple.com>
3898
mitz@apple.comd9462a52008-09-16 17:40:20 +00003899 Reviewed by Darin Adler.
3900
3901 - fix https://bugs.webkit.org/show_bug.cgi?id=15129
3902 <rdar://problem/4644824> adding a new line with DOM does unnecessary additional repaint
3903
3904 Covered by fast/repaint/4776765.html
3905
3906 * rendering/RenderBlock.cpp:
3907 (WebCore::RenderBlock::layoutBlock): Avoid repainting this object if it
3908 did not have layout in the beginning.
3909 (WebCore::RenderBlock::layoutBlockChildren): If a child did not have
3910 layout in the beginning, repaint it in its new position, to compensate
3911 for the above (regardless of whether it "moved").
3912 * rendering/RenderObject.cpp:
3913 (WebCore::RenderObject::checkForRepaintDuringLayout): Added a comment
3914 about generalizing this fix in the future.
3915
39162008-09-16 Dan Bernstein <mitz@apple.com>
3917
mitz@apple.com6d925202008-09-16 17:34:10 +00003918 Reviewed by Dave Hyatt.
3919
3920 - fix https://bugs.webkit.org/show_bug.cgi?id=15384
3921 Div does not notice when grandparent changes height
3922
3923 Test: fast/block/basic/quirk-percent-height-grandchild.html
3924
3925 - fix https://bugs.webkit.org/show_bug.cgi?id=20714
3926 Resizing Gmail inbox vertically results in whitespace at the bottom of the window
3927
3928 Test: fast/replaced/percent-height-in-anonymous-block.html
3929
3930 Added a two-way mapping between boxes with percentage heights and
3931 their non-parent ancestors up to the one the height is computed relative
3932 to. In quirks mode (the first bug), this can be any number of containing
3933 block with auto height. In strict mode (the second bug) this can be
3934 the containing block of an anonymous block containing a replaced
3935 element.
3936
3937 * rendering/RenderBlock.cpp:
3938 (WebCore::RenderBlock::~RenderBlock): Added code to remove the all the
3939 mapping to/from this block to percentage-height descendants.
3940 (WebCore::RenderBlock::layoutBlockChildren): Added code to mark
3941 percentage-height descendants (and their containing block ancestry chain
3942 up to this block) for layout. This ensures that those descendants whose
3943 height depends on the height of this block (or an ancestor) are updated.
3944 (WebCore::RenderBlock::addPercentHeightDescendant): Added. Establishes
3945 a two-way mapping between this block and the given box.
3946 (WebCore::RenderBlock::removePercentHeightDescendant): Added. Removes
3947 all the mapping to/from this box.
3948 * rendering/RenderBlock.h:
3949 * rendering/RenderBox.cpp:
3950 (WebCore::RenderBox::setStyle): Added calls to
3951 removePercentHeightDescendant() when style changes and the box
3952 previously had a percentage height. An exception is when the style
3953 change does not require layout, in which case the box still has
3954 a percentage height and the mappings are valid. In all other cases,
3955 any required mappings will be (re-)established during layout.
3956 (WebCore::RenderBox::destroy): Added a call to
3957 removePercentHeightDescendant.
3958 (WebCore::RenderBox::calcPercentageHeight): Added code that, in quirks
3959 mode, if a higher-than-parent containing block is affecting the box's
3960 height, creates a mapping between the box and that block.
3961 (WebCore::RenderBox::calcReplacedHeightUsing): Changed to skip over
3962 anonymous containing blocks, if any, and when that happens, use
3963 addPercentHeightDescendant() to ensure that the non-anonymous block
3964 is aware of the dependent percent-height box.
3965
alp@webkit.org1dbd9a92008-09-16 16:59:18 +000039662008-09-16 Dirk Schulze <vbs85@gmx.de>
3967
3968 Reviewed by Oliver Hunt and Alp Toker.
3969
3970 Implemented toDataURL in Cairo. Only PNG support
3971 at the moment.
3972
3973 Qt, Cairo and wx require toDataURL implementations
3974 https://bugs.webkit.org/show_bug.cgi?id=17719
3975
3976 * platform/MIMETypeRegistry.cpp:
3977 (WebCore::initializeSupportedImageMIMETypesForEncoding):
3978 * platform/graphics/cairo/ImageBufferCairo.cpp:
3979 (WebCore::ImageBuffer::ImageBuffer):
3980 (WebCore::writeFunction):
3981 (WebCore::ImageBuffer::toDataURL):
3982
vestbo@webkit.org8963b3c2008-09-16 16:45:20 +000039832008-09-16 Tor Arne Vestbø <tavestbo@trolltech.com>
3984
3985 Reviewed by Simon.
3986
3987 Hide unused media element controls in the QtWebKit port
3988
3989 * platform/qt/html4-adjustments-qt.css
3990
hausmann@webkit.orgcd7a1292008-09-16 14:19:16 +000039912008-09-16 Ariya Hidayat <ariya.hidayat@trolltech.com>
3992
3993 Reviewed by Simon.
3994
3995 Fix compilation of the Qt scrollbar code.
3996
3997 * platform/qt/PlatformScrollBarQt.cpp:
3998 (WebCore::scPart):
3999 (WebCore::styleOptionSlider):
4000 (WebCore::thumbLength):
4001 (WebCore::pixelPosToRangeValue):
4002 (WebCore::PlatformScrollbar::handleContextMenuEvent):
4003
treat@webkit.orga35f6b62008-09-16 14:15:29 +000040042008-09-16 Adam Treat <treat@kde.org>
4005
4006 Reviewed by Anders Carlsson.
4007
4008 Prevent accesses off of the end of the buffer introduced in r36450
4009 and when checking for descriptions of mime. Also, coding style fix.
4010
4011 * plugins/qt/PluginPackageQt.cpp:
4012 (WebCore::PluginPackage::fetchInfo):
4013
rwlbuis@webkit.org8f675dd2008-09-16 11:12:52 +000040142008-09-15 Rob Buis <buis@kde.org>
4015
4016 Reviewed by Eric.
4017
4018 https://bugs.webkit.org/show_bug.cgi?id=20634
4019 SVG transform attribute is ignored by <use> in <clipPath>
4020
4021 Transform the paths with the local transform when part
4022 of a clip path.
4023
4024 Test: svg/custom/use-clipped-transform.svg
4025
4026 * svg/SVGClipPathElement.cpp:
4027 (WebCore::SVGClipPathElement::canvasResource):
4028 * svg/SVGStyledTransformableElement.cpp:
4029 (WebCore::SVGStyledTransformableElement::toClipPath):
4030 * svg/SVGStyledTransformableElement.h:
4031
hyatt@apple.com1cd4bcc2008-09-16 06:53:34 +000040322008-09-15 Dave Hyatt <hyatt@apple.com>
4033
4034 Convert Qt over to its ScrollbarTheme. Add cross-platform support for jumping the thumb location directly
4035 to a pressed location on the track (this is done with the middle mouse on Qt and with Shift-Click on Windows).
4036
4037 Reviewed by Sam Weinig
4038
4039 * platform/ScrollBar.cpp:
4040 (WebCore::thumbUnderMouse):
4041 (WebCore::Scrollbar::autoscrollPressedPart):
4042 (WebCore::Scrollbar::startTimerIfNeeded):
4043 (WebCore::moveThumb):
4044 (WebCore::Scrollbar::handleMouseMoveEvent):
4045 (WebCore::Scrollbar::handleMousePressEvent):
4046 * platform/ScrollBar.h:
4047 (WebCore::Scrollbar::pressedPos):
4048 (WebCore::Scrollbar::pixelStep):
4049 (WebCore::Scrollbar::setPressedPos):
4050 * platform/ScrollbarTheme.h:
4051 (WebCore::ScrollbarTheme::thumbPosition):
4052 (WebCore::ScrollbarTheme::thumbLength):
4053 (WebCore::ScrollbarTheme::trackPosition):
4054 (WebCore::ScrollbarTheme::trackLength):
4055 * platform/ScrollbarThemeComposite.cpp:
4056 (WebCore::ScrollbarThemeComposite::trackPosition):
4057 * platform/ScrollbarThemeComposite.h:
4058 * platform/qt/PlatformScrollBarQt.cpp:
4059 (WebCore::PlatformScrollbar::PlatformScrollbar):
4060 (WebCore::):
4061 * platform/qt/ScrollbarThemeQt.cpp:
4062 (WebCore::styleOptionSlider):
4063 (WebCore::ScrollbarThemeQt::hitTest):
4064 (WebCore::ScrollbarThemeQt::shouldCenterOnThumb):
4065 (WebCore::ScrollbarThemeQt::invalidatePart):
4066 (WebCore::ScrollbarThemeQt::thumbPosition):
4067 (WebCore::):
4068 * platform/qt/ScrollbarThemeQt.h:
4069 * platform/win/ScrollbarThemeSafari.cpp:
4070 (WebCore::ScrollbarThemeSafari::shouldCenterOnThumb):
4071 * platform/win/ScrollbarThemeSafari.h:
4072 * platform/win/ScrollbarThemeWin.cpp:
4073 (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
4074 * platform/win/ScrollbarThemeWin.h:
4075
dsmith@webkit.orgb3107b532008-09-16 06:14:22 +000040762008-09-15 David Smith <catfish.man@gmail.com>
4077
4078 Reviewed by Sam Weinig.
4079
4080 https://bugs.webkit.org/show_bug.cgi?id=20180
4081
4082 Cache the result of parsing the an+b expression in :nth-child(an+b). Roughly a 2x speedup for :nth-child on SlickSpeed.
4083
4084 * GNUmakefile.am: Add CSSNthSelector
4085 * WebCore.pro: Add CSSNthSelector
4086 * WebCore.vcproj/WebCore.vcproj: Add CSSNthSelector
4087 * WebCore.xcodeproj/project.pbxproj: Add CSSNthSelector
4088 * css/CSSGrammar.y: Create CSSNthSelectors instead of CSSSelectors for :nth-*
4089 * css/CSSNthSelector.cpp: Added.
4090 (WebCore::CSSNthSelector::parseNth): Moved from CSSStyleSelector and modified to cache
4091 (WebCore::CSSNthSelector::matchNth): Moved from CSSStyleSelector and modified to use the cache
4092 * css/CSSNthSelector.h: Added.
4093 (WebCore::CSSNthSelector::CSSNthSelector):
4094 (WebCore::CSSNthSelector::~CSSNthSelector):
4095 * css/CSSParser.cpp:
4096 (WebCore::CSSParser::createFloatingNthSelector):
4097 * css/CSSParser.h:
4098 * css/CSSSelector.h: Use the free bit here to store a flag for CSSNthSelector
4099 (WebCore::CSSSelector::CSSSelector):
4100 * css/CSSStyleSelector.cpp:
4101 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Take advantage of knowing that all :nth-* selectors are CSSNthSelectors
4102
pewtermoose@webkit.orgfb4d3fb2008-09-16 02:46:39 +000041032008-09-15 Matt Lilek <webkit@mattlilek.com>
4104
4105 Reviewed by Tim Hatcher.
4106
4107 Clean up some inspector JS callbacks to remove an extra return.
4108
4109 * page/InspectorController.cpp:
4110 (WebCore::hideDOMNodeHighlight):
4111 (WebCore::loaded):
4112 (WebCore::unloading):
4113 (WebCore::attach):
4114 (WebCore::detach):
4115 (WebCore::startDebuggingAndReloadInspectedPage):
4116 (WebCore::stopDebugging):
4117 (WebCore::debuggerAttached):
4118 (WebCore::pauseOnExceptions):
4119 (WebCore::pauseInDebugger):
4120 (WebCore::resumeDebugger):
4121 (WebCore::stepOverStatementInDebugger):
4122 (WebCore::stepIntoStatementInDebugger):
4123 (WebCore::stepOutOfFunctionInDebugger):
4124 (WebCore::isWindowVisible):
4125 (WebCore::closeWindow):
4126
hyatt@apple.com8e809932008-09-16 02:29:09 +000041272008-09-15 Dave Hyatt <hyatt@apple.com>
4128
4129 Completely switch Windows scrollbars over to ScrollbarTheme. The Aqua windows scrollbar and native scrollbar
4130 now share most of their code.
4131
4132 Also removing mini size scrollbar support, since it would have crashed Windows had it ever been used, and it
4133 also is never used in our code anyway.
4134
4135 Reviewed by Sam Weinig
4136
4137 * WebCore.vcproj/WebCore.vcproj:
4138 * platform/ScrollTypes.h:
4139 (WebCore::):
4140 * platform/ScrollbarThemeComposite.cpp:
4141 (WebCore::ScrollbarThemeComposite::splitTrack):
4142 (WebCore::ScrollbarThemeComposite::thumbLength):
4143 (WebCore::ScrollbarThemeComposite::minimumThumbLength):
4144 * platform/ScrollbarThemeComposite.h:
4145 * platform/mac/PlatformScrollBarMac.mm:
4146 (NSControlSizeForScrollBarControlSize):
4147 * platform/win/PlatformScrollBar.h:
4148 * platform/win/PlatformScrollBarSafari.cpp: Removed.
4149 * platform/win/PlatformScrollBarWin.cpp:
4150 (WebCore::PlatformScrollbar::PlatformScrollbar):
4151 * platform/win/ScrollbarThemeSafari.cpp:
4152 (WebCore::ScrollbarTheme::nativeTheme):
4153 (WebCore::):
4154 (WebCore::scrollbarControlStateFromThemeState):
4155 (WebCore::ScrollbarThemeSafari::hasButtons):
4156 (WebCore::ScrollbarThemeSafari::hasThumb):
4157 (WebCore::buttonRepaintRect):
4158 (WebCore::ScrollbarThemeSafari::backButtonRect):
4159 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
4160 (WebCore::trackRepaintRect):
4161 (WebCore::ScrollbarThemeSafari::trackRect):
4162 (WebCore::ScrollbarThemeSafari::minimumThumbLength):
4163 (WebCore::ScrollbarThemeSafari::paintTrack):
4164 (WebCore::ScrollbarThemeSafari::paintButton):
4165 (WebCore::ScrollbarThemeSafari::paintThumb):
4166 * platform/win/ScrollbarThemeSafari.h:
4167 * platform/win/ScrollbarThemeWin.cpp:
4168 * platform/win/ScrollbarThemeWin.h:
4169
cfleizach@apple.com0ce07032008-09-16 00:17:58 +000041702008-09-15 Chris Fleizach <cfleizach@apple.com>
4171
4172 Reviewed by Darin Adler, Beth Dakin
4173
4174 <rdar://problem/4003789> Expose lists as AXList
4175 <rdar://problem/5707399> VO: Definition lists not announced in Safari
4176
4177 Lists are now exposed through AX. On the mac (in SnowLeopard) they use two new subroles
4178 AXContentList for <ul>, <ol> and AXDefinitionList for <dl>
4179 Inside the definition list, each <dt> "term" has an accessibility description ("term"),
4180 as does each <dd> tag ("definition")
4181
4182 Test: accessibility/lists.html
4183
4184 * GNUmakefile.am:
4185 * WebCore.pro:
4186 * WebCore.vcproj/WebCore.vcproj:
4187 * WebCore.xcodeproj/project.pbxproj:
4188 * WebCoreSources.bkl:
4189 * page/AXObjectCache.cpp:
4190 * page/AccessibilityList.cpp: Added.
4191 * page/AccessibilityList.h: Added.
4192 * page/AccessibilityObject.h:
4193 * page/AccessibilityRenderObject.cpp:
4194 * page/AccessibilityTable.cpp:
4195 * page/mac/AccessibilityObjectWrapper.mm:
4196 * page/mac/WebCoreViewFactory.h:
4197 * platform/LocalizedStrings.h:
4198 * platform/mac/LocalizedStringsMac.mm:
4199 * platform/qt/Localizations.cpp:
4200
zimmermann@webkit.org8cc8ad02008-09-16 00:01:11 +000042012008-09-15 Nikolas Zimmermann <zimmermann@kde.org>
4202
4203 Reviewed by Eric.
4204
4205 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20865
4206 Prepare HTMLScriptElement & SVGScriptElement unification, and unification of event handling.
4207
4208 Several renames:
4209 dispatchHTMLEvent -> dispatchEventForType
4210 setHTMLEventListener -> setEventListenerForType
4211 getHTMLEventListener -> eventListenerForType
4212 removeHTMLEventListener -> removeEventListenerForType
4213 isHTMLEventListener -> isAttachedToEventTargetNode
4214 ...
4215
4216 Similar renames for the dispatch/get/set/*Window*Event functions.
4217 Kill JSSVGLazyEventListener and merge with JSLazyEventListener.
4218
4219 Most important change: Rename setHTMLEventListener to setEventListenerForTypeAndAttribute,
4220 as there exists a generic createEventListener() method now, taking care of JSLazyEventListener creation.
4221
4222 setHTMLEventListener() used createHTMLEventListener() before and was HTML specific.
4223 SVG is able to use the code as well now. This affects most files in html/.
4224
4225 No functional changes.
4226
4227 * GNUmakefile.am:
4228 * WebCore.pro:
4229 * WebCore.vcproj/WebCore.vcproj:
4230 * WebCore.xcodeproj/project.pbxproj:
4231 * bindings/js/JSDOMWindowBase.cpp:
4232 (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
4233 (WebCore::JSDOMWindowBase::setListener):
4234 (WebCore::JSDOMWindowBase::getListener):
4235 (WebCore::JSDOMWindowBase::findJSEventListener):
4236 (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
4237 (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
4238 (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
4239 (WebCore::JSDOMWindowBase::jsEventListenersAttachedToEventTargetNodes):
4240 (WebCore::JSDOMWindowBase::jsUnprotectedEventListenersAttachedToEventTargetNodes):
4241 * bindings/js/JSDOMWindowBase.h:
4242 * bindings/js/JSEventListener.cpp:
4243 (WebCore::JSAbstractEventListener::handleEvent):
4244 (WebCore::JSAbstractEventListener::isAttachedToEventTargetNode):
4245 (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
4246 (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
4247 (WebCore::JSEventListener::JSEventListener):
4248 (WebCore::JSEventListener::~JSEventListener):
4249 (WebCore::JSLazyEventListener::JSLazyEventListener):
4250 (WebCore::eventParameterName):
4251 (WebCore::JSLazyEventListener::parseCode):
4252 (WebCore::getNodeEventListener):
4253 * bindings/js/JSEventListener.h:
4254 (WebCore::JSAbstractEventListener::JSAbstractEventListener):
4255 (WebCore::JSUnprotectedEventListener::create):
4256 (WebCore::JSEventListener::create):
4257 (WebCore::JSLazyEventListener::):
4258 (WebCore::JSLazyEventListener::create):
4259 * bindings/js/JSEventTargetNode.cpp:
4260 (WebCore::JSEventTargetNode::setListener):
4261 (WebCore::JSEventTargetNode::getListener):
4262 * bindings/js/JSSVGLazyEventListener.cpp: Removed.
4263 * bindings/js/JSSVGLazyEventListener.h: Removed.
4264 * bindings/js/ScriptController.cpp:
4265 (WebCore::ScriptController::createHTMLEventHandler):
4266 (WebCore::ScriptController::createSVGEventHandler):
4267 * dom/Document.cpp:
4268 (WebCore::Document::setFocusedNode):
4269 (WebCore::Document::handleWindowEvent):
4270 (WebCore::Document::setWindowEventListenerForType):
4271 (WebCore::Document::windowEventListenerForType):
4272 (WebCore::Document::removeWindowEventListenerForType):
4273 (WebCore::Document::addWindowEventListener):
4274 (WebCore::Document::hasWindowEventListener):
4275 (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
4276 (WebCore::Document::createEventListener):
4277 (WebCore::Document::setWindowEventListenerForTypeAndAttribute):
4278 * dom/Document.h:
4279 * dom/EventListener.h:
4280 (WebCore::EventListener::isAttachedToEventTargetNode):
4281 * dom/EventTargetNode.cpp:
4282 (WebCore::EventTargetNode::dispatchFocusEvent):
4283 (WebCore::EventTargetNode::dispatchBlurEvent):
4284 (WebCore::EventTargetNode::dispatchEventForType):
4285 (WebCore::EventTargetNode::removeEventListenerForType):
4286 (WebCore::EventTargetNode::setEventListenerForType):
4287 (WebCore::EventTargetNode::setEventListenerForTypeAndAttribute):
4288 (WebCore::EventTargetNode::eventListenerForType):
4289 * dom/EventTargetNode.h:
4290 * dom/XMLTokenizer.cpp:
4291 (WebCore::XMLTokenizer::notifyFinished):
4292 * editing/ReplaceSelectionCommand.cpp:
4293 (WebCore::ReplacementFragment::ReplacementFragment):
4294 * html/HTMLBodyElement.cpp:
4295 (WebCore::HTMLBodyElement::parseMappedAttribute):
4296 * html/HTMLButtonElement.cpp:
4297 (WebCore::HTMLButtonElement::parseMappedAttribute):
4298 * html/HTMLElement.cpp:
4299 (WebCore::HTMLElement::parseMappedAttribute):
4300 (WebCore::HTMLElement::checkDTD):
4301 * html/HTMLElement.h:
4302 * html/HTMLFormControlElement.cpp:
4303 (WebCore::HTMLFormControlElement::onChange):
4304 * html/HTMLFormElement.cpp:
4305 (WebCore::HTMLFormElement::prepareSubmit):
4306 (WebCore::HTMLFormElement::reset):
4307 (WebCore::HTMLFormElement::parseMappedAttribute):
4308 * html/HTMLFrameElementBase.cpp:
4309 (WebCore::HTMLFrameElementBase::parseMappedAttribute):
4310 * html/HTMLFrameSetElement.cpp:
4311 (WebCore::HTMLFrameSetElement::parseMappedAttribute):
4312 * html/HTMLImageElement.cpp:
4313 (WebCore::HTMLImageElement::parseMappedAttribute):
4314 * html/HTMLImageLoader.cpp:
4315 (WebCore::HTMLImageLoader::dispatchLoadEvent):
4316 * html/HTMLInputElement.cpp:
4317 (WebCore::HTMLInputElement::parseMappedAttribute):
4318 (WebCore::HTMLInputElement::setValueFromRenderer):
4319 (WebCore::HTMLInputElement::onSearch):
4320 * html/HTMLMediaElement.cpp:
4321 (WebCore::HTMLMediaElement::asyncEventTimerFired):
4322 (WebCore::HTMLMediaElement::load):
4323 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
4324 (WebCore::HTMLMediaElement::setReadyState):
4325 (WebCore::HTMLMediaElement::seek):
4326 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
4327 (WebCore::HTMLMediaElement::willSaveToCache):
4328 * html/HTMLObjectElement.cpp:
4329 (WebCore::HTMLObjectElement::parseMappedAttribute):
4330 * html/HTMLScriptElement.cpp:
4331 (WebCore::HTMLScriptElement::parseMappedAttribute):
4332 (WebCore::HTMLScriptElement::dispatchLoadEvent):
4333 (WebCore::HTMLScriptElement::dispatchErrorEvent):
4334 * html/HTMLSelectElement.cpp:
4335 (WebCore::HTMLSelectElement::parseMappedAttribute):
4336 * html/HTMLTextAreaElement.cpp:
4337 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
4338 * html/HTMLTokenizer.cpp:
4339 (WebCore::HTMLTokenizer::notifyFinished):
4340 * page/AccessibilityRenderObject.cpp:
4341 (WebCore::AccessibilityRenderObject::mouseButtonListener):
4342 * page/EventHandler.cpp:
4343 (WebCore::EventHandler::canMouseDownStartSelect):
4344 (WebCore::EventHandler::canMouseDragExtendSelect):
4345 * page/Frame.cpp:
4346 (WebCore::Frame::sendScrollEvent):
4347 * page/Page.cpp:
4348 (WebCore::networkStateChanged):
4349 * rendering/RenderListBox.cpp:
4350 (WebCore::RenderListBox::valueChanged):
4351 * rendering/RenderTextControl.cpp:
4352 (WebCore::RenderTextControl::selectionChanged):
4353 * svg/SVGDocumentExtensions.cpp:
4354 * svg/SVGDocumentExtensions.h:
4355 * svg/SVGElement.cpp:
4356 (WebCore::SVGElement::parseMappedAttribute):
4357 (WebCore::SVGElement::finishParsingChildren):
4358 * svg/SVGElement.h:
4359 * svg/SVGSVGElement.cpp:
4360 (WebCore::SVGSVGElement::parseMappedAttribute):
4361 * svg/SVGSVGElement.h:
4362
hyatt@apple.com63739ce2008-09-15 23:44:10 +000043632008-09-15 Dave Hyatt <hyatt@apple.com>
4364
4365 Convert PlatformScrollbarWin to use ScrollbarTheme for hit testing. PlatformScrollbarQt/Gtk still
4366 need to be converted.
4367
4368 Reviewed by Sam Weinig
4369
4370 * platform/ScrollBar.cpp:
4371 (WebCore::Scrollbar::Scrollbar):
4372 (WebCore::Scrollbar::updateThumbPosition):
4373 (WebCore::Scrollbar::updateThumbProportion):
4374 (WebCore::Scrollbar::autoscrollPressedPart):
4375 (WebCore::Scrollbar::startTimerIfNeeded):
4376 * platform/ScrollBar.h:
4377 * platform/ScrollbarTheme.h:
4378 (WebCore::ScrollbarTheme::invalidateParts):
4379 * platform/ScrollbarThemeComposite.cpp:
4380 (WebCore::ScrollbarThemeComposite::hitTest):
4381 (WebCore::ScrollbarThemeComposite::invalidatePart):
4382 (WebCore::ScrollbarThemeComposite::thumbPosition):
4383 (WebCore::ScrollbarThemeComposite::thumbLength):
4384 (WebCore::ScrollbarThemeComposite::trackLength):
4385 * platform/ScrollbarThemeComposite.h:
4386 * platform/win/PlatformScrollBarSafari.cpp:
4387 (WebCore::PlatformScrollbar::PlatformScrollbar):
4388 * platform/win/PlatformScrollBarWin.cpp:
4389 (WebCore::PlatformScrollbar::PlatformScrollbar):
4390
dsmith@webkit.orgaa780ed2008-09-15 23:08:07 +000043912008-09-15 David Smith <catfish.man@gmail.com>
4392
4393 "Just do it"'d by Mark Rowe
4394
4395 https://bugs.webkit.org/show_bug.cgi?id=20856
4396 Add missing license header
4397
4398 * dom/NodeRenderStyle.h:
4399
dino@apple.combf52b682008-09-15 21:31:43 +000044002008-09-15 Dean Jackson <dino@apple.com>
4401
4402 Reviewed by Tim Hatcher.
4403
dino@apple.com3db0b8f2008-09-15 21:52:23 +00004404 Add default constructor for ShadowData
4405 https://bugs.webkit.org/show_bug.cgi?id=20757
4406
4407 Test: transitions/shadow.html
4408
4409 * rendering/style/RenderStyle.h:
4410
44112008-09-15 Dean Jackson <dino@apple.com>
4412
4413 Reviewed by Tim Hatcher.
4414
dino@apple.com03abdce2008-09-15 21:40:52 +00004415 RenderStyle should update keyframes.
4416 http://bugs.webkit.org/show_bug.cgi?id=20756
4417
4418 * rendering/style/RenderStyle.cpp:
4419 (WebCore::StyleRareNonInheritedData::updateKeyframes):
4420
44212008-09-15 Dean Jackson <dino@apple.com>
4422
4423 Reviewed by Tim Hatcher.
4424
dino@apple.combf52b682008-09-15 21:31:43 +00004425 Unnecessary ASSERT in ImplicitAnimation destructor.
4426 https://bugs.webkit.org/show_bug.cgi?id=20817
4427
4428 * page/animation/ImplicitAnimation.cpp:
4429 (WebCore::ImplicitAnimation::~ImplicitAnimation):
4430
treat@webkit.org7e5abc22008-09-15 20:53:49 +000044312008-09-15 Adam Treat <treat@kde.org>
4432
4433 Reviewed by Simon.
4434
4435 Fix plugin extension info. It was returning the mimetype where the
4436 extension was given.
4437
4438 * plugins/qt/PluginPackageQt.cpp:
4439 (WebCore::PluginPackage::fetchInfo):
4440
dino@apple.comecc18dc2008-09-15 20:40:28 +000044412008-09-15 Dean Jackson <dino@apple.com>
4442
4443 Reviewed by Tim Hatcher
4444
4445 Coding style violation!!!! Cleanup AnimationBase.cpp
4446
4447 * page/animation/AnimationBase.cpp:
4448 (WebCore::blendFunc):
4449
hyatt@apple.comf4a9d932008-09-15 20:03:25 +000044502008-09-15 David Hyatt <hyatt@apple.com>
4451
4452 Move all hit testing code for scrollbars into the base class. Refactor
4453 it to accommodate all platform-specific behaviors using virtual ScrollbarTheme
4454 functions.
4455
4456 No platform is using this code yet. Although it has been moved and compiles
4457 (even on Mac), it is not being used on any platform.
4458
4459 Reviewed by Sam Weinig
4460
4461 * platform/ScrollBar.cpp:
4462 (WebCore::Scrollbar::autoscrollPressedPart):
4463 (WebCore::Scrollbar::startTimerIfNeeded):
4464 (WebCore::Scrollbar::handleMouseMoveEvent):
4465 (WebCore::Scrollbar::handleMouseOutEvent):
4466 (WebCore::Scrollbar::handleMouseReleaseEvent):
4467 (WebCore::Scrollbar::handleMousePressEvent):
4468 * platform/ScrollBar.h:
4469 (WebCore::Scrollbar::handleContextMenuEvent):
4470 * platform/ScrollbarTheme.h:
4471 (WebCore::ScrollbarTheme::hitTest):
4472 (WebCore::ScrollbarTheme::invalidateOnMouseEnterExit):
4473 (WebCore::ScrollbarTheme::invalidatePart):
4474 (WebCore::ScrollbarTheme::shouldCenterOnThumb):
4475 (WebCore::ScrollbarTheme::centerOnThumb):
4476 (WebCore::ScrollbarTheme::thumbPosition):
4477 (WebCore::ScrollbarTheme::thumbLength):
4478 (WebCore::ScrollbarTheme::trackLength):
4479 (WebCore::ScrollbarTheme::initialAutoscrollTimerDelay):
4480 (WebCore::ScrollbarTheme::autoscrollTimerDelay):
4481 * platform/Widget.h:
4482 (WebCore::Widget::parent):
4483 * platform/mac/PlatformScrollBar.h:
4484 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
4485 (WebCore::PlatformScrollbar::handleMouseOutEvent):
4486 (WebCore::PlatformScrollbar::handleMousePressEvent):
4487 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
4488 * platform/mac/WidgetMac.mm:
4489 (WebCore::Widget::convertFromContainingWindow):
4490 * platform/win/ScrollbarThemeWin.cpp:
4491 (WebCore::ScrollbarThemeWin::invalidateOnMouseEnterExit):
4492 * platform/win/ScrollbarThemeWin.h:
4493
mitz@apple.comd17dc392008-09-15 18:48:20 +000044942008-09-15 Dan Bernstein <mitz@apple.com>
4495
4496 Reviewed by Sam Weinig.
4497
4498 - fix <rdar://problem/5842247> Single long breakable word takes O(n^2) to lay out
4499
4500 Cache the next breakable position for text nodes in InlineIterator.
4501
4502 * rendering/bidi.cpp:
4503 (WebCore::InlineIterator::InlineIterator):
4504 (WebCore::InlineIterator::increment):
4505 (WebCore::RenderBlock::findNextLineBreak):
4506
simon.fraser@apple.comda604642008-09-15 17:10:48 +000045072008-09-15 Simon Fraser <simon.fraser@apple.com>
4508
4509 Reviewed by Dan Bernstein
4510
4511 Fix assertion and integral pixel issue when creating subimages.
4512 https://bugs.webkit.org/show_bug.cgi?id=20786
4513
4514 * platform/graphics/cg/ImageCG.cpp:
4515 (WebCore::BitmapImage::draw):
4516
vestbo@webkit.orge7eda302008-09-15 12:43:37 +000045172008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
4518
4519 Reviewed by Simon.
4520
4521 Implment seek() and clean up and improve debugging output
4522
4523 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
4524 (debugMediaObject):
4525 (WebCore::MediaPlayerPrivate::seek):
4526 (WebCore::MediaPlayerPrivate::setVolume):
4527 (WebCore::MediaPlayerPrivate::setMuted):
4528 (WebCore::MediaPlayerPrivate::updateStates):
4529 (WebCore::MediaPlayerPrivate::naturalSize):
4530 (WebCore::MediaPlayerPrivate::paint):
4531 (WebCore::MediaPlayerPrivate::stateChanged):
4532 (WebCore::MediaPlayerPrivate::tick):
4533
vestbo@webkit.orgaba01e62008-09-15 11:40:22 +000045342008-09-15 Holger Hans Peter Freyther <zecke@selfish.org>
4535
4536 Reviewed by Simon.
4537
4538 Remove bogus Q_ASSERTs from the MediaPlayer Phonon implementation
4539
4540 m_mediaObject, m_audioOutput, m_videoWidget get created in the
4541 c'tor and will only be deleted in the c'tor. The Q_ASSERTs would
4542 only check if we use the MediaPlayerPrivate after it has been deleted.
4543
4544 Acked-by: Tor Arne Vestbø <tavestbo@trolltech.com>
4545
4546 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
4547 (WebCore::MediaPlayerPrivate::play):
4548 (WebCore::MediaPlayerPrivate::setVolume):
4549 (WebCore::MediaPlayerPrivate::updateStates):
4550
andersca@apple.com18d62682008-09-15 11:35:22 +000045512008-09-15 Anders Carlsson <andersca@apple.com>
4552
4553 Reviewed by Maciej.
4554
4555 <rdar://problem/6163988>
4556 https://bugs.webkit.org/show_bug.cgi?id=20457
4557 Canvas: createPattern crashes WebKit in WTF::RefPtr<WebCore::Image>::operator!() const + 9 with a 1D pattern
4558
4559 Check the width and height and throw an exception if any of them are 0.
4560
4561 * html/CanvasRenderingContext2D.cpp:
4562 (WebCore::CanvasRenderingContext2D::createPattern):
4563
vestbo@webkit.org3a27e182008-09-15 11:28:59 +000045642008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
4565
4566 Reviewed by Simon.
4567
4568 Render media element controls with antialiasing enabled
4569
4570 * platform/qt/RenderThemeQt.cpp:
4571 (WebCore::RenderThemeQt::paintMediaMuteButton):
4572 (WebCore::RenderThemeQt::paintMediaPlayButton):
4573 (WebCore::RenderThemeQt::paintMediaSliderTrack):
4574 (WebCore::RenderThemeQt::paintMediaSliderThumb):
4575
vestbo@webkit.org17e4bfc2008-09-15 11:27:25 +000045762008-09-15 Ariya Hidayat <ariya.hidayat@trolltech.com>
4577
4578 Reviewed by Simon.
4579
4580 Upon non fatal error, switch to the pause state (so that playback can continue)
4581
4582 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
4583 (WebCore::MediaPlayerPrivate::updateStates):
4584
vestbo@webkit.org12a59572008-09-15 11:16:13 +000045852008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
4586
4587 Reviewed by Simon.
4588
vestbo@webkit.org1d1f05e2008-09-15 11:22:05 +00004589 Don't set WTF_USE_JSC in WebCore.pro now that it's set in config.h
4590
4591 * WebCore.pro:
4592
45932008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
4594
4595 Reviewed by Simon.
4596
vestbo@webkit.org12a59572008-09-15 11:16:13 +00004597 Make QtInstance::create() private and fix caching
4598
4599 * bindings/js/ScriptControllerQt.cpp:
4600 (WebCore::ScriptController::createScriptInstanceForWidget):
4601 * bridge/qt/qt_instance.cpp:
4602 (JSC::Bindings::QtInstance::getQtInstance):
4603 (JSC::Bindings::QtInstance::getRuntimeObject):
4604 * bridge/qt/qt_instance.h:
4605 (JSC::Bindings::QtInstance::create):
4606 * bridge/qt/qt_runtime.cpp:
4607 (JSC::Bindings::convertQVariantToValue):
4608 (JSC::Bindings::QtConnectionObject::execute):
4609
dsmith@webkit.orgaba15862008-09-15 08:45:35 +000046102008-09-15 David Smith <catfish.man@gmail.com>
4611
4612 Reviewed by Dave Hyatt.
4613
4614 https://bugs.webkit.org/show_bug.cgi?id=20180
4615
4616 >2x speedup on querySelector[All] with :nth-child by removing the collectRulesOnly argument on SelectorChecker.
4617 With collectRulesOnly set to true (the default) an optimization is turned off, and no callers were intentionally leaving it true.
4618 querySelector[All] assumed that the default was probably the right way to go, and so ended up being slow.
4619
4620 * css/CSSStyleSelector.cpp:
4621 (WebCore::CSSStyleSelector::CSSStyleSelector):
4622 (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
4623 * css/CSSStyleSelector.h:
4624
hyatt@apple.com065494e2008-09-15 06:33:40 +000046252008-09-14 Dave Hyatt <hyatt@apple.com>
4626
4627 Refactor PlatformScrollbarWin's painting so that it is now done by ScrollbarThemeWin. PlatformScrollbarSafari
4628 is still painting itself (a subsequent patch will move its painting into ScrollbarThemeSafari).
4629
4630 Reviewed by Sam Weinig
4631
4632 * platform/ScrollBar.h:
4633 (WebCore::Scrollbar::client):
4634 (WebCore::Scrollbar::currentPos):
4635 (WebCore::Scrollbar::totalSize):
4636 * platform/ScrollbarTheme.h:
4637 * platform/ScrollbarThemeComposite.cpp:
4638 (WebCore::pageForScrollView):
4639 (WebCore::ScrollbarThemeComposite::paint):
4640 * platform/ScrollbarThemeComposite.h:
4641 (WebCore::ScrollbarThemeComposite::trackIsSinglePiece):
4642 * platform/win/PlatformScrollBar.h:
4643 * platform/win/PlatformScrollBarSafari.cpp:
4644 * platform/win/PlatformScrollBarWin.cpp:
4645 * platform/win/ScrollbarThemeSafari.h:
4646 (WebCore::ScrollbarThemeSafari::hasButtons):
4647 (WebCore::ScrollbarThemeSafari::hasThumb):
4648 (WebCore::ScrollbarThemeSafari::backButtonRect):
4649 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
4650 (WebCore::ScrollbarThemeSafari::trackRect):
4651 (WebCore::ScrollbarThemeSafari::splitTrack):
4652 (WebCore::ScrollbarThemeSafari::paintTrack):
4653 (WebCore::ScrollbarThemeSafari::paintButton):
4654 (WebCore::ScrollbarThemeSafari::paintThumb):
4655 * platform/win/ScrollbarThemeWin.cpp:
4656 (WebCore::isRunningOnVistaOrLater):
4657 (WebCore::checkAndInitScrollbarTheme):
4658 (WebCore::ScrollbarThemeWin::ScrollbarThemeWin):
4659 (WebCore::ScrollbarThemeWin::themeChanged):
4660 (WebCore::ScrollbarThemeWin::hasThumb):
4661 (WebCore::ScrollbarThemeWin::backButtonRect):
4662 (WebCore::ScrollbarThemeWin::forwardButtonRect):
4663 (WebCore::ScrollbarThemeWin::trackRect):
4664 (WebCore::ScrollbarThemeWin::splitTrack):
4665 (WebCore::ScrollbarThemeWin::paintTrack):
4666 (WebCore::ScrollbarThemeWin::paintButton):
4667 (WebCore::gripperRect):
4668 (WebCore::paintGripper):
4669 (WebCore::ScrollbarThemeWin::paintThumb):
4670 (WebCore::ScrollbarThemeWin::thumbPosition):
4671 (WebCore::ScrollbarThemeWin::thumbLength):
4672 (WebCore::ScrollbarThemeWin::trackLength):
4673 * platform/win/ScrollbarThemeWin.h:
4674 (WebCore::ScrollbarThemeWin::hasButtons):
4675 (WebCore::ScrollbarThemeWin::trackIsSinglePiece):
4676
timothy@apple.comd91172c2008-09-15 05:38:00 +000046772008-09-14 Anthony Ricaud <rik24d@gmail.com>
4678
4679 Moving all resource graphs under the same container for future scalable feature.
4680 This is a speedup on resize but maybe a loss on changing the sorting function.
4681
4682 https://bugs.webkit.org/show_bug.cgi?id=20555
4683
4684 Reviewed by Timothy Hatcher.
4685
4686 * page/inspector/ResourcesPanel.js: Added a container for all resource graphs.
4687 Added WebInspector.ResourceGraph. No more _updateGraphBars on resize.
4688 * page/inspector/inspector.css: Edited corresponding rules and removed unnecessaries.
4689
ap@webkit.orga14074b2008-09-15 04:52:44 +000046902008-09-14 Alexey Proskuryakov <ap@webkit.org>
4691
4692 Reviewed by Maciej Stachowiak.
4693
4694 https://bugs.webkit.org/show_bug.cgi?id=20738
4695 compareBoundaryPoints gives incorrect results
4696
4697 Test: fast/dom/Range/compareBoundaryPoints-2.html
4698
4699 * dom/Range.cpp: (WebCore::Range::compareBoundaryPoints): Correct meanings of START_TO_END
4700 and END_TO_START.
4701 * page/DOMSelection.cpp: (WebCore::DOMSelection::addRange): Updated for this change.
4702
mjs@apple.com285bdcf2008-09-15 02:55:16 +000047032008-09-14 Maciej Stachowiak <mjs@apple.com>
4704
4705 Unreviewed build fix.
4706
mjs@apple.comcbb31e52008-09-15 03:10:35 +00004707 Trying again.
4708
4709 * bindings/js/JSQuarantinedObjectWrapper.cpp:
4710 (WebCore::JSQuarantinedObjectWrapper::hasInstance):
4711
47122008-09-14 Maciej Stachowiak <mjs@apple.com>
4713
4714 Unreviewed build fix.
4715
mjs@apple.com285bdcf2008-09-15 02:55:16 +00004716 Blind attempt to fix build. Correct parameters for hasInstance.
4717
4718 * bindings/js/JSQuarantinedObjectWrapper.cpp:
4719 (WebCore::JSQuarantinedObjectWrapper::hasInstance):
4720 * bindings/js/JSQuarantinedObjectWrapper.h:
4721
mitz@apple.come85f7362008-09-15 02:23:24 +000047222008-09-14 Dan Bernstein <mitz@apple.com>
4723
4724 Rubber-stamped by Sam Weinig.
4725
4726 - revert <http://trac.webkit.org/changeset/36382> because it exposed
4727 <https://bugs.webkit.org/show_bug.cgi?id=20846> and resulted in crashes
4728 on Tiger.
4729
4730 * platform/graphics/mac/FontCacheMac.mm:
4731 (WebCore::FontCache::getFontDataForCharacters):
4732 (WebCore::FontCache::getLastResortFallbackFont):
4733
hyatt@apple.comf18feec2008-09-15 00:56:11 +000047342008-09-14 Dave Hyatt <hyatt@apple.com>
4735
4736 Add a new ScrollbarThemeComposite base class that is shared by ScrollbarThemeSafari and
4737 ScrollbarThemeWin. Any scrollbar that wants to render by ScrollbarPart can subclass from this
4738 theme.
4739
4740 Reviewed by Sam Weinig
4741
4742 * WebCore.vcproj/WebCore.vcproj:
4743 * platform/win/ScrollbarThemeSafari.h:
4744 * platform/win/ScrollbarThemeWin.h:
4745
alp@webkit.orgd694e942008-09-15 00:20:15 +000047462008-09-14 Alp Toker <alp@nuanti.com>
4747
4748 https://bugs.webkit.org/show_bug.cgi?id=20320
4749 [GTK] A white rectangle is visible behind widgets with rounded corners
4750
4751 Sync bundled gtk2drawing.c to the latest version from Mozilla (coding
4752 style exempt).
4753
4754 Requested by Michael Monreal.
4755
4756 * platform/gtk/RenderThemeGtk.cpp:
4757 (WebCore::RenderThemeGtk::RenderThemeGtk):
4758 * platform/gtk/gtk2drawing.c:
4759 (moz_gtk_set_widget_name):
4760 (ensure_window_widget):
4761 (setup_widget_prototype):
4762 (ensure_button_arrow_widget):
4763 (moz_gtk_get_combo_box_inner_button):
4764 (moz_gtk_get_combo_box_button_inner_widgets):
4765 (ensure_combo_box_widgets):
4766 (moz_gtk_get_combo_box_entry_inner_widgets):
4767 (moz_gtk_get_combo_box_entry_arrow):
4768 (ensure_combo_box_entry_widgets):
4769 (ensure_toolbar_widget):
4770 (ensure_tooltip_widget):
4771 (ensure_menu_bar_widget):
4772 (ensure_menu_bar_item_widget):
4773 (ensure_menu_popup_widget):
4774 (ensure_menu_item_widget):
4775 (ensure_image_menu_item_widget):
4776 (ensure_menu_separator_widget):
4777 (ensure_check_menu_item_widget):
4778 (ensure_tree_header_cell_widget):
4779 (ensure_scrolled_window_widget):
4780 (moz_gtk_button_paint):
4781 (moz_gtk_init):
4782 (moz_gtk_button_get_inner_border):
4783 (moz_gtk_toggle_paint):
4784 (calculate_button_inner_rect):
4785 (calculate_arrow_rect):
4786 (moz_gtk_scrollbar_button_paint):
4787 (moz_gtk_scrollbar_thumb_paint):
4788 (moz_gtk_caret_paint):
4789 (moz_gtk_entry_paint):
4790 (moz_gtk_treeview_paint):
4791 (moz_gtk_tree_header_cell_paint):
4792 (moz_gtk_combo_box_paint):
4793 (moz_gtk_downarrow_paint):
4794 (moz_gtk_combo_box_entry_button_paint):
4795 (moz_gtk_toolbar_paint):
4796 (moz_gtk_tab_scroll_arrow_paint):
4797 (moz_gtk_menu_bar_paint):
4798 (moz_gtk_menu_item_paint):
4799 (moz_gtk_get_widget_border):
4800 (moz_gtk_get_combo_box_entry_button_size):
4801 (moz_gtk_get_tab_scroll_arrow_size):
4802 (moz_gtk_get_downarrow_size):
4803 (moz_gtk_images_in_menus):
4804 (moz_gtk_widget_paint):
4805 (moz_gtk_shutdown):
4806 * platform/gtk/gtkdrawing.h:
4807
hyatt@apple.com3ab48302008-09-14 23:55:16 +000048082008-09-14 David Hyatt <hyatt@apple.com>
4809
4810 Convert Mac, Gtk, wx and Qt over to the new ScrollbarTheme for
4811 painting. Mac and Gtk themes don't do anything and just let the
4812 underlying widget paint. Qt now uses the theme to paint. wx doesn't
4813 do anything yet.
4814
4815 Reviewed by Sam Weinig
4816
4817 * platform/ScrollBar.cpp:
4818 (WebCore::Scrollbar::paint):
4819 * platform/ScrollBar.h:
4820 (WebCore::Scrollbar::value):
4821 (WebCore::Scrollbar::visibleSize):
4822 (WebCore::Scrollbar::maximum):
4823 (WebCore::Scrollbar::lineStep):
4824 (WebCore::Scrollbar::pageStep):
4825 (WebCore::Scrollbar::pixelStep):
4826 (WebCore::Scrollbar::pressedPart):
4827 (WebCore::Scrollbar::hoveredPart):
4828 (WebCore::Scrollbar::theme):
4829 * platform/ScrollbarTheme.h:
4830 (WebCore::ScrollbarTheme::paint):
4831 (WebCore::ScrollbarTheme::scrollbarThickness):
4832 (WebCore::ScrollbarTheme::supportsControlTints):
4833 (WebCore::ScrollbarTheme::themeChanged):
4834 * platform/gtk/PlatformScrollBar.h:
4835 * platform/gtk/PlatformScrollBarGtk.cpp:
4836 * platform/mac/PlatformScrollBar.h:
4837 * platform/mac/PlatformScrollBarMac.mm:
4838 * platform/qt/PlatformScrollBar.h:
4839 * platform/qt/PlatformScrollBarQt.cpp:
4840 * platform/qt/ScrollbarThemeQt.cpp:
4841 (WebCore::styleOptionSlider):
4842 * platform/qt/ScrollbarThemeQt.h:
4843 (WebCore::ScrollbarThemeQt::paint):
4844 * platform/win/PlatformScrollBarSafari.cpp:
4845 (WebCore::PlatformScrollbar::paint):
4846 * platform/win/ScrollbarThemeSafari.h:
4847 (WebCore::ScrollbarThemeSafari::supportsControlTints):
4848 * platform/wx/PlatformScrollBar.h:
4849 * platform/wx/TemporaryLinkStubs.cpp:
4850 (PlatformScrollbar::~PlatformScrollbar):
4851
weinig@apple.comcb93e262008-09-14 21:36:11 +000048522008-09-14 Sam Weinig <sam@webkit.org>
4853
weinig@apple.com6ef2b872008-09-14 22:15:28 +00004854 Qt build fix.
4855
4856 * platform/qt/PlatformScrollBarQt.cpp:
4857
48582008-09-14 Sam Weinig <sam@webkit.org>
4859
weinig@apple.com064861a2008-09-14 22:12:49 +00004860 Reviewed by Mark Rowe.
4861
4862 Remove extraneous semicolons.
4863
4864 * bindings/scripts/CodeGeneratorObjC.pm:
4865 * html/HTMLLinkElement.cpp:
4866 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
4867 * html/HTMLScriptElement.cpp:
4868 (WebCore::HTMLScriptElement::charsetAttributeValue):
4869 (WebCore::HTMLScriptElement::typeAttributeValue):
4870 * platform/graphics/qt/GradientQt.cpp:
4871 (WebCore::Gradient::platformGradient):
4872 * platform/qt/ScrollViewQt.cpp:
4873 (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
4874 * platform/win/ScrollViewWin.cpp:
4875 (WebCore::ScrollView::updateScrollbars):
4876 * rendering/RenderBlock.cpp:
4877 (WebCore::RenderBlock::paintEllipsisBoxes):
4878 * svg/SVGPathSegList.cpp:
4879 (WebCore::SVGPathSegList::toPathData):
4880
48812008-09-14 Sam Weinig <sam@webkit.org>
4882
weinig@apple.comcb93e262008-09-14 21:36:11 +00004883 Qt build fix.
4884
weinig@apple.com31311a62008-09-14 22:00:15 +00004885 * platform/qt/ScrollViewQt.cpp:
4886 (WebCore::ScrollView::updateScrollbars):
4887
48882008-09-14 Sam Weinig <sam@webkit.org>
4889
4890 Qt build fix.
4891
weinig@apple.comcb93e262008-09-14 21:36:11 +00004892 * platform/qt/PlatformScrollBarQt.cpp:
4893 (WebCore::PlatformScrollbar::PlatformScrollbar):
4894 (WebCore::PlatformScrollbar::paint):
4895
jmalonzo@webkit.org65e836c2008-09-14 01:57:13 +000048962008-09-13 Jan Michael Alonzo <jmalonzo@webkit.org>
4897
4898 Gtk build fix, not reviewed.
4899
4900 * platform/gtk/PlatformScrollBarGtk.cpp:
4901 (PlatformScrollbar::PlatformScrollbar):
4902 * platform/gtk/ScrollViewGtk.cpp:
4903 (WebCore::ScrollView::updateScrollbars):
4904
hyatt@apple.comd62f5bf2008-09-14 00:32:19 +000049052008-09-13 Dave Hyatt <hyatt@apple.com>
4906
hyatt@apple.com21ab7c62008-09-14 01:26:22 +00004907 Remove scrollbar's setRect method. Clients can now just call setFrameGeometry (the corresponding Widget) method
4908 to set the dimensions of a scrollbar.
4909
4910 Reviewed by Sam Weinig
4911
4912 * platform/ScrollBar.h:
4913 * platform/gtk/PlatformScrollBar.h:
4914 * platform/gtk/PlatformScrollBarGtk.cpp:
4915 (PlatformScrollbar::setFrameGeometry):
4916 * platform/gtk/ScrollViewGtk.cpp:
4917 (WebCore::ScrollView::updateScrollbars):
4918 * platform/mac/PlatformScrollBarMac.mm:
4919 * platform/qt/PlatformScrollBarQt.cpp:
4920 * platform/qt/ScrollViewQt.cpp:
4921 (WebCore::ScrollView::updateScrollbars):
4922 * platform/win/PlatformScrollBar.h:
4923 * platform/win/PlatformScrollBarSafari.cpp:
4924 (WebCore::PlatformScrollbar::PlatformScrollbar):
4925 (WebCore::PlatformScrollbar::setFrameGeometry):
4926 * platform/win/PlatformScrollBarWin.cpp:
4927 (WebCore::PlatformScrollbar::PlatformScrollbar):
4928 (WebCore::PlatformScrollbar::setFrameGeometry):
4929 * platform/win/PopupMenuWin.cpp:
4930 (WebCore::PopupWndProc):
4931 * platform/win/ScrollViewWin.cpp:
4932 (WebCore::ScrollView::updateScrollbars):
4933 * platform/wx/PlatformScrollBar.h:
4934 * platform/wx/TemporaryLinkStubs.cpp:
4935 (PlatformScrollbar::updateThumbProportion):
4936 * rendering/RenderLayer.cpp:
4937 (WebCore::RenderLayer::positionOverflowControls):
4938 * rendering/RenderListBox.cpp:
4939 (WebCore::RenderListBox::paintScrollbar):
4940
49412008-09-13 Dave Hyatt <hyatt@apple.com>
4942
hyatt@apple.comed9485a2008-09-14 01:06:57 +00004943 Remove setEnabled() from all Scrollbar classes that were just using their Widget base class methods.
4944
4945 Reviewed by Sam Weinig
4946
4947 * platform/ScrollBar.h:
4948 * platform/gtk/PlatformScrollBar.h:
4949 * platform/gtk/PlatformScrollBarGtk.cpp:
4950 * platform/mac/PlatformScrollBar.h:
4951 * platform/mac/PlatformScrollBarMac.mm:
4952 * platform/win/PlatformScrollBar.h:
4953 * platform/win/PlatformScrollBarSafari.cpp:
4954 * platform/win/PlatformScrollBarWin.cpp:
4955 * platform/wx/PlatformScrollBar.h:
4956 * platform/wx/TemporaryLinkStubs.cpp:
4957 (PlatformScrollbar::~PlatformScrollbar):
4958
49592008-09-13 Dave Hyatt <hyatt@apple.com>
4960
hyatt@apple.com64d98032008-09-14 00:58:29 +00004961 Remove width()/height() from Scrollbar now that it derives from Widget. Remove width()/height() from
4962 all PlatformScrollbar subclasses that just called the Widget base class versions of those methods.
4963
4964 Reviewed by Sam Weinig
4965
4966 * platform/ScrollBar.h:
4967 * platform/gtk/PlatformScrollBar.h:
4968 * platform/gtk/PlatformScrollBarGtk.cpp:
4969 * platform/mac/PlatformScrollBar.h:
4970 * platform/mac/PlatformScrollBarMac.mm:
4971 * platform/win/PlatformScrollBarSafari.cpp:
4972 * platform/win/PlatformScrollBarWin.cpp:
4973 * platform/wx/PlatformScrollBar.h:
4974 * platform/wx/TemporaryLinkStubs.cpp:
4975 (PlatformScrollbar::~PlatformScrollbar):
4976
49772008-09-13 Dave Hyatt <hyatt@apple.com>
4978
hyatt@apple.comd62f5bf2008-09-14 00:32:19 +00004979 Move stopTimerIfNeeded out of PlatformScrollbar destructors and into Scrollbar.
4980
4981 Reviewed by Sam Weinig
4982
4983 * platform/ScrollBar.cpp:
4984 (WebCore::Scrollbar::~Scrollbar):
4985 * platform/ScrollBar.h:
4986 * platform/qt/PlatformScrollBarQt.cpp:
4987 (WebCore::PlatformScrollbar::~PlatformScrollbar):
4988 * platform/win/PlatformScrollBarSafari.cpp:
4989 (WebCore::PlatformScrollbar::~PlatformScrollbar):
4990 * platform/win/PlatformScrollBarWin.cpp:
4991 (WebCore::PlatformScrollbar::~PlatformScrollbar):
4992
hyatt@apple.coma3c52492008-09-13 23:57:08 +000049932008-09-13 David Hyatt <hyatt@apple.com>
4994
4995 Move maximum() from Qt's PlatformScrollbar to be a cross-platform
4996 function on Scrollbar. Fixes Qt build bustage.
4997
4998 Reviewed by Sam Weinig
4999
5000 * platform/ScrollBar.h:
5001 (WebCore::Scrollbar::orientation):
5002 (WebCore::Scrollbar::value):
5003 (WebCore::Scrollbar::maximum):
5004 * platform/qt/PlatformScrollBar.h:
5005
mitz@apple.comb3d22882008-09-13 23:06:59 +000050062008-09-13 Dan Bernstein <mitz@apple.com>
5007
5008 Reviewed by Sam Weinig.
5009
5010 - use the LastResort font for missing glyphs instead of showing the
5011 primary font's missing glyph
5012
5013 Test: platform/mac/fast/text/last-resort-font.html
5014
5015 * platform/graphics/mac/FontCacheMac.mm:
5016 (WebCore::FontCache::getFontDataForCharacters): Changed to return the
5017 last resort font if a substitute font cannot be found.
5018 (WebCore::FontCache::getLastResortFallbackFont): Removed an outdated
5019 comment (the user's preferred standard font is included in the search
5020 thanks to code in FontCache::getFontData()) and changed to return the
5021 LastResort font.
5022
hyatt@apple.com0c378c72008-09-13 22:59:05 +000050232008-09-13 Dave Hyatt <hyatt@apple.com>
5024
5025 This patch adds ScrollbarTheme to the build. ScrollbarTheme is similar to RenderTheme (but for
5026 scrollbars only). For now ScrollbarTheme just handles returning the size of scrollbars. Subsequent
5027 patches will move rendering and hit testing functionality into this class.
5028
5029 Implemented ScrollbarTheme subclasses for four ports (Mac, Win, Gtk, Qt). The wxWidgets port does not
5030 implement scrollbars yet, so I added a temporary link stub to keep things compiling on wx.
5031
5032 Reviewed by Sam Weinig
5033
5034 * GNUmakefile.am:
5035 * WebCore.pro:
5036 * WebCore.vcproj/WebCore.vcproj:
5037 * platform/ScrollBar.cpp:
5038 (WebCore::Scrollbar::Scrollbar):
5039 * platform/ScrollBar.h:
5040 * platform/ScrollbarTheme.h: Added.
5041 (WebCore::ScrollbarTheme::~ScrollbarTheme):
5042 (WebCore::ScrollbarTheme::scrollbarThickness):
5043 (WebCore::ScrollbarTheme::themeChanged):
5044 * platform/gtk/ScrollbarThemeGtk.cpp: Added.
5045 (WebCore::ScrollbarTheme::nativeTheme):
5046 (WebCore::ScrollbarThemeGtk::~ScrollbarThemeGtk):
5047 (WebCore::ScrollbarThemeGtk::scrollbarThickness):
5048 * platform/gtk/ScrollbarThemeGtk.h: Added.
5049 * platform/mac/PlatformScrollBar.h:
5050 * platform/mac/ScrollbarThemeMac.cpp: Added.
5051 (WebCore::ScrollbarTheme::nativeTheme):
5052 (WebCore::):
5053 (WebCore::ScrollbarThemeMac::~ScrollbarThemeMac):
5054 (WebCore::ScrollbarThemeMac::scrollbarThickness):
5055 * platform/mac/ScrollbarThemeMac.h: Added.
5056 * platform/qt/PlatformScrollBarQt.cpp:
5057 * platform/qt/ScrollbarThemeQt.cpp: Added.
5058 (WebCore::ScrollbarTheme::nativeTheme):
5059 (WebCore::ScrollbarThemeQt::~ScrollbarThemeQt):
5060 (WebCore::ScrollbarThemeQt::scrollbarThickness):
5061 * platform/qt/ScrollbarThemeQt.h: Added.
5062 * platform/win/PlatformScrollBar.h:
5063 * platform/win/PlatformScrollBarSafari.cpp:
5064 * platform/win/PlatformScrollBarWin.cpp:
5065 * platform/win/PopupMenuWin.cpp:
5066 (WebCore::PopupMenu::calculatePositionAndSize):
5067 * platform/win/ScrollViewWin.cpp:
5068 (WebCore::ScrollView::updateScrollbars):
5069 (WebCore::ScrollView::themeChanged):
5070 * platform/win/ScrollbarThemeSafari.cpp: Added.
5071 (WebCore::ScrollbarTheme::nativeTheme):
5072 (WebCore::):
5073 (WebCore::ScrollbarThemeSafari::~ScrollbarThemeSafari):
5074 (WebCore::ScrollbarThemeSafari::scrollbarThickness):
5075 * platform/win/ScrollbarThemeSafari.h: Added.
5076 * platform/win/ScrollbarThemeWin.cpp: Added.
5077 (WebCore::ScrollbarTheme::nativeTheme):
5078 (WebCore::ScrollbarThemeWin::~ScrollbarThemeWin):
5079 (WebCore::ScrollbarThemeWin::scrollbarThickness):
5080 (WebCore::ScrollbarThemeWin::themeChanged):
5081 * platform/win/ScrollbarThemeWin.h: Added.
5082 * platform/wx/TemporaryLinkStubs.cpp:
5083 (ScrollbarTheme::nativeTheme):
5084 * rendering/RenderLayer.cpp:
5085 (WebCore::scrollCornerRect):
5086 * rendering/RenderTextControl.cpp:
5087 (WebCore::RenderTextControl::calcHeight):
5088 (WebCore::RenderTextControl::calcPrefWidths):
5089
cfleizach@apple.comd26c2762008-09-13 21:05:18 +000050902008-09-13 Chris Fleizach <cfleizach@apple.com>
5091
5092 Reviewed by Timothy Hatcher.
5093
5094 <rdar://problem/5060439> Web elements should have an AXTopLevelUIElement
5095
5096 * page/mac/AccessibilityObjectWrapper.mm:
5097 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
5098
mitz@apple.com6307c9f2008-09-13 20:27:37 +000050992008-09-13 Dan Bernstein <mitz@apple.com>
5100
5101 Reviewed by Timothy Hatcher.
5102
5103 - fix <rdar://problem/6171280> REGRESSION (r35667): Assertion failure in WebCore::FrameView::scheduleRelayout() when releasing a page with counters from the b/f cache
5104
5105 No regression test because the back/forward cache is disabled in DumpRenderTree
5106
5107 * rendering/RenderContainer.cpp:
5108 (WebCore::RenderContainer::invalidateCounters): Bail out if the document
5109 is being destroyed.
5110
kevino@webkit.org1e178ee2008-09-13 18:48:39 +000051112008-09-13 Kevin Ollivier <kevino@theolliviers.com>
5112
5113 wx build fixes for new methods recently introduced.
5114
5115 * platform/graphics/wx/AffineTransformWx.cpp:
5116 (WebCore::AffineTransform::AffineTransform):
5117 (WebCore::AffineTransform::setMatrix):
5118 (WebCore::AffineTransform::setA):
5119 (WebCore::AffineTransform::setB):
5120 (WebCore::AffineTransform::setC):
5121 (WebCore::AffineTransform::setD):
5122 (WebCore::AffineTransform::setE):
5123 (WebCore::AffineTransform::setF):
5124 * platform/wx/LocalizedStringsWx.cpp:
5125 (WebCore::AXDefinitionListTermText):
5126 (WebCore::AXDefinitionListDefinitionText):
5127
hyatt@apple.com30ed5442008-09-13 18:39:58 +000051282008-09-12 Dave Hyatt <hyatt@apple.com>
5129
5130 Move the member variables of PlatformScrollbar up into Scrollbar. Move autoscroll timer handling
5131 up into scrollbar. Make sure a bunch of cross-platform code now just uses "Scrollbar" instead of
5132 "PlatformScrollbar."
5133
5134 Reviewed by Sam Weinig
5135
5136 * WebCore.vcproj/WebCore.vcproj:
5137 * editing/EditorCommand.cpp:
5138 * page/EventHandler.cpp:
5139 (WebCore::EventHandler::selectCursor):
5140 (WebCore::EventHandler::handleMousePressEvent):
5141 (WebCore::EventHandler::handleMouseMoveEvent):
5142 * page/EventHandler.h:
5143 * page/MouseEventWithHitTestResults.cpp:
5144 (WebCore::MouseEventWithHitTestResults::scrollbar):
5145 * page/MouseEventWithHitTestResults.h:
5146 * page/gtk/EventHandlerGtk.cpp:
5147 (WebCore::EventHandler::passMousePressEventToScrollbar):
5148 * page/mac/EventHandlerMac.mm:
5149 (WebCore::EventHandler::passMousePressEventToScrollbar):
5150 * page/qt/EventHandlerQt.cpp:
5151 (WebCore::EventHandler::passMousePressEventToScrollbar):
5152 * page/win/EventHandlerWin.cpp:
5153 (WebCore::EventHandler::passMousePressEventToScrollbar):
5154 * page/wx/EventHandlerWx.cpp:
5155 (WebCore::EventHandler::passMousePressEventToScrollbar):
5156 * platform/PopupMenu.h:
5157 * platform/ScrollBar.cpp:
5158 (WebCore::Scrollbar::Scrollbar):
5159 (WebCore::Scrollbar::autoscrollTimerFired):
5160 (WebCore::Scrollbar::autoscrollPressedPart):
5161 (WebCore::Scrollbar::startTimerIfNeeded):
5162 (WebCore::Scrollbar::stopTimerIfNeeded):
5163 (WebCore::Scrollbar::pressedPartScrollDirection):
5164 (WebCore::Scrollbar::pressedPartScrollGranularity):
5165 * platform/ScrollBar.h:
5166 (WebCore::Scrollbar::handleMousePressEvent):
5167 (WebCore::Scrollbar::invalidatePart):
5168 (WebCore::Scrollbar::thumbUnderMouse):
5169 * platform/ScrollView.h:
5170 * platform/ScrollbarClient.h: Added.
5171 (WebCore::ScrollbarClient::~ScrollbarClient):
5172 * platform/gtk/ScrollViewGtk.cpp:
5173 (WebCore::ScrollView::scrollbarUnderMouse):
5174 * platform/qt/PlatformScrollBar.h:
5175 * platform/qt/PlatformScrollBarQt.cpp:
5176 (WebCore::PlatformScrollbar::PlatformScrollbar):
5177 (WebCore::scrollbarPart):
5178 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
5179 (WebCore::PlatformScrollbar::handleMouseOutEvent):
5180 (WebCore::PlatformScrollbar::handleMousePressEvent):
5181 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
5182 * platform/qt/ScrollViewQt.cpp:
5183 (WebCore::ScrollView::scrollbarUnderMouse):
5184 (WebCore::ScrollView::wheelEvent):
5185 * platform/win/PlatformScrollBar.h:
5186 * platform/win/PlatformScrollBarSafari.cpp:
5187 (WebCore::PlatformScrollbar::PlatformScrollbar):
5188 * platform/win/PlatformScrollBarWin.cpp:
5189 (WebCore::PlatformScrollbar::PlatformScrollbar):
5190 * platform/win/ScrollViewWin.cpp:
5191 (WebCore::ScrollView::scrollbarUnderMouse):
5192 * rendering/HitTestResult.cpp:
5193 (WebCore::HitTestResult::setScrollbar):
5194 * rendering/HitTestResult.h:
5195 (WebCore::HitTestResult::scrollbar):
5196 * rendering/RenderLayer.cpp:
5197 (WebCore::RenderLayer::hitTestOverflowControls):
5198 * rendering/RenderLayer.h:
5199 * rendering/RenderListBox.h:
5200
sfalken@apple.comb4e407e2008-09-13 02:59:00 +000052012008-09-12 Steve Falkenburg <sfalken@apple.com>
5202
5203 Fix Mac build.
5204
5205 * css/CSSStyleSelector.cpp:
5206 (WebCore::getTransformOperationType):
5207
dino@apple.comf937dc62008-09-13 00:45:39 +000052082008-09-12 Chris Marrin <cmarrin@apple.com>
5209
5210 Reviewed by Dave Hyatt.
5211
5212 Make transform animation behavior match spec
5213 https://bugs.webkit.org/show_bug.cgi?id=20770
5214
5215 Tests: transitions/transform-op-list-match.html
5216 transitions/transform-op-list-no-match.html
5217
5218 * css/CSSStyleSelector.cpp:
5219 * css/CSSStyleSelector.h:
5220 * page/animation/AnimationBase.cpp:
5221 * page/animation/AnimationBase.h:
5222 * page/animation/ImplicitAnimation.cpp:
5223 * page/animation/ImplicitAnimation.h:
5224 * page/animation/KeyframeAnimation.cpp:
5225 * page/animation/KeyframeAnimation.h:
5226 * rendering/RenderLayer.cpp:
5227 * rendering/style/RenderStyle.cpp:
5228 * rendering/style/RenderStyle.h:
5229
timothy@apple.comab374dd2008-09-12 22:43:38 +000052302008-09-12 Ojan Vafai <ojan@chromium.org>
5231
5232 Properly escape contents of links added to the inspector.
5233 For now, just build the link with the DOM and get the
5234 outerHTML. Eventually, we probably just want to do
5235 this entirely with the DOM.
5236
5237 Reviewed by Timothy Hatcher.
5238
5239 https://bugs.webkit.org/show_bug.cgi?id=20684
5240
5241 * manual-tests/inspector/escape-links.html: Added.
5242 * page/inspector/StylesSidebarPane.js:
5243 * page/inspector/inspector.js:
5244 * page/inspector/utilities.js:
5245
adele@apple.com87fb3c72008-09-12 22:14:13 +000052462008-09-12 Adele Peterson <adele@apple.com>
5247
5248 Reviewed by John Sullivan and Kevin McCullough.
5249
5250 Fix for <rdar://problem/6216951> REGRESSION (r36000?): Crash due to infinite recursion into EventHandler::hitTestResultAtPoint() with disconnected frames
5251
5252 * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
5253 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
5254 cause infinite recursion. This change checks that we're not already on the main frame before hit testing again.
5255
kmccullough@apple.combdba2e32008-09-12 22:08:56 +000052562008-09-12 Kevin McCullough <kmccullough@apple.com>
5257
5258 RS by Tim .
5259
5260 Re-introducing the code since it was not the cause of the crash.
5261 See r36343.
5262
5263 * rendering/RenderObject.cpp:
5264 (WebCore::RenderObject::canBeProgramaticallyScrolled):
5265 * rendering/RenderObject.h:
5266
dino@apple.comf712ed02008-09-12 21:54:57 +000052672008-09-12 Chris Marrin <cmarrin@apple.com>
5268
5269 Reviewed by Dave Hyatt.
5270
5271 When changing one animation in a list, don't reset other animations
5272 https://bugs.webkit.org/show_bug.cgi?id=20675
5273
5274 Test: animations/change-one-anim.html
5275
5276 * page/animation/AnimationBase.cpp:
5277 (WebCore::AnimationBase::getNumProperties):
5278 * page/animation/AnimationBase.h:
5279 * page/animation/AnimationController.cpp:
5280 * page/animation/CompositeAnimation.cpp:
5281 (WebCore::CompositeAnimation::updateKeyframeAnimations):
5282 * page/animation/CompositeAnimation.h:
5283 * page/animation/ImplicitAnimation.cpp:
5284 * page/animation/KeyframeAnimation.cpp:
5285 * page/animation/KeyframeAnimation.h:
5286 (WebCore::KeyframeAnimation::setIndex):
5287
beidson@apple.com521e2b52008-09-12 18:40:03 +000052882008-09-12 Brady Eidson <beidson@apple.com>
5289
5290 Reviewed by Mitz Pettel
5291
5292 Fix the ASSERT and failure in webarchive/archive-empty-frame-source.html
5293
5294 * loader/DocumentLoader.cpp:
5295 (WebCore::DocumentLoader::mainResource): Further restoration of original WebArchive behavior.
5296 Subresources can never be created from nil data, but there is always a MainResource, whether
5297 or not there's any data. So in the case where the main resource has no data, fake it for the
5298 sake of creating the ArchiveResource.
5299
hyatt@apple.com818ffe92008-09-12 18:37:23 +000053002008-09-12 Dave Hyatt <hyatt@apple.com>
5301
5302 Preparation for major scrollbar rearchitecture. Eliminate the concept of non-widget based
5303 scrollbars (which we never supported anyway). Make Scrollbar derive from Widget directly.
5304 Remove all the isWidget and hasPlatformScrollbars guards.
5305
5306 Reviewed by Tim Hatcher
5307
5308 * platform/ScrollBar.h:
5309 * platform/gtk/PlatformScrollBar.h:
5310 * platform/mac/PlatformScrollBar.h:
5311 * platform/qt/PlatformScrollBar.h:
5312 * platform/win/PlatformScrollBar.h:
5313 * platform/win/ScrollViewWin.cpp:
5314 (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
5315 (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
5316 * platform/wx/PlatformScrollBar.h:
5317 * rendering/RenderLayer.cpp:
5318 (WebCore::RenderLayer::horizontalScrollbarWidget):
5319 (WebCore::RenderLayer::verticalScrollbarWidget):
5320 (WebCore::RenderLayer::createScrollbar):
5321 (WebCore::RenderLayer::destroyScrollbar):
5322 * rendering/RenderListBox.cpp:
5323 (WebCore::RenderListBox::~RenderListBox):
5324 (WebCore::RenderListBox::updateFromElement):
5325 (WebCore::RenderListBox::isPointInOverflowControl):
5326
mitz@apple.com0bef1302008-09-12 18:22:07 +000053272008-09-12 Dan Bernstein <mitz@apple.com>
5328
5329 Reviewed by Sam Weinig.
5330
5331 - https://bugs.webkit.org/show_bug.cgi?id=20793 clean up page/animation
5332
5333 * page/animation/AnimationController.cpp:
5334 * page/animation/AnimationController.h:
5335 * page/animation/CompositeAnimation.cpp:
5336 * page/animation/CompositeAnimation.h:
5337 * page/animation/ImplicitAnimation.cpp:
5338 * page/animation/ImplicitAnimation.h:
5339 * page/animation/KeyframeAnimation.cpp:
5340 * page/animation/KeyframeAnimation.h:
5341
timothy@apple.com43203432008-09-12 04:44:40 +000053422008-09-11 Timothy Hatcher <timothy@apple.com>
5343
5344 Add a renderedImage method to DOMNode to get an image
5345 of the rendering for the node and it's descendants.
5346
5347 <rdar://problem/5849349> Would like API to create
5348 an image for a DOM node
5349
5350 Reviewed by Oliver Hunt.
5351
5352 * bindings/objc/DOM.mm:
5353 (-[DOMNode renderedImage]): Call Frame::nodeImage.
5354 * bindings/objc/DOMPrivate.h:
5355 * page/Frame.h:
5356 * page/mac/FrameMac.mm:
5357 (WebCore::Frame::nodeImage):
5358
dino@apple.com9300a0b2008-09-12 00:36:31 +000053592008-09-08 Chris Marrin <cmarrin@apple.com>
5360
5361 Reviewed by Dave Hyatt
5362
5363 Need to support comma separated list of key times in keyframes selectors
5364 https://bugs.webkit.org/show_bug.cgi?id=20680
5365
5366 Test: animations/keyframes-comma-separated.html
5367
5368 * css/CSSGrammar.y:
5369 * css/CSSParser.cpp:
5370 (WebCore::CSSParser::createKeyframeRule):
5371 * css/CSSParser.h:
5372 * css/CSSStyleSelector.cpp:
5373 (WebCore::CSSStyleSelector::addKeyframeStyle):
5374 * css/WebKitCSSKeyframeRule.cpp:
5375 (WebCore::WebKitCSSKeyframeRule::WebKitCSSKeyframeRule):
5376 (WebCore::WebKitCSSKeyframeRule::cssText):
5377 (WebCore::WebKitCSSKeyframeRule::parseKeyString):
5378 * css/WebKitCSSKeyframeRule.h:
5379 (WebCore::WebKitCSSKeyframeRule::keyText):
5380 (WebCore::WebKitCSSKeyframeRule::setKeyText):
5381 (WebCore::WebKitCSSKeyframeRule::getKeys):
5382 * css/WebKitCSSKeyframesRule.cpp:
5383 (WebCore::WebKitCSSKeyframesRule::append):
5384 (WebCore::WebKitCSSKeyframesRule::insertRule):
5385 (WebCore::WebKitCSSKeyframesRule::deleteRule):
5386 (WebCore::WebKitCSSKeyframesRule::findRule):
5387 (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
5388 * css/WebKitCSSKeyframesRule.h:
5389 * page/animation/AnimationBase.cpp:
5390 (WebCore::AnimationBase::blendProperties):
5391
kmccullough@apple.com0f9f23a2008-09-11 22:57:09 +000053922008-09-11 Kevin McCullough <kmccullough@apple.com>
5393
5394 RS by Tim.
5395
5396 Reverting because this caused a crash.
5397
5398 * rendering/RenderObject.cpp:
5399 (WebCore::RenderObject::canBeProgramaticallyScrolled):
5400 (WebCore::RenderObject::hasScrollableView):
5401 * rendering/RenderObject.h:
5402
dino@apple.com19853b32008-09-11 21:59:08 +000054032008-09-11 Dean Jackson <dino@apple.com>
5404
5405 Reviewed by Dan Bernstein.
5406
5407 Fix assertion on transition property "none"
5408 https://bugs.webkit.org/show_bug.cgi?id=20751
5409
5410 Test: transitions/transition-end-event-set-none.html
5411
5412 * page/animation/CompositeAnimation.cpp:
5413 (WebCore::CompositeAnimation::updateTransitions):
5414
dsmith@webkit.orge6ea48f2008-09-11 21:41:33 +000054152008-09-11 David Smith <catfish.man@gmail.com>
5416
dsmith@webkit.org08103d92008-09-11 21:54:30 +00005417 Rubber-stamped by mitzpettel.
5418
5419 Remove an accidentally added extra file.
5420
5421 * WebCore: Removed.
5422
54232008-09-11 David Smith <catfish.man@gmail.com>
5424
dsmith@webkit.orge6ea48f2008-09-11 21:41:33 +00005425 Reviewed by Darin
5426
5427 https://bugs.webkit.org/show_bug.cgi?id=20180
5428
5429 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.
5430
5431 * WebCore.xcodeproj/project.pbxproj: Add NodeRenderStyle.h
5432 * css/CSSStyleSelector.cpp: include NodeRenderStyle.h
5433 * dom/Element.cpp: include NodeRenderStyle.h
5434 * dom/Node.cpp: Remove the definition of renderStyle()
5435 (WebCore::Node::nonRendererRenderStyle):
5436 * dom/Node.h: Make renderStyle() nonvirtual and add nonRendererRenderStyle()
5437 * dom/NodeRenderStyle.h: Added.
5438 (WebCore::Node::renderStyle): Inline the common case of this, call nonRendererRenderStyle for the part that needed to be virtual
5439 * html/HTMLOptGroupElement.cpp: include NodeRenderStyle.h
5440 * html/HTMLOptGroupElement.h:
5441 (WebCore::HTMLOptGroupElement::nonRendererRenderStyle): override to return m_style
5442 * html/HTMLOptionElement.cpp: include NodeRenderStyle.h
5443 * html/HTMLOptionElement.h:
5444 (WebCore::HTMLOptionElement::nonRendererRenderStyle): override to return m_style
5445 * rendering/RenderListBox.cpp: include NodeRenderStyle.h
5446 * rendering/RenderMenuList.cpp: include NodeRenderStyle.h
5447 * svg/SVGUseElement.cpp: include NodeRenderStyle.h
5448
kmccullough@apple.com38d3b0f2008-09-11 17:39:12 +000054492008-09-11 Kevin McCullough <kmccullough@apple.com>
5450
5451 Reviewed by Adele and Tim.
5452
5453 <rdar://problem/6100597> REGRESSION: clicking on search results in Web
5454 Inspector does not scroll to the line of the results (20167)
5455 - This was put in by Max to fix auto scrolling but is not correct for
5456 the whole web: rdar://problem/6213098
5457
5458 * rendering/RenderObject.cpp:
5459 (WebCore::RenderObject::canBeProgramaticallyScrolled):
5460 * rendering/RenderObject.h:
5461
cfleizach@apple.com6a3b1452008-09-11 16:24:09 +000054622008-09-11 Chris Fleizach <cfleizach@apple.com>
5463
5464 Reviewed by Beth Dakin
5465
5466 <rdar://problem/6210511> AX: if a frame has a title, that should be reported as the AXWebArea's title
5467
5468 Test: accessibility/frame-with-title.html
5469
5470 * page/AccessibilityRenderObject.cpp:
5471 (WebCore::AccessibilityRenderObject::accessibilityDescription):
5472
hausmann@webkit.orge8f8ffd2008-09-11 07:34:42 +000054732008-09-11 Dirk Schulze <vbs85@gmx.de>
5474
5475 Reviewed by Simon.
5476
hausmann@webkit.orgea57c432008-09-11 08:03:07 +00005477 Fixed stroke() and strokeRect() to support gradients
5478 and patterns on Qt.
5479
5480 [Qt] Canvas stroke don't work for gradients and patterns
5481 [https://bugs.webkit.org/show_bug.cgi?id=20749]
5482
5483 * platform/graphics/qt/GraphicsContextQt.cpp:
5484 (WebCore::GraphicsContext::strokePath):
5485 (WebCore::GraphicsContext::strokeRect):
5486
54872008-09-11 Dirk Schulze <vbs85@gmx.de>
5488
5489 Reviewed by Simon.
5490
hausmann@webkit.orgc11e3b72008-09-11 07:37:42 +00005491 https://bugs.webkit.org/show_bug.cgi?id=20729
5492
5493 Fixed canvas gradients for Qt
5494
5495 [Qt] Canvas gradients don't work as expected
5496 [https://bugs.webkit.org/show_bug.cgi?id=20729]
5497
5498 * platform/graphics/qt/GradientQt.cpp:
5499 (WebCore::Gradient::platformGradient):
5500
55012008-09-11 Dirk Schulze <vbs85@gmx.de>
5502
5503 Reviewed by Simon.
5504
hausmann@webkit.orge8f8ffd2008-09-11 07:34:42 +00005505 https://bugs.webkit.org/show_bug.cgi?id=20568
5506
5507 Add support for patterns to Qt.
5508
5509 * platform/graphics/qt/PatternQt.cpp:
5510 (WebCore::Pattern::createPlatformPattern):
5511
mitz@apple.com442c5892008-09-10 18:21:14 +000055122008-09-10 Dan Bernstein <mitz@apple.com>
5513
5514 Reviewed by Sam Weinig.
5515
5516 - clean up AnimationBase
5517
5518 * page/animation/AnimationBase.cpp:
5519 * page/animation/AnimationBase.h:
5520 * page/animation/CompositeAnimation.cpp:
5521 * page/animation/ImplicitAnimation.cpp:
5522 * page/animation/ImplicitAnimation.h:
5523 * page/animation/KeyframeAnimation.cpp:
5524 * page/animation/KeyframeAnimation.h:
5525
ap@webkit.orgbaf12872008-09-10 16:42:10 +000055262008-09-10 Alexey Proskuryakov <ap@webkit.org>
5527
5528 Reviewed by Darin Adler.
5529
5530 https://bugs.webkit.org/show_bug.cgi?id=20741
5531 REGRESSION: ISO-8859-8-I encoding is registered incorrectly
5532
5533 Turns out that there were no real behavior changes for 8859-8, as it was only a debug-only
5534 check to ignore this specific registration that was failing. Yet, I decided to add a bunch of
5535 tests for ISO-8859-8 encoding aliases, as we handle them in a quite complicated manner.
5536
5537 I also found and fixed a potential crasher for non-Mac ports.
5538
5539 Tests: fast/encoding/hebrew/8859-8-e.html
5540 fast/encoding/hebrew/8859-8-i.html
5541 fast/encoding/hebrew/8859-8.html
5542 fast/encoding/hebrew/csISO88598I.html
5543 fast/encoding/hebrew/hebrew.html
5544 fast/encoding/hebrew/iso-ir-138.html
5545 fast/encoding/hebrew/logical.html
5546
5547 * platform/text/TextEncodingRegistry.cpp: (WebCore::checkExistingName): Check for iso-8859-8
5548 (case-insensitively, because different versions of ICU report this MIME name in different
5549 case).
5550
5551 * platform/text/TextCodecICU.cpp:
5552 (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated some comments.
5553 (WebCore::TextCodecICU::registerExtendedCodecs): Try both MIME and IANA names here, too.
5554 There are four names in ICU that only have MIME names (x-mac-* ones), so we could end up
5555 with an encoding map entry, but no codec for these. This was not an issue on the Mac, as
5556 we also support these via TEC (which we should stop doing), but on Windows, this would
5557 likely crash.
5558
hyatt@apple.com0197e6b2008-09-10 05:29:46 +000055592008-09-09 Dave Hyatt <hyatt@apple.com
5560
5561 Resurrect PlatformScrollbarWin.
5562
5563 Reviewed by Adam Roben
5564
5565 * WebCore.vcproj/WebCore.vcproj:
5566 * platform/win/PlatformScrollBarWin.cpp:
5567 (WebCore::isRunningOnVistaOrLater):
5568 (WebCore::checkAndInitScrollbarTheme):
5569 (WebCore::PlatformScrollbar::PlatformScrollbar):
5570 (WebCore::PlatformScrollbar::invalidateTrack):
5571 (WebCore::PlatformScrollbar::invalidatePart):
5572 (WebCore::PlatformScrollbar::paint):
5573 (WebCore::PlatformScrollbar::hasButtons):
5574 (WebCore::PlatformScrollbar::hasThumb):
5575 (WebCore::PlatformScrollbar::backButtonRect):
5576 (WebCore::PlatformScrollbar::forwardButtonRect):
5577 (WebCore::PlatformScrollbar::trackRect):
5578 (WebCore::PlatformScrollbar::gripperRect):
5579 (WebCore::PlatformScrollbar::thumbLength):
5580 (WebCore::PlatformScrollbar::paintButton):
5581 (WebCore::PlatformScrollbar::paintTrack):
5582 (WebCore::PlatformScrollbar::paintThumb):
5583 (WebCore::PlatformScrollbar::paintGripper):
5584 (WebCore::PlatformScrollbar::hitTest):
5585 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
5586 (WebCore::PlatformScrollbar::handleMouseOutEvent):
5587 (WebCore::PlatformScrollbar::themeChanged):
5588
cwzwarich@webkit.org8a334572008-09-10 03:22:04 +000055892008-09-09 Cameron Zwarich <cwzwarich@uwaterloo.ca>
5590
5591 Reviewed by Maciej Stachowiak.
5592
5593 Bug 20759: Remove MacroAssembler
5594 <https://bugs.webkit.org/show_bug.cgi?id=20759>
5595
5596 Make the necessary changes to ForwardingHeaders to remove
5597 MacroAssembler.
5598
5599 * ForwardingHeaders/masm/IA32MacroAsm.h: Removed.
5600 * ForwardingHeaders/masm/MacroAssembler.h: Removed.
5601 * ForwardingHeaders/masm/X86Assembler.h: Added.
5602
alp@webkit.org509e3d42008-09-10 01:26:20 +000056032008-09-09 Alp Toker <alp@nuanti.com>
5604
5605 Reviewed by Dave Hyatt.
5606
5607 https://bugs.webkit.org/show_bug.cgi?id=16792
5608 [GTK] Fails to render Japanese/Chinese text with simple path
5609
5610 https://bugs.webkit.org/show_bug.cgi?id=16942
5611 [GTK] Oddities in font selection and fall back
5612
5613 https://bugs.webkit.org/show_bug.cgi?id=16862
5614 [GTK] Custom fonts hard-coded to use grayscale antialiasing and no hinting
5615
5616 GTK+ font fixes and enhancements.
5617
5618 Implement font fallback for the simple FontConfig-based text path and
5619 improve the Pango-based complex text path to make use of requested
5620 font properties and available font selection.
5621
5622 Add text shadow support to the complex path.
5623
5624 * platform/graphics/gtk/FontCacheGtk.cpp:
5625 (WebCore::FontCache::getFontDataForCharacters):
5626 (WebCore::FontCache::getSimilarFontPlatformData):
5627 * platform/graphics/gtk/FontGtk.cpp:
5628 (WebCore::setPangoAttributes):
5629 (WebCore::Font::drawComplexText):
5630 (WebCore::getDefaultPangoLayout):
5631 (WebCore::Font::floatWidthForComplexText):
5632 (WebCore::Font::offsetForPositionForComplexText):
5633 (WebCore::Font::selectionRectForComplexText):
5634 * platform/graphics/gtk/FontPlatformData.h:
5635 (WebCore::FontPlatformData::FontPlatformData):
5636 (WebCore::FontPlatformData::hash):
5637 * platform/graphics/gtk/FontPlatformDataGtk.cpp:
5638 (WebCore::FontPlatformData::FontPlatformData):
5639 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
5640 (WebCore::SimpleFontData::platformDestroy):
5641
hyatt@apple.com33f37f62008-09-09 23:51:46 +000056422008-09-09 Dave Hyatt <hyatt@apple.com>
5643
5644 Make the Windows classic case work again. Overlap in slider constants and other constants broke
5645 the push state for buttons and checkboxes. Make sure to check the RenderObject's appearance
5646 value to make sure it's really a slider thumb to resolve this conflict.
5647
5648 Reviewed by Adam Roben
5649
5650 * rendering/RenderThemeWin.cpp:
5651 (WebCore::drawControl):
5652
dino@apple.com442d0652008-09-09 23:36:56 +000056532008-09-05 Chris Marrin <cmarrin@apple.com>
5654
5655 Reviewed by Sam Weinig.
5656
5657 Need to handle the case when 0% or 100% keyframe is omitted
5658 https://bugs.webkit.org/show_bug.cgi?id=20679
5659
5660 Tests: animations/keyframes-from-missing.html
5661 animations/keyframes-to-missing.html
5662
5663 * css/CSSStyleSelector.cpp:
5664 (WebCore::CSSStyleSelector::addKeyframeStyle):
5665
hyatt@apple.com419d0ad2008-09-09 23:11:14 +000056662008-09-09 Dave Hyatt <hyatt@apple.com>
5667
5668 Resurrect Safari's original RenderThemeWin and bring it up to date with ToT. Having a current
5669 RenderThemeWin that does not have any Skia dependencies should provide a good basis for a potential
5670 merge of Google Chrome's RenderThemeWin (to help us see where the Skia stuff can be cut and to see
5671 what changes have been made as compared with the old RenderThemeWin).
5672
5673 Fix CSS2 system fonts to properly set both the rendering mode (so that they properly pick up GDI vs. CG
5674 text rendering modes) and the printer font setting (so that OS X system fonts properly pick up screen
5675 vs. printer advancement rounding).
5676
5677 Reviewed by Adam/Sam
5678
5679 * css/CSSStyleSelector.cpp:
5680 (WebCore::CSSStyleSelector::applyProperty):
5681 * platform/graphics/Icon.h:
5682 (WebCore::Icon::create):
5683 * rendering/RenderThemeWin.cpp:
5684 (WebCore::RenderThemeWin::RenderThemeWin):
5685 (WebCore::RenderThemeWin::~RenderThemeWin):
5686 (WebCore::RenderThemeWin::buttonTheme):
5687 (WebCore::RenderThemeWin::textFieldTheme):
5688 (WebCore::RenderThemeWin::menuListTheme):
5689 (WebCore::RenderThemeWin::sliderTheme):
5690 (WebCore::RenderThemeWin::close):
5691 (WebCore::RenderThemeWin::themeChanged):
5692 (WebCore::RenderThemeWin::supportsHover):
5693 (WebCore::fillFontDescription):
5694 (WebCore::RenderThemeWin::systemFont):
5695 (WebCore::RenderThemeWin::supportsFocus):
5696 (WebCore::RenderThemeWin::determineClassicState):
5697 (WebCore::RenderThemeWin::determineState):
5698 (WebCore::RenderThemeWin::determineSliderThumbState):
5699 (WebCore::RenderThemeWin::getClassicThemeData):
5700 (WebCore::RenderThemeWin::getThemeData):
5701 (WebCore::drawControl):
5702 (WebCore::RenderThemeWin::paintButton):
5703 (WebCore::RenderThemeWin::paintTextField):
5704 (WebCore::RenderThemeWin::paintMenuList):
5705 (WebCore::RenderThemeWin::adjustMenuListStyle):
5706 (WebCore::RenderThemeWin::adjustMenuListButtonStyle):
5707 (WebCore::RenderThemeWin::paintMenuListButton):
5708 (WebCore::RenderThemeWin::paintSliderTrack):
5709 (WebCore::RenderThemeWin::paintSliderThumb):
5710 (WebCore::RenderThemeWin::adjustSliderThumbSize):
5711 (WebCore::RenderThemeWin::paintSearchField):
5712 (WebCore::RenderThemeWin::adjustSearchFieldStyle):
5713 (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
5714 (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle):
5715 (WebCore::RenderThemeWin::adjustSearchFieldDecorationStyle):
5716 (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle):
5717 (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
5718 (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle):
5719 (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
5720 * rendering/RenderThemeWin.h:
5721 (WebCore::ThemeData::ThemeData):
5722 (WebCore::RenderThemeWin::paintSearchFieldDecoration):
5723 (WebCore::RenderThemeWin::adjustButtonStyle):
5724 (WebCore::RenderThemeWin::adjustTextFieldStyle):
5725 (WebCore::RenderThemeWin::adjustTextAreaStyle):
5726
dino@apple.comd511ce52008-09-09 19:50:25 +000057272008-09-09 Dean Jackson <dino@apple.com>
5728
5729 Reviewed by Sam Weinig.
5730
5731 Document::createEvent missing cases for animation and
5732 transition events.
5733 https://bugs.webkit.org/show_bug.cgi?id=20734
5734
5735 Test: transitions/transition-end-event-create.html
5736 Test: animations/animation-events-create.html
5737
5738 * dom/Document.cpp:
5739 (WebCore::Document::createEvent):
5740 - add the two cases
5741
mitz@apple.com1da7b882008-09-09 18:12:06 +000057422008-09-09 Dan Bernstein <mitz@apple.com>
5743
mitz@apple.com54921562008-09-09 18:48:34 +00005744 - Tiger build fix
5745
5746 * WebCore.Tiger.exp:
5747 * WebCore.base.exp:
5748 * platform/mac/WebCoreSystemInterface.h:
5749 * platform/mac/WebCoreSystemInterface.mm:
5750
57512008-09-09 Dan Bernstein <mitz@apple.com>
5752
mitz@apple.com1da7b882008-09-09 18:12:06 +00005753 Reviewed by Darin Adler.
5754
5755 - WebCore part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard
5756
5757 * WebCore.Tiger.exp:
5758 * WebCore.base.exp:
5759 * platform/graphics/SimpleFontData.h:
5760 * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
5761 (WebCore::GlyphPage::fill):
5762 * platform/graphics/mac/SimpleFontDataMac.mm:
5763 (WebCore::initFontData):
5764 (WebCore::SimpleFontData::platformInit):
5765 (WebCore::SimpleFontData::platformDestroy):
5766 * platform/mac/WebCoreSystemInterface.h:
5767 * platform/mac/WebCoreSystemInterface.mm:
5768
kmccullough@apple.com5ba965b2008-09-09 16:40:31 +000057692008-09-09 Kevin McCullough <kmccullough@apple.com>
5770
5771 Reviewed by Tim.
5772
5773 <rdar://problem/6198545> REGRESSION: Inspector debugger barfs on
5774 breakpoints inside eval.
5775
5776 * page/inspector/inspector.js:
5777
hausmann@webkit.orgdab0e872008-09-09 14:17:21 +000057782008-09-09 Joerg Bornemann <joerg.bornemann@trolltech.com>
5779
5780 Reviewed by Simon.
5781
5782 Fix compilation of the Qt port with disabled plugins on Windows
5783
5784 * WebCore.pro:
5785 * plugins/PluginView.cpp:
5786 (WebCore::PluginView::PluginView):
5787 * plugins/PluginView.h:
5788
ap@webkit.org2ba74d32008-09-09 08:11:01 +000057892008-09-09 Jungshik Shin <jungshik.shin@gmail.com>
5790
5791 Reviewed by Alexey Proskuryakov.
5792
5793 Try MIME charset names before trying IANA names
5794 ( https://bugs.webkit.org/show_bug.cgi?id=17537 )
5795
5796 With this change, shorter and more widely used names (preferred MIME
5797 names) are returned by document.charset, document.characterSet,
5798 document.inputEncoding rather than IANA names. This helps
5799 fixing bug 18085 in addition to web developers who are more familiar
5800 with MIME names. For instance, EUC-JP, ISO-8859-X and US-ASCII will be
5801 returned instead of Extended_UNIX_Code_Packed_Format_for_Japanese,
5802 ISO-8859-X:19xx, and ANSI_X3.4-1968. It also replaces IBM8xx with cp8xx.
5803 Note that cp/IBM 8xx are extremly rare in today's web. Even if they're
5804 used, the former is still recognized as aliases to the latter so that
5805 there's very little, if any, to worry about.
5806
5807 * platform/text/TextCodecICU.cpp:
5808 (WebCore::TextCodecICU::registerExtendedEncodingNames):
5809
weinig@apple.com22294302008-09-09 06:55:39 +000058102008-09-08 Sam Weinig <sam@webkit.org>
5811
5812 Reviewed by Maciej Stachowiak and Oliver Hunt.
5813
5814 Add forwarding headers.
5815
5816 * ForwardingHeaders/wtf/HashFunctions.h: Added.
5817
dino@apple.comd9962af2008-09-09 01:02:00 +000058182008-09-05 Dean Jackson <dino@apple.com>
5819
5820 Reviewed by Dan Bernstein.
5821
5822 Update grammar so that we can add a keyframe rule via the DOM.
5823 https://bugs.webkit.org/show_bug.cgi?id=20613
5824
5825 * css/CSSGrammar.y:
5826 * css/tokenizer.flex:
5827
antti@apple.com4b17a932008-09-09 00:40:45 +000058282008-09-08 Antti Koivisto <antti@apple.com>
5829
5830 Reviewed by Dan Bernstein.
5831
5832 Allow <br> for simple UA stylesheet. Editing code generates them. It does not
5833 actually show up in any of the default stylesheets.
5834
5835 * css/CSSStyleSelector.cpp:
5836 (WebCore::elementCanUseSimpleDefaultStyle):
5837
mitz@apple.com66fa91a2008-09-09 00:35:22 +000058382008-09-08 Dimitri Glazkov <dglazkov@google.com>
5839
5840 Reviewed by Dan Bernstein.
5841
5842 - fix https://bugs.webkit.org/show_bug.cgi?id=20237
5843 Zero width and space characters are displayed incorrectly if not contained in a fallback font
5844
5845 Adds an extra check for Object Replacement Character (U+FFFC) to address
5846 the issue with fast/text/zero-width-characters.html test when run
5847 with Windows system default fonts.
5848
5849 * platform/graphics/Font.h:
5850 (WebCore::Font::treatAsZeroWidthSpace):
5851
dino@apple.comf0a4b212008-09-08 22:51:49 +000058522008-09-08 Dean Jackson <dino@apple.com>
5853
5854 Reviewed by Sam Weinig.
5855
5856 Code style issue I forgot to fix from previous commit.
5857
5858 * platform/graphics/AffineTransform.cpp:
5859 (WebCore::AffineTransform::blend):
5860
dino@apple.com26625122008-09-08 22:46:41 +000058612008-09-08 Chris Marrin <cmarrin@apple.com>
5862
5863 Reviewed by Sam Weinig
5864
5865 - Animation of -webkit-transform matrix() function should not do linear interpolation
5866 https://bugs.webkit.org/show_bug.cgi?id=20667
5867
5868 Test: animations/matrix-anim.html
5869
5870 * ChangeLog:
5871 * platform/graphics/AffineTransform.cpp:
5872 (WebCore::affineTransformDecompose):
5873 (WebCore::affineTransformCompose):
5874 (WebCore::AffineTransform::blend):
5875 * platform/graphics/AffineTransform.h:
5876 * rendering/style/RenderStyle.cpp:
5877 (WebCore::MatrixTransformOperation::blend):
5878
ap@webkit.org243a9752008-09-08 16:21:16 +000058792008-09-08 Alexey Proskuryakov <ap@webkit.org>
5880
5881 Reviewed by Darin Adler.
5882
5883 https://bugs.webkit.org/show_bug.cgi?id=20668
5884 multipart/form-data does not always include Content-type for submitted files
5885
5886 Cannot be tested with DRT or manual tests.
5887
5888 * platform/MIMETypeRegistry.cpp:
5889 (WebCore::initializeSupportedNonImageMimeTypes): Fix spacing.
5890 (WebCore::MIMETypeRegistry::getMIMETypeForPath): Default to application/octet-stream for
5891 unknown extensions, not just missing ones.
5892
hausmann@webkit.orgaf796ea2008-09-08 13:00:19 +000058932008-09-08 Simon Hausmann <hausmann@webkit.org>
5894
5895 Build fix for the Qt/Windows build, define USE_JSC to
5896 enable the WebCore::String -> JSC::UString operator that
5897 MSVC insists on seeing
5898
5899 * WebCore.pro:
5900
andersca@apple.com3ac4f552008-09-08 11:39:34 +000059012008-09-08 Anders Carlsson <andersca@apple.com>
5902
5903 Reviewed by Maciej.
5904
5905 <rdar://problem/5850387> Showing bookmarks reloads Google Reader instead.
5906
5907 In some cases, timeouts scheduled by a page in the onunload handler could fire even when the
5908 page had been unloaded and replaced by a non-HTML representation based view (such as the bookmarks view).
5909
5910 Fix this by clearing timeouts for pages that aren't cached when the provisional load is committed.
5911
5912 * bindings/js/JSDOMWindowBase.h:
5913 * loader/FrameLoader.cpp:
5914 (WebCore::FrameLoader::commitProvisionalLoad):
5915
antti@apple.com57b3a102008-09-08 07:01:36 +000059162008-09-07 Antti Koivisto <antti@apple.com>
5917
5918 Reviewed by Dave Hyatt.
5919
5920 Don't leak the simple stylesheet.
5921 Also call RenderTheme::adjustDefaultStyleSheet() in right place.
5922
5923 * css/CSSStyleSelector.cpp:
5924 (WebCore::loadFullDefaultStyle):
5925 (WebCore::loadSimpleDefaultStyle):
5926 (WebCore::CSSStyleSelector::styleForElement):
5927
cwzwarich@webkit.org3f782f62008-09-08 01:28:33 +000059282008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
5929
cwzwarich@webkit.org951b1452008-09-08 04:25:32 +00005930 Reviewed by Oliver Hunt.
5931
5932 Bug 20711: Change KJS prefix on preprocessor macros to JSC
5933 <https://bugs.webkit.org/show_bug.cgi?id=20711>
5934
5935 * bindings/js/JSEventTargetBase.h:
5936 * bindings/js/JSHTMLInputElementBase.cpp:
5937 * bindings/js/JSHTMLInputElementBase.h:
5938 * bindings/scripts/CodeGeneratorJS.pm:
5939
59402008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
5941
cwzwarich@webkit.org3f782f62008-09-08 01:28:33 +00005942 Reviewed by Maciej Stachowiak.
5943
5944 Bug 20704: Replace the KJS namespace
5945 <https://bugs.webkit.org/show_bug.cgi?id=20704>
5946
5947 Rename the KJS namespace to JSC. There are still some uses of KJS in the
5948 names of JNI functions, and I will check if these are safe to change
5949 as well.
5950
5951 * WebCore.base.exp:
5952 * bindings/js/GCController.cpp:
5953 * bindings/js/JSAttrCustom.cpp:
5954 * bindings/js/JSAudioConstructor.cpp:
5955 * bindings/js/JSAudioConstructor.h:
5956 (WebCore::JSAudioConstructor::classInfo):
5957 * bindings/js/JSCSSRuleCustom.cpp:
5958 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
5959 * bindings/js/JSCSSValueCustom.cpp:
5960 * bindings/js/JSCanvasPixelArrayCustom.cpp:
5961 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
5962 * bindings/js/JSClipboardCustom.cpp:
5963 * bindings/js/JSConsoleCustom.cpp:
5964 * bindings/js/JSCustomSQLStatementCallback.cpp:
5965 (WebCore::JSCustomSQLStatementCallback::handleEvent):
5966 * bindings/js/JSCustomSQLStatementCallback.h:
5967 (WebCore::JSCustomSQLStatementCallback::create):
5968 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
5969 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
5970 * bindings/js/JSCustomSQLStatementErrorCallback.h:
5971 (WebCore::JSCustomSQLStatementErrorCallback::create):
5972 * bindings/js/JSCustomSQLTransactionCallback.cpp:
5973 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
5974 * bindings/js/JSCustomSQLTransactionCallback.h:
5975 (WebCore::JSCustomSQLTransactionCallback::create):
5976 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
5977 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
5978 * bindings/js/JSCustomSQLTransactionErrorCallback.h:
5979 (WebCore::JSCustomSQLTransactionErrorCallback::create):
5980 * bindings/js/JSCustomVoidCallback.cpp:
5981 (WebCore::JSCustomVoidCallback::handleEvent):
5982 * bindings/js/JSCustomVoidCallback.h:
5983 (WebCore::JSCustomVoidCallback::create):
5984 * bindings/js/JSCustomXPathNSResolver.cpp:
5985 (WebCore::JSCustomXPathNSResolver::create):
5986 * bindings/js/JSCustomXPathNSResolver.h:
5987 * bindings/js/JSDOMApplicationCacheCustom.cpp:
5988 (WebCore::JSDOMApplicationCache::dispatchEvent):
5989 * bindings/js/JSDOMBinding.cpp:
5990 (WebCore::jsOwnedStringOrNull):
5991 * bindings/js/JSDOMBinding.h:
5992 (WebCore::DOMObject::DOMObject):
5993 (WebCore::cacheDOMObject):
5994 (WebCore::cacheSVGDOMObject):
5995 (WebCore::DOMExceptionTranslator::DOMExceptionTranslator):
5996 (WebCore::toJS):
5997 * bindings/js/JSDOMWindowBase.cpp:
5998 * bindings/js/JSDOMWindowBase.h:
5999 (WebCore::JSDOMWindowBase::classInfo):
6000 (WebCore::JSDOMWindowBase::d):
6001 * bindings/js/JSDOMWindowCustom.cpp:
6002 (WebCore::JSDOMWindow::getPropertyAttributes):
6003 * bindings/js/JSDOMWindowCustom.h:
6004 (WebCore::asJSDOMWindow):
6005 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
6006 (WebCore::JSDOMWindow::customPut):
6007 (WebCore::JSDOMWindowBase::allowsAccessFrom):
6008 (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
6009 * bindings/js/JSDOMWindowShell.cpp:
6010 (WebCore::JSDOMWindowShell::getPropertyAttributes):
6011 * bindings/js/JSDOMWindowShell.h:
6012 (WebCore::JSDOMWindowShell::classInfo):
6013 * bindings/js/JSDatabaseCustom.cpp:
6014 * bindings/js/JSDocumentCustom.cpp:
6015 * bindings/js/JSDocumentFragmentCustom.cpp:
6016 * bindings/js/JSElementCustom.cpp:
6017 * bindings/js/JSEventCustom.cpp:
6018 * bindings/js/JSEventListener.cpp:
6019 * bindings/js/JSEventListener.h:
6020 (WebCore::JSUnprotectedEventListener::create):
6021 (WebCore::JSEventListener::create):
6022 * bindings/js/JSEventTargetBase.cpp:
6023 * bindings/js/JSEventTargetBase.h:
6024 (WebCore::JSEventTargetBase::getValueProperty):
6025 (WebCore::JSEventTargetBase::putValueProperty):
6026 (WebCore::JSEventTargetBase::getOwnPropertySlot):
6027 (WebCore::JSEventTargetBase::put):
6028 (WebCore::JSEventTargetPrototype::JSEventTargetPrototype):
6029 (WebCore::JSEventTargetPrototype::self):
6030 (WebCore::JSEventTargetPrototype::getOwnPropertySlot):
6031 (WebCore::JSEventTargetPrototype::classInfo):
6032 * bindings/js/JSEventTargetNode.cpp:
6033 * bindings/js/JSEventTargetNode.h:
6034 (WebCore::JSEventTargetNode::getOwnPropertySlot):
6035 (WebCore::JSEventTargetNode::getValueProperty):
6036 (WebCore::JSEventTargetNode::put):
6037 (WebCore::JSEventTargetNode::putValueProperty):
6038 * bindings/js/JSHTMLAllCollection.h:
6039 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
6040 (WebCore::JSHTMLAllCollection::toBoolean):
6041 * bindings/js/JSHTMLAppletElementCustom.cpp:
6042 * bindings/js/JSHTMLCollectionCustom.cpp:
6043 * bindings/js/JSHTMLDocumentCustom.cpp:
6044 * bindings/js/JSHTMLElementCustom.cpp:
6045 * bindings/js/JSHTMLEmbedElementCustom.cpp:
6046 * bindings/js/JSHTMLFormElementCustom.cpp:
6047 * bindings/js/JSHTMLFrameElementCustom.cpp:
6048 * bindings/js/JSHTMLFrameSetElementCustom.cpp:
6049 * bindings/js/JSHTMLIFrameElementCustom.cpp:
6050 * bindings/js/JSHTMLInputElementBase.cpp:
6051 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
6052 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
6053 * bindings/js/JSHTMLInputElementBase.h:
6054 (WebCore::JSHTMLInputElementBase::classInfo):
6055 * bindings/js/JSHTMLObjectElementCustom.cpp:
6056 * bindings/js/JSHTMLOptionElementConstructor.cpp:
6057 * bindings/js/JSHTMLOptionElementConstructor.h:
6058 (WebCore::JSHTMLOptionElementConstructor::classInfo):
6059 * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
6060 * bindings/js/JSHTMLSelectElementCustom.cpp:
6061 (WebCore::selectIndexSetter):
6062 (WebCore::JSHTMLSelectElement::indexSetter):
6063 * bindings/js/JSHTMLSelectElementCustom.h:
6064 * bindings/js/JSHistoryCustom.cpp:
6065 * bindings/js/JSImageConstructor.cpp:
6066 * bindings/js/JSImageConstructor.h:
6067 (WebCore::JSImageConstructor::classInfo):
6068 * bindings/js/JSInspectedObjectWrapper.cpp:
6069 * bindings/js/JSInspectedObjectWrapper.h:
6070 (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
6071 (WebCore::JSInspectedObjectWrapper::classInfo):
6072 * bindings/js/JSInspectorCallbackWrapper.cpp:
6073 * bindings/js/JSInspectorCallbackWrapper.h:
6074 (WebCore::JSInspectorCallbackWrapper::classInfo):
6075 (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
6076 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
6077 * bindings/js/JSLocationCustom.cpp:
6078 * bindings/js/JSMimeTypeArrayCustom.cpp:
6079 * bindings/js/JSNSResolver.cpp:
6080 * bindings/js/JSNSResolver.h:
6081 (WebCore::JSNSResolver::create):
6082 * bindings/js/JSNamedNodeMapCustom.cpp:
6083 * bindings/js/JSNamedNodesCollection.cpp:
6084 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
6085 * bindings/js/JSNamedNodesCollection.h:
6086 (WebCore::JSNamedNodesCollection::classInfo):
6087 * bindings/js/JSNavigatorCustom.cpp:
6088 * bindings/js/JSNodeCustom.cpp:
6089 * bindings/js/JSNodeFilterCondition.cpp:
6090 (WebCore::JSNodeFilterCondition::acceptNode):
6091 * bindings/js/JSNodeFilterCondition.h:
6092 (WebCore::JSNodeFilterCondition::create):
6093 * bindings/js/JSNodeFilterCustom.cpp:
6094 * bindings/js/JSNodeIteratorCustom.cpp:
6095 * bindings/js/JSNodeListCustom.cpp:
6096 * bindings/js/JSPluginArrayCustom.cpp:
6097 * bindings/js/JSPluginCustom.cpp:
6098 * bindings/js/JSPluginElementFunctions.cpp:
6099 (WebCore::getRuntimeObject):
6100 * bindings/js/JSPluginElementFunctions.h:
6101 * bindings/js/JSQuarantinedObjectWrapper.cpp:
6102 (WebCore::JSQuarantinedObjectWrapper::construct):
6103 (WebCore::JSQuarantinedObjectWrapper::call):
6104 * bindings/js/JSQuarantinedObjectWrapper.h:
6105 (WebCore::JSQuarantinedObjectWrapper::unwrappedObject):
6106 (WebCore::JSQuarantinedObjectWrapper::unwrappedGlobalObject):
6107 (WebCore::JSQuarantinedObjectWrapper::className):
6108 * bindings/js/JSRGBColor.cpp:
6109 * bindings/js/JSRGBColor.h:
6110 (WebCore::JSRGBColor::classInfo):
6111 * bindings/js/JSSQLResultSetRowListCustom.cpp:
6112 * bindings/js/JSSQLTransactionCustom.cpp:
6113 * bindings/js/JSSVGLazyEventListener.cpp:
6114 * bindings/js/JSSVGLazyEventListener.h:
6115 * bindings/js/JSSVGLengthCustom.cpp:
6116 * bindings/js/JSSVGMatrixCustom.cpp:
6117 (WebCore::JSSVGMatrix::inverse):
6118 (WebCore::JSSVGMatrix::rotateFromVector):
6119 * bindings/js/JSSVGPathSegCustom.cpp:
6120 * bindings/js/JSSVGPathSegListCustom.cpp:
6121 (WebCore::JSSVGPathSegList::initialize):
6122 (WebCore::JSSVGPathSegList::getItem):
6123 (WebCore::JSSVGPathSegList::insertItemBefore):
6124 (WebCore::JSSVGPathSegList::replaceItem):
6125 (WebCore::JSSVGPathSegList::removeItem):
6126 (WebCore::JSSVGPathSegList::appendItem):
6127 * bindings/js/JSSVGPointListCustom.cpp:
6128 * bindings/js/JSSVGTransformListCustom.cpp:
6129 * bindings/js/JSStorageCustom.cpp:
6130 * bindings/js/JSStyleSheetCustom.cpp:
6131 * bindings/js/JSStyleSheetListCustom.cpp:
6132 * bindings/js/JSTextCustom.cpp:
6133 * bindings/js/JSTreeWalkerCustom.cpp:
6134 * bindings/js/JSXMLHttpRequestConstructor.cpp:
6135 * bindings/js/JSXMLHttpRequestConstructor.h:
6136 (WebCore::JSXMLHttpRequestConstructor::classInfo):
6137 * bindings/js/JSXMLHttpRequestCustom.cpp:
6138 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
6139 * bindings/js/JSXSLTProcessorConstructor.cpp:
6140 * bindings/js/JSXSLTProcessorConstructor.h:
6141 (WebCore::JSXSLTProcessorConstructor::classInfo):
6142 * bindings/js/JSXSLTProcessorCustom.cpp:
6143 * bindings/js/ScheduledAction.cpp:
6144 * bindings/js/ScheduledAction.h:
6145 * bindings/js/ScriptController.cpp:
6146 (WebCore::ScriptController::attachDebugger):
6147 (WebCore::ScriptController::windowScriptNPObject):
6148 * bindings/js/ScriptController.h:
6149 * bindings/js/ScriptControllerGtk.cpp:
6150 (WebCore::ScriptController::createScriptInstanceForWidget):
6151 * bindings/js/ScriptControllerMac.mm:
6152 (WebCore::ScriptController::createScriptInstanceForWidget):
6153 (WebCore::ScriptController::windowScriptObject):
6154 (WebCore::ScriptController::clearPlatformScriptObjects):
6155 (WebCore::updateRenderingForBindings):
6156 (WebCore::ScriptController::initJavaJSBindings):
6157 * bindings/js/ScriptControllerQt.cpp:
6158 (WebCore::ScriptController::createScriptInstanceForWidget):
6159 * bindings/js/ScriptControllerWin.cpp:
6160 (WebCore::ScriptController::createScriptInstanceForWidget):
6161 * bindings/js/ScriptControllerWx.cpp:
6162 (WebCore::ScriptController::createScriptInstanceForWidget):
6163 * bindings/js/StringSourceProvider.h:
6164 (WebCore::StringSourceProvider::getRange):
6165 * bindings/objc/DOM.mm:
6166 (-[DOMNode JSC::Bindings::]):
6167 * bindings/objc/DOMInternal.h:
6168 * bindings/objc/DOMInternal.mm:
6169 (-[WebScriptObject _initializeScriptDOMNodeImp]):
6170 * bindings/objc/DOMUtility.mm:
6171 (JSC::createDOMWrapper):
6172 (WebCore::createDOMWrapper):
6173 * bindings/objc/WebScriptObject.mm:
6174 (WebCore::createJSWrapper):
6175 (-[WebScriptObject _initWithJSObject:JSC::originRootObject:JSC::Bindings::rootObject:JSC::Bindings::]):
6176 * bindings/objc/WebScriptObjectPrivate.h:
6177 * bindings/scripts/CodeGeneratorJS.pm:
6178 * bridge/NP_jsobject.cpp:
6179 * bridge/NP_jsobject.h:
6180 * bridge/c/c_class.cpp:
6181 * bridge/c/c_class.h:
6182 * bridge/c/c_instance.cpp:
6183 * bridge/c/c_instance.h:
6184 * bridge/c/c_runtime.cpp:
6185 * bridge/c/c_runtime.h:
6186 * bridge/c/c_utility.cpp:
6187 * bridge/c/c_utility.h:
6188 * bridge/jni/jni_class.cpp:
6189 * bridge/jni/jni_class.h:
6190 * bridge/jni/jni_instance.cpp:
6191 * bridge/jni/jni_instance.h:
6192 * bridge/jni/jni_jsobject.h:
6193 * bridge/jni/jni_jsobject.mm:
6194 (JavaJSObject::call):
6195 (JavaJSObject::convertJObjectToValue):
6196 * bridge/jni/jni_objc.mm:
6197 (JSC::Bindings::dispatchJNICall):
6198 * bridge/jni/jni_runtime.cpp:
6199 * bridge/jni/jni_runtime.h:
6200 * bridge/jni/jni_utility.cpp:
6201 * bridge/jni/jni_utility.h:
6202 * bridge/npruntime.cpp:
6203 (_NPN_GetStringIdentifier):
6204 * bridge/objc/WebScriptObject.h:
6205 * bridge/objc/objc_class.h:
6206 * bridge/objc/objc_class.mm:
6207 * bridge/objc/objc_instance.h:
6208 * bridge/objc/objc_instance.mm:
6209 * bridge/objc/objc_runtime.h:
6210 * bridge/objc/objc_runtime.mm:
6211 * bridge/objc/objc_utility.h:
6212 * bridge/objc/objc_utility.mm:
6213 * bridge/qt/qt_class.cpp:
6214 * bridge/qt/qt_class.h:
6215 * bridge/qt/qt_instance.cpp:
6216 * bridge/qt/qt_instance.h:
6217 * bridge/qt/qt_runtime.cpp:
6218 (JSC::Bindings::convertQVariantToValue):
6219 (JSC::Bindings::):
6220 * bridge/qt/qt_runtime.h:
6221 * bridge/runtime.cpp:
6222 * bridge/runtime.h:
6223 * bridge/runtime_array.cpp:
6224 * bridge/runtime_array.h:
6225 * bridge/runtime_method.cpp:
6226 * bridge/runtime_method.h:
6227 * bridge/runtime_object.cpp:
6228 * bridge/runtime_object.h:
6229 * bridge/runtime_root.cpp:
6230 (JSC::Bindings::RootObject::invalidate):
6231 (JSC::Bindings::RootObject::gcProtect):
6232 (JSC::Bindings::RootObject::gcUnprotect):
6233 * bridge/runtime_root.h:
6234 * bridge/testbindings.cpp:
6235 * bridge/testbindings.mm:
6236 * bridge/testqtbindings.cpp:
6237 * dom/Document.cpp:
6238 (WebCore::Document::~Document):
6239 * dom/NSResolver.h:
6240 * dom/Node.cpp:
6241 (WebCore::Node::setDocument):
6242 (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
6243 (WebCore::resolveNamespacesForSelector):
6244 (WebCore::Node::querySelector):
6245 (WebCore::Node::querySelectorAll):
6246 * dom/Node.h:
6247 * dom/NodeFilter.cpp:
6248 * dom/NodeFilter.h:
6249 * dom/NodeFilterCondition.cpp:
6250 * dom/NodeFilterCondition.h:
6251 * dom/NodeIterator.cpp:
6252 * dom/NodeIterator.h:
6253 * dom/Traversal.cpp:
6254 * dom/Traversal.h:
6255 * dom/TreeWalker.cpp:
6256 * dom/TreeWalker.h:
6257 * dom/make_names.pl:
6258 * history/CachedPage.cpp:
6259 * history/CachedPage.h:
6260 * html/HTMLPlugInElement.cpp:
6261 (WebCore::HTMLPlugInElement::getInstance):
6262 * html/HTMLPlugInElement.h:
6263 * loader/FrameLoader.cpp:
6264 * loader/FrameLoader.h:
6265 * loader/icon/IconDatabase.cpp:
6266 (WebCore::iconDatabase):
6267 * page/Console.cpp:
6268 * page/Console.h:
6269 * page/InspectorController.cpp:
6270 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
6271 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
6272 (WebCore::InspectorResource::setXMLHttpRequestProperties):
6273 (WebCore::InspectorResource::sourceString):
6274 (WebCore::getResourceDocumentNode):
6275 (WebCore::search):
6276 (WebCore::InspectorController::focusNode):
6277 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
6278 (WebCore::InspectorController::addDatabaseScriptResource):
6279 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
6280 * page/InspectorController.h:
6281 (WebCore::InspectorController::profiles):
6282 * page/JavaScriptCallFrame.cpp:
6283 (WebCore::JavaScriptCallFrame::scopeChain):
6284 * page/JavaScriptCallFrame.h:
6285 (WebCore::JavaScriptCallFrame::create):
6286 (WebCore::JavaScriptCallFrame::update):
6287 * page/JavaScriptDebugListener.h:
6288 * page/JavaScriptDebugServer.cpp:
6289 (WebCore::dispatchDidParseSource):
6290 * page/JavaScriptDebugServer.h:
6291 * page/JavaScriptProfile.cpp:
6292 * page/JavaScriptProfile.h:
6293 * page/JavaScriptProfileNode.cpp:
6294 (WebCore::getTotalTime):
6295 (WebCore::getSelfTime):
6296 (WebCore::getTotalPercent):
6297 (WebCore::getSelfPercent):
6298 (WebCore::getNumberOfCalls):
6299 (WebCore::getChildren):
6300 (WebCore::getVisible):
6301 * page/JavaScriptProfileNode.h:
6302 * page/Page.cpp:
6303 (WebCore::Page::setDebuggerForAllPages):
6304 (WebCore::Page::setDebugger):
6305 * page/Page.h:
6306 (WebCore::Page::debugger):
6307 * page/mac/FrameMac.mm:
6308 * platform/KURL.h:
6309 (WebCore::KURL::operator JSC::UString):
6310 * platform/text/AtomicString.cpp:
6311 (WebCore::AtomicString::add):
6312 (WebCore::AtomicString::find):
6313 * platform/text/AtomicString.h:
6314 (WebCore::AtomicString::AtomicString):
6315 * platform/text/PlatformString.h:
6316 * platform/text/String.cpp:
6317 (WebCore::charactersToDouble):
6318 * platform/win/BString.cpp:
6319 * platform/win/BString.h:
6320 * plugins/MimeTypeArray.h:
6321 * plugins/Plugin.h:
6322 * plugins/PluginArray.h:
6323 * plugins/PluginView.cpp:
6324 (WebCore::PluginView::start):
6325 (WebCore::PluginView::performRequest):
6326 (WebCore::PluginView::bindingInstance):
6327 * plugins/PluginView.h:
6328 * plugins/gtk/PluginViewGtk.cpp:
6329 (WebCore::PluginView::paint):
6330 (WebCore::PluginView::handleKeyboardEvent):
6331 (WebCore::PluginView::handleMouseEvent):
6332 (WebCore::PluginView::setNPWindowRect):
6333 (WebCore::PluginView::stop):
6334 (WebCore::PluginView::init):
6335 * plugins/qt/PluginViewQt.cpp:
6336 (WebCore::PluginView::setNPWindowRect):
6337 (WebCore::PluginView::stop):
6338 (WebCore::PluginView::init):
6339 * plugins/win/PluginViewWin.cpp:
6340 (WebCore::PluginView::dispatchNPEvent):
6341 (WebCore::PluginView::handleKeyboardEvent):
6342 (WebCore::PluginView::handleMouseEvent):
6343 (WebCore::PluginView::setNPWindowRect):
6344 (WebCore::PluginView::stop):
6345 * storage/Database.cpp:
6346 (WebCore::Database::Database):
6347 * xml/XMLHttpRequest.cpp:
6348 (WebCore::XMLHttpRequest::responseText):
6349 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
6350 (WebCore::XMLHttpRequest::clearResponse):
6351 (WebCore::XMLHttpRequest::dropProtection):
6352 (WebCore::XMLHttpRequest::didFinishLoading):
6353 (WebCore::XMLHttpRequest::didReceiveData):
6354 * xml/XMLHttpRequest.h:
6355
abarth@webkit.orge17b6052008-09-08 00:03:30 +000063562008-09-07 Adam Barth <abarth@webkit.org>
6357
6358 Reviewed by Sam Weinig.
6359
6360 Adopt opener restriction on frame navigation.
6361 https://bugs.webkit.org/show_bug.cgi?id=20642
6362
6363 This restriction helps prevent an attacker from navigating top-level
6364 windows that were created by another web site.
6365
6366 Tests: http/tests/security/frameNavigation/not-opener.html
6367 http/tests/security/frameNavigation/opener.html
6368
6369 * loader/FrameLoader.cpp:
6370 (WebCore::canAccessAncestor):
6371 (WebCore::FrameLoader::shouldAllowNavigation):
6372
mitz@apple.com83469af2008-09-07 22:29:56 +000063732008-09-07 Dan Bernstein <mitz@apple.com>
6374
mitz@apple.com08ff58c2008-09-07 23:19:11 +00006375 Reviewed by Maciej Stachowiak.
6376
6377 - use the correct sign for vertical offsets of combining marks
6378
6379 * platform/graphics/win/UniscribeController.cpp:
6380 (WebCore::UniscribeController::shapeAndPlaceItem):
6381
63822008-09-07 Dan Bernstein <mitz@apple.com>
6383
mitz@apple.com83469af2008-09-07 22:29:56 +00006384 Reviewed by Dave Hyatt.
6385
mitz@apple.com78685b22008-09-07 22:30:29 +00006386 - add the combining mark offsets in two places where I forgot them
6387
6388 * platform/graphics/win/FontCGWin.cpp:
6389 (WebCore::Font::drawGlyphs):
6390
63912008-09-07 Dan Bernstein <mitz@apple.com>
6392
6393 Reviewed by Dave Hyatt.
6394
mitz@apple.com83469af2008-09-07 22:29:56 +00006395 - correct glyph advances in complex text using web fonts rendered with
6396 Core Graphics
6397
6398 * platform/graphics/win/FontCustomPlatformData.cpp:
6399 (WebCore::FontCustomPlatformData::fontPlatformData):
6400
timothy@apple.com968ebc92008-09-07 16:48:41 +000064012008-09-07 Keishi Hattori <casey.hattori@gmail.com>
6402
6403 Adds console.dirxml support to the Web Inspector.
6404
6405 https://bugs.webkit.org/show_bug.cgi?id=19156
6406
6407 Reviewed by Timothy Hatcher.
6408
6409 * WebCore.vcproj/WebCore.vcproj: Added ElementsTreeOutline.js.
6410 * bindings/js/JSConsoleCustom.cpp:
6411 (WebCore::JSConsole::dirxml):
6412 * page/Console.cpp:
6413 (WebCore::Console::dirxml): Adds a ConsoleMessage with NodeMessageLevel.
6414 * page/Console.h:
6415 (WebCore::): Added NodeMessageLevel.
6416 * page/Console.idl: Added console.dirxml.
6417 * page/inspector/Console.js: A NodeMessage creates a ElementsTreeOutline.
6418 * page/inspector/ElementsPanel.js: Modified to use ElementsTreeOutline. The ElementsTreeOutline
6419 in the ElementsPanel has includeRootDOMNode and selectEnabled set to true.
6420 * page/inspector/ElementsTreeOutline.js: Added.
6421 (WebInspector.ElementsTreeOutline): A subclass of TreeOutline for displaying a DOM node tree.
6422 (WebInspector.ElementsTreeElement): A subclass of TreeElement for ElementsTreeOutline.
6423 * page/inspector/WebKit.qrc: Added ElementsTreeOutline.js.
6424 * page/inspector/inspector.css:
6425 * page/inspector/inspector.html: Added ElementsTreeOutline.js.
6426 * page/inspector/inspector.js: Moved hover related methods to WebInspector.
6427 (WebInspector.altKeyDown):
6428 (WebInspector.forceHoverHighlight):
6429 (WebInspector.hoveredDOMNode):
6430 (WebInspector._updateHoverHighlightSoon):
6431 (WebInspector._updateHoverHighlight):
6432 (WebInspector.documentKeyDown): Updates WebInspector.altKeyDown
6433 (WebInspector.documentKeyUp): Updates WebInspector.altKeyDown
6434 * page/inspector/utilities.js: Added getDocumentForNode, parentNodeOrFrameElement,
6435 isAncestorIncludingParentFrames.
6436
mrowe@apple.com61ba5f52008-09-07 06:08:56 +000064372008-09-06 Mark Rowe <mrowe@apple.com>
6438
6439 Qt build fix.
6440
6441 * bridge/qt/qt_runtime.cpp:
6442 (KJS::Bindings::convertQVariantToValue):
6443
mrowe@apple.comf88a4632008-09-07 05:44:58 +00006444=== End merge of squirrelfish-extreme ===
6445
64462008-09-05 Oliver Hunt <oliver@apple.com>
6447
6448 Start bringing up SFX on windows.
6449
6450 Reviewed by Mark Rowe and Sam Weinig
6451
6452 Start doing the work to bring up SFX on windows. Initially
6453 just working on WREC, as it does not make any calls so reduces
6454 the amount of code that needs to be corrected.
6455
6456 Add forwarding headers
6457
6458 * ChangeLog:
6459 * ForwardingHeaders/masm/MacroAssembler.h: Added.
6460 * WebCore.vcproj/WebCore.vcproj:
6461
64622008-08-27 Mark Rowe <mrowe@apple.com>
6463
6464 Reviewed by Oliver Hunt.
6465
6466 Fix the build of the full WebKit stack.
6467
6468 Add forwarding headers.
6469
6470 * ForwardingHeaders/masm/IA32MacroAsm.h: Added.
6471 * ForwardingHeaders/wrec/WREC.h: Added.
6472
6473=== Start merge of squirrelfish-extreme ===
6474
antti@apple.com13c24932008-09-07 03:54:21 +000064752008-09-06 Antti Koivisto <antti@apple.com>
6476
6477 Reviewed by Dave Hyatt.
6478
6479 <rdar://problem/6187043>
6480 Don't parse full HTML user agent style sheet unless it is actually needed
6481 <rdar://problem/6131889>
6482 WebView is significantly more expensive to create recently
6483
6484 Parsing the html4.css takes significant amount of time and memory (~50kb) on application
6485 startup. Some clients may never use most of the rules.
6486
6487 With this patch we use simplified UA stylesheet until we hit something it can't handle.
6488 This avoids full stylesheet parsing on application startup (due to empty document construction)
6489 and also makes it possible for clients with very simple demands (divs and spans only) never to load
6490 the full style.
6491
6492 It also delays view source style parsing until it is used.
6493
6494 * css/CSSStyleSelector.cpp:
6495 (WebCore::elementCanUseSimpleDefaultStyle):
6496 (WebCore::CSSStyleSelector::CSSStyleSelector):
6497 (WebCore::loadFullDefaultStyle):
6498 (WebCore::loadSimpleDefaultStyle):
6499 (WebCore::loadViewSourceStyle):
6500 (WebCore::CSSStyleSelector::matchUARules):
6501 (WebCore::CSSStyleSelector::styleForElement):
6502
kevino@webkit.orgd15b50f2008-09-07 03:46:50 +000065032008-09-06 Kevin Ollivier <kevino@theolliviers.com>
6504
6505 wx build fix.
6506
6507 * WebCoreSources.bkl:
6508
antti@apple.come953f862008-09-06 23:27:09 +000065092008-09-06 Antti Koivisto <antti@apple.com>
6510
antti@apple.com00dfa532008-09-06 23:32:26 +00006511 Reverting r35953 which was causing problems on Windows which relies on
6512 WebCore timers in nested event loops. r36132 did alternative fix.
6513
6514 * page/Chrome.cpp:
6515 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
6516 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
6517
65182008-09-06 Antti Koivisto <antti@apple.com>
6519
antti@apple.come953f862008-09-06 23:27:09 +00006520 Reviewed by Dan Bernstein.
6521
6522 Fix <rdar://problem/6201644>
6523 https://bugs.webkit.org/show_bug.cgi?id=20493
6524 Crash after OK in dialog box and reloading page in secure mode
6525
6526 Limited loader only fix since the general timer fix is causing problems on Windows.
6527
6528 * loader/loader.cpp:
6529 (WebCore::Loader::servePendingRequests):
6530 (WebCore::Loader::Host::Host):
6531 (WebCore::Loader::Host::didFinishLoading):
6532 (WebCore::Loader::Host::didFail):
6533 (WebCore::Loader::Host::didReceiveData):
6534 * loader/loader.h:
6535 (WebCore::Loader::Host::processingResource):
6536
mitz@apple.com046bf642008-09-06 08:31:02 +000065372008-09-06 Dan Bernstein <mitz@apple.com>
6538
6539 Reviewed by Dave Hyatt.
6540
mitz@apple.comc0b050b2008-09-06 22:39:34 +00006541 The initial Core Text adoption prototype was made by Daniel Fenwick.
6542
6543 - <rdar://problem/5158514> Add a Core Text-based complex text code path
6544
6545 Currently the Core Text code path is not used in any configuration.
6546
6547 * WebCore.xcodeproj/project.pbxproj: Added files.
6548 * config.h: Defined WTF_USE_ATSUI and WTF_USE_CORE_TEXT.
6549 * platform/graphics/Font.cpp:
6550 (WebCore::WidthIterator::advance): Moved the spacingDisabled() test out
6551 of the loop.
6552 * platform/graphics/GlyphBuffer.h:
6553 (WebCore::GlyphBuffer::add): Added this version that takes an advance.
6554 * platform/graphics/SimpleFontData.h: Added ATSUI and CORE_TEXT #ifdefs.
6555 Added getCTFont() and getCFStringAttributes() and corresponding data
6556 members for Core Text.
6557 * platform/graphics/mac/CoreTextController.cpp: Added.
6558 (WebCore::roundCGFloat): Helper function.
6559 (WebCore::ceilCGFloat): Helper function.
6560 (WebCore::CoreTextController::CoreTextRun::CoreTextRun):
6561 (WebCore::CoreTextController::CoreTextController):
6562 (WebCore::CoreTextController::offsetForPosition):
6563 (WebCore::CoreTextController::collectCoreTextRuns): Added. Segments the
6564 run into subruns as necessary such that each subrun can be rendered with
6565 a single font. Also separates out soft hyphens and replaces them with
6566 real hyphens, because Core Text does not emit a glyph for soft hyphens.
6567 Then calls collectCoreTextRunsForCharacters() on each subrun.
6568 (WebCore::CoreTextController::advance):
6569 (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Creates
6570 a CTLine from the given subrun and collects its CoreTextRuns.
6571 (WebCore::CoreTextController::adjustGlyphsAndAdvances): Applies the
6572 rounding hacks, letter- and word-spacing and glyph substitutions and
6573 stores the resulting adjusted glyphs and advances.
6574 * platform/graphics/mac/CoreTextController.h: Copied from WebCore/platform/graphics/win/UniscribeController.h.
6575 (WebCore::CoreTextController::totalWidth):
6576 (WebCore::CoreTextController::finalRoundingWidth):
6577 (WebCore::CoreTextController::CoreTextRun::ctRun):
6578 (WebCore::CoreTextController::CoreTextRun::glyphCount):
6579 (WebCore::CoreTextController::CoreTextRun::fontData):
6580 (WebCore::CoreTextController::CoreTextRun::characters):
6581 (WebCore::CoreTextController::CoreTextRun::stringLocation):
6582 (WebCore::CoreTextController::CoreTextRun::stringLength):
6583 (WebCore::CoreTextController::CoreTextRun::indexAt):
6584 * platform/graphics/mac/FontMac.mm: Moved the ATSUI-specific parts to
6585 FontMacATSUI.mm.
6586 * platform/graphics/mac/FontMacATSUI.mm: Copied from WebCore/platform/graphics/mac/FontMac.mm.
6587 (WebCore::disableLigatures): Changed to call
6588 FontPlatformData::allowsLigatures().
6589 (WebCore::overrideLayoutOperation): Changed to call
6590 FontPlatformData::roundsGlyphAdvances().
6591 * platform/graphics/mac/FontMacCoreText.cpp: Copied from WebCore/platform/graphics/win/FontWin.cpp.
6592 (WebCore::Font::selectionRectForComplexText): Changed to use
6593 totalWidth() instead of advancing to the end and using runWidthSoFar().
6594 (WebCore::Font::drawComplexText):
6595 (WebCore::Font::floatWidthForComplexText): Ditto.
6596 (WebCore::Font::offsetForPositionForComplexText):
6597 * platform/graphics/mac/FontPlatformData.h:
6598 * platform/graphics/mac/FontPlatformDataMac.mm:
6599 (WebCore::FontPlatformData::setFont):
6600 (WebCore::FontPlatformData::roundsGlyphAdvances): Added. Checks the
6601 AppKit rendering mode.
6602 (WebCore::FontPlatformData::allowsLigatures): Added. Implements the
6603 heuristic that allows ligatures in fonts that do not have a glyph for
6604 'a', based on the assumption that such fonts are only used in complex
6605 text.
6606 * platform/graphics/mac/SimpleFontDataMac.mm:
6607 (WebCore::SimpleFontData::platformInit):
6608 (WebCore::SimpleFontData::platformDestroy):
6609 (WebCore::SimpleFontData::getCTFont): Added.
6610 (WebCore::SimpleFontData::getCFStringAttributes): Added. Caches and
6611 returns an attributes dictionary.
6612 * platform/text/mac/ShapeArabic.c: Added ATSUI #ifdefs.
6613 * platform/text/mac/ShapeArabic.h: Ditto.
6614
66152008-09-06 Dan Bernstein <mitz@apple.com>
6616
6617 Reviewed by Dave Hyatt.
6618
mitz@apple.com046bf642008-09-06 08:31:02 +00006619 - make combining mark offsets work in CG text on Windows
6620
6621 * platform/graphics/win/FontCGWin.cpp:
6622 (WebCore::Font::drawGlyphs): The old code tried to translate the text
6623 matrix, but failed for two reasons: it did not actually change the
6624 matrix, and even if it did, CGContextSetTextPosition overwrites the
6625 translation values in the text matrix. Instead, just added the
6626 translation to the anchor point.
6627
alp@webkit.org369cdca2008-09-06 04:08:30 +000066282008-09-05 Gustavo Noronha Silva <gns@gnome.org>
6629
6630 Reviewed by Alp Toker.
6631
6632 https://bugs.webkit.org/show_bug.cgi?id=18346
6633 [GTK] Remove build warnings
6634
6635 Applied some casts, and removed an unused typedef to make the
6636 compiler happy, printing less warnings when building.
6637
6638 * page/gtk/AccessibilityObjectWrapperAtk.cpp:
6639 * platform/graphics/gtk/SimpleFontDataPango.cpp:
6640 (WebCore::SimpleFontData::containsCharacters):
6641 * platform/graphics/gtk/VideoSinkGStreamer.cpp:
6642 (webkit_video_sink_set_caps):
6643 * platform/network/soup/ResourceHandleSoup.cpp:
6644
eric@webkit.org3cb292c2008-09-05 22:17:56 +000066452008-09-05 Eric Seidel <eric@webkit.org>
6646
eric@webkit.org5ac37902008-09-06 00:21:58 +00006647 Reviewed by Adam Roben.
6648
6649 Build fix for WebKitWin and Chromium
6650
6651 * platform/FileSystem.h:
6652
66532008-09-05 Eric Seidel <eric@webkit.org>
6654
eric@webkit.org3cb292c2008-09-05 22:17:56 +00006655 Reviewed by Darin Adler.
6656
6657 Try to make Chromium compile with ToT:
6658 - Wrap a few places which depend on KJS:: in #if USE(JSC)
6659 - Include some windows forward declarations
6660
6661 * dom/Node.h:
6662 * page/Console.h:
6663 * page/animation/CompositeAnimation.h:
6664 * platform/FileSystem.h:
6665 * platform/graphics/Image.h:
6666 * platform/text/AtomicString.h:
6667 * platform/text/String.cpp:
6668 * rendering/style/RenderStyle.h:
6669
hyatt@apple.comff85d5e2008-09-05 21:52:08 +000066702008-09-05 Dave Hyatt <hyatt@apple.com>
6671
6672 Add support for runtime switchability of the Aqua look and the native look on Windows.
6673 Make RenderThemeWin compile by default even when USE(SAFARI_THEME) is set.
6674
6675 Reviewed by Adam Roben
6676
6677 * WebCore.vcproj/WebCore.vcproj:
6678 * page/Settings.cpp:
6679 (WebCore::Settings::setShouldPaintNativeControls):
6680 * page/Settings.h:
6681 (WebCore::Settings::shouldPaintNativeControls):
6682 * rendering/RenderThemeSafari.cpp:
6683 (WebCore::theme):
6684 * rendering/RenderThemeWin.cpp:
6685
antti@apple.combced97f2008-09-05 18:52:05 +000066862008-09-05 Antti Koivisto <antti@apple.com>
6687
6688 Qt build fix.
6689
6690 * svg/SVGFEImageElement.cpp:
6691 (WebCore::SVGFEImageElement::build):
6692
aroben@apple.comca0c3362008-09-05 15:33:28 +000066932008-09-05 Dirk Schulze <vbs85@gmx.de>
6694
6695 Gtk build fix
6696
6697 * GNUmakefile.am:
6698
antti@apple.com72e4a842008-09-05 09:28:11 +000066992008-09-05 Antti Koivisto <antti@apple.com>
6700
antti@apple.com49e46662008-09-05 10:36:59 +00006701 Another build fix.
6702
6703 * svg/SVGFEImageElement.cpp:
6704 (WebCore::SVGFEImageElement::notifyFinished):
6705
67062008-09-05 Antti Koivisto <antti@apple.com>
6707
antti@apple.comfeec2582008-09-05 10:03:39 +00006708 Build fixes.
6709
6710 * WebCore.xcodeproj/project.pbxproj:
6711 * svg/graphics/filters/SVGFEImage.cpp:
6712 (WebCore::FEImage::cachedImage):
6713
67142008-09-05 Antti Koivisto <antti@apple.com>
6715
darin@apple.com07c80c62008-09-05 18:15:43 +00006716 Reviewed by Darin Adler.
antti@apple.com72e4a842008-09-05 09:28:11 +00006717
6718 Most of the implementation for https://bugs.webkit.org/show_bug.cgi?id=17998
6719 When a resource is cached locally, WebKit should follow RFC 2616 "Specific end-to-end revalidation" instead of "Unspecified end-to-end revalidation"
6720
6721 Implement HTTP 1.1 "Specific end-to-end revalidation" for WebCore memory cache. This patch does
6722 not yet enable it for the biggest use case, reloading. However it is good for general browsing as
6723 well. Doing this in WebCore level as opposed to relying on disk cache has big benefit that
6724 we avoid re-decoding resources, especially images.
6725
6726 To be exact the enabled case is not actually the "Specific end-to-end revalidation" since it does not include
6727 CacheControl: max-age=0 header. That would be added in reload case.
6728
6729 The approach for revalidation is to kick the original resource out from the memory cache
6730 and create a new CachedResource that represents the revalidation request. In case
6731 we get 304 back for the request we put the original resource back to the cache, update
6732 its expiration date and switch the clients registered to revalidation resource to be
6733 clients of the original resource.
6734
6735 All heap allocated CachedImage pointers now use CachedResourceHandle<CachedImage> (and so on) instead.
6736 This allows updating the handles to point to the original resource when the revalidation succeeds. It
6737 also acts as refcounting smart pointer.
6738
6739 * WebCore.pro:
6740 * WebCore.vcproj/WebCore.vcproj:
6741 * WebCore.xcodeproj/project.pbxproj:
6742 * css/CSSFontFaceSource.h:
6743 * css/CSSImportRule.h:
6744 * dom/Clipboard.h:
6745 (WebCore::Clipboard::dragImage):
6746 * dom/ProcessingInstruction.h:
6747 * dom/ScriptElement.h:
6748 * dom/XMLTokenizer.cpp:
6749 (WebCore::XMLTokenizer::isWaitingForScripts):
6750 * dom/XMLTokenizer.h:
6751 * html/HTMLImageLoader.cpp:
6752 (WebCore::HTMLImageLoader::setImage):
6753 (WebCore::HTMLImageLoader::updateFromElement):
6754 (WebCore::HTMLImageLoader::notifyFinished):
6755 * html/HTMLImageLoader.h:
6756 (WebCore::HTMLImageLoader::image):
6757 * html/HTMLLinkElement.h:
6758 * html/HTMLTokenizer.cpp:
6759 (WebCore::HTMLTokenizer::reset):
6760 (WebCore::HTMLTokenizer::scriptHandler):
6761 (WebCore::HTMLTokenizer::notifyFinished):
6762 * html/HTMLTokenizer.h:
6763 * loader/Cache.cpp:
6764 (WebCore::Cache::revalidateResource):
6765 (WebCore::Cache::revalidationSucceeded):
6766 (WebCore::Cache::revalidationFailed):
6767 * loader/Cache.h:
6768 * loader/CachedResource.cpp:
6769 (WebCore::CachedResource::CachedResource):
6770 (WebCore::CachedResource::~CachedResource):
6771 (WebCore::CachedResource::isExpired):
6772 (WebCore::CachedResource::setResponse):
6773 (WebCore::CachedResource::deleteIfPossible):
6774 (WebCore::CachedResource::setResourceToRevalidate):
6775 (WebCore::CachedResource::clearResourceToRevalidate):
6776 (WebCore::CachedResource::switchClientsToRevalidatedResource):
6777 (WebCore::CachedResource::canUseCacheValidator):
6778 (WebCore::CachedResource::mustRevalidate):
6779 * loader/CachedResource.h:
6780 (WebCore::CachedResource::canDelete):
6781 (WebCore::CachedResource::registerHandle):
6782 (WebCore::CachedResource::unregisterHandle):
6783 (WebCore::CachedResource::isCacheValidator):
6784 (WebCore::CachedResource::resourceToRevalidate):
6785 (WebCore::CachedResource::setExpirationDate):
6786 * loader/CachedResourceHandle.cpp: Added.
6787 (WebCore::CachedResourceHandleBase::setResource):
6788 * loader/CachedResourceHandle.h: Added.
6789 (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
6790 (WebCore::CachedResourceHandleBase::get):
6791 (WebCore::CachedResourceHandleBase::operator!):
6792 (WebCore::CachedResourceHandleBase::operator UnspecifiedBoolType):
6793 (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
6794 (WebCore::CachedResourceHandleBase::operator=):
6795 (WebCore::CachedResourceHandle::CachedResourceHandle):
6796 (WebCore::CachedResourceHandle::get):
6797 (WebCore::CachedResourceHandle::operator->):
6798 (WebCore::CachedResourceHandle::operator=):
6799 (WebCore::CachedResourceHandle::operator==):
6800 (WebCore::CachedResourceHandle::operator!=):
6801 (WebCore::operator==):
6802 (WebCore::operator!=):
6803 * loader/DocLoader.cpp:
6804 (WebCore::DocLoader::checkForReload):
6805 * loader/UserStyleSheetLoader.h:
6806 * loader/loader.cpp:
6807 (WebCore::Loader::Host::servePendingRequests):
6808 (WebCore::Loader::Host::didFinishLoading):
6809 (WebCore::Loader::Host::didFail):
6810 (WebCore::Loader::Host::didReceiveResponse):
6811 (WebCore::Loader::Host::didReceiveData):
6812 * page/EventHandler.cpp:
6813 (WebCore::EventHandler::selectCursor):
6814 * rendering/RenderImage.cpp:
6815 (WebCore::RenderImage::setCachedImage):
6816 (WebCore::RenderImage::imageChanged):
6817 * rendering/RenderImage.h:
6818 (WebCore::RenderImage::cachedImage):
6819 (WebCore::RenderImage::imagePtr):
6820 * rendering/style/RenderStyle.h:
6821 * rendering/style/StyleCachedImage.h:
6822 (WebCore::StyleCachedImage::data):
6823 (WebCore::StyleCachedImage::cachedImage):
6824 * svg/SVGFEImageElement.h:
6825 * svg/graphics/filters/SVGFEImage.h:
6826 * xml/XSLImportRule.h:
6827
beidson@apple.comab60d982008-09-05 04:58:12 +000068282008-09-04 Brady Eidson <beidson@apple.com>
6829
6830 Reviewed by Mitz
6831
6832 <rdar://problem/6180236> - Safari times out connections after 1 or 2 minutes
6833
6834 A 60-second default timeout was added in http://trac.webkit.org/changeset/17144 in an attempt
6835 to model default NSURLRequest behavior in a cross-platform manner.
6836
6837 Sadly by always enforcing this 60 second timeout, WebCore was stomping over the wishes of any Webkit
6838 client that wished to enforce a much larger default timeout using NSURLRequest API.
6839
6840 Additionally, upon reviewing what all other browsers do, it seems apparent that "no limit" is desirable
6841 behavior on the web and this restores previous Safari/WebKit behavior.
6842
6843 It would be easy to write a layout test for this, but to be effective it would have
6844 to run for at least 61 seconds, which seems insane until will can parallelize run-webkit-tests
6845
6846 * manual-tests/timeout-test.html: Added.
6847 * manual-tests/timeout-test.php: Added.
6848
6849 * platform/network/ResourceRequestBase.h:
6850 (WebCore::ResourceRequestBase::ResourceRequestBase): Rename the constant to "unspecifiedTimeoutInterval"
6851 and make it UINT_MAX so platforms that do set it have an effective "no timeout." (Windows, for example)
6852 * platform/network/mac/ResourceRequestMac.mm:
6853 (WebCore::ResourceRequest::doUpdatePlatformRequest): If the timeout for this request is
6854 "unspecifiedTimeoutInterval", then don't bother setting the timeout using NSURLRequest API, allowing
6855 WebKit applications to enforce their own default timeout.
6856
mitz@apple.com20268542008-09-05 04:26:32 +000068572008-09-04 Dan Bernstein <mitz@apple.com>
6858
6859 Reviewed by Beth Dakin.
6860
6861 - fix <rdar://problem/6198514> Changing a button's opacity triggers relayout
6862
6863 Test: fast/repaint/button-spurious-layout-hint.html
6864
6865 * rendering/RenderButton.cpp:
6866 (WebCore::RenderButton::setStyle): Reset the inner block's style box
6867 flex to 0 to avoid getting a spurious layout hint.
6868
kevino@webkit.org3e8c4072008-09-04 23:53:04 +000068692008-09-04 Kevin Ollivier <kevino@theolliviers.com>
6870
6871 wx build fixes.
6872
6873 * WebCoreSources.bkl:
6874 * bindings/js/ScriptControllerWx.cpp: Added.
6875 (WebCore::ScriptController::createScriptInstanceForWidget):
6876 * page/wx/AccessibilityObjectWx.cpp: Added.
6877 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
6878 * platform/graphics/wx/GraphicsContextWx.cpp:
6879 * webcore-base.bkl:
6880 * webcore-wx.bkl:
6881
mitz@apple.com95a87502008-09-04 23:27:19 +000068822008-09-04 Dan Bernstein <mitz@apple.com>
6883
6884 Reviewed by Mark Rowe.
6885
6886 - roll out r36050 because it made svg/custom/invalid-fill-hex.svg fail,
6887 and fixing https://bugs.webkit.org/show_bug.cgi?id=15360 appears to
6888 require a different approach
6889
6890 * css/CSSGrammar.y:
6891
mrowe@apple.com12b7c2d2008-09-04 21:00:02 +000068922008-09-04 Mark Rowe <mrowe@apple.com>
6893
mrowe@apple.com5bc4ea82008-09-04 21:44:28 +00006894 Reviewed by Eric Seidel.
6895
6896 Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
6897 Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
6898
6899 * Configurations/WebCore.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
6900 * DerivedSources.make: Revert to checking for ENABLE_DASHBOARD_SUPPORT rather than looking
6901 for ENABLE_DASHBOARD_SUPPORT in FEATURE_DEFINES.
6902
69032008-09-04 Mark Rowe <mrowe@apple.com>
6904
mrowe@apple.com12b7c2d2008-09-04 21:00:02 +00006905 Mac build fix.
6906
6907 * config.h: Only check the value of HAVE_CONFIG_H if it is defined.
6908
eric@webkit.org0716a542008-09-04 20:44:12 +000069092008-09-04 Eric Seidel <eric@webkit.org>
6910
6911 Build fix only, no review.
6912
6913 * dom/XMLTokenizer.cpp: Fix the Chromium merge build by adding a missing header (the Mac files must include it somewhere).
6914
jmalonzo@webkit.org6afc5d42008-09-04 20:26:16 +000069152008-09-04 Marco Barisione <marco.barisione@collabora.co.uk>
6916
6917 Reviewed by Eric Seidel.
6918
6919 http://bugs.webkit.org/show_bug.cgi?id=20380
6920 [GTK][AUTOTOOLS] Include autotoolsconfig.h from config.h
6921
6922 * config.h: Include the configuration header generated by autotools if
6923 available.
6924
mitz@apple.com9d7e4262008-09-04 18:15:25 +000069252008-09-04 Dan Bernstein <mitz@apple.com>
6926
6927 Rubber-stamped by Dave Hyatt.
6928
6929 - rename CachedResource::allReferencesRemoved() to allClientsRemoved()
6930
6931 * loader/CachedFont.cpp:
6932 (WebCore::CachedFont::allClientsRemoved):
6933 * loader/CachedFont.h:
6934 * loader/CachedImage.cpp:
6935 (WebCore::CachedImage::allClientsRemoved):
6936 * loader/CachedImage.h:
6937 * loader/CachedResource.cpp:
6938 (WebCore::CachedResource::removeClient):
6939 * loader/CachedResource.h:
6940 (WebCore::CachedResource::allClientsRemoved):
6941
aroben@apple.com0da404d2008-09-04 16:09:33 +000069422008-09-04 Adam Roben <aroben@apple.com>
6943
aroben@apple.comdd3861a2008-09-04 16:09:53 +00006944 Windows build fix after r36071
6945
6946 We were getting these errors:
6947
6948 error C2356: initialization segment must not change during translation
6949 unit
6950
6951 This was happening because multiple files #included by
6952 DerivedSources.cpp were themselves #including StaticConstructors.h. I
6953 fixed the error by adding header guards to StaticConstructors.h so its
6954 contents will only be included once.
6955
6956 But it's also not a good idea for StaticConstructors.h to end up in
6957 DerivedSources.cpp, since it ends up "polluting" all the source files
6958 we have in there. So I removed all the files that include
6959 StaticConstructors.h and added some preprocessor directives to
6960 DerivedSources.cpp to catch this error in the future.
6961
6962 * DerivedSources.cpp: Removed the *Names.cpp files, which include
6963 StaticConstructors.h, and added some preprocessor directives to make
6964 sure we don't end up accidentally including StaticConstructors.h in
6965 the future.
6966 * WebCore.vcproj/WebCore.vcproj: Added the *Names.cpp files.
6967 * platform/StaticConstructors.h: Added header guards.
6968
69692008-09-04 Adam Roben <aroben@apple.com>
6970
aroben@apple.com0da404d2008-09-04 16:09:33 +00006971 Windows build fix
6972
6973 * platform/graphics/win/FontPlatformData.h: Added a missing #include
6974 of PassRefPtr.h, and corrected the capitalization of RefCounted.h.
6975 * platform/text/PlatformString.h: Added a missing #include of
6976 PassRefPtr.h.
6977
vestbo@webkit.orgc0aeddf2008-09-04 11:44:17 +000069782008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
6979
6980 Reviewed by Simon.
6981
vestbo@webkit.orgb82da912008-09-04 14:24:58 +00006982 Fix the QtWebKit build to match changes in r36016
6983
6984 * WebCore.pro:
6985 * bridge/qt/qt_instance.cpp:
6986 (KJS::Bindings::QtInstance::getRuntimeObject):
6987 * bridge/qt/qt_runtime.cpp:
6988 (KJS::Bindings::convertQVariantToValue):
6989 (KJS::Bindings::QtConnectionObject::execute):
6990
69912008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
6992
6993 Reviewed by Simon.
6994
vestbo@webkit.orgc0aeddf2008-09-04 11:44:17 +00006995 Re-enable support for user stylesheets in QtWebKit
6996
6997 QtWebKit now follows the FRAME_LOADS_USER_STYLESHEET
6998 code path, which allows us to keep API support for
6999 loading user style sheets from remote URLs.
7000
7001 As part of the change UserStyleSheetLoader.cpp/h was
7002 moved from WebCore/loader/mac to WebCore/loader.
7003
7004 * WebCore.pro:
7005 * WebCore.xcodeproj/project.pbxproj:
7006 * dom/Document.h:
7007 * loader/UserStyleSheetLoader.cpp: Renamed from WebCore/loader/mac/UserStyleSheetLoader.cpp.
7008 (UserStyleSheetLoader::UserStyleSheetLoader):
7009 (UserStyleSheetLoader::~UserStyleSheetLoader):
7010 * loader/UserStyleSheetLoader.h: Renamed from WebCore/loader/mac/UserStyleSheetLoader.h.
7011 * page/qt/FrameQt.cpp:
7012 (WebCore::Frame::setUserStyleSheetLocation):
7013 (WebCore::Frame::setUserStyleSheet):
7014
alp@webkit.org539ff852008-09-04 09:14:42 +000070152008-09-04 Alp Toker <alp@nuanti.com>
7016
7017 Reviewed by Eric.
7018
7019 Remove left-over QT and CAIRO platform checks.
7020
7021 * html/CanvasRenderingContext2D.cpp:
7022
eric@webkit.orgbc0aab82008-09-04 08:39:51 +000070232008-09-04 Eric Seidel <eric@webkit.org>
7024
7025 Reviewed by Mark Rowe.
7026
mitz@apple.com9388d252008-09-04 08:58:58 +00007027 Fix leak of TextMetrics due to over-ref as see on buildbot.
eric@webkit.orgbc0aab82008-09-04 08:39:51 +00007028
7029 * html/TextMetrics.h: use adoptRef since RefCounted starts @ refcount 1 instead of 0 now.
7030
mitz@apple.com89557c52008-09-04 07:26:53 +000070312008-09-04 Dan Bernstein <mitz@apple.com>
7032
7033 Reviewed by Dave Hyatt.
7034
7035 - fix https://bugs.webkit.org/show_bug.cgi?id=19717
7036 <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
7037
7038 * rendering/RenderBlock.cpp:
7039 (WebCore::RenderBlock::layoutOnlyPositionedObjects): In the
7040 positioned movement only case, call
7041 tryLayoutDoingPositionedMovementOnly() and fall back on doing a full
7042 layout if that fails.
7043 (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
7044 * rendering/RenderBox.h:
7045 (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): Renamed
7046 layoutDoingPositionedMovementOnly to this, and made this function
7047 check if the width changed. If it did, return, leaving the object
7048 dirty. The caller can then call layout(). The width can change even
7049 in the "positioned movement only" case if the object is shrink-to-fit
7050 and the available width constraint is met. (This was the case in the
7051 bug).
7052 * rendering/RenderObject.h:
7053 (WebCore::RenderObject::tryLayoutDoingPositionedMovementOnly):
7054 Renamed layoutDoingPositionedMovementOnly() to this.
7055
eric@webkit.org8883b4a2008-09-04 06:31:37 +000070562008-09-03 Eric Seidel <eric@webkit.org>
7057
7058 No review, build fix only.
7059
7060 Attempt to fix the Qt build.
7061
7062 * WebCore.pro: add page/animation to include path
7063
mrowe@apple.comaa4bb8d2008-09-04 03:20:30 +000070642008-09-03 Mark Rowe <mrowe@apple.com>
7065
7066 Mac build fix. Correctly detect whether dashboard support is enabled.
7067
7068 * DerivedSources.make:
7069
eric@webkit.org3eefe672008-09-04 01:32:26 +000070702008-09-03 Eric Seidel <eric@webkit.org>
7071
7072 Reviewed by Sam.
7073
eric@webkit.org5e069092008-09-04 01:32:51 +00007074 Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
7075
7076 * Configurations/WebCore.xcconfig: add missing ENABLE_*
7077 * config.h: add rules for V8_BINDINGS
7078
70792008-09-03 Eric Seidel <eric@webkit.org>
7080
7081 Reviewed by Sam.
7082
eric@webkit.org3eefe672008-09-04 01:32:26 +00007083 https://bugs.webkit.org/show_bug.cgi?id=20620
7084
7085 Add #if USE(JSC) around KJS dependencies
7086 Remove !USE(JAVASCRIPTCORE_BINDINGS) support for 3 reasons:
7087 1. Most platforms have it on anyway
7088 2. V8 is going to want to share some of that code
7089 3. Those platforms which want it off, should have a separate file instead of an #ifdef in our .cpp
7090
7091 * bindings/js/JSPluginElementFunctions.cpp: remove !USE(JAVASCRIPTCORE_BINDINGS) support
7092 * config.h: change JAVASCRIPTCORE_BINDINGS to JSC and add USE(V8)
7093 * html/HTMLAppletElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7094 * html/HTMLAppletElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7095 * html/HTMLEmbedElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7096 * html/HTMLEmbedElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7097 * html/HTMLObjectElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7098 * html/HTMLObjectElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
7099 * html/HTMLPlugInElement.cpp: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
7100 * html/HTMLPlugInElement.h: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
7101 * platform/text/AtomicString.cpp: add USE(JSC)
7102 * platform/text/AtomicString.h: add USE(JSC)
7103 * platform/text/PlatformString.h: add USE(JSC)
7104 * platform/text/String.cpp: add USE(JSC)
7105 * platform/text/StringImpl.cpp: add USE(JSC)
7106 * platform/text/StringImpl.h: add USE(JSC)
7107
mrowe@apple.comfbe724c2008-09-03 23:46:54 +000071082008-09-03 Dean McNamee <deanm@chromium.org>
7109
7110 Reviewed by Darin Adler.
7111
7112 Fix https://bugs.webkit.org/show_bug.cgi?id=20511
7113 Bug 20511: Remove static initializers on Windows
7114
7115 Avoid static initializers on Windows by forcing Visual C++ to put
7116 all static initializers in a code segment that is never executed.
7117
7118 * config.h:
7119 * css/MediaFeatureNames.cpp:
7120 * dom/EventNames.cpp:
7121 * dom/QualifiedName.cpp:
7122 * dom/make_names.pl:
7123 * platform/StaticConstructors.h:
7124 * platform/text/AtomicString.cpp:
7125
mrowe@apple.com3aa63182008-09-03 23:40:49 +000071262008-09-03 Dirk Schulze <vbs85@gmx.de>
7127
7128 Reviewed by Dave Hyatt.
7129
7130 Make FontCairo draw TextStroke and TextFill separately.
7131
7132 [CAIRO] draw TextFill and TextStroke separately.
7133 [https://bugs.webkit.org/show_bug.cgi?id=20631]
7134
7135 * platform/graphics/cairo/FontCairo.cpp:
7136 (WebCore::Font::drawGlyphs):
7137
eric@webkit.org4ac94e62008-09-18 23:07:55 +000071382008-09-03 Peter Kasting <pkasting@google.com>
mrowe@apple.comdcd72b72008-09-03 23:34:40 +00007139
7140 Reviewed by Dave Hyatt.
7141
7142 https://bugs.webkit.org/show_bug.cgi?id=19663
7143 Account for paint and timer lag when animating images. Also pretend
7144 that images whose animations were paused (by becoming invisible)
7145 continued to animate, by "catching up" to the correct frame when they're
7146 shown again.
7147
7148 * platform/graphics/BitmapImage.cpp:
7149 (WebCore::BitmapImage::BitmapImage):
7150 (WebCore::BitmapImage::startAnimation):
7151 (WebCore::BitmapImage::advanceAnimation):
7152 (WebCore::BitmapImage::internalAdvanceAnimation):
7153 (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
7154 * platform/graphics/BitmapImage.h:
7155 * platform/graphics/cairo/ImageCairo.cpp:
7156 (WebCore::BitmapImage::draw):
7157 * platform/graphics/cg/ImageCG.cpp:
7158 (WebCore::BitmapImage::draw):
7159 * platform/graphics/qt/ImageQt.cpp:
7160 (WebCore::BitmapImage::draw):
7161 * platform/graphics/wx/ImageWx.cpp:
7162 (WebCore::BitmapImage::draw):
7163
kmccullough@apple.comb0f4c622008-09-03 21:53:17 +000071642008-09-03 Kevin McCullough <kmccullough@apple.com>
7165
7166 Reviewed by Tim.
7167
7168 Remove the rest of the "zombie" code from the profiler.
7169 - There is no longer a need for the ProfilerClient callback mechanism.
7170
7171 * page/Console.cpp:
7172 (WebCore::Console::Console):
7173 (WebCore::Console::profile):
7174 (WebCore::Console::profileEnd): Move the variables from the header to
7175 here since we don't have to wait for a callback to use them.
7176 * page/Console.h:
7177 * page/InspectorController.cpp:
7178 (WebCore::InspectorController::startUserInitiatedProfiling):
7179 (WebCore::InspectorController::stopUserInitiatedProfiling):
7180 * page/InspectorController.h:
7181
adachan@apple.com38c66182008-09-03 21:43:44 +000071822008-09-03 Ada Chan <adachan@apple.com>
7183
7184 Windows build fix.
7185
7186 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitCSSKeyframeRule.cpp and JSWebKitCSSKeyframesRule.cpp to the project.
7187
dino@apple.com5c917622008-09-03 21:15:53 +000071882008-09-01 Dean Jackson <dino@apple.com>
7189
7190 Reviewed by Dave Hyatt.
7191
7192 https://bugs.webkit.org/show_bug.cgi?id=20594
7193 Add DOM interfaces for WebKitCSSKeyframeRule
7194 and WebKitCSSKeyframesRule.
7195
7196 TEST: LayoutTests/css3/keyframes-rule.html
7197
7198 * css/WebKitCSSKeyframeRule.idl: Added
7199 * css/WebKitCSSKeyframesRule.idl: Added
7200
7201 * bindings/js/JSCSSRuleCustom.cpp:
7202 (WebCore::toJS):
7203 Add return of new JS Keyframe rules
7204 * bindings/objc/DOMInternal.h:
7205 Include new internal header
7206
7207 * DerivedSources.make:
7208 * GNUmakefile.am:
7209 * WebCore.pro:
7210 * WebCore.vcproj/WebCore.vcproj:
7211 * WebCore.xcodeproj/project.pbxproj:
7212 * WebCoreSources.bkl:
7213 Build configs for new files
7214
aroben@apple.com1f51bfa2008-09-03 20:30:59 +000072152008-09-03 Adam Roben <aroben@apple.com>
7216
7217 Windows build fix
7218
7219 * DerivedSources.cpp: Add JSTextMetrics.cpp to fix the build.
7220 * WebCore.vcproj/WebCore.vcproj: Add JSTextMetrics.h for
7221 convenience/consistency.
7222
adele@apple.com27713582008-09-03 20:13:41 +000072232008-09-03 Adele Peterson <adele@apple.com>
7224
7225 Build fix.
7226
7227 * WebCore.vcproj/WebCore.vcproj:
7228
hyatt@apple.com4b38ed82008-09-03 18:32:05 +000072292008-09-03 David Hyatt <hyatt@apple.com>
7230
7231 Fix for bug 18203, right floats should be allowed to overflow past the left border edge.
7232
7233 Reviewed by Darin (ages ago)
7234
7235 Added fast/block/float/clamped-right-float.html
7236
7237 * rendering/RenderBlock.cpp:
7238 (WebCore::RenderBlock::positionNewFloats):
7239
hyatt@apple.comafe62052008-09-03 18:13:39 +000072402008-09-02 David Hyatt <hyatt@apple.com>
7241
7242 Add support for canvas text drawing APIs.
7243
7244 Reviewed by olliej
7245
7246 Tests added as fast/canvas/canvas-text-*.html
7247
7248 * DerivedSources.make:
7249 * WebCore.xcodeproj/project.pbxproj:
7250 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
7251 (WebCore::JSCanvasRenderingContext2D::fillText):
7252 (WebCore::JSCanvasRenderingContext2D::strokeText):
7253 * css/CSSStyleSelector.cpp:
7254 (WebCore::CSSStyleSelector::initForStyleResolve):
7255 (WebCore::CSSStyleSelector::applyPropertyToStyle):
7256 * css/CSSStyleSelector.h:
7257 * html/CanvasRenderingContext2D.cpp:
7258 (WebCore::CanvasRenderingContext2D::State::State):
7259 (WebCore::CanvasRenderingContext2D::font):
7260 (WebCore::CanvasRenderingContext2D::setFont):
7261 (WebCore::CanvasRenderingContext2D::textAlign):
7262 (WebCore::CanvasRenderingContext2D::setTextAlign):
7263 (WebCore::CanvasRenderingContext2D::textBaseline):
7264 (WebCore::CanvasRenderingContext2D::setTextBaseline):
7265 (WebCore::CanvasRenderingContext2D::fillText):
7266 (WebCore::CanvasRenderingContext2D::strokeText):
7267 (WebCore::CanvasRenderingContext2D::measureText):
7268 (WebCore::CanvasRenderingContext2D::drawTextInternal):
7269 (WebCore::CanvasRenderingContext2D::accessFont):
7270 * html/CanvasRenderingContext2D.h:
7271 * html/CanvasRenderingContext2D.idl:
7272 * html/TextMetrics.h: Added.
7273 (WebCore::TextMetrics::create):
7274 (WebCore::TextMetrics::width):
7275 (WebCore::TextMetrics::setWidth):
7276 (WebCore::TextMetrics::TextMetrics):
7277 * html/TextMetrics.idl: Added.
7278 * platform/graphics/Font.cpp:
7279 (WebCore::Font::lineGap):
7280 * platform/graphics/Font.h:
7281 * platform/graphics/GraphicsContext.cpp:
7282 (WebCore::GraphicsContext::drawBidiText):
7283 * platform/graphics/GraphicsContext.h:
7284 * platform/graphics/GraphicsTypes.cpp:
7285 (WebCore::textAlignName):
7286 (WebCore::parseTextAlign):
7287 (WebCore::textBaselineName):
7288 (WebCore::parseTextBaseline):
7289 * platform/graphics/GraphicsTypes.h:
7290 (WebCore::):
7291
sullivan@apple.combc066af2008-09-03 17:37:24 +000072922008-09-03 John Sullivan <sullivan@apple.com>
7293
7294 Fixed <rdar://problem/6193022> <rdar://problem/6193022> Crash occurs at WebCore::AnimationBase::propertiesEqual () after certain steps
7295
7296 Fixed by Darin, reviewed by me
7297
7298 * page/animation/AnimationBase.cpp:
7299 (WebCore::AnimationBase::propertiesEqual):
7300 added ensurePropertyMap() to this static function
7301 (WebCore::AnimationBase::getPropertyAtIndex):
7302 ditto
7303 (WebCore::AnimationBase::getNumProperties):
7304 ditto
7305
kmccullough@apple.com70168ee2008-09-03 17:35:42 +000073062008-09-03 Kevin McCullough <kmccullough@apple.com>
7307
7308 Reviewed by Darin and Tim.
7309
7310 Remove most of the "zombie" mode from the profiler. Next we will need
7311 to remove the client callback mechanism in profiles.
7312 - These changes are a result of changes to JSCore.
7313
7314 * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html:
7315 * page/Console.cpp:
7316 (WebCore::retrieveLastCaller):
7317 (WebCore::Console::profileEnd):
7318 * page/InspectorController.cpp:
7319 (WebCore::InspectorController::stopUserInitiatedProfiling):
7320
adele@apple.com643616b2008-09-03 16:57:58 +000073212008-09-03 Adele Peterson <adele@apple.com>
7322
7323 Reviewed by Darin Adler.
7324
7325 Test: fast/forms/search-display-none-cancel-button.html
7326
7327 Allow display:none to work on a search field's cancel button. Prepare for adding more style-ability for the results button too.
7328
7329 * css/html4.css: Set display:inline-block for these buttons. Now they can be overridden by a web author.
7330
7331 * rendering/RenderTextControl.cpp:
7332 (WebCore::RenderTextControl::setStyle): Add nil checks for the button renderers.
7333 (WebCore::RenderTextControl::createResultsButtonStyle): Don't set the display explicitly. This is now done in html4.css.
7334 (WebCore::RenderTextControl::createCancelButtonStyle): ditto.
7335 (WebCore::RenderTextControl::createSubtreeIfNeeded):
7336 Reorganize this code so our complicated way of adding shadow nodes is abstracted out into the TextControlInnerElement class.
7337 (WebCore::RenderTextControl::updateFromElement): Added nil checks for the button renderers.
7338 (WebCore::RenderTextControl::subtreeHasChanged): ditto.
7339 (WebCore::RenderTextControl::calcHeight): ditto.
7340 (WebCore::RenderTextControl::nodeAtPoint): ditto.
7341 (WebCore::RenderTextControl::layout): ditto.
7342 (WebCore::RenderTextControl::calcPrefWidths): ditto.
7343 (WebCore::RenderTextControl::clientPaddingLeft): ditto.
7344 (WebCore::RenderTextControl::clientPaddingRight): ditto.
7345
7346 * rendering/TextControlInnerElements.cpp:
7347 (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock): Moved from RenderTextControl.cpp.
7348 (WebCore::RenderTextControlInnerBlock::nodeAtPoint): ditto.
7349 (WebCore::TextControlInnerElement::attachInnerElement): Added.
7350 This does all the separate steps of attaching a shadow node that used to be repeated in RenderTextControl::createSubtreeIfNeeded for each element.
7351 (WebCore::TextControlInnerTextElement::createRenderer): Added. Creates a RenderTextControlInnerBlock.
7352 * rendering/TextControlInnerElements.h:
7353
ap@webkit.orgacd84142008-09-03 08:08:19 +000073542008-08-28 Alexey Proskuryakov <ap@webkit.org>
7355
7356 Reviewed by Maciej.
7357
7358 Elminate SQLiteAuthorizer class.
7359
7360 * WebCore.xcodeproj/project.pbxproj:
7361 * WebCore.vcproj/WebCore.vcproj:
7362 * GNUmakefile.am
7363 Removed SQLiteAuthorizer.h.
7364
7365 * platform/sql/SQLiteAuthorizer.cpp:
7366 * platform/sql/SQLiteAuthorizer.h: Removed.
7367 * platform/sql/SQLiteDatabase.cpp:
7368 (WebCore::SQLiteDatabase::authorizerFunction):
7369 (WebCore::SQLiteDatabase::setAuthorizer):
7370 * platform/sql/SQLiteDatabase.h:
7371 * storage/DatabaseAuthorizer.h:
7372 (WebCore::DatabaseAuthorizer::create):
7373 (WebCore::DatabaseAuthorizer::createView):
7374 (WebCore::DatabaseAuthorizer::createTempView):
7375 (WebCore::DatabaseAuthorizer::dropView):
7376 (WebCore::DatabaseAuthorizer::dropTempView):
7377 (WebCore::DatabaseAuthorizer::allowSelect):
7378 (WebCore::DatabaseAuthorizer::allowReindex):
7379 Merge SQLiteAuthorizer and DatabaseAuthorizer, as keeping them separate serves no purpose.
7380
mrowe@apple.com2ecd4862008-09-03 07:05:48 +000073812008-09-03 Dirk Schulze <vbs85@gmx.de>
7382
7383 Reviewed by Mark Rowe.
7384
7385 WebKitGtk build fix.
7386
7387 * GNUmakefile.am:
7388 * page/animation/AnimationController.h:
7389
mrowe@apple.come344ad02008-09-03 06:59:03 +000073902008-09-02 Robert Blaut <webkit@blaut.biz>
7391
7392 Reviewed by Geoff Garen.
7393
7394 Fix for <https://bugs.webkit.org/show_bug.cgi?id=16913>
7395 Misplaced elements should not close DL lists.
7396
7397 Test: fast/invalid/test-case-tr-th-td-should-not-close-dl-list.html
7398
7399 * html/HTMLParser.cpp:
7400 (WebCore::HTMLParser::handleError):
7401
mrowe@apple.com7a909462008-09-03 06:51:31 +000074022008-09-02 Glenn Wilson <wilsong@gmail.com>
7403
7404 Reviewed by Darin Adler.
7405
7406 Fix for <https://bugs.webkit.org/show_bug.cgi?id=15360>
7407 Bug 15360: color:#{predefined colorName} is treated as colorName in Safari
7408
7409 We would inappropriately interpret and apply an invalid CSS "color" property
7410 when the value is a predefined color preceded by a '#' symbol. For example,
7411 style="color:#gray;" would apply the color gray when it should not.
7412
7413 In the bison template, "hexcolor" was defined as both "HEX maybe_space" OR "IDENT maybe_space".
7414 This caused identifiers not fitting the appropriate hex format but preceded by a '#' to be
7415 interpreted as a valid color (CSSPrimitiveValue::CSS_PARSER_HEXCOLOR), when it was really just
7416 an ignorable token.
7417
7418 To correct this, "IDENT maybe_space" was removed from "hexcolor" and added under "term" as
7419 '#' IDENT maybe_space, which is then processed as a CSSPrimitiveValue::CSS_STRING instead of
7420 CSSPrimitiveValue::CSS_PARSER_HEXCOLOR.
7421
7422 Test: css1/color_and_background/invalid_color.html
7423
7424 * css/CSSGrammar.y:
7425
mrowe@apple.comda9a1442008-09-03 06:22:12 +000074262008-09-02 Mihnea Ovidenie <mihnea@adobe.com>
7427
7428 Reviewed by Darin Adler.
7429
7430 Fix for https://bugs.webkit.org/show_bug.cgi?id=19964
7431 Bug 19964: Divide by zero crash in RenderBox::calculateBackgroundSize with 0,0 bmp background image
7432
7433 Add a check to RenderBox::repaintLayerRectsForImage to make sure the current layer image can be rendered.
7434
7435 Test: css3/khtml-background-size-0x0-bmp.html
7436
7437 * rendering/RenderBox.cpp:
7438 (WebCore::RenderBox::repaintLayerRectsForImage):
7439
mrowe@apple.com6625ae52008-09-03 06:12:30 +000074402008-09-02 Glenn Wilson <wilsong@gmail.com>
7441
7442 Reviewed by Eric Seidel.
7443
7444 Fix https://bugs.webkit.org/show_bug.cgi?id=20397
7445 Bug 20397: Invalid webkit-border-bottom-left-radius property causes crash
7446
7447 The function checkForOrphanedUnits() would change the length of a list whose size was
7448 was already determined before the call to checkForOrphanedUnits was made. Later in
7449 the caller, the old size was being used for boundary management.
7450
7451 This has been fixed by moving the call to checkForOrphanedUnits() earlier in the
7452 calling function, before the size of the list is determined.
7453
7454 Test: fast/css/orphaned_units_crash.html
7455
7456 * css/CSSParser.cpp:
7457 (WebCore::CSSParser::parseValue): Moved call to checkForOrphanedUnits() earlier in the function.
7458
mrowe@apple.com170bd522008-09-03 05:49:51 +000074592008-09-02 Dirk Schulze <vbs85@gmx.de>
7460
7461 Reviewed by Darin Adler.
7462
mrowe@apple.comeb877a52008-09-03 06:01:15 +00007463 Fallback on invalid fill or stroke styles in Canvas was
7464 transparent black. Changed it to last valid style.
7465
7466 Canvas fillStyle() and strokeStyle() needs fallback
7467 https://bugs.webkit.org/show_bug.cgi?id=20474
7468
7469 Tests: fast/canvas/canvas-invalid-fillstyle.html
7470 fast/canvas/canvas-invalid-strokestyle.html
7471
7472 * html/CanvasStyle.cpp:
7473 (WebCore::CanvasStyle::applyStrokeColor):
7474 (WebCore::CanvasStyle::applyFillColor):
7475
74762008-09-02 Dirk Schulze <vbs85@gmx.de>
7477
7478 Reviewed by Darin Adler.
7479
mrowe@apple.com170bd522008-09-03 05:49:51 +00007480 Fix https://bugs.webkit.org/show_bug.cgi?id=20468
7481 Updated drawImage() in canvas to match the current specification.
7482
7483 Test: fast/canvas/drawImage-with-negative-source-destination.html
7484
7485 * html/CanvasRenderingContext2D.cpp:
7486 (WebCore::normalizeRect):
7487 (WebCore::CanvasRenderingContext2D::drawImage):
7488
mrowe@apple.com96916d12008-09-03 05:41:44 +000074892008-08-26 Mark Rowe <mrowe@apple.com>
7490
7491 Reviewed by Darin Adler.
7492
7493 <rdar://problem/5768210> Switch back to the system version of SQLite
7494
7495 Use the system version of SQLite when it is new enough to provide the functionality
7496 that WebCore requires.
7497
7498 * Configurations/Base.xcconfig:
7499 * Configurations/DebugRelease.xcconfig:
7500 * Configurations/WebCore.xcconfig:
7501
mitz@apple.comce268c12008-09-03 02:59:00 +000075022008-09-02 Dan Bernstein <mitz@apple.com>
7503
7504 - build fix
7505
7506 * page/animation/AnimationBase.h:
7507
dino@apple.com7e49a7a2008-09-03 01:32:14 +000075082008-09-02 Chris Marrin <cmarrin@apple.com>
7509
7510 Reviewed by Dave Hyatt.
7511
7512 AnimationController.cpp should be split into separate files
7513 https://bugs.webkit.org/show_bug.cgi?id=20604
7514
7515 Note: All makefiles, except WebCore.xcodeproj have been changed without testing, upon
7516 recommendation of Dave Hyatt.
7517
7518 * GNUmakefile.am:
7519 * WebCore.pro:
7520 * WebCore.vcproj/WebCore.vcproj:
7521 * WebCore.xcodeproj/project.pbxproj:
7522 * WebCoreSources.bkl:
7523 Build files.
7524
7525 * page/AnimationController.cpp: Removed.
7526 * page/AnimationController.h: Removed.
7527 * page/animation: Added.
7528 * page/animation/AnimationBase.cpp: Added.
7529 * page/animation/AnimationBase.h: Added.
7530 * page/animation/AnimationController.cpp: Copied from WebCore/page/AnimationController.cpp.
7531 * page/animation/AnimationController.h: Copied from WebCore/page/AnimationController.h.
7532 * page/animation/CompositeAnimation.cpp: Added.
7533 * page/animation/CompositeAnimation.h: Added.
7534 * page/animation/ImplicitAnimation.cpp: Added.
7535 * page/animation/ImplicitAnimation.h: Added.
7536 * page/animation/KeyframeAnimation.cpp: Added.
7537 * page/animation/KeyframeAnimation.h: Added.
7538
mitz@apple.comcb917a22008-09-03 00:57:37 +000075392008-09-02 Dan Bernstein <mitz@apple.com>
7540
7541 - release build fix
7542
7543 * platform/graphics/cg/GraphicsContextCG.cpp:
7544 (WebCore::calculateDrawingMode):
7545
timothy@apple.comf3aa7342008-09-02 21:30:26 +000075462008-09-02 Timothy Hatcher <timothy@apple.com>
7547
timothy@apple.comc33ff3c2008-09-02 21:35:02 +00007548 Make console functions log the correct resource URL and
7549 line number for where the call originated.
7550
7551 https://bugs.webkit.org/show_bug.cgi?id=17234
7552 <rdar://problem/5732837>
7553
7554 Reviewed by Kevin McCullough.
7555
7556 Test: manual-tests/inspector/console-call-line-numbers.html
7557
7558 * bindings/js/JSConsoleCustom.cpp:
7559 (WebCore::JSConsole::count): Call the impl.
7560 (WebCore::JSConsole::timeEnd): Ditto.
7561 * manual-tests/inspector/console-call-line-numbers.html: Added.
7562 * manual-tests/inspector/resources/script-console-calls.js: Added.
7563 * page/Console.cpp:
7564 (WebCore::retrieveLastCaller): Helper to get the URL and line.
7565 (WebCore::Console::error): Call retrieveLastCaller to get the URL and
7566 line number to pass to addMessageToConsole.
7567 (WebCore::Console::info): Ditto.
7568 (WebCore::Console::log): Ditto.
7569 (WebCore::Console::assertCondition): Ditto.
7570 (WebCore::Console::count): Ditto.
7571 (WebCore::Console::timeEnd): Ditto.
7572 (WebCore::Console::warn): Ditto.
7573 * page/Console.h:
7574 * page/Console.idl: Make count and timeEnd custom.
7575
75762008-09-02 Timothy Hatcher <timothy@apple.com>
7577
timothy@apple.comf3aa7342008-09-02 21:30:26 +00007578 Removed IDL files from WebCore's framework resources.
7579
7580 * WebCore.xcodeproj/project.pbxproj:
7581
mitz@apple.comfb6ad392008-09-02 20:39:29 +000075822008-09-02 Dan Bernstein <mitz@apple.com>
7583
7584 Reviewed by Dave Hyatt.
7585
7586 - <rdar://problem/5681647> pages at http://www.stendmarsofa.com/ are so slow to calculate style it seems like a hang
7587
7588 * html/HTMLParser.cpp:
7589 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added a
7590 cap on the number of consecutive identical residual style tags to
7591 reopen.
7592 (WebCore::HTMLParser::popBlock): Ditto.
7593
ap@webkit.org879328b2008-09-02 16:16:06 +000075942008-09-02 Alexey Proskuryakov <ap@webkit.org>
7595
7596 Reviewed by Adam Roben.
7597
7598 A little database quota management cleanup.
7599
7600 * storage/OriginQuotaManager.cpp:
7601 (WebCore::OriginQuotaManager::OriginQuotaManager):
7602 (WebCore::OriginQuotaManager::lock):
7603 (WebCore::OriginQuotaManager::unlock):
7604 (WebCore::OriginQuotaManager::trackOrigin):
7605 (WebCore::OriginQuotaManager::tracksOrigin):
7606 (WebCore::OriginQuotaManager::addDatabase):
7607 (WebCore::OriginQuotaManager::removeDatabase):
7608 (WebCore::OriginQuotaManager::removeOrigin):
7609 (WebCore::OriginQuotaManager::markDatabase):
7610 (WebCore::OriginQuotaManager::diskUsage):
7611 * storage/OriginQuotaManager.h:
7612 Changed to assert that a lock is taken more directly and reliably. Removed comments about
7613 main/background threads, as this is likely to stop being true with synchronous Database calls
7614 being made on worker threads.
7615
7616 * storage/OriginUsageRecord.cpp:
7617 (WebCore::OriginUsageRecord::OriginUsageRecord):
7618 (WebCore::OriginUsageRecord::addDatabase):
7619 (WebCore::OriginUsageRecord::removeDatabase):
7620 (WebCore::OriginUsageRecord::markDatabase):
7621 (WebCore::OriginUsageRecord::diskUsage):
7622 * storage/OriginUsageRecord.h:
7623 (WebCore::OriginUsageRecord::DatabaseEntry::DatabaseEntry):
7624 Don't use a magic value for unknown. It is totally unnecessary for DatabaseEntry, and
7625 can be replaced with a single boolean for OriginUsageRecord.
7626 Added assertions for string parameters being unshared.
7627
7628
abarth@webkit.orgaea97a02008-09-02 04:26:15 +000076292008-09-01 Adam Barth <abarth@webkit.org>
7630
7631 Reviewed by Sam Weinig.
7632
7633 https://bugs.webkit.org/show_bug.cgi?id=19760
7634
7635 Make granting LoadLocalResources conditional on a policy.
7636
7637 * WebCore.base.exp:
7638 * dom/Document.cpp:
7639 (WebCore::Document::initSecurityContext):
7640 * loader/FrameLoader.cpp:
7641 (WebCore::FrameLoader::setLocalLoadPolicy):
7642 (WebCore::FrameLoader::restrictAccessToLocal):
7643 * loader/FrameLoader.h:
7644 (WebCore::FrameLoader::):
7645 * platform/SecurityOrigin.cpp:
7646 (WebCore::SecurityOrigin::grantLoadLocalResources):
7647 * platform/SecurityOrigin.h:
7648
dino@apple.com6e2db502008-09-01 23:05:28 +000076492008-09-01 Dean Jackson <dino@apple.com>
7650
dino@apple.com59ca9f52008-09-01 23:34:13 +00007651 Reviewed by Sam Weinig.
7652
7653 https://bugs.webkit.org/show_bug.cgi?id=20571
7654 Make sure Window object can assign Animation/Transition event
7655 listeners via attributes.
7656
7657 Also added a bunch of transition event tests, although
7658 only transition-end-event-window is directly relevant to this patch.
7659
7660 (WebCore::JSDOMWindowBase::put):
7661
7662 Tests: transitions/transition-end-event-all-properties.html
7663 transitions/transition-end-event-attributes.html
7664 transitions/transition-end-event-container.html
7665 transitions/transition-end-event-left.html
7666 transitions/transition-end-event-multiple-01.html
7667 transitions/transition-end-event-multiple-02.html
7668 transitions/transition-end-event-multiple-03.html
7669 transitions/transition-end-event-multiple-04.html
7670 transitions/transition-end-event-nested.html
7671 transitions/transition-end-event-transform.html
7672 transitions/transition-end-event-window.html
7673
76742008-09-01 Dean Jackson <dino@apple.com>
7675
dino@apple.com6e2db502008-09-01 23:05:28 +00007676 Reviewed by Sam Weinig
7677
7678 Code styling cleanup.
7679
7680 * bindings/js/JSDOMWindowBase.cpp:
7681 (WebCore::JSDOMWindowBase::getValueProperty):
7682 (WebCore::JSDOMWindowBase::put):
7683
weinig@apple.com3412bb42008-09-01 21:22:54 +000076842008-09-01 Geoffrey Garen <ggaren@apple.com>
7685
7686 Reviewed by Darin Adler.
7687
7688 First cut at inline caching for access to vanilla JavaScript properties.
7689
7690 Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
7691 to WebCore classes, and PutPropertySlot& arguments to put functions.
7692
7693 (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
7694 inline caching for global properties, so global assignment can be optimized.
7695
7696 * ForwardingHeaders/kjs/StructureID.h: Added.
7697 * bindings/js/JSDOMBinding.h:
7698 (WebCore::DOMObject::DOMObject):
7699 * bindings/js/JSDOMWindowBase.cpp:
7700 (WebCore::JSDOMWindowBase::put):
7701 * bindings/js/JSDOMWindowBase.h:
7702 * bindings/js/JSDOMWindowCustom.h:
7703 (WebCore::JSDOMWindow::customPut):
7704 * bindings/js/JSDOMWindowShell.cpp:
7705 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
7706 (WebCore::JSDOMWindowShell::put):
7707 * bindings/js/JSDOMWindowShell.h:
7708 * bindings/js/JSEventTargetBase.h:
7709 (WebCore::JSEventTargetBase::put):
7710 * bindings/js/JSEventTargetNode.h:
7711 (WebCore::JSEventTargetNode::put):
7712 * bindings/js/JSHTMLAppletElementCustom.cpp:
7713 (WebCore::JSHTMLAppletElement::customPut):
7714 * bindings/js/JSHTMLEmbedElementCustom.cpp:
7715 (WebCore::JSHTMLEmbedElement::customPut):
7716 * bindings/js/JSHTMLInputElementBase.cpp:
7717 (WebCore::JSHTMLInputElementBase::put):
7718 * bindings/js/JSHTMLInputElementBase.h:
7719 * bindings/js/JSHTMLObjectElementCustom.cpp:
7720 (WebCore::JSHTMLObjectElement::customPut):
7721 * bindings/js/JSHistoryCustom.cpp:
7722 (WebCore::JSHistory::customPut):
7723 * bindings/js/JSInspectedObjectWrapper.cpp:
7724 (WebCore::JSInspectedObjectWrapper::wrap):
7725 (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
7726 * bindings/js/JSInspectedObjectWrapper.h:
7727 * bindings/js/JSInspectorCallbackWrapper.cpp:
7728 (WebCore::JSInspectorCallbackWrapper::wrap):
7729 (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
7730 * bindings/js/JSInspectorCallbackWrapper.h:
7731 * bindings/js/JSLocationCustom.cpp:
7732 (WebCore::JSLocation::customPut):
7733 * bindings/js/JSPluginElementFunctions.cpp:
7734 (WebCore::runtimeObjectCustomPut):
7735 * bindings/js/JSPluginElementFunctions.h:
7736 * bindings/js/JSQuarantinedObjectWrapper.cpp:
7737 (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
7738 (WebCore::JSQuarantinedObjectWrapper::put):
7739 * bindings/js/JSQuarantinedObjectWrapper.h:
7740 * bindings/js/JSStorageCustom.cpp:
7741 (WebCore::JSStorage::customPut):
7742 * bindings/objc/WebScriptObject.mm:
7743 (-[WebScriptObject setValue:forKey:]):
7744 * bindings/scripts/CodeGeneratorJS.pm:
7745 * bridge/NP_jsobject.cpp:
7746 (_NPN_SetProperty):
7747 * bridge/jni/jni_jsobject.mm:
7748 (JavaJSObject::setMember):
7749 * bridge/objc/objc_class.mm:
7750 (KJS::Bindings::ObjcClass::fallbackObject):
7751 * bridge/objc/objc_runtime.h:
7752 * bridge/objc/objc_runtime.mm:
7753 (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
7754 (ObjcFallbackObjectImp::put):
7755 * bridge/runtime.cpp:
7756 (KJS::Bindings::Instance::createRuntimeObject):
7757 * bridge/runtime_array.cpp:
7758 (RuntimeArray::put):
7759 * bridge/runtime_array.h:
7760 * bridge/runtime_object.cpp:
7761 (RuntimeObjectImp::RuntimeObjectImp):
7762 (RuntimeObjectImp::put):
7763 * bridge/runtime_object.h:
7764
jmalonzo@webkit.org1f770ba2008-09-01 12:43:34 +000077652008-09-01 Dirk Schulze <vbs85@gmx.de>
7766
7767 Reviewed by Eric Seidel.
7768
jmalonzo@webkit.org37f07882008-09-01 12:43:48 +00007769 Fixed border-radius for Cairo.
7770
7771 * platform/graphics/cairo/GraphicsContextCairo.cpp:
7772 (WebCore::GraphicsContext::strokeArc):
7773
77742008-09-01 Dirk Schulze <vbs85@gmx.de>
7775
7776 Reviewed by Eric Seidel.
7777
jmalonzo@webkit.org1f770ba2008-09-01 12:43:34 +00007778 Added canvas's globalAlpha to cairo.
7779
7780 * platform/graphics/GraphicsContext.h:
7781 * platform/graphics/cairo/GraphicsContextCairo.cpp:
7782 (WebCore::GraphicsContext::fillPath):
7783 (WebCore::GraphicsContext::strokePath):
7784 (WebCore::GraphicsContext::setAlpha):
7785 (WebCore::GraphicsContext::getAlpha):
7786 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
7787 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
7788 * platform/graphics/cairo/ImageCairo.cpp:
7789 (WebCore::BitmapImage::draw):
7790
hausmann@webkit.orgecd099d2008-08-31 13:13:28 +000077912008-08-31 Simon Hausmann <hausmann@webkit.org>
7792
7793 Unreviewed Qt build fix.
7794
7795 * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
7796 the .h file
7797
darin@apple.come7945852008-08-31 06:58:07 +000077982008-08-30 Darin Adler <darin@apple.com>
7799
7800 Reviewed by Maciej.
7801
7802 - adopt some new JavaScriptCore functions where appropriate
7803
7804 * bindings/js/JSDOMWindowBase.cpp:
7805 (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
7806 (WebCore::windowProtoFuncBToA): Ditto.
7807 * bindings/js/JSEventListener.cpp:
7808 (WebCore::JSLazyEventListener::eventParameterName): Adopted
7809 jsNontrivialString.
7810 * bindings/js/JSSVGLazyEventListener.cpp:
7811 (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
7812
beidson@apple.com21c821f2008-08-30 00:26:01 +000078132008-08-29 Brady Eidson <beidson@apple.com>
7814
beidson@apple.come1bd6032008-08-30 00:30:11 +00007815 Reviewed by Anders' rubberstamp
7816
7817 Style cleanup to match MediaTokenizer::writeRawData()
7818
7819 * loader/PluginDocument.cpp:
7820 (WebCore::PluginTokenizer::writeRawData):
7821
78222008-08-29 Brady Eidson <beidson@apple.com>
7823
beidson@apple.com21c821f2008-08-30 00:26:01 +00007824 Reviewed by Anders
7825
mitz@apple.com098b1e62008-09-24 16:39:55 +00007826 https://bugs.webkit.org/show_bug.cgi?id=20556
7827 <rdar://problem/6181817> REGRESSION (r35946): media/video-click-dlbclick-standalone.html [sic] fails because load never fires
7828
beidson@apple.com21c821f2008-08-30 00:26:01 +00007829 Fix regression I introducted in 35946
7830 Already covered by media/video-click-dlbclick-standalone.html
7831
7832 * loader/MediaDocument.cpp:
7833 (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
7834 (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called. Also add
7835 an ASSERT signifying that this method should only be called once, to more closely follow the
7836 PluginDocument case.
7837
bdakin@apple.com7ee298c2008-08-30 00:00:30 +000078382008-08-29 Beth Dakin <bdakin@apple.com>
7839
7840 Reviewed by Sam Weinig.
7841
7842 Fix for <rdar://problem/6181588>
7843
7844 This patch makes hit testing take into account the new concept of a
7845 disconnected frame, in which some of the content may not be
7846 visible. The current hit testing mechanism starts at a target frame
7847 and drills down for a HitTestResult. In some cases, drilling down
7848 will find a non-visible result. When this happens, we need to try
7849 again, starting at a higher level -- namely, starting at the main
7850 frame.
7851
7852 * editing/Editor.cpp:
7853 (WebCore::Editor::insideVisibleArea): New function that tests if a
7854 point is inside the visible area for a disconnected frame.
7855 * editing/Editor.h:
7856 * page/EventHandler.cpp:
7857 (WebCore::EventHandler::hitTestResultAtPoint):
7858
adele@apple.comfb903062008-08-29 22:30:18 +000078592008-08-29 Adele Peterson <adele@apple.com>
7860
7861 Reviewed by Adam Roben.
7862
7863 Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
7864
7865 * GNUmakefile.am:
7866 * WebCore.pro:
7867 * WebCore.vcproj/WebCore.vcproj:
7868 * WebCore.xcodeproj/project.pbxproj:
7869 * WebCoreSources.bkl:
7870 * html/HTMLTextFieldInnerElement.cpp: Removed.
7871 * html/HTMLTextFieldInnerElement.h: Removed.
7872 * rendering/RenderTextControl.cpp:
7873 (WebCore::RenderTextControl::createSubtreeIfNeeded):
7874 * rendering/RenderTextControl.h:
7875 * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
7876 (WebCore::TextControlInnerElement::TextControlInnerElement):
7877 (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
7878 (WebCore::TextControlInnerTextElement::defaultEventHandler):
7879 (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
7880 (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
7881 (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
7882 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
7883 * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
7884
eric@webkit.org298c65b2008-08-29 21:39:32 +000078852008-08-29 Eric Seidel <eric@webkit.org>
7886
eric@webkit.org77837ce2008-08-29 21:40:07 +00007887 Rubber-stamped by aroben.
7888
7889 Add GraphicsContext.h include to GraphcisContextPrivate.h
7890
7891 GraphicsContextPrivate uses StrokeStyle which is defined
7892 in GraphicsContext.h but it doesn't include that header.
7893 CoreGraphics build doesn't fail here due to the order
7894 it happens to include files.
7895
7896 * platform/graphics/GraphicsContextPrivate.h:
7897
78982008-08-29 Eric Seidel <eric@webkit.org>
7899
eric@webkit.org298c65b2008-08-29 21:39:32 +00007900 Reviewed by hyatt.
7901
7902 Fix GeneratedImage to respect Image's refcounting
7903 Fixing potential crashers (future if not current)
7904 https://bugs.webkit.org/show_bug.cgi?id=20567
7905
7906 I don't know if it's possible to make the current code
7907 crash, thus I've not made a test.
7908
7909 * css/CSSGradientValue.cpp:
7910 (WebCore::CSSGradientValue::image):
7911 * css/CSSImageGeneratorValue.cpp:
7912 (WebCore::CSSImageGeneratorValue::removeClient):
7913 (WebCore::CSSImageGeneratorValue::getImage):
7914 * css/CSSImageGeneratorValue.h:
7915 * platform/graphics/GeneratedImage.h:
7916 (WebCore::GeneratedImage::GeneratedImage):
7917 * rendering/style/RenderStyle.cpp:
7918 (WebCore::RenderStyle::setContent):
7919 * rendering/style/RenderStyle.h:
7920
eric.carlson@apple.comddeafd42008-08-29 20:07:19 +000079212008-08-29 Eric Carlson <eric.carlson@apple.com>
7922
7923 Reviewed by Adele.
7924
eric.carlson@apple.com850c77c2008-08-29 20:24:50 +00007925 Fix for <rdar://problem/6093767>
7926 https://bugs.webkit.org/show_bug.cgi?id=20526
7927
7928 Don't allow video to render until unsupported track types have been disabled.
7929
7930 * platform/graphics/win/QTMovieWin.cpp:
7931 (QTMovieWinPrivate::task):
7932 (QTMovieWinPrivate::drawingComplete):
7933 (QTMovieWinPrivate::clearGWorld):
7934
79352008-08-29 Eric Carlson <eric.carlson@apple.com>
7936
7937 Reviewed by Adele.
7938
eric.carlson@apple.comddeafd42008-08-29 20:07:19 +00007939 Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
7940 <rdar://problem/6169301>
7941
7942 Return the size of the movie data instead of 1000.
7943
7944 Test: media/progress-event-total.html
7945
7946 * platform/graphics/win/QTMovieWin.cpp:
7947 (QTMovieWin::dataSize):
7948
hausmann@webkit.org0367b582008-08-29 15:56:02 +000079492008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
7950
hausmann@webkit.orgfe7f2ac2008-08-29 15:57:44 +00007951 Reviewed by Eric Seidel.
7952
7953 [janitor/qt] Start replacing port specific getters with the generic native getter
7954 To get the native presentation of an image we currently have platform
7955 specific #ifdef's and a generic getter using NativeImagePtr. This patch
7956 extends this to the ImageBuffer and updates the Qt platform to get rid
7957 of the special #ifdefs.
7958
7959 https://bugs.webkit.org/attachment.cgi?id=22861
7960
7961 * platform/graphics/BitmapImage.h:
7962 * platform/graphics/Image.h:
7963 * platform/graphics/qt/ImageQt.cpp:
7964 * platform/graphics/qt/StillImageQt.cpp:
7965 * platform/graphics/qt/StillImageQt.h:
7966 * platform/qt/ClipboardQt.cpp:
7967 (WebCore::ClipboardQt::createDragImage):
7968 (WebCore::ClipboardQt::declareAndWriteDragImage):
7969 * platform/qt/CursorQt.cpp:
7970 * platform/qt/PasteboardQt.cpp:
7971 (WebCore::Pasteboard::writeImage):
7972
79732008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
7974
hausmann@webkit.org0367b582008-08-29 15:56:02 +00007975 Reviewed by Simon.
7976
hausmann@webkit.orgb99266e2008-08-29 15:56:59 +00007977 [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
7978
7979 * svg/graphics/qt/SVGPaintServerQt.cpp:
7980 (WebCore::SVGPaintServer::renderPath):
7981 * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
7982 (WebCore::SVGPaintServerSolid::setup):
7983
79842008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
7985
7986 Reviewed by Simon.
7987
hausmann@webkit.org0367b582008-08-29 15:56:02 +00007988 [network/qt] Implement defering of loading ResourceHandle's
7989 This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
7990 implementation is simply not forwarding anything to the
7991 ResourceHandleClient until we are allowed to. This might lead to a deadlock
7992 in Qt as we do not empty the QNetworkReply input buffer and wait until we
7993 are allowed to read. If that happens we are forced to buffer the data
7994 within QNetworkReplyHandler, for now this is not done.
7995
7996 Manual test:
7997 - Open http://acid3.acidtests.org
7998 - Wait for the test to complete
7999 - Click on the Reference Rendering link
8000 - Be fast and see the results of acid3
8001 => assert
8002
8003 * platform/network/qt/QNetworkReplyHandler.cpp:
8004 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
8005 (WebCore::QNetworkReplyHandler::setLoadMode):
8006 (WebCore::QNetworkReplyHandler::finish):
8007 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
8008 (WebCore::QNetworkReplyHandler::forwardData):
8009 (WebCore::QNetworkReplyHandler::start):
8010 (WebCore::QNetworkReplyHandler::resetState):
8011 (WebCore::QNetworkReplyHandler::sendQueuedItems):
8012 * platform/network/qt/QNetworkReplyHandler.h:
8013 (WebCore::QNetworkReplyHandler::):
8014 * platform/network/qt/ResourceHandleQt.cpp:
8015 (WebCore::ResourceHandle::start):
8016 (WebCore::ResourceHandle::loadResourceSynchronously):
8017 (WebCore::ResourceHandle::setDefersLoading):
8018
hausmann@webkit.org2f2621f2008-08-29 10:21:38 +000080192008-08-29 Simon Hausmann <hausmann@webkit.org>
8020
hausmann@webkit.orgf5864402008-08-29 12:35:59 +00008021 Reviewed by Holger.
8022
8023 Don't crash when drawing patterns with the HTML canvas. Patterns
8024 remain unimplemented but at least they don't crash anymore. This is
8025 done by changing the PlatformPatternPtr to be a brush for the Qt
8026 platform.
8027
8028 * platform/graphics/Pattern.h:
8029 * platform/graphics/qt/GraphicsContextQt.cpp:
8030 (WebCore::GraphicsContext::fillPath):
8031 (WebCore::GraphicsContext::strokePath):
8032 (WebCore::GraphicsContext::fillRect):
8033 * platform/graphics/qt/PatternQt.cpp:
8034 (WebCore::Pattern::createPlatformPattern):
8035
80362008-08-29 Simon Hausmann <hausmann@webkit.org>
8037
hausmann@webkit.org2f2621f2008-08-29 10:21:38 +00008038 Fix the Qt build, fontSelector() is not used by the Qt port yet
8039 and we just return 0 in Font::fontSelector().
8040
8041 * platform/graphics/Font.h:
8042
alp@webkit.org97d8c102008-08-29 05:09:39 +000080432008-08-28 Alp Toker <alp@nuanti.com>
8044
8045 GTK+ dist/build fix. List newly added header files.
8046
8047 * GNUmakefile.am:
8048
simon.fraser@apple.com8f30d022008-08-28 23:04:18 +000080492008-08-28 Simon Fraser <simon.fraser@apple.com>
8050
8051 Reviewed by Dave Hyatt
8052
8053 Various WebKitCSSTransformValue-related fixes
8054 https://bugs.webkit.org/show_bug.cgi?id=20562
8055
8056 Test: css3/transform-value-types.html
8057
8058 * bindings/js/JSCSSValueCustom.cpp:
8059 (WebCore::toJS):
8060 * css/CSSValue.h:
8061 * css/WebKitCSSTransformValue.cpp:
8062 (WebCore::WebKitCSSTransformValue::cssText):
8063 * css/WebKitCSSTransformValue.h:
8064 (WebCore::WebKitCSSTransformValue::):
8065 * css/WebKitCSSTransformValue.idl:
8066
mitz@apple.comd7222352008-08-28 22:53:31 +000080672008-08-28 Dan Bernstein <mitz@apple.com>
8068
8069 Reviewed by Steve Falkenburg.
8070
8071 - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
8072
8073 * platform/win/SharedTimerWin.cpp:
8074 (WebCore::TimerWindowWndProc):
8075
hyatt@apple.com7d335232008-08-28 21:38:45 +000080762008-08-28 David Hyatt <hyatt@apple.com>
8077
8078 RenderStyle cleanup.
8079
8080 Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
8081
8082 Reviewed by Adam
8083
8084 * css/CSSImageGeneratorValue.cpp:
8085 * css/CSSImageValue.cpp:
8086 * css/CSSStyleSelector.cpp:
8087 * rendering/RenderImageGeneratedContent.cpp:
8088 * rendering/style/NinePieceImage.cpp: Added.
8089 * rendering/style/NinePieceImage.h: Added.
8090 * rendering/style/RenderStyle.cpp:
8091 (WebCore::FillLayer::operator==):
8092 (WebCore::FillLayer::containsImage):
8093 (WebCore::StyleInheritedData::operator==):
8094 (WebCore::RenderStyle::contentDataEquivalent):
8095 * rendering/style/RenderStyle.h:
8096 * rendering/style/StyleCachedImage.cpp: Added.
8097 * rendering/style/StyleCachedImage.h: Added.
8098 * rendering/style/StyleGeneratedImage.cpp: Added.
8099 * rendering/style/StyleGeneratedImage.h: Added.
8100 * rendering/style/StyleImage.h: Added.
8101
simon.fraser@apple.com28bad1a2008-08-28 21:29:21 +000081022008-08-28 Simon Fraser <simon.fraser@apple.com>
8103
8104 Reviewed by Dave Hyatt
8105
8106 Make all the 'isFoo()' methods on CSSValue const,
8107 and fix the subclasses.
8108
8109 https://bugs.webkit.org/show_bug.cgi?id=20561
8110
8111 * css/CSSTimingFunctionValue.h:
8112 * css/CSSValue.h:
8113 (WebCore::CSSValue::isFontValue):
8114 (WebCore::CSSValue::isImageGeneratorValue):
8115 (WebCore::CSSValue::isImageValue):
8116 (WebCore::CSSValue::isImplicitInitialValue):
8117 * css/CSSValueList.h:
8118 * css/FontValue.h:
8119
hyatt@apple.com550a95c2008-08-28 19:53:56 +000081202008-08-28 David Hyatt <hyatt@apple.com>
8121
hyatt@apple.comcb3eb812008-08-28 20:08:03 +00008122 The great RenderStyle cleanup begins!
8123
8124 Move LengthBox and LengthSize out of RenderStyle and into Length.
8125
8126 Reviewed by Adam
8127
8128 * rendering/Length.h:
8129 (WebCore::):
8130 (WebCore::Length::Length):
8131 (WebCore::Length::operator==):
8132 (WebCore::Length::operator!=):
8133 (WebCore::Length::value):
8134 (WebCore::Length::rawValue):
8135 (WebCore::Length::percent):
8136 (WebCore::Length::type):
8137 (WebCore::Length::quirk):
8138 (WebCore::Length::setValue):
8139 (WebCore::Length::setRawValue):
8140 (WebCore::Length::calcValue):
8141 (WebCore::Length::calcMinValue):
8142 (WebCore::Length::calcFloatValue):
8143 (WebCore::Length::isUndefined):
8144 (WebCore::Length::isZero):
8145 (WebCore::Length::isPositive):
8146 (WebCore::Length::isNegative):
8147 (WebCore::Length::isAuto):
8148 (WebCore::Length::isRelative):
8149 (WebCore::Length::isPercent):
8150 (WebCore::Length::isFixed):
8151 (WebCore::Length::isStatic):
8152 (WebCore::Length::isIntrinsicOrAuto):
8153 (WebCore::Length::blend):
8154 (WebCore::LengthBox::LengthBox):
8155 (WebCore::LengthBox::operator=):
8156 (WebCore::LengthBox::operator==):
8157 (WebCore::LengthBox::operator!=):
8158 (WebCore::LengthBox::nonZero):
8159 (WebCore::LengthSize::LengthSize):
8160 * rendering/style/RenderStyle.h:
8161
81622008-08-28 David Hyatt <hyatt@apple.com>
8163
hyatt@apple.com550a95c2008-08-28 19:53:56 +00008164 Reviewed by Darin
8165
8166 https://bugs.webkit.org/show_bug.cgi?id=18091
8167
8168 font-size should be animatable using -webkit-transition.
8169
8170 * page/AnimationController.cpp:
8171 (WebCore::AnimationControllerPrivate::ensurePropertyMap):
8172 * rendering/style/RenderStyle.h:
8173 (WebCore::RenderStyle::setFontSize):
8174
mitz@apple.com30923ad2008-08-28 17:45:47 +000081752008-08-28 Brad Garcia <bgarcia@google.com>
8176
8177 Reviewed by Dan Bernstein.
8178
8179 https://bugs.webkit.org/show_bug.cgi?id=20549
8180 Correctly determine when cursor is over a resizable border within
8181 a nested frameset.
8182
8183 * rendering/RenderFrameSet.cpp:
8184 (WebCore::RenderFrameSet::canResizeRow):
8185 (WebCore::RenderFrameSet::canResizeColumn):
8186
simon.fraser@apple.comae77c412008-08-28 17:30:07 +000081872008-08-28 Simon Fraser <simon.fraser@apple.com>
8188
8189 Reviewed by Eric Seidel
8190
8191 Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
8192 https://bugs.webkit.org/show_bug.cgi?id=20552
8193
8194 Test: animations/animation-css-rule-types.html
8195
8196 * css/CSSRule.idl:
8197
andersca@apple.com12399c32008-08-28 17:26:46 +000081982008-08-28 Anders Carlsson <andersca@apple.com>
8199
8200 Reviewed by Kevin and Darin.
8201
8202 <rdar://problem/6182541>
8203 https://bugs.webkit.org/show_bug.cgi?id=20202
8204 Missing http status line from the http headers.
8205
8206 Add a status line to the header string.
8207
8208 * plugins/PluginStream.cpp:
8209 (WebCore::PluginStream::startStream):
8210
zecke@webkit.orgf1daa422008-08-28 15:56:01 +000082112008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
8212
8213 Rubber-stamped by Darin Adler.
8214
8215 https://bugs.webkit.org/show_bug.cgi?id=17261
8216
8217 Make it possible to theme the default Url icon and enable this for
8218 the Qt port. To have a minimal usage of #ifdef in the code the setting
8219 of the icon was moved to a new method which comes in two flavors.
8220
8221 * loader/icon/IconDatabase.cpp:
8222 (WebCore::loadDefaultIconRecord): Load or set the default icon
8223 (WebCore::IconDatabase::defaultIcon):
8224
zecke@webkit.org1887dc82008-08-28 15:03:21 +000082252008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
8226
8227 Unreviewed compile fix
8228
8229 * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
8230
aroben@apple.comfacf5032008-08-28 13:34:01 +000082312008-08-28 Adam Roben <aroben@apple.com>
8232
8233 Windows (and others?) build fix
8234
8235 * page/Chrome.cpp: Added a missing #include.
8236 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
8237
eric@webkit.org22794fd2008-08-28 12:04:40 +000082382008-08-27 Eric Seidel <eric@webkit.org>
8239
8240 Reviewed by Oliver Hunt.
8241
eric@webkit.org5f874e92008-08-28 12:04:55 +00008242 Qt and Cairo support from krit (and blind stab @ wx compile support)
8243 https://bugs.webkit.org/show_bug.cgi?id=20373
8244
8245 * platform/graphics/cairo/GraphicsContextCairo.cpp:
8246 (WebCore::GraphicsContext::fillPath):
8247 (WebCore::GraphicsContext::strokePath):
8248 (WebCore::GraphicsContext::drawPath):
8249 (WebCore::GraphicsContext::fillRect):
8250 (WebCore::GraphicsContext::setPlatformFillColor):
8251 (WebCore::GraphicsContext::setPlatformStrokeColor):
8252 (WebCore::GraphicsContext::setPlatformStrokeStyle):
8253 (WebCore::GraphicsContext::strokeRect):
8254 (WebCore::GraphicsContext::setImageInterpolationQuality):
8255 (WebCore::GraphicsContext::imageInterpolationQuality):
8256 (WebCore::GraphicsContext::setPlatformFillPattern):
8257 (WebCore::GraphicsContext::setPlatformStrokePattern):
8258 (WebCore::GraphicsContext::setPlatformFillGradient):
8259 (WebCore::GraphicsContext::setPlatformStrokeGradient):
8260 * platform/graphics/qt/GraphicsContextQt.cpp:
8261 (WebCore::GraphicsContext::fillPath):
8262 (WebCore::GraphicsContext::strokePath):
8263 (WebCore::GraphicsContext::fillRect):
8264 (WebCore::GraphicsContext::strokeRect):
8265 (WebCore::GraphicsContext::clipToImageBuffer):
8266 (WebCore::GraphicsContext::setPlatformFillPattern):
8267 (WebCore::GraphicsContext::setPlatformStrokePattern):
8268 (WebCore::GraphicsContext::setPlatformFillGradient):
8269 (WebCore::GraphicsContext::setPlatformStrokeGradient):
8270 (WebCore::GraphicsContext::setImageInterpolationQuality):
8271 (WebCore::GraphicsContext::imageInterpolationQuality):
8272 * platform/graphics/wx/GraphicsContextWx.cpp:
8273 (WebCore::GraphicsContext::clipToImageBuffer):
8274 (WebCore::GraphicsContext::setImageInterpolationQuality):
8275 (WebCore::GraphicsContext::imageInterpolationQuality):
8276 (WebCore::GraphicsContext::fillPath):
8277 (WebCore::GraphicsContext::strokePath):
8278 (WebCore::GraphicsContext::drawPath):
8279 (WebCore::GraphicsContext::fillRect):
8280 (WebCore::GraphicsContext::setPlatformFillPattern):
8281 (WebCore::GraphicsContext::setPlatformStrokePattern):
8282 (WebCore::GraphicsContext::setPlatformFillGradient):
8283
82842008-08-27 Eric Seidel <eric@webkit.org>
8285
8286 Reviewed by Oliver Hunt.
8287
eric@webkit.org22794fd2008-08-28 12:04:40 +00008288 Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
8289 https://bugs.webkit.org/show_bug.cgi?id=20373
8290
8291 Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
8292
8293 Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
8294 have to store large Gradient objects in the GraphicsContextState
8295
8296 Made Pattern RefCounted for the same reason.
8297
8298 Many updates to GraphicsContext to support easier drawing with
8299 Patterns and Gradients.
8300
8301 * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
8302 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
8303 (WebCore::toJS):
8304 * css/CSSGradientValue.cpp:
8305 (WebCore::CSSGradientValue::createGradient):
8306 * css/CSSGradientValue.h:
8307 * html/CanvasGradient.cpp:
8308 (WebCore::CanvasGradient::CanvasGradient):
8309 * html/CanvasGradient.h:
8310 (WebCore::CanvasGradient::gradient):
8311 (WebCore::CanvasGradient::addColorStop):
8312 (WebCore::CanvasGradient::getColor):
8313 * html/CanvasPattern.cpp:
8314 * html/CanvasPattern.h:
8315 (WebCore::CanvasPattern::pattern):
8316 (WebCore::CanvasPattern::originClean):
8317 * html/CanvasRenderingContext2D.cpp:
8318 (WebCore::CanvasRenderingContext2D::State::State):
8319 (WebCore::CanvasRenderingContext2D::setStrokeStyle):
8320 (WebCore::CanvasRenderingContext2D::setFillStyle):
8321 (WebCore::CanvasRenderingContext2D::fill):
8322 (WebCore::CanvasRenderingContext2D::stroke):
8323 (WebCore::CanvasRenderingContext2D::fillRect):
8324 (WebCore::CanvasRenderingContext2D::strokeRect):
8325 * html/CanvasRenderingContext2D.h:
8326 * html/CanvasStyle.cpp:
8327 (WebCore::CanvasStyle::applyStrokeColor):
8328 (WebCore::CanvasStyle::applyFillColor):
8329 * html/CanvasStyle.h:
8330 * platform/graphics/GeneratedImage.h:
8331 (WebCore::GeneratedImage::GeneratedImage):
8332 * platform/graphics/Generator.h:
8333 * platform/graphics/Gradient.h:
8334 (WebCore::Gradient::create):
8335 * platform/graphics/GraphicsContext.cpp:
8336 (WebCore::GraphicsContext::fillRule):
8337 (WebCore::GraphicsContext::setFillRule):
8338 (WebCore::GraphicsContext::setStrokePattern):
8339 (WebCore::GraphicsContext::setFillPattern):
8340 (WebCore::GraphicsContext::setStrokeGradient):
8341 (WebCore::GraphicsContext::setFillGradient):
8342 * platform/graphics/GraphicsContext.h:
8343 * platform/graphics/GraphicsContextPrivate.h:
8344 (WebCore::):
8345 (WebCore::GraphicsContextState::GraphicsContextState):
8346 * platform/graphics/GraphicsTypes.h:
8347 * platform/graphics/Path.h:
8348 * platform/graphics/Pattern.h:
8349 (WebCore::Pattern::create):
8350 (WebCore::Pattern::tileImage):
8351 * platform/graphics/cg/GraphicsContextCG.cpp:
8352 (WebCore::GraphicsContext::drawRect):
8353 (WebCore::GraphicsContext::drawEllipse):
8354 (WebCore::GraphicsContext::drawConvexPolygon):
8355 (WebCore::calculateDrawingMode):
8356 (WebCore::GraphicsContext::drawPath):
8357 (WebCore::fillPathWithFillRule):
8358 (WebCore::GraphicsContext::fillPath):
8359 (WebCore::GraphicsContext::strokePath):
8360 (WebCore::GraphicsContext::fillRect):
8361 (WebCore::GraphicsContext::fillRoundedRect):
8362 (WebCore::GraphicsContext::setPlatformStrokePattern):
8363 (WebCore::GraphicsContext::setPlatformFillPattern):
8364 (WebCore::GraphicsContext::setPlatformStrokeGradient):
8365 (WebCore::GraphicsContext::setPlatformFillGradient):
8366
eric@webkit.org70b099f2008-08-28 11:42:26 +000083672008-08-20 Eric Seidel <eric@webkit.org>
8368
8369 Reviewed by Darin and Alexey.
8370
8371 Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
8372 with timeouts paused.
8373 https://bugs.webkit.org/show_bug.cgi?id=20469
8374
8375 I attempted to clean up the memory management of PausedTimeouts, I'm not
8376 sure the solution I came up with is "cleaner", but it's in some ways
8377 "safer", since it no longer uses raw pointers and manual new/delete.
8378
8379 This also now prevents CachedPage from needlessly creating Window
8380 objects when caching pages which didn't already have one. :)
8381
8382 I also made Chrome.cpp no longer depend on the JavaScript bindings
8383 (aka JSDOMWindowBase.h), since there was no real reason for it to.
8384
8385 * bindings/js/JSDOMWindowBase.cpp:
8386 (WebCore::JSDOMWindowBase::pauseTimeouts):
8387 (WebCore::JSDOMWindowBase::resumeTimeouts):
8388 * bindings/js/JSDOMWindowBase.h:
8389 * bindings/js/ScriptController.cpp:
8390 (WebCore::ScriptController::pauseTimeouts):
8391 (WebCore::ScriptController::resumeTimeouts):
8392 * bindings/js/ScriptController.h:
8393 * history/CachedPage.cpp:
8394 (WebCore::CachedPage::CachedPage):
8395 (WebCore::CachedPage::restore):
8396 * page/Chrome.cpp:
8397 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
8398 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
8399 * page/JavaScriptDebugServer.cpp:
8400 (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
8401 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
8402
zecke@webkit.org7d0df9e2008-08-28 03:36:31 +000084032008-08-27 Holger Hans Peter Freyther <zecke@selfish.org>
8404
8405 Unreviewed compile fix
8406
8407 Add the stub for the Qt port.
8408
8409 * WebCore.pro:
8410 * page/qt/AccessibilityObjectQt.cpp: Added.
8411 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
8412
zecke@webkit.orged5c2fe2008-08-28 02:15:20 +000084132008-08-27 Alp Toker <alp@nuanti.com>
8414
8415 Reviewed by Eric.
8416
8417 https://bugs.webkit.org/show_bug.cgi?id=20551
zecke@webkit.org81540882008-08-28 02:18:20 +00008418 [GTK] search popup crash
8419
8420 * platform/gtk/SearchPopupMenuGtk.cpp:
8421 (WebCore::SearchPopupMenu::enabled):
8422 Fix a search popup crasher by disabling the history popup since we
8423 don't support this feature yet in the GTK+ port.
8424
84252008-08-27 Alp Toker <alp@nuanti.com>
8426
8427 Reviewed by Eric.
8428
8429 https://bugs.webkit.org/show_bug.cgi?id=20551
zecke@webkit.orged5c2fe2008-08-28 02:15:20 +00008430 [GTK] curl crashers
8431
8432 * platform/network/curl/ResourceHandleManager.cpp:
8433 (WebCore::ResourceHandleManager::startScheduledJobs):
8434 Remove the resource handle from the pending list before starting the
8435 job, not afterwards. Fixes crashers in the test suite.
8436
8437 Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
8438 Test: fast/encoding/char-encoding.html
8439
eric@webkit.org712cb892008-08-28 00:26:15 +000084402008-08-27 Dirk Schulze <vbs85@gmx.de>
8441
8442 Reviewed by eseidel.
8443
8444 Fix canvas drawImage to support composite operations.
8445 Composite had no effect on canvas elements like these:
8446 http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
8447
8448 [CAIRO] Canvas composite don't work on canvas-elements.
8449 https://bugs.webkit.org/show_bug.cgi?id=20548
8450
8451 * html/CanvasRenderingContext2D.cpp:
8452 (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
8453
eric@webkit.org75c83a02008-08-28 00:04:59 +000084542008-08-27 Mario Bensi <mbensi@pleyo.com>
8455
8456 Reviewed by Eric Seidel.
8457
8458 Fix the data content of an image with a base64.
8459
8460 * platform/network/curl/ResourceHandleManager.cpp:
8461 (WebCore::parseDataUrl): Remove the String and use only the data
8462 Vector because the data.latin1().data() convert the data content and
8463 the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
8464 not drawn correctly.
8465
antti@apple.comf66a86b2008-08-27 23:59:50 +000084662008-08-27 Antti Koivisto <antti@apple.com>
8467
8468 Reviewed by Eric Seidel.
8469
8470 Crash after OK in dialog box and reloading page in secure mode
8471 https://bugs.webkit.org/show_bug.cgi?id=20493
8472
8473 The new run loop spawned by a modal dialog causes a timer in the loader to run
8474 synchronously inside didFinishLoading() deleting "this" object.
8475
8476 Defer all WebCore timers when a modal dialog is up. They are not
8477 safe to execute.
8478
8479 * page/Chrome.cpp:
8480 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
8481 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
8482
simon.fraser@apple.com7dbde252008-08-27 23:16:36 +000084832008-08-27 Chris Marrin <cmarrin@apple.com>
8484
8485 Reviewed by Dave Hyatt
8486
8487 Memory leaks when animating transforms
8488 https://bugs.webkit.org/show_bug.cgi?id=20532
8489
8490 * rendering/style/RenderStyle.cpp:
8491 (WebCore::ScaleTransformOperation::blend):
8492 (WebCore::RotateTransformOperation::blend):
8493 (WebCore::SkewTransformOperation::blend):
8494 (WebCore::TranslateTransformOperation::blend):
8495 (WebCore::MatrixTransformOperation::blend):
8496 * rendering/style/RenderStyle.h:
8497
timothy@apple.com79cb13a2008-08-27 22:03:24 +000084982008-08-27 Timothy Hatcher <timothy@apple.com>
8499
8500 Add support for support for -webkit-appearance: default-button on the Mac platform.
8501
8502 <rdar://problem/6173530>
8503
8504 Reviewed by Dave Hyatt.
8505
8506 * WebCore.base.exp: Export new symbols.
8507 * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
8508 * platform/mac/WebCoreSystemInterface.mm: Ditto.
8509 * rendering/RenderButton.cpp:
8510 (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
8511 (WebCore::RenderButton::setStyle): Ditto.
8512 * rendering/RenderButton.h: Ditto.
8513 * rendering/RenderThemeMac.mm:
8514 (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
8515 (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
8516 key if the button is default, otherwise reset the key equivalent.
8517 (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
8518 on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
8519 the window's previous default button cell when finished.
8520
hyatt@apple.comf0ec84d2008-08-27 21:18:15 +000085212008-08-26 David Hyatt <hyatt@apple.com>
8522
8523 First cut at making form controls on OS X respect full page zoom. There are lots of bugs.
8524
8525 Reviewed by weinig
8526
8527 Added fast/forms/zoomed-controls.html
8528
8529 * css/CSSStyleSelector.cpp:
8530 (WebCore::addIntrinsicMargins):
8531 * rendering/RenderSlider.cpp:
8532 (WebCore::RenderSlider::calcPrefWidths):
8533 * rendering/RenderThemeMac.h:
8534 * rendering/RenderThemeMac.mm:
8535 (WebCore::RenderThemeMac::adjustRepaintRect):
8536 (WebCore::RenderThemeMac::inflateRect):
8537 (WebCore::RenderThemeMac::baselinePosition):
8538 (WebCore::RenderThemeMac::setControlSize):
8539 (WebCore::RenderThemeMac::sizeForFont):
8540 (WebCore::RenderThemeMac::sizeForSystemFont):
8541 (WebCore::RenderThemeMac::setFontFromControlSize):
8542 (WebCore::RenderThemeMac::paintCheckbox):
8543 (WebCore::RenderThemeMac::setCheckboxCellState):
8544 (WebCore::RenderThemeMac::paintRadio):
8545 (WebCore::RenderThemeMac::setRadioCellState):
8546 (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
8547 (WebCore::RenderThemeMac::adjustButtonStyle):
8548 (WebCore::RenderThemeMac::setButtonCellState):
8549 (WebCore::RenderThemeMac::paintButton):
8550 (WebCore::RenderThemeMac::paintMenuList):
8551 (WebCore::RenderThemeMac::paintMenuListButton):
8552 (WebCore::RenderThemeMac::popupInternalPaddingLeft):
8553 (WebCore::RenderThemeMac::popupInternalPaddingRight):
8554 (WebCore::RenderThemeMac::popupInternalPaddingTop):
8555 (WebCore::RenderThemeMac::popupInternalPaddingBottom):
8556 (WebCore::RenderThemeMac::setPopupButtonCellState):
8557 (WebCore::RenderThemeMac::paintSliderTrack):
8558 (WebCore::RenderThemeMac::paintSliderThumb):
8559 (WebCore::RenderThemeMac::adjustSliderThumbSize):
8560 (WebCore::RenderThemeMac::paintSearchField):
8561 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
8562 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
8563 (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
8564
beidson@apple.comd0793872008-08-27 19:59:55 +000085652008-08-27 Brady Eidson <beidson@apple.com>
8566
8567 Reviewed by Anders
8568
8569 <rdar://problem/6134133> - Crash when loading large movie as a standalone document
8570
8571 We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
8572 to load and buffer the data for the movie in WebCore. With large media files, this results in blowing
8573 away the virtual address space and a crash.
8574
8575 * loader/EmptyClients.h:
8576 (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
8577 * loader/FrameLoaderClient.h: Added client method to get platform specific error for
8578 "plugin will handle load"
8579
8580 * loader/MediaDocument.cpp:
8581 (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
8582 and cancel the WebCore-managed load
8583 (WebCore::MediaTokenizer::writeRawData):
8584 (WebCore::MediaTokenizer::finish):
8585
simon.fraser@apple.come74d6712008-08-27 18:19:55 +000085862008-08-26 Simon Fraser <simon.fraser@apple.com>
8587
8588 Reviewed by Eric Seidel
8589
8590 Linear timing functions should have control points 0, 0, 1, 1.
8591 https://bugs.webkit.org/show_bug.cgi?id=20535
8592
8593 * css/CSSStyleSelector.cpp:
8594 (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
8595 * rendering/style/RenderStyle.h:
8596
aroben@apple.com8cfb6c62008-08-27 14:52:17 +000085972008-08-27 Adam Roben <aroben@apple.com>
8598
8599 Windows build fix
8600
8601 * WebCore.vcproj/WebCore.vcproj: Fix file extension.
8602
mrowe@apple.com37686d42008-09-04 00:10:39 +000086032008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com33a556b2008-08-26 22:29:14 +00008604
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00008605 Reviewed by Beth Dakin.
8606
cfleizach@apple.com2a505f42008-08-26 22:56:03 +00008607 <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
8608
8609 Added platform-specific accessibilityIgnoreAttachment, which allows the platform
8610 to determine if an attachment is ignored through accessibility. Added equivalent
8611 methods in Gtk, Win and Mac
8612
8613 Test: accessibility/plugin.html
8614
8615 * GNUmakefile.am:
8616 * WebCore.vcproj/WebCore.vcproj:
8617 * WebCore.xcodeproj/project.pbxproj:
8618 * page/AccessibilityObject.h:
8619 * page/AccessibilityRenderObject.cpp:
8620 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
8621 * page/gtk/AccessibilityObjectAtk.cpp: Added.
8622 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
8623 * page/mac/AccessibilityObjectMac.mm: Added.
8624 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
8625 * page/mac/AccessibilityObjectWrapper.h:
8626 * page/win/AccessibilityObjectWin.cpp: Added.
8627 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
8628
mrowe@apple.com37686d42008-09-04 00:10:39 +000086292008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com2a505f42008-08-26 22:56:03 +00008630
8631 Reviewed by Beth Dakin.
8632
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00008633 <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
8634
8635 * page/mac/AccessibilityObjectWrapper.mm:
8636 (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
8637 (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
8638
mrowe@apple.com37686d42008-09-04 00:10:39 +000086392008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00008640
cfleizach@apple.com33a556b2008-08-26 22:29:14 +00008641 Reviewed by Darin Adler.
8642
8643 <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
8644
8645 Tests: accessibility/table-notbody.html
8646
8647 * page/AccessibilityTable.cpp:
8648 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
8649
weinig@apple.com33705852008-08-26 19:51:28 +000086502008-08-26 Sam Weinig <sam@webkit.org>
8651
weinig@apple.comf6f553a2008-08-26 21:21:26 +00008652 Reviewed by Beth Dakin.
8653
8654 Fix typo.
8655
8656 * dom/DOMCoreException.h:
8657
86582008-08-26 Sam Weinig <sam@webkit.org>
8659
weinig@apple.com0f34f002008-08-26 19:56:54 +00008660 Reviewed by Oliver Hunt.
8661
8662 Fix https://bugs.webkit.org/show_bug.cgi?id=20479
8663 <rdar://problem/6167660>
8664 Take image redirects into account when tainting the canvas.
8665
8666 Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
8667
8668 * html/CanvasRenderingContext2D.cpp:
8669 (WebCore::CanvasRenderingContext2D::drawImage):
8670 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
8671
86722008-08-26 Sam Weinig <sam@webkit.org>
8673
weinig@apple.com33705852008-08-26 19:51:28 +00008674 Reviewed by Darin Adler.
8675
8676 Change canvas tainting logic to ask the image if it contains
8677 any resources outside of its own origin. Since there is no
8678 way to determine if SVG images contain any resources outside its
8679 origin, we always assume it does.
8680
8681 * html/CanvasRenderingContext2D.cpp:
8682 (WebCore::CanvasRenderingContext2D::drawImage):
8683 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
8684 * platform/graphics/BitmapImage.h:
8685 (WebCore::BitmapImage::hasSingleSecurityOrigin):
8686 * platform/graphics/GeneratedImage.h:
8687 (WebCore::GeneratedImage::hasSingleSecurityOrigin):
8688 * platform/graphics/Image.h:
8689 (WebCore::Image::hasSingleSecurityOrigin):
8690 * platform/graphics/cg/PDFDocumentImage.h:
8691 (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
8692 * svg/graphics/SVGImage.h:
8693
britto@apple.com616ef6d2008-08-26 17:51:03 +000086942008-08-26 Maxime Britto <britto@apple.com>
8695
8696 Reviewed by Adele.
8697
8698 <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
8699 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.
8700 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.
8701
8702 * page/EventHandler.cpp:
8703 (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
8704 * page/EventHandler.h:
8705 * rendering/RenderLayer.cpp:
8706 (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
8707 (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.
8708 * rendering/RenderLayer.h:
8709 * rendering/RenderObject.cpp:
8710 (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
8711 (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
8712 (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
8713
jchaffraix@webkit.orge6915392008-08-26 10:27:33 +000087142008-08-25 Julien Chaffraix <jchaffraix@webkit.org>
8715
darin@apple.com07c80c62008-09-05 18:15:43 +00008716 Reviewed by Darin Adler.
jchaffraix@webkit.orge6915392008-08-26 10:27:33 +00008717
8718 Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
8719 https://bugs.webkit.org/show_bug.cgi?id=20247
8720
8721 <rdar://problem/6118218>
8722
8723 Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
8724 check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
8725 (case insensitive for HTML elements).
8726
8727 Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
8728
8729 * dom/Element.cpp:
8730 (WebCore::Element::getAttribute):
8731 * dom/NamedAttrMap.cpp:
8732 (WebCore::NamedAttrMap::getNamedItem):
8733 (WebCore::NamedAttrMap::getAttributeItem):
8734 * dom/NamedAttrMap.h:
8735
weinig@apple.comb4ce06e2008-08-26 01:52:51 +000087362008-08-25 Sam Weinig <sam@webkit.org>
8737
weinig@apple.com8d3ea722008-08-26 04:19:07 +00008738 Reviewed by Oliver Hunt.
8739
8740 Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
8741 <rdar://problem/6174096>
8742 Treat SVG images as dirty when drawing to a canvas.
8743
8744 Test: http/tests/security/canvas-remote-read-svg-image.html
8745
8746 * html/CanvasRenderingContext2D.cpp:
8747 (WebCore::CanvasRenderingContext2D::drawImage):
8748 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
8749 * platform/graphics/Image.h:
8750 (WebCore::Image::isSVGImage):
8751 * svg/graphics/SVGImage.h:
8752 (WebCore::SVGImage::isSVGImage):
8753
87542008-08-25 Sam Weinig <sam@webkit.org>
8755
weinig@apple.comb4ce06e2008-08-26 01:52:51 +00008756 Reviewed by Mark Rowe.
8757
8758 Fix https://bugs.webkit.org/show_bug.cgi?id=20377
8759 Leak in XMLHttpRequest.
8760
8761 * xml/XMLHttpRequest.cpp:
8762 (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
8763
beidson@apple.com46421212008-08-25 21:48:56 +000087642008-08-25 Brady Eidson <beidson@apple.com>
8765
8766 Reviewed by Anders
8767
8768 Speculative fix for <rdar://problem/6173217>
8769
8770 Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
8771 Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
8772 the first null check invalid.
8773
8774 * loader/FrameLoader.cpp:
8775 (WebCore::FrameLoader::stopAllLoaders):
8776
8777
kmccullough@apple.com7b85fbb2008-08-25 21:28:40 +000087782008-08-25 Kevin McCullough <kmccullough@apple.com>
8779
8780 Reviewed by Tim.
8781
8782 <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
8783 there is no profile, can cause crash
8784
8785 * page/inspector/ProfilesPanel.js:
8786
dino@apple.com1baeea62008-08-25 21:06:21 +000087872008-08-25 Dean Jackson <dino@apple.com>
8788
8789 Reviewed by Dave Hyatt
8790
8791 Make sure 'inherit' is handled by transition property.
8792 https://bugs.webkit.org/show_bug.cgi?id=20513
8793
8794 Test: transitions/inherit.html
8795 Test: transitions/inherit-other-props.html
8796
8797 * css/CSSStyleSelector.cpp:
8798 fix macro to check existence of list before getting size
8799
andersca@apple.com2866b8302008-08-25 20:56:21 +000088002008-08-25 Anders Carlsson <andersca@apple.com>
8801
8802 Reviewed by Mark.
8803
8804 <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
8805
8806 Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume
8807 (safely) that any class that needs finalization on the main thread will also need to be deallocated
8808 on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
8809 calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
8810
8811 * platform/mac/WebCoreObjCExtras.c:
8812 (WebCoreObjCFinalizeOnMainThread):
8813
antti@apple.com60381cb2008-08-25 20:41:11 +000088142008-08-25 Antti Koivisto <antti@apple.com>
8815
8816 Reviewed by Dan Bernstein.
8817
8818 Rename CachedResource::referenced() to CachedResource::hasClients() to
8819 match previous ref() -> addClient() rename.
8820
8821 * loader/Cache.cpp:
8822 (WebCore::Cache::pruneLiveResources):
8823 (WebCore::Cache::pruneDeadResources):
8824 (WebCore::Cache::remove):
8825 (WebCore::Cache::getStatistics):
8826 (WebCore::Cache::dumpLRULists):
8827 * loader/CachedResource.cpp:
8828 (WebCore::CachedResource::addClient):
8829 (WebCore::CachedResource::removeClient):
8830 (WebCore::CachedResource::setDecodedSize):
8831 (WebCore::CachedResource::setEncodedSize):
8832 * loader/CachedResource.h:
8833 (WebCore::CachedResource::hasClients):
8834 (WebCore::CachedResource::canDelete):
8835
timothy@apple.com7d809242008-08-25 18:33:05 +000088362008-08-25 Anthony Ricaud <rik24d@gmail.com>
8837
8838 Add a missing Inspector localized string for "other".
8839
8840 https://bugs.webkit.org/show_bug.cgi?id=20509
8841
8842 Reviewed by Tim Hatcher.
8843
8844 * English.lproj/localizedStrings.js:
8845
kmccullough@apple.com560f5fe2008-08-25 18:18:01 +000088462008-08-22 Kevin McCullough <kmccullough@apple.com>
8847
8848 Reviewed by Geoff, Mark and Tim.
8849
8850 <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
8851 in the console said what file and line number they came from
8852 - Lay the foundation for getting line numbers and other data from the
8853 JavaScript engine.
8854
8855 * ForwardingHeaders/VM: Added.
8856 * ForwardingHeaders/VM/Machine.h: Added.
8857 * page/Console.cpp: Gather the line number and file information when
8858 profileEnd has been called, but don't use it until didFinishProfiling is
8859 called. We won't need to wait once we remove the profiler "zombie" mode
8860 which this patch helps pave the foundation for.
8861 (WebCore::Console::Console):
8862 (WebCore::Console::profileEnd):
8863 (WebCore::Console::finishedProfiling):
8864 * page/Console.h:
8865 * page/InspectorController.cpp: Modify calls to
8866 addProfileMessageToConsole to satisfy the new arguments it takes.
8867 (WebCore::InspectorController::finishedProfiling):
8868 (WebCore::InspectorController::addProfile):
8869 (WebCore::InspectorController::addProfileMessageToConsole):
8870 (WebCore::InspectorController::finishedProfiling):
8871 * page/InspectorController.h:
8872
hausmann@webkit.orgf305df42008-08-25 10:06:53 +000088732008-08-25 Holger Hans Peter Freyther <zecke@selfish.org>
8874
8875 Reviewed by Simon.
8876
8877 [inspector] Update the WebKit.qrc Qt resources file
8878 Catchup with the changes in the directory.
8879
8880 * page/inspector/WebKit.qrc:
8881
hausmann@webkit.org5f13af32008-08-25 07:10:22 +000088822008-08-25 Dirk Schulze <vbs85@gmx.de>
8883
8884 Reviewed by Simon.
8885
8886 Transformed the radian to degree, to get rotate()
8887 in canvas work as expected.
8888
8889 [Qt] Canvas.rotate() doesn't work
8890 https://bugs.webkit.org/show_bug.cgi?id=20496
8891
8892 * platform/graphics/qt/GraphicsContextQt.cpp:
8893 (WebCore::GraphicsContext::rotate):
8894
sfalken@apple.com9d442862008-08-25 05:43:33 +000088952008-08-24 Steve Falkenburg <sfalken@apple.com>
8896
8897 Add a "last chance" WM_TIMER to the Windows shared timer.
8898
8899 The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
8900 Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
8901 timers if a timer with an earlier expiration is already pending. This results in no timers
8902 firing from that point on.
8903
8904 We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
8905 buggy window message hook.
8906
8907 This timer will start when the first WM_TIMER is scheduled, and will
8908 fire every 5 seconds thereafter, causing any lost timers to be fired.
8909
8910 Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
8911 and prevents the WebFrame leak.
8912
8913 Reviewed by Darin Adler, Geoff Garen.
8914
8915 * platform/win/SharedTimerWin.cpp:
8916 (WebCore::):
8917 (WebCore::TimerWindowWndProc):
8918 (WebCore::setSharedTimerFireTime):
8919
mitz@apple.com771fb752008-08-25 03:22:44 +000089202008-08-24 Dan Bernstein <mitz@apple.com>
8921
8922 Reviewed by Darin Adler.
8923
8924 - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
8925
8926 Test: fast/css/font-property-priority.html
8927
8928 * css/CSSParser.cpp:
8929 (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
8930 to the font-property-parsing functions.
8931 (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
8932 changed to use it rather than the m_important member.
8933 (WebCore::CSSParser::parseFontVariant): Ditto.
8934 (WebCore::CSSParser::parseFontWeight): Ditto.
8935 * css/CSSParser.h:
8936
timothy@apple.com4cea2632008-08-24 22:28:44 +000089372008-08-24 Timothy Hatcher <timothy@apple.com>
8938
8939 Fixes a bug where the Inspector's UI would not animate or
8940 fully function because JavaScript timeouts, intervals and
8941 CSS animation timers where not firing while paused at a
8942 a breakpoint in the inspected page.
8943
8944 https://bugs.webkit.org/show_bug.cgi?id=20042
8945
8946 Reviewed by Darin Adler.
8947
8948 Test: manual-tests/inspector/forzen-ui-while-paused.html
8949
8950 * page/JavaScriptDebugServer.cpp:
8951 (WebCore::JavaScriptDebugServer::pauseIfNeeded):
8952 Add a call to TimerBase::fireTimersInNestedEventLoop before
8953 spinning the EventLoop.
8954
rwlbuis@webkit.org8a772442008-08-24 18:07:32 +000089552008-08-24 Rob Buis <buis@kde.org>
8956
8957 Reviewed by Sam Weinig.
8958
8959 https://bugs.webkit.org/show_bug.cgi?id=20324
8960 A change in SVG Glyph wont show up
8961
8962 Invalidate the glyph cache when the d attribute is set.
8963
8964 Test: svg/custom/glyph-setting-d-attribute.svg
8965
8966 * svg/SVGGlyphElement.cpp:
8967 (WebCore::SVGGlyphElement::invalidateGlyphCache):
8968 (WebCore::SVGGlyphElement::parseMappedAttribute):
8969 (WebCore::SVGGlyphElement::insertedIntoDocument):
8970 (WebCore::SVGGlyphElement::removedFromDocument):
8971 * svg/SVGGlyphElement.h:
8972
mitz@apple.com5b2c3cc2008-08-24 09:18:39 +000089732008-08-24 Dan Bernstein <mitz@apple.com>
8974
8975 Reviewed by Sam Weinig.
8976
8977 - fix https://bugs.webkit.org/show_bug.cgi?id=13864
8978 <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
8979
8980 * rendering/RenderText.cpp:
8981 (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
8982 beginWS and endWS before the early return to ensure that they are
8983 initialized in that case.
8984
cwzwarich@webkit.org53ddf172008-08-23 08:16:54 +000089852008-08-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
8986
8987 Rubber-stamped by Mark Rowe.
8988
8989 Remove modelines.
8990
8991 * WebCore.pro:
8992 * bridge/testbindings.cpp:
8993 * dom/DocPtr.h:
8994 * loader/SubstituteData.h:
8995 * page/Chrome.cpp:
8996 * page/Chrome.h:
8997 * page/ChromeClient.h:
8998 * page/Frame.h:
8999 * page/FrameLoadRequest.h:
9000 * page/FrameTree.cpp:
9001 * page/FrameTree.h:
9002 * page/Page.h:
9003 * page/mac/ChromeMac.mm:
9004 * platform/network/HTTPHeaderMap.h:
9005 * platform/network/ResourceErrorBase.cpp:
9006 * platform/network/ResourceErrorBase.h:
9007 * platform/network/ResourceHandleInternal.h:
9008 * platform/network/ResourceRequestBase.cpp:
9009 * platform/network/ResourceRequestBase.h:
9010 * platform/network/ResourceResponseBase.cpp:
9011 * platform/network/ResourceResponseBase.h:
9012 * platform/network/cf/ResourceError.h:
9013 * platform/network/cf/ResourceRequest.h:
9014 * platform/network/cf/ResourceRequestCFNet.h:
9015 * platform/network/cf/ResourceResponse.h:
9016 * platform/network/cf/ResourceResponseCFNet.h:
9017 * platform/network/curl/ResourceError.h:
9018 * platform/network/curl/ResourceRequest.h:
9019 * platform/network/curl/ResourceResponse.h:
9020 * platform/network/mac/ResourceError.h:
9021 * platform/network/mac/ResourceErrorMac.mm:
9022 * platform/network/mac/ResourceRequest.h:
9023 * platform/network/mac/ResourceRequestMac.mm:
9024 * platform/network/mac/ResourceResponse.h:
9025 * platform/network/mac/ResourceResponseMac.mm:
9026 * platform/network/qt/ResourceError.h:
9027 * platform/network/qt/ResourceRequest.h:
9028 * platform/network/qt/ResourceResponse.h:
9029 * platform/network/soup/CookieJarSoup.cpp:
9030 * platform/network/soup/ResourceError.h:
9031 * platform/network/soup/ResourceRequest.h:
9032 * platform/network/soup/ResourceResponse.h:
9033
mitz@apple.com57a2f482008-08-23 07:16:41 +000090342008-08-23 Dan Bernstein <mitz@apple.com>
9035
9036 Reviewed by Dave Hyatt.
9037
9038 - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
9039
9040 Test: fast/table/vertical-align-baseline.html
9041
9042 * rendering/RenderTable.cpp:
9043 (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
9044 baseline of the first table row, if there is one, -1 otherwise.
9045 * rendering/RenderTable.h:
9046 * rendering/RenderTableCell.cpp:
9047 (WebCore::RenderTableCell::baselinePosition): Changed to follow the
9048 CSS2.1 definition of the baseline of a table cell.
9049 * rendering/RenderTableSection.cpp:
9050 (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
9051 the baseline of the first row in the section.
9052 * rendering/RenderTableSection.h:
9053
jhoneycutt@apple.com88af18d2008-08-22 23:44:32 +000090542008-08-18 Jon Honeycutt <jhoneycutt@apple.com>
9055
9056 Add SPI to make a Windows WebView transparent.
9057
9058 Reviewed by Dan Bernstein.
9059
9060 * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
9061 determines whether the created context has an alpha channel.
9062 * platform/graphics/win/GraphicsContextCGWin.cpp:
9063 (WebCore::CGContextWithHDC):
9064
timothy@apple.comb63d1172008-08-22 18:39:42 +000090652008-08-22 Timothy Hatcher <timothy@apple.com>
9066
timothy@apple.com964022d2008-08-22 20:35:20 +00009067 Rolls out r35834 because it caused a regression in the Inspector's
9068 Console where some expressions always threw a syntax error.
9069
9070 https://bugs.webkit.org/show_bug.cgi?id=20487
9071
9072 * page/inspector/Console.js:
9073 (Console.prototype._evalInInspectedWindow): Removes parenthesis
9074 around the expression.
9075
90762008-08-22 Timothy Hatcher <timothy@apple.com>
9077
timothy@apple.com056d4782008-08-22 18:39:52 +00009078 Makes getStyleProperty return a value for the overflow property
9079 when overflow-x and overflow-y are equal.
9080
9081 https://bugs.webkit.org/show_bug.cgi?id=20485
9082
9083 Reviewed by Dan Bernstein.
9084
9085 Test: fast/css/overflow-property.html
9086
9087 * css/CSSMutableStyleDeclaration.cpp:
9088 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
9089
90902008-08-22 Timothy Hatcher <timothy@apple.com>
9091
timothy@apple.comb63d1172008-08-22 18:39:42 +00009092 Fixes a bug where while editing in the Inspector the
9093 sidebar scroll position would jump to the top.
9094
9095 https://bugs.webkit.org/show_bug.cgi?id=20484
9096
9097 Reviewed by Darin Adler.
9098
9099 * page/inspector/treeoutline.js:
9100 (TreeOutline._removeChildren): Remove the offsetTop call that
9101 was forcing a layout, since layout causes scroll positions
9102 to be clamped to the new scrollHeight/Width. Layout will happen
9103 normally when needed.
9104
kevino@webkit.org8271c842008-08-22 16:25:52 +000091052008-08-22 Kevin Ollivier <kevino@theolliviers.com>
9106
9107 wx build fix. Add AccessibilityTable sources.
9108
9109 * WebCoreSources.bkl:
9110
mitz@apple.com9befc872008-08-22 06:29:33 +000091112008-08-21 Dan Bernstein <mitz@apple.com>
9112
9113 Reviewed by Jon Honeycutt and Alexey Proskuryakov.
9114
9115 - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
9116
9117 Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
9118
9119 * platform/graphics/mac/SimpleFontDataMac.mm:
9120 (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
9121 ascent and 100% to its reported descent.
9122
mrowe@apple.comac9b6a52008-08-22 02:07:54 +000091232008-08-21 Kalle Vahlman <kalle.vahlman@movial.com>
9124
9125 Reviewed by Darin Adler.
9126
mrowe@apple.com22eaa172008-08-22 02:10:15 +00009127 https://bugs.webkit.org/show_bug.cgi?id=20267
mrowe@apple.comac9b6a52008-08-22 02:07:54 +00009128 [GTK] Crash on some pages due to a plugin
9129
9130 Fix handling of badly formatted and empty plugin mime descriptions
9131
9132 * plugins/gtk/PluginPackageGtk.cpp:
9133 (WebCore::PluginPackage::fetchInfo):
9134
mrowe@apple.com798b3432008-08-22 02:07:48 +000091352008-08-21 Kevin Watters <kevinwatters@gmail.com>
9136
9137 Reviewed by Darin Adler.
9138
9139 Follow other ports (and IE) in ImageSourceWx.cpp never to return an
9140 animated GIF frame duration of less than 50ms.
9141
9142 * platform/graphics/wx/ImageSourceWx.cpp:
9143 (WebCore::ImageSource::frameDurationAtIndex):
9144
britto@apple.com8ed72772008-08-22 00:39:39 +000091452008-08-21 Maxime Britto <britto@apple.com>
9146
9147 Reviewed by Kevin McCullough.
9148
9149 Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
9150 https://bugs.webkit.org/show_bug.cgi?id=20451
9151
9152 rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
9153 When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
9154 This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
9155
9156 * page/EventHandler.cpp:
9157 (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.
9158
9159 (WebCore::EventHandler::handleMousePressEvent): ditto
9160
timothy@apple.com5d492192008-08-21 23:54:01 +000091612008-08-21 Anthony Ricaud <rik24d@gmail.com>
9162
9163 Small optimization for when the dividers in the Inspector's
9164 Resources panel are updated.
9165
9166 Reviewed by Tim Hatcher.
9167
9168 * page/inspector/ResourcesPanel.js:
9169 (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
9170 Combind a for loop and clone the divider element.
9171
dino@apple.comaa75e4c2008-08-21 23:35:23 +000091722008-08-21 Chris Marrin <cmarrin@apple.com>
9173
9174 Allow 0 (without units) for Time eg. duration
9175 Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
9176
9177 Reviewed by Dave Hyatt.
9178
9179 Test: css1/units/zero-duration-without-units.html
9180
9181 * css/CSSParser.cpp:
9182 (WebCore::CSSParser::validUnit):
9183
timothy@apple.com29c12d02008-08-21 20:12:47 +000091842008-08-21 Timothy Hatcher <timothy@apple.com>
9185
timothy@apple.comca11cd82008-08-21 20:13:12 +00009186 Make deleting all text while editing a DOM attribute in
9187 the Inspector delete the attribute. This also fixes
9188 an exception that would happen before.
9189
9190 https://bugs.webkit.org/show_bug.cgi?id=20472
9191
9192 Reviewed by Kevin McCullough.
9193
9194 * page/inspector/ElementsPanel.js:
9195 (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
9196 Don't check for hasAttributes on the parseElement, continuing
9197 through the function will correctly remove the attribute.
9198 If the parseElement is null, call _editingCancelled not
9199 editingCancelled, this fixes an exception.
9200
92012008-08-21 Timothy Hatcher <timothy@apple.com>
9202
timothy@apple.comde831cf2008-08-21 20:12:59 +00009203 Update the Inspector's Metrics pane when editing in
9204 the Styles pane. This makes sure the metrics shown
9205 always match what the Styles pane shows.
9206
9207 https://bugs.webkit.org/show_bug.cgi?id=20470
9208
9209 Reviewed by Kevin McCullough.
9210
9211 * page/inspector/ElementsPanel.js:
9212 (WebInspector.ElementsPanel): Add event listeners for
9213 the "style edited" and "style property toggled" events,
9214 so the Metrics pane is updated.
9215 (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
9216 Update the Metrics pane.
9217 * page/inspector/StylesSidebarPane.js:
9218 (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
9219 Dispatch the "style property toggled" event.
9220 (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
9221 Dispatch the "style edited" event when the CSS text is restored.
9222 (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
9223 Dispatch the "style edited" event.
9224
92252008-08-21 Timothy Hatcher <timothy@apple.com>
9226
timothy@apple.com29c12d02008-08-21 20:12:47 +00009227 Make the Inspector's Metrics sidebar pane editable.
9228
9229 https://bugs.webkit.org/show_bug.cgi?id=17218
9230 rdar://problem/5732818
9231
9232 Reviewed by Kevin McCullough.
9233
9234 * page/inspector/ElementsPanel.js:
9235 (WebInspector.ElementsPanel): Add an event listener for
9236 the "metrics edited" event, so the Styles pane is updated.
9237 * page/inspector/MetricsSidebarPane.js:
9238 (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
9239 so future updates work. Add a double click event listener for the
9240 metric values to start editing.
9241 (WebInspector.MetricsSidebarPane.prototype.startEditing):
9242 Call WebInspector.startEditing with some context.
9243 (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
9244 (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
9245 Set the user input on the elements inline style. Fire the
9246 "metrics edited" event.
9247
sfalken@apple.com7e6e5392008-08-21 18:42:44 +000092482008-08-21 Steve Falkenburg <sfalken@apple.com>
9249
9250 Fix a race condition in Windows timer code.
9251 Timer function could end up being called with a 0 timer, leading to a Windows exception.
9252
9253 Don't post a timer message if one is already pending.
9254
9255 Reviewed by Ada Chan.
9256
9257 * platform/win/SharedTimerWin.cpp:
9258 (WebCore::TimerWindowWndProc):
9259 (WebCore::clearTimer):
9260 (WebCore::queueTimerProc):
9261 (WebCore::setSharedTimerFireTime):
9262
timothy@apple.com8d15bcf2008-08-21 16:33:17 +000092632008-08-21 Anthony Ricaud <rik24d@gmail.com>
9264
timothy@apple.com493212c72008-08-21 16:36:06 +00009265 After trying to add the expression, try again with quotes for
9266 easier edition.
9267
9268 https://bugs.webkit.org/show_bug.cgi?id=20466
9269
9270 Reviewed by Tim Hatcher.
9271
9272 * page/inspector/ObjectPropertiesSection.js: Added an
9273 evaluateExpression function.
9274
92752008-08-21 Anthony Ricaud <rik24d@gmail.com>
9276
timothy@apple.com8d15bcf2008-08-21 16:33:17 +00009277 Perform Inspector searches on search event to clear results when
9278 clicking the cross to empty it. Delete the lastQuery when the field
9279 is emptied in order to perform the search if exactly the same query
9280 is entered next.
9281
9282 https://bugs.webkit.org/show_bug.cgi?id=20462
9283
9284 Reviewed by Tim Hatcher.
9285
9286 * page/inspector/inspector.js:
9287
jmalonzo@webkit.orgdd470402008-08-21 11:22:51 +000092882008-08-21 Marco Barisione <marco.barisione@collabora.co.uk>
9289
9290 Reviewed by Mark Rowe.
9291
9292 http://bugs.webkit.org/show_bug.cgi?id=19656
9293 [SOUP] The gio code should call didFail() instead of
9294 didFinishLoading() in case of error
9295
9296 In case of error call didFail() instead of didReceiveResponse() and
9297 didFinishLoading().
9298
9299 * platform/network/soup/ResourceHandleSoup.cpp:
9300 (WebCore::networkErrorForFile):
9301 (WebCore::readCallback):
9302 (WebCore::openCallback):
9303 (WebCore::queryInfoCallback):
9304
mrowe@apple.com72a95b12008-08-21 04:01:51 +000093052008-08-20 Mark Rowe <mrowe@apple.com>
9306
mrowe@apple.com4e593f42008-08-21 06:52:42 +00009307 Reviewed by Jon Honeycutt.
9308
9309 Fix build failure.
9310
9311 * bridge/c/c_instance.cpp:
9312 (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
9313 as that is what NPEnumerationFunctionPtr is declared as accepting.
9314
93152008-08-20 Mark Rowe <mrowe@apple.com>
9316
mrowe@apple.com72a95b12008-08-21 04:01:51 +00009317 Reviewed by Dan Bernstein.
9318
9319 Build fix. Handle kCGInterpolationMedium in switch statements if it is available.
9320
9321 * platform/graphics/GraphicsContext.h:
9322 (WebCore::):
9323 * platform/graphics/cg/GraphicsContextCG.cpp:
9324 (WebCore::GraphicsContext::setImageInterpolationQuality):
9325 (WebCore::GraphicsContext::imageInterpolationQuality):
9326
mitz@apple.comaa938792008-08-21 00:33:29 +000093272008-08-20 Dan Bernstein <mitz@apple.com>
9328
9329 Rubber-stamped by John Sullivan.
9330
9331 - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
9332 rename related methods and variables accordingly.
9333
9334 * WebCore.base.exp:
9335 * page/FrameView.cpp:
9336 (WebCore::FrameViewPrivate::FrameViewPrivate):
9337 (WebCore::FrameView::shouldUpdateWhileOffscreen):
9338 (WebCore::FrameView::setShouldUpdateWhileOffscreen):
9339 * page/FrameView.h:
9340 * platform/ScrollView.h:
9341 * platform/mac/ScrollViewMac.mm:
9342 (WebCore::ScrollView::updateContents):
9343
beidson@apple.com2ace6b12008-08-21 00:13:12 +000093442008-08-20 Brady Eidson <beidson@apple.com>
9345
9346 Reviewed by Mitzpettel
9347
9348 <rdar://problem/6163636> - Many images broken in Mail
9349
9350 This can be traced back to the preload scanner. With that change, CachedResources are created a lot
9351 sooner than before and confuse the WebArchive machinery.
9352
9353 When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore
9354 such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate
9355 machinery and nothing is known about where the data will eventually come from.
9356
9357 * loader/DocumentLoader.cpp:
9358 (WebCore::DocumentLoader::subresource): Ignore a CachedResource if its preloadResult is
9359 CachedResource::PreloadReferenced.
9360
zecke@webkit.orga8fa0e12008-08-20 22:50:39 +000093612008-08-20 Holger Hans Peter Freyther <zecke@selfish.org>
9362
9363 Unreviewed compile fix
9364
9365 Catch up with the JSValue::type elimination.
9366
9367 * bridge/qt/qt_instance.cpp:
9368 (KJS::Bindings::QtRuntimeObjectImp::construct):
9369 (KJS::Bindings::QtInstance::defaultValue):
9370 * bridge/qt/qt_runtime.cpp:
9371 (KJS::Bindings::QtRuntimeConnectionMethod::call):
9372
mrowe@apple.com2d74ec92008-08-20 22:15:53 +000093732008-08-20 Chris Teague <chris.teague@gmail.com>
9374
9375 Reviewed by Mark Rowe.
9376
9377 Fix https://bugs.webkit.org/show_bug.cgi?id=20449
9378 Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
9379
9380 * ChangeLog:
9381 * loader/FrameLoader.cpp:
9382 (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
9383
simon.fraser@apple.combe1d24c2008-08-20 21:57:22 +000093842008-08-20 Simon Fraser <simon.fraser@apple.com>
9385
9386 Reviewed by Dave Hyatt
9387
9388 getComputedStyle() for webkitTransform should return a transform
9389 that does not have the transform origin baked into it.
9390 https://bugs.webkit.org/show_bug.cgi?id=20464
9391
9392 Test: fast/css/getComputedStyle-transform.html
9393
9394 * css/CSSComputedStyleDeclaration.cpp:
9395 (WebCore::computedTransform):
9396 * rendering/style/RenderStyle.cpp:
9397 (WebCore::RenderStyle::applyTransform):
9398 * rendering/style/RenderStyle.h:
9399
andersca@apple.com021ce772008-08-20 21:04:12 +000094002008-08-20 Josh Aas <joshmoz@gmail.com>
9401
9402 Reviewed and landed by Anders.
9403
9404 <rdar://problem/6163636>
9405 rename NPCocoaEvent's "event" struct to "data" (20446)
9406
9407 * bridge/npapi.h:
9408 (_NPCocoaEvent::):
9409
bdakin@apple.com699d13d2008-08-20 20:46:28 +000094102008-08-20 Beth Dakin <bdakin@apple.com>
9411
darin@apple.com07c80c62008-09-05 18:15:43 +00009412 Reviewed by Darin Adler.
bdakin@apple.com699d13d2008-08-20 20:46:28 +00009413
9414 Fix for <rdar://problem/6145626>
9415 This patch fixes a number of remaining problems getting
9416 disconnected frames to work correctly with markAllMatchesForText()
9417 and findString(). Details inline.
9418
9419 This was a static helper function in Frame, but this patch requires
9420 the same functionality in Editor, so I just added it as a function
9421 on Node.
9422 * dom/Node.cpp:
9423 (WebCore::Node::isInShadowTree):
9424 * dom/Node.h:
9425
9426 * editing/Editor.cpp:
9427 (WebCore::Editor::insideVisibleArea): Returns false if
9428 excludeFromTextSearch() is true.
9429
9430 In a normal (non-disconnected) frame, findString returns a range of
9431 the document node if the text is not found in the frame. I changed
9432 firstVisibleRange and lastVisibleRange to match that behavior when
9433 the text is not found
9434 (WebCore::Editor::firstVisibleRange):
9435 (WebCore::Editor::lastVisibleRange):
9436
9437 Here are the bulk of the changes in the patch. A lot of text was
9438 not being found in disconnected frames because I failed to account
9439 for all of the possible problems associated with shadow trees. That
9440 is fixed here.
9441 (WebCore::Editor::nextVisibleRange):
9442 * editing/Editor.h:
9443
9444 excludeFromTextSearch() is new. It allows a WebKit client to mark a
9445 frame as not-text-searchable through SPI.
9446 * WebCore.base.exp:
9447 * page/Frame.cpp:
9448 (WebCore::Frame::excludeFromTextSearch):
9449 (WebCore::Frame::setExcludeFromTextSearch):
9450 (WebCore::FramePrivate::FramePrivate):
9451 * page/Frame.h:
9452 * page/FramePrivate.h:
9453
9454 (WebCore::Frame::findString):
9455 (WebCore::Frame::markAllMatchesForText): I kept running into an
9456 assertion failure in paining code because of the forced paint on
9457 empty visible rects.
9458
timothy@apple.com301befc2008-08-20 19:10:54 +000094592008-08-20 Timothy Hatcher <timothy@apple.com>
9460
9461 Adds a positon box to the Inspector's Metrics sidebar
9462 pane. When an element is not statically positioned, there
9463 is now a position box that show top, right, bottom and
9464 left computed values.
9465
9466 Reviewed by Kevin McCullough.
9467
9468 * English.lproj/localizedStrings.js: Updated the strings.
9469 * page/inspector/MetricsSidebarPane.js:
9470 (WebInspector.MetricsSidebarPane.prototype.update):
9471 Renamed the boxPartValue function to createBoxPartElement
9472 and made it create the entire element. Made it understand
9473 how to get position style properties. Don't use the figure dash
9474 when 0px is used for positions, since the 0 is meaningful there.
9475 Instead use the figure dash when a position is auto.
9476 * page/inspector/inspector.css: Added a new rule for position.
9477
mrowe@apple.com37686d42008-09-04 00:10:39 +000094782008-08-20 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com2a5ecc02008-08-20 18:34:56 +00009479
9480 Reviewed by Beth Dakin
9481
9482 Qt build fix
9483
9484 * WebCore.pro:
9485
mitz@apple.comedaa9042008-08-20 18:28:07 +000094862008-08-20 Dan Bernstein <mitz@apple.com>
9487
9488 Reviewed by Anders Carlsson.
9489
9490 - avoid using a deprecated NSScroller method on Leopard
9491
9492 * platform/mac/PlatformScrollBarMac.mm:
9493 (WebCore::PlatformScrollbar::updateThumbPosition):
9494 (WebCore::PlatformScrollbar::updateThumbProportion):
9495
jmalonzo@webkit.org6e0a3082008-08-20 11:40:31 +000094962008-08-20 Jan Michael Alonzo <jmalonzo@webkit.org>
9497
9498 Reviewed by Oliver Hunt.
9499
9500 Gtk build fix
9501
9502 * GNUmakefile.am:
9503 * page/AccessibilityTable.cpp: Change nil to 0
9504 (WebCore::AccessibilityTable::cellForColumnAndRow):
9505
ap@webkit.org01aff702008-08-20 07:23:06 +000095062008-08-19 Alexey Proskuryakov <ap@webkit.org>
9507
9508 Reviewed by Geoff Garen.
9509
9510 Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
9511
9512 * ForwardingHeaders/kjs/JSLock.h: Added.
9513 * WebCore.vcproj/WebCore.vcproj:
9514 * bindings/js/GCController.cpp:
9515 (WebCore::collect):
9516 (WebCore::GCController::gcTimerFired):
9517 (WebCore::GCController::garbageCollectNow):
9518 * bindings/js/JSCustomSQLStatementCallback.cpp:
9519 (WebCore::JSCustomSQLStatementCallback::handleEvent):
9520 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
9521 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
9522 * bindings/js/JSCustomSQLTransactionCallback.cpp:
9523 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
9524 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
9525 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
9526 * bindings/js/JSCustomVoidCallback.cpp:
9527 (WebCore::JSCustomVoidCallback::handleEvent):
9528 * bindings/js/JSCustomXPathNSResolver.cpp:
9529 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
9530 * bindings/js/JSDOMWindowBase.cpp:
9531 (WebCore::DOMWindowTimer::~DOMWindowTimer):
9532 (WebCore::JSDOMWindowBase::clear):
9533 (WebCore::JSDOMWindowBase::timerFired):
9534 * bindings/js/JSEventCustom.cpp:
9535 (WebCore::toJS):
9536 * bindings/js/JSEventListener.cpp:
9537 (WebCore::JSAbstractEventListener::handleEvent):
9538 * bindings/js/JSNSResolver.cpp:
9539 (WebCore::JSNSResolver::lookupNamespaceURI):
9540 * bindings/js/JSNodeFilterCondition.cpp:
9541 (WebCore::JSNodeFilterCondition::acceptNode):
9542 * bindings/js/ScheduledAction.cpp:
9543 (WebCore::ScheduledAction::execute):
9544 * bindings/js/ScriptController.cpp:
9545 (WebCore::ScriptController::evaluate):
9546 (WebCore::ScriptController::clearWindowShell):
9547 (WebCore::ScriptController::createHTMLEventHandler):
9548 (WebCore::ScriptController::createSVGEventHandler):
9549 (WebCore::ScriptController::initScript):
9550 (WebCore::ScriptController::updateDocument):
9551 (WebCore::ScriptController::bindingRootObject):
9552 (WebCore::ScriptController::windowScriptNPObject):
9553 (WebCore::ScriptController::createScriptObjectForPluginElement):
9554 (WebCore::ScriptController::clearScriptObjects):
9555 * bindings/js/ScriptControllerMac.mm:
9556 (WebCore::ScriptController::windowScriptObject):
9557 * bindings/objc/WebScriptObject.mm:
9558 (_didExecute):
9559 (-[WebScriptObject callWebScriptMethod:withArguments:]):
9560 (-[WebScriptObject evaluateWebScript:]):
9561 (-[WebScriptObject setValue:forKey:]):
9562 (-[WebScriptObject valueForKey:]):
9563 (-[WebScriptObject removeWebScriptKey:]):
9564 (-[WebScriptObject stringRepresentation]):
9565 (-[WebScriptObject webScriptValueAtIndex:]):
9566 (-[WebScriptObject setWebScriptValueAtIndex:value:]):
9567 (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
9568 * bridge/NP_jsobject.cpp:
9569 (_NPN_InvokeDefault):
9570 (_NPN_Invoke):
9571 (_NPN_Evaluate):
9572 (_NPN_GetProperty):
9573 (_NPN_SetProperty):
9574 (_NPN_RemoveProperty):
9575 (_NPN_HasProperty):
9576 (_NPN_HasMethod):
9577 (_NPN_Enumerate):
9578 * bridge/c/c_class.cpp:
9579 (KJS::Bindings::CClass::~CClass):
9580 (KJS::Bindings::CClass::methodsNamed):
9581 (KJS::Bindings::CClass::fieldNamed):
9582 * bridge/c/c_instance.cpp:
9583 (KJS::Bindings::CInstance::invokeMethod):
9584 (KJS::Bindings::CInstance::invokeDefaultMethod):
9585 (KJS::Bindings::CInstance::getPropertyNames):
9586 * bridge/c/c_runtime.cpp:
9587 (KJS::Bindings::CField::valueFromInstance):
9588 (KJS::Bindings::CField::setValueToInstance):
9589 * bridge/c/c_utility.cpp:
9590 (KJS::Bindings::convertValueToNPVariant):
9591 (KJS::Bindings::convertNPVariantToValue):
9592 * bridge/jni/jni_class.cpp:
9593 (JavaClass::JavaClass):
9594 (JavaClass::~JavaClass):
9595 * bridge/jni/jni_instance.cpp:
9596 (JavaInstance::stringValue):
9597 * bridge/jni/jni_jsobject.mm:
9598 (JavaJSObject::call):
9599 (JavaJSObject::eval):
9600 (JavaJSObject::getMember):
9601 (JavaJSObject::setMember):
9602 (JavaJSObject::removeMember):
9603 (JavaJSObject::getSlot):
9604 (JavaJSObject::setSlot):
9605 (JavaJSObject::toString):
9606 (JavaJSObject::convertValueToJObject):
9607 (JavaJSObject::convertJObjectToValue):
9608 * bridge/jni/jni_objc.mm:
9609 (KJS::Bindings::dispatchJNICall):
9610 * bridge/jni/jni_runtime.cpp:
9611 (appendClassName):
9612 (JavaMethod::signature):
9613 * bridge/jni/jni_runtime.h:
9614 (KJS::Bindings::JavaString::JavaString):
9615 (KJS::Bindings::JavaString::_commonInit):
9616 (KJS::Bindings::JavaString::~JavaString):
9617 (KJS::Bindings::JavaString::UTF8String):
9618 * bridge/jni/jni_utility.cpp:
9619 (KJS::Bindings::convertValueToJValue):
9620 * bridge/npruntime.cpp:
9621 (_NPN_GetStringIdentifier):
9622 * bridge/objc/objc_instance.mm:
9623 (ObjcInstance::moveGlobalExceptionToExecState):
9624 (ObjcInstance::invokeMethod):
9625 (ObjcInstance::invokeDefaultMethod):
9626 (ObjcInstance::setValueOfUndefinedField):
9627 (ObjcInstance::getValueOfUndefinedField):
9628 * bridge/objc/objc_runtime.mm:
9629 (ObjcField::valueFromInstance):
9630 (ObjcField::setValueToInstance):
9631 * bridge/objc/objc_utility.mm:
9632 (KJS::Bindings::convertValueToObjcValue):
9633 (KJS::Bindings::convertNSStringToString):
9634 (KJS::Bindings::convertObjcValueToValue):
9635 * bridge/qt/qt_instance.cpp:
9636 (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
9637 (KJS::Bindings::QtInstance::~QtInstance):
9638 (KJS::Bindings::QtInstance::getQtInstance):
9639 (KJS::Bindings::QtInstance::getRuntimeObject):
9640 * bridge/qt/qt_runtime.cpp:
9641 (KJS::Bindings::convertValueToQVariant):
9642 (KJS::Bindings::convertQVariantToValue):
9643 (KJS::Bindings::QtRuntimeMetaMethod::call):
9644 (KJS::Bindings::QtRuntimeConnectionMethod::call):
9645 (KJS::Bindings::QtConnectionObject::QtConnectionObject):
9646 (KJS::Bindings::QtConnectionObject::execute):
9647 * bridge/runtime.cpp:
9648 (KJS::Bindings::Instance::createRuntimeObject):
9649 * bridge/testbindings.cpp:
9650 (main):
9651 * bridge/testbindings.mm:
9652 (main):
9653 * bridge/testqtbindings.cpp:
9654 (main):
9655 * dom/Document.cpp:
9656 (WebCore::Document::~Document):
9657 * dom/Node.cpp:
9658 (WebCore::Node::setDocument):
9659 * history/CachedPage.cpp:
9660 (WebCore::CachedPage::CachedPage):
9661 (WebCore::CachedPage::restore):
9662 (WebCore::CachedPage::clear):
9663 * loader/FrameLoader.cpp:
9664 (WebCore::getString):
9665 * page/InspectorController.cpp:
9666 (WebCore::ConsoleMessage::ConsoleMessage):
9667 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
9668 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
9669 (WebCore::getResourceDocumentNode):
9670 (WebCore::search):
9671 (WebCore::inspectedWindow):
9672 (WebCore::wrapCallback):
9673 (WebCore::currentCallFrame):
9674 (WebCore::profiles):
9675 (WebCore::InspectorController::focusNode):
9676 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
9677 (WebCore::InspectorController::addDatabaseScriptResource):
9678 (WebCore::InspectorController::addScriptProfile):
9679 * page/JavaScriptCallFrame.cpp:
9680 (WebCore::JavaScriptCallFrame::evaluate):
9681 * page/JavaScriptProfileNode.cpp:
9682 (WebCore::getTotalTime):
9683 (WebCore::getSelfTime):
9684 (WebCore::getTotalPercent):
9685 (WebCore::getSelfPercent):
9686 (WebCore::getNumberOfCalls):
9687 (WebCore::getChildren):
9688 (WebCore::getVisible):
9689 * page/Page.cpp:
9690 * page/mac/FrameMac.mm:
9691 * plugins/PluginView.cpp:
9692 (WebCore::PluginView::start):
9693 (WebCore::getString):
9694 (WebCore::PluginView::performRequest):
9695 (WebCore::PluginView::bindingInstance):
9696 * plugins/gtk/PluginViewGtk.cpp:
9697 (WebCore::PluginView::paint):
9698 (WebCore::PluginView::handleKeyboardEvent):
9699 (WebCore::PluginView::handleMouseEvent):
9700 (WebCore::PluginView::setNPWindowRect):
9701 (WebCore::PluginView::stop):
9702 (WebCore::PluginView::init):
9703 * plugins/qt/PluginViewQt.cpp:
9704 (WebCore::PluginView::setNPWindowRect):
9705 (WebCore::PluginView::stop):
9706 (WebCore::PluginView::init):
9707 * plugins/win/PluginViewWin.cpp:
9708 (WebCore::PluginView::dispatchNPEvent):
9709 (WebCore::PluginView::handleKeyboardEvent):
9710 (WebCore::PluginView::handleMouseEvent):
9711 (WebCore::PluginView::setNPWindowRect):
9712 (WebCore::PluginView::stop):
9713 * xml/XMLHttpRequest.cpp:
9714 (WebCore::XMLHttpRequest::clearResponse):
9715 (WebCore::XMLHttpRequest::didFinishLoading):
9716 (WebCore::XMLHttpRequest::didReceiveData):
9717
eric@webkit.orgbac93762008-08-19 23:33:07 +000097182008-08-19 Eric Seidel <eric@webkit.org>
9719
9720 Reviewed by Geoff Garen.
9721
9722 Add the beginnings of Skia graphics support to WebCore
9723 as I try to begin the long process of un-forking the changes
9724 needed to WebCore to make Andriod's WebCore build.
9725
9726 I'll follow this up with actual *Skia.cpp files in a separate patch.
9727
9728 * platform/graphics/AffineTransform.h:
9729 * platform/graphics/FloatPoint.h:
9730 * platform/graphics/FloatRect.h:
9731 * platform/graphics/Gradient.h:
9732 * platform/graphics/GraphicsContext.h:
9733 * platform/graphics/Image.h:
9734 * platform/graphics/ImageBuffer.h:
9735 * platform/graphics/ImageSource.h:
9736 * platform/graphics/IntPoint.h:
9737 * platform/graphics/IntRect.h:
9738 * platform/graphics/Path.h:
9739 * platform/graphics/Pattern.h:
9740 * svg/graphics/SVGPaintServerPattern.h:
9741 * svg/graphics/SVGPaintServerSolid.h:
9742
sfalken@apple.com3f69b332008-08-19 22:34:37 +000097432008-08-19 Steve Falkenburg <sfalken@apple.com>
9744
sfalken@apple.com45d22802008-08-19 22:46:31 +00009745 Fix Windows build more.
9746
9747 * WebCore.vcproj/WebCore.vcproj:
9748
97492008-08-19 Steve Falkenburg <sfalken@apple.com>
9750
sfalken@apple.com3f69b332008-08-19 22:34:37 +00009751 Fix Windows build.
9752
9753 * page/AccessibilityRenderObject.cpp:
9754 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
9755
mrowe@apple.com37686d42008-09-04 00:10:39 +000097562008-08-19 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com7c7b5f32008-08-19 22:05:37 +00009757
9758 Reviewed by Beth Dakin.
9759
9760 <rdar://problem/4003764> Expose tables as AXTables
9761
9762 Tests: accessibility/table-attributes.html
9763 accessibility/table-cell-spans.html
9764 accessibility/table-cells.html
9765 accessibility/table-detection.html
9766 accessibility/table-sections.html
9767 accessibility/table-with-rules.html
9768
9769 * WebCore.xcodeproj/project.pbxproj:
9770 * page/AXObjectCache.cpp:
9771 (WebCore::AXObjectCache::get):
9772 * page/AccessibilityObject.h:
9773 (WebCore::):
9774 (WebCore::AccessibilityObject::isDataTable):
9775 (WebCore::AccessibilityObject::isTableRow):
9776 (WebCore::AccessibilityObject::isTableColumn):
9777 (WebCore::AccessibilityObject::isTableCell):
9778 * page/AccessibilityRenderObject.cpp:
9779 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
9780 * page/AccessibilityTable.cpp: Added.
9781 (WebCore::AccessibilityTable::AccessibilityTable):
9782 (WebCore::AccessibilityTable::~AccessibilityTable):
9783 (WebCore::AccessibilityTable::create):
9784 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
9785 (WebCore::AccessibilityTable::clearChildren):
9786 (WebCore::AccessibilityTable::addChildren):
9787 (WebCore::AccessibilityTable::headerContainer):
9788 (WebCore::AccessibilityTable::columns):
9789 (WebCore::AccessibilityTable::rows):
9790 (WebCore::AccessibilityTable::rowHeaders):
9791 (WebCore::AccessibilityTable::columnHeaders):
9792 (WebCore::AccessibilityTable::cells):
9793 (WebCore::AccessibilityTable::columnCount):
9794 (WebCore::AccessibilityTable::rowCount):
9795 (WebCore::AccessibilityTable::cellForColumnAndRow):
9796 (WebCore::AccessibilityTable::roleValue):
9797 (WebCore::AccessibilityTable::accessibilityIsIgnored):
9798 (WebCore::AccessibilityTable::title):
9799 (WebCore::AccessibilityTable::isDataTable):
9800 * page/AccessibilityTable.h: Added.
9801 * page/AccessibilityTableCell.cpp: Added.
9802 (WebCore::AccessibilityTableCell::AccessibilityTableCell):
9803 (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
9804 (WebCore::AccessibilityTableCell::create):
9805 (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
9806 (WebCore::AccessibilityTableCell::rowIndexRange):
9807 (WebCore::AccessibilityTableCell::columnIndexRange):
9808 * page/AccessibilityTableCell.h: Added.
9809 (WebCore::AccessibilityTableCell::isTableCell):
9810 (WebCore::AccessibilityTableCell::roleValue):
9811 * page/AccessibilityTableColumn.cpp: Added.
9812 (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
9813 (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
9814 (WebCore::AccessibilityTableColumn::create):
9815 (WebCore::AccessibilityTableColumn::setParentTable):
9816 (WebCore::AccessibilityTableColumn::elementRect):
9817 (WebCore::AccessibilityTableColumn::size):
9818 (WebCore::AccessibilityTableColumn::children):
9819 (WebCore::AccessibilityTableColumn::headerObject):
9820 (WebCore::AccessibilityTableColumn::headerObjectForSection):
9821 (WebCore::AccessibilityTableColumn::addChildren):
9822 * page/AccessibilityTableColumn.h: Added.
9823 (WebCore::AccessibilityTableColumn::parentObject):
9824 (WebCore::AccessibilityTableColumn::roleValue):
9825 (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
9826 (WebCore::AccessibilityTableColumn::isTableColumn):
9827 (WebCore::AccessibilityTableColumn::setColumnIndex):
9828 (WebCore::AccessibilityTableColumn::columnIndex):
9829 * page/AccessibilityTableHeaderContainer.cpp: Added.
9830 (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
9831 (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
9832 (WebCore::AccessibilityTableHeaderContainer::create):
9833 (WebCore::AccessibilityTableHeaderContainer::children):
9834 (WebCore::AccessibilityTableHeaderContainer::elementRect):
9835 (WebCore::AccessibilityTableHeaderContainer::size):
9836 (WebCore::AccessibilityTableHeaderContainer::addChildren):
9837 * page/AccessibilityTableHeaderContainer.h: Added.
9838 (WebCore::AccessibilityTableHeaderContainer::roleValue):
9839 (WebCore::AccessibilityTableHeaderContainer::setParentTable):
9840 (WebCore::AccessibilityTableHeaderContainer::parentObject):
9841 (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
9842 * page/AccessibilityTableRow.cpp: Added.
9843 (WebCore::AccessibilityTableRow::AccessibilityTableRow):
9844 (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
9845 (WebCore::AccessibilityTableRow::create):
9846 (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
9847 (WebCore::AccessibilityTableRow::headerObject):
9848 * page/AccessibilityTableRow.h: Added.
9849 (WebCore::AccessibilityTableRow::isTableRow):
9850 (WebCore::AccessibilityTableRow::roleValue):
9851 (WebCore::AccessibilityTableRow::setRowIndex):
9852 (WebCore::AccessibilityTableRow::rowIndex):
9853 * page/mac/AccessibilityObjectWrapper.mm:
9854 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
9855 (RoleEntry::):
9856 (-[AccessibilityObjectWrapper roleDescription]):
9857 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
9858 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
9859 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
9860
sfalken@apple.comb83d4692008-08-19 18:39:44 +000098612008-08-19 Steve Falkenburg <sfalken@apple.com>
9862
9863 Build fix.
9864 Add buildfailed support to stop builds early (preventing inaccurate error messages).
9865 Add missing post-build rule to Release.
9866
9867 * WebCore.vcproj/QTMovieWin.vcproj:
9868
timothy@apple.comda3aa632008-08-19 18:33:02 +000098692008-08-19 Keishi Hattori <casey.hattori@gmail.com>
9870
timothy@apple.com7d08c322008-08-19 18:33:27 +00009871 Added support for console.count in the inspector.
9872
9873 Reviewed by Geoff Garen.
9874
9875 * page/Console.cpp:
9876 (WebCore::Console::count):
9877 * page/Console.h:
9878 * page/Console.idl: Added console.count.
9879 * page/InspectorController.cpp:
9880 (WebCore::InspectorController::didCommitLoad): Clears m_counts.
9881 (WebCore::InspectorController::count): Updates the count number
9882 sing "title@source:line" as the identifier, and adds a
9883 message to the console.
9884 * page/InspectorController.h: Added m_counts.
9885
98862008-08-19 Keishi Hattori <casey.hattori@gmail.com>
9887
timothy@apple.comda3aa632008-08-19 18:33:02 +00009888 Clear console.time timers when changing page.
9889
9890 Reviewed by Geoff Garen.
9891
9892 * page/InspectorController.cpp:
9893 (WebCore::InspectorController::didCommitLoad):
9894
adele@apple.com1f2d7e02008-08-19 17:55:58 +000098952008-08-19 Eric Carlson <eric.carlson@apple.com>
9896
9897 Reviewed by Adele.
9898
9899 Fix for <rdar://problem/6154695> Full-page movies flicker while playing
9900 https://bugs.webkit.org/show_bug.cgi?id=20404
9901
9902 Ignore setVisible() when visibility doesn't change.
9903
9904 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
9905 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
9906 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
9907 (WebCore::MediaPlayerPrivate::setVisible):
9908
timothy@apple.com9d9821a2008-08-19 17:00:26 +000099092008-08-19 Timothy Hatcher <timothy@apple.com>
9910
timothy@apple.come058a792008-08-19 17:01:12 +00009911 Fixes a bug in the Profile view where switching sort order, then
9912 switching from heavy to tree mode would show the tree in the
9913 previous sort order.
9914
9915 https://bugs.webkit.org/show_bug.cgi?id=20441
9916
9917 Reviewed by Kevin McCullough.
9918
9919 * page/inspector/ProfileView.js:
9920 (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
9921 on the next profile before assigning it to this.profile.
9922 (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
9923 (WebInspector.ProfileView.prototype._sortProfile): Moves from
9924 _sortData and takes a profile argument. If the profile passed in
9925 matches the this.profile, then call refresh.
9926
99272008-08-18 Timothy Hatcher <timothy@apple.com>
9928
timothy@apple.come525e402008-08-19 17:01:00 +00009929 Changed the default sort order now that heavy view is the default.
9930 Also fixes a bug where the heavy profile was not sorted at first.
9931
9932 https://bugs.webkit.org/show_bug.cgi?id=20440
9933
9934 Reviewed by Kevin McCullough.
9935
9936 * page/inspector/ProfileView.js:
9937 (WebInspector.ProfileView): Changed the default sort column. Also assign
9938 heavyProfile to profile, so the sortSelfTimeDescending call happens
9939 on the heavy profile before assigning to this.profile.
9940
99412008-08-18 Timothy Hatcher <timothy@apple.com>
9942
timothy@apple.comc9287f32008-08-19 17:00:36 +00009943 Add support for editing DOM properties and scope variables by double
9944 clicking a property to enter edit mode.
9945
9946 https://bugs.webkit.org/show_bug.cgi?id=20415
9947
9948 Reviewed by Kevin McCullough.
9949
9950 * page/inspector/ObjectPropertiesSection.js:
9951 (WebInspector.ObjectPropertiesSection): Set editable to true by default.
9952 (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
9953 Factored out code into update, and calls update.
9954 (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
9955 Call removeChildren since this method can be called multiple times now.
9956 (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
9957 gets made later in onattach.
9958 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
9959 if shouldRefreshChildren is true. Call removeChildren since this method can be
9960 called multiple times now.
9961 (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
9962 (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
9963 (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
9964 this element (code moved from the constructor.)
9965 (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
9966 sibling property elements.
9967 (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
9968 WebInspector.startEditing after rememebring some context.
9969 (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
9970 for the list element, since it might have scrolled during editing.
9971 (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
9972 then restore the state from the context. Then call update to restore the title.
9973 (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
9974 if the user input and the previous input are the same. Call editingEnded, then call applyExpression
9975 to commit the user input.
9976 (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
9977 and stores the result on the object for the property name of this element. If the expression is
9978 empty, delete the property and remove the tree element.
9979 * page/inspector/ScopeChainSidebarPane.js:
9980 (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
9981 property on each ObjectPropertiesSection.
9982 (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
9983 since it is now implemented.
9984 * page/inspector/ScriptsPanel.js:
9985 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
9986 that defaults to true if omitted. It specifies whether to call update on the scope chain.
9987 * page/inspector/inspector.css: New styles.
9988 * page/inspector/treeoutline.js:
9989 (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
9990 change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
9991
99922008-08-18 Timothy Hatcher <timothy@apple.com>
9993
timothy@apple.com9d9821a2008-08-19 17:00:26 +00009994 Surround the expression to be evaluated in parenthesis so the
9995 result of the eval is the result of the whole expression not
9996 the last potential sub-expression. So evaluating {x: 123}
9997 will show the Object not 123.
9998
9999 https://bugs.webkit.org/show_bug.cgi?id=20428
10000
10001 Reviewed by Kevin McCullough.
10002
10003 * page/inspector/Console.js:
10004 (Console.prototype._evalInInspectedWindow): Add parenthesis
10005 around the expression. And add couple comments.
10006
kmccullough@apple.come8ac2f32008-08-19 16:38:06 +0000100072008-08-19 Kevin McCullough <kmccullough@apple.com>
10008
10009 Reviewed by Geoff.
10010
10011 -Implement a page() function to extract a common code pattern.
10012
10013 * WebCore.xcodeproj/project.pbxproj:
10014 * page/Console.cpp:
10015 (WebCore::Console::addMessage):
10016 (WebCore::Console::error):
10017 (WebCore::Console::info):
10018 (WebCore::Console::log):
10019 (WebCore::Console::dir):
10020 (WebCore::Console::assertCondition):
10021 (WebCore::Console::time):
10022 (WebCore::Console::timeEnd):
10023 (WebCore::Console::group):
10024 (WebCore::Console::groupEnd):
10025 (WebCore::Console::finishedProfiling):
10026 (WebCore::Console::warn):
10027 (WebCore::Console::framePage):
10028 * page/Console.h:
10029
darin@apple.com349e1eb2008-08-19 04:39:04 +0000100302008-08-12 Darin Adler <darin@apple.com>
10031
10032 Reviewed by Geoff.
10033
10034 - eliminate JSValue::type()
10035
10036 * bridge/c/c_instance.cpp:
10037 (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
10038 argument instead of JSType argument. Removed unneeded code to handle
10039 boolean, since that's never passed.
10040 * bridge/c/c_instance.h: Ditto.
10041
10042 * bridge/c/c_utility.cpp:
10043 (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
10044 instead of JSValue::type(). Removed unneeded code to handle
10045 "unspecified".
10046
10047 * bridge/jni/jni_instance.cpp:
10048 (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
10049 instead of JSType argument. Removed unneeded code to handle boolean.
10050 * bridge/jni/jni_instance.h: Ditto.
10051
10052 * bridge/jni/jni_jsobject.mm:
10053 (JavaJSObject::convertValueToJObject): Use JSValue::is functions
10054 instead of JSValue::type().
10055
10056 * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
10057 instead of JSType argument. Removed unused argument.
10058 * bridge/objc/objc_instance.mm:
10059 (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
10060 (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
10061 instead of JSType argument. Removed unneeded code to handle boolean
10062 and another dead code path for unknown types.
10063
10064 * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
10065 instead of JSType argument. Removed override of type() that caused
10066 the fallback object to return "UndefinedType" when there is no
10067 invokeUndefinedMethodFromWebScript:withArguments: method defined.
10068 That didn't accomplish much, since most checks for undefined don't
10069 ever call type().
10070 * bridge/objc/objc_runtime.mm:
10071 (ObjcFallbackObjectImp::defaultValue): Ditto.
10072
10073 * bridge/qt/qt_instance.cpp:
10074 (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
10075 argument instead of JSType argument. Removed unneeded code to handle
10076 boolean.
10077 * bridge/qt/qt_instance.h: Ditto.
10078
10079 * bridge/runtime.h:
10080 (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
10081 unsed argument.
10082 * bridge/runtime_object.cpp:
10083 (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
10084 argument instead of JSType argument.
10085 * bridge/runtime_object.h: Ditto.
10086
britto@apple.comaf7f8382008-08-19 00:42:13 +0000100872008-08-18 Maxime Britto <britto@apple.com>
10088
10089 Reviewed by Adele.
10090
10091 <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
10092 Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
10093 We shouldn't be able to create another window while we are in pan scrolling.
10094 Other browsers behaviors :
10095 FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
10096 IE7 : Keys are not disabled but stops immediately the panning.
10097 This patch matches FF3 behavior by disabling every key but the esc key.
10098
10099 * page/EventHandler.cpp:
10100 (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
10101 (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
10102
mitz@apple.com12404d82008-08-19 00:20:38 +0000101032008-08-18 Dan Bernstein <mitz@apple.com>
10104
10105 Reviewed by Dave Hyatt.
10106
10107 - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
10108
10109 Test: fast/replaced/max-width-percent.html
10110
10111 Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
10112 When false, max-width is not factored into the
10113 calculation.
10114 Changed RenderReplaced and subclasses' calcPrefWidths() to call
10115 calcReplacedWidth(false) and then apply max-width only if it has a
10116 fixed, positive value.
10117
10118 * rendering/RenderBox.cpp:
10119 (WebCore::RenderBox::calcReplacedWidth):
10120 * rendering/RenderBox.h:
10121 * rendering/RenderImage.cpp:
10122 (WebCore::RenderImage::calcReplacedWidth):
10123 (WebCore::RenderImage::calcPrefWidths):
10124 * rendering/RenderImage.h:
10125 * rendering/RenderReplaced.cpp:
10126 (WebCore::RenderReplaced::calcPrefWidths):
10127 * rendering/RenderSVGRoot.cpp:
10128 (WebCore::RenderSVGRoot::calcPrefWidths):
10129 * rendering/RenderVideo.cpp:
10130 (WebCore::RenderVideo::calcReplacedWidth):
10131 (WebCore::RenderVideo::calcPrefWidths):
10132 * rendering/RenderVideo.h:
10133
mrowe@apple.comced88732008-08-18 22:47:28 +0000101342008-08-18 Daniel Macks <dmacks@netspace.org>
10135
10136 Reviewed by Mark Rowe.
10137
10138 https://bugs.webkit.org/show_bug.cgi?id=20410
10139 More portable/self-documenting replacement for SIZE_MAX.
10140
10141 * platform/network/curl/FormDataStreamCurl.cpp:
10142 (WebCore::FormDataStream::read):
10143
101442008-08-18 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com6040db32008-08-18 22:11:10 +000010145
10146 Reviewed by Dave Hyatt
10147
10148 Need to make sure we have an Animation in the AnimationList
10149 before setting the initial value.
10150 https://bugs.webkit.org/show_bug.cgi?id=20408
10151
10152 Test: fast/css/transition_shorthand_parsing.html
10153
10154 * css/CSSStyleSelector.cpp:
10155
kmccullough@apple.com64cb2fd2008-08-18 19:55:35 +0000101562008-08-18 Kevin McCullough <kmccullough@apple.com>
10157
kmccullough@apple.com707bd362008-08-18 20:21:57 +000010158 Reviewed by Tim.
10159
10160 <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
10161 is another profile.
10162
10163 * page/inspector/ProfilesPanel.js:
10164
101652008-08-18 Kevin McCullough <kmccullough@apple.com>
10166
kmccullough@apple.com64cb2fd2008-08-18 19:55:35 +000010167 Reviewed by Geoff.
10168
10169 <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
10170 all console messages
10171
10172 * page/inspector/Console.js:
10173
jmalonzo@webkit.org5d1e0482008-08-18 11:20:11 +0000101742008-08-18 Dirk Schulze <vbs85@gmx.de>
10175
10176 Reviewed by Eric Seidel.
10177
10178 Fixed Canvas for Cairo. Stroke and fill colors didn't work after
10179 the canvas clean up.
10180
10181 https://bugs.webkit.org/show_bug.cgi?id=20405
10182
10183 * html/CanvasRenderingContext2D.cpp:
10184 (WebCore::CanvasRenderingContext2D::fill):
10185 (WebCore::CanvasRenderingContext2D::stroke):
10186 (WebCore::CanvasRenderingContext2D::fillRect):
10187
timothy@apple.comc5e1f8d2008-08-18 03:21:46 +0000101882008-08-17 Timothy Hatcher <timothy@apple.com>
10189
10190 Complete in scope variables in the Console when paused.
10191
10192 https://bugs.webkit.org/show_bug.cgi?id=19115
10193
10194 Reviewed by Geoffrey Garen.
10195
10196 * page/inspector/Console.js:
10197 (WebInspector.Console.prototype.completions): If the expressionString
10198 is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
10199 to get an object that declares all the in scope variables. That way
10200 "top level" expressions are completed.
10201 * page/inspector/ScriptsPanel.js:
10202 (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
10203 Return an object that has all the variables that are in scope for the
10204 selected call frame. The value of each property is just true.
10205 The return object is useful for quick lookups or auto completion.
10206
cwzwarich@webkit.orgac715282008-08-17 21:34:46 +0000102072008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
10208
10209 Not reviewed.
10210
10211 Speculative Qt build fix.
10212
10213 * bridge/qt/qt_runtime.cpp:
10214 (KJS::Bindings::convertValueToQVariant):
10215 (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
10216
ggaren@apple.comfea43532008-08-17 20:23:49 +0000102172008-08-17 Geoffrey Garen <ggaren@apple.com>
10218
10219 Reviewed by Cameron Zwarich.
ggaren@apple.com6e53d0a2008-08-17 20:28:37 +000010220
10221 Updated project files to XCode 3.1.
10222
10223 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
10224
102252008-08-17 Geoffrey Garen <ggaren@apple.com>
10226
10227 Reviewed by Cameron Zwarich.
ggaren@apple.comfea43532008-08-17 20:23:49 +000010228
10229 Made room for a free word in JSCell.
10230
10231 Changed JSDOMWindowBase to store its auxiliary data in a subclass of
10232 JSGlobalData, so the two could share a pointer.
10233
10234 Added a bunch of ASSERTs, to help catch over-sized objects.
10235
mrowe@apple.com13570292008-08-16 06:48:10 +0000102362008-08-15 Mark Rowe <mrowe@apple.com>
10237
mitz@apple.comb96c1b92008-08-17 03:28:52 +000010238 Reviewed by Dan Bernstein.
10239
10240 Disable dead code stripping in debug builds.
10241
10242 * Configurations/Base.xcconfig:
10243 * WebCore.xcodeproj/project.pbxproj:
10244
102452008-08-15 Mark Rowe <mrowe@apple.com>
10246
mrowe@apple.com13570292008-08-16 06:48:10 +000010247 Rubber-stamped by Geoff Garen.
10248
10249 <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
10250
10251 * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
10252 between the Debug configuration and debug Production variant.
10253 * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
10254
antti@apple.coma05e8b02008-08-15 22:58:06 +0000102552008-08-15 Antti Koivisto <antti@apple.com>
10256
10257 Reviewed by Anders.
10258
10259 Don't start preloading body resources before the head is complete. This prevents
10260 body preloads from slowing down initial display when there is limited amount
10261 of bandwidth available.
10262
10263 Works by queuing up found body preloads to DocLoader and only issuing them
10264 after document has rendering.
10265
10266 With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
10267 without affecting complete load time.
10268
10269 * html/PreloadScanner.cpp:
10270 (WebCore::PreloadScanner::PreloadScanner):
10271 (WebCore::PreloadScanner::scanningBody):
10272 (WebCore::PreloadScanner::emitTag):
10273 (WebCore::PreloadScanner::emitCSSRule):
10274 * html/PreloadScanner.h:
10275 * loader/DocLoader.cpp:
10276 (WebCore::DocLoader::preload):
10277 (WebCore::DocLoader::checkForPendingPreloads):
10278 (WebCore::DocLoader::requestPreload):
10279 * loader/DocLoader.h:
10280 * loader/loader.cpp:
10281 (WebCore::Loader::Host::didFinishLoading):
10282 (WebCore::Loader::Host::didFail):
10283
adachan@apple.com94ac38d2008-08-15 21:08:40 +0000102842008-08-15 Ada Chan <adachan@apple.com>
10285
10286 Use item's computed style if the render style is 0 before falling back to the <select>'s style.
10287 This way style set on an <hr> within a <select> will be honored.
10288
10289 Reviewed by Dave Hyatt and Dan Bernstein.
10290
10291 * rendering/RenderMenuList.cpp:
10292 (WebCore::RenderMenuList::itemStyle):
10293
antti@apple.com9f7911472008-08-15 20:48:06 +0000102942008-08-15 Antti Koivisto <antti@apple.com>
10295
10296 Reviewed by Oliver.
10297
10298 Some loader performance tweaks:
10299 - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
10300 Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue
10301 to not delay rendering.
10302 - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
10303 can take long time when latency is high so it is good to get started early.
10304 - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
10305 load queues. Issue remaining loads to the network layer.
10306
10307 * loader/loader.cpp:
10308 (WebCore::Loader::determinePriority):
10309 (WebCore::Loader::load):
10310 (WebCore::Loader::Host::servePendingRequests):
10311 * loader/loader.h:
10312
timothy@apple.com2d974c32008-08-15 18:35:39 +0000103132008-08-15 Timothy Hatcher <timothy@apple.com>
10314
10315 Detach the script debugger when the Web Inspector's window closes.
10316 This has always been the intended design, but never fully implemented.
10317
10318 https://bugs.webkit.org/show_bug.cgi?id=20402
10319
10320 Reviewed by Adam Roben.
10321
10322 * page/InspectorController.cpp:
10323 (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
10324 if the window is no longer visible.
10325
hausmann@webkit.orgbb4b9142008-08-15 18:11:34 +0000103262008-08-15 HĂĄvard Wall <hwall@trolltech.com>
10327
10328 Reviewed by Simon.
10329
hausmann@webkit.org58144a72008-08-15 18:12:08 +000010330 Fixes: compile with QT_NO_CONTEXTMENU
10331
10332 * platform/qt/PlatformMouseEventQt.cpp:
10333 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
10334 * platform/qt/PlatformScrollBarQt.cpp:
10335 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
10336 (WebCore::PlatformScrollbar::handleContextMenuEvent):
10337
103382008-08-15 HĂĄvard Wall <hwall@trolltech.com>
10339
10340 Reviewed by Simon.
10341
hausmann@webkit.orgbb4b9142008-08-15 18:11:34 +000010342 Fixes: compile with QT_NO_WHEELEVENT
10343
10344 * platform/qt/WheelEventQt.cpp:
10345 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
10346
timothy@apple.com4889e612008-08-15 17:06:14 +0000103472008-08-15 Keishi Hattori <casey.hattori@gmail.com>
10348
timothy@apple.comd64639c2008-08-15 17:48:36 +000010349 Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
10350
10351 https://bugs.webkit.org/show_bug.cgi?id=20210
10352
10353 Reviewed by Tim Hatcher.
10354
10355 * page/Console.cpp:
10356 (WebCore::Console::group):
10357 (WebCore::Console::groupEnd):
10358 * page/Console.h:
10359 (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
10360 * page/InspectorController.cpp:
10361 (WebCore::InspectorController::startGroup): Increments group level by
10362 one and adds console message with StartGroupMessaageLevel.
10363 (WebCore::InspectorController::endGroup): Decrements group level by one
10364 and adds console message with EndGroupMessaageLevel.
10365 * page/InspectorController.h:
10366 * page/inspector/Console.js:
10367 (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
10368 if the message is StartGroupMessaageLevel.
10369 (WebInspector.ConsoleMessage.prototype.toMessageElement):
10370 (WebInspector.ConsoleGroup.prototype.addMessage):
10371 * page/inspector/inspector.js:
10372
103732008-08-15 Keishi Hattori <casey.hattori@gmail.com>
10374
timothy@apple.com7310b6a2008-08-15 17:35:22 +000010375 Adds support for console.dir to the Inspector
10376
10377 https://bugs.webkit.org/show_bug.cgi?id=19155
10378
10379 Reviewed by Tim Hatcher.
10380
10381 * bindings/js/JSConsoleCustom.cpp:
10382 (WebCore::JSConsole::dir):
10383 * page/Console.cpp:
10384 (WebCore::Console::dir):
10385 * page/Console.h: Added ObjectMessageLevel.
10386 * page/Console.idl: Added console.dir.
10387 * page/inspector/Console.js:
10388 (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
10389 ObjectPropertiesSection if the MessageLevel is Object.
10390 * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
10391 used on primitive data types.
10392 * page/inspector/inspector.css:
10393
103942008-08-15 Keishi Hattori <casey.hattori@gmail.com>
10395
timothy@apple.com4889e612008-08-15 17:06:14 +000010396 Adds support for clear() in the Inspector console.
10397
10398 https://bugs.webkit.org/show_bug.cgi?id=19873
10399
10400 Reviewed by Tim Hatcher.
10401
10402 * page/inspector/Console.js:
10403
timothy@apple.com12c5b5d2008-08-15 17:02:44 +0000104042008-08-15 Anthony Ricaud <rik24d@gmail.com>
10405
10406 Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
10407
10408 Platform distinction and modifier key matching adjusted
10409 by Daniel Jalkut <jalkut@red-sweater.com>
10410
10411 Bug 16313: text search (find) keybindings should work in the Web Inspector
10412 https://bugs.webkit.org/show_bug.cgi?id=16313
10413
10414 Reviewed by Tim Hatcher.
10415
10416 * page/inspector/inspector.js: Added a case for the F key
10417
timothy@apple.coma5ba4392008-08-15 16:50:26 +0000104182008-08-15 Keishi Hattori <casey.hattori@gmail.com>
10419
10420 Fix for error when the string doesn't contain a webkit-profile link.
10421
10422 https://bugs.webkit.org/show_bug.cgi?id=20399
10423
10424 Reviewed by Tim Hatcher.
10425
10426 * page/inspector/inspector.js:
10427
timothy@apple.com895b2652008-08-15 16:33:27 +0000104282008-08-15 Timothy Hatcher <timothy@apple.com>
10429
10430 Fixes two bugs where JavaScript could be executed from the page
10431 while the debugger is paused.
10432
10433 The first issue was JSLazyEventListener not checking the paused
10434 state before parsing the code.
10435
10436 The second issue was with the PageGroup version of
10437 JavaScriptDebugServer::setJavaScriptPaused always passing false
10438 to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
10439 and not the paused argument.
10440
10441 https://bugs.webkit.org/show_bug.cgi?id=20284
10442
10443 Reviewed by Adam Roben.
10444
10445 * bindings/js/JSEventListener.cpp:
10446 (WebCore::JSLazyEventListener::parseCode): Check the paused
10447 state of the ScriptController. Return early if paused.
10448 * manual-tests/inspector/debugger-execution-while-paused.html: Added.
10449 * page/JavaScriptDebugServer.cpp:
10450 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
10451 Pass the paused argument to the Page version of setJavaScriptPaused.
10452
ap@webkit.orgbe495d32008-08-15 07:43:48 +0000104532008-08-15 Alexey Proskuryakov <ap@webkit.org>
10454
10455 Reviewed by Geoff Garen.
10456
10457 JSStringRef is created context-free, but can get linked to one via an identifier table,
10458 breaking an implicit API contract.
10459
10460 * page/InspectorController.cpp:
10461 (WebCore::jsStringRef):
10462 (WebCore::InspectorController::didParseSource):
10463 (WebCore::InspectorController::failedToParseSource):
10464 * page/JavaScriptProfile.cpp:
10465 (WebCore::getTitleCallback):
10466 Updated for JavaScriptCore changes.
10467
kevino@webkit.org8fe09ff2008-08-15 05:10:57 +0000104682008-08-14 Kevin Ollivier <kevino@theolliviers.com>
10469
10470 wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
10471 an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
10472
10473 * platform/graphics/AffineTransform.h:
10474
adele@apple.com2b2e2f82008-08-15 00:53:36 +0000104752008-08-14 Eric Carlson <eric.carlson@apple.com>
10476
10477 Reviewed by Adele.
10478
10479 Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
10480 <video> elements on Windows never becomes visible when a page is restored from the cache
10481
10482 Always pass "set" calls down to MediaPlayerPrivate instead of only when the
10483 value is different from the cached value. Let the implementation decide when
10484 to avoid work because nothing has changed.
10485
10486 * platform/graphics/MediaPlayer.cpp:
10487 (WebCore::MediaPlayer::setVolume):
10488 (WebCore::MediaPlayer::setRate):
10489 (WebCore::MediaPlayer::setRect):
10490 (WebCore::MediaPlayer::setVisible):
10491
timothy@apple.comda810f42008-08-14 23:57:14 +0000104922008-08-14 Keishi Hattori <casey.hattori@gmail.com>
10493
10494 Make Firebug command line API respect predefined variables.
10495
timothy@apple.com90751f02008-08-14 23:58:19 +000010496 https://bugs.webkit.org/show_bug.cgi?id=20385
10497
timothy@apple.comda810f42008-08-14 23:57:14 +000010498 Reviewed by Tim Hatcher.
10499
10500 * page/inspector/Console.js:
10501
weinig@apple.com4b51d002008-08-14 23:33:22 +0000105022008-08-14 Sam Weinig <sam@webkit.org>
10503
10504 Reviewed by Geoffrey Garen and Timothy Hatcher.
10505
10506 Allow programatically setting the HTMLTokenizers time delay and chunk size
10507 which are used for determining how aggressively we yield.
10508
10509 * WebCore.base.exp:
10510 * html/HTMLTokenizer.cpp:
10511 (WebCore::HTMLTokenizer::begin):
10512 (WebCore::HTMLTokenizer::continueProcessing):
10513 * html/HTMLTokenizer.h:
10514 * page/Page.cpp:
10515 (WebCore::Page::Page):
10516 (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
10517 (WebCore::Page::setCustomHTMLTokenizerChunkSize):
10518 * page/Page.h:
10519 (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
10520 (WebCore::Page::customHTMLTokenizerTimeDelay):
10521 (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
10522 (WebCore::Page::customHTMLTokenizerChunkSize):
10523
eric@webkit.org89613d22008-08-14 23:19:17 +0000105242008-08-14 Eric Seidel <eric@webkit.org>
10525
eric@webkit.org7e897c32008-08-14 23:20:00 +000010526 Reviewed by Beth.
10527
10528 Move us one step closer to cross-platform svg/graphics code
10529
10530 * WebCore.xcodeproj/project.pbxproj:
10531 * html/CanvasStyle.cpp:
10532 * platform/graphics/Color.cpp:
10533 (WebCore::colorWithOverrideAlpha):
10534 * platform/graphics/Color.h:
10535 * svg/graphics/cg/CgSupport.cpp:
10536 (WebCore::applyStrokeStyleToContext):
10537 (WebCore::strokeBoundingBox):
10538 * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
10539 (WebCore::SVGPaintServerSolid::setup):
10540
105412008-08-14 Eric Seidel <eric@webkit.org>
10542
eric@webkit.org4f490652008-08-14 23:19:31 +000010543 Reviewed by Alexey.
10544
eric@webkit.org73fa9d12008-08-14 23:19:44 +000010545 Remove un-need includes from HTMLCanvas and use the
10546 Gradient platform abstraction in one place in CanvasStyle
10547
10548 * html/CanvasRenderingContext2D.cpp:
10549 (WebCore::CanvasRenderingContext2D::fillRect):
10550 * html/CanvasStyle.cpp:
10551 * html/HTMLCanvasElement.cpp:
10552
105532008-08-14 Eric Seidel <eric@webkit.org>
10554
10555 Reviewed by Alexey.
10556
eric@webkit.org4f490652008-08-14 23:19:31 +000010557 Clean up GlyphBuffer.h, removing more #ifdefs
10558
10559 * platform/graphics/GlyphBuffer.h:
10560 (WebCore::GlyphBuffer::glyphAt):
10561 (WebCore::GlyphBuffer::advanceAt):
10562 (WebCore::GlyphBuffer::add):
10563
105642008-08-14 Eric Seidel <eric@webkit.org>
10565
eric@webkit.org89613d22008-08-14 23:19:17 +000010566 Reviewed by Sam.
10567
10568 Clean up AffineTransform.h, removing #ifdefs
10569
10570 * platform/graphics/AffineTransform.h:
10571 * platform/graphics/cairo/AffineTransformCairo.cpp:
10572 * platform/graphics/cg/AffineTransformCG.cpp:
10573 * platform/graphics/qt/AffineTransformQt.cpp:
10574 * platform/graphics/wx/AffineTransformWx.cpp:
10575
mitz@apple.com551d6252008-08-14 23:08:09 +0000105762008-08-14 Dan Bernstein <mitz@apple.com>
10577
mitz@apple.com94c1a7d2008-08-14 23:12:34 +000010578 - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
10579
10580 * platform/graphics/cairo/ImageSourceCairo.cpp:
10581 (WebCore::ImageSource::frameSizeAtIndex):
10582 * platform/graphics/qt/ImageSourceQt.cpp:
10583 (WebCore::ImageSource::frameSizeAtIndex):
10584 * platform/graphics/wx/ImageSourceWx.cpp:
10585 (WebCore::ImageSource::frameSizeAtIndex):
10586
105872008-08-14 Dan Bernstein <mitz@apple.com>
10588
mitz@apple.com551d6252008-08-14 23:08:09 +000010589 Reviewed by Brady Eidson.
10590
10591 - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
10592
10593 * platform/graphics/BitmapImage.cpp:
10594 (WebCore::BitmapImage::BitmapImage): Added initialization of
10595 m_hasUniformFrameSize.
10596 (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
10597 cached frame for use in decoded size computation and for setting
10598 m_hasUniformFrameSize.
10599 (WebCore::BitmapImage::currentFrameSize): Added.
10600 (WebCore::BitmapImage::dataChanged): Added code to reset
10601 m_hasUniformFrameSize.
10602 * platform/graphics/BitmapImage.h: Added currentFrameSize() and
10603 m_hasUniformFrameSize.
10604 * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
10605 * platform/graphics/cg/ImageCG.cpp:
10606 (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
10607 fixes the bug, which resulted from assuming that the frame being drawn
10608 was the same size as the first frame.
10609 * platform/graphics/cg/ImageSourceCG.cpp:
10610 (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
10611 changed to get the size of the frame at the given index.
10612 (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
10613
simon.fraser@apple.com50954e52008-08-14 23:04:41 +0000106142008-08-13 Simon Fraser <simon.fraser@apple.com>
10615
10616 Reviewed by Eric Seidel
10617
10618 Fix @font-face inside @media rule crash.
10619 https://bugs.webkit.org/show_bug.cgi?id=20367
10620
10621 Test: fast/css/font-face-in-media-rule.html
10622
10623 * css/CSSStyleSelector.cpp:
10624 (WebCore::CSSRuleSet::addRulesFromSheet):
10625
kevino@webkit.org141c4602008-08-14 22:52:55 +0000106262008-08-14 Kevin Ollivier <kevino@theolliviers.com>
10627
10628 wx build fixes after recent changes to Canvas and Image classes.
10629
10630 * platform/graphics/Pattern.h:
10631 * platform/graphics/wx/GradientWx.cpp:
10632 (WebCore::Gradient::fill):
10633 * platform/graphics/wx/GraphicsContextWx.cpp:
10634 (WebCore::GraphicsContext::applyFillPattern):
10635 (WebCore::GraphicsContext::applyStrokePattern):
10636 * platform/graphics/wx/ImageBufferWx.cpp:
10637 (WebCore::ImageBuffer::image):
10638 * platform/graphics/wx/ImageWx.cpp:
10639 (WebCore::Image::loadPlatformResource):
10640
britto@apple.comd7008662008-08-14 19:26:02 +0000106412008-08-14 Maxime Britto <britto@apple.com>
10642
10643 Reviewed by Sam Weinig.
10644
10645 rdar://6102511
10646 When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
10647 IE and FF are both preventing the keyboard event to interact with the page while scrolling.
10648 Some differences exist between them concerning the kind of key which is pressed :
10649 IE7 : every key leads to a stop of the panning
10650 FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
10651 For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
10652
10653 * page/EventHandler.cpp:
10654 (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
10655
christian@webkit.org0e20f322008-08-14 19:14:47 +0000106562008-08-14 Christian Dywan <christian@twotoasts.de>
10657
10658 Gtk+/ Cairo build fix, patch by Dirk Schulze.
10659
10660 * html/CanvasStyle.cpp:
10661 * platform/graphics/cairo/PatternCairo.cpp:
10662 (WebCore::Pattern::createPlatformPattern):
10663 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
10664
kmccullough@apple.comd2b50f12008-08-14 18:11:20 +0000106652008-08-14 Kevin McCullough <kmccullough@apple.com>
10666
10667 Reviewed by Tim.
10668
10669 <rdar://problem/6115819> Notify of profile in console
10670
10671 * page/InspectorController.cpp:
10672 (WebCore::InspectorController::addProfile):
10673 (WebCore::InspectorController::addProfileMessageToConsole): Called by
10674 addProfile this is the function that adds a message to the console that
10675 a profile finished.
10676 * page/InspectorController.h:
10677 * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
10678 the console log to the profile in the web inspector.
10679 (WebCore::getUniqueIdCallback):
10680 (WebCore::ProfileClass):
10681 * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
10682 Id to bring up the requested profile. Also select and reveal the
10683 profile in the profile panel. And created displayTitleForProfileLink()
10684 which formats a title taking into account if it's user initiated or if
10685 there are multiples. Lasty, I put the user initiated profile in a
10686 variable.
10687 * page/inspector/inspector.js: Make the profile title be a clickable
10688 link that will take the user to the identified profile. Also expose
10689 the count of user initiated profiles so they can be displayed in the
10690 console with the correct count.
10691
timothy@apple.comcd7f0f32008-08-14 17:41:05 +0000106922008-08-14 Timothy Hatcher <timothy@apple.com>
10693
10694 Avoid formating ConsoleMessages twice unless the message will be
10695 displayed in bubbles of a SourceFrame.
10696
10697 Reviewed by Kevin McCullough.
10698
10699 * page/inspector/Console.js:
10700 (WebInspector.ConsoleMessage): Only format the plain text message
10701 if the URL and line are valid and the level is error or warning.
10702 (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
10703 Helper to test for error or warning level.
10704 * page/inspector/SourceFrame.js:
10705 (WebInspector.SourceFrame.prototype.addMessage): Don't add the
10706 message if there is no message or valid line or if the msg
10707 isn't an error or warning.
10708
jmalonzo@webkit.orgb469bb72008-08-14 15:07:41 +0000107092008-08-14 Jan Michael Alonzo <jmalonzo@webkit.org>
10710
10711 partial Gtk build fix, not reviewed
10712
10713 * platform/graphics/cairo/PatternCairo.cpp:
10714
weinig@apple.com45e83142008-08-14 04:49:30 +0000107152008-08-13 Sam Weinig <sam@webkit.org>
10716
10717 Reviewed by Anders Carlson.
10718
10719 Fix style issue.
10720
10721 * html/HTMLMediaElement.cpp:
10722 (WebCore::HTMLMediaElement::pickMedia):
10723
zimmermann@webkit.org9ae47e92008-08-14 02:22:35 +0000107242008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
10725
zimmermann@webkit.org7a2f53d2008-08-14 03:06:01 +000010726 Build fix for Cairo, not reviewed. (exposed by gtk build slave)
10727 Continue Erics build fixes, after the Image cleanup.
10728
10729 * platform/graphics/cairo/ImageBufferCairo.cpp:
10730 (WebCore::ImageBuffer::image):
10731
107322008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
10733
zimmermann@webkit.org1ef52132008-08-14 02:38:16 +000010734 Build fix for Qt, not reviewed.
10735 Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
10736
10737 * dom/XMLTokenizer.cpp:
10738 (WebCore::eventuallyMarkAsParserCreated): Was erre
10739
107402008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
10741
zimmermann@webkit.org3e560562008-08-14 02:26:00 +000010742 Build fix, not reviewed.
10743 Add ScriptElement.cpp to Gtk build.
10744
10745 * GNUmakefile.am:
10746
107472008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
10748
zimmermann@webkit.org9ae47e92008-08-14 02:22:35 +000010749 Reviewed by Eric.
10750
10751 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
10752
10753 Refactor HTMLScriptElement's code into a common base class: ScriptElement.
10754 SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
10755
10756 This resolves code duplications and allows us to completly replace the old
10757 SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
10758
10759 As ScriptElement, doesn't actually inherit from Element, we may want to rename
10760 it, though StyleElement uses the same naming convention, so I left it as is for now.
10761 Eventually we'll rename both files in future.
10762
10763 No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
10764
10765 * WebCore.pro: Add new ScriptElement.cpp to build.
10766 * WebCore.vcproj/WebCore.vcproj: Ditto.
10767 * WebCore.xcodeproj/project.pbxproj: Ditto.
10768 * WebCoreSources.bkl: Dutto.
10769 * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
10770 (WebCore::ScriptElement::insertedIntoDocument):
10771 (WebCore::ScriptElement::removedFromDocument):
10772 (WebCore::ScriptElement::childrenChanged):
10773 (WebCore::ScriptElement::finishParsingChildren):
10774 (WebCore::ScriptElement::handleSourceAttribute):
10775 (WebCore::isSupportedJavaScriptLanguage):
10776 (WebCore::ScriptElementData::ScriptElementData):
10777 (WebCore::ScriptElementData::~ScriptElementData):
10778 (WebCore::ScriptElementData::requestScript):
10779 (WebCore::ScriptElementData::evaluateScript):
10780 (WebCore::ScriptElementData::stopLoadRequest):
10781 (WebCore::ScriptElementData::notifyFinished):
10782 (WebCore::ScriptElementData::ignoresLoadRequest):
10783 (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
10784 (WebCore::ScriptElementData::scriptCharset):
10785 (WebCore::ScriptElementData::scriptContent):
10786 * dom/ScriptElement.h: Added.
10787 (WebCore::ScriptElement::ScriptElement):
10788 (WebCore::ScriptElement::~ScriptElement):
10789 (WebCore::ScriptElementData::element):
10790 (WebCore::ScriptElementData::createdByParser):
10791 (WebCore::ScriptElementData::setCreatedByParser):
10792 * dom/XMLTokenizer.cpp:
10793 (WebCore::isScriptElement):
10794 (WebCore::castToScriptElement):
10795 (WebCore::eventuallyMarkAsParserCreated):
10796 (WebCore::XMLTokenizer::startElementNs):
10797 (WebCore::XMLTokenizer::endElementNs):
10798 (WebCore::createXHTMLParserErrorHeader):
10799 (WebCore::XMLTokenizer::insertErrorMessageBlock):
10800 * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
10801 (WebCore::HTMLScriptElement::HTMLScriptElement):
10802 (WebCore::HTMLScriptElement::~HTMLScriptElement):
10803 (WebCore::HTMLScriptElement::isURLAttribute):
10804 (WebCore::HTMLScriptElement::setCreatedByParser):
10805 (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
10806 (WebCore::HTMLScriptElement::childrenChanged):
10807 (WebCore::HTMLScriptElement::parseMappedAttribute):
10808 (WebCore::HTMLScriptElement::finishParsingChildren):
10809 (WebCore::HTMLScriptElement::insertedIntoDocument):
10810 (WebCore::HTMLScriptElement::removedFromDocument):
10811 (WebCore::HTMLScriptElement::text):
10812 (WebCore::HTMLScriptElement::setText):
10813 (WebCore::HTMLScriptElement::setHtmlFor):
10814 (WebCore::HTMLScriptElement::setEvent):
10815 (WebCore::HTMLScriptElement::charset):
10816 (WebCore::HTMLScriptElement::src):
10817 (WebCore::HTMLScriptElement::type):
10818 (WebCore::HTMLScriptElement::scriptCharset):
10819 (WebCore::HTMLScriptElement::scriptContent):
10820 (WebCore::HTMLScriptElement::sourceAttributeValue):
10821 (WebCore::HTMLScriptElement::charsetAttributeValue):
10822 (WebCore::HTMLScriptElement::typeAttributeValue):
10823 (WebCore::HTMLScriptElement::languageAttributeValue):
10824 (WebCore::HTMLScriptElement::dispatchLoadEvent):
10825 (WebCore::HTMLScriptElement::dispatchErrorEvent):
10826 * html/HTMLScriptElement.h:
10827 * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
10828 * svg/SVGScriptElement.cpp:
10829 (WebCore::SVGScriptElement::SVGScriptElement):
10830 (WebCore::SVGScriptElement::scriptContent):
10831 (WebCore::SVGScriptElement::sourceAttributeValue):
10832 (WebCore::SVGScriptElement::charsetAttributeValue):
10833 (WebCore::SVGScriptElement::typeAttributeValue):
10834 (WebCore::SVGScriptElement::languageAttributeValue):
10835 (WebCore::SVGScriptElement::dispatchLoadEvent):
10836 (WebCore::SVGScriptElement::dispatchErrorEvent):
10837 * svg/SVGScriptElement.h:
10838 (WebCore::SVGScriptElement::setCreatedByParser):
10839
eric@webkit.org7811ef02008-08-14 00:28:51 +0000108402008-08-13 Eric Seidel <eric@webkit.org>
10841
eric@webkit.org3562c592008-08-14 02:17:29 +000010842 Attempt to fix the Gtk build, no review.
10843
10844 I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
10845
10846 * platform/graphics/GraphicsContext.h:
10847 * platform/graphics/cairo/GraphicsContextCairo.cpp:
10848 * platform/graphics/qt/GradientQt.cpp:
10849 * platform/graphics/qt/GraphicsContextQt.cpp:
10850 * platform/gtk/RenderThemeGtk.cpp:
10851 (WebCore::paintMozWidget):
10852
108532008-08-13 Eric Seidel <eric@webkit.org>
10854
eric@webkit.org2ec42072008-08-14 02:03:09 +000010855 Yet another attempt to fix the Qt build, no review.
10856
10857 * platform/graphics/qt/GradientQt.cpp:
10858 * platform/graphics/qt/GraphicsContextQt.cpp:
10859 (WebCore::GraphicsContext::applyStrokePattern):
10860 (WebCore::GraphicsContext::applyFillPattern):
10861
108622008-08-13 Eric Seidel <eric@webkit.org>
10863
10864 Attempt to fix the Windows build, no review.
10865
10866 * platform/win/CursorWin.cpp:
10867 (WebCore::loadCursorByName):
10868 * platform/win/ScrollViewWin.cpp:
10869 (WebCore::ScrollView::paint):
10870
108712008-08-13 Eric Seidel <eric@webkit.org>
10872
eric@webkit.org508c0282008-08-14 01:29:34 +000010873 Attempt to fix the Windows build, no review.
10874
10875 * platform/win/CursorWin.cpp:
10876 (WebCore::loadCursorByName):
10877 * platform/win/ScrollViewWin.cpp:
10878 (WebCore::ScrollView::paint):
10879
108802008-08-13 Eric Seidel <eric@webkit.org>
10881
eric@webkit.org1bf70ab2008-08-14 01:24:15 +000010882 Attempt to fix the Qt build, no review.
10883
10884 * platform/graphics/qt/ImageBufferQt.cpp:
10885 (WebCore::ImageBuffer::image):
10886
108872008-08-13 Eric Seidel <eric@webkit.org>
10888
eric@webkit.orgf2d7c212008-08-14 01:21:34 +000010889 Attempt to fix the Windows build, no review.
10890
10891 * platform/graphics/win/ImageWin.cpp:
10892 (WebCore::Image::loadPlatformResource):
10893 * plugins/win/PluginViewWin.cpp:
10894 (WebCore::PluginView::paintMissingPluginIcon):
10895
108962008-08-13 Eric Seidel <eric@webkit.org>
10897
eric@webkit.orgac3f6662008-08-14 01:15:50 +000010898 Another attempt to fix the Qt build, no review.
10899
10900 * platform/graphics/qt/ImageQt.cpp:
10901 * platform/graphics/qt/StillImageQt.h:
10902
109032008-08-13 Eric Seidel <eric@webkit.org>
10904
eric@webkit.org31e0d812008-08-14 01:05:42 +000010905 No review, build fix only.
10906
10907 Fix mac build, due to change in new code since my patch was written.
10908
10909 * svg/graphics/cg/SVGResourceMaskerCg.mm:
10910 (WebCore::SVGResourceMasker::applyMask):
10911
109122008-08-13 Eric Seidel <eric@webkit.org>
10913
eric@webkit.orga20a0032008-08-14 00:42:54 +000010914 Build fix only, no review.
10915
10916 Attempt to fix the Qt build.
10917
eric@webkit.org923255c2008-08-14 00:59:20 +000010918 * platform/graphics/qt/ImageBufferQt.cpp:
10919 * platform/graphics/qt/StillImageQt.h:
10920 (WebCore::StillImage::create):
10921 (WebCore::StillImage::destroyDecodedData):
10922 (WebCore::StillImage::decodedSize):
10923
109242008-08-13 Eric Seidel <eric@webkit.org>
10925
10926 Build fix only, no review.
10927
10928 Attempt to fix the Qt build.
10929
eric@webkit.orga20a0032008-08-14 00:42:54 +000010930 * html/CanvasStyle.cpp:
10931 (WebCore::CanvasStyle::applyStrokeColor):
10932 (WebCore::CanvasStyle::applyFillColor):
10933
109342008-08-13 Eric Seidel <eric@webkit.org>
10935
eric@webkit.org4aca3be2008-08-14 00:30:04 +000010936 Reviewed by Sam.
10937
10938 Match HTML5 spec by throwing INVALID_STATE_ERR when
10939 createPattern is called and the HTMLImageElement is not
10940 yet done loading the image (!isComplete)
10941 https://bugs.webkit.org/show_bug.cgi?id=20351
10942
10943 Test: http/misc/canvas-pattern-from-incremental-image.html
10944
10945 * html/CanvasRenderingContext2D.cpp:
10946 (WebCore::CanvasRenderingContext2D::createPattern):
10947
109482008-08-13 Eric Seidel <eric@webkit.org>
10949
eric@webkit.org5b265602008-08-14 00:29:26 +000010950 Reviewed by Niko.
10951
eric@webkit.orgf0124f62008-08-14 00:29:50 +000010952 Split out a Pattern class from CanvasPattern
10953 and remove all the Pattern-related #ifdefs
10954 (This will break non-mac platforms! I will fix them.)
10955 https://bugs.webkit.org/show_bug.cgi?id=20351
10956
10957 * GNUmakefile.am:
10958 * WebCore.pro:
10959 * WebCore.vcproj/WebCore.vcproj:
10960 * WebCore.xcodeproj/project.pbxproj:
10961 * WebCoreSources.bkl:
10962 * html/CanvasPattern.cpp:
10963 (WebCore::CanvasPattern::parseRepetitionType):
10964 (WebCore::CanvasPattern::CanvasPattern):
10965 * html/CanvasPattern.h:
10966 (WebCore::CanvasPattern::create):
10967 (WebCore::CanvasPattern::pattern):
10968 (WebCore::CanvasPattern::originClean):
10969 * html/CanvasRenderingContext2D.cpp:
10970 (WebCore::CanvasRenderingContext2D::createPattern):
10971 (WebCore::CanvasRenderingContext2D::applyStrokePattern):
10972 (WebCore::CanvasRenderingContext2D::applyFillPattern):
10973 * html/CanvasRenderingContext2D.h:
10974 * html/HTMLCanvasElement.cpp:
10975 * html/HTMLCanvasElement.h:
10976 * loader/FrameLoader.cpp:
10977 (WebCore::FrameLoader::createHistoryItem):
10978 * platform/graphics/GraphicsContext.h:
10979 * platform/graphics/cairo/GraphicsContextCairo.cpp:
10980 (WebCore::GraphicsContext::applyStrokePattern):
10981 (WebCore::GraphicsContext::applyFillPattern):
10982 * platform/graphics/cg/GraphicsContextCG.cpp:
10983 (WebCore::GraphicsContext::clipToImageBuffer):
10984 (WebCore::GraphicsContext::applyStrokePattern):
10985 (WebCore::GraphicsContext::applyFillPattern):
10986
109872008-08-13 Eric Seidel <eric@webkit.org>
10988
10989 Reviewed by Niko.
10990
eric@webkit.org5b265602008-08-14 00:29:26 +000010991 Make Images RefCounted (and clean up callers)
10992 https://bugs.webkit.org/show_bug.cgi?id=20351
10993
10994 * editing/DeleteButtonController.cpp:
10995 (WebCore::DeleteButtonController::createDeletionUI):
10996 * loader/CachedImage.cpp:
10997 (WebCore::CachedImage::CachedImage):
10998 (WebCore::brokenImage):
10999 (WebCore::nullImage):
11000 (WebCore::CachedImage::image):
11001 (WebCore::CachedImage::notifyObservers):
11002 (WebCore::CachedImage::createImage):
11003 * loader/CachedImage.h:
11004 * loader/icon/IconRecord.cpp:
11005 (WebCore::IconRecord::setImageData):
11006 (WebCore::IconRecord::loadImageFromResource):
11007 * loader/icon/IconRecord.h:
11008 * platform/graphics/BitmapImage.h:
11009 (WebCore::BitmapImage::create):
11010 * platform/graphics/GeneratedImage.h:
11011 * platform/graphics/Gradient.cpp:
11012 * platform/graphics/Gradient.h:
11013 * platform/graphics/Image.cpp:
11014 (WebCore::Image::nullImage):
11015 * platform/graphics/Image.h:
11016 * platform/graphics/ImageBuffer.h:
11017 * platform/graphics/cairo/ImageBufferCairo.cpp:
11018 (WebCore::ImageBuffer::image):
11019 * platform/graphics/cg/ImageBufferCG.cpp:
11020 (WebCore::ImageBuffer::image):
11021 (WebCore::ImageBuffer::getImageData):
11022 (WebCore::ImageBuffer::putImageData):
11023 * platform/graphics/cg/PDFDocumentImage.h:
11024 (WebCore::PDFDocumentImage::create):
11025 (WebCore::PDFDocumentImage::destroyDecodedData):
11026 (WebCore::PDFDocumentImage::decodedSize):
11027 * platform/graphics/gtk/ImageGtk.cpp:
11028 (WebCore::Image::loadPlatformResource):
11029 * platform/graphics/mac/ImageMac.mm:
11030 (WebCore::Image::loadPlatformResource):
11031 * rendering/RenderImage.cpp:
11032 * rendering/RenderLayer.cpp:
11033 (WebCore::RenderLayer::paintOverflowControls):
11034 * svg/graphics/SVGImage.cpp:
11035 (WebCore::SVGImage::nativeImageForCurrentFrame):
11036 * svg/graphics/SVGImage.h:
11037 (WebCore::SVGImage::create):
11038 (WebCore::SVGImage::destroyDecodedData):
11039 (WebCore::SVGImage::decodedSize):
11040 (WebCore::SVGImage::frameAtIndex):
11041 * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
11042 (WebCore::SVGPaintServerPattern::setup):
11043 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
11044 (WebCore::SVGResourceMasker::applyMask):
11045 * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
11046 (WebCore::patternCallback):
11047 * svg/graphics/cg/SVGResourceMaskerCg.mm:
11048 (WebCore::SVGResourceMasker::applyMask):
11049
110502008-08-13 Eric Seidel <eric@webkit.org>
11051
11052 Reviewed by Niko.
eric@webkit.org7811ef02008-08-14 00:28:51 +000011053
11054 Remove #ifdefs from CanvasStyle by using platform/Color.h
eric@webkit.org5b265602008-08-14 00:29:26 +000011055 https://bugs.webkit.org/show_bug.cgi?id=20351
eric@webkit.org7811ef02008-08-14 00:28:51 +000011056
11057 There are some down-sides to this commit.
11058 This commit limits us to 255 levels of grey for calls like:
11059 context.setStrokeStyle(.37, 1.0)
11060 previously CG might have used up to 32bits to store the grey level
11061 Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
11062
11063 Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
11064 to RGBA32 (like all the rest of colors in WebCore), thus:
11065 context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
11066 context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
11067
11068 If this is a problem for Dashboard, we can either roll out this commit
11069 or add a beefier Color abstraction, which can be used internally by GraphicsContext
11070 when keeping state, and then GraphicsContext can grow some additional set* routines
11071 for setting the a grey/float/whatever fill and stroke.
11072
11073 * html/CanvasRenderingContext2D.cpp:
11074 (WebCore::CanvasRenderingContext2D::setFillStyle):
11075 * html/CanvasStyle.cpp:
11076 (WebCore::CanvasStyle::CanvasStyle):
11077 (WebCore::colorWithOverrideAlpha):
11078 (WebCore::CanvasStyle::applyStrokeColor):
11079 (WebCore::CanvasStyle::applyFillColor):
11080 * html/CanvasStyle.h:
11081 * platform/graphics/Color.cpp:
11082 (WebCore::colorFloatToRGBAByte):
11083 (WebCore::makeRGBA32FromFloats):
11084 * platform/graphics/Color.h:
11085
adele@apple.com83e44822008-08-13 23:50:41 +0000110862008-08-13 Eric Carlson <eric.carlson@apple.com>
11087
11088 Reviewed by Adele Peterson.
11089
11090 Fix for <rdar://problem/6137931>
11091 https://bugs.webkit.org/show_bug.cgi?id=20360
11092 Remove all parameters from the MIME type before checking with the MIME type registry
11093
11094 Tests: media/video-source-type-params.html
11095
11096 * html/HTMLMediaElement.cpp:
11097 (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';'
11098 to isSupportedMediaMIMEType()
11099
bdakin@apple.com7bc81bf2008-08-13 21:36:15 +0000111002008-08-13 Beth Dakin <bdakin@apple.com>
11101
11102 Reviewed by Sam Weinig.
11103
11104 Fix for <rdar://problem/6141345>
11105
11106 This patch refines findString and markAllMatchesForText functions'
11107 interactions with disconnected frames. They no longer rely on
11108 knowing where a range is relative to the visible region and work
11109 with disconnected frames that contain frames.
11110
11111 * editing/Editor.cpp:
11112 (WebCore::Editor::insideVisibleArea): Now returns a bool instead of
11113 the visiblity enum.
11114 (WebCore::Editor::firstVisibleRange): This now returns the very
11115 first visible range in the document. It's no longer dependent on
11116 searching forward.
11117 (WebCore::Editor::lastVisibleRange): This now returns the very last
11118 visible range in the document. It's no longer dependent on
11119 searching backwards.
11120 (WebCore::Editor::nextVisibleRange): This returns the next visible
11121 range in the appropriate direction from the current range.
11122 * editing/Editor.h:
11123 * page/Frame.cpp:
11124 (WebCore::Frame::findString):
11125 (WebCore::Frame::markAllMatchesForText):
11126
kevino@webkit.orgee5adc42008-08-13 20:07:16 +0000111272008-08-13 Kevin Ollivier <kevino@theolliviers.com>
11128
11129 wx build fix for case-sensitive platforms, like Linux.
11130
11131 * WebCoreSources.bkl:
11132
jmalonzo@webkit.org210145b2008-08-13 19:56:20 +0000111332008-08-13 Marco Barisione <marco.barisione@collabora.co.uk>
11134
11135 Reviewed by Holger Freyther.
11136
11137 http://bugs.webkit.org/show_bug.cgi?id=16881
11138 [GTK] PlatformScreenGtk is unimplemented
11139
11140 Original patch by Christian Dywan.
11141
11142 * platform/gtk/PlatformScreenGtk.cpp:
11143 (WebCore::screenDepth):
11144 (WebCore::screenDepthPerComponent):
11145 (WebCore::screenIsMonochrome):
11146 (WebCore::screenRect):
11147 (WebCore::screenAvailableRect):
11148
jmalonzo@webkit.orge4693932008-08-13 19:42:08 +0000111492008-08-13 Jan Michael Alonzo <jmalonzo@webkit.org>
11150
11151 Reviewed by Holger Freyther.
11152
11153 http://bugs.webkit.org/show_bug.cgi?id=20318
11154 SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
11155
11156 g_idle_add is the same as g_idle_add_full with a priority of
11157 G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
11158
11159 * platform/gtk/SharedTimerGtk.cpp:
11160 (WebCore::setSharedTimerFireTime):
11161
timothy@apple.comf0426602008-08-13 18:11:01 +0000111622008-08-13 Timothy Hatcher <timothy@apple.com>
11163
11164 Changed the InspectorController so it can be notified when the
11165 attached state of the Inspector changes in WebKit.
11166
11167 Reviewed by Kevin McCullough.
11168
11169 * WebCore.base.exp: Updated the symbol for setWindowVisible.
11170 * page/InspectorController.cpp:
11171 (WebCore::InspectorController::setWindowVisible): Added an attached argument,
11172 that defaults to false.Call setAttachedWindow with the attached argument.
11173 (WebCore::InspectorController::setAttachedWindow): Call the script version
11174 of setAttachedWindow.
11175 * page/InspectorController.h:
11176 * page/inspector/inspector.js:
11177 (WebInspector.setAttachedWindow): Set the attached property.
11178
timothy@apple.com9ea832b2008-08-13 18:10:36 +0000111792008-08-12 Timothy Hatcher <timothy@apple.com>
11180
timothy@apple.com72c92ae2008-08-13 18:10:45 +000011181 Added a close button to the Inspector's toolbar when docked.
11182
11183 https://bugs.webkit.org/show_bug.cgi?id=14270
11184
11185 Reviewed by Kevin McCullough.
11186
11187 * page/InspectorController.cpp:
11188 (WebCore::closeWindow): Call InspectorController::closeWindow.
11189 (WebCore::InspectorController::windowScriptObjectAvailable):
11190 Added closeWindow to the script class.
11191 * page/InspectorController.h:
11192 * page/inspector/Images/closeButtons.png: Added.
11193 * page/inspector/inspector.css: Added and changed styles.
11194 * page/inspector/inspector.html: Added the close button.
11195 * page/inspector/inspector.js:
11196 (WebInspector.loaded): Added click event listener to the close button.
11197 (WebInspector.close): Call InspectorController.closeWindow.
11198
111992008-08-12 Timothy Hatcher <timothy@apple.com>
11200
timothy@apple.com9ea832b2008-08-13 18:10:36 +000011201 Make the docked Web Inspector resizable. This is the cross platform
11202 portion of the code. Each InspectorClient needs to implement the
11203 real resize code.
11204
11205 https://bugs.webkit.org/show_bug.cgi?id=14282
11206
11207 Reviewed by Kevin McCullough.
11208
11209 * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
11210 * page/InspectorClient.h: Added setAttachedWindowHeight.
11211 * page/InspectorController.cpp:
11212 (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
11213 on the InspectorController.
11214 (WebCore::InspectorController::setAttachedWindowHeight): Call
11215 setAttachedWindowHeight on the client.
11216 (WebCore::InspectorController::windowScriptObjectAvailable):
11217 Added setAttachedWindowHeight to the script class.
11218 * page/InspectorController.h:
11219 * page/inspector/inspector.css: Make the cursor on the toolbar be
11220 row-resize when docked.
11221 * page/inspector/inspector.js:
11222 (WebInspector.loaded): Always add the toolbarDragStart event listener.
11223 (WebInspector.toolbarDragStart): Return early if we are not attached
11224 and not on Leopard. Call WebInspector.elementDragStart.
11225 (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
11226 (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
11227 otherwise call moveByUnrestricted.
11228
hausmann@webkit.orgd34f1d22008-08-13 13:43:34 +0000112292008-08-13 Simon Hausmann <hausmann@webkit.org>
11230
11231 Reviewed by Holger.
11232
11233 Initialize m_zoomsTextOnly in the Settings constructor.
11234
11235 * page/Settings.cpp:
11236 (WebCore::Settings::Settings):
11237
hausmann@webkit.org74586d62008-08-13 13:31:11 +0000112382008-08-13 Brad Hughes <bhughes@trolltech.com>
11239
11240 Reviewed by Simon.
11241
11242 Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
11243
11244 The latest upgrade of the intel compiler allows us to compile all of
11245 Qt with optimizations enabled (yay!).
11246
11247 * WebCore.pro:
11248
hausmann@webkit.org690b7fc2008-08-13 13:24:56 +0000112492008-08-13 Prasanth Ullattil <prasanth.ullattil@trolltech.com>
11250
11251 Reviewed by Simon.
11252
11253 Fix QtWebKit not displaying content on 403 HTTP responses
11254
11255 Just like with 404 responses also display content with 403, as
11256 used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
11257
11258 * platform/network/qt/QNetworkReplyHandler.cpp:
11259 (WebCore::QNetworkReplyHandler::finish):
11260
hausmann@webkit.org88c4dc92008-08-13 12:02:00 +0000112612008-08-13 Simon Hausmann <hausmann@webkit.org>
11262
hausmann@webkit.orgd2315e32008-08-13 13:16:15 +000011263 Reviewed by Holger.
11264
11265 Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
11266
11267 Make the formatting of String::format() locale independent through the use of QString::vsprintf.
11268
11269 * platform/text/String.cpp:
11270 (WebCore::String::format):
11271
112722008-08-13 Simon Hausmann <hausmann@webkit.org>
11273
hausmann@webkit.org88c4dc92008-08-13 12:02:00 +000011274 Reviewed by Lars.
11275
11276 Fix QWebFrame::setHtml() not setting the new contents immediately.
11277
11278 Added a setter to the DocumentLoader to toggle the deferred loading of the main
11279 resource when it comes from substitute data.
11280
11281 Disable deferred loading of the main resource when we have valid substitute data,
11282 as used by QWebFrame::setHtml.
11283
11284 * loader/DocumentLoader.h:
11285
mrowe@apple.com6aa36d12008-08-13 09:58:32 +0000112862008-08-13 Mark Rowe <mrowe@apple.com>
11287
11288 Speculative GTK build fix.
11289
11290 * GNUmakefile.am: Add dependency info for JSSVGElementWrapperFactory.cpp.
11291
hausmann@webkit.org298ce5f2008-08-13 09:11:23 +0000112922008-08-13 Thiago Macieira <tjmaciei@trolltech.com>
11293
11294 Reviewed by Simon.
11295
11296 Fix encoding of [ and ] in the host part of the URL
11297
11298 Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
11299 add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
11300 doesn't encode [ and ] when they are found in the host part. That is, the
11301 following URL:
11302 http://[::1]/
11303 is valid and should not be reencoded to:
11304 http://%5b::1%5d/
11305
11306 * platform/qt/KURLQt.cpp:
11307 (WebCore::KURL::operator QUrl):
11308
mitz@apple.come198b012008-08-12 21:49:07 +0000113092008-08-12 Mihnea Ovidenie <mihnea@adobe.com>
11310
11311 Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
11312 Broken HTML object elements cause de-reference of pointer to freed memory.
11313 If we fail to load an image for an object tag and we no longer believe the object tag points at
11314 an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
11315 fall back content.
11316
11317 Reviewed by Dave Hyatt and Alexey Proskuryakov.
11318
11319 Test: http/tests/misc/object-image-error-with-onload.html
11320
11321 * html/HTMLObjectElement.cpp:
11322 (WebCore::HTMLObjectElement::renderFallbackContent):
11323 * page/Frame.cpp:
11324 (WebCore::Frame::Frame):
11325
zimmermann@webkit.org36a02512008-08-12 21:11:17 +0000113262008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
11327
11328 Reviewed by Dave.
11329
11330 Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
11331 Masks are translated, and the mask images are swapped on the y-axis.
11332
11333 Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
11334 is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
11335
11336 Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
11337 the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
11338
11339 * svg/graphics/cg/SVGResourceMaskerCg.mm:
11340 (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
11341
mitz@apple.comf8a98692008-08-12 17:04:42 +0000113422008-08-12 Dan Bernstein <mitz@apple.com>
11343
mitz@apple.com1b7e844f2008-08-12 20:54:12 +000011344 - WebCore part of <rdar://problem/6121636>
11345 Make fast*alloc() abort() on failure and add "try" variants that
11346 return NULL on failure.
11347
11348 Reviewed by Darin Adler.
11349
11350 * platform/Arena.cpp:
11351 (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
11352 result.
11353 * platform/graphics/cg/ImageBufferCG.cpp:
11354 (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
11355
113562008-08-12 Dan Bernstein <mitz@apple.com>
11357
mitz@apple.com1e09cd72008-08-12 18:27:58 +000011358 Reviewed by Darin Adler.
11359
11360 - fix https://bugs.webkit.org/show_bug.cgi?id=19348
11361 <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
11362
11363 Test: fast/frames/frameset-style-recalc.html
11364
11365 * html/HTMLFrameSetElement.cpp:
11366 (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
11367 class implementation after marking for layout.
11368
113692008-08-12 Dan Bernstein <mitz@apple.com>
11370
mitz@apple.comf8a98692008-08-12 17:04:42 +000011371 Reviewed by John Sullivan.
11372
11373 - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
11374
11375 * WebCore.base.exp:
11376 * page/FrameView.cpp:
11377 (WebCore::FrameViewPrivate::FrameViewPrivate):
11378 (WebCore::FrameView::shouldUpdateWhileHidden):
11379 (WebCore::FrameView::setShouldUpdateWhileHidden):
11380 * page/FrameView.h:
11381 * page/Settings.cpp:
11382 * page/Settings.h:
11383
aroben@apple.comeeb8ebb2008-08-12 14:58:51 +0000113842008-08-12 Adam Roben <aroben@apple.com>
11385
11386 Windows build fix
11387
11388 * bindings/js/JSSVGPODTypeWrapper.h: Align
11389 JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
11390 members on 16-byte boundaries to avoid an alignment warning.
11391
zimmermann@webkit.orge1388112008-08-12 10:27:53 +0000113922008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
11393
11394 Reviewed by Oliver.
11395
zimmermann@webkit.org504f2552008-08-12 10:35:09 +000011396 Add new dynamice-update layout tests covering SVGMarkerElement.
11397 Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
11398 Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
11399
11400 Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
11401 svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
11402 svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
11403 svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
11404 svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
11405 svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
11406 svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
11407 svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
11408 svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
11409 svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
11410 svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
11411 svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
11412 svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
11413 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
11414 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
11415
11416 * svg/SVGMarkerElement.cpp:
11417 (WebCore::SVGMarkerElement::SVGMarkerElement):
11418 (WebCore::SVGMarkerElement::parseMappedAttribute):
11419 (WebCore::SVGMarkerElement::svgAttributeChanged):
11420 (WebCore::SVGMarkerElement::childrenChanged):
11421 (WebCore::SVGMarkerElement::setOrientToAuto):
11422 (WebCore::SVGMarkerElement::setOrientToAngle):
11423 (WebCore::SVGMarkerElement::canvasResource):
11424
114252008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
11426
11427 Reviewed by Oliver.
11428
zimmermann@webkit.orge1388112008-08-12 10:27:53 +000011429 Add new dynamic-update layout tests covering SVGImageElement.
11430 Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
11431
11432 Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
11433 svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
11434 svg/dynamic-updates/SVGImageElement-dom-width-attr.html
11435 svg/dynamic-updates/SVGImageElement-dom-x-attr.html
11436 svg/dynamic-updates/SVGImageElement-dom-y-attr.html
11437 svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
11438 svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
11439 svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
11440 svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
11441 svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
11442
11443 * svg/SVGImageElement.cpp:
11444 (WebCore::SVGImageElement::svgAttributeChanged):
11445
timothy@apple.com93114722008-08-12 04:20:25 +0000114462008-08-11 Anthony Ricaud <rik24d@gmail.com>
11447
timothy@apple.com2f2cde32008-08-12 04:28:16 +000011448 Changed Option/Alt-Up or Down in CSS editing when the value is
11449 near zero to jump to the next integer.
11450
11451 Reviewed by Tim Hatcher.
11452
11453 https://bugs.webkit.org/show_bug.cgi?id=20326
11454
11455 * page/inspector/StylesSidebarPane.js:
11456
114572008-08-11 Anthony Ricaud <rik24d@gmail.com>
11458
timothy@apple.com93114722008-08-12 04:20:25 +000011459 Changed the line highlight transition for an easier animation.
11460
11461 Reviewed by Tim Hatcher.
11462
11463 * page/inspector/SourceFrame.js:
11464
timothy@apple.com24a14852008-08-12 03:57:39 +0000114652008-08-11 Keishi Hattori <casey.hattori@gmail.com>
11466
11467 Added support for some Firebug Command Line APIs.
11468
11469 Reviewed by Tim Hatcher.
11470
11471 https://bugs.webkit.org/show_bug.cgi?id=19867
11472 https://bugs.webkit.org/show_bug.cgi?id=19868
11473 https://bugs.webkit.org/show_bug.cgi?id=19869
11474 https://bugs.webkit.org/show_bug.cgi?id=19875
11475 https://bugs.webkit.org/show_bug.cgi?id=19876
11476 https://bugs.webkit.org/show_bug.cgi?id=19880
11477
11478 * page/inspector/Console.js:
11479 (WebInspector.Console.prototype._evalInInspectedWindow):
11480 Create an object on the inspected window that holds the console
11481 command line API functions. This object is used in a with statement
11482 around the typed expression.
11483
zimmermann@webkit.org0350b6d2008-08-12 02:22:26 +0000114842008-08-11 Nikolas Zimmermann <zimmermann@kde.org>
11485
11486 Reviewed by Antti.
11487
11488 Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
11489
11490 JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
11491 failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
11492
11493 Added tests: svg/custom/svg-modify-currentTranslate.html
11494 svg/custom/tearoffs-with-tearoffs.html
11495 svg/custom/immutable-properties.html
11496
11497 Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
11498
11499 * bindings/js/JSSVGPODTypeWrapper.h:
11500 (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
11501 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
11502 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
11503 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
11504 (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
11505 (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
11506 (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
11507 (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
11508 * bindings/scripts/CodeGenerator.pm:
11509 * bindings/scripts/CodeGeneratorJS.pm:
11510 * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
11511 * svg/SVGZoomEvent.idl: SVG specification explicitely demands these attributes to be readonly, even its content.
11512
beidson@apple.com0e772f72008-08-12 00:34:46 +0000115132008-08-11 Brady Eidson <beidson@apple.com>
11514
11515 Reviewed by John and Anders
11516
11517 Fix for <rdar://problem/6141797>
11518
11519 When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
11520 would never have nil data.
11521
11522 When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
11523 semantics with some WebKit applications.
11524
11525 The guarantee was a good one and should be restored.
11526
11527 Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
11528 creates an empty data object in the case of null data for its own purposes.
11529
11530 * loader/SubstituteResource.h:
11531 (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null. This
11532 well help any future subclassers not make this mistake.
11533
11534 * loader/archive/ArchiveResource.cpp:
11535 (WebCore::ArchiveResource::create): Return 0 if the data is null.
11536
simon.fraser@apple.come0d44792008-08-11 22:44:06 +0000115372008-08-11 Simon Fraser <simon.fraser@apple.com>
11538
11539 Reviewed by Dave Hyatt
11540
11541 https://bugs.webkit.org/show_bug.cgi?id=20328
11542 Fix a problem when an 'all' transition transition with more than
11543 one property changing is interrupted, and did some AnimationController
11544 cleanup.
11545
11546 Test: transitions/interrupted-all-transition.html
11547
11548 * page/AnimationController.cpp:
11549 (WebCore::ImplicitAnimation::ImplicitAnimation):
11550 (WebCore::AnimationControllerPrivate::blendProperties):
11551 (WebCore::CompositeAnimation::updateTransitions):
11552 (WebCore::CompositeAnimation::cleanupFinishedAnimations):
11553 (WebCore::CompositeAnimation::setTransitionStartTime):
11554 (WebCore::CompositeAnimation::overrideImplicitAnimations):
11555 (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
11556 (WebCore::ImplicitAnimation::animate):
11557 (WebCore::ImplicitAnimation::onAnimationEnd):
11558 (WebCore::ImplicitAnimation::sendTransitionEvent):
11559 (WebCore::ImplicitAnimation::affectsProperty):
11560 (WebCore::KeyframeAnimation::endAnimation):
11561 (WebCore::KeyframeAnimation::onAnimationEnd):
11562
kmccullough@apple.com4a967c12008-08-11 20:45:19 +0000115632008-08-11 Kevin McCullough <kmccullough@apple.com>
11564
11565 Reviewed by Tim.
11566
11567 - Because console messages have group levels now, newly created messages
11568 that do not specify the level lose their message since the number of
11569 arguments is wrong.
11570
11571 * page/inspector/Console.js:
11572 * page/inspector/Resource.js:
11573
alp@webkit.orgeeb55142008-08-11 19:52:14 +0000115742008-08-11 Alp Toker <alp@nuanti.com>
11575
11576 Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
11577 the opportunity to sort the sources lists.
11578
11579 * GNUmakefile.am:
11580
timothy@apple.com9fe09f82008-08-11 18:48:37 +0000115812008-08-11 Timothy Hatcher <timothy@apple.com>
11582
11583 Speed up the the JavaScript syntax highlighter by generating
11584 the finders only once per script instead of per line.
11585
11586 https://bugs.webkit.org/show_bug.cgi?id=20346
11587
11588 Reviewed by Adam Roben.
11589
11590 * page/inspector/SourceFrame.js:
11591 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
11592 Removed, factored into syntaxHighlightJavascript as an inline function.
11593 (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
11594 Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
11595 Generate the finders before iterating the lines.
11596
aroben@apple.com957d2d32008-08-11 18:31:37 +0000115972008-08-11 Adam Roben <aroben@apple.com>
11598
11599 Windows build fix
11600
11601 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
11602 JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
11603 too.
11604
mitz@apple.com3f0060f2008-08-11 18:04:46 +0000116052008-08-11 Dan Bernstein <mitz@apple.com>
11606
11607 Reviewed by Darin Adler.
11608
11609 - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
11610
11611 Test: fast/css/counters/invalidate-cached-counter-node.html
11612
11613 * rendering/RenderContainer.cpp:
11614 (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
11615 RenderCounters in :before and :after content.
11616 * rendering/RenderContainer.h:
11617 * rendering/RenderCounter.cpp:
11618 (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
11619 to match the RenderObject method.
11620 (WebCore::RenderCounter::invalidate): Added. Resets the cached
11621 CounterNode and invalidates the object's layout and preferred widths.
11622 (WebCore::destroyCounterNodeChildren): Added a call to
11623 invalidateCounters().
11624 * rendering/RenderCounter.h:
11625 * rendering/RenderObject.h:
11626 (WebCore::RenderObject::invalidateCounters):
11627
dino@apple.com2af8c3a2008-08-11 17:24:36 +0000116282008-08-11 Dean Jackson <dino@apple.com>
11629
11630 Implement CSS Animation and Transition Events
11631 https://bugs.webkit.org/show_bug.cgi?id=20337
11632
11633 Implement the events defined in the CSS Animations
11634 and Transitions specifications so code can react
11635 to animations and transitions.
11636
11637 Reviewed by Tim Hatcher and Dave Hyatt.
11638
11639 * DerivedSources.make:
11640 * GNUmakefile.am:
11641 * WebCore.pro:
11642 * WebCore.vcproj/WebCore.vcproj:
11643 * WebCore.xcodeproj/project.pbxproj:
11644 * WebCoreSources.bkl:
11645 Build configs for new files
11646
11647 * bindings/js/JSDOMWindowBase.cpp:
11648 * bindings/js/JSDOMWindowBase.h:
11649 * bindings/js/JSEventCustom.cpp:
11650 * dom/Document.h:
11651 * dom/Event.cpp:
11652 * dom/Event.h:
11653 * dom/EventTarget.cpp:
11654 * dom/EventTargetNode.cpp:
11655 * dom/EventTargetNode.h:
11656 * html/HTMLElement.cpp:
11657 * page/AnimationController.cpp:
11658 do all the new event stuff
11659
11660 * html/HTMLAttributeNames.in:
11661 the onwebkitanimation* and onwebkittransitionend attrs
11662
11663 * dom/WebKitAnimationEvent.cpp: Added.
11664 * dom/WebKitAnimationEvent.h: Added.
11665 * dom/WebKitAnimationEvent.idl: Added.
11666 * dom/WebKitTransitionEvent.cpp: Added.
11667 * dom/WebKitTransitionEvent.h: Added.
11668 * dom/WebKitTransitionEvent.idl: Added.
11669 New files for the events
11670
11671 * manual-tests/transition-events.html: Added.
11672 New testfile
11673
aroben@apple.com3eae8622008-08-11 17:21:23 +0000116742008-08-11 Adam Roben <aroben@apple.com>
11675
11676 Add a ForwardingHeader for wtf/NotFound.h
11677
11678 Rubberstamped by Darin Adler.
11679
11680 * ForwardingHeaders/wtf/NotFound.h: Added.
11681
timothy@apple.com2f5bdf02008-08-11 16:53:30 +0000116822008-08-11 Timothy Hatcher <timothy@apple.com>
11683
11684 Fixes a bug where error bubbles in JavaScript resources would
11685 be clobbered by the syntax highlighter.
11686
11687 https://bugs.webkit.org/show_bug.cgi?id=20345
11688
11689 Reviewed by Adam Roben.
11690
11691 * manual-tests/inspector/resources/script-error.js: Added.
11692 * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
11693 * page/inspector/SourceFrame.js:
11694 (WebInspector.SourceFrame.prototype._addMessageToSource):
11695 Check the nodeType and not the nodeName, this is less fragile.
11696 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
11697 Check if the lastChild is an error bubble, if so remove it before
11698 getting the line's textContent. Add the error bubble back at the end.
11699
mrowe@apple.com4ec50d02008-08-11 05:07:42 +000011700== Rolled over to ChangeLog-2008-08-10 ==