blob: 7645d24d54d18565c1ad3a5f55c39d17ecf64ca4 [file] [log] [blame]
weinig@apple.comf713d132008-09-17 20:16:48 +000012008-09-17 Sam Weinig <sam@webkit.org>
2
3 Fix assert.
4
5 * platform/Widget.cpp:
6 (WebCore::Widget::setParent):
7
hyatt@apple.comd9242e32008-09-17 18:46:31 +000082008-09-17 David Hyatt <hyatt@apple.com>
9
10 Beginnings of Widget refactoring (in order to make the mixing of
11 widgets with and without corresponding native widgets more cross-platform).
12
13 This first patch makes the concept of a parent ScrollView cross-platform.
14
15 Note the similarity of the show/hide methods on the three PluginViews. This
16 will be refactored better in a later patch so that they can all share
17 a base class Widget show/hide method. For now the changes were made
18 simply to be able to bring WidgetWin's setParent method up into Widget.
19
20 Reviewed by Sam Weinig
21
22 * WebCore.base.exp:
23 * platform/ScrollView.h:
24 * platform/Widget.cpp:
25 (WebCore::Widget::init):
26 (WebCore::Widget::setParent):
27 * platform/Widget.h:
28 (WebCore::Widget::isSelfVisible):
29 (WebCore::Widget::isParentVisible):
30 (WebCore::Widget::isVisible):
31 (WebCore::Widget::setParentVisible):
32 (WebCore::Widget::isPluginView):
33 (WebCore::Widget::parent):
34 (WebCore::Widget::handleEvent):
35 (WebCore::Widget::geometryChanged):
36 * platform/gtk/WidgetGtk.cpp:
37 (WebCore::Widget::Widget):
38 * platform/mac/ScrollViewMac.mm:
39 (WebCore::ScrollView::addChild):
40 (WebCore::ScrollView::removeChild):
41 * platform/mac/ScrollbarMac.mm:
42 (WebCore::ScrollbarMac::~ScrollbarMac):
43 * platform/mac/WidgetMac.mm:
44 (WebCore::Widget::Widget):
45 (WebCore::Widget::~Widget):
46 * platform/qt/WidgetQt.cpp:
47 (WebCore::WidgetPrivate::WidgetPrivate):
48 (WebCore::Widget::Widget):
49 (WebCore::Widget::topLevel):
50 * platform/win/ScrollViewWin.cpp:
51 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
52 (WebCore::ScrollView::setAncestorVisible):
53 (WebCore::ScrollView::show):
54 (WebCore::ScrollView::hide):
55 * platform/win/WidgetWin.cpp:
56 (WebCore::Widget::Widget):
57 (WebCore::Widget::setParent):
58 * platform/wx/WidgetWx.cpp:
59 (WebCore::Widget::Widget):
60 * plugins/PluginView.cpp:
61 (WebCore::PluginView::PluginView):
62 * plugins/PluginView.h:
63 * plugins/gtk/PluginViewGtk.cpp:
64 (WebCore::PluginView::show):
65 (WebCore::PluginView::hide):
66 (WebCore::PluginView::setParentVisible):
67 * plugins/qt/PluginViewQt.cpp:
68 (WebCore::PluginView::show):
69 (WebCore::PluginView::hide):
70 (WebCore::PluginView::setParentVisible):
71 * plugins/win/PluginViewWin.cpp:
72 (WebCore::PluginView::show):
73 (WebCore::PluginView::hide):
74 (WebCore::PluginView::setParentVisible):
75
ap@webkit.org18da1a32008-09-17 16:50:22 +0000762008-09-17 Alexey Proskuryakov <ap@webkit.org>
77
78 Reviewed by Adam Roben.
79
80 <rdar://problem/6219577> Spew in console at launch about encoding mappings when running with ICU 4.0
81
82 * platform/text/TextCodecICU.cpp:
83 (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated for new encoding names.
84
vestbo@webkit.orge48e6362008-09-17 13:29:42 +0000852008-09-17 Tor Arne Vestbø <tavestbo@trolltech.com>
86
87 Fix the QtWebKit/Mac build
88
89 * platform/qt/ScrollViewQt.cpp: add include
90
ap@webkit.org18da1a32008-09-17 16:50:22 +0000912008-09-17 David Hyatt <hyatt@apple.com>
hyatt@apple.com0f37fb52008-09-17 08:17:26 +000092
93 Add a #define to control whether or not to use an NSScroller on Mac.
94 This ifdef will allow the new NSView-less NSScroller on Mac to be
95 developed side by side with the current one.
96
97 The new scroller paints a debug red if turned on (although due to
98 Widget issues you won't see anything paint yet).
99
100 Reviewed by olliej
101
102 * platform/Scrollbar.cpp:
103 * platform/Scrollbar.h:
104 * platform/mac/ScrollbarMac.h:
105 * platform/mac/ScrollbarMac.mm:
106 * platform/mac/ScrollbarThemeMac.cpp:
107 (WebCore::ScrollbarThemeMac::paint):
108 * platform/mac/ScrollbarThemeMac.h:
109
alp@webkit.orgf06bac02008-09-17 04:30:12 +00001102008-09-16 Marco Barisione <marco.barisione@collabora.co.uk>
111
112 Reviewed by Alp Toker.
113
114 http://bugs.webkit.org/show_bug.cgi?id=20854
115 [GTK] Windows can be not realized in ScrollView::update
116
117 Do not call gdk_window_invalidate_rect on a non-realized GtkWidget.
118
119 * platform/gtk/ScrollViewGtk.cpp:
120 (WebCore::ScrollView::update):
121
alp@webkit.org226f72a2008-09-17 04:22:02 +00001222008-09-16 Alp Toker <alp@nuanti.com>
123
124 Suggested by Dave Hyatt.
125
126 Build fix and cleanup. Rename ScrollBar to Scrollbar.
127
128 * GNUmakefile.am:
129 * WebCore.pro:
130 * WebCore.vcproj/WebCore.vcproj:
131 * WebCore.xcodeproj/project.pbxproj:
132 * WebCoreSources.bkl:
133 * editing/EditorCommand.cpp:
134 * page/EventHandler.cpp:
135 * page/gtk/EventHandlerGtk.cpp:
136 * page/mac/EventHandlerMac.mm:
137 * page/mac/FrameMac.mm:
138 * page/qt/EventHandlerQt.cpp:
139 * page/wx/EventHandlerWx.cpp:
140 * platform/PopupMenu.h:
141 * platform/ScrollBar.cpp: Removed.
142 * platform/ScrollBar.h: Removed.
143 * platform/Scrollbar.cpp: Copied from WebCore/platform/ScrollBar.cpp.
144 * platform/Scrollbar.h: Copied from WebCore/platform/ScrollBar.h.
145 * platform/gtk/ScrollbarGtk.cpp:
146 (ScrollbarGtk::ScrollbarGtk):
147 * platform/gtk/ScrollbarGtk.h:
148 * platform/mac/ScrollbarMac.h:
149 * platform/qt/ScrollViewQt.cpp:
150 * platform/qt/ScrollbarQt.cpp:
151 * platform/qt/ScrollbarThemeQt.cpp:
152 * platform/win/PlatformScrollBar.h:
153 * platform/win/PopupMenuWin.cpp:
154 * platform/win/ScrollViewWin.cpp:
155 * platform/win/ScrollbarThemeWin.cpp:
156 * platform/wx/ScrollViewWx.cpp:
157 * platform/wx/TemporaryLinkStubs.cpp:
158 * rendering/HitTestResult.cpp:
159 * rendering/RenderLayer.cpp:
160 * rendering/RenderTextControl.cpp:
161
hyatt@apple.com7597c172008-09-17 02:15:08 +00001622008-09-16 David Hyatt <hyatt@apple.com>
163
hyatt@apple.comfde412d2008-09-17 03:49:48 +0000164 Fix Qt build bustage by making moveThumb a member of Scrollbar so that
165 it can be called from ScrollbarQt.
166
167 * platform/ScrollBar.cpp:
168 (WebCore::Scrollbar::moveThumb):
169 (WebCore::Scrollbar::handleMouseMoveEvent):
170 (WebCore::Scrollbar::handleMousePressEvent):
171 * platform/ScrollBar.h:
172 * platform/qt/ScrollViewQt.cpp:
173 * platform/qt/ScrollbarQt.cpp:
174 (WebCore::Scrollbar::handleContextMenuEvent):
175
1762008-09-16 David Hyatt <hyatt@apple.com>
177
hyatt@apple.com4e3b8602008-09-17 03:17:11 +0000178 Eliminate PlatformScrollbar. Mac and Gtk now have subclasses for their
179 native-widget scrollbars (ScrollbarMac and ScrollbarGtk). Other platforms
180 now just use Scrollbar.
181
182 Reviewed by Sam Weinig
183
184 * GNUmakefile.am:
185 * WebCore.pro:
186 * WebCore.vcproj/WebCore.vcproj:
187 * WebCore.xcodeproj/project.pbxproj:
188 * page/mac/FrameMac.mm:
189 * platform/PopupMenu.h:
190 (WebCore::PopupMenu::scrollbar):
191 * platform/ScrollBar.cpp:
192 (WebCore::createNativeScrollbar):
193 * platform/ScrollBar.h:
194 * platform/gtk/PlatformScrollBar.h: Removed.
195 * platform/gtk/PlatformScrollBarGtk.cpp: Removed.
196 * platform/gtk/ScrollbarGtk.cpp: Copied from platform/gtk/PlatformScrollBarGtk.cpp.
197 (gtkScrollEventCallback):
198 (ScrollbarGtk::ScrollbarGtk):
199 (ScrollbarGtk::~ScrollbarGtk):
200 (ScrollbarGtk::updateThumbPosition):
201 (ScrollbarGtk::updateThumbProportion):
202 (ScrollbarGtk::setFrameGeometry):
203 (ScrollbarGtk::geometryChanged):
204 (ScrollbarGtk::gtkValueChanged):
205 * platform/gtk/ScrollbarGtk.h: Copied from platform/gtk/PlatformScrollBar.h.
206 * platform/mac/PlatformScrollBar.h: Removed.
207 * platform/mac/PlatformScrollBarMac.mm: Removed.
208 * platform/mac/ScrollbarMac.h: Copied from platform/mac/PlatformScrollBar.h.
209 * platform/mac/ScrollbarMac.mm: Copied from platform/mac/PlatformScrollBarMac.mm.
210 (-[WebCoreScrollBar initWithScrollbarMac:]):
211 (-[WebCoreScrollBar detachScrollbarMac]):
212 (WebCore::Scrollbar::createNativeScrollbar):
213 (WebCore::ScrollbarMac::ScrollbarMac):
214 (WebCore::ScrollbarMac::~ScrollbarMac):
215 (WebCore::ScrollbarMac::updateThumbPosition):
216 (WebCore::ScrollbarMac::updateThumbProportion):
217 (WebCore::ScrollbarMac::scrollbarHit):
218 * platform/qt/PlatformScrollBar.h: Removed.
219 * platform/qt/PlatformScrollBarQt.cpp: Removed.
220 * platform/qt/ScrollbarQt.cpp: Copied from platform/qt/PlatformScrollBarQt.cpp.
221 (WebCore::Scrollbar::handleContextMenuEvent):
222 * rendering/HitTestResult.cpp:
223 * rendering/RenderLayer.cpp:
224 (WebCore::RenderLayer::createScrollbar):
225 (WebCore::RenderLayer::destroyScrollbar):
226 * rendering/RenderLayer.h:
227 * rendering/RenderListBox.cpp:
228 (WebCore::RenderListBox::~RenderListBox):
229 (WebCore::RenderListBox::updateFromElement):
230 (WebCore::RenderListBox::isPointInOverflowControl):
231 * rendering/RenderObject.h:
232 * rendering/RenderTextControl.cpp:
233
2342008-09-16 David Hyatt <hyatt@apple.com>
235
hyatt@apple.com7597c172008-09-17 02:15:08 +0000236 Make the scrollbar resizer-dodging logic cross-platform in the
237 Scrollbar class.
238
239 Reviewed by Sam Weinig
240
241 * platform/ScrollBar.cpp:
242 (WebCore::Scrollbar::setFrameGeometry):
243 (WebCore::Scrollbar::setParent):
244 (WebCore::Scrollbar::windowClipRect):
245 * platform/ScrollBar.h:
246 * platform/ScrollView.h:
247 (WebCore::ScrollView::windowResizerRect):
248 (WebCore::ScrollView::resizerOverlapsContent):
249 (WebCore::ScrollView::adjustOverlappingScrollbarCount):
250 * platform/Widget.h:
251 (WebCore::Widget::setParent):
252 * platform/mac/WidgetMac.mm:
253 (WebCore::Widget::convertToContainingWindow):
254 * platform/win/PlatformScrollBar.h:
255 * platform/win/PlatformScrollBarWin.cpp:
256
mitz@apple.com6d925202008-09-16 17:34:10 +00002572008-09-16 Dan Bernstein <mitz@apple.com>
258
mitz@apple.comd9462a52008-09-16 17:40:20 +0000259 Reviewed by Darin Adler.
260
261 - fix https://bugs.webkit.org/show_bug.cgi?id=15129
262 <rdar://problem/4644824> adding a new line with DOM does unnecessary additional repaint
263
264 Covered by fast/repaint/4776765.html
265
266 * rendering/RenderBlock.cpp:
267 (WebCore::RenderBlock::layoutBlock): Avoid repainting this object if it
268 did not have layout in the beginning.
269 (WebCore::RenderBlock::layoutBlockChildren): If a child did not have
270 layout in the beginning, repaint it in its new position, to compensate
271 for the above (regardless of whether it "moved").
272 * rendering/RenderObject.cpp:
273 (WebCore::RenderObject::checkForRepaintDuringLayout): Added a comment
274 about generalizing this fix in the future.
275
2762008-09-16 Dan Bernstein <mitz@apple.com>
277
mitz@apple.com6d925202008-09-16 17:34:10 +0000278 Reviewed by Dave Hyatt.
279
280 - fix https://bugs.webkit.org/show_bug.cgi?id=15384
281 Div does not notice when grandparent changes height
282
283 Test: fast/block/basic/quirk-percent-height-grandchild.html
284
285 - fix https://bugs.webkit.org/show_bug.cgi?id=20714
286 Resizing Gmail inbox vertically results in whitespace at the bottom of the window
287
288 Test: fast/replaced/percent-height-in-anonymous-block.html
289
290 Added a two-way mapping between boxes with percentage heights and
291 their non-parent ancestors up to the one the height is computed relative
292 to. In quirks mode (the first bug), this can be any number of containing
293 block with auto height. In strict mode (the second bug) this can be
294 the containing block of an anonymous block containing a replaced
295 element.
296
297 * rendering/RenderBlock.cpp:
298 (WebCore::RenderBlock::~RenderBlock): Added code to remove the all the
299 mapping to/from this block to percentage-height descendants.
300 (WebCore::RenderBlock::layoutBlockChildren): Added code to mark
301 percentage-height descendants (and their containing block ancestry chain
302 up to this block) for layout. This ensures that those descendants whose
303 height depends on the height of this block (or an ancestor) are updated.
304 (WebCore::RenderBlock::addPercentHeightDescendant): Added. Establishes
305 a two-way mapping between this block and the given box.
306 (WebCore::RenderBlock::removePercentHeightDescendant): Added. Removes
307 all the mapping to/from this box.
308 * rendering/RenderBlock.h:
309 * rendering/RenderBox.cpp:
310 (WebCore::RenderBox::setStyle): Added calls to
311 removePercentHeightDescendant() when style changes and the box
312 previously had a percentage height. An exception is when the style
313 change does not require layout, in which case the box still has
314 a percentage height and the mappings are valid. In all other cases,
315 any required mappings will be (re-)established during layout.
316 (WebCore::RenderBox::destroy): Added a call to
317 removePercentHeightDescendant.
318 (WebCore::RenderBox::calcPercentageHeight): Added code that, in quirks
319 mode, if a higher-than-parent containing block is affecting the box's
320 height, creates a mapping between the box and that block.
321 (WebCore::RenderBox::calcReplacedHeightUsing): Changed to skip over
322 anonymous containing blocks, if any, and when that happens, use
323 addPercentHeightDescendant() to ensure that the non-anonymous block
324 is aware of the dependent percent-height box.
325
alp@webkit.org1dbd9a92008-09-16 16:59:18 +00003262008-09-16 Dirk Schulze <vbs85@gmx.de>
327
328 Reviewed by Oliver Hunt and Alp Toker.
329
330 Implemented toDataURL in Cairo. Only PNG support
331 at the moment.
332
333 Qt, Cairo and wx require toDataURL implementations
334 https://bugs.webkit.org/show_bug.cgi?id=17719
335
336 * platform/MIMETypeRegistry.cpp:
337 (WebCore::initializeSupportedImageMIMETypesForEncoding):
338 * platform/graphics/cairo/ImageBufferCairo.cpp:
339 (WebCore::ImageBuffer::ImageBuffer):
340 (WebCore::writeFunction):
341 (WebCore::ImageBuffer::toDataURL):
342
vestbo@webkit.org8963b3c2008-09-16 16:45:20 +00003432008-09-16 Tor Arne Vestbø <tavestbo@trolltech.com>
344
345 Reviewed by Simon.
346
347 Hide unused media element controls in the QtWebKit port
348
349 * platform/qt/html4-adjustments-qt.css
350
hausmann@webkit.orgcd7a1292008-09-16 14:19:16 +00003512008-09-16 Ariya Hidayat <ariya.hidayat@trolltech.com>
352
353 Reviewed by Simon.
354
355 Fix compilation of the Qt scrollbar code.
356
357 * platform/qt/PlatformScrollBarQt.cpp:
358 (WebCore::scPart):
359 (WebCore::styleOptionSlider):
360 (WebCore::thumbLength):
361 (WebCore::pixelPosToRangeValue):
362 (WebCore::PlatformScrollbar::handleContextMenuEvent):
363
treat@webkit.orga35f6b62008-09-16 14:15:29 +00003642008-09-16 Adam Treat <treat@kde.org>
365
366 Reviewed by Anders Carlsson.
367
368 Prevent accesses off of the end of the buffer introduced in r36450
369 and when checking for descriptions of mime. Also, coding style fix.
370
371 * plugins/qt/PluginPackageQt.cpp:
372 (WebCore::PluginPackage::fetchInfo):
373
rwlbuis@webkit.org8f675dd2008-09-16 11:12:52 +00003742008-09-15 Rob Buis <buis@kde.org>
375
376 Reviewed by Eric.
377
378 https://bugs.webkit.org/show_bug.cgi?id=20634
379 SVG transform attribute is ignored by <use> in <clipPath>
380
381 Transform the paths with the local transform when part
382 of a clip path.
383
384 Test: svg/custom/use-clipped-transform.svg
385
386 * svg/SVGClipPathElement.cpp:
387 (WebCore::SVGClipPathElement::canvasResource):
388 * svg/SVGStyledTransformableElement.cpp:
389 (WebCore::SVGStyledTransformableElement::toClipPath):
390 * svg/SVGStyledTransformableElement.h:
391
hyatt@apple.com1cd4bcc2008-09-16 06:53:34 +00003922008-09-15 Dave Hyatt <hyatt@apple.com>
393
394 Convert Qt over to its ScrollbarTheme. Add cross-platform support for jumping the thumb location directly
395 to a pressed location on the track (this is done with the middle mouse on Qt and with Shift-Click on Windows).
396
397 Reviewed by Sam Weinig
398
399 * platform/ScrollBar.cpp:
400 (WebCore::thumbUnderMouse):
401 (WebCore::Scrollbar::autoscrollPressedPart):
402 (WebCore::Scrollbar::startTimerIfNeeded):
403 (WebCore::moveThumb):
404 (WebCore::Scrollbar::handleMouseMoveEvent):
405 (WebCore::Scrollbar::handleMousePressEvent):
406 * platform/ScrollBar.h:
407 (WebCore::Scrollbar::pressedPos):
408 (WebCore::Scrollbar::pixelStep):
409 (WebCore::Scrollbar::setPressedPos):
410 * platform/ScrollbarTheme.h:
411 (WebCore::ScrollbarTheme::thumbPosition):
412 (WebCore::ScrollbarTheme::thumbLength):
413 (WebCore::ScrollbarTheme::trackPosition):
414 (WebCore::ScrollbarTheme::trackLength):
415 * platform/ScrollbarThemeComposite.cpp:
416 (WebCore::ScrollbarThemeComposite::trackPosition):
417 * platform/ScrollbarThemeComposite.h:
418 * platform/qt/PlatformScrollBarQt.cpp:
419 (WebCore::PlatformScrollbar::PlatformScrollbar):
420 (WebCore::):
421 * platform/qt/ScrollbarThemeQt.cpp:
422 (WebCore::styleOptionSlider):
423 (WebCore::ScrollbarThemeQt::hitTest):
424 (WebCore::ScrollbarThemeQt::shouldCenterOnThumb):
425 (WebCore::ScrollbarThemeQt::invalidatePart):
426 (WebCore::ScrollbarThemeQt::thumbPosition):
427 (WebCore::):
428 * platform/qt/ScrollbarThemeQt.h:
429 * platform/win/ScrollbarThemeSafari.cpp:
430 (WebCore::ScrollbarThemeSafari::shouldCenterOnThumb):
431 * platform/win/ScrollbarThemeSafari.h:
432 * platform/win/ScrollbarThemeWin.cpp:
433 (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
434 * platform/win/ScrollbarThemeWin.h:
435
dsmith@webkit.orgb3107b532008-09-16 06:14:22 +00004362008-09-15 David Smith <catfish.man@gmail.com>
437
438 Reviewed by Sam Weinig.
439
440 https://bugs.webkit.org/show_bug.cgi?id=20180
441
442 Cache the result of parsing the an+b expression in :nth-child(an+b). Roughly a 2x speedup for :nth-child on SlickSpeed.
443
444 * GNUmakefile.am: Add CSSNthSelector
445 * WebCore.pro: Add CSSNthSelector
446 * WebCore.vcproj/WebCore.vcproj: Add CSSNthSelector
447 * WebCore.xcodeproj/project.pbxproj: Add CSSNthSelector
448 * css/CSSGrammar.y: Create CSSNthSelectors instead of CSSSelectors for :nth-*
449 * css/CSSNthSelector.cpp: Added.
450 (WebCore::CSSNthSelector::parseNth): Moved from CSSStyleSelector and modified to cache
451 (WebCore::CSSNthSelector::matchNth): Moved from CSSStyleSelector and modified to use the cache
452 * css/CSSNthSelector.h: Added.
453 (WebCore::CSSNthSelector::CSSNthSelector):
454 (WebCore::CSSNthSelector::~CSSNthSelector):
455 * css/CSSParser.cpp:
456 (WebCore::CSSParser::createFloatingNthSelector):
457 * css/CSSParser.h:
458 * css/CSSSelector.h: Use the free bit here to store a flag for CSSNthSelector
459 (WebCore::CSSSelector::CSSSelector):
460 * css/CSSStyleSelector.cpp:
461 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Take advantage of knowing that all :nth-* selectors are CSSNthSelectors
462
pewtermoose@webkit.orgfb4d3fb2008-09-16 02:46:39 +00004632008-09-15 Matt Lilek <webkit@mattlilek.com>
464
465 Reviewed by Tim Hatcher.
466
467 Clean up some inspector JS callbacks to remove an extra return.
468
469 * page/InspectorController.cpp:
470 (WebCore::hideDOMNodeHighlight):
471 (WebCore::loaded):
472 (WebCore::unloading):
473 (WebCore::attach):
474 (WebCore::detach):
475 (WebCore::startDebuggingAndReloadInspectedPage):
476 (WebCore::stopDebugging):
477 (WebCore::debuggerAttached):
478 (WebCore::pauseOnExceptions):
479 (WebCore::pauseInDebugger):
480 (WebCore::resumeDebugger):
481 (WebCore::stepOverStatementInDebugger):
482 (WebCore::stepIntoStatementInDebugger):
483 (WebCore::stepOutOfFunctionInDebugger):
484 (WebCore::isWindowVisible):
485 (WebCore::closeWindow):
486
hyatt@apple.com8e809932008-09-16 02:29:09 +00004872008-09-15 Dave Hyatt <hyatt@apple.com>
488
489 Completely switch Windows scrollbars over to ScrollbarTheme. The Aqua windows scrollbar and native scrollbar
490 now share most of their code.
491
492 Also removing mini size scrollbar support, since it would have crashed Windows had it ever been used, and it
493 also is never used in our code anyway.
494
495 Reviewed by Sam Weinig
496
497 * WebCore.vcproj/WebCore.vcproj:
498 * platform/ScrollTypes.h:
499 (WebCore::):
500 * platform/ScrollbarThemeComposite.cpp:
501 (WebCore::ScrollbarThemeComposite::splitTrack):
502 (WebCore::ScrollbarThemeComposite::thumbLength):
503 (WebCore::ScrollbarThemeComposite::minimumThumbLength):
504 * platform/ScrollbarThemeComposite.h:
505 * platform/mac/PlatformScrollBarMac.mm:
506 (NSControlSizeForScrollBarControlSize):
507 * platform/win/PlatformScrollBar.h:
508 * platform/win/PlatformScrollBarSafari.cpp: Removed.
509 * platform/win/PlatformScrollBarWin.cpp:
510 (WebCore::PlatformScrollbar::PlatformScrollbar):
511 * platform/win/ScrollbarThemeSafari.cpp:
512 (WebCore::ScrollbarTheme::nativeTheme):
513 (WebCore::):
514 (WebCore::scrollbarControlStateFromThemeState):
515 (WebCore::ScrollbarThemeSafari::hasButtons):
516 (WebCore::ScrollbarThemeSafari::hasThumb):
517 (WebCore::buttonRepaintRect):
518 (WebCore::ScrollbarThemeSafari::backButtonRect):
519 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
520 (WebCore::trackRepaintRect):
521 (WebCore::ScrollbarThemeSafari::trackRect):
522 (WebCore::ScrollbarThemeSafari::minimumThumbLength):
523 (WebCore::ScrollbarThemeSafari::paintTrack):
524 (WebCore::ScrollbarThemeSafari::paintButton):
525 (WebCore::ScrollbarThemeSafari::paintThumb):
526 * platform/win/ScrollbarThemeSafari.h:
527 * platform/win/ScrollbarThemeWin.cpp:
528 * platform/win/ScrollbarThemeWin.h:
529
cfleizach@apple.com0ce07032008-09-16 00:17:58 +00005302008-09-15 Chris Fleizach <cfleizach@apple.com>
531
532 Reviewed by Darin Adler, Beth Dakin
533
534 <rdar://problem/4003789> Expose lists as AXList
535 <rdar://problem/5707399> VO: Definition lists not announced in Safari
536
537 Lists are now exposed through AX. On the mac (in SnowLeopard) they use two new subroles
538 AXContentList for <ul>, <ol> and AXDefinitionList for <dl>
539 Inside the definition list, each <dt> "term" has an accessibility description ("term"),
540 as does each <dd> tag ("definition")
541
542 Test: accessibility/lists.html
543
544 * GNUmakefile.am:
545 * WebCore.pro:
546 * WebCore.vcproj/WebCore.vcproj:
547 * WebCore.xcodeproj/project.pbxproj:
548 * WebCoreSources.bkl:
549 * page/AXObjectCache.cpp:
550 * page/AccessibilityList.cpp: Added.
551 * page/AccessibilityList.h: Added.
552 * page/AccessibilityObject.h:
553 * page/AccessibilityRenderObject.cpp:
554 * page/AccessibilityTable.cpp:
555 * page/mac/AccessibilityObjectWrapper.mm:
556 * page/mac/WebCoreViewFactory.h:
557 * platform/LocalizedStrings.h:
558 * platform/mac/LocalizedStringsMac.mm:
559 * platform/qt/Localizations.cpp:
560
zimmermann@webkit.org8cc8ad02008-09-16 00:01:11 +00005612008-09-15 Nikolas Zimmermann <zimmermann@kde.org>
562
563 Reviewed by Eric.
564
565 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20865
566 Prepare HTMLScriptElement & SVGScriptElement unification, and unification of event handling.
567
568 Several renames:
569 dispatchHTMLEvent -> dispatchEventForType
570 setHTMLEventListener -> setEventListenerForType
571 getHTMLEventListener -> eventListenerForType
572 removeHTMLEventListener -> removeEventListenerForType
573 isHTMLEventListener -> isAttachedToEventTargetNode
574 ...
575
576 Similar renames for the dispatch/get/set/*Window*Event functions.
577 Kill JSSVGLazyEventListener and merge with JSLazyEventListener.
578
579 Most important change: Rename setHTMLEventListener to setEventListenerForTypeAndAttribute,
580 as there exists a generic createEventListener() method now, taking care of JSLazyEventListener creation.
581
582 setHTMLEventListener() used createHTMLEventListener() before and was HTML specific.
583 SVG is able to use the code as well now. This affects most files in html/.
584
585 No functional changes.
586
587 * GNUmakefile.am:
588 * WebCore.pro:
589 * WebCore.vcproj/WebCore.vcproj:
590 * WebCore.xcodeproj/project.pbxproj:
591 * bindings/js/JSDOMWindowBase.cpp:
592 (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
593 (WebCore::JSDOMWindowBase::setListener):
594 (WebCore::JSDOMWindowBase::getListener):
595 (WebCore::JSDOMWindowBase::findJSEventListener):
596 (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
597 (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
598 (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
599 (WebCore::JSDOMWindowBase::jsEventListenersAttachedToEventTargetNodes):
600 (WebCore::JSDOMWindowBase::jsUnprotectedEventListenersAttachedToEventTargetNodes):
601 * bindings/js/JSDOMWindowBase.h:
602 * bindings/js/JSEventListener.cpp:
603 (WebCore::JSAbstractEventListener::handleEvent):
604 (WebCore::JSAbstractEventListener::isAttachedToEventTargetNode):
605 (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
606 (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
607 (WebCore::JSEventListener::JSEventListener):
608 (WebCore::JSEventListener::~JSEventListener):
609 (WebCore::JSLazyEventListener::JSLazyEventListener):
610 (WebCore::eventParameterName):
611 (WebCore::JSLazyEventListener::parseCode):
612 (WebCore::getNodeEventListener):
613 * bindings/js/JSEventListener.h:
614 (WebCore::JSAbstractEventListener::JSAbstractEventListener):
615 (WebCore::JSUnprotectedEventListener::create):
616 (WebCore::JSEventListener::create):
617 (WebCore::JSLazyEventListener::):
618 (WebCore::JSLazyEventListener::create):
619 * bindings/js/JSEventTargetNode.cpp:
620 (WebCore::JSEventTargetNode::setListener):
621 (WebCore::JSEventTargetNode::getListener):
622 * bindings/js/JSSVGLazyEventListener.cpp: Removed.
623 * bindings/js/JSSVGLazyEventListener.h: Removed.
624 * bindings/js/ScriptController.cpp:
625 (WebCore::ScriptController::createHTMLEventHandler):
626 (WebCore::ScriptController::createSVGEventHandler):
627 * dom/Document.cpp:
628 (WebCore::Document::setFocusedNode):
629 (WebCore::Document::handleWindowEvent):
630 (WebCore::Document::setWindowEventListenerForType):
631 (WebCore::Document::windowEventListenerForType):
632 (WebCore::Document::removeWindowEventListenerForType):
633 (WebCore::Document::addWindowEventListener):
634 (WebCore::Document::hasWindowEventListener):
635 (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
636 (WebCore::Document::createEventListener):
637 (WebCore::Document::setWindowEventListenerForTypeAndAttribute):
638 * dom/Document.h:
639 * dom/EventListener.h:
640 (WebCore::EventListener::isAttachedToEventTargetNode):
641 * dom/EventTargetNode.cpp:
642 (WebCore::EventTargetNode::dispatchFocusEvent):
643 (WebCore::EventTargetNode::dispatchBlurEvent):
644 (WebCore::EventTargetNode::dispatchEventForType):
645 (WebCore::EventTargetNode::removeEventListenerForType):
646 (WebCore::EventTargetNode::setEventListenerForType):
647 (WebCore::EventTargetNode::setEventListenerForTypeAndAttribute):
648 (WebCore::EventTargetNode::eventListenerForType):
649 * dom/EventTargetNode.h:
650 * dom/XMLTokenizer.cpp:
651 (WebCore::XMLTokenizer::notifyFinished):
652 * editing/ReplaceSelectionCommand.cpp:
653 (WebCore::ReplacementFragment::ReplacementFragment):
654 * html/HTMLBodyElement.cpp:
655 (WebCore::HTMLBodyElement::parseMappedAttribute):
656 * html/HTMLButtonElement.cpp:
657 (WebCore::HTMLButtonElement::parseMappedAttribute):
658 * html/HTMLElement.cpp:
659 (WebCore::HTMLElement::parseMappedAttribute):
660 (WebCore::HTMLElement::checkDTD):
661 * html/HTMLElement.h:
662 * html/HTMLFormControlElement.cpp:
663 (WebCore::HTMLFormControlElement::onChange):
664 * html/HTMLFormElement.cpp:
665 (WebCore::HTMLFormElement::prepareSubmit):
666 (WebCore::HTMLFormElement::reset):
667 (WebCore::HTMLFormElement::parseMappedAttribute):
668 * html/HTMLFrameElementBase.cpp:
669 (WebCore::HTMLFrameElementBase::parseMappedAttribute):
670 * html/HTMLFrameSetElement.cpp:
671 (WebCore::HTMLFrameSetElement::parseMappedAttribute):
672 * html/HTMLImageElement.cpp:
673 (WebCore::HTMLImageElement::parseMappedAttribute):
674 * html/HTMLImageLoader.cpp:
675 (WebCore::HTMLImageLoader::dispatchLoadEvent):
676 * html/HTMLInputElement.cpp:
677 (WebCore::HTMLInputElement::parseMappedAttribute):
678 (WebCore::HTMLInputElement::setValueFromRenderer):
679 (WebCore::HTMLInputElement::onSearch):
680 * html/HTMLMediaElement.cpp:
681 (WebCore::HTMLMediaElement::asyncEventTimerFired):
682 (WebCore::HTMLMediaElement::load):
683 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
684 (WebCore::HTMLMediaElement::setReadyState):
685 (WebCore::HTMLMediaElement::seek):
686 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
687 (WebCore::HTMLMediaElement::willSaveToCache):
688 * html/HTMLObjectElement.cpp:
689 (WebCore::HTMLObjectElement::parseMappedAttribute):
690 * html/HTMLScriptElement.cpp:
691 (WebCore::HTMLScriptElement::parseMappedAttribute):
692 (WebCore::HTMLScriptElement::dispatchLoadEvent):
693 (WebCore::HTMLScriptElement::dispatchErrorEvent):
694 * html/HTMLSelectElement.cpp:
695 (WebCore::HTMLSelectElement::parseMappedAttribute):
696 * html/HTMLTextAreaElement.cpp:
697 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
698 * html/HTMLTokenizer.cpp:
699 (WebCore::HTMLTokenizer::notifyFinished):
700 * page/AccessibilityRenderObject.cpp:
701 (WebCore::AccessibilityRenderObject::mouseButtonListener):
702 * page/EventHandler.cpp:
703 (WebCore::EventHandler::canMouseDownStartSelect):
704 (WebCore::EventHandler::canMouseDragExtendSelect):
705 * page/Frame.cpp:
706 (WebCore::Frame::sendScrollEvent):
707 * page/Page.cpp:
708 (WebCore::networkStateChanged):
709 * rendering/RenderListBox.cpp:
710 (WebCore::RenderListBox::valueChanged):
711 * rendering/RenderTextControl.cpp:
712 (WebCore::RenderTextControl::selectionChanged):
713 * svg/SVGDocumentExtensions.cpp:
714 * svg/SVGDocumentExtensions.h:
715 * svg/SVGElement.cpp:
716 (WebCore::SVGElement::parseMappedAttribute):
717 (WebCore::SVGElement::finishParsingChildren):
718 * svg/SVGElement.h:
719 * svg/SVGSVGElement.cpp:
720 (WebCore::SVGSVGElement::parseMappedAttribute):
721 * svg/SVGSVGElement.h:
722
hyatt@apple.com63739ce2008-09-15 23:44:10 +00007232008-09-15 Dave Hyatt <hyatt@apple.com>
724
725 Convert PlatformScrollbarWin to use ScrollbarTheme for hit testing. PlatformScrollbarQt/Gtk still
726 need to be converted.
727
728 Reviewed by Sam Weinig
729
730 * platform/ScrollBar.cpp:
731 (WebCore::Scrollbar::Scrollbar):
732 (WebCore::Scrollbar::updateThumbPosition):
733 (WebCore::Scrollbar::updateThumbProportion):
734 (WebCore::Scrollbar::autoscrollPressedPart):
735 (WebCore::Scrollbar::startTimerIfNeeded):
736 * platform/ScrollBar.h:
737 * platform/ScrollbarTheme.h:
738 (WebCore::ScrollbarTheme::invalidateParts):
739 * platform/ScrollbarThemeComposite.cpp:
740 (WebCore::ScrollbarThemeComposite::hitTest):
741 (WebCore::ScrollbarThemeComposite::invalidatePart):
742 (WebCore::ScrollbarThemeComposite::thumbPosition):
743 (WebCore::ScrollbarThemeComposite::thumbLength):
744 (WebCore::ScrollbarThemeComposite::trackLength):
745 * platform/ScrollbarThemeComposite.h:
746 * platform/win/PlatformScrollBarSafari.cpp:
747 (WebCore::PlatformScrollbar::PlatformScrollbar):
748 * platform/win/PlatformScrollBarWin.cpp:
749 (WebCore::PlatformScrollbar::PlatformScrollbar):
750
dsmith@webkit.orgaa780ed2008-09-15 23:08:07 +00007512008-09-15 David Smith <catfish.man@gmail.com>
752
753 "Just do it"'d by Mark Rowe
754
755 https://bugs.webkit.org/show_bug.cgi?id=20856
756 Add missing license header
757
758 * dom/NodeRenderStyle.h:
759
dino@apple.combf52b682008-09-15 21:31:43 +00007602008-09-15 Dean Jackson <dino@apple.com>
761
762 Reviewed by Tim Hatcher.
763
dino@apple.com3db0b8f2008-09-15 21:52:23 +0000764 Add default constructor for ShadowData
765 https://bugs.webkit.org/show_bug.cgi?id=20757
766
767 Test: transitions/shadow.html
768
769 * rendering/style/RenderStyle.h:
770
7712008-09-15 Dean Jackson <dino@apple.com>
772
773 Reviewed by Tim Hatcher.
774
dino@apple.com03abdce2008-09-15 21:40:52 +0000775 RenderStyle should update keyframes.
776 http://bugs.webkit.org/show_bug.cgi?id=20756
777
778 * rendering/style/RenderStyle.cpp:
779 (WebCore::StyleRareNonInheritedData::updateKeyframes):
780
7812008-09-15 Dean Jackson <dino@apple.com>
782
783 Reviewed by Tim Hatcher.
784
dino@apple.combf52b682008-09-15 21:31:43 +0000785 Unnecessary ASSERT in ImplicitAnimation destructor.
786 https://bugs.webkit.org/show_bug.cgi?id=20817
787
788 * page/animation/ImplicitAnimation.cpp:
789 (WebCore::ImplicitAnimation::~ImplicitAnimation):
790
treat@webkit.org7e5abc22008-09-15 20:53:49 +00007912008-09-15 Adam Treat <treat@kde.org>
792
793 Reviewed by Simon.
794
795 Fix plugin extension info. It was returning the mimetype where the
796 extension was given.
797
798 * plugins/qt/PluginPackageQt.cpp:
799 (WebCore::PluginPackage::fetchInfo):
800
dino@apple.comecc18dc2008-09-15 20:40:28 +00008012008-09-15 Dean Jackson <dino@apple.com>
802
803 Reviewed by Tim Hatcher
804
805 Coding style violation!!!! Cleanup AnimationBase.cpp
806
807 * page/animation/AnimationBase.cpp:
808 (WebCore::blendFunc):
809
hyatt@apple.comf4a9d932008-09-15 20:03:25 +00008102008-09-15 David Hyatt <hyatt@apple.com>
811
812 Move all hit testing code for scrollbars into the base class. Refactor
813 it to accommodate all platform-specific behaviors using virtual ScrollbarTheme
814 functions.
815
816 No platform is using this code yet. Although it has been moved and compiles
817 (even on Mac), it is not being used on any platform.
818
819 Reviewed by Sam Weinig
820
821 * platform/ScrollBar.cpp:
822 (WebCore::Scrollbar::autoscrollPressedPart):
823 (WebCore::Scrollbar::startTimerIfNeeded):
824 (WebCore::Scrollbar::handleMouseMoveEvent):
825 (WebCore::Scrollbar::handleMouseOutEvent):
826 (WebCore::Scrollbar::handleMouseReleaseEvent):
827 (WebCore::Scrollbar::handleMousePressEvent):
828 * platform/ScrollBar.h:
829 (WebCore::Scrollbar::handleContextMenuEvent):
830 * platform/ScrollbarTheme.h:
831 (WebCore::ScrollbarTheme::hitTest):
832 (WebCore::ScrollbarTheme::invalidateOnMouseEnterExit):
833 (WebCore::ScrollbarTheme::invalidatePart):
834 (WebCore::ScrollbarTheme::shouldCenterOnThumb):
835 (WebCore::ScrollbarTheme::centerOnThumb):
836 (WebCore::ScrollbarTheme::thumbPosition):
837 (WebCore::ScrollbarTheme::thumbLength):
838 (WebCore::ScrollbarTheme::trackLength):
839 (WebCore::ScrollbarTheme::initialAutoscrollTimerDelay):
840 (WebCore::ScrollbarTheme::autoscrollTimerDelay):
841 * platform/Widget.h:
842 (WebCore::Widget::parent):
843 * platform/mac/PlatformScrollBar.h:
844 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
845 (WebCore::PlatformScrollbar::handleMouseOutEvent):
846 (WebCore::PlatformScrollbar::handleMousePressEvent):
847 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
848 * platform/mac/WidgetMac.mm:
849 (WebCore::Widget::convertFromContainingWindow):
850 * platform/win/ScrollbarThemeWin.cpp:
851 (WebCore::ScrollbarThemeWin::invalidateOnMouseEnterExit):
852 * platform/win/ScrollbarThemeWin.h:
853
mitz@apple.comd17dc392008-09-15 18:48:20 +00008542008-09-15 Dan Bernstein <mitz@apple.com>
855
856 Reviewed by Sam Weinig.
857
858 - fix <rdar://problem/5842247> Single long breakable word takes O(n^2) to lay out
859
860 Cache the next breakable position for text nodes in InlineIterator.
861
862 * rendering/bidi.cpp:
863 (WebCore::InlineIterator::InlineIterator):
864 (WebCore::InlineIterator::increment):
865 (WebCore::RenderBlock::findNextLineBreak):
866
simon.fraser@apple.comda604642008-09-15 17:10:48 +00008672008-09-15 Simon Fraser <simon.fraser@apple.com>
868
869 Reviewed by Dan Bernstein
870
871 Fix assertion and integral pixel issue when creating subimages.
872 https://bugs.webkit.org/show_bug.cgi?id=20786
873
874 * platform/graphics/cg/ImageCG.cpp:
875 (WebCore::BitmapImage::draw):
876
vestbo@webkit.orge7eda302008-09-15 12:43:37 +00008772008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
878
879 Reviewed by Simon.
880
881 Implment seek() and clean up and improve debugging output
882
883 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
884 (debugMediaObject):
885 (WebCore::MediaPlayerPrivate::seek):
886 (WebCore::MediaPlayerPrivate::setVolume):
887 (WebCore::MediaPlayerPrivate::setMuted):
888 (WebCore::MediaPlayerPrivate::updateStates):
889 (WebCore::MediaPlayerPrivate::naturalSize):
890 (WebCore::MediaPlayerPrivate::paint):
891 (WebCore::MediaPlayerPrivate::stateChanged):
892 (WebCore::MediaPlayerPrivate::tick):
893
vestbo@webkit.orgaba01e62008-09-15 11:40:22 +00008942008-09-15 Holger Hans Peter Freyther <zecke@selfish.org>
895
896 Reviewed by Simon.
897
898 Remove bogus Q_ASSERTs from the MediaPlayer Phonon implementation
899
900 m_mediaObject, m_audioOutput, m_videoWidget get created in the
901 c'tor and will only be deleted in the c'tor. The Q_ASSERTs would
902 only check if we use the MediaPlayerPrivate after it has been deleted.
903
904 Acked-by: Tor Arne Vestbø <tavestbo@trolltech.com>
905
906 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
907 (WebCore::MediaPlayerPrivate::play):
908 (WebCore::MediaPlayerPrivate::setVolume):
909 (WebCore::MediaPlayerPrivate::updateStates):
910
andersca@apple.com18d62682008-09-15 11:35:22 +00009112008-09-15 Anders Carlsson <andersca@apple.com>
912
913 Reviewed by Maciej.
914
915 <rdar://problem/6163988>
916 https://bugs.webkit.org/show_bug.cgi?id=20457
917 Canvas: createPattern crashes WebKit in WTF::RefPtr<WebCore::Image>::operator!() const + 9 with a 1D pattern
918
919 Check the width and height and throw an exception if any of them are 0.
920
921 * html/CanvasRenderingContext2D.cpp:
922 (WebCore::CanvasRenderingContext2D::createPattern):
923
vestbo@webkit.org3a27e182008-09-15 11:28:59 +00009242008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
925
926 Reviewed by Simon.
927
928 Render media element controls with antialiasing enabled
929
930 * platform/qt/RenderThemeQt.cpp:
931 (WebCore::RenderThemeQt::paintMediaMuteButton):
932 (WebCore::RenderThemeQt::paintMediaPlayButton):
933 (WebCore::RenderThemeQt::paintMediaSliderTrack):
934 (WebCore::RenderThemeQt::paintMediaSliderThumb):
935
vestbo@webkit.org17e4bfc2008-09-15 11:27:25 +00009362008-09-15 Ariya Hidayat <ariya.hidayat@trolltech.com>
937
938 Reviewed by Simon.
939
940 Upon non fatal error, switch to the pause state (so that playback can continue)
941
942 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
943 (WebCore::MediaPlayerPrivate::updateStates):
944
vestbo@webkit.org12a59572008-09-15 11:16:13 +00009452008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
946
947 Reviewed by Simon.
948
vestbo@webkit.org1d1f05e2008-09-15 11:22:05 +0000949 Don't set WTF_USE_JSC in WebCore.pro now that it's set in config.h
950
951 * WebCore.pro:
952
9532008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
954
955 Reviewed by Simon.
956
vestbo@webkit.org12a59572008-09-15 11:16:13 +0000957 Make QtInstance::create() private and fix caching
958
959 * bindings/js/ScriptControllerQt.cpp:
960 (WebCore::ScriptController::createScriptInstanceForWidget):
961 * bridge/qt/qt_instance.cpp:
962 (JSC::Bindings::QtInstance::getQtInstance):
963 (JSC::Bindings::QtInstance::getRuntimeObject):
964 * bridge/qt/qt_instance.h:
965 (JSC::Bindings::QtInstance::create):
966 * bridge/qt/qt_runtime.cpp:
967 (JSC::Bindings::convertQVariantToValue):
968 (JSC::Bindings::QtConnectionObject::execute):
969
dsmith@webkit.orgaba15862008-09-15 08:45:35 +00009702008-09-15 David Smith <catfish.man@gmail.com>
971
972 Reviewed by Dave Hyatt.
973
974 https://bugs.webkit.org/show_bug.cgi?id=20180
975
976 >2x speedup on querySelector[All] with :nth-child by removing the collectRulesOnly argument on SelectorChecker.
977 With collectRulesOnly set to true (the default) an optimization is turned off, and no callers were intentionally leaving it true.
978 querySelector[All] assumed that the default was probably the right way to go, and so ended up being slow.
979
980 * css/CSSStyleSelector.cpp:
981 (WebCore::CSSStyleSelector::CSSStyleSelector):
982 (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
983 * css/CSSStyleSelector.h:
984
hyatt@apple.com065494e2008-09-15 06:33:40 +00009852008-09-14 Dave Hyatt <hyatt@apple.com>
986
987 Refactor PlatformScrollbarWin's painting so that it is now done by ScrollbarThemeWin. PlatformScrollbarSafari
988 is still painting itself (a subsequent patch will move its painting into ScrollbarThemeSafari).
989
990 Reviewed by Sam Weinig
991
992 * platform/ScrollBar.h:
993 (WebCore::Scrollbar::client):
994 (WebCore::Scrollbar::currentPos):
995 (WebCore::Scrollbar::totalSize):
996 * platform/ScrollbarTheme.h:
997 * platform/ScrollbarThemeComposite.cpp:
998 (WebCore::pageForScrollView):
999 (WebCore::ScrollbarThemeComposite::paint):
1000 * platform/ScrollbarThemeComposite.h:
1001 (WebCore::ScrollbarThemeComposite::trackIsSinglePiece):
1002 * platform/win/PlatformScrollBar.h:
1003 * platform/win/PlatformScrollBarSafari.cpp:
1004 * platform/win/PlatformScrollBarWin.cpp:
1005 * platform/win/ScrollbarThemeSafari.h:
1006 (WebCore::ScrollbarThemeSafari::hasButtons):
1007 (WebCore::ScrollbarThemeSafari::hasThumb):
1008 (WebCore::ScrollbarThemeSafari::backButtonRect):
1009 (WebCore::ScrollbarThemeSafari::forwardButtonRect):
1010 (WebCore::ScrollbarThemeSafari::trackRect):
1011 (WebCore::ScrollbarThemeSafari::splitTrack):
1012 (WebCore::ScrollbarThemeSafari::paintTrack):
1013 (WebCore::ScrollbarThemeSafari::paintButton):
1014 (WebCore::ScrollbarThemeSafari::paintThumb):
1015 * platform/win/ScrollbarThemeWin.cpp:
1016 (WebCore::isRunningOnVistaOrLater):
1017 (WebCore::checkAndInitScrollbarTheme):
1018 (WebCore::ScrollbarThemeWin::ScrollbarThemeWin):
1019 (WebCore::ScrollbarThemeWin::themeChanged):
1020 (WebCore::ScrollbarThemeWin::hasThumb):
1021 (WebCore::ScrollbarThemeWin::backButtonRect):
1022 (WebCore::ScrollbarThemeWin::forwardButtonRect):
1023 (WebCore::ScrollbarThemeWin::trackRect):
1024 (WebCore::ScrollbarThemeWin::splitTrack):
1025 (WebCore::ScrollbarThemeWin::paintTrack):
1026 (WebCore::ScrollbarThemeWin::paintButton):
1027 (WebCore::gripperRect):
1028 (WebCore::paintGripper):
1029 (WebCore::ScrollbarThemeWin::paintThumb):
1030 (WebCore::ScrollbarThemeWin::thumbPosition):
1031 (WebCore::ScrollbarThemeWin::thumbLength):
1032 (WebCore::ScrollbarThemeWin::trackLength):
1033 * platform/win/ScrollbarThemeWin.h:
1034 (WebCore::ScrollbarThemeWin::hasButtons):
1035 (WebCore::ScrollbarThemeWin::trackIsSinglePiece):
1036
timothy@apple.comd91172c2008-09-15 05:38:00 +000010372008-09-14 Anthony Ricaud <rik24d@gmail.com>
1038
1039 Moving all resource graphs under the same container for future scalable feature.
1040 This is a speedup on resize but maybe a loss on changing the sorting function.
1041
1042 https://bugs.webkit.org/show_bug.cgi?id=20555
1043
1044 Reviewed by Timothy Hatcher.
1045
1046 * page/inspector/ResourcesPanel.js: Added a container for all resource graphs.
1047 Added WebInspector.ResourceGraph. No more _updateGraphBars on resize.
1048 * page/inspector/inspector.css: Edited corresponding rules and removed unnecessaries.
1049
ap@webkit.orga14074b2008-09-15 04:52:44 +000010502008-09-14 Alexey Proskuryakov <ap@webkit.org>
1051
1052 Reviewed by Maciej Stachowiak.
1053
1054 https://bugs.webkit.org/show_bug.cgi?id=20738
1055 compareBoundaryPoints gives incorrect results
1056
1057 Test: fast/dom/Range/compareBoundaryPoints-2.html
1058
1059 * dom/Range.cpp: (WebCore::Range::compareBoundaryPoints): Correct meanings of START_TO_END
1060 and END_TO_START.
1061 * page/DOMSelection.cpp: (WebCore::DOMSelection::addRange): Updated for this change.
1062
mjs@apple.com285bdcf2008-09-15 02:55:16 +000010632008-09-14 Maciej Stachowiak <mjs@apple.com>
1064
1065 Unreviewed build fix.
1066
mjs@apple.comcbb31e52008-09-15 03:10:35 +00001067 Trying again.
1068
1069 * bindings/js/JSQuarantinedObjectWrapper.cpp:
1070 (WebCore::JSQuarantinedObjectWrapper::hasInstance):
1071
10722008-09-14 Maciej Stachowiak <mjs@apple.com>
1073
1074 Unreviewed build fix.
1075
mjs@apple.com285bdcf2008-09-15 02:55:16 +00001076 Blind attempt to fix build. Correct parameters for hasInstance.
1077
1078 * bindings/js/JSQuarantinedObjectWrapper.cpp:
1079 (WebCore::JSQuarantinedObjectWrapper::hasInstance):
1080 * bindings/js/JSQuarantinedObjectWrapper.h:
1081
mitz@apple.come85f7362008-09-15 02:23:24 +000010822008-09-14 Dan Bernstein <mitz@apple.com>
1083
1084 Rubber-stamped by Sam Weinig.
1085
1086 - revert <http://trac.webkit.org/changeset/36382> because it exposed
1087 <https://bugs.webkit.org/show_bug.cgi?id=20846> and resulted in crashes
1088 on Tiger.
1089
1090 * platform/graphics/mac/FontCacheMac.mm:
1091 (WebCore::FontCache::getFontDataForCharacters):
1092 (WebCore::FontCache::getLastResortFallbackFont):
1093
hyatt@apple.comf18feec2008-09-15 00:56:11 +000010942008-09-14 Dave Hyatt <hyatt@apple.com>
1095
1096 Add a new ScrollbarThemeComposite base class that is shared by ScrollbarThemeSafari and
1097 ScrollbarThemeWin. Any scrollbar that wants to render by ScrollbarPart can subclass from this
1098 theme.
1099
1100 Reviewed by Sam Weinig
1101
1102 * WebCore.vcproj/WebCore.vcproj:
1103 * platform/win/ScrollbarThemeSafari.h:
1104 * platform/win/ScrollbarThemeWin.h:
1105
alp@webkit.orgd694e942008-09-15 00:20:15 +000011062008-09-14 Alp Toker <alp@nuanti.com>
1107
1108 https://bugs.webkit.org/show_bug.cgi?id=20320
1109 [GTK] A white rectangle is visible behind widgets with rounded corners
1110
1111 Sync bundled gtk2drawing.c to the latest version from Mozilla (coding
1112 style exempt).
1113
1114 Requested by Michael Monreal.
1115
1116 * platform/gtk/RenderThemeGtk.cpp:
1117 (WebCore::RenderThemeGtk::RenderThemeGtk):
1118 * platform/gtk/gtk2drawing.c:
1119 (moz_gtk_set_widget_name):
1120 (ensure_window_widget):
1121 (setup_widget_prototype):
1122 (ensure_button_arrow_widget):
1123 (moz_gtk_get_combo_box_inner_button):
1124 (moz_gtk_get_combo_box_button_inner_widgets):
1125 (ensure_combo_box_widgets):
1126 (moz_gtk_get_combo_box_entry_inner_widgets):
1127 (moz_gtk_get_combo_box_entry_arrow):
1128 (ensure_combo_box_entry_widgets):
1129 (ensure_toolbar_widget):
1130 (ensure_tooltip_widget):
1131 (ensure_menu_bar_widget):
1132 (ensure_menu_bar_item_widget):
1133 (ensure_menu_popup_widget):
1134 (ensure_menu_item_widget):
1135 (ensure_image_menu_item_widget):
1136 (ensure_menu_separator_widget):
1137 (ensure_check_menu_item_widget):
1138 (ensure_tree_header_cell_widget):
1139 (ensure_scrolled_window_widget):
1140 (moz_gtk_button_paint):
1141 (moz_gtk_init):
1142 (moz_gtk_button_get_inner_border):
1143 (moz_gtk_toggle_paint):
1144 (calculate_button_inner_rect):
1145 (calculate_arrow_rect):
1146 (moz_gtk_scrollbar_button_paint):
1147 (moz_gtk_scrollbar_thumb_paint):
1148 (moz_gtk_caret_paint):
1149 (moz_gtk_entry_paint):
1150 (moz_gtk_treeview_paint):
1151 (moz_gtk_tree_header_cell_paint):
1152 (moz_gtk_combo_box_paint):
1153 (moz_gtk_downarrow_paint):
1154 (moz_gtk_combo_box_entry_button_paint):
1155 (moz_gtk_toolbar_paint):
1156 (moz_gtk_tab_scroll_arrow_paint):
1157 (moz_gtk_menu_bar_paint):
1158 (moz_gtk_menu_item_paint):
1159 (moz_gtk_get_widget_border):
1160 (moz_gtk_get_combo_box_entry_button_size):
1161 (moz_gtk_get_tab_scroll_arrow_size):
1162 (moz_gtk_get_downarrow_size):
1163 (moz_gtk_images_in_menus):
1164 (moz_gtk_widget_paint):
1165 (moz_gtk_shutdown):
1166 * platform/gtk/gtkdrawing.h:
1167
hyatt@apple.com3ab48302008-09-14 23:55:16 +000011682008-09-14 David Hyatt <hyatt@apple.com>
1169
1170 Convert Mac, Gtk, wx and Qt over to the new ScrollbarTheme for
1171 painting. Mac and Gtk themes don't do anything and just let the
1172 underlying widget paint. Qt now uses the theme to paint. wx doesn't
1173 do anything yet.
1174
1175 Reviewed by Sam Weinig
1176
1177 * platform/ScrollBar.cpp:
1178 (WebCore::Scrollbar::paint):
1179 * platform/ScrollBar.h:
1180 (WebCore::Scrollbar::value):
1181 (WebCore::Scrollbar::visibleSize):
1182 (WebCore::Scrollbar::maximum):
1183 (WebCore::Scrollbar::lineStep):
1184 (WebCore::Scrollbar::pageStep):
1185 (WebCore::Scrollbar::pixelStep):
1186 (WebCore::Scrollbar::pressedPart):
1187 (WebCore::Scrollbar::hoveredPart):
1188 (WebCore::Scrollbar::theme):
1189 * platform/ScrollbarTheme.h:
1190 (WebCore::ScrollbarTheme::paint):
1191 (WebCore::ScrollbarTheme::scrollbarThickness):
1192 (WebCore::ScrollbarTheme::supportsControlTints):
1193 (WebCore::ScrollbarTheme::themeChanged):
1194 * platform/gtk/PlatformScrollBar.h:
1195 * platform/gtk/PlatformScrollBarGtk.cpp:
1196 * platform/mac/PlatformScrollBar.h:
1197 * platform/mac/PlatformScrollBarMac.mm:
1198 * platform/qt/PlatformScrollBar.h:
1199 * platform/qt/PlatformScrollBarQt.cpp:
1200 * platform/qt/ScrollbarThemeQt.cpp:
1201 (WebCore::styleOptionSlider):
1202 * platform/qt/ScrollbarThemeQt.h:
1203 (WebCore::ScrollbarThemeQt::paint):
1204 * platform/win/PlatformScrollBarSafari.cpp:
1205 (WebCore::PlatformScrollbar::paint):
1206 * platform/win/ScrollbarThemeSafari.h:
1207 (WebCore::ScrollbarThemeSafari::supportsControlTints):
1208 * platform/wx/PlatformScrollBar.h:
1209 * platform/wx/TemporaryLinkStubs.cpp:
1210 (PlatformScrollbar::~PlatformScrollbar):
1211
weinig@apple.comcb93e262008-09-14 21:36:11 +000012122008-09-14 Sam Weinig <sam@webkit.org>
1213
weinig@apple.com6ef2b872008-09-14 22:15:28 +00001214 Qt build fix.
1215
1216 * platform/qt/PlatformScrollBarQt.cpp:
1217
12182008-09-14 Sam Weinig <sam@webkit.org>
1219
weinig@apple.com064861a2008-09-14 22:12:49 +00001220 Reviewed by Mark Rowe.
1221
1222 Remove extraneous semicolons.
1223
1224 * bindings/scripts/CodeGeneratorObjC.pm:
1225 * html/HTMLLinkElement.cpp:
1226 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
1227 * html/HTMLScriptElement.cpp:
1228 (WebCore::HTMLScriptElement::charsetAttributeValue):
1229 (WebCore::HTMLScriptElement::typeAttributeValue):
1230 * platform/graphics/qt/GradientQt.cpp:
1231 (WebCore::Gradient::platformGradient):
1232 * platform/qt/ScrollViewQt.cpp:
1233 (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
1234 * platform/win/ScrollViewWin.cpp:
1235 (WebCore::ScrollView::updateScrollbars):
1236 * rendering/RenderBlock.cpp:
1237 (WebCore::RenderBlock::paintEllipsisBoxes):
1238 * svg/SVGPathSegList.cpp:
1239 (WebCore::SVGPathSegList::toPathData):
1240
12412008-09-14 Sam Weinig <sam@webkit.org>
1242
weinig@apple.comcb93e262008-09-14 21:36:11 +00001243 Qt build fix.
1244
weinig@apple.com31311a62008-09-14 22:00:15 +00001245 * platform/qt/ScrollViewQt.cpp:
1246 (WebCore::ScrollView::updateScrollbars):
1247
12482008-09-14 Sam Weinig <sam@webkit.org>
1249
1250 Qt build fix.
1251
weinig@apple.comcb93e262008-09-14 21:36:11 +00001252 * platform/qt/PlatformScrollBarQt.cpp:
1253 (WebCore::PlatformScrollbar::PlatformScrollbar):
1254 (WebCore::PlatformScrollbar::paint):
1255
jmalonzo@webkit.org65e836c2008-09-14 01:57:13 +000012562008-09-13 Jan Michael Alonzo <jmalonzo@webkit.org>
1257
1258 Gtk build fix, not reviewed.
1259
1260 * platform/gtk/PlatformScrollBarGtk.cpp:
1261 (PlatformScrollbar::PlatformScrollbar):
1262 * platform/gtk/ScrollViewGtk.cpp:
1263 (WebCore::ScrollView::updateScrollbars):
1264
hyatt@apple.comd62f5bf2008-09-14 00:32:19 +000012652008-09-13 Dave Hyatt <hyatt@apple.com>
1266
hyatt@apple.com21ab7c62008-09-14 01:26:22 +00001267 Remove scrollbar's setRect method. Clients can now just call setFrameGeometry (the corresponding Widget) method
1268 to set the dimensions of a scrollbar.
1269
1270 Reviewed by Sam Weinig
1271
1272 * platform/ScrollBar.h:
1273 * platform/gtk/PlatformScrollBar.h:
1274 * platform/gtk/PlatformScrollBarGtk.cpp:
1275 (PlatformScrollbar::setFrameGeometry):
1276 * platform/gtk/ScrollViewGtk.cpp:
1277 (WebCore::ScrollView::updateScrollbars):
1278 * platform/mac/PlatformScrollBarMac.mm:
1279 * platform/qt/PlatformScrollBarQt.cpp:
1280 * platform/qt/ScrollViewQt.cpp:
1281 (WebCore::ScrollView::updateScrollbars):
1282 * platform/win/PlatformScrollBar.h:
1283 * platform/win/PlatformScrollBarSafari.cpp:
1284 (WebCore::PlatformScrollbar::PlatformScrollbar):
1285 (WebCore::PlatformScrollbar::setFrameGeometry):
1286 * platform/win/PlatformScrollBarWin.cpp:
1287 (WebCore::PlatformScrollbar::PlatformScrollbar):
1288 (WebCore::PlatformScrollbar::setFrameGeometry):
1289 * platform/win/PopupMenuWin.cpp:
1290 (WebCore::PopupWndProc):
1291 * platform/win/ScrollViewWin.cpp:
1292 (WebCore::ScrollView::updateScrollbars):
1293 * platform/wx/PlatformScrollBar.h:
1294 * platform/wx/TemporaryLinkStubs.cpp:
1295 (PlatformScrollbar::updateThumbProportion):
1296 * rendering/RenderLayer.cpp:
1297 (WebCore::RenderLayer::positionOverflowControls):
1298 * rendering/RenderListBox.cpp:
1299 (WebCore::RenderListBox::paintScrollbar):
1300
13012008-09-13 Dave Hyatt <hyatt@apple.com>
1302
hyatt@apple.comed9485a2008-09-14 01:06:57 +00001303 Remove setEnabled() from all Scrollbar classes that were just using their Widget base class methods.
1304
1305 Reviewed by Sam Weinig
1306
1307 * platform/ScrollBar.h:
1308 * platform/gtk/PlatformScrollBar.h:
1309 * platform/gtk/PlatformScrollBarGtk.cpp:
1310 * platform/mac/PlatformScrollBar.h:
1311 * platform/mac/PlatformScrollBarMac.mm:
1312 * platform/win/PlatformScrollBar.h:
1313 * platform/win/PlatformScrollBarSafari.cpp:
1314 * platform/win/PlatformScrollBarWin.cpp:
1315 * platform/wx/PlatformScrollBar.h:
1316 * platform/wx/TemporaryLinkStubs.cpp:
1317 (PlatformScrollbar::~PlatformScrollbar):
1318
13192008-09-13 Dave Hyatt <hyatt@apple.com>
1320
hyatt@apple.com64d98032008-09-14 00:58:29 +00001321 Remove width()/height() from Scrollbar now that it derives from Widget. Remove width()/height() from
1322 all PlatformScrollbar subclasses that just called the Widget base class versions of those methods.
1323
1324 Reviewed by Sam Weinig
1325
1326 * platform/ScrollBar.h:
1327 * platform/gtk/PlatformScrollBar.h:
1328 * platform/gtk/PlatformScrollBarGtk.cpp:
1329 * platform/mac/PlatformScrollBar.h:
1330 * platform/mac/PlatformScrollBarMac.mm:
1331 * platform/win/PlatformScrollBarSafari.cpp:
1332 * platform/win/PlatformScrollBarWin.cpp:
1333 * platform/wx/PlatformScrollBar.h:
1334 * platform/wx/TemporaryLinkStubs.cpp:
1335 (PlatformScrollbar::~PlatformScrollbar):
1336
13372008-09-13 Dave Hyatt <hyatt@apple.com>
1338
hyatt@apple.comd62f5bf2008-09-14 00:32:19 +00001339 Move stopTimerIfNeeded out of PlatformScrollbar destructors and into Scrollbar.
1340
1341 Reviewed by Sam Weinig
1342
1343 * platform/ScrollBar.cpp:
1344 (WebCore::Scrollbar::~Scrollbar):
1345 * platform/ScrollBar.h:
1346 * platform/qt/PlatformScrollBarQt.cpp:
1347 (WebCore::PlatformScrollbar::~PlatformScrollbar):
1348 * platform/win/PlatformScrollBarSafari.cpp:
1349 (WebCore::PlatformScrollbar::~PlatformScrollbar):
1350 * platform/win/PlatformScrollBarWin.cpp:
1351 (WebCore::PlatformScrollbar::~PlatformScrollbar):
1352
hyatt@apple.coma3c52492008-09-13 23:57:08 +000013532008-09-13 David Hyatt <hyatt@apple.com>
1354
1355 Move maximum() from Qt's PlatformScrollbar to be a cross-platform
1356 function on Scrollbar. Fixes Qt build bustage.
1357
1358 Reviewed by Sam Weinig
1359
1360 * platform/ScrollBar.h:
1361 (WebCore::Scrollbar::orientation):
1362 (WebCore::Scrollbar::value):
1363 (WebCore::Scrollbar::maximum):
1364 * platform/qt/PlatformScrollBar.h:
1365
mitz@apple.comb3d22882008-09-13 23:06:59 +000013662008-09-13 Dan Bernstein <mitz@apple.com>
1367
1368 Reviewed by Sam Weinig.
1369
1370 - use the LastResort font for missing glyphs instead of showing the
1371 primary font's missing glyph
1372
1373 Test: platform/mac/fast/text/last-resort-font.html
1374
1375 * platform/graphics/mac/FontCacheMac.mm:
1376 (WebCore::FontCache::getFontDataForCharacters): Changed to return the
1377 last resort font if a substitute font cannot be found.
1378 (WebCore::FontCache::getLastResortFallbackFont): Removed an outdated
1379 comment (the user's preferred standard font is included in the search
1380 thanks to code in FontCache::getFontData()) and changed to return the
1381 LastResort font.
1382
hyatt@apple.com0c378c72008-09-13 22:59:05 +000013832008-09-13 Dave Hyatt <hyatt@apple.com>
1384
1385 This patch adds ScrollbarTheme to the build. ScrollbarTheme is similar to RenderTheme (but for
1386 scrollbars only). For now ScrollbarTheme just handles returning the size of scrollbars. Subsequent
1387 patches will move rendering and hit testing functionality into this class.
1388
1389 Implemented ScrollbarTheme subclasses for four ports (Mac, Win, Gtk, Qt). The wxWidgets port does not
1390 implement scrollbars yet, so I added a temporary link stub to keep things compiling on wx.
1391
1392 Reviewed by Sam Weinig
1393
1394 * GNUmakefile.am:
1395 * WebCore.pro:
1396 * WebCore.vcproj/WebCore.vcproj:
1397 * platform/ScrollBar.cpp:
1398 (WebCore::Scrollbar::Scrollbar):
1399 * platform/ScrollBar.h:
1400 * platform/ScrollbarTheme.h: Added.
1401 (WebCore::ScrollbarTheme::~ScrollbarTheme):
1402 (WebCore::ScrollbarTheme::scrollbarThickness):
1403 (WebCore::ScrollbarTheme::themeChanged):
1404 * platform/gtk/ScrollbarThemeGtk.cpp: Added.
1405 (WebCore::ScrollbarTheme::nativeTheme):
1406 (WebCore::ScrollbarThemeGtk::~ScrollbarThemeGtk):
1407 (WebCore::ScrollbarThemeGtk::scrollbarThickness):
1408 * platform/gtk/ScrollbarThemeGtk.h: Added.
1409 * platform/mac/PlatformScrollBar.h:
1410 * platform/mac/ScrollbarThemeMac.cpp: Added.
1411 (WebCore::ScrollbarTheme::nativeTheme):
1412 (WebCore::):
1413 (WebCore::ScrollbarThemeMac::~ScrollbarThemeMac):
1414 (WebCore::ScrollbarThemeMac::scrollbarThickness):
1415 * platform/mac/ScrollbarThemeMac.h: Added.
1416 * platform/qt/PlatformScrollBarQt.cpp:
1417 * platform/qt/ScrollbarThemeQt.cpp: Added.
1418 (WebCore::ScrollbarTheme::nativeTheme):
1419 (WebCore::ScrollbarThemeQt::~ScrollbarThemeQt):
1420 (WebCore::ScrollbarThemeQt::scrollbarThickness):
1421 * platform/qt/ScrollbarThemeQt.h: Added.
1422 * platform/win/PlatformScrollBar.h:
1423 * platform/win/PlatformScrollBarSafari.cpp:
1424 * platform/win/PlatformScrollBarWin.cpp:
1425 * platform/win/PopupMenuWin.cpp:
1426 (WebCore::PopupMenu::calculatePositionAndSize):
1427 * platform/win/ScrollViewWin.cpp:
1428 (WebCore::ScrollView::updateScrollbars):
1429 (WebCore::ScrollView::themeChanged):
1430 * platform/win/ScrollbarThemeSafari.cpp: Added.
1431 (WebCore::ScrollbarTheme::nativeTheme):
1432 (WebCore::):
1433 (WebCore::ScrollbarThemeSafari::~ScrollbarThemeSafari):
1434 (WebCore::ScrollbarThemeSafari::scrollbarThickness):
1435 * platform/win/ScrollbarThemeSafari.h: Added.
1436 * platform/win/ScrollbarThemeWin.cpp: Added.
1437 (WebCore::ScrollbarTheme::nativeTheme):
1438 (WebCore::ScrollbarThemeWin::~ScrollbarThemeWin):
1439 (WebCore::ScrollbarThemeWin::scrollbarThickness):
1440 (WebCore::ScrollbarThemeWin::themeChanged):
1441 * platform/win/ScrollbarThemeWin.h: Added.
1442 * platform/wx/TemporaryLinkStubs.cpp:
1443 (ScrollbarTheme::nativeTheme):
1444 * rendering/RenderLayer.cpp:
1445 (WebCore::scrollCornerRect):
1446 * rendering/RenderTextControl.cpp:
1447 (WebCore::RenderTextControl::calcHeight):
1448 (WebCore::RenderTextControl::calcPrefWidths):
1449
cfleizach@apple.comd26c2762008-09-13 21:05:18 +000014502008-09-13 Chris Fleizach <cfleizach@apple.com>
1451
1452 Reviewed by Timothy Hatcher.
1453
1454 <rdar://problem/5060439> Web elements should have an AXTopLevelUIElement
1455
1456 * page/mac/AccessibilityObjectWrapper.mm:
1457 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1458
mitz@apple.com6307c9f2008-09-13 20:27:37 +000014592008-09-13 Dan Bernstein <mitz@apple.com>
1460
1461 Reviewed by Timothy Hatcher.
1462
1463 - fix <rdar://problem/6171280> REGRESSION (r35667): Assertion failure in WebCore::FrameView::scheduleRelayout() when releasing a page with counters from the b/f cache
1464
1465 No regression test because the back/forward cache is disabled in DumpRenderTree
1466
1467 * rendering/RenderContainer.cpp:
1468 (WebCore::RenderContainer::invalidateCounters): Bail out if the document
1469 is being destroyed.
1470
kevino@webkit.org1e178ee2008-09-13 18:48:39 +000014712008-09-13 Kevin Ollivier <kevino@theolliviers.com>
1472
1473 wx build fixes for new methods recently introduced.
1474
1475 * platform/graphics/wx/AffineTransformWx.cpp:
1476 (WebCore::AffineTransform::AffineTransform):
1477 (WebCore::AffineTransform::setMatrix):
1478 (WebCore::AffineTransform::setA):
1479 (WebCore::AffineTransform::setB):
1480 (WebCore::AffineTransform::setC):
1481 (WebCore::AffineTransform::setD):
1482 (WebCore::AffineTransform::setE):
1483 (WebCore::AffineTransform::setF):
1484 * platform/wx/LocalizedStringsWx.cpp:
1485 (WebCore::AXDefinitionListTermText):
1486 (WebCore::AXDefinitionListDefinitionText):
1487
hyatt@apple.com30ed5442008-09-13 18:39:58 +000014882008-09-12 Dave Hyatt <hyatt@apple.com>
1489
1490 Move the member variables of PlatformScrollbar up into Scrollbar. Move autoscroll timer handling
1491 up into scrollbar. Make sure a bunch of cross-platform code now just uses "Scrollbar" instead of
1492 "PlatformScrollbar."
1493
1494 Reviewed by Sam Weinig
1495
1496 * WebCore.vcproj/WebCore.vcproj:
1497 * editing/EditorCommand.cpp:
1498 * page/EventHandler.cpp:
1499 (WebCore::EventHandler::selectCursor):
1500 (WebCore::EventHandler::handleMousePressEvent):
1501 (WebCore::EventHandler::handleMouseMoveEvent):
1502 * page/EventHandler.h:
1503 * page/MouseEventWithHitTestResults.cpp:
1504 (WebCore::MouseEventWithHitTestResults::scrollbar):
1505 * page/MouseEventWithHitTestResults.h:
1506 * page/gtk/EventHandlerGtk.cpp:
1507 (WebCore::EventHandler::passMousePressEventToScrollbar):
1508 * page/mac/EventHandlerMac.mm:
1509 (WebCore::EventHandler::passMousePressEventToScrollbar):
1510 * page/qt/EventHandlerQt.cpp:
1511 (WebCore::EventHandler::passMousePressEventToScrollbar):
1512 * page/win/EventHandlerWin.cpp:
1513 (WebCore::EventHandler::passMousePressEventToScrollbar):
1514 * page/wx/EventHandlerWx.cpp:
1515 (WebCore::EventHandler::passMousePressEventToScrollbar):
1516 * platform/PopupMenu.h:
1517 * platform/ScrollBar.cpp:
1518 (WebCore::Scrollbar::Scrollbar):
1519 (WebCore::Scrollbar::autoscrollTimerFired):
1520 (WebCore::Scrollbar::autoscrollPressedPart):
1521 (WebCore::Scrollbar::startTimerIfNeeded):
1522 (WebCore::Scrollbar::stopTimerIfNeeded):
1523 (WebCore::Scrollbar::pressedPartScrollDirection):
1524 (WebCore::Scrollbar::pressedPartScrollGranularity):
1525 * platform/ScrollBar.h:
1526 (WebCore::Scrollbar::handleMousePressEvent):
1527 (WebCore::Scrollbar::invalidatePart):
1528 (WebCore::Scrollbar::thumbUnderMouse):
1529 * platform/ScrollView.h:
1530 * platform/ScrollbarClient.h: Added.
1531 (WebCore::ScrollbarClient::~ScrollbarClient):
1532 * platform/gtk/ScrollViewGtk.cpp:
1533 (WebCore::ScrollView::scrollbarUnderMouse):
1534 * platform/qt/PlatformScrollBar.h:
1535 * platform/qt/PlatformScrollBarQt.cpp:
1536 (WebCore::PlatformScrollbar::PlatformScrollbar):
1537 (WebCore::scrollbarPart):
1538 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
1539 (WebCore::PlatformScrollbar::handleMouseOutEvent):
1540 (WebCore::PlatformScrollbar::handleMousePressEvent):
1541 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
1542 * platform/qt/ScrollViewQt.cpp:
1543 (WebCore::ScrollView::scrollbarUnderMouse):
1544 (WebCore::ScrollView::wheelEvent):
1545 * platform/win/PlatformScrollBar.h:
1546 * platform/win/PlatformScrollBarSafari.cpp:
1547 (WebCore::PlatformScrollbar::PlatformScrollbar):
1548 * platform/win/PlatformScrollBarWin.cpp:
1549 (WebCore::PlatformScrollbar::PlatformScrollbar):
1550 * platform/win/ScrollViewWin.cpp:
1551 (WebCore::ScrollView::scrollbarUnderMouse):
1552 * rendering/HitTestResult.cpp:
1553 (WebCore::HitTestResult::setScrollbar):
1554 * rendering/HitTestResult.h:
1555 (WebCore::HitTestResult::scrollbar):
1556 * rendering/RenderLayer.cpp:
1557 (WebCore::RenderLayer::hitTestOverflowControls):
1558 * rendering/RenderLayer.h:
1559 * rendering/RenderListBox.h:
1560
sfalken@apple.comb4e407e2008-09-13 02:59:00 +000015612008-09-12 Steve Falkenburg <sfalken@apple.com>
1562
1563 Fix Mac build.
1564
1565 * css/CSSStyleSelector.cpp:
1566 (WebCore::getTransformOperationType):
1567
dino@apple.comf937dc62008-09-13 00:45:39 +000015682008-09-12 Chris Marrin <cmarrin@apple.com>
1569
1570 Reviewed by Dave Hyatt.
1571
1572 Make transform animation behavior match spec
1573 https://bugs.webkit.org/show_bug.cgi?id=20770
1574
1575 Tests: transitions/transform-op-list-match.html
1576 transitions/transform-op-list-no-match.html
1577
1578 * css/CSSStyleSelector.cpp:
1579 * css/CSSStyleSelector.h:
1580 * page/animation/AnimationBase.cpp:
1581 * page/animation/AnimationBase.h:
1582 * page/animation/ImplicitAnimation.cpp:
1583 * page/animation/ImplicitAnimation.h:
1584 * page/animation/KeyframeAnimation.cpp:
1585 * page/animation/KeyframeAnimation.h:
1586 * rendering/RenderLayer.cpp:
1587 * rendering/style/RenderStyle.cpp:
1588 * rendering/style/RenderStyle.h:
1589
timothy@apple.comab374dd2008-09-12 22:43:38 +000015902008-09-12 Ojan Vafai <ojan@chromium.org>
1591
1592 Properly escape contents of links added to the inspector.
1593 For now, just build the link with the DOM and get the
1594 outerHTML. Eventually, we probably just want to do
1595 this entirely with the DOM.
1596
1597 Reviewed by Timothy Hatcher.
1598
1599 https://bugs.webkit.org/show_bug.cgi?id=20684
1600
1601 * manual-tests/inspector/escape-links.html: Added.
1602 * page/inspector/StylesSidebarPane.js:
1603 * page/inspector/inspector.js:
1604 * page/inspector/utilities.js:
1605
adele@apple.com87fb3c72008-09-12 22:14:13 +000016062008-09-12 Adele Peterson <adele@apple.com>
1607
1608 Reviewed by John Sullivan and Kevin McCullough.
1609
1610 Fix for <rdar://problem/6216951> REGRESSION (r36000?): Crash due to infinite recursion into EventHandler::hitTestResultAtPoint() with disconnected frames
1611
1612 * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
1613 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
1614 cause infinite recursion. This change checks that we're not already on the main frame before hit testing again.
1615
kmccullough@apple.combdba2e32008-09-12 22:08:56 +000016162008-09-12 Kevin McCullough <kmccullough@apple.com>
1617
1618 RS by Tim .
1619
1620 Re-introducing the code since it was not the cause of the crash.
1621 See r36343.
1622
1623 * rendering/RenderObject.cpp:
1624 (WebCore::RenderObject::canBeProgramaticallyScrolled):
1625 * rendering/RenderObject.h:
1626
dino@apple.comf712ed02008-09-12 21:54:57 +000016272008-09-12 Chris Marrin <cmarrin@apple.com>
1628
1629 Reviewed by Dave Hyatt.
1630
1631 When changing one animation in a list, don't reset other animations
1632 https://bugs.webkit.org/show_bug.cgi?id=20675
1633
1634 Test: animations/change-one-anim.html
1635
1636 * page/animation/AnimationBase.cpp:
1637 (WebCore::AnimationBase::getNumProperties):
1638 * page/animation/AnimationBase.h:
1639 * page/animation/AnimationController.cpp:
1640 * page/animation/CompositeAnimation.cpp:
1641 (WebCore::CompositeAnimation::updateKeyframeAnimations):
1642 * page/animation/CompositeAnimation.h:
1643 * page/animation/ImplicitAnimation.cpp:
1644 * page/animation/KeyframeAnimation.cpp:
1645 * page/animation/KeyframeAnimation.h:
1646 (WebCore::KeyframeAnimation::setIndex):
1647
beidson@apple.com521e2b52008-09-12 18:40:03 +000016482008-09-12 Brady Eidson <beidson@apple.com>
1649
1650 Reviewed by Mitz Pettel
1651
1652 Fix the ASSERT and failure in webarchive/archive-empty-frame-source.html
1653
1654 * loader/DocumentLoader.cpp:
1655 (WebCore::DocumentLoader::mainResource): Further restoration of original WebArchive behavior.
1656 Subresources can never be created from nil data, but there is always a MainResource, whether
1657 or not there's any data. So in the case where the main resource has no data, fake it for the
1658 sake of creating the ArchiveResource.
1659
hyatt@apple.com818ffe92008-09-12 18:37:23 +000016602008-09-12 Dave Hyatt <hyatt@apple.com>
1661
1662 Preparation for major scrollbar rearchitecture. Eliminate the concept of non-widget based
1663 scrollbars (which we never supported anyway). Make Scrollbar derive from Widget directly.
1664 Remove all the isWidget and hasPlatformScrollbars guards.
1665
1666 Reviewed by Tim Hatcher
1667
1668 * platform/ScrollBar.h:
1669 * platform/gtk/PlatformScrollBar.h:
1670 * platform/mac/PlatformScrollBar.h:
1671 * platform/qt/PlatformScrollBar.h:
1672 * platform/win/PlatformScrollBar.h:
1673 * platform/win/ScrollViewWin.cpp:
1674 (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
1675 (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
1676 * platform/wx/PlatformScrollBar.h:
1677 * rendering/RenderLayer.cpp:
1678 (WebCore::RenderLayer::horizontalScrollbarWidget):
1679 (WebCore::RenderLayer::verticalScrollbarWidget):
1680 (WebCore::RenderLayer::createScrollbar):
1681 (WebCore::RenderLayer::destroyScrollbar):
1682 * rendering/RenderListBox.cpp:
1683 (WebCore::RenderListBox::~RenderListBox):
1684 (WebCore::RenderListBox::updateFromElement):
1685 (WebCore::RenderListBox::isPointInOverflowControl):
1686
mitz@apple.com0bef1302008-09-12 18:22:07 +000016872008-09-12 Dan Bernstein <mitz@apple.com>
1688
1689 Reviewed by Sam Weinig.
1690
1691 - https://bugs.webkit.org/show_bug.cgi?id=20793 clean up page/animation
1692
1693 * page/animation/AnimationController.cpp:
1694 * page/animation/AnimationController.h:
1695 * page/animation/CompositeAnimation.cpp:
1696 * page/animation/CompositeAnimation.h:
1697 * page/animation/ImplicitAnimation.cpp:
1698 * page/animation/ImplicitAnimation.h:
1699 * page/animation/KeyframeAnimation.cpp:
1700 * page/animation/KeyframeAnimation.h:
1701
timothy@apple.com43203432008-09-12 04:44:40 +000017022008-09-11 Timothy Hatcher <timothy@apple.com>
1703
1704 Add a renderedImage method to DOMNode to get an image
1705 of the rendering for the node and it's descendants.
1706
1707 <rdar://problem/5849349> Would like API to create
1708 an image for a DOM node
1709
1710 Reviewed by Oliver Hunt.
1711
1712 * bindings/objc/DOM.mm:
1713 (-[DOMNode renderedImage]): Call Frame::nodeImage.
1714 * bindings/objc/DOMPrivate.h:
1715 * page/Frame.h:
1716 * page/mac/FrameMac.mm:
1717 (WebCore::Frame::nodeImage):
1718
dino@apple.com9300a0b2008-09-12 00:36:31 +000017192008-09-08 Chris Marrin <cmarrin@apple.com>
1720
1721 Reviewed by Dave Hyatt
1722
1723 Need to support comma separated list of key times in keyframes selectors
1724 https://bugs.webkit.org/show_bug.cgi?id=20680
1725
1726 Test: animations/keyframes-comma-separated.html
1727
1728 * css/CSSGrammar.y:
1729 * css/CSSParser.cpp:
1730 (WebCore::CSSParser::createKeyframeRule):
1731 * css/CSSParser.h:
1732 * css/CSSStyleSelector.cpp:
1733 (WebCore::CSSStyleSelector::addKeyframeStyle):
1734 * css/WebKitCSSKeyframeRule.cpp:
1735 (WebCore::WebKitCSSKeyframeRule::WebKitCSSKeyframeRule):
1736 (WebCore::WebKitCSSKeyframeRule::cssText):
1737 (WebCore::WebKitCSSKeyframeRule::parseKeyString):
1738 * css/WebKitCSSKeyframeRule.h:
1739 (WebCore::WebKitCSSKeyframeRule::keyText):
1740 (WebCore::WebKitCSSKeyframeRule::setKeyText):
1741 (WebCore::WebKitCSSKeyframeRule::getKeys):
1742 * css/WebKitCSSKeyframesRule.cpp:
1743 (WebCore::WebKitCSSKeyframesRule::append):
1744 (WebCore::WebKitCSSKeyframesRule::insertRule):
1745 (WebCore::WebKitCSSKeyframesRule::deleteRule):
1746 (WebCore::WebKitCSSKeyframesRule::findRule):
1747 (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
1748 * css/WebKitCSSKeyframesRule.h:
1749 * page/animation/AnimationBase.cpp:
1750 (WebCore::AnimationBase::blendProperties):
1751
kmccullough@apple.com0f9f23a2008-09-11 22:57:09 +000017522008-09-11 Kevin McCullough <kmccullough@apple.com>
1753
1754 RS by Tim.
1755
1756 Reverting because this caused a crash.
1757
1758 * rendering/RenderObject.cpp:
1759 (WebCore::RenderObject::canBeProgramaticallyScrolled):
1760 (WebCore::RenderObject::hasScrollableView):
1761 * rendering/RenderObject.h:
1762
dino@apple.com19853b32008-09-11 21:59:08 +000017632008-09-11 Dean Jackson <dino@apple.com>
1764
1765 Reviewed by Dan Bernstein.
1766
1767 Fix assertion on transition property "none"
1768 https://bugs.webkit.org/show_bug.cgi?id=20751
1769
1770 Test: transitions/transition-end-event-set-none.html
1771
1772 * page/animation/CompositeAnimation.cpp:
1773 (WebCore::CompositeAnimation::updateTransitions):
1774
dsmith@webkit.orge6ea48f2008-09-11 21:41:33 +000017752008-09-11 David Smith <catfish.man@gmail.com>
1776
dsmith@webkit.org08103d92008-09-11 21:54:30 +00001777 Rubber-stamped by mitzpettel.
1778
1779 Remove an accidentally added extra file.
1780
1781 * WebCore: Removed.
1782
17832008-09-11 David Smith <catfish.man@gmail.com>
1784
dsmith@webkit.orge6ea48f2008-09-11 21:41:33 +00001785 Reviewed by Darin
1786
1787 https://bugs.webkit.org/show_bug.cgi?id=20180
1788
1789 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.
1790
1791 * WebCore.xcodeproj/project.pbxproj: Add NodeRenderStyle.h
1792 * css/CSSStyleSelector.cpp: include NodeRenderStyle.h
1793 * dom/Element.cpp: include NodeRenderStyle.h
1794 * dom/Node.cpp: Remove the definition of renderStyle()
1795 (WebCore::Node::nonRendererRenderStyle):
1796 * dom/Node.h: Make renderStyle() nonvirtual and add nonRendererRenderStyle()
1797 * dom/NodeRenderStyle.h: Added.
1798 (WebCore::Node::renderStyle): Inline the common case of this, call nonRendererRenderStyle for the part that needed to be virtual
1799 * html/HTMLOptGroupElement.cpp: include NodeRenderStyle.h
1800 * html/HTMLOptGroupElement.h:
1801 (WebCore::HTMLOptGroupElement::nonRendererRenderStyle): override to return m_style
1802 * html/HTMLOptionElement.cpp: include NodeRenderStyle.h
1803 * html/HTMLOptionElement.h:
1804 (WebCore::HTMLOptionElement::nonRendererRenderStyle): override to return m_style
1805 * rendering/RenderListBox.cpp: include NodeRenderStyle.h
1806 * rendering/RenderMenuList.cpp: include NodeRenderStyle.h
1807 * svg/SVGUseElement.cpp: include NodeRenderStyle.h
1808
kmccullough@apple.com38d3b0f2008-09-11 17:39:12 +000018092008-09-11 Kevin McCullough <kmccullough@apple.com>
1810
1811 Reviewed by Adele and Tim.
1812
1813 <rdar://problem/6100597> REGRESSION: clicking on search results in Web
1814 Inspector does not scroll to the line of the results (20167)
1815 - This was put in by Max to fix auto scrolling but is not correct for
1816 the whole web: rdar://problem/6213098
1817
1818 * rendering/RenderObject.cpp:
1819 (WebCore::RenderObject::canBeProgramaticallyScrolled):
1820 * rendering/RenderObject.h:
1821
cfleizach@apple.com6a3b1452008-09-11 16:24:09 +000018222008-09-11 Chris Fleizach <cfleizach@apple.com>
1823
1824 Reviewed by Beth Dakin
1825
1826 <rdar://problem/6210511> AX: if a frame has a title, that should be reported as the AXWebArea's title
1827
1828 Test: accessibility/frame-with-title.html
1829
1830 * page/AccessibilityRenderObject.cpp:
1831 (WebCore::AccessibilityRenderObject::accessibilityDescription):
1832
hausmann@webkit.orge8f8ffd2008-09-11 07:34:42 +000018332008-09-11 Dirk Schulze <vbs85@gmx.de>
1834
1835 Reviewed by Simon.
1836
hausmann@webkit.orgea57c432008-09-11 08:03:07 +00001837 Fixed stroke() and strokeRect() to support gradients
1838 and patterns on Qt.
1839
1840 [Qt] Canvas stroke don't work for gradients and patterns
1841 [https://bugs.webkit.org/show_bug.cgi?id=20749]
1842
1843 * platform/graphics/qt/GraphicsContextQt.cpp:
1844 (WebCore::GraphicsContext::strokePath):
1845 (WebCore::GraphicsContext::strokeRect):
1846
18472008-09-11 Dirk Schulze <vbs85@gmx.de>
1848
1849 Reviewed by Simon.
1850
hausmann@webkit.orgc11e3b72008-09-11 07:37:42 +00001851 https://bugs.webkit.org/show_bug.cgi?id=20729
1852
1853 Fixed canvas gradients for Qt
1854
1855 [Qt] Canvas gradients don't work as expected
1856 [https://bugs.webkit.org/show_bug.cgi?id=20729]
1857
1858 * platform/graphics/qt/GradientQt.cpp:
1859 (WebCore::Gradient::platformGradient):
1860
18612008-09-11 Dirk Schulze <vbs85@gmx.de>
1862
1863 Reviewed by Simon.
1864
hausmann@webkit.orge8f8ffd2008-09-11 07:34:42 +00001865 https://bugs.webkit.org/show_bug.cgi?id=20568
1866
1867 Add support for patterns to Qt.
1868
1869 * platform/graphics/qt/PatternQt.cpp:
1870 (WebCore::Pattern::createPlatformPattern):
1871
mitz@apple.com442c5892008-09-10 18:21:14 +000018722008-09-10 Dan Bernstein <mitz@apple.com>
1873
1874 Reviewed by Sam Weinig.
1875
1876 - clean up AnimationBase
1877
1878 * page/animation/AnimationBase.cpp:
1879 * page/animation/AnimationBase.h:
1880 * page/animation/CompositeAnimation.cpp:
1881 * page/animation/ImplicitAnimation.cpp:
1882 * page/animation/ImplicitAnimation.h:
1883 * page/animation/KeyframeAnimation.cpp:
1884 * page/animation/KeyframeAnimation.h:
1885
ap@webkit.orgbaf12872008-09-10 16:42:10 +000018862008-09-10 Alexey Proskuryakov <ap@webkit.org>
1887
1888 Reviewed by Darin Adler.
1889
1890 https://bugs.webkit.org/show_bug.cgi?id=20741
1891 REGRESSION: ISO-8859-8-I encoding is registered incorrectly
1892
1893 Turns out that there were no real behavior changes for 8859-8, as it was only a debug-only
1894 check to ignore this specific registration that was failing. Yet, I decided to add a bunch of
1895 tests for ISO-8859-8 encoding aliases, as we handle them in a quite complicated manner.
1896
1897 I also found and fixed a potential crasher for non-Mac ports.
1898
1899 Tests: fast/encoding/hebrew/8859-8-e.html
1900 fast/encoding/hebrew/8859-8-i.html
1901 fast/encoding/hebrew/8859-8.html
1902 fast/encoding/hebrew/csISO88598I.html
1903 fast/encoding/hebrew/hebrew.html
1904 fast/encoding/hebrew/iso-ir-138.html
1905 fast/encoding/hebrew/logical.html
1906
1907 * platform/text/TextEncodingRegistry.cpp: (WebCore::checkExistingName): Check for iso-8859-8
1908 (case-insensitively, because different versions of ICU report this MIME name in different
1909 case).
1910
1911 * platform/text/TextCodecICU.cpp:
1912 (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated some comments.
1913 (WebCore::TextCodecICU::registerExtendedCodecs): Try both MIME and IANA names here, too.
1914 There are four names in ICU that only have MIME names (x-mac-* ones), so we could end up
1915 with an encoding map entry, but no codec for these. This was not an issue on the Mac, as
1916 we also support these via TEC (which we should stop doing), but on Windows, this would
1917 likely crash.
1918
hyatt@apple.com0197e6b2008-09-10 05:29:46 +000019192008-09-09 Dave Hyatt <hyatt@apple.com
1920
1921 Resurrect PlatformScrollbarWin.
1922
1923 Reviewed by Adam Roben
1924
1925 * WebCore.vcproj/WebCore.vcproj:
1926 * platform/win/PlatformScrollBarWin.cpp:
1927 (WebCore::isRunningOnVistaOrLater):
1928 (WebCore::checkAndInitScrollbarTheme):
1929 (WebCore::PlatformScrollbar::PlatformScrollbar):
1930 (WebCore::PlatformScrollbar::invalidateTrack):
1931 (WebCore::PlatformScrollbar::invalidatePart):
1932 (WebCore::PlatformScrollbar::paint):
1933 (WebCore::PlatformScrollbar::hasButtons):
1934 (WebCore::PlatformScrollbar::hasThumb):
1935 (WebCore::PlatformScrollbar::backButtonRect):
1936 (WebCore::PlatformScrollbar::forwardButtonRect):
1937 (WebCore::PlatformScrollbar::trackRect):
1938 (WebCore::PlatformScrollbar::gripperRect):
1939 (WebCore::PlatformScrollbar::thumbLength):
1940 (WebCore::PlatformScrollbar::paintButton):
1941 (WebCore::PlatformScrollbar::paintTrack):
1942 (WebCore::PlatformScrollbar::paintThumb):
1943 (WebCore::PlatformScrollbar::paintGripper):
1944 (WebCore::PlatformScrollbar::hitTest):
1945 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
1946 (WebCore::PlatformScrollbar::handleMouseOutEvent):
1947 (WebCore::PlatformScrollbar::themeChanged):
1948
cwzwarich@webkit.org8a334572008-09-10 03:22:04 +000019492008-09-09 Cameron Zwarich <cwzwarich@uwaterloo.ca>
1950
1951 Reviewed by Maciej Stachowiak.
1952
1953 Bug 20759: Remove MacroAssembler
1954 <https://bugs.webkit.org/show_bug.cgi?id=20759>
1955
1956 Make the necessary changes to ForwardingHeaders to remove
1957 MacroAssembler.
1958
1959 * ForwardingHeaders/masm/IA32MacroAsm.h: Removed.
1960 * ForwardingHeaders/masm/MacroAssembler.h: Removed.
1961 * ForwardingHeaders/masm/X86Assembler.h: Added.
1962
alp@webkit.org509e3d42008-09-10 01:26:20 +000019632008-09-09 Alp Toker <alp@nuanti.com>
1964
1965 Reviewed by Dave Hyatt.
1966
1967 https://bugs.webkit.org/show_bug.cgi?id=16792
1968 [GTK] Fails to render Japanese/Chinese text with simple path
1969
1970 https://bugs.webkit.org/show_bug.cgi?id=16942
1971 [GTK] Oddities in font selection and fall back
1972
1973 https://bugs.webkit.org/show_bug.cgi?id=16862
1974 [GTK] Custom fonts hard-coded to use grayscale antialiasing and no hinting
1975
1976 GTK+ font fixes and enhancements.
1977
1978 Implement font fallback for the simple FontConfig-based text path and
1979 improve the Pango-based complex text path to make use of requested
1980 font properties and available font selection.
1981
1982 Add text shadow support to the complex path.
1983
1984 * platform/graphics/gtk/FontCacheGtk.cpp:
1985 (WebCore::FontCache::getFontDataForCharacters):
1986 (WebCore::FontCache::getSimilarFontPlatformData):
1987 * platform/graphics/gtk/FontGtk.cpp:
1988 (WebCore::setPangoAttributes):
1989 (WebCore::Font::drawComplexText):
1990 (WebCore::getDefaultPangoLayout):
1991 (WebCore::Font::floatWidthForComplexText):
1992 (WebCore::Font::offsetForPositionForComplexText):
1993 (WebCore::Font::selectionRectForComplexText):
1994 * platform/graphics/gtk/FontPlatformData.h:
1995 (WebCore::FontPlatformData::FontPlatformData):
1996 (WebCore::FontPlatformData::hash):
1997 * platform/graphics/gtk/FontPlatformDataGtk.cpp:
1998 (WebCore::FontPlatformData::FontPlatformData):
1999 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
2000 (WebCore::SimpleFontData::platformDestroy):
2001
hyatt@apple.com33f37f62008-09-09 23:51:46 +000020022008-09-09 Dave Hyatt <hyatt@apple.com>
2003
2004 Make the Windows classic case work again. Overlap in slider constants and other constants broke
2005 the push state for buttons and checkboxes. Make sure to check the RenderObject's appearance
2006 value to make sure it's really a slider thumb to resolve this conflict.
2007
2008 Reviewed by Adam Roben
2009
2010 * rendering/RenderThemeWin.cpp:
2011 (WebCore::drawControl):
2012
dino@apple.com442d0652008-09-09 23:36:56 +000020132008-09-05 Chris Marrin <cmarrin@apple.com>
2014
2015 Reviewed by Sam Weinig.
2016
2017 Need to handle the case when 0% or 100% keyframe is omitted
2018 https://bugs.webkit.org/show_bug.cgi?id=20679
2019
2020 Tests: animations/keyframes-from-missing.html
2021 animations/keyframes-to-missing.html
2022
2023 * css/CSSStyleSelector.cpp:
2024 (WebCore::CSSStyleSelector::addKeyframeStyle):
2025
hyatt@apple.com419d0ad2008-09-09 23:11:14 +000020262008-09-09 Dave Hyatt <hyatt@apple.com>
2027
2028 Resurrect Safari's original RenderThemeWin and bring it up to date with ToT. Having a current
2029 RenderThemeWin that does not have any Skia dependencies should provide a good basis for a potential
2030 merge of Google Chrome's RenderThemeWin (to help us see where the Skia stuff can be cut and to see
2031 what changes have been made as compared with the old RenderThemeWin).
2032
2033 Fix CSS2 system fonts to properly set both the rendering mode (so that they properly pick up GDI vs. CG
2034 text rendering modes) and the printer font setting (so that OS X system fonts properly pick up screen
2035 vs. printer advancement rounding).
2036
2037 Reviewed by Adam/Sam
2038
2039 * css/CSSStyleSelector.cpp:
2040 (WebCore::CSSStyleSelector::applyProperty):
2041 * platform/graphics/Icon.h:
2042 (WebCore::Icon::create):
2043 * rendering/RenderThemeWin.cpp:
2044 (WebCore::RenderThemeWin::RenderThemeWin):
2045 (WebCore::RenderThemeWin::~RenderThemeWin):
2046 (WebCore::RenderThemeWin::buttonTheme):
2047 (WebCore::RenderThemeWin::textFieldTheme):
2048 (WebCore::RenderThemeWin::menuListTheme):
2049 (WebCore::RenderThemeWin::sliderTheme):
2050 (WebCore::RenderThemeWin::close):
2051 (WebCore::RenderThemeWin::themeChanged):
2052 (WebCore::RenderThemeWin::supportsHover):
2053 (WebCore::fillFontDescription):
2054 (WebCore::RenderThemeWin::systemFont):
2055 (WebCore::RenderThemeWin::supportsFocus):
2056 (WebCore::RenderThemeWin::determineClassicState):
2057 (WebCore::RenderThemeWin::determineState):
2058 (WebCore::RenderThemeWin::determineSliderThumbState):
2059 (WebCore::RenderThemeWin::getClassicThemeData):
2060 (WebCore::RenderThemeWin::getThemeData):
2061 (WebCore::drawControl):
2062 (WebCore::RenderThemeWin::paintButton):
2063 (WebCore::RenderThemeWin::paintTextField):
2064 (WebCore::RenderThemeWin::paintMenuList):
2065 (WebCore::RenderThemeWin::adjustMenuListStyle):
2066 (WebCore::RenderThemeWin::adjustMenuListButtonStyle):
2067 (WebCore::RenderThemeWin::paintMenuListButton):
2068 (WebCore::RenderThemeWin::paintSliderTrack):
2069 (WebCore::RenderThemeWin::paintSliderThumb):
2070 (WebCore::RenderThemeWin::adjustSliderThumbSize):
2071 (WebCore::RenderThemeWin::paintSearchField):
2072 (WebCore::RenderThemeWin::adjustSearchFieldStyle):
2073 (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
2074 (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle):
2075 (WebCore::RenderThemeWin::adjustSearchFieldDecorationStyle):
2076 (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle):
2077 (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
2078 (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle):
2079 (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
2080 * rendering/RenderThemeWin.h:
2081 (WebCore::ThemeData::ThemeData):
2082 (WebCore::RenderThemeWin::paintSearchFieldDecoration):
2083 (WebCore::RenderThemeWin::adjustButtonStyle):
2084 (WebCore::RenderThemeWin::adjustTextFieldStyle):
2085 (WebCore::RenderThemeWin::adjustTextAreaStyle):
2086
dino@apple.comd511ce52008-09-09 19:50:25 +000020872008-09-09 Dean Jackson <dino@apple.com>
2088
2089 Reviewed by Sam Weinig.
2090
2091 Document::createEvent missing cases for animation and
2092 transition events.
2093 https://bugs.webkit.org/show_bug.cgi?id=20734
2094
2095 Test: transitions/transition-end-event-create.html
2096 Test: animations/animation-events-create.html
2097
2098 * dom/Document.cpp:
2099 (WebCore::Document::createEvent):
2100 - add the two cases
2101
mitz@apple.com1da7b882008-09-09 18:12:06 +000021022008-09-09 Dan Bernstein <mitz@apple.com>
2103
mitz@apple.com54921562008-09-09 18:48:34 +00002104 - Tiger build fix
2105
2106 * WebCore.Tiger.exp:
2107 * WebCore.base.exp:
2108 * platform/mac/WebCoreSystemInterface.h:
2109 * platform/mac/WebCoreSystemInterface.mm:
2110
21112008-09-09 Dan Bernstein <mitz@apple.com>
2112
mitz@apple.com1da7b882008-09-09 18:12:06 +00002113 Reviewed by Darin Adler.
2114
2115 - WebCore part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard
2116
2117 * WebCore.Tiger.exp:
2118 * WebCore.base.exp:
2119 * platform/graphics/SimpleFontData.h:
2120 * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
2121 (WebCore::GlyphPage::fill):
2122 * platform/graphics/mac/SimpleFontDataMac.mm:
2123 (WebCore::initFontData):
2124 (WebCore::SimpleFontData::platformInit):
2125 (WebCore::SimpleFontData::platformDestroy):
2126 * platform/mac/WebCoreSystemInterface.h:
2127 * platform/mac/WebCoreSystemInterface.mm:
2128
kmccullough@apple.com5ba965b2008-09-09 16:40:31 +000021292008-09-09 Kevin McCullough <kmccullough@apple.com>
2130
2131 Reviewed by Tim.
2132
2133 <rdar://problem/6198545> REGRESSION: Inspector debugger barfs on
2134 breakpoints inside eval.
2135
2136 * page/inspector/inspector.js:
2137
hausmann@webkit.orgdab0e872008-09-09 14:17:21 +000021382008-09-09 Joerg Bornemann <joerg.bornemann@trolltech.com>
2139
2140 Reviewed by Simon.
2141
2142 Fix compilation of the Qt port with disabled plugins on Windows
2143
2144 * WebCore.pro:
2145 * plugins/PluginView.cpp:
2146 (WebCore::PluginView::PluginView):
2147 * plugins/PluginView.h:
2148
ap@webkit.org2ba74d32008-09-09 08:11:01 +000021492008-09-09 Jungshik Shin <jungshik.shin@gmail.com>
2150
2151 Reviewed by Alexey Proskuryakov.
2152
2153 Try MIME charset names before trying IANA names
2154 ( https://bugs.webkit.org/show_bug.cgi?id=17537 )
2155
2156 With this change, shorter and more widely used names (preferred MIME
2157 names) are returned by document.charset, document.characterSet,
2158 document.inputEncoding rather than IANA names. This helps
2159 fixing bug 18085 in addition to web developers who are more familiar
2160 with MIME names. For instance, EUC-JP, ISO-8859-X and US-ASCII will be
2161 returned instead of Extended_UNIX_Code_Packed_Format_for_Japanese,
2162 ISO-8859-X:19xx, and ANSI_X3.4-1968. It also replaces IBM8xx with cp8xx.
2163 Note that cp/IBM 8xx are extremly rare in today's web. Even if they're
2164 used, the former is still recognized as aliases to the latter so that
2165 there's very little, if any, to worry about.
2166
2167 * platform/text/TextCodecICU.cpp:
2168 (WebCore::TextCodecICU::registerExtendedEncodingNames):
2169
weinig@apple.com22294302008-09-09 06:55:39 +000021702008-09-08 Sam Weinig <sam@webkit.org>
2171
2172 Reviewed by Maciej Stachowiak and Oliver Hunt.
2173
2174 Add forwarding headers.
2175
2176 * ForwardingHeaders/wtf/HashFunctions.h: Added.
2177
dino@apple.comd9962af2008-09-09 01:02:00 +000021782008-09-05 Dean Jackson <dino@apple.com>
2179
2180 Reviewed by Dan Bernstein.
2181
2182 Update grammar so that we can add a keyframe rule via the DOM.
2183 https://bugs.webkit.org/show_bug.cgi?id=20613
2184
2185 * css/CSSGrammar.y:
2186 * css/tokenizer.flex:
2187
antti@apple.com4b17a932008-09-09 00:40:45 +000021882008-09-08 Antti Koivisto <antti@apple.com>
2189
2190 Reviewed by Dan Bernstein.
2191
2192 Allow <br> for simple UA stylesheet. Editing code generates them. It does not
2193 actually show up in any of the default stylesheets.
2194
2195 * css/CSSStyleSelector.cpp:
2196 (WebCore::elementCanUseSimpleDefaultStyle):
2197
mitz@apple.com66fa91a2008-09-09 00:35:22 +000021982008-09-08 Dimitri Glazkov <dglazkov@google.com>
2199
2200 Reviewed by Dan Bernstein.
2201
2202 - fix https://bugs.webkit.org/show_bug.cgi?id=20237
2203 Zero width and space characters are displayed incorrectly if not contained in a fallback font
2204
2205 Adds an extra check for Object Replacement Character (U+FFFC) to address
2206 the issue with fast/text/zero-width-characters.html test when run
2207 with Windows system default fonts.
2208
2209 * platform/graphics/Font.h:
2210 (WebCore::Font::treatAsZeroWidthSpace):
2211
dino@apple.comf0a4b212008-09-08 22:51:49 +000022122008-09-08 Dean Jackson <dino@apple.com>
2213
2214 Reviewed by Sam Weinig.
2215
2216 Code style issue I forgot to fix from previous commit.
2217
2218 * platform/graphics/AffineTransform.cpp:
2219 (WebCore::AffineTransform::blend):
2220
dino@apple.com26625122008-09-08 22:46:41 +000022212008-09-08 Chris Marrin <cmarrin@apple.com>
2222
2223 Reviewed by Sam Weinig
2224
2225 - Animation of -webkit-transform matrix() function should not do linear interpolation
2226 https://bugs.webkit.org/show_bug.cgi?id=20667
2227
2228 Test: animations/matrix-anim.html
2229
2230 * ChangeLog:
2231 * platform/graphics/AffineTransform.cpp:
2232 (WebCore::affineTransformDecompose):
2233 (WebCore::affineTransformCompose):
2234 (WebCore::AffineTransform::blend):
2235 * platform/graphics/AffineTransform.h:
2236 * rendering/style/RenderStyle.cpp:
2237 (WebCore::MatrixTransformOperation::blend):
2238
ap@webkit.org243a9752008-09-08 16:21:16 +000022392008-09-08 Alexey Proskuryakov <ap@webkit.org>
2240
2241 Reviewed by Darin Adler.
2242
2243 https://bugs.webkit.org/show_bug.cgi?id=20668
2244 multipart/form-data does not always include Content-type for submitted files
2245
2246 Cannot be tested with DRT or manual tests.
2247
2248 * platform/MIMETypeRegistry.cpp:
2249 (WebCore::initializeSupportedNonImageMimeTypes): Fix spacing.
2250 (WebCore::MIMETypeRegistry::getMIMETypeForPath): Default to application/octet-stream for
2251 unknown extensions, not just missing ones.
2252
hausmann@webkit.orgaf796ea2008-09-08 13:00:19 +000022532008-09-08 Simon Hausmann <hausmann@webkit.org>
2254
2255 Build fix for the Qt/Windows build, define USE_JSC to
2256 enable the WebCore::String -> JSC::UString operator that
2257 MSVC insists on seeing
2258
2259 * WebCore.pro:
2260
andersca@apple.com3ac4f552008-09-08 11:39:34 +000022612008-09-08 Anders Carlsson <andersca@apple.com>
2262
2263 Reviewed by Maciej.
2264
2265 <rdar://problem/5850387> Showing bookmarks reloads Google Reader instead.
2266
2267 In some cases, timeouts scheduled by a page in the onunload handler could fire even when the
2268 page had been unloaded and replaced by a non-HTML representation based view (such as the bookmarks view).
2269
2270 Fix this by clearing timeouts for pages that aren't cached when the provisional load is committed.
2271
2272 * bindings/js/JSDOMWindowBase.h:
2273 * loader/FrameLoader.cpp:
2274 (WebCore::FrameLoader::commitProvisionalLoad):
2275
antti@apple.com57b3a102008-09-08 07:01:36 +000022762008-09-07 Antti Koivisto <antti@apple.com>
2277
2278 Reviewed by Dave Hyatt.
2279
2280 Don't leak the simple stylesheet.
2281 Also call RenderTheme::adjustDefaultStyleSheet() in right place.
2282
2283 * css/CSSStyleSelector.cpp:
2284 (WebCore::loadFullDefaultStyle):
2285 (WebCore::loadSimpleDefaultStyle):
2286 (WebCore::CSSStyleSelector::styleForElement):
2287
cwzwarich@webkit.org3f782f62008-09-08 01:28:33 +000022882008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
2289
cwzwarich@webkit.org951b1452008-09-08 04:25:32 +00002290 Reviewed by Oliver Hunt.
2291
2292 Bug 20711: Change KJS prefix on preprocessor macros to JSC
2293 <https://bugs.webkit.org/show_bug.cgi?id=20711>
2294
2295 * bindings/js/JSEventTargetBase.h:
2296 * bindings/js/JSHTMLInputElementBase.cpp:
2297 * bindings/js/JSHTMLInputElementBase.h:
2298 * bindings/scripts/CodeGeneratorJS.pm:
2299
23002008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
2301
cwzwarich@webkit.org3f782f62008-09-08 01:28:33 +00002302 Reviewed by Maciej Stachowiak.
2303
2304 Bug 20704: Replace the KJS namespace
2305 <https://bugs.webkit.org/show_bug.cgi?id=20704>
2306
2307 Rename the KJS namespace to JSC. There are still some uses of KJS in the
2308 names of JNI functions, and I will check if these are safe to change
2309 as well.
2310
2311 * WebCore.base.exp:
2312 * bindings/js/GCController.cpp:
2313 * bindings/js/JSAttrCustom.cpp:
2314 * bindings/js/JSAudioConstructor.cpp:
2315 * bindings/js/JSAudioConstructor.h:
2316 (WebCore::JSAudioConstructor::classInfo):
2317 * bindings/js/JSCSSRuleCustom.cpp:
2318 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2319 * bindings/js/JSCSSValueCustom.cpp:
2320 * bindings/js/JSCanvasPixelArrayCustom.cpp:
2321 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2322 * bindings/js/JSClipboardCustom.cpp:
2323 * bindings/js/JSConsoleCustom.cpp:
2324 * bindings/js/JSCustomSQLStatementCallback.cpp:
2325 (WebCore::JSCustomSQLStatementCallback::handleEvent):
2326 * bindings/js/JSCustomSQLStatementCallback.h:
2327 (WebCore::JSCustomSQLStatementCallback::create):
2328 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
2329 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2330 * bindings/js/JSCustomSQLStatementErrorCallback.h:
2331 (WebCore::JSCustomSQLStatementErrorCallback::create):
2332 * bindings/js/JSCustomSQLTransactionCallback.cpp:
2333 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2334 * bindings/js/JSCustomSQLTransactionCallback.h:
2335 (WebCore::JSCustomSQLTransactionCallback::create):
2336 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
2337 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2338 * bindings/js/JSCustomSQLTransactionErrorCallback.h:
2339 (WebCore::JSCustomSQLTransactionErrorCallback::create):
2340 * bindings/js/JSCustomVoidCallback.cpp:
2341 (WebCore::JSCustomVoidCallback::handleEvent):
2342 * bindings/js/JSCustomVoidCallback.h:
2343 (WebCore::JSCustomVoidCallback::create):
2344 * bindings/js/JSCustomXPathNSResolver.cpp:
2345 (WebCore::JSCustomXPathNSResolver::create):
2346 * bindings/js/JSCustomXPathNSResolver.h:
2347 * bindings/js/JSDOMApplicationCacheCustom.cpp:
2348 (WebCore::JSDOMApplicationCache::dispatchEvent):
2349 * bindings/js/JSDOMBinding.cpp:
2350 (WebCore::jsOwnedStringOrNull):
2351 * bindings/js/JSDOMBinding.h:
2352 (WebCore::DOMObject::DOMObject):
2353 (WebCore::cacheDOMObject):
2354 (WebCore::cacheSVGDOMObject):
2355 (WebCore::DOMExceptionTranslator::DOMExceptionTranslator):
2356 (WebCore::toJS):
2357 * bindings/js/JSDOMWindowBase.cpp:
2358 * bindings/js/JSDOMWindowBase.h:
2359 (WebCore::JSDOMWindowBase::classInfo):
2360 (WebCore::JSDOMWindowBase::d):
2361 * bindings/js/JSDOMWindowCustom.cpp:
2362 (WebCore::JSDOMWindow::getPropertyAttributes):
2363 * bindings/js/JSDOMWindowCustom.h:
2364 (WebCore::asJSDOMWindow):
2365 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
2366 (WebCore::JSDOMWindow::customPut):
2367 (WebCore::JSDOMWindowBase::allowsAccessFrom):
2368 (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
2369 * bindings/js/JSDOMWindowShell.cpp:
2370 (WebCore::JSDOMWindowShell::getPropertyAttributes):
2371 * bindings/js/JSDOMWindowShell.h:
2372 (WebCore::JSDOMWindowShell::classInfo):
2373 * bindings/js/JSDatabaseCustom.cpp:
2374 * bindings/js/JSDocumentCustom.cpp:
2375 * bindings/js/JSDocumentFragmentCustom.cpp:
2376 * bindings/js/JSElementCustom.cpp:
2377 * bindings/js/JSEventCustom.cpp:
2378 * bindings/js/JSEventListener.cpp:
2379 * bindings/js/JSEventListener.h:
2380 (WebCore::JSUnprotectedEventListener::create):
2381 (WebCore::JSEventListener::create):
2382 * bindings/js/JSEventTargetBase.cpp:
2383 * bindings/js/JSEventTargetBase.h:
2384 (WebCore::JSEventTargetBase::getValueProperty):
2385 (WebCore::JSEventTargetBase::putValueProperty):
2386 (WebCore::JSEventTargetBase::getOwnPropertySlot):
2387 (WebCore::JSEventTargetBase::put):
2388 (WebCore::JSEventTargetPrototype::JSEventTargetPrototype):
2389 (WebCore::JSEventTargetPrototype::self):
2390 (WebCore::JSEventTargetPrototype::getOwnPropertySlot):
2391 (WebCore::JSEventTargetPrototype::classInfo):
2392 * bindings/js/JSEventTargetNode.cpp:
2393 * bindings/js/JSEventTargetNode.h:
2394 (WebCore::JSEventTargetNode::getOwnPropertySlot):
2395 (WebCore::JSEventTargetNode::getValueProperty):
2396 (WebCore::JSEventTargetNode::put):
2397 (WebCore::JSEventTargetNode::putValueProperty):
2398 * bindings/js/JSHTMLAllCollection.h:
2399 (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
2400 (WebCore::JSHTMLAllCollection::toBoolean):
2401 * bindings/js/JSHTMLAppletElementCustom.cpp:
2402 * bindings/js/JSHTMLCollectionCustom.cpp:
2403 * bindings/js/JSHTMLDocumentCustom.cpp:
2404 * bindings/js/JSHTMLElementCustom.cpp:
2405 * bindings/js/JSHTMLEmbedElementCustom.cpp:
2406 * bindings/js/JSHTMLFormElementCustom.cpp:
2407 * bindings/js/JSHTMLFrameElementCustom.cpp:
2408 * bindings/js/JSHTMLFrameSetElementCustom.cpp:
2409 * bindings/js/JSHTMLIFrameElementCustom.cpp:
2410 * bindings/js/JSHTMLInputElementBase.cpp:
2411 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
2412 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
2413 * bindings/js/JSHTMLInputElementBase.h:
2414 (WebCore::JSHTMLInputElementBase::classInfo):
2415 * bindings/js/JSHTMLObjectElementCustom.cpp:
2416 * bindings/js/JSHTMLOptionElementConstructor.cpp:
2417 * bindings/js/JSHTMLOptionElementConstructor.h:
2418 (WebCore::JSHTMLOptionElementConstructor::classInfo):
2419 * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
2420 * bindings/js/JSHTMLSelectElementCustom.cpp:
2421 (WebCore::selectIndexSetter):
2422 (WebCore::JSHTMLSelectElement::indexSetter):
2423 * bindings/js/JSHTMLSelectElementCustom.h:
2424 * bindings/js/JSHistoryCustom.cpp:
2425 * bindings/js/JSImageConstructor.cpp:
2426 * bindings/js/JSImageConstructor.h:
2427 (WebCore::JSImageConstructor::classInfo):
2428 * bindings/js/JSInspectedObjectWrapper.cpp:
2429 * bindings/js/JSInspectedObjectWrapper.h:
2430 (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
2431 (WebCore::JSInspectedObjectWrapper::classInfo):
2432 * bindings/js/JSInspectorCallbackWrapper.cpp:
2433 * bindings/js/JSInspectorCallbackWrapper.h:
2434 (WebCore::JSInspectorCallbackWrapper::classInfo):
2435 (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
2436 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
2437 * bindings/js/JSLocationCustom.cpp:
2438 * bindings/js/JSMimeTypeArrayCustom.cpp:
2439 * bindings/js/JSNSResolver.cpp:
2440 * bindings/js/JSNSResolver.h:
2441 (WebCore::JSNSResolver::create):
2442 * bindings/js/JSNamedNodeMapCustom.cpp:
2443 * bindings/js/JSNamedNodesCollection.cpp:
2444 (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
2445 * bindings/js/JSNamedNodesCollection.h:
2446 (WebCore::JSNamedNodesCollection::classInfo):
2447 * bindings/js/JSNavigatorCustom.cpp:
2448 * bindings/js/JSNodeCustom.cpp:
2449 * bindings/js/JSNodeFilterCondition.cpp:
2450 (WebCore::JSNodeFilterCondition::acceptNode):
2451 * bindings/js/JSNodeFilterCondition.h:
2452 (WebCore::JSNodeFilterCondition::create):
2453 * bindings/js/JSNodeFilterCustom.cpp:
2454 * bindings/js/JSNodeIteratorCustom.cpp:
2455 * bindings/js/JSNodeListCustom.cpp:
2456 * bindings/js/JSPluginArrayCustom.cpp:
2457 * bindings/js/JSPluginCustom.cpp:
2458 * bindings/js/JSPluginElementFunctions.cpp:
2459 (WebCore::getRuntimeObject):
2460 * bindings/js/JSPluginElementFunctions.h:
2461 * bindings/js/JSQuarantinedObjectWrapper.cpp:
2462 (WebCore::JSQuarantinedObjectWrapper::construct):
2463 (WebCore::JSQuarantinedObjectWrapper::call):
2464 * bindings/js/JSQuarantinedObjectWrapper.h:
2465 (WebCore::JSQuarantinedObjectWrapper::unwrappedObject):
2466 (WebCore::JSQuarantinedObjectWrapper::unwrappedGlobalObject):
2467 (WebCore::JSQuarantinedObjectWrapper::className):
2468 * bindings/js/JSRGBColor.cpp:
2469 * bindings/js/JSRGBColor.h:
2470 (WebCore::JSRGBColor::classInfo):
2471 * bindings/js/JSSQLResultSetRowListCustom.cpp:
2472 * bindings/js/JSSQLTransactionCustom.cpp:
2473 * bindings/js/JSSVGLazyEventListener.cpp:
2474 * bindings/js/JSSVGLazyEventListener.h:
2475 * bindings/js/JSSVGLengthCustom.cpp:
2476 * bindings/js/JSSVGMatrixCustom.cpp:
2477 (WebCore::JSSVGMatrix::inverse):
2478 (WebCore::JSSVGMatrix::rotateFromVector):
2479 * bindings/js/JSSVGPathSegCustom.cpp:
2480 * bindings/js/JSSVGPathSegListCustom.cpp:
2481 (WebCore::JSSVGPathSegList::initialize):
2482 (WebCore::JSSVGPathSegList::getItem):
2483 (WebCore::JSSVGPathSegList::insertItemBefore):
2484 (WebCore::JSSVGPathSegList::replaceItem):
2485 (WebCore::JSSVGPathSegList::removeItem):
2486 (WebCore::JSSVGPathSegList::appendItem):
2487 * bindings/js/JSSVGPointListCustom.cpp:
2488 * bindings/js/JSSVGTransformListCustom.cpp:
2489 * bindings/js/JSStorageCustom.cpp:
2490 * bindings/js/JSStyleSheetCustom.cpp:
2491 * bindings/js/JSStyleSheetListCustom.cpp:
2492 * bindings/js/JSTextCustom.cpp:
2493 * bindings/js/JSTreeWalkerCustom.cpp:
2494 * bindings/js/JSXMLHttpRequestConstructor.cpp:
2495 * bindings/js/JSXMLHttpRequestConstructor.h:
2496 (WebCore::JSXMLHttpRequestConstructor::classInfo):
2497 * bindings/js/JSXMLHttpRequestCustom.cpp:
2498 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2499 * bindings/js/JSXSLTProcessorConstructor.cpp:
2500 * bindings/js/JSXSLTProcessorConstructor.h:
2501 (WebCore::JSXSLTProcessorConstructor::classInfo):
2502 * bindings/js/JSXSLTProcessorCustom.cpp:
2503 * bindings/js/ScheduledAction.cpp:
2504 * bindings/js/ScheduledAction.h:
2505 * bindings/js/ScriptController.cpp:
2506 (WebCore::ScriptController::attachDebugger):
2507 (WebCore::ScriptController::windowScriptNPObject):
2508 * bindings/js/ScriptController.h:
2509 * bindings/js/ScriptControllerGtk.cpp:
2510 (WebCore::ScriptController::createScriptInstanceForWidget):
2511 * bindings/js/ScriptControllerMac.mm:
2512 (WebCore::ScriptController::createScriptInstanceForWidget):
2513 (WebCore::ScriptController::windowScriptObject):
2514 (WebCore::ScriptController::clearPlatformScriptObjects):
2515 (WebCore::updateRenderingForBindings):
2516 (WebCore::ScriptController::initJavaJSBindings):
2517 * bindings/js/ScriptControllerQt.cpp:
2518 (WebCore::ScriptController::createScriptInstanceForWidget):
2519 * bindings/js/ScriptControllerWin.cpp:
2520 (WebCore::ScriptController::createScriptInstanceForWidget):
2521 * bindings/js/ScriptControllerWx.cpp:
2522 (WebCore::ScriptController::createScriptInstanceForWidget):
2523 * bindings/js/StringSourceProvider.h:
2524 (WebCore::StringSourceProvider::getRange):
2525 * bindings/objc/DOM.mm:
2526 (-[DOMNode JSC::Bindings::]):
2527 * bindings/objc/DOMInternal.h:
2528 * bindings/objc/DOMInternal.mm:
2529 (-[WebScriptObject _initializeScriptDOMNodeImp]):
2530 * bindings/objc/DOMUtility.mm:
2531 (JSC::createDOMWrapper):
2532 (WebCore::createDOMWrapper):
2533 * bindings/objc/WebScriptObject.mm:
2534 (WebCore::createJSWrapper):
2535 (-[WebScriptObject _initWithJSObject:JSC::originRootObject:JSC::Bindings::rootObject:JSC::Bindings::]):
2536 * bindings/objc/WebScriptObjectPrivate.h:
2537 * bindings/scripts/CodeGeneratorJS.pm:
2538 * bridge/NP_jsobject.cpp:
2539 * bridge/NP_jsobject.h:
2540 * bridge/c/c_class.cpp:
2541 * bridge/c/c_class.h:
2542 * bridge/c/c_instance.cpp:
2543 * bridge/c/c_instance.h:
2544 * bridge/c/c_runtime.cpp:
2545 * bridge/c/c_runtime.h:
2546 * bridge/c/c_utility.cpp:
2547 * bridge/c/c_utility.h:
2548 * bridge/jni/jni_class.cpp:
2549 * bridge/jni/jni_class.h:
2550 * bridge/jni/jni_instance.cpp:
2551 * bridge/jni/jni_instance.h:
2552 * bridge/jni/jni_jsobject.h:
2553 * bridge/jni/jni_jsobject.mm:
2554 (JavaJSObject::call):
2555 (JavaJSObject::convertJObjectToValue):
2556 * bridge/jni/jni_objc.mm:
2557 (JSC::Bindings::dispatchJNICall):
2558 * bridge/jni/jni_runtime.cpp:
2559 * bridge/jni/jni_runtime.h:
2560 * bridge/jni/jni_utility.cpp:
2561 * bridge/jni/jni_utility.h:
2562 * bridge/npruntime.cpp:
2563 (_NPN_GetStringIdentifier):
2564 * bridge/objc/WebScriptObject.h:
2565 * bridge/objc/objc_class.h:
2566 * bridge/objc/objc_class.mm:
2567 * bridge/objc/objc_instance.h:
2568 * bridge/objc/objc_instance.mm:
2569 * bridge/objc/objc_runtime.h:
2570 * bridge/objc/objc_runtime.mm:
2571 * bridge/objc/objc_utility.h:
2572 * bridge/objc/objc_utility.mm:
2573 * bridge/qt/qt_class.cpp:
2574 * bridge/qt/qt_class.h:
2575 * bridge/qt/qt_instance.cpp:
2576 * bridge/qt/qt_instance.h:
2577 * bridge/qt/qt_runtime.cpp:
2578 (JSC::Bindings::convertQVariantToValue):
2579 (JSC::Bindings::):
2580 * bridge/qt/qt_runtime.h:
2581 * bridge/runtime.cpp:
2582 * bridge/runtime.h:
2583 * bridge/runtime_array.cpp:
2584 * bridge/runtime_array.h:
2585 * bridge/runtime_method.cpp:
2586 * bridge/runtime_method.h:
2587 * bridge/runtime_object.cpp:
2588 * bridge/runtime_object.h:
2589 * bridge/runtime_root.cpp:
2590 (JSC::Bindings::RootObject::invalidate):
2591 (JSC::Bindings::RootObject::gcProtect):
2592 (JSC::Bindings::RootObject::gcUnprotect):
2593 * bridge/runtime_root.h:
2594 * bridge/testbindings.cpp:
2595 * bridge/testbindings.mm:
2596 * bridge/testqtbindings.cpp:
2597 * dom/Document.cpp:
2598 (WebCore::Document::~Document):
2599 * dom/NSResolver.h:
2600 * dom/Node.cpp:
2601 (WebCore::Node::setDocument):
2602 (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
2603 (WebCore::resolveNamespacesForSelector):
2604 (WebCore::Node::querySelector):
2605 (WebCore::Node::querySelectorAll):
2606 * dom/Node.h:
2607 * dom/NodeFilter.cpp:
2608 * dom/NodeFilter.h:
2609 * dom/NodeFilterCondition.cpp:
2610 * dom/NodeFilterCondition.h:
2611 * dom/NodeIterator.cpp:
2612 * dom/NodeIterator.h:
2613 * dom/Traversal.cpp:
2614 * dom/Traversal.h:
2615 * dom/TreeWalker.cpp:
2616 * dom/TreeWalker.h:
2617 * dom/make_names.pl:
2618 * history/CachedPage.cpp:
2619 * history/CachedPage.h:
2620 * html/HTMLPlugInElement.cpp:
2621 (WebCore::HTMLPlugInElement::getInstance):
2622 * html/HTMLPlugInElement.h:
2623 * loader/FrameLoader.cpp:
2624 * loader/FrameLoader.h:
2625 * loader/icon/IconDatabase.cpp:
2626 (WebCore::iconDatabase):
2627 * page/Console.cpp:
2628 * page/Console.h:
2629 * page/InspectorController.cpp:
2630 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
2631 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
2632 (WebCore::InspectorResource::setXMLHttpRequestProperties):
2633 (WebCore::InspectorResource::sourceString):
2634 (WebCore::getResourceDocumentNode):
2635 (WebCore::search):
2636 (WebCore::InspectorController::focusNode):
2637 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
2638 (WebCore::InspectorController::addDatabaseScriptResource):
2639 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
2640 * page/InspectorController.h:
2641 (WebCore::InspectorController::profiles):
2642 * page/JavaScriptCallFrame.cpp:
2643 (WebCore::JavaScriptCallFrame::scopeChain):
2644 * page/JavaScriptCallFrame.h:
2645 (WebCore::JavaScriptCallFrame::create):
2646 (WebCore::JavaScriptCallFrame::update):
2647 * page/JavaScriptDebugListener.h:
2648 * page/JavaScriptDebugServer.cpp:
2649 (WebCore::dispatchDidParseSource):
2650 * page/JavaScriptDebugServer.h:
2651 * page/JavaScriptProfile.cpp:
2652 * page/JavaScriptProfile.h:
2653 * page/JavaScriptProfileNode.cpp:
2654 (WebCore::getTotalTime):
2655 (WebCore::getSelfTime):
2656 (WebCore::getTotalPercent):
2657 (WebCore::getSelfPercent):
2658 (WebCore::getNumberOfCalls):
2659 (WebCore::getChildren):
2660 (WebCore::getVisible):
2661 * page/JavaScriptProfileNode.h:
2662 * page/Page.cpp:
2663 (WebCore::Page::setDebuggerForAllPages):
2664 (WebCore::Page::setDebugger):
2665 * page/Page.h:
2666 (WebCore::Page::debugger):
2667 * page/mac/FrameMac.mm:
2668 * platform/KURL.h:
2669 (WebCore::KURL::operator JSC::UString):
2670 * platform/text/AtomicString.cpp:
2671 (WebCore::AtomicString::add):
2672 (WebCore::AtomicString::find):
2673 * platform/text/AtomicString.h:
2674 (WebCore::AtomicString::AtomicString):
2675 * platform/text/PlatformString.h:
2676 * platform/text/String.cpp:
2677 (WebCore::charactersToDouble):
2678 * platform/win/BString.cpp:
2679 * platform/win/BString.h:
2680 * plugins/MimeTypeArray.h:
2681 * plugins/Plugin.h:
2682 * plugins/PluginArray.h:
2683 * plugins/PluginView.cpp:
2684 (WebCore::PluginView::start):
2685 (WebCore::PluginView::performRequest):
2686 (WebCore::PluginView::bindingInstance):
2687 * plugins/PluginView.h:
2688 * plugins/gtk/PluginViewGtk.cpp:
2689 (WebCore::PluginView::paint):
2690 (WebCore::PluginView::handleKeyboardEvent):
2691 (WebCore::PluginView::handleMouseEvent):
2692 (WebCore::PluginView::setNPWindowRect):
2693 (WebCore::PluginView::stop):
2694 (WebCore::PluginView::init):
2695 * plugins/qt/PluginViewQt.cpp:
2696 (WebCore::PluginView::setNPWindowRect):
2697 (WebCore::PluginView::stop):
2698 (WebCore::PluginView::init):
2699 * plugins/win/PluginViewWin.cpp:
2700 (WebCore::PluginView::dispatchNPEvent):
2701 (WebCore::PluginView::handleKeyboardEvent):
2702 (WebCore::PluginView::handleMouseEvent):
2703 (WebCore::PluginView::setNPWindowRect):
2704 (WebCore::PluginView::stop):
2705 * storage/Database.cpp:
2706 (WebCore::Database::Database):
2707 * xml/XMLHttpRequest.cpp:
2708 (WebCore::XMLHttpRequest::responseText):
2709 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
2710 (WebCore::XMLHttpRequest::clearResponse):
2711 (WebCore::XMLHttpRequest::dropProtection):
2712 (WebCore::XMLHttpRequest::didFinishLoading):
2713 (WebCore::XMLHttpRequest::didReceiveData):
2714 * xml/XMLHttpRequest.h:
2715
abarth@webkit.orge17b6052008-09-08 00:03:30 +000027162008-09-07 Adam Barth <abarth@webkit.org>
2717
2718 Reviewed by Sam Weinig.
2719
2720 Adopt opener restriction on frame navigation.
2721 https://bugs.webkit.org/show_bug.cgi?id=20642
2722
2723 This restriction helps prevent an attacker from navigating top-level
2724 windows that were created by another web site.
2725
2726 Tests: http/tests/security/frameNavigation/not-opener.html
2727 http/tests/security/frameNavigation/opener.html
2728
2729 * loader/FrameLoader.cpp:
2730 (WebCore::canAccessAncestor):
2731 (WebCore::FrameLoader::shouldAllowNavigation):
2732
mitz@apple.com83469af2008-09-07 22:29:56 +000027332008-09-07 Dan Bernstein <mitz@apple.com>
2734
mitz@apple.com08ff58c2008-09-07 23:19:11 +00002735 Reviewed by Maciej Stachowiak.
2736
2737 - use the correct sign for vertical offsets of combining marks
2738
2739 * platform/graphics/win/UniscribeController.cpp:
2740 (WebCore::UniscribeController::shapeAndPlaceItem):
2741
27422008-09-07 Dan Bernstein <mitz@apple.com>
2743
mitz@apple.com83469af2008-09-07 22:29:56 +00002744 Reviewed by Dave Hyatt.
2745
mitz@apple.com78685b22008-09-07 22:30:29 +00002746 - add the combining mark offsets in two places where I forgot them
2747
2748 * platform/graphics/win/FontCGWin.cpp:
2749 (WebCore::Font::drawGlyphs):
2750
27512008-09-07 Dan Bernstein <mitz@apple.com>
2752
2753 Reviewed by Dave Hyatt.
2754
mitz@apple.com83469af2008-09-07 22:29:56 +00002755 - correct glyph advances in complex text using web fonts rendered with
2756 Core Graphics
2757
2758 * platform/graphics/win/FontCustomPlatformData.cpp:
2759 (WebCore::FontCustomPlatformData::fontPlatformData):
2760
timothy@apple.com968ebc92008-09-07 16:48:41 +000027612008-09-07 Keishi Hattori <casey.hattori@gmail.com>
2762
2763 Adds console.dirxml support to the Web Inspector.
2764
2765 https://bugs.webkit.org/show_bug.cgi?id=19156
2766
2767 Reviewed by Timothy Hatcher.
2768
2769 * WebCore.vcproj/WebCore.vcproj: Added ElementsTreeOutline.js.
2770 * bindings/js/JSConsoleCustom.cpp:
2771 (WebCore::JSConsole::dirxml):
2772 * page/Console.cpp:
2773 (WebCore::Console::dirxml): Adds a ConsoleMessage with NodeMessageLevel.
2774 * page/Console.h:
2775 (WebCore::): Added NodeMessageLevel.
2776 * page/Console.idl: Added console.dirxml.
2777 * page/inspector/Console.js: A NodeMessage creates a ElementsTreeOutline.
2778 * page/inspector/ElementsPanel.js: Modified to use ElementsTreeOutline. The ElementsTreeOutline
2779 in the ElementsPanel has includeRootDOMNode and selectEnabled set to true.
2780 * page/inspector/ElementsTreeOutline.js: Added.
2781 (WebInspector.ElementsTreeOutline): A subclass of TreeOutline for displaying a DOM node tree.
2782 (WebInspector.ElementsTreeElement): A subclass of TreeElement for ElementsTreeOutline.
2783 * page/inspector/WebKit.qrc: Added ElementsTreeOutline.js.
2784 * page/inspector/inspector.css:
2785 * page/inspector/inspector.html: Added ElementsTreeOutline.js.
2786 * page/inspector/inspector.js: Moved hover related methods to WebInspector.
2787 (WebInspector.altKeyDown):
2788 (WebInspector.forceHoverHighlight):
2789 (WebInspector.hoveredDOMNode):
2790 (WebInspector._updateHoverHighlightSoon):
2791 (WebInspector._updateHoverHighlight):
2792 (WebInspector.documentKeyDown): Updates WebInspector.altKeyDown
2793 (WebInspector.documentKeyUp): Updates WebInspector.altKeyDown
2794 * page/inspector/utilities.js: Added getDocumentForNode, parentNodeOrFrameElement,
2795 isAncestorIncludingParentFrames.
2796
mrowe@apple.com61ba5f52008-09-07 06:08:56 +000027972008-09-06 Mark Rowe <mrowe@apple.com>
2798
2799 Qt build fix.
2800
2801 * bridge/qt/qt_runtime.cpp:
2802 (KJS::Bindings::convertQVariantToValue):
2803
mrowe@apple.comf88a4632008-09-07 05:44:58 +00002804=== End merge of squirrelfish-extreme ===
2805
28062008-09-05 Oliver Hunt <oliver@apple.com>
2807
2808 Start bringing up SFX on windows.
2809
2810 Reviewed by Mark Rowe and Sam Weinig
2811
2812 Start doing the work to bring up SFX on windows. Initially
2813 just working on WREC, as it does not make any calls so reduces
2814 the amount of code that needs to be corrected.
2815
2816 Add forwarding headers
2817
2818 * ChangeLog:
2819 * ForwardingHeaders/masm/MacroAssembler.h: Added.
2820 * WebCore.vcproj/WebCore.vcproj:
2821
28222008-08-27 Mark Rowe <mrowe@apple.com>
2823
2824 Reviewed by Oliver Hunt.
2825
2826 Fix the build of the full WebKit stack.
2827
2828 Add forwarding headers.
2829
2830 * ForwardingHeaders/masm/IA32MacroAsm.h: Added.
2831 * ForwardingHeaders/wrec/WREC.h: Added.
2832
2833=== Start merge of squirrelfish-extreme ===
2834
antti@apple.com13c24932008-09-07 03:54:21 +000028352008-09-06 Antti Koivisto <antti@apple.com>
2836
2837 Reviewed by Dave Hyatt.
2838
2839 <rdar://problem/6187043>
2840 Don't parse full HTML user agent style sheet unless it is actually needed
2841 <rdar://problem/6131889>
2842 WebView is significantly more expensive to create recently
2843
2844 Parsing the html4.css takes significant amount of time and memory (~50kb) on application
2845 startup. Some clients may never use most of the rules.
2846
2847 With this patch we use simplified UA stylesheet until we hit something it can't handle.
2848 This avoids full stylesheet parsing on application startup (due to empty document construction)
2849 and also makes it possible for clients with very simple demands (divs and spans only) never to load
2850 the full style.
2851
2852 It also delays view source style parsing until it is used.
2853
2854 * css/CSSStyleSelector.cpp:
2855 (WebCore::elementCanUseSimpleDefaultStyle):
2856 (WebCore::CSSStyleSelector::CSSStyleSelector):
2857 (WebCore::loadFullDefaultStyle):
2858 (WebCore::loadSimpleDefaultStyle):
2859 (WebCore::loadViewSourceStyle):
2860 (WebCore::CSSStyleSelector::matchUARules):
2861 (WebCore::CSSStyleSelector::styleForElement):
2862
kevino@webkit.orgd15b50f2008-09-07 03:46:50 +000028632008-09-06 Kevin Ollivier <kevino@theolliviers.com>
2864
2865 wx build fix.
2866
2867 * WebCoreSources.bkl:
2868
antti@apple.come953f862008-09-06 23:27:09 +000028692008-09-06 Antti Koivisto <antti@apple.com>
2870
antti@apple.com00dfa532008-09-06 23:32:26 +00002871 Reverting r35953 which was causing problems on Windows which relies on
2872 WebCore timers in nested event loops. r36132 did alternative fix.
2873
2874 * page/Chrome.cpp:
2875 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
2876 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
2877
28782008-09-06 Antti Koivisto <antti@apple.com>
2879
antti@apple.come953f862008-09-06 23:27:09 +00002880 Reviewed by Dan Bernstein.
2881
2882 Fix <rdar://problem/6201644>
2883 https://bugs.webkit.org/show_bug.cgi?id=20493
2884 Crash after OK in dialog box and reloading page in secure mode
2885
2886 Limited loader only fix since the general timer fix is causing problems on Windows.
2887
2888 * loader/loader.cpp:
2889 (WebCore::Loader::servePendingRequests):
2890 (WebCore::Loader::Host::Host):
2891 (WebCore::Loader::Host::didFinishLoading):
2892 (WebCore::Loader::Host::didFail):
2893 (WebCore::Loader::Host::didReceiveData):
2894 * loader/loader.h:
2895 (WebCore::Loader::Host::processingResource):
2896
mitz@apple.com046bf642008-09-06 08:31:02 +000028972008-09-06 Dan Bernstein <mitz@apple.com>
2898
2899 Reviewed by Dave Hyatt.
2900
mitz@apple.comc0b050b2008-09-06 22:39:34 +00002901 The initial Core Text adoption prototype was made by Daniel Fenwick.
2902
2903 - <rdar://problem/5158514> Add a Core Text-based complex text code path
2904
2905 Currently the Core Text code path is not used in any configuration.
2906
2907 * WebCore.xcodeproj/project.pbxproj: Added files.
2908 * config.h: Defined WTF_USE_ATSUI and WTF_USE_CORE_TEXT.
2909 * platform/graphics/Font.cpp:
2910 (WebCore::WidthIterator::advance): Moved the spacingDisabled() test out
2911 of the loop.
2912 * platform/graphics/GlyphBuffer.h:
2913 (WebCore::GlyphBuffer::add): Added this version that takes an advance.
2914 * platform/graphics/SimpleFontData.h: Added ATSUI and CORE_TEXT #ifdefs.
2915 Added getCTFont() and getCFStringAttributes() and corresponding data
2916 members for Core Text.
2917 * platform/graphics/mac/CoreTextController.cpp: Added.
2918 (WebCore::roundCGFloat): Helper function.
2919 (WebCore::ceilCGFloat): Helper function.
2920 (WebCore::CoreTextController::CoreTextRun::CoreTextRun):
2921 (WebCore::CoreTextController::CoreTextController):
2922 (WebCore::CoreTextController::offsetForPosition):
2923 (WebCore::CoreTextController::collectCoreTextRuns): Added. Segments the
2924 run into subruns as necessary such that each subrun can be rendered with
2925 a single font. Also separates out soft hyphens and replaces them with
2926 real hyphens, because Core Text does not emit a glyph for soft hyphens.
2927 Then calls collectCoreTextRunsForCharacters() on each subrun.
2928 (WebCore::CoreTextController::advance):
2929 (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Creates
2930 a CTLine from the given subrun and collects its CoreTextRuns.
2931 (WebCore::CoreTextController::adjustGlyphsAndAdvances): Applies the
2932 rounding hacks, letter- and word-spacing and glyph substitutions and
2933 stores the resulting adjusted glyphs and advances.
2934 * platform/graphics/mac/CoreTextController.h: Copied from WebCore/platform/graphics/win/UniscribeController.h.
2935 (WebCore::CoreTextController::totalWidth):
2936 (WebCore::CoreTextController::finalRoundingWidth):
2937 (WebCore::CoreTextController::CoreTextRun::ctRun):
2938 (WebCore::CoreTextController::CoreTextRun::glyphCount):
2939 (WebCore::CoreTextController::CoreTextRun::fontData):
2940 (WebCore::CoreTextController::CoreTextRun::characters):
2941 (WebCore::CoreTextController::CoreTextRun::stringLocation):
2942 (WebCore::CoreTextController::CoreTextRun::stringLength):
2943 (WebCore::CoreTextController::CoreTextRun::indexAt):
2944 * platform/graphics/mac/FontMac.mm: Moved the ATSUI-specific parts to
2945 FontMacATSUI.mm.
2946 * platform/graphics/mac/FontMacATSUI.mm: Copied from WebCore/platform/graphics/mac/FontMac.mm.
2947 (WebCore::disableLigatures): Changed to call
2948 FontPlatformData::allowsLigatures().
2949 (WebCore::overrideLayoutOperation): Changed to call
2950 FontPlatformData::roundsGlyphAdvances().
2951 * platform/graphics/mac/FontMacCoreText.cpp: Copied from WebCore/platform/graphics/win/FontWin.cpp.
2952 (WebCore::Font::selectionRectForComplexText): Changed to use
2953 totalWidth() instead of advancing to the end and using runWidthSoFar().
2954 (WebCore::Font::drawComplexText):
2955 (WebCore::Font::floatWidthForComplexText): Ditto.
2956 (WebCore::Font::offsetForPositionForComplexText):
2957 * platform/graphics/mac/FontPlatformData.h:
2958 * platform/graphics/mac/FontPlatformDataMac.mm:
2959 (WebCore::FontPlatformData::setFont):
2960 (WebCore::FontPlatformData::roundsGlyphAdvances): Added. Checks the
2961 AppKit rendering mode.
2962 (WebCore::FontPlatformData::allowsLigatures): Added. Implements the
2963 heuristic that allows ligatures in fonts that do not have a glyph for
2964 'a', based on the assumption that such fonts are only used in complex
2965 text.
2966 * platform/graphics/mac/SimpleFontDataMac.mm:
2967 (WebCore::SimpleFontData::platformInit):
2968 (WebCore::SimpleFontData::platformDestroy):
2969 (WebCore::SimpleFontData::getCTFont): Added.
2970 (WebCore::SimpleFontData::getCFStringAttributes): Added. Caches and
2971 returns an attributes dictionary.
2972 * platform/text/mac/ShapeArabic.c: Added ATSUI #ifdefs.
2973 * platform/text/mac/ShapeArabic.h: Ditto.
2974
29752008-09-06 Dan Bernstein <mitz@apple.com>
2976
2977 Reviewed by Dave Hyatt.
2978
mitz@apple.com046bf642008-09-06 08:31:02 +00002979 - make combining mark offsets work in CG text on Windows
2980
2981 * platform/graphics/win/FontCGWin.cpp:
2982 (WebCore::Font::drawGlyphs): The old code tried to translate the text
2983 matrix, but failed for two reasons: it did not actually change the
2984 matrix, and even if it did, CGContextSetTextPosition overwrites the
2985 translation values in the text matrix. Instead, just added the
2986 translation to the anchor point.
2987
alp@webkit.org369cdca2008-09-06 04:08:30 +000029882008-09-05 Gustavo Noronha Silva <gns@gnome.org>
2989
2990 Reviewed by Alp Toker.
2991
2992 https://bugs.webkit.org/show_bug.cgi?id=18346
2993 [GTK] Remove build warnings
2994
2995 Applied some casts, and removed an unused typedef to make the
2996 compiler happy, printing less warnings when building.
2997
2998 * page/gtk/AccessibilityObjectWrapperAtk.cpp:
2999 * platform/graphics/gtk/SimpleFontDataPango.cpp:
3000 (WebCore::SimpleFontData::containsCharacters):
3001 * platform/graphics/gtk/VideoSinkGStreamer.cpp:
3002 (webkit_video_sink_set_caps):
3003 * platform/network/soup/ResourceHandleSoup.cpp:
3004
eric@webkit.org3cb292c2008-09-05 22:17:56 +000030052008-09-05 Eric Seidel <eric@webkit.org>
3006
eric@webkit.org5ac37902008-09-06 00:21:58 +00003007 Reviewed by Adam Roben.
3008
3009 Build fix for WebKitWin and Chromium
3010
3011 * platform/FileSystem.h:
3012
30132008-09-05 Eric Seidel <eric@webkit.org>
3014
eric@webkit.org3cb292c2008-09-05 22:17:56 +00003015 Reviewed by Darin Adler.
3016
3017 Try to make Chromium compile with ToT:
3018 - Wrap a few places which depend on KJS:: in #if USE(JSC)
3019 - Include some windows forward declarations
3020
3021 * dom/Node.h:
3022 * page/Console.h:
3023 * page/animation/CompositeAnimation.h:
3024 * platform/FileSystem.h:
3025 * platform/graphics/Image.h:
3026 * platform/text/AtomicString.h:
3027 * platform/text/String.cpp:
3028 * rendering/style/RenderStyle.h:
3029
hyatt@apple.comff85d5e2008-09-05 21:52:08 +000030302008-09-05 Dave Hyatt <hyatt@apple.com>
3031
3032 Add support for runtime switchability of the Aqua look and the native look on Windows.
3033 Make RenderThemeWin compile by default even when USE(SAFARI_THEME) is set.
3034
3035 Reviewed by Adam Roben
3036
3037 * WebCore.vcproj/WebCore.vcproj:
3038 * page/Settings.cpp:
3039 (WebCore::Settings::setShouldPaintNativeControls):
3040 * page/Settings.h:
3041 (WebCore::Settings::shouldPaintNativeControls):
3042 * rendering/RenderThemeSafari.cpp:
3043 (WebCore::theme):
3044 * rendering/RenderThemeWin.cpp:
3045
antti@apple.combced97f2008-09-05 18:52:05 +000030462008-09-05 Antti Koivisto <antti@apple.com>
3047
3048 Qt build fix.
3049
3050 * svg/SVGFEImageElement.cpp:
3051 (WebCore::SVGFEImageElement::build):
3052
aroben@apple.comca0c3362008-09-05 15:33:28 +000030532008-09-05 Dirk Schulze <vbs85@gmx.de>
3054
3055 Gtk build fix
3056
3057 * GNUmakefile.am:
3058
antti@apple.com72e4a842008-09-05 09:28:11 +000030592008-09-05 Antti Koivisto <antti@apple.com>
3060
antti@apple.com49e46662008-09-05 10:36:59 +00003061 Another build fix.
3062
3063 * svg/SVGFEImageElement.cpp:
3064 (WebCore::SVGFEImageElement::notifyFinished):
3065
30662008-09-05 Antti Koivisto <antti@apple.com>
3067
antti@apple.comfeec2582008-09-05 10:03:39 +00003068 Build fixes.
3069
3070 * WebCore.xcodeproj/project.pbxproj:
3071 * svg/graphics/filters/SVGFEImage.cpp:
3072 (WebCore::FEImage::cachedImage):
3073
30742008-09-05 Antti Koivisto <antti@apple.com>
3075
darin@apple.com07c80c62008-09-05 18:15:43 +00003076 Reviewed by Darin Adler.
antti@apple.com72e4a842008-09-05 09:28:11 +00003077
3078 Most of the implementation for https://bugs.webkit.org/show_bug.cgi?id=17998
3079 When a resource is cached locally, WebKit should follow RFC 2616 "Specific end-to-end revalidation" instead of "Unspecified end-to-end revalidation"
3080
3081 Implement HTTP 1.1 "Specific end-to-end revalidation" for WebCore memory cache. This patch does
3082 not yet enable it for the biggest use case, reloading. However it is good for general browsing as
3083 well. Doing this in WebCore level as opposed to relying on disk cache has big benefit that
3084 we avoid re-decoding resources, especially images.
3085
3086 To be exact the enabled case is not actually the "Specific end-to-end revalidation" since it does not include
3087 CacheControl: max-age=0 header. That would be added in reload case.
3088
3089 The approach for revalidation is to kick the original resource out from the memory cache
3090 and create a new CachedResource that represents the revalidation request. In case
3091 we get 304 back for the request we put the original resource back to the cache, update
3092 its expiration date and switch the clients registered to revalidation resource to be
3093 clients of the original resource.
3094
3095 All heap allocated CachedImage pointers now use CachedResourceHandle<CachedImage> (and so on) instead.
3096 This allows updating the handles to point to the original resource when the revalidation succeeds. It
3097 also acts as refcounting smart pointer.
3098
3099 * WebCore.pro:
3100 * WebCore.vcproj/WebCore.vcproj:
3101 * WebCore.xcodeproj/project.pbxproj:
3102 * css/CSSFontFaceSource.h:
3103 * css/CSSImportRule.h:
3104 * dom/Clipboard.h:
3105 (WebCore::Clipboard::dragImage):
3106 * dom/ProcessingInstruction.h:
3107 * dom/ScriptElement.h:
3108 * dom/XMLTokenizer.cpp:
3109 (WebCore::XMLTokenizer::isWaitingForScripts):
3110 * dom/XMLTokenizer.h:
3111 * html/HTMLImageLoader.cpp:
3112 (WebCore::HTMLImageLoader::setImage):
3113 (WebCore::HTMLImageLoader::updateFromElement):
3114 (WebCore::HTMLImageLoader::notifyFinished):
3115 * html/HTMLImageLoader.h:
3116 (WebCore::HTMLImageLoader::image):
3117 * html/HTMLLinkElement.h:
3118 * html/HTMLTokenizer.cpp:
3119 (WebCore::HTMLTokenizer::reset):
3120 (WebCore::HTMLTokenizer::scriptHandler):
3121 (WebCore::HTMLTokenizer::notifyFinished):
3122 * html/HTMLTokenizer.h:
3123 * loader/Cache.cpp:
3124 (WebCore::Cache::revalidateResource):
3125 (WebCore::Cache::revalidationSucceeded):
3126 (WebCore::Cache::revalidationFailed):
3127 * loader/Cache.h:
3128 * loader/CachedResource.cpp:
3129 (WebCore::CachedResource::CachedResource):
3130 (WebCore::CachedResource::~CachedResource):
3131 (WebCore::CachedResource::isExpired):
3132 (WebCore::CachedResource::setResponse):
3133 (WebCore::CachedResource::deleteIfPossible):
3134 (WebCore::CachedResource::setResourceToRevalidate):
3135 (WebCore::CachedResource::clearResourceToRevalidate):
3136 (WebCore::CachedResource::switchClientsToRevalidatedResource):
3137 (WebCore::CachedResource::canUseCacheValidator):
3138 (WebCore::CachedResource::mustRevalidate):
3139 * loader/CachedResource.h:
3140 (WebCore::CachedResource::canDelete):
3141 (WebCore::CachedResource::registerHandle):
3142 (WebCore::CachedResource::unregisterHandle):
3143 (WebCore::CachedResource::isCacheValidator):
3144 (WebCore::CachedResource::resourceToRevalidate):
3145 (WebCore::CachedResource::setExpirationDate):
3146 * loader/CachedResourceHandle.cpp: Added.
3147 (WebCore::CachedResourceHandleBase::setResource):
3148 * loader/CachedResourceHandle.h: Added.
3149 (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
3150 (WebCore::CachedResourceHandleBase::get):
3151 (WebCore::CachedResourceHandleBase::operator!):
3152 (WebCore::CachedResourceHandleBase::operator UnspecifiedBoolType):
3153 (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
3154 (WebCore::CachedResourceHandleBase::operator=):
3155 (WebCore::CachedResourceHandle::CachedResourceHandle):
3156 (WebCore::CachedResourceHandle::get):
3157 (WebCore::CachedResourceHandle::operator->):
3158 (WebCore::CachedResourceHandle::operator=):
3159 (WebCore::CachedResourceHandle::operator==):
3160 (WebCore::CachedResourceHandle::operator!=):
3161 (WebCore::operator==):
3162 (WebCore::operator!=):
3163 * loader/DocLoader.cpp:
3164 (WebCore::DocLoader::checkForReload):
3165 * loader/UserStyleSheetLoader.h:
3166 * loader/loader.cpp:
3167 (WebCore::Loader::Host::servePendingRequests):
3168 (WebCore::Loader::Host::didFinishLoading):
3169 (WebCore::Loader::Host::didFail):
3170 (WebCore::Loader::Host::didReceiveResponse):
3171 (WebCore::Loader::Host::didReceiveData):
3172 * page/EventHandler.cpp:
3173 (WebCore::EventHandler::selectCursor):
3174 * rendering/RenderImage.cpp:
3175 (WebCore::RenderImage::setCachedImage):
3176 (WebCore::RenderImage::imageChanged):
3177 * rendering/RenderImage.h:
3178 (WebCore::RenderImage::cachedImage):
3179 (WebCore::RenderImage::imagePtr):
3180 * rendering/style/RenderStyle.h:
3181 * rendering/style/StyleCachedImage.h:
3182 (WebCore::StyleCachedImage::data):
3183 (WebCore::StyleCachedImage::cachedImage):
3184 * svg/SVGFEImageElement.h:
3185 * svg/graphics/filters/SVGFEImage.h:
3186 * xml/XSLImportRule.h:
3187
beidson@apple.comab60d982008-09-05 04:58:12 +000031882008-09-04 Brady Eidson <beidson@apple.com>
3189
3190 Reviewed by Mitz
3191
3192 <rdar://problem/6180236> - Safari times out connections after 1 or 2 minutes
3193
3194 A 60-second default timeout was added in http://trac.webkit.org/changeset/17144 in an attempt
3195 to model default NSURLRequest behavior in a cross-platform manner.
3196
3197 Sadly by always enforcing this 60 second timeout, WebCore was stomping over the wishes of any Webkit
3198 client that wished to enforce a much larger default timeout using NSURLRequest API.
3199
3200 Additionally, upon reviewing what all other browsers do, it seems apparent that "no limit" is desirable
3201 behavior on the web and this restores previous Safari/WebKit behavior.
3202
3203 It would be easy to write a layout test for this, but to be effective it would have
3204 to run for at least 61 seconds, which seems insane until will can parallelize run-webkit-tests
3205
3206 * manual-tests/timeout-test.html: Added.
3207 * manual-tests/timeout-test.php: Added.
3208
3209 * platform/network/ResourceRequestBase.h:
3210 (WebCore::ResourceRequestBase::ResourceRequestBase): Rename the constant to "unspecifiedTimeoutInterval"
3211 and make it UINT_MAX so platforms that do set it have an effective "no timeout." (Windows, for example)
3212 * platform/network/mac/ResourceRequestMac.mm:
3213 (WebCore::ResourceRequest::doUpdatePlatformRequest): If the timeout for this request is
3214 "unspecifiedTimeoutInterval", then don't bother setting the timeout using NSURLRequest API, allowing
3215 WebKit applications to enforce their own default timeout.
3216
mitz@apple.com20268542008-09-05 04:26:32 +000032172008-09-04 Dan Bernstein <mitz@apple.com>
3218
3219 Reviewed by Beth Dakin.
3220
3221 - fix <rdar://problem/6198514> Changing a button's opacity triggers relayout
3222
3223 Test: fast/repaint/button-spurious-layout-hint.html
3224
3225 * rendering/RenderButton.cpp:
3226 (WebCore::RenderButton::setStyle): Reset the inner block's style box
3227 flex to 0 to avoid getting a spurious layout hint.
3228
kevino@webkit.org3e8c4072008-09-04 23:53:04 +000032292008-09-04 Kevin Ollivier <kevino@theolliviers.com>
3230
3231 wx build fixes.
3232
3233 * WebCoreSources.bkl:
3234 * bindings/js/ScriptControllerWx.cpp: Added.
3235 (WebCore::ScriptController::createScriptInstanceForWidget):
3236 * page/wx/AccessibilityObjectWx.cpp: Added.
3237 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
3238 * platform/graphics/wx/GraphicsContextWx.cpp:
3239 * webcore-base.bkl:
3240 * webcore-wx.bkl:
3241
mitz@apple.com95a87502008-09-04 23:27:19 +000032422008-09-04 Dan Bernstein <mitz@apple.com>
3243
3244 Reviewed by Mark Rowe.
3245
3246 - roll out r36050 because it made svg/custom/invalid-fill-hex.svg fail,
3247 and fixing https://bugs.webkit.org/show_bug.cgi?id=15360 appears to
3248 require a different approach
3249
3250 * css/CSSGrammar.y:
3251
mrowe@apple.com12b7c2d2008-09-04 21:00:02 +000032522008-09-04 Mark Rowe <mrowe@apple.com>
3253
mrowe@apple.com5bc4ea82008-09-04 21:44:28 +00003254 Reviewed by Eric Seidel.
3255
3256 Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
3257 Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
3258
3259 * Configurations/WebCore.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
3260 * DerivedSources.make: Revert to checking for ENABLE_DASHBOARD_SUPPORT rather than looking
3261 for ENABLE_DASHBOARD_SUPPORT in FEATURE_DEFINES.
3262
32632008-09-04 Mark Rowe <mrowe@apple.com>
3264
mrowe@apple.com12b7c2d2008-09-04 21:00:02 +00003265 Mac build fix.
3266
3267 * config.h: Only check the value of HAVE_CONFIG_H if it is defined.
3268
eric@webkit.org0716a542008-09-04 20:44:12 +000032692008-09-04 Eric Seidel <eric@webkit.org>
3270
3271 Build fix only, no review.
3272
3273 * dom/XMLTokenizer.cpp: Fix the Chromium merge build by adding a missing header (the Mac files must include it somewhere).
3274
jmalonzo@webkit.org6afc5d42008-09-04 20:26:16 +000032752008-09-04 Marco Barisione <marco.barisione@collabora.co.uk>
3276
3277 Reviewed by Eric Seidel.
3278
3279 http://bugs.webkit.org/show_bug.cgi?id=20380
3280 [GTK][AUTOTOOLS] Include autotoolsconfig.h from config.h
3281
3282 * config.h: Include the configuration header generated by autotools if
3283 available.
3284
mitz@apple.com9d7e4262008-09-04 18:15:25 +000032852008-09-04 Dan Bernstein <mitz@apple.com>
3286
3287 Rubber-stamped by Dave Hyatt.
3288
3289 - rename CachedResource::allReferencesRemoved() to allClientsRemoved()
3290
3291 * loader/CachedFont.cpp:
3292 (WebCore::CachedFont::allClientsRemoved):
3293 * loader/CachedFont.h:
3294 * loader/CachedImage.cpp:
3295 (WebCore::CachedImage::allClientsRemoved):
3296 * loader/CachedImage.h:
3297 * loader/CachedResource.cpp:
3298 (WebCore::CachedResource::removeClient):
3299 * loader/CachedResource.h:
3300 (WebCore::CachedResource::allClientsRemoved):
3301
aroben@apple.com0da404d2008-09-04 16:09:33 +000033022008-09-04 Adam Roben <aroben@apple.com>
3303
aroben@apple.comdd3861a2008-09-04 16:09:53 +00003304 Windows build fix after r36071
3305
3306 We were getting these errors:
3307
3308 error C2356: initialization segment must not change during translation
3309 unit
3310
3311 This was happening because multiple files #included by
3312 DerivedSources.cpp were themselves #including StaticConstructors.h. I
3313 fixed the error by adding header guards to StaticConstructors.h so its
3314 contents will only be included once.
3315
3316 But it's also not a good idea for StaticConstructors.h to end up in
3317 DerivedSources.cpp, since it ends up "polluting" all the source files
3318 we have in there. So I removed all the files that include
3319 StaticConstructors.h and added some preprocessor directives to
3320 DerivedSources.cpp to catch this error in the future.
3321
3322 * DerivedSources.cpp: Removed the *Names.cpp files, which include
3323 StaticConstructors.h, and added some preprocessor directives to make
3324 sure we don't end up accidentally including StaticConstructors.h in
3325 the future.
3326 * WebCore.vcproj/WebCore.vcproj: Added the *Names.cpp files.
3327 * platform/StaticConstructors.h: Added header guards.
3328
33292008-09-04 Adam Roben <aroben@apple.com>
3330
aroben@apple.com0da404d2008-09-04 16:09:33 +00003331 Windows build fix
3332
3333 * platform/graphics/win/FontPlatformData.h: Added a missing #include
3334 of PassRefPtr.h, and corrected the capitalization of RefCounted.h.
3335 * platform/text/PlatformString.h: Added a missing #include of
3336 PassRefPtr.h.
3337
vestbo@webkit.orgc0aeddf2008-09-04 11:44:17 +000033382008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
3339
3340 Reviewed by Simon.
3341
vestbo@webkit.orgb82da912008-09-04 14:24:58 +00003342 Fix the QtWebKit build to match changes in r36016
3343
3344 * WebCore.pro:
3345 * bridge/qt/qt_instance.cpp:
3346 (KJS::Bindings::QtInstance::getRuntimeObject):
3347 * bridge/qt/qt_runtime.cpp:
3348 (KJS::Bindings::convertQVariantToValue):
3349 (KJS::Bindings::QtConnectionObject::execute):
3350
33512008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
3352
3353 Reviewed by Simon.
3354
vestbo@webkit.orgc0aeddf2008-09-04 11:44:17 +00003355 Re-enable support for user stylesheets in QtWebKit
3356
3357 QtWebKit now follows the FRAME_LOADS_USER_STYLESHEET
3358 code path, which allows us to keep API support for
3359 loading user style sheets from remote URLs.
3360
3361 As part of the change UserStyleSheetLoader.cpp/h was
3362 moved from WebCore/loader/mac to WebCore/loader.
3363
3364 * WebCore.pro:
3365 * WebCore.xcodeproj/project.pbxproj:
3366 * dom/Document.h:
3367 * loader/UserStyleSheetLoader.cpp: Renamed from WebCore/loader/mac/UserStyleSheetLoader.cpp.
3368 (UserStyleSheetLoader::UserStyleSheetLoader):
3369 (UserStyleSheetLoader::~UserStyleSheetLoader):
3370 * loader/UserStyleSheetLoader.h: Renamed from WebCore/loader/mac/UserStyleSheetLoader.h.
3371 * page/qt/FrameQt.cpp:
3372 (WebCore::Frame::setUserStyleSheetLocation):
3373 (WebCore::Frame::setUserStyleSheet):
3374
alp@webkit.org539ff852008-09-04 09:14:42 +000033752008-09-04 Alp Toker <alp@nuanti.com>
3376
3377 Reviewed by Eric.
3378
3379 Remove left-over QT and CAIRO platform checks.
3380
3381 * html/CanvasRenderingContext2D.cpp:
3382
eric@webkit.orgbc0aab82008-09-04 08:39:51 +000033832008-09-04 Eric Seidel <eric@webkit.org>
3384
3385 Reviewed by Mark Rowe.
3386
mitz@apple.com9388d252008-09-04 08:58:58 +00003387 Fix leak of TextMetrics due to over-ref as see on buildbot.
eric@webkit.orgbc0aab82008-09-04 08:39:51 +00003388
3389 * html/TextMetrics.h: use adoptRef since RefCounted starts @ refcount 1 instead of 0 now.
3390
mitz@apple.com89557c52008-09-04 07:26:53 +000033912008-09-04 Dan Bernstein <mitz@apple.com>
3392
3393 Reviewed by Dave Hyatt.
3394
3395 - fix https://bugs.webkit.org/show_bug.cgi?id=19717
3396 <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
3397
3398 * rendering/RenderBlock.cpp:
3399 (WebCore::RenderBlock::layoutOnlyPositionedObjects): In the
3400 positioned movement only case, call
3401 tryLayoutDoingPositionedMovementOnly() and fall back on doing a full
3402 layout if that fails.
3403 (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
3404 * rendering/RenderBox.h:
3405 (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): Renamed
3406 layoutDoingPositionedMovementOnly to this, and made this function
3407 check if the width changed. If it did, return, leaving the object
3408 dirty. The caller can then call layout(). The width can change even
3409 in the "positioned movement only" case if the object is shrink-to-fit
3410 and the available width constraint is met. (This was the case in the
3411 bug).
3412 * rendering/RenderObject.h:
3413 (WebCore::RenderObject::tryLayoutDoingPositionedMovementOnly):
3414 Renamed layoutDoingPositionedMovementOnly() to this.
3415
eric@webkit.org8883b4a2008-09-04 06:31:37 +000034162008-09-03 Eric Seidel <eric@webkit.org>
3417
3418 No review, build fix only.
3419
3420 Attempt to fix the Qt build.
3421
3422 * WebCore.pro: add page/animation to include path
3423
mrowe@apple.comaa4bb8d2008-09-04 03:20:30 +000034242008-09-03 Mark Rowe <mrowe@apple.com>
3425
3426 Mac build fix. Correctly detect whether dashboard support is enabled.
3427
3428 * DerivedSources.make:
3429
eric@webkit.org3eefe672008-09-04 01:32:26 +000034302008-09-03 Eric Seidel <eric@webkit.org>
3431
3432 Reviewed by Sam.
3433
eric@webkit.org5e069092008-09-04 01:32:51 +00003434 Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
3435
3436 * Configurations/WebCore.xcconfig: add missing ENABLE_*
3437 * config.h: add rules for V8_BINDINGS
3438
34392008-09-03 Eric Seidel <eric@webkit.org>
3440
3441 Reviewed by Sam.
3442
eric@webkit.org3eefe672008-09-04 01:32:26 +00003443 https://bugs.webkit.org/show_bug.cgi?id=20620
3444
3445 Add #if USE(JSC) around KJS dependencies
3446 Remove !USE(JAVASCRIPTCORE_BINDINGS) support for 3 reasons:
3447 1. Most platforms have it on anyway
3448 2. V8 is going to want to share some of that code
3449 3. Those platforms which want it off, should have a separate file instead of an #ifdef in our .cpp
3450
3451 * bindings/js/JSPluginElementFunctions.cpp: remove !USE(JAVASCRIPTCORE_BINDINGS) support
3452 * config.h: change JAVASCRIPTCORE_BINDINGS to JSC and add USE(V8)
3453 * html/HTMLAppletElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
3454 * html/HTMLAppletElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
3455 * html/HTMLEmbedElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
3456 * html/HTMLEmbedElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
3457 * html/HTMLObjectElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
3458 * html/HTMLObjectElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
3459 * html/HTMLPlugInElement.cpp: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
3460 * html/HTMLPlugInElement.h: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
3461 * platform/text/AtomicString.cpp: add USE(JSC)
3462 * platform/text/AtomicString.h: add USE(JSC)
3463 * platform/text/PlatformString.h: add USE(JSC)
3464 * platform/text/String.cpp: add USE(JSC)
3465 * platform/text/StringImpl.cpp: add USE(JSC)
3466 * platform/text/StringImpl.h: add USE(JSC)
3467
mrowe@apple.comfbe724c2008-09-03 23:46:54 +000034682008-09-03 Dean McNamee <deanm@chromium.org>
3469
3470 Reviewed by Darin Adler.
3471
3472 Fix https://bugs.webkit.org/show_bug.cgi?id=20511
3473 Bug 20511: Remove static initializers on Windows
3474
3475 Avoid static initializers on Windows by forcing Visual C++ to put
3476 all static initializers in a code segment that is never executed.
3477
3478 * config.h:
3479 * css/MediaFeatureNames.cpp:
3480 * dom/EventNames.cpp:
3481 * dom/QualifiedName.cpp:
3482 * dom/make_names.pl:
3483 * platform/StaticConstructors.h:
3484 * platform/text/AtomicString.cpp:
3485
mrowe@apple.com3aa63182008-09-03 23:40:49 +000034862008-09-03 Dirk Schulze <vbs85@gmx.de>
3487
3488 Reviewed by Dave Hyatt.
3489
3490 Make FontCairo draw TextStroke and TextFill separately.
3491
3492 [CAIRO] draw TextFill and TextStroke separately.
3493 [https://bugs.webkit.org/show_bug.cgi?id=20631]
3494
3495 * platform/graphics/cairo/FontCairo.cpp:
3496 (WebCore::Font::drawGlyphs):
3497
mrowe@apple.comdcd72b72008-09-03 23:34:40 +000034982008-09-03 Peter Kasting <zerodpx@gmail.com>
3499
3500 Reviewed by Dave Hyatt.
3501
3502 https://bugs.webkit.org/show_bug.cgi?id=19663
3503 Account for paint and timer lag when animating images. Also pretend
3504 that images whose animations were paused (by becoming invisible)
3505 continued to animate, by "catching up" to the correct frame when they're
3506 shown again.
3507
3508 * platform/graphics/BitmapImage.cpp:
3509 (WebCore::BitmapImage::BitmapImage):
3510 (WebCore::BitmapImage::startAnimation):
3511 (WebCore::BitmapImage::advanceAnimation):
3512 (WebCore::BitmapImage::internalAdvanceAnimation):
3513 (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
3514 * platform/graphics/BitmapImage.h:
3515 * platform/graphics/cairo/ImageCairo.cpp:
3516 (WebCore::BitmapImage::draw):
3517 * platform/graphics/cg/ImageCG.cpp:
3518 (WebCore::BitmapImage::draw):
3519 * platform/graphics/qt/ImageQt.cpp:
3520 (WebCore::BitmapImage::draw):
3521 * platform/graphics/wx/ImageWx.cpp:
3522 (WebCore::BitmapImage::draw):
3523
kmccullough@apple.comb0f4c622008-09-03 21:53:17 +000035242008-09-03 Kevin McCullough <kmccullough@apple.com>
3525
3526 Reviewed by Tim.
3527
3528 Remove the rest of the "zombie" code from the profiler.
3529 - There is no longer a need for the ProfilerClient callback mechanism.
3530
3531 * page/Console.cpp:
3532 (WebCore::Console::Console):
3533 (WebCore::Console::profile):
3534 (WebCore::Console::profileEnd): Move the variables from the header to
3535 here since we don't have to wait for a callback to use them.
3536 * page/Console.h:
3537 * page/InspectorController.cpp:
3538 (WebCore::InspectorController::startUserInitiatedProfiling):
3539 (WebCore::InspectorController::stopUserInitiatedProfiling):
3540 * page/InspectorController.h:
3541
adachan@apple.com38c66182008-09-03 21:43:44 +000035422008-09-03 Ada Chan <adachan@apple.com>
3543
3544 Windows build fix.
3545
3546 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitCSSKeyframeRule.cpp and JSWebKitCSSKeyframesRule.cpp to the project.
3547
dino@apple.com5c917622008-09-03 21:15:53 +000035482008-09-01 Dean Jackson <dino@apple.com>
3549
3550 Reviewed by Dave Hyatt.
3551
3552 https://bugs.webkit.org/show_bug.cgi?id=20594
3553 Add DOM interfaces for WebKitCSSKeyframeRule
3554 and WebKitCSSKeyframesRule.
3555
3556 TEST: LayoutTests/css3/keyframes-rule.html
3557
3558 * css/WebKitCSSKeyframeRule.idl: Added
3559 * css/WebKitCSSKeyframesRule.idl: Added
3560
3561 * bindings/js/JSCSSRuleCustom.cpp:
3562 (WebCore::toJS):
3563 Add return of new JS Keyframe rules
3564 * bindings/objc/DOMInternal.h:
3565 Include new internal header
3566
3567 * DerivedSources.make:
3568 * GNUmakefile.am:
3569 * WebCore.pro:
3570 * WebCore.vcproj/WebCore.vcproj:
3571 * WebCore.xcodeproj/project.pbxproj:
3572 * WebCoreSources.bkl:
3573 Build configs for new files
3574
aroben@apple.com1f51bfa2008-09-03 20:30:59 +000035752008-09-03 Adam Roben <aroben@apple.com>
3576
3577 Windows build fix
3578
3579 * DerivedSources.cpp: Add JSTextMetrics.cpp to fix the build.
3580 * WebCore.vcproj/WebCore.vcproj: Add JSTextMetrics.h for
3581 convenience/consistency.
3582
adele@apple.com27713582008-09-03 20:13:41 +000035832008-09-03 Adele Peterson <adele@apple.com>
3584
3585 Build fix.
3586
3587 * WebCore.vcproj/WebCore.vcproj:
3588
hyatt@apple.com4b38ed82008-09-03 18:32:05 +000035892008-09-03 David Hyatt <hyatt@apple.com>
3590
3591 Fix for bug 18203, right floats should be allowed to overflow past the left border edge.
3592
3593 Reviewed by Darin (ages ago)
3594
3595 Added fast/block/float/clamped-right-float.html
3596
3597 * rendering/RenderBlock.cpp:
3598 (WebCore::RenderBlock::positionNewFloats):
3599
hyatt@apple.comafe62052008-09-03 18:13:39 +000036002008-09-02 David Hyatt <hyatt@apple.com>
3601
3602 Add support for canvas text drawing APIs.
3603
3604 Reviewed by olliej
3605
3606 Tests added as fast/canvas/canvas-text-*.html
3607
3608 * DerivedSources.make:
3609 * WebCore.xcodeproj/project.pbxproj:
3610 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
3611 (WebCore::JSCanvasRenderingContext2D::fillText):
3612 (WebCore::JSCanvasRenderingContext2D::strokeText):
3613 * css/CSSStyleSelector.cpp:
3614 (WebCore::CSSStyleSelector::initForStyleResolve):
3615 (WebCore::CSSStyleSelector::applyPropertyToStyle):
3616 * css/CSSStyleSelector.h:
3617 * html/CanvasRenderingContext2D.cpp:
3618 (WebCore::CanvasRenderingContext2D::State::State):
3619 (WebCore::CanvasRenderingContext2D::font):
3620 (WebCore::CanvasRenderingContext2D::setFont):
3621 (WebCore::CanvasRenderingContext2D::textAlign):
3622 (WebCore::CanvasRenderingContext2D::setTextAlign):
3623 (WebCore::CanvasRenderingContext2D::textBaseline):
3624 (WebCore::CanvasRenderingContext2D::setTextBaseline):
3625 (WebCore::CanvasRenderingContext2D::fillText):
3626 (WebCore::CanvasRenderingContext2D::strokeText):
3627 (WebCore::CanvasRenderingContext2D::measureText):
3628 (WebCore::CanvasRenderingContext2D::drawTextInternal):
3629 (WebCore::CanvasRenderingContext2D::accessFont):
3630 * html/CanvasRenderingContext2D.h:
3631 * html/CanvasRenderingContext2D.idl:
3632 * html/TextMetrics.h: Added.
3633 (WebCore::TextMetrics::create):
3634 (WebCore::TextMetrics::width):
3635 (WebCore::TextMetrics::setWidth):
3636 (WebCore::TextMetrics::TextMetrics):
3637 * html/TextMetrics.idl: Added.
3638 * platform/graphics/Font.cpp:
3639 (WebCore::Font::lineGap):
3640 * platform/graphics/Font.h:
3641 * platform/graphics/GraphicsContext.cpp:
3642 (WebCore::GraphicsContext::drawBidiText):
3643 * platform/graphics/GraphicsContext.h:
3644 * platform/graphics/GraphicsTypes.cpp:
3645 (WebCore::textAlignName):
3646 (WebCore::parseTextAlign):
3647 (WebCore::textBaselineName):
3648 (WebCore::parseTextBaseline):
3649 * platform/graphics/GraphicsTypes.h:
3650 (WebCore::):
3651
sullivan@apple.combc066af2008-09-03 17:37:24 +000036522008-09-03 John Sullivan <sullivan@apple.com>
3653
3654 Fixed <rdar://problem/6193022> <rdar://problem/6193022> Crash occurs at WebCore::AnimationBase::propertiesEqual () after certain steps
3655
3656 Fixed by Darin, reviewed by me
3657
3658 * page/animation/AnimationBase.cpp:
3659 (WebCore::AnimationBase::propertiesEqual):
3660 added ensurePropertyMap() to this static function
3661 (WebCore::AnimationBase::getPropertyAtIndex):
3662 ditto
3663 (WebCore::AnimationBase::getNumProperties):
3664 ditto
3665
kmccullough@apple.com70168ee2008-09-03 17:35:42 +000036662008-09-03 Kevin McCullough <kmccullough@apple.com>
3667
3668 Reviewed by Darin and Tim.
3669
3670 Remove most of the "zombie" mode from the profiler. Next we will need
3671 to remove the client callback mechanism in profiles.
3672 - These changes are a result of changes to JSCore.
3673
3674 * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html:
3675 * page/Console.cpp:
3676 (WebCore::retrieveLastCaller):
3677 (WebCore::Console::profileEnd):
3678 * page/InspectorController.cpp:
3679 (WebCore::InspectorController::stopUserInitiatedProfiling):
3680
adele@apple.com643616b2008-09-03 16:57:58 +000036812008-09-03 Adele Peterson <adele@apple.com>
3682
3683 Reviewed by Darin Adler.
3684
3685 Test: fast/forms/search-display-none-cancel-button.html
3686
3687 Allow display:none to work on a search field's cancel button. Prepare for adding more style-ability for the results button too.
3688
3689 * css/html4.css: Set display:inline-block for these buttons. Now they can be overridden by a web author.
3690
3691 * rendering/RenderTextControl.cpp:
3692 (WebCore::RenderTextControl::setStyle): Add nil checks for the button renderers.
3693 (WebCore::RenderTextControl::createResultsButtonStyle): Don't set the display explicitly. This is now done in html4.css.
3694 (WebCore::RenderTextControl::createCancelButtonStyle): ditto.
3695 (WebCore::RenderTextControl::createSubtreeIfNeeded):
3696 Reorganize this code so our complicated way of adding shadow nodes is abstracted out into the TextControlInnerElement class.
3697 (WebCore::RenderTextControl::updateFromElement): Added nil checks for the button renderers.
3698 (WebCore::RenderTextControl::subtreeHasChanged): ditto.
3699 (WebCore::RenderTextControl::calcHeight): ditto.
3700 (WebCore::RenderTextControl::nodeAtPoint): ditto.
3701 (WebCore::RenderTextControl::layout): ditto.
3702 (WebCore::RenderTextControl::calcPrefWidths): ditto.
3703 (WebCore::RenderTextControl::clientPaddingLeft): ditto.
3704 (WebCore::RenderTextControl::clientPaddingRight): ditto.
3705
3706 * rendering/TextControlInnerElements.cpp:
3707 (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock): Moved from RenderTextControl.cpp.
3708 (WebCore::RenderTextControlInnerBlock::nodeAtPoint): ditto.
3709 (WebCore::TextControlInnerElement::attachInnerElement): Added.
3710 This does all the separate steps of attaching a shadow node that used to be repeated in RenderTextControl::createSubtreeIfNeeded for each element.
3711 (WebCore::TextControlInnerTextElement::createRenderer): Added. Creates a RenderTextControlInnerBlock.
3712 * rendering/TextControlInnerElements.h:
3713
ap@webkit.orgacd84142008-09-03 08:08:19 +000037142008-08-28 Alexey Proskuryakov <ap@webkit.org>
3715
3716 Reviewed by Maciej.
3717
3718 Elminate SQLiteAuthorizer class.
3719
3720 * WebCore.xcodeproj/project.pbxproj:
3721 * WebCore.vcproj/WebCore.vcproj:
3722 * GNUmakefile.am
3723 Removed SQLiteAuthorizer.h.
3724
3725 * platform/sql/SQLiteAuthorizer.cpp:
3726 * platform/sql/SQLiteAuthorizer.h: Removed.
3727 * platform/sql/SQLiteDatabase.cpp:
3728 (WebCore::SQLiteDatabase::authorizerFunction):
3729 (WebCore::SQLiteDatabase::setAuthorizer):
3730 * platform/sql/SQLiteDatabase.h:
3731 * storage/DatabaseAuthorizer.h:
3732 (WebCore::DatabaseAuthorizer::create):
3733 (WebCore::DatabaseAuthorizer::createView):
3734 (WebCore::DatabaseAuthorizer::createTempView):
3735 (WebCore::DatabaseAuthorizer::dropView):
3736 (WebCore::DatabaseAuthorizer::dropTempView):
3737 (WebCore::DatabaseAuthorizer::allowSelect):
3738 (WebCore::DatabaseAuthorizer::allowReindex):
3739 Merge SQLiteAuthorizer and DatabaseAuthorizer, as keeping them separate serves no purpose.
3740
mrowe@apple.com2ecd4862008-09-03 07:05:48 +000037412008-09-03 Dirk Schulze <vbs85@gmx.de>
3742
3743 Reviewed by Mark Rowe.
3744
3745 WebKitGtk build fix.
3746
3747 * GNUmakefile.am:
3748 * page/animation/AnimationController.h:
3749
mrowe@apple.come344ad02008-09-03 06:59:03 +000037502008-09-02 Robert Blaut <webkit@blaut.biz>
3751
3752 Reviewed by Geoff Garen.
3753
3754 Fix for <https://bugs.webkit.org/show_bug.cgi?id=16913>
3755 Misplaced elements should not close DL lists.
3756
3757 Test: fast/invalid/test-case-tr-th-td-should-not-close-dl-list.html
3758
3759 * html/HTMLParser.cpp:
3760 (WebCore::HTMLParser::handleError):
3761
mrowe@apple.com7a909462008-09-03 06:51:31 +000037622008-09-02 Glenn Wilson <wilsong@gmail.com>
3763
3764 Reviewed by Darin Adler.
3765
3766 Fix for <https://bugs.webkit.org/show_bug.cgi?id=15360>
3767 Bug 15360: color:#{predefined colorName} is treated as colorName in Safari
3768
3769 We would inappropriately interpret and apply an invalid CSS "color" property
3770 when the value is a predefined color preceded by a '#' symbol. For example,
3771 style="color:#gray;" would apply the color gray when it should not.
3772
3773 In the bison template, "hexcolor" was defined as both "HEX maybe_space" OR "IDENT maybe_space".
3774 This caused identifiers not fitting the appropriate hex format but preceded by a '#' to be
3775 interpreted as a valid color (CSSPrimitiveValue::CSS_PARSER_HEXCOLOR), when it was really just
3776 an ignorable token.
3777
3778 To correct this, "IDENT maybe_space" was removed from "hexcolor" and added under "term" as
3779 '#' IDENT maybe_space, which is then processed as a CSSPrimitiveValue::CSS_STRING instead of
3780 CSSPrimitiveValue::CSS_PARSER_HEXCOLOR.
3781
3782 Test: css1/color_and_background/invalid_color.html
3783
3784 * css/CSSGrammar.y:
3785
mrowe@apple.comda9a1442008-09-03 06:22:12 +000037862008-09-02 Mihnea Ovidenie <mihnea@adobe.com>
3787
3788 Reviewed by Darin Adler.
3789
3790 Fix for https://bugs.webkit.org/show_bug.cgi?id=19964
3791 Bug 19964: Divide by zero crash in RenderBox::calculateBackgroundSize with 0,0 bmp background image
3792
3793 Add a check to RenderBox::repaintLayerRectsForImage to make sure the current layer image can be rendered.
3794
3795 Test: css3/khtml-background-size-0x0-bmp.html
3796
3797 * rendering/RenderBox.cpp:
3798 (WebCore::RenderBox::repaintLayerRectsForImage):
3799
mrowe@apple.com6625ae52008-09-03 06:12:30 +000038002008-09-02 Glenn Wilson <wilsong@gmail.com>
3801
3802 Reviewed by Eric Seidel.
3803
3804 Fix https://bugs.webkit.org/show_bug.cgi?id=20397
3805 Bug 20397: Invalid webkit-border-bottom-left-radius property causes crash
3806
3807 The function checkForOrphanedUnits() would change the length of a list whose size was
3808 was already determined before the call to checkForOrphanedUnits was made. Later in
3809 the caller, the old size was being used for boundary management.
3810
3811 This has been fixed by moving the call to checkForOrphanedUnits() earlier in the
3812 calling function, before the size of the list is determined.
3813
3814 Test: fast/css/orphaned_units_crash.html
3815
3816 * css/CSSParser.cpp:
3817 (WebCore::CSSParser::parseValue): Moved call to checkForOrphanedUnits() earlier in the function.
3818
mrowe@apple.com170bd522008-09-03 05:49:51 +000038192008-09-02 Dirk Schulze <vbs85@gmx.de>
3820
3821 Reviewed by Darin Adler.
3822
mrowe@apple.comeb877a52008-09-03 06:01:15 +00003823 Fallback on invalid fill or stroke styles in Canvas was
3824 transparent black. Changed it to last valid style.
3825
3826 Canvas fillStyle() and strokeStyle() needs fallback
3827 https://bugs.webkit.org/show_bug.cgi?id=20474
3828
3829 Tests: fast/canvas/canvas-invalid-fillstyle.html
3830 fast/canvas/canvas-invalid-strokestyle.html
3831
3832 * html/CanvasStyle.cpp:
3833 (WebCore::CanvasStyle::applyStrokeColor):
3834 (WebCore::CanvasStyle::applyFillColor):
3835
38362008-09-02 Dirk Schulze <vbs85@gmx.de>
3837
3838 Reviewed by Darin Adler.
3839
mrowe@apple.com170bd522008-09-03 05:49:51 +00003840 Fix https://bugs.webkit.org/show_bug.cgi?id=20468
3841 Updated drawImage() in canvas to match the current specification.
3842
3843 Test: fast/canvas/drawImage-with-negative-source-destination.html
3844
3845 * html/CanvasRenderingContext2D.cpp:
3846 (WebCore::normalizeRect):
3847 (WebCore::CanvasRenderingContext2D::drawImage):
3848
mrowe@apple.com96916d12008-09-03 05:41:44 +000038492008-08-26 Mark Rowe <mrowe@apple.com>
3850
3851 Reviewed by Darin Adler.
3852
3853 <rdar://problem/5768210> Switch back to the system version of SQLite
3854
3855 Use the system version of SQLite when it is new enough to provide the functionality
3856 that WebCore requires.
3857
3858 * Configurations/Base.xcconfig:
3859 * Configurations/DebugRelease.xcconfig:
3860 * Configurations/WebCore.xcconfig:
3861
mitz@apple.comce268c12008-09-03 02:59:00 +000038622008-09-02 Dan Bernstein <mitz@apple.com>
3863
3864 - build fix
3865
3866 * page/animation/AnimationBase.h:
3867
dino@apple.com7e49a7a2008-09-03 01:32:14 +000038682008-09-02 Chris Marrin <cmarrin@apple.com>
3869
3870 Reviewed by Dave Hyatt.
3871
3872 AnimationController.cpp should be split into separate files
3873 https://bugs.webkit.org/show_bug.cgi?id=20604
3874
3875 Note: All makefiles, except WebCore.xcodeproj have been changed without testing, upon
3876 recommendation of Dave Hyatt.
3877
3878 * GNUmakefile.am:
3879 * WebCore.pro:
3880 * WebCore.vcproj/WebCore.vcproj:
3881 * WebCore.xcodeproj/project.pbxproj:
3882 * WebCoreSources.bkl:
3883 Build files.
3884
3885 * page/AnimationController.cpp: Removed.
3886 * page/AnimationController.h: Removed.
3887 * page/animation: Added.
3888 * page/animation/AnimationBase.cpp: Added.
3889 * page/animation/AnimationBase.h: Added.
3890 * page/animation/AnimationController.cpp: Copied from WebCore/page/AnimationController.cpp.
3891 * page/animation/AnimationController.h: Copied from WebCore/page/AnimationController.h.
3892 * page/animation/CompositeAnimation.cpp: Added.
3893 * page/animation/CompositeAnimation.h: Added.
3894 * page/animation/ImplicitAnimation.cpp: Added.
3895 * page/animation/ImplicitAnimation.h: Added.
3896 * page/animation/KeyframeAnimation.cpp: Added.
3897 * page/animation/KeyframeAnimation.h: Added.
3898
mitz@apple.comcb917a22008-09-03 00:57:37 +000038992008-09-02 Dan Bernstein <mitz@apple.com>
3900
3901 - release build fix
3902
3903 * platform/graphics/cg/GraphicsContextCG.cpp:
3904 (WebCore::calculateDrawingMode):
3905
timothy@apple.comf3aa7342008-09-02 21:30:26 +000039062008-09-02 Timothy Hatcher <timothy@apple.com>
3907
timothy@apple.comc33ff3c2008-09-02 21:35:02 +00003908 Make console functions log the correct resource URL and
3909 line number for where the call originated.
3910
3911 https://bugs.webkit.org/show_bug.cgi?id=17234
3912 <rdar://problem/5732837>
3913
3914 Reviewed by Kevin McCullough.
3915
3916 Test: manual-tests/inspector/console-call-line-numbers.html
3917
3918 * bindings/js/JSConsoleCustom.cpp:
3919 (WebCore::JSConsole::count): Call the impl.
3920 (WebCore::JSConsole::timeEnd): Ditto.
3921 * manual-tests/inspector/console-call-line-numbers.html: Added.
3922 * manual-tests/inspector/resources/script-console-calls.js: Added.
3923 * page/Console.cpp:
3924 (WebCore::retrieveLastCaller): Helper to get the URL and line.
3925 (WebCore::Console::error): Call retrieveLastCaller to get the URL and
3926 line number to pass to addMessageToConsole.
3927 (WebCore::Console::info): Ditto.
3928 (WebCore::Console::log): Ditto.
3929 (WebCore::Console::assertCondition): Ditto.
3930 (WebCore::Console::count): Ditto.
3931 (WebCore::Console::timeEnd): Ditto.
3932 (WebCore::Console::warn): Ditto.
3933 * page/Console.h:
3934 * page/Console.idl: Make count and timeEnd custom.
3935
39362008-09-02 Timothy Hatcher <timothy@apple.com>
3937
timothy@apple.comf3aa7342008-09-02 21:30:26 +00003938 Removed IDL files from WebCore's framework resources.
3939
3940 * WebCore.xcodeproj/project.pbxproj:
3941
mitz@apple.comfb6ad392008-09-02 20:39:29 +000039422008-09-02 Dan Bernstein <mitz@apple.com>
3943
3944 Reviewed by Dave Hyatt.
3945
3946 - <rdar://problem/5681647> pages at http://www.stendmarsofa.com/ are so slow to calculate style it seems like a hang
3947
3948 * html/HTMLParser.cpp:
3949 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added a
3950 cap on the number of consecutive identical residual style tags to
3951 reopen.
3952 (WebCore::HTMLParser::popBlock): Ditto.
3953
ap@webkit.org879328b2008-09-02 16:16:06 +000039542008-09-02 Alexey Proskuryakov <ap@webkit.org>
3955
3956 Reviewed by Adam Roben.
3957
3958 A little database quota management cleanup.
3959
3960 * storage/OriginQuotaManager.cpp:
3961 (WebCore::OriginQuotaManager::OriginQuotaManager):
3962 (WebCore::OriginQuotaManager::lock):
3963 (WebCore::OriginQuotaManager::unlock):
3964 (WebCore::OriginQuotaManager::trackOrigin):
3965 (WebCore::OriginQuotaManager::tracksOrigin):
3966 (WebCore::OriginQuotaManager::addDatabase):
3967 (WebCore::OriginQuotaManager::removeDatabase):
3968 (WebCore::OriginQuotaManager::removeOrigin):
3969 (WebCore::OriginQuotaManager::markDatabase):
3970 (WebCore::OriginQuotaManager::diskUsage):
3971 * storage/OriginQuotaManager.h:
3972 Changed to assert that a lock is taken more directly and reliably. Removed comments about
3973 main/background threads, as this is likely to stop being true with synchronous Database calls
3974 being made on worker threads.
3975
3976 * storage/OriginUsageRecord.cpp:
3977 (WebCore::OriginUsageRecord::OriginUsageRecord):
3978 (WebCore::OriginUsageRecord::addDatabase):
3979 (WebCore::OriginUsageRecord::removeDatabase):
3980 (WebCore::OriginUsageRecord::markDatabase):
3981 (WebCore::OriginUsageRecord::diskUsage):
3982 * storage/OriginUsageRecord.h:
3983 (WebCore::OriginUsageRecord::DatabaseEntry::DatabaseEntry):
3984 Don't use a magic value for unknown. It is totally unnecessary for DatabaseEntry, and
3985 can be replaced with a single boolean for OriginUsageRecord.
3986 Added assertions for string parameters being unshared.
3987
3988
abarth@webkit.orgaea97a02008-09-02 04:26:15 +000039892008-09-01 Adam Barth <abarth@webkit.org>
3990
3991 Reviewed by Sam Weinig.
3992
3993 https://bugs.webkit.org/show_bug.cgi?id=19760
3994
3995 Make granting LoadLocalResources conditional on a policy.
3996
3997 * WebCore.base.exp:
3998 * dom/Document.cpp:
3999 (WebCore::Document::initSecurityContext):
4000 * loader/FrameLoader.cpp:
4001 (WebCore::FrameLoader::setLocalLoadPolicy):
4002 (WebCore::FrameLoader::restrictAccessToLocal):
4003 * loader/FrameLoader.h:
4004 (WebCore::FrameLoader::):
4005 * platform/SecurityOrigin.cpp:
4006 (WebCore::SecurityOrigin::grantLoadLocalResources):
4007 * platform/SecurityOrigin.h:
4008
dino@apple.com6e2db502008-09-01 23:05:28 +000040092008-09-01 Dean Jackson <dino@apple.com>
4010
dino@apple.com59ca9f52008-09-01 23:34:13 +00004011 Reviewed by Sam Weinig.
4012
4013 https://bugs.webkit.org/show_bug.cgi?id=20571
4014 Make sure Window object can assign Animation/Transition event
4015 listeners via attributes.
4016
4017 Also added a bunch of transition event tests, although
4018 only transition-end-event-window is directly relevant to this patch.
4019
4020 (WebCore::JSDOMWindowBase::put):
4021
4022 Tests: transitions/transition-end-event-all-properties.html
4023 transitions/transition-end-event-attributes.html
4024 transitions/transition-end-event-container.html
4025 transitions/transition-end-event-left.html
4026 transitions/transition-end-event-multiple-01.html
4027 transitions/transition-end-event-multiple-02.html
4028 transitions/transition-end-event-multiple-03.html
4029 transitions/transition-end-event-multiple-04.html
4030 transitions/transition-end-event-nested.html
4031 transitions/transition-end-event-transform.html
4032 transitions/transition-end-event-window.html
4033
40342008-09-01 Dean Jackson <dino@apple.com>
4035
dino@apple.com6e2db502008-09-01 23:05:28 +00004036 Reviewed by Sam Weinig
4037
4038 Code styling cleanup.
4039
4040 * bindings/js/JSDOMWindowBase.cpp:
4041 (WebCore::JSDOMWindowBase::getValueProperty):
4042 (WebCore::JSDOMWindowBase::put):
4043
weinig@apple.com3412bb42008-09-01 21:22:54 +000040442008-09-01 Geoffrey Garen <ggaren@apple.com>
4045
4046 Reviewed by Darin Adler.
4047
4048 First cut at inline caching for access to vanilla JavaScript properties.
4049
4050 Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
4051 to WebCore classes, and PutPropertySlot& arguments to put functions.
4052
4053 (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
4054 inline caching for global properties, so global assignment can be optimized.
4055
4056 * ForwardingHeaders/kjs/StructureID.h: Added.
4057 * bindings/js/JSDOMBinding.h:
4058 (WebCore::DOMObject::DOMObject):
4059 * bindings/js/JSDOMWindowBase.cpp:
4060 (WebCore::JSDOMWindowBase::put):
4061 * bindings/js/JSDOMWindowBase.h:
4062 * bindings/js/JSDOMWindowCustom.h:
4063 (WebCore::JSDOMWindow::customPut):
4064 * bindings/js/JSDOMWindowShell.cpp:
4065 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
4066 (WebCore::JSDOMWindowShell::put):
4067 * bindings/js/JSDOMWindowShell.h:
4068 * bindings/js/JSEventTargetBase.h:
4069 (WebCore::JSEventTargetBase::put):
4070 * bindings/js/JSEventTargetNode.h:
4071 (WebCore::JSEventTargetNode::put):
4072 * bindings/js/JSHTMLAppletElementCustom.cpp:
4073 (WebCore::JSHTMLAppletElement::customPut):
4074 * bindings/js/JSHTMLEmbedElementCustom.cpp:
4075 (WebCore::JSHTMLEmbedElement::customPut):
4076 * bindings/js/JSHTMLInputElementBase.cpp:
4077 (WebCore::JSHTMLInputElementBase::put):
4078 * bindings/js/JSHTMLInputElementBase.h:
4079 * bindings/js/JSHTMLObjectElementCustom.cpp:
4080 (WebCore::JSHTMLObjectElement::customPut):
4081 * bindings/js/JSHistoryCustom.cpp:
4082 (WebCore::JSHistory::customPut):
4083 * bindings/js/JSInspectedObjectWrapper.cpp:
4084 (WebCore::JSInspectedObjectWrapper::wrap):
4085 (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
4086 * bindings/js/JSInspectedObjectWrapper.h:
4087 * bindings/js/JSInspectorCallbackWrapper.cpp:
4088 (WebCore::JSInspectorCallbackWrapper::wrap):
4089 (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
4090 * bindings/js/JSInspectorCallbackWrapper.h:
4091 * bindings/js/JSLocationCustom.cpp:
4092 (WebCore::JSLocation::customPut):
4093 * bindings/js/JSPluginElementFunctions.cpp:
4094 (WebCore::runtimeObjectCustomPut):
4095 * bindings/js/JSPluginElementFunctions.h:
4096 * bindings/js/JSQuarantinedObjectWrapper.cpp:
4097 (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
4098 (WebCore::JSQuarantinedObjectWrapper::put):
4099 * bindings/js/JSQuarantinedObjectWrapper.h:
4100 * bindings/js/JSStorageCustom.cpp:
4101 (WebCore::JSStorage::customPut):
4102 * bindings/objc/WebScriptObject.mm:
4103 (-[WebScriptObject setValue:forKey:]):
4104 * bindings/scripts/CodeGeneratorJS.pm:
4105 * bridge/NP_jsobject.cpp:
4106 (_NPN_SetProperty):
4107 * bridge/jni/jni_jsobject.mm:
4108 (JavaJSObject::setMember):
4109 * bridge/objc/objc_class.mm:
4110 (KJS::Bindings::ObjcClass::fallbackObject):
4111 * bridge/objc/objc_runtime.h:
4112 * bridge/objc/objc_runtime.mm:
4113 (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
4114 (ObjcFallbackObjectImp::put):
4115 * bridge/runtime.cpp:
4116 (KJS::Bindings::Instance::createRuntimeObject):
4117 * bridge/runtime_array.cpp:
4118 (RuntimeArray::put):
4119 * bridge/runtime_array.h:
4120 * bridge/runtime_object.cpp:
4121 (RuntimeObjectImp::RuntimeObjectImp):
4122 (RuntimeObjectImp::put):
4123 * bridge/runtime_object.h:
4124
jmalonzo@webkit.org1f770ba2008-09-01 12:43:34 +000041252008-09-01 Dirk Schulze <vbs85@gmx.de>
4126
4127 Reviewed by Eric Seidel.
4128
jmalonzo@webkit.org37f07882008-09-01 12:43:48 +00004129 Fixed border-radius for Cairo.
4130
4131 * platform/graphics/cairo/GraphicsContextCairo.cpp:
4132 (WebCore::GraphicsContext::strokeArc):
4133
41342008-09-01 Dirk Schulze <vbs85@gmx.de>
4135
4136 Reviewed by Eric Seidel.
4137
jmalonzo@webkit.org1f770ba2008-09-01 12:43:34 +00004138 Added canvas's globalAlpha to cairo.
4139
4140 * platform/graphics/GraphicsContext.h:
4141 * platform/graphics/cairo/GraphicsContextCairo.cpp:
4142 (WebCore::GraphicsContext::fillPath):
4143 (WebCore::GraphicsContext::strokePath):
4144 (WebCore::GraphicsContext::setAlpha):
4145 (WebCore::GraphicsContext::getAlpha):
4146 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
4147 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
4148 * platform/graphics/cairo/ImageCairo.cpp:
4149 (WebCore::BitmapImage::draw):
4150
hausmann@webkit.orgecd099d2008-08-31 13:13:28 +000041512008-08-31 Simon Hausmann <hausmann@webkit.org>
4152
4153 Unreviewed Qt build fix.
4154
4155 * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
4156 the .h file
4157
darin@apple.come7945852008-08-31 06:58:07 +000041582008-08-30 Darin Adler <darin@apple.com>
4159
4160 Reviewed by Maciej.
4161
4162 - adopt some new JavaScriptCore functions where appropriate
4163
4164 * bindings/js/JSDOMWindowBase.cpp:
4165 (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
4166 (WebCore::windowProtoFuncBToA): Ditto.
4167 * bindings/js/JSEventListener.cpp:
4168 (WebCore::JSLazyEventListener::eventParameterName): Adopted
4169 jsNontrivialString.
4170 * bindings/js/JSSVGLazyEventListener.cpp:
4171 (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
4172
beidson@apple.com21c821f2008-08-30 00:26:01 +000041732008-08-29 Brady Eidson <beidson@apple.com>
4174
beidson@apple.come1bd6032008-08-30 00:30:11 +00004175 Reviewed by Anders' rubberstamp
4176
4177 Style cleanup to match MediaTokenizer::writeRawData()
4178
4179 * loader/PluginDocument.cpp:
4180 (WebCore::PluginTokenizer::writeRawData):
4181
41822008-08-29 Brady Eidson <beidson@apple.com>
4183
beidson@apple.com21c821f2008-08-30 00:26:01 +00004184 Reviewed by Anders
4185
4186 Fix regression I introducted in 35946
4187 Already covered by media/video-click-dlbclick-standalone.html
4188
4189 * loader/MediaDocument.cpp:
4190 (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
4191 (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called. Also add
4192 an ASSERT signifying that this method should only be called once, to more closely follow the
4193 PluginDocument case.
4194
bdakin@apple.com7ee298c2008-08-30 00:00:30 +000041952008-08-29 Beth Dakin <bdakin@apple.com>
4196
4197 Reviewed by Sam Weinig.
4198
4199 Fix for <rdar://problem/6181588>
4200
4201 This patch makes hit testing take into account the new concept of a
4202 disconnected frame, in which some of the content may not be
4203 visible. The current hit testing mechanism starts at a target frame
4204 and drills down for a HitTestResult. In some cases, drilling down
4205 will find a non-visible result. When this happens, we need to try
4206 again, starting at a higher level -- namely, starting at the main
4207 frame.
4208
4209 * editing/Editor.cpp:
4210 (WebCore::Editor::insideVisibleArea): New function that tests if a
4211 point is inside the visible area for a disconnected frame.
4212 * editing/Editor.h:
4213 * page/EventHandler.cpp:
4214 (WebCore::EventHandler::hitTestResultAtPoint):
4215
adele@apple.comfb903062008-08-29 22:30:18 +000042162008-08-29 Adele Peterson <adele@apple.com>
4217
4218 Reviewed by Adam Roben.
4219
4220 Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
4221
4222 * GNUmakefile.am:
4223 * WebCore.pro:
4224 * WebCore.vcproj/WebCore.vcproj:
4225 * WebCore.xcodeproj/project.pbxproj:
4226 * WebCoreSources.bkl:
4227 * html/HTMLTextFieldInnerElement.cpp: Removed.
4228 * html/HTMLTextFieldInnerElement.h: Removed.
4229 * rendering/RenderTextControl.cpp:
4230 (WebCore::RenderTextControl::createSubtreeIfNeeded):
4231 * rendering/RenderTextControl.h:
4232 * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
4233 (WebCore::TextControlInnerElement::TextControlInnerElement):
4234 (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
4235 (WebCore::TextControlInnerTextElement::defaultEventHandler):
4236 (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
4237 (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
4238 (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
4239 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
4240 * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
4241
eric@webkit.org298c65b2008-08-29 21:39:32 +000042422008-08-29 Eric Seidel <eric@webkit.org>
4243
eric@webkit.org77837ce2008-08-29 21:40:07 +00004244 Rubber-stamped by aroben.
4245
4246 Add GraphicsContext.h include to GraphcisContextPrivate.h
4247
4248 GraphicsContextPrivate uses StrokeStyle which is defined
4249 in GraphicsContext.h but it doesn't include that header.
4250 CoreGraphics build doesn't fail here due to the order
4251 it happens to include files.
4252
4253 * platform/graphics/GraphicsContextPrivate.h:
4254
42552008-08-29 Eric Seidel <eric@webkit.org>
4256
eric@webkit.org298c65b2008-08-29 21:39:32 +00004257 Reviewed by hyatt.
4258
4259 Fix GeneratedImage to respect Image's refcounting
4260 Fixing potential crashers (future if not current)
4261 https://bugs.webkit.org/show_bug.cgi?id=20567
4262
4263 I don't know if it's possible to make the current code
4264 crash, thus I've not made a test.
4265
4266 * css/CSSGradientValue.cpp:
4267 (WebCore::CSSGradientValue::image):
4268 * css/CSSImageGeneratorValue.cpp:
4269 (WebCore::CSSImageGeneratorValue::removeClient):
4270 (WebCore::CSSImageGeneratorValue::getImage):
4271 * css/CSSImageGeneratorValue.h:
4272 * platform/graphics/GeneratedImage.h:
4273 (WebCore::GeneratedImage::GeneratedImage):
4274 * rendering/style/RenderStyle.cpp:
4275 (WebCore::RenderStyle::setContent):
4276 * rendering/style/RenderStyle.h:
4277
eric.carlson@apple.comddeafd42008-08-29 20:07:19 +000042782008-08-29 Eric Carlson <eric.carlson@apple.com>
4279
4280 Reviewed by Adele.
4281
eric.carlson@apple.com850c77c2008-08-29 20:24:50 +00004282 Fix for <rdar://problem/6093767>
4283 https://bugs.webkit.org/show_bug.cgi?id=20526
4284
4285 Don't allow video to render until unsupported track types have been disabled.
4286
4287 * platform/graphics/win/QTMovieWin.cpp:
4288 (QTMovieWinPrivate::task):
4289 (QTMovieWinPrivate::drawingComplete):
4290 (QTMovieWinPrivate::clearGWorld):
4291
42922008-08-29 Eric Carlson <eric.carlson@apple.com>
4293
4294 Reviewed by Adele.
4295
eric.carlson@apple.comddeafd42008-08-29 20:07:19 +00004296 Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
4297 <rdar://problem/6169301>
4298
4299 Return the size of the movie data instead of 1000.
4300
4301 Test: media/progress-event-total.html
4302
4303 * platform/graphics/win/QTMovieWin.cpp:
4304 (QTMovieWin::dataSize):
4305
hausmann@webkit.org0367b582008-08-29 15:56:02 +000043062008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
4307
hausmann@webkit.orgfe7f2ac2008-08-29 15:57:44 +00004308 Reviewed by Eric Seidel.
4309
4310 [janitor/qt] Start replacing port specific getters with the generic native getter
4311 To get the native presentation of an image we currently have platform
4312 specific #ifdef's and a generic getter using NativeImagePtr. This patch
4313 extends this to the ImageBuffer and updates the Qt platform to get rid
4314 of the special #ifdefs.
4315
4316 https://bugs.webkit.org/attachment.cgi?id=22861
4317
4318 * platform/graphics/BitmapImage.h:
4319 * platform/graphics/Image.h:
4320 * platform/graphics/qt/ImageQt.cpp:
4321 * platform/graphics/qt/StillImageQt.cpp:
4322 * platform/graphics/qt/StillImageQt.h:
4323 * platform/qt/ClipboardQt.cpp:
4324 (WebCore::ClipboardQt::createDragImage):
4325 (WebCore::ClipboardQt::declareAndWriteDragImage):
4326 * platform/qt/CursorQt.cpp:
4327 * platform/qt/PasteboardQt.cpp:
4328 (WebCore::Pasteboard::writeImage):
4329
43302008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
4331
hausmann@webkit.org0367b582008-08-29 15:56:02 +00004332 Reviewed by Simon.
4333
hausmann@webkit.orgb99266e2008-08-29 15:56:59 +00004334 [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
4335
4336 * svg/graphics/qt/SVGPaintServerQt.cpp:
4337 (WebCore::SVGPaintServer::renderPath):
4338 * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
4339 (WebCore::SVGPaintServerSolid::setup):
4340
43412008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
4342
4343 Reviewed by Simon.
4344
hausmann@webkit.org0367b582008-08-29 15:56:02 +00004345 [network/qt] Implement defering of loading ResourceHandle's
4346 This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
4347 implementation is simply not forwarding anything to the
4348 ResourceHandleClient until we are allowed to. This might lead to a deadlock
4349 in Qt as we do not empty the QNetworkReply input buffer and wait until we
4350 are allowed to read. If that happens we are forced to buffer the data
4351 within QNetworkReplyHandler, for now this is not done.
4352
4353 Manual test:
4354 - Open http://acid3.acidtests.org
4355 - Wait for the test to complete
4356 - Click on the Reference Rendering link
4357 - Be fast and see the results of acid3
4358 => assert
4359
4360 * platform/network/qt/QNetworkReplyHandler.cpp:
4361 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
4362 (WebCore::QNetworkReplyHandler::setLoadMode):
4363 (WebCore::QNetworkReplyHandler::finish):
4364 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
4365 (WebCore::QNetworkReplyHandler::forwardData):
4366 (WebCore::QNetworkReplyHandler::start):
4367 (WebCore::QNetworkReplyHandler::resetState):
4368 (WebCore::QNetworkReplyHandler::sendQueuedItems):
4369 * platform/network/qt/QNetworkReplyHandler.h:
4370 (WebCore::QNetworkReplyHandler::):
4371 * platform/network/qt/ResourceHandleQt.cpp:
4372 (WebCore::ResourceHandle::start):
4373 (WebCore::ResourceHandle::loadResourceSynchronously):
4374 (WebCore::ResourceHandle::setDefersLoading):
4375
hausmann@webkit.org2f2621f2008-08-29 10:21:38 +000043762008-08-29 Simon Hausmann <hausmann@webkit.org>
4377
hausmann@webkit.orgf5864402008-08-29 12:35:59 +00004378 Reviewed by Holger.
4379
4380 Don't crash when drawing patterns with the HTML canvas. Patterns
4381 remain unimplemented but at least they don't crash anymore. This is
4382 done by changing the PlatformPatternPtr to be a brush for the Qt
4383 platform.
4384
4385 * platform/graphics/Pattern.h:
4386 * platform/graphics/qt/GraphicsContextQt.cpp:
4387 (WebCore::GraphicsContext::fillPath):
4388 (WebCore::GraphicsContext::strokePath):
4389 (WebCore::GraphicsContext::fillRect):
4390 * platform/graphics/qt/PatternQt.cpp:
4391 (WebCore::Pattern::createPlatformPattern):
4392
43932008-08-29 Simon Hausmann <hausmann@webkit.org>
4394
hausmann@webkit.org2f2621f2008-08-29 10:21:38 +00004395 Fix the Qt build, fontSelector() is not used by the Qt port yet
4396 and we just return 0 in Font::fontSelector().
4397
4398 * platform/graphics/Font.h:
4399
alp@webkit.org97d8c102008-08-29 05:09:39 +000044002008-08-28 Alp Toker <alp@nuanti.com>
4401
4402 GTK+ dist/build fix. List newly added header files.
4403
4404 * GNUmakefile.am:
4405
simon.fraser@apple.com8f30d022008-08-28 23:04:18 +000044062008-08-28 Simon Fraser <simon.fraser@apple.com>
4407
4408 Reviewed by Dave Hyatt
4409
4410 Various WebKitCSSTransformValue-related fixes
4411 https://bugs.webkit.org/show_bug.cgi?id=20562
4412
4413 Test: css3/transform-value-types.html
4414
4415 * bindings/js/JSCSSValueCustom.cpp:
4416 (WebCore::toJS):
4417 * css/CSSValue.h:
4418 * css/WebKitCSSTransformValue.cpp:
4419 (WebCore::WebKitCSSTransformValue::cssText):
4420 * css/WebKitCSSTransformValue.h:
4421 (WebCore::WebKitCSSTransformValue::):
4422 * css/WebKitCSSTransformValue.idl:
4423
mitz@apple.comd7222352008-08-28 22:53:31 +000044242008-08-28 Dan Bernstein <mitz@apple.com>
4425
4426 Reviewed by Steve Falkenburg.
4427
4428 - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
4429
4430 * platform/win/SharedTimerWin.cpp:
4431 (WebCore::TimerWindowWndProc):
4432
hyatt@apple.com7d335232008-08-28 21:38:45 +000044332008-08-28 David Hyatt <hyatt@apple.com>
4434
4435 RenderStyle cleanup.
4436
4437 Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
4438
4439 Reviewed by Adam
4440
4441 * css/CSSImageGeneratorValue.cpp:
4442 * css/CSSImageValue.cpp:
4443 * css/CSSStyleSelector.cpp:
4444 * rendering/RenderImageGeneratedContent.cpp:
4445 * rendering/style/NinePieceImage.cpp: Added.
4446 * rendering/style/NinePieceImage.h: Added.
4447 * rendering/style/RenderStyle.cpp:
4448 (WebCore::FillLayer::operator==):
4449 (WebCore::FillLayer::containsImage):
4450 (WebCore::StyleInheritedData::operator==):
4451 (WebCore::RenderStyle::contentDataEquivalent):
4452 * rendering/style/RenderStyle.h:
4453 * rendering/style/StyleCachedImage.cpp: Added.
4454 * rendering/style/StyleCachedImage.h: Added.
4455 * rendering/style/StyleGeneratedImage.cpp: Added.
4456 * rendering/style/StyleGeneratedImage.h: Added.
4457 * rendering/style/StyleImage.h: Added.
4458
simon.fraser@apple.com28bad1a2008-08-28 21:29:21 +000044592008-08-28 Simon Fraser <simon.fraser@apple.com>
4460
4461 Reviewed by Dave Hyatt
4462
4463 Make all the 'isFoo()' methods on CSSValue const,
4464 and fix the subclasses.
4465
4466 https://bugs.webkit.org/show_bug.cgi?id=20561
4467
4468 * css/CSSTimingFunctionValue.h:
4469 * css/CSSValue.h:
4470 (WebCore::CSSValue::isFontValue):
4471 (WebCore::CSSValue::isImageGeneratorValue):
4472 (WebCore::CSSValue::isImageValue):
4473 (WebCore::CSSValue::isImplicitInitialValue):
4474 * css/CSSValueList.h:
4475 * css/FontValue.h:
4476
hyatt@apple.com550a95c2008-08-28 19:53:56 +000044772008-08-28 David Hyatt <hyatt@apple.com>
4478
hyatt@apple.comcb3eb812008-08-28 20:08:03 +00004479 The great RenderStyle cleanup begins!
4480
4481 Move LengthBox and LengthSize out of RenderStyle and into Length.
4482
4483 Reviewed by Adam
4484
4485 * rendering/Length.h:
4486 (WebCore::):
4487 (WebCore::Length::Length):
4488 (WebCore::Length::operator==):
4489 (WebCore::Length::operator!=):
4490 (WebCore::Length::value):
4491 (WebCore::Length::rawValue):
4492 (WebCore::Length::percent):
4493 (WebCore::Length::type):
4494 (WebCore::Length::quirk):
4495 (WebCore::Length::setValue):
4496 (WebCore::Length::setRawValue):
4497 (WebCore::Length::calcValue):
4498 (WebCore::Length::calcMinValue):
4499 (WebCore::Length::calcFloatValue):
4500 (WebCore::Length::isUndefined):
4501 (WebCore::Length::isZero):
4502 (WebCore::Length::isPositive):
4503 (WebCore::Length::isNegative):
4504 (WebCore::Length::isAuto):
4505 (WebCore::Length::isRelative):
4506 (WebCore::Length::isPercent):
4507 (WebCore::Length::isFixed):
4508 (WebCore::Length::isStatic):
4509 (WebCore::Length::isIntrinsicOrAuto):
4510 (WebCore::Length::blend):
4511 (WebCore::LengthBox::LengthBox):
4512 (WebCore::LengthBox::operator=):
4513 (WebCore::LengthBox::operator==):
4514 (WebCore::LengthBox::operator!=):
4515 (WebCore::LengthBox::nonZero):
4516 (WebCore::LengthSize::LengthSize):
4517 * rendering/style/RenderStyle.h:
4518
45192008-08-28 David Hyatt <hyatt@apple.com>
4520
hyatt@apple.com550a95c2008-08-28 19:53:56 +00004521 Reviewed by Darin
4522
4523 https://bugs.webkit.org/show_bug.cgi?id=18091
4524
4525 font-size should be animatable using -webkit-transition.
4526
4527 * page/AnimationController.cpp:
4528 (WebCore::AnimationControllerPrivate::ensurePropertyMap):
4529 * rendering/style/RenderStyle.h:
4530 (WebCore::RenderStyle::setFontSize):
4531
mitz@apple.com30923ad2008-08-28 17:45:47 +000045322008-08-28 Brad Garcia <bgarcia@google.com>
4533
4534 Reviewed by Dan Bernstein.
4535
4536 https://bugs.webkit.org/show_bug.cgi?id=20549
4537 Correctly determine when cursor is over a resizable border within
4538 a nested frameset.
4539
4540 * rendering/RenderFrameSet.cpp:
4541 (WebCore::RenderFrameSet::canResizeRow):
4542 (WebCore::RenderFrameSet::canResizeColumn):
4543
simon.fraser@apple.comae77c412008-08-28 17:30:07 +000045442008-08-28 Simon Fraser <simon.fraser@apple.com>
4545
4546 Reviewed by Eric Seidel
4547
4548 Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
4549 https://bugs.webkit.org/show_bug.cgi?id=20552
4550
4551 Test: animations/animation-css-rule-types.html
4552
4553 * css/CSSRule.idl:
4554
andersca@apple.com12399c32008-08-28 17:26:46 +000045552008-08-28 Anders Carlsson <andersca@apple.com>
4556
4557 Reviewed by Kevin and Darin.
4558
4559 <rdar://problem/6182541>
4560 https://bugs.webkit.org/show_bug.cgi?id=20202
4561 Missing http status line from the http headers.
4562
4563 Add a status line to the header string.
4564
4565 * plugins/PluginStream.cpp:
4566 (WebCore::PluginStream::startStream):
4567
zecke@webkit.orgf1daa422008-08-28 15:56:01 +000045682008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
4569
4570 Rubber-stamped by Darin Adler.
4571
4572 https://bugs.webkit.org/show_bug.cgi?id=17261
4573
4574 Make it possible to theme the default Url icon and enable this for
4575 the Qt port. To have a minimal usage of #ifdef in the code the setting
4576 of the icon was moved to a new method which comes in two flavors.
4577
4578 * loader/icon/IconDatabase.cpp:
4579 (WebCore::loadDefaultIconRecord): Load or set the default icon
4580 (WebCore::IconDatabase::defaultIcon):
4581
zecke@webkit.org1887dc82008-08-28 15:03:21 +000045822008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
4583
4584 Unreviewed compile fix
4585
4586 * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
4587
aroben@apple.comfacf5032008-08-28 13:34:01 +000045882008-08-28 Adam Roben <aroben@apple.com>
4589
4590 Windows (and others?) build fix
4591
4592 * page/Chrome.cpp: Added a missing #include.
4593 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
4594
eric@webkit.org22794fd2008-08-28 12:04:40 +000045952008-08-27 Eric Seidel <eric@webkit.org>
4596
4597 Reviewed by Oliver Hunt.
4598
eric@webkit.org5f874e92008-08-28 12:04:55 +00004599 Qt and Cairo support from krit (and blind stab @ wx compile support)
4600 https://bugs.webkit.org/show_bug.cgi?id=20373
4601
4602 * platform/graphics/cairo/GraphicsContextCairo.cpp:
4603 (WebCore::GraphicsContext::fillPath):
4604 (WebCore::GraphicsContext::strokePath):
4605 (WebCore::GraphicsContext::drawPath):
4606 (WebCore::GraphicsContext::fillRect):
4607 (WebCore::GraphicsContext::setPlatformFillColor):
4608 (WebCore::GraphicsContext::setPlatformStrokeColor):
4609 (WebCore::GraphicsContext::setPlatformStrokeStyle):
4610 (WebCore::GraphicsContext::strokeRect):
4611 (WebCore::GraphicsContext::setImageInterpolationQuality):
4612 (WebCore::GraphicsContext::imageInterpolationQuality):
4613 (WebCore::GraphicsContext::setPlatformFillPattern):
4614 (WebCore::GraphicsContext::setPlatformStrokePattern):
4615 (WebCore::GraphicsContext::setPlatformFillGradient):
4616 (WebCore::GraphicsContext::setPlatformStrokeGradient):
4617 * platform/graphics/qt/GraphicsContextQt.cpp:
4618 (WebCore::GraphicsContext::fillPath):
4619 (WebCore::GraphicsContext::strokePath):
4620 (WebCore::GraphicsContext::fillRect):
4621 (WebCore::GraphicsContext::strokeRect):
4622 (WebCore::GraphicsContext::clipToImageBuffer):
4623 (WebCore::GraphicsContext::setPlatformFillPattern):
4624 (WebCore::GraphicsContext::setPlatformStrokePattern):
4625 (WebCore::GraphicsContext::setPlatformFillGradient):
4626 (WebCore::GraphicsContext::setPlatformStrokeGradient):
4627 (WebCore::GraphicsContext::setImageInterpolationQuality):
4628 (WebCore::GraphicsContext::imageInterpolationQuality):
4629 * platform/graphics/wx/GraphicsContextWx.cpp:
4630 (WebCore::GraphicsContext::clipToImageBuffer):
4631 (WebCore::GraphicsContext::setImageInterpolationQuality):
4632 (WebCore::GraphicsContext::imageInterpolationQuality):
4633 (WebCore::GraphicsContext::fillPath):
4634 (WebCore::GraphicsContext::strokePath):
4635 (WebCore::GraphicsContext::drawPath):
4636 (WebCore::GraphicsContext::fillRect):
4637 (WebCore::GraphicsContext::setPlatformFillPattern):
4638 (WebCore::GraphicsContext::setPlatformStrokePattern):
4639 (WebCore::GraphicsContext::setPlatformFillGradient):
4640
46412008-08-27 Eric Seidel <eric@webkit.org>
4642
4643 Reviewed by Oliver Hunt.
4644
eric@webkit.org22794fd2008-08-28 12:04:40 +00004645 Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
4646 https://bugs.webkit.org/show_bug.cgi?id=20373
4647
4648 Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
4649
4650 Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
4651 have to store large Gradient objects in the GraphicsContextState
4652
4653 Made Pattern RefCounted for the same reason.
4654
4655 Many updates to GraphicsContext to support easier drawing with
4656 Patterns and Gradients.
4657
4658 * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
4659 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
4660 (WebCore::toJS):
4661 * css/CSSGradientValue.cpp:
4662 (WebCore::CSSGradientValue::createGradient):
4663 * css/CSSGradientValue.h:
4664 * html/CanvasGradient.cpp:
4665 (WebCore::CanvasGradient::CanvasGradient):
4666 * html/CanvasGradient.h:
4667 (WebCore::CanvasGradient::gradient):
4668 (WebCore::CanvasGradient::addColorStop):
4669 (WebCore::CanvasGradient::getColor):
4670 * html/CanvasPattern.cpp:
4671 * html/CanvasPattern.h:
4672 (WebCore::CanvasPattern::pattern):
4673 (WebCore::CanvasPattern::originClean):
4674 * html/CanvasRenderingContext2D.cpp:
4675 (WebCore::CanvasRenderingContext2D::State::State):
4676 (WebCore::CanvasRenderingContext2D::setStrokeStyle):
4677 (WebCore::CanvasRenderingContext2D::setFillStyle):
4678 (WebCore::CanvasRenderingContext2D::fill):
4679 (WebCore::CanvasRenderingContext2D::stroke):
4680 (WebCore::CanvasRenderingContext2D::fillRect):
4681 (WebCore::CanvasRenderingContext2D::strokeRect):
4682 * html/CanvasRenderingContext2D.h:
4683 * html/CanvasStyle.cpp:
4684 (WebCore::CanvasStyle::applyStrokeColor):
4685 (WebCore::CanvasStyle::applyFillColor):
4686 * html/CanvasStyle.h:
4687 * platform/graphics/GeneratedImage.h:
4688 (WebCore::GeneratedImage::GeneratedImage):
4689 * platform/graphics/Generator.h:
4690 * platform/graphics/Gradient.h:
4691 (WebCore::Gradient::create):
4692 * platform/graphics/GraphicsContext.cpp:
4693 (WebCore::GraphicsContext::fillRule):
4694 (WebCore::GraphicsContext::setFillRule):
4695 (WebCore::GraphicsContext::setStrokePattern):
4696 (WebCore::GraphicsContext::setFillPattern):
4697 (WebCore::GraphicsContext::setStrokeGradient):
4698 (WebCore::GraphicsContext::setFillGradient):
4699 * platform/graphics/GraphicsContext.h:
4700 * platform/graphics/GraphicsContextPrivate.h:
4701 (WebCore::):
4702 (WebCore::GraphicsContextState::GraphicsContextState):
4703 * platform/graphics/GraphicsTypes.h:
4704 * platform/graphics/Path.h:
4705 * platform/graphics/Pattern.h:
4706 (WebCore::Pattern::create):
4707 (WebCore::Pattern::tileImage):
4708 * platform/graphics/cg/GraphicsContextCG.cpp:
4709 (WebCore::GraphicsContext::drawRect):
4710 (WebCore::GraphicsContext::drawEllipse):
4711 (WebCore::GraphicsContext::drawConvexPolygon):
4712 (WebCore::calculateDrawingMode):
4713 (WebCore::GraphicsContext::drawPath):
4714 (WebCore::fillPathWithFillRule):
4715 (WebCore::GraphicsContext::fillPath):
4716 (WebCore::GraphicsContext::strokePath):
4717 (WebCore::GraphicsContext::fillRect):
4718 (WebCore::GraphicsContext::fillRoundedRect):
4719 (WebCore::GraphicsContext::setPlatformStrokePattern):
4720 (WebCore::GraphicsContext::setPlatformFillPattern):
4721 (WebCore::GraphicsContext::setPlatformStrokeGradient):
4722 (WebCore::GraphicsContext::setPlatformFillGradient):
4723
eric@webkit.org70b099f2008-08-28 11:42:26 +000047242008-08-20 Eric Seidel <eric@webkit.org>
4725
4726 Reviewed by Darin and Alexey.
4727
4728 Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
4729 with timeouts paused.
4730 https://bugs.webkit.org/show_bug.cgi?id=20469
4731
4732 I attempted to clean up the memory management of PausedTimeouts, I'm not
4733 sure the solution I came up with is "cleaner", but it's in some ways
4734 "safer", since it no longer uses raw pointers and manual new/delete.
4735
4736 This also now prevents CachedPage from needlessly creating Window
4737 objects when caching pages which didn't already have one. :)
4738
4739 I also made Chrome.cpp no longer depend on the JavaScript bindings
4740 (aka JSDOMWindowBase.h), since there was no real reason for it to.
4741
4742 * bindings/js/JSDOMWindowBase.cpp:
4743 (WebCore::JSDOMWindowBase::pauseTimeouts):
4744 (WebCore::JSDOMWindowBase::resumeTimeouts):
4745 * bindings/js/JSDOMWindowBase.h:
4746 * bindings/js/ScriptController.cpp:
4747 (WebCore::ScriptController::pauseTimeouts):
4748 (WebCore::ScriptController::resumeTimeouts):
4749 * bindings/js/ScriptController.h:
4750 * history/CachedPage.cpp:
4751 (WebCore::CachedPage::CachedPage):
4752 (WebCore::CachedPage::restore):
4753 * page/Chrome.cpp:
4754 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
4755 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
4756 * page/JavaScriptDebugServer.cpp:
4757 (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
4758 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
4759
zecke@webkit.org7d0df9e2008-08-28 03:36:31 +000047602008-08-27 Holger Hans Peter Freyther <zecke@selfish.org>
4761
4762 Unreviewed compile fix
4763
4764 Add the stub for the Qt port.
4765
4766 * WebCore.pro:
4767 * page/qt/AccessibilityObjectQt.cpp: Added.
4768 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
4769
zecke@webkit.orged5c2fe2008-08-28 02:15:20 +000047702008-08-27 Alp Toker <alp@nuanti.com>
4771
4772 Reviewed by Eric.
4773
4774 https://bugs.webkit.org/show_bug.cgi?id=20551
zecke@webkit.org81540882008-08-28 02:18:20 +00004775 [GTK] search popup crash
4776
4777 * platform/gtk/SearchPopupMenuGtk.cpp:
4778 (WebCore::SearchPopupMenu::enabled):
4779 Fix a search popup crasher by disabling the history popup since we
4780 don't support this feature yet in the GTK+ port.
4781
47822008-08-27 Alp Toker <alp@nuanti.com>
4783
4784 Reviewed by Eric.
4785
4786 https://bugs.webkit.org/show_bug.cgi?id=20551
zecke@webkit.orged5c2fe2008-08-28 02:15:20 +00004787 [GTK] curl crashers
4788
4789 * platform/network/curl/ResourceHandleManager.cpp:
4790 (WebCore::ResourceHandleManager::startScheduledJobs):
4791 Remove the resource handle from the pending list before starting the
4792 job, not afterwards. Fixes crashers in the test suite.
4793
4794 Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
4795 Test: fast/encoding/char-encoding.html
4796
eric@webkit.org712cb892008-08-28 00:26:15 +000047972008-08-27 Dirk Schulze <vbs85@gmx.de>
4798
4799 Reviewed by eseidel.
4800
4801 Fix canvas drawImage to support composite operations.
4802 Composite had no effect on canvas elements like these:
4803 http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
4804
4805 [CAIRO] Canvas composite don't work on canvas-elements.
4806 https://bugs.webkit.org/show_bug.cgi?id=20548
4807
4808 * html/CanvasRenderingContext2D.cpp:
4809 (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
4810
eric@webkit.org75c83a02008-08-28 00:04:59 +000048112008-08-27 Mario Bensi <mbensi@pleyo.com>
4812
4813 Reviewed by Eric Seidel.
4814
4815 Fix the data content of an image with a base64.
4816
4817 * platform/network/curl/ResourceHandleManager.cpp:
4818 (WebCore::parseDataUrl): Remove the String and use only the data
4819 Vector because the data.latin1().data() convert the data content and
4820 the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
4821 not drawn correctly.
4822
antti@apple.comf66a86b2008-08-27 23:59:50 +000048232008-08-27 Antti Koivisto <antti@apple.com>
4824
4825 Reviewed by Eric Seidel.
4826
4827 Crash after OK in dialog box and reloading page in secure mode
4828 https://bugs.webkit.org/show_bug.cgi?id=20493
4829
4830 The new run loop spawned by a modal dialog causes a timer in the loader to run
4831 synchronously inside didFinishLoading() deleting "this" object.
4832
4833 Defer all WebCore timers when a modal dialog is up. They are not
4834 safe to execute.
4835
4836 * page/Chrome.cpp:
4837 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
4838 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
4839
simon.fraser@apple.com7dbde252008-08-27 23:16:36 +000048402008-08-27 Chris Marrin <cmarrin@apple.com>
4841
4842 Reviewed by Dave Hyatt
4843
4844 Memory leaks when animating transforms
4845 https://bugs.webkit.org/show_bug.cgi?id=20532
4846
4847 * rendering/style/RenderStyle.cpp:
4848 (WebCore::ScaleTransformOperation::blend):
4849 (WebCore::RotateTransformOperation::blend):
4850 (WebCore::SkewTransformOperation::blend):
4851 (WebCore::TranslateTransformOperation::blend):
4852 (WebCore::MatrixTransformOperation::blend):
4853 * rendering/style/RenderStyle.h:
4854
timothy@apple.com79cb13a2008-08-27 22:03:24 +000048552008-08-27 Timothy Hatcher <timothy@apple.com>
4856
4857 Add support for support for -webkit-appearance: default-button on the Mac platform.
4858
4859 <rdar://problem/6173530>
4860
4861 Reviewed by Dave Hyatt.
4862
4863 * WebCore.base.exp: Export new symbols.
4864 * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
4865 * platform/mac/WebCoreSystemInterface.mm: Ditto.
4866 * rendering/RenderButton.cpp:
4867 (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
4868 (WebCore::RenderButton::setStyle): Ditto.
4869 * rendering/RenderButton.h: Ditto.
4870 * rendering/RenderThemeMac.mm:
4871 (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
4872 (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
4873 key if the button is default, otherwise reset the key equivalent.
4874 (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
4875 on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
4876 the window's previous default button cell when finished.
4877
hyatt@apple.comf0ec84d2008-08-27 21:18:15 +000048782008-08-26 David Hyatt <hyatt@apple.com>
4879
4880 First cut at making form controls on OS X respect full page zoom. There are lots of bugs.
4881
4882 Reviewed by weinig
4883
4884 Added fast/forms/zoomed-controls.html
4885
4886 * css/CSSStyleSelector.cpp:
4887 (WebCore::addIntrinsicMargins):
4888 * rendering/RenderSlider.cpp:
4889 (WebCore::RenderSlider::calcPrefWidths):
4890 * rendering/RenderThemeMac.h:
4891 * rendering/RenderThemeMac.mm:
4892 (WebCore::RenderThemeMac::adjustRepaintRect):
4893 (WebCore::RenderThemeMac::inflateRect):
4894 (WebCore::RenderThemeMac::baselinePosition):
4895 (WebCore::RenderThemeMac::setControlSize):
4896 (WebCore::RenderThemeMac::sizeForFont):
4897 (WebCore::RenderThemeMac::sizeForSystemFont):
4898 (WebCore::RenderThemeMac::setFontFromControlSize):
4899 (WebCore::RenderThemeMac::paintCheckbox):
4900 (WebCore::RenderThemeMac::setCheckboxCellState):
4901 (WebCore::RenderThemeMac::paintRadio):
4902 (WebCore::RenderThemeMac::setRadioCellState):
4903 (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
4904 (WebCore::RenderThemeMac::adjustButtonStyle):
4905 (WebCore::RenderThemeMac::setButtonCellState):
4906 (WebCore::RenderThemeMac::paintButton):
4907 (WebCore::RenderThemeMac::paintMenuList):
4908 (WebCore::RenderThemeMac::paintMenuListButton):
4909 (WebCore::RenderThemeMac::popupInternalPaddingLeft):
4910 (WebCore::RenderThemeMac::popupInternalPaddingRight):
4911 (WebCore::RenderThemeMac::popupInternalPaddingTop):
4912 (WebCore::RenderThemeMac::popupInternalPaddingBottom):
4913 (WebCore::RenderThemeMac::setPopupButtonCellState):
4914 (WebCore::RenderThemeMac::paintSliderTrack):
4915 (WebCore::RenderThemeMac::paintSliderThumb):
4916 (WebCore::RenderThemeMac::adjustSliderThumbSize):
4917 (WebCore::RenderThemeMac::paintSearchField):
4918 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
4919 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
4920 (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
4921
beidson@apple.comd0793872008-08-27 19:59:55 +000049222008-08-27 Brady Eidson <beidson@apple.com>
4923
4924 Reviewed by Anders
4925
4926 <rdar://problem/6134133> - Crash when loading large movie as a standalone document
4927
4928 We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
4929 to load and buffer the data for the movie in WebCore. With large media files, this results in blowing
4930 away the virtual address space and a crash.
4931
4932 * loader/EmptyClients.h:
4933 (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
4934 * loader/FrameLoaderClient.h: Added client method to get platform specific error for
4935 "plugin will handle load"
4936
4937 * loader/MediaDocument.cpp:
4938 (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
4939 and cancel the WebCore-managed load
4940 (WebCore::MediaTokenizer::writeRawData):
4941 (WebCore::MediaTokenizer::finish):
4942
simon.fraser@apple.come74d6712008-08-27 18:19:55 +000049432008-08-26 Simon Fraser <simon.fraser@apple.com>
4944
4945 Reviewed by Eric Seidel
4946
4947 Linear timing functions should have control points 0, 0, 1, 1.
4948 https://bugs.webkit.org/show_bug.cgi?id=20535
4949
4950 * css/CSSStyleSelector.cpp:
4951 (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
4952 * rendering/style/RenderStyle.h:
4953
aroben@apple.com8cfb6c62008-08-27 14:52:17 +000049542008-08-27 Adam Roben <aroben@apple.com>
4955
4956 Windows build fix
4957
4958 * WebCore.vcproj/WebCore.vcproj: Fix file extension.
4959
mrowe@apple.com37686d42008-09-04 00:10:39 +000049602008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com33a556b2008-08-26 22:29:14 +00004961
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00004962 Reviewed by Beth Dakin.
4963
cfleizach@apple.com2a505f42008-08-26 22:56:03 +00004964 <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
4965
4966 Added platform-specific accessibilityIgnoreAttachment, which allows the platform
4967 to determine if an attachment is ignored through accessibility. Added equivalent
4968 methods in Gtk, Win and Mac
4969
4970 Test: accessibility/plugin.html
4971
4972 * GNUmakefile.am:
4973 * WebCore.vcproj/WebCore.vcproj:
4974 * WebCore.xcodeproj/project.pbxproj:
4975 * page/AccessibilityObject.h:
4976 * page/AccessibilityRenderObject.cpp:
4977 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
4978 * page/gtk/AccessibilityObjectAtk.cpp: Added.
4979 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
4980 * page/mac/AccessibilityObjectMac.mm: Added.
4981 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
4982 * page/mac/AccessibilityObjectWrapper.h:
4983 * page/win/AccessibilityObjectWin.cpp: Added.
4984 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
4985
mrowe@apple.com37686d42008-09-04 00:10:39 +000049862008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com2a505f42008-08-26 22:56:03 +00004987
4988 Reviewed by Beth Dakin.
4989
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00004990 <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
4991
4992 * page/mac/AccessibilityObjectWrapper.mm:
4993 (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
4994 (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
4995
mrowe@apple.com37686d42008-09-04 00:10:39 +000049962008-08-26 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.comc6ebe3d2008-08-26 22:43:22 +00004997
cfleizach@apple.com33a556b2008-08-26 22:29:14 +00004998 Reviewed by Darin Adler.
4999
5000 <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
5001
5002 Tests: accessibility/table-notbody.html
5003
5004 * page/AccessibilityTable.cpp:
5005 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
5006
weinig@apple.com33705852008-08-26 19:51:28 +000050072008-08-26 Sam Weinig <sam@webkit.org>
5008
weinig@apple.comf6f553a2008-08-26 21:21:26 +00005009 Reviewed by Beth Dakin.
5010
5011 Fix typo.
5012
5013 * dom/DOMCoreException.h:
5014
50152008-08-26 Sam Weinig <sam@webkit.org>
5016
weinig@apple.com0f34f002008-08-26 19:56:54 +00005017 Reviewed by Oliver Hunt.
5018
5019 Fix https://bugs.webkit.org/show_bug.cgi?id=20479
5020 <rdar://problem/6167660>
5021 Take image redirects into account when tainting the canvas.
5022
5023 Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
5024
5025 * html/CanvasRenderingContext2D.cpp:
5026 (WebCore::CanvasRenderingContext2D::drawImage):
5027 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
5028
50292008-08-26 Sam Weinig <sam@webkit.org>
5030
weinig@apple.com33705852008-08-26 19:51:28 +00005031 Reviewed by Darin Adler.
5032
5033 Change canvas tainting logic to ask the image if it contains
5034 any resources outside of its own origin. Since there is no
5035 way to determine if SVG images contain any resources outside its
5036 origin, we always assume it does.
5037
5038 * html/CanvasRenderingContext2D.cpp:
5039 (WebCore::CanvasRenderingContext2D::drawImage):
5040 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
5041 * platform/graphics/BitmapImage.h:
5042 (WebCore::BitmapImage::hasSingleSecurityOrigin):
5043 * platform/graphics/GeneratedImage.h:
5044 (WebCore::GeneratedImage::hasSingleSecurityOrigin):
5045 * platform/graphics/Image.h:
5046 (WebCore::Image::hasSingleSecurityOrigin):
5047 * platform/graphics/cg/PDFDocumentImage.h:
5048 (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
5049 * svg/graphics/SVGImage.h:
5050
britto@apple.com616ef6d2008-08-26 17:51:03 +000050512008-08-26 Maxime Britto <britto@apple.com>
5052
5053 Reviewed by Adele.
5054
5055 <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
5056 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.
5057 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.
5058
5059 * page/EventHandler.cpp:
5060 (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
5061 * page/EventHandler.h:
5062 * rendering/RenderLayer.cpp:
5063 (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
5064 (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.
5065 * rendering/RenderLayer.h:
5066 * rendering/RenderObject.cpp:
5067 (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
5068 (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
5069 (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
5070
jchaffraix@webkit.orge6915392008-08-26 10:27:33 +000050712008-08-25 Julien Chaffraix <jchaffraix@webkit.org>
5072
darin@apple.com07c80c62008-09-05 18:15:43 +00005073 Reviewed by Darin Adler.
jchaffraix@webkit.orge6915392008-08-26 10:27:33 +00005074
5075 Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
5076 https://bugs.webkit.org/show_bug.cgi?id=20247
5077
5078 <rdar://problem/6118218>
5079
5080 Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
5081 check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
5082 (case insensitive for HTML elements).
5083
5084 Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
5085
5086 * dom/Element.cpp:
5087 (WebCore::Element::getAttribute):
5088 * dom/NamedAttrMap.cpp:
5089 (WebCore::NamedAttrMap::getNamedItem):
5090 (WebCore::NamedAttrMap::getAttributeItem):
5091 * dom/NamedAttrMap.h:
5092
weinig@apple.comb4ce06e2008-08-26 01:52:51 +000050932008-08-25 Sam Weinig <sam@webkit.org>
5094
weinig@apple.com8d3ea722008-08-26 04:19:07 +00005095 Reviewed by Oliver Hunt.
5096
5097 Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
5098 <rdar://problem/6174096>
5099 Treat SVG images as dirty when drawing to a canvas.
5100
5101 Test: http/tests/security/canvas-remote-read-svg-image.html
5102
5103 * html/CanvasRenderingContext2D.cpp:
5104 (WebCore::CanvasRenderingContext2D::drawImage):
5105 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
5106 * platform/graphics/Image.h:
5107 (WebCore::Image::isSVGImage):
5108 * svg/graphics/SVGImage.h:
5109 (WebCore::SVGImage::isSVGImage):
5110
51112008-08-25 Sam Weinig <sam@webkit.org>
5112
weinig@apple.comb4ce06e2008-08-26 01:52:51 +00005113 Reviewed by Mark Rowe.
5114
5115 Fix https://bugs.webkit.org/show_bug.cgi?id=20377
5116 Leak in XMLHttpRequest.
5117
5118 * xml/XMLHttpRequest.cpp:
5119 (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
5120
beidson@apple.com46421212008-08-25 21:48:56 +000051212008-08-25 Brady Eidson <beidson@apple.com>
5122
5123 Reviewed by Anders
5124
5125 Speculative fix for <rdar://problem/6173217>
5126
5127 Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
5128 Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
5129 the first null check invalid.
5130
5131 * loader/FrameLoader.cpp:
5132 (WebCore::FrameLoader::stopAllLoaders):
5133
5134
kmccullough@apple.com7b85fbb2008-08-25 21:28:40 +000051352008-08-25 Kevin McCullough <kmccullough@apple.com>
5136
5137 Reviewed by Tim.
5138
5139 <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
5140 there is no profile, can cause crash
5141
5142 * page/inspector/ProfilesPanel.js:
5143
dino@apple.com1baeea62008-08-25 21:06:21 +000051442008-08-25 Dean Jackson <dino@apple.com>
5145
5146 Reviewed by Dave Hyatt
5147
5148 Make sure 'inherit' is handled by transition property.
5149 https://bugs.webkit.org/show_bug.cgi?id=20513
5150
5151 Test: transitions/inherit.html
5152 Test: transitions/inherit-other-props.html
5153
5154 * css/CSSStyleSelector.cpp:
5155 fix macro to check existence of list before getting size
5156
andersca@apple.com2866b8302008-08-25 20:56:21 +000051572008-08-25 Anders Carlsson <andersca@apple.com>
5158
5159 Reviewed by Mark.
5160
5161 <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
5162
5163 Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume
5164 (safely) that any class that needs finalization on the main thread will also need to be deallocated
5165 on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
5166 calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
5167
5168 * platform/mac/WebCoreObjCExtras.c:
5169 (WebCoreObjCFinalizeOnMainThread):
5170
antti@apple.com60381cb2008-08-25 20:41:11 +000051712008-08-25 Antti Koivisto <antti@apple.com>
5172
5173 Reviewed by Dan Bernstein.
5174
5175 Rename CachedResource::referenced() to CachedResource::hasClients() to
5176 match previous ref() -> addClient() rename.
5177
5178 * loader/Cache.cpp:
5179 (WebCore::Cache::pruneLiveResources):
5180 (WebCore::Cache::pruneDeadResources):
5181 (WebCore::Cache::remove):
5182 (WebCore::Cache::getStatistics):
5183 (WebCore::Cache::dumpLRULists):
5184 * loader/CachedResource.cpp:
5185 (WebCore::CachedResource::addClient):
5186 (WebCore::CachedResource::removeClient):
5187 (WebCore::CachedResource::setDecodedSize):
5188 (WebCore::CachedResource::setEncodedSize):
5189 * loader/CachedResource.h:
5190 (WebCore::CachedResource::hasClients):
5191 (WebCore::CachedResource::canDelete):
5192
timothy@apple.com7d809242008-08-25 18:33:05 +000051932008-08-25 Anthony Ricaud <rik24d@gmail.com>
5194
5195 Add a missing Inspector localized string for "other".
5196
5197 https://bugs.webkit.org/show_bug.cgi?id=20509
5198
5199 Reviewed by Tim Hatcher.
5200
5201 * English.lproj/localizedStrings.js:
5202
kmccullough@apple.com560f5fe2008-08-25 18:18:01 +000052032008-08-22 Kevin McCullough <kmccullough@apple.com>
5204
5205 Reviewed by Geoff, Mark and Tim.
5206
5207 <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
5208 in the console said what file and line number they came from
5209 - Lay the foundation for getting line numbers and other data from the
5210 JavaScript engine.
5211
5212 * ForwardingHeaders/VM: Added.
5213 * ForwardingHeaders/VM/Machine.h: Added.
5214 * page/Console.cpp: Gather the line number and file information when
5215 profileEnd has been called, but don't use it until didFinishProfiling is
5216 called. We won't need to wait once we remove the profiler "zombie" mode
5217 which this patch helps pave the foundation for.
5218 (WebCore::Console::Console):
5219 (WebCore::Console::profileEnd):
5220 (WebCore::Console::finishedProfiling):
5221 * page/Console.h:
5222 * page/InspectorController.cpp: Modify calls to
5223 addProfileMessageToConsole to satisfy the new arguments it takes.
5224 (WebCore::InspectorController::finishedProfiling):
5225 (WebCore::InspectorController::addProfile):
5226 (WebCore::InspectorController::addProfileMessageToConsole):
5227 (WebCore::InspectorController::finishedProfiling):
5228 * page/InspectorController.h:
5229
hausmann@webkit.orgf305df42008-08-25 10:06:53 +000052302008-08-25 Holger Hans Peter Freyther <zecke@selfish.org>
5231
5232 Reviewed by Simon.
5233
5234 [inspector] Update the WebKit.qrc Qt resources file
5235 Catchup with the changes in the directory.
5236
5237 * page/inspector/WebKit.qrc:
5238
hausmann@webkit.org5f13af32008-08-25 07:10:22 +000052392008-08-25 Dirk Schulze <vbs85@gmx.de>
5240
5241 Reviewed by Simon.
5242
5243 Transformed the radian to degree, to get rotate()
5244 in canvas work as expected.
5245
5246 [Qt] Canvas.rotate() doesn't work
5247 https://bugs.webkit.org/show_bug.cgi?id=20496
5248
5249 * platform/graphics/qt/GraphicsContextQt.cpp:
5250 (WebCore::GraphicsContext::rotate):
5251
sfalken@apple.com9d442862008-08-25 05:43:33 +000052522008-08-24 Steve Falkenburg <sfalken@apple.com>
5253
5254 Add a "last chance" WM_TIMER to the Windows shared timer.
5255
5256 The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
5257 Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
5258 timers if a timer with an earlier expiration is already pending. This results in no timers
5259 firing from that point on.
5260
5261 We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
5262 buggy window message hook.
5263
5264 This timer will start when the first WM_TIMER is scheduled, and will
5265 fire every 5 seconds thereafter, causing any lost timers to be fired.
5266
5267 Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
5268 and prevents the WebFrame leak.
5269
5270 Reviewed by Darin Adler, Geoff Garen.
5271
5272 * platform/win/SharedTimerWin.cpp:
5273 (WebCore::):
5274 (WebCore::TimerWindowWndProc):
5275 (WebCore::setSharedTimerFireTime):
5276
mitz@apple.com771fb752008-08-25 03:22:44 +000052772008-08-24 Dan Bernstein <mitz@apple.com>
5278
5279 Reviewed by Darin Adler.
5280
5281 - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
5282
5283 Test: fast/css/font-property-priority.html
5284
5285 * css/CSSParser.cpp:
5286 (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
5287 to the font-property-parsing functions.
5288 (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
5289 changed to use it rather than the m_important member.
5290 (WebCore::CSSParser::parseFontVariant): Ditto.
5291 (WebCore::CSSParser::parseFontWeight): Ditto.
5292 * css/CSSParser.h:
5293
timothy@apple.com4cea2632008-08-24 22:28:44 +000052942008-08-24 Timothy Hatcher <timothy@apple.com>
5295
5296 Fixes a bug where the Inspector's UI would not animate or
5297 fully function because JavaScript timeouts, intervals and
5298 CSS animation timers where not firing while paused at a
5299 a breakpoint in the inspected page.
5300
5301 https://bugs.webkit.org/show_bug.cgi?id=20042
5302
5303 Reviewed by Darin Adler.
5304
5305 Test: manual-tests/inspector/forzen-ui-while-paused.html
5306
5307 * page/JavaScriptDebugServer.cpp:
5308 (WebCore::JavaScriptDebugServer::pauseIfNeeded):
5309 Add a call to TimerBase::fireTimersInNestedEventLoop before
5310 spinning the EventLoop.
5311
rwlbuis@webkit.org8a772442008-08-24 18:07:32 +000053122008-08-24 Rob Buis <buis@kde.org>
5313
5314 Reviewed by Sam Weinig.
5315
5316 https://bugs.webkit.org/show_bug.cgi?id=20324
5317 A change in SVG Glyph wont show up
5318
5319 Invalidate the glyph cache when the d attribute is set.
5320
5321 Test: svg/custom/glyph-setting-d-attribute.svg
5322
5323 * svg/SVGGlyphElement.cpp:
5324 (WebCore::SVGGlyphElement::invalidateGlyphCache):
5325 (WebCore::SVGGlyphElement::parseMappedAttribute):
5326 (WebCore::SVGGlyphElement::insertedIntoDocument):
5327 (WebCore::SVGGlyphElement::removedFromDocument):
5328 * svg/SVGGlyphElement.h:
5329
mitz@apple.com5b2c3cc2008-08-24 09:18:39 +000053302008-08-24 Dan Bernstein <mitz@apple.com>
5331
5332 Reviewed by Sam Weinig.
5333
5334 - fix https://bugs.webkit.org/show_bug.cgi?id=13864
5335 <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
5336
5337 * rendering/RenderText.cpp:
5338 (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
5339 beginWS and endWS before the early return to ensure that they are
5340 initialized in that case.
5341
cwzwarich@webkit.org53ddf172008-08-23 08:16:54 +000053422008-08-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
5343
5344 Rubber-stamped by Mark Rowe.
5345
5346 Remove modelines.
5347
5348 * WebCore.pro:
5349 * bridge/testbindings.cpp:
5350 * dom/DocPtr.h:
5351 * loader/SubstituteData.h:
5352 * page/Chrome.cpp:
5353 * page/Chrome.h:
5354 * page/ChromeClient.h:
5355 * page/Frame.h:
5356 * page/FrameLoadRequest.h:
5357 * page/FrameTree.cpp:
5358 * page/FrameTree.h:
5359 * page/Page.h:
5360 * page/mac/ChromeMac.mm:
5361 * platform/network/HTTPHeaderMap.h:
5362 * platform/network/ResourceErrorBase.cpp:
5363 * platform/network/ResourceErrorBase.h:
5364 * platform/network/ResourceHandleInternal.h:
5365 * platform/network/ResourceRequestBase.cpp:
5366 * platform/network/ResourceRequestBase.h:
5367 * platform/network/ResourceResponseBase.cpp:
5368 * platform/network/ResourceResponseBase.h:
5369 * platform/network/cf/ResourceError.h:
5370 * platform/network/cf/ResourceRequest.h:
5371 * platform/network/cf/ResourceRequestCFNet.h:
5372 * platform/network/cf/ResourceResponse.h:
5373 * platform/network/cf/ResourceResponseCFNet.h:
5374 * platform/network/curl/ResourceError.h:
5375 * platform/network/curl/ResourceRequest.h:
5376 * platform/network/curl/ResourceResponse.h:
5377 * platform/network/mac/ResourceError.h:
5378 * platform/network/mac/ResourceErrorMac.mm:
5379 * platform/network/mac/ResourceRequest.h:
5380 * platform/network/mac/ResourceRequestMac.mm:
5381 * platform/network/mac/ResourceResponse.h:
5382 * platform/network/mac/ResourceResponseMac.mm:
5383 * platform/network/qt/ResourceError.h:
5384 * platform/network/qt/ResourceRequest.h:
5385 * platform/network/qt/ResourceResponse.h:
5386 * platform/network/soup/CookieJarSoup.cpp:
5387 * platform/network/soup/ResourceError.h:
5388 * platform/network/soup/ResourceRequest.h:
5389 * platform/network/soup/ResourceResponse.h:
5390
mitz@apple.com57a2f482008-08-23 07:16:41 +000053912008-08-23 Dan Bernstein <mitz@apple.com>
5392
5393 Reviewed by Dave Hyatt.
5394
5395 - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
5396
5397 Test: fast/table/vertical-align-baseline.html
5398
5399 * rendering/RenderTable.cpp:
5400 (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
5401 baseline of the first table row, if there is one, -1 otherwise.
5402 * rendering/RenderTable.h:
5403 * rendering/RenderTableCell.cpp:
5404 (WebCore::RenderTableCell::baselinePosition): Changed to follow the
5405 CSS2.1 definition of the baseline of a table cell.
5406 * rendering/RenderTableSection.cpp:
5407 (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
5408 the baseline of the first row in the section.
5409 * rendering/RenderTableSection.h:
5410
jhoneycutt@apple.com88af18d2008-08-22 23:44:32 +000054112008-08-18 Jon Honeycutt <jhoneycutt@apple.com>
5412
5413 Add SPI to make a Windows WebView transparent.
5414
5415 Reviewed by Dan Bernstein.
5416
5417 * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
5418 determines whether the created context has an alpha channel.
5419 * platform/graphics/win/GraphicsContextCGWin.cpp:
5420 (WebCore::CGContextWithHDC):
5421
timothy@apple.comb63d1172008-08-22 18:39:42 +000054222008-08-22 Timothy Hatcher <timothy@apple.com>
5423
timothy@apple.com964022d2008-08-22 20:35:20 +00005424 Rolls out r35834 because it caused a regression in the Inspector's
5425 Console where some expressions always threw a syntax error.
5426
5427 https://bugs.webkit.org/show_bug.cgi?id=20487
5428
5429 * page/inspector/Console.js:
5430 (Console.prototype._evalInInspectedWindow): Removes parenthesis
5431 around the expression.
5432
54332008-08-22 Timothy Hatcher <timothy@apple.com>
5434
timothy@apple.com056d4782008-08-22 18:39:52 +00005435 Makes getStyleProperty return a value for the overflow property
5436 when overflow-x and overflow-y are equal.
5437
5438 https://bugs.webkit.org/show_bug.cgi?id=20485
5439
5440 Reviewed by Dan Bernstein.
5441
5442 Test: fast/css/overflow-property.html
5443
5444 * css/CSSMutableStyleDeclaration.cpp:
5445 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
5446
54472008-08-22 Timothy Hatcher <timothy@apple.com>
5448
timothy@apple.comb63d1172008-08-22 18:39:42 +00005449 Fixes a bug where while editing in the Inspector the
5450 sidebar scroll position would jump to the top.
5451
5452 https://bugs.webkit.org/show_bug.cgi?id=20484
5453
5454 Reviewed by Darin Adler.
5455
5456 * page/inspector/treeoutline.js:
5457 (TreeOutline._removeChildren): Remove the offsetTop call that
5458 was forcing a layout, since layout causes scroll positions
5459 to be clamped to the new scrollHeight/Width. Layout will happen
5460 normally when needed.
5461
kevino@webkit.org8271c842008-08-22 16:25:52 +000054622008-08-22 Kevin Ollivier <kevino@theolliviers.com>
5463
5464 wx build fix. Add AccessibilityTable sources.
5465
5466 * WebCoreSources.bkl:
5467
mitz@apple.com9befc872008-08-22 06:29:33 +000054682008-08-21 Dan Bernstein <mitz@apple.com>
5469
5470 Reviewed by Jon Honeycutt and Alexey Proskuryakov.
5471
5472 - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
5473
5474 Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
5475
5476 * platform/graphics/mac/SimpleFontDataMac.mm:
5477 (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
5478 ascent and 100% to its reported descent.
5479
mrowe@apple.comac9b6a52008-08-22 02:07:54 +000054802008-08-21 Kalle Vahlman <kalle.vahlman@movial.com>
5481
5482 Reviewed by Darin Adler.
5483
mrowe@apple.com22eaa172008-08-22 02:10:15 +00005484 https://bugs.webkit.org/show_bug.cgi?id=20267
mrowe@apple.comac9b6a52008-08-22 02:07:54 +00005485 [GTK] Crash on some pages due to a plugin
5486
5487 Fix handling of badly formatted and empty plugin mime descriptions
5488
5489 * plugins/gtk/PluginPackageGtk.cpp:
5490 (WebCore::PluginPackage::fetchInfo):
5491
mrowe@apple.com798b3432008-08-22 02:07:48 +000054922008-08-21 Kevin Watters <kevinwatters@gmail.com>
5493
5494 Reviewed by Darin Adler.
5495
5496 Follow other ports (and IE) in ImageSourceWx.cpp never to return an
5497 animated GIF frame duration of less than 50ms.
5498
5499 * platform/graphics/wx/ImageSourceWx.cpp:
5500 (WebCore::ImageSource::frameDurationAtIndex):
5501
britto@apple.com8ed72772008-08-22 00:39:39 +000055022008-08-21 Maxime Britto <britto@apple.com>
5503
5504 Reviewed by Kevin McCullough.
5505
5506 Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
5507 https://bugs.webkit.org/show_bug.cgi?id=20451
5508
5509 rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
5510 When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
5511 This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
5512
5513 * page/EventHandler.cpp:
5514 (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.
5515
5516 (WebCore::EventHandler::handleMousePressEvent): ditto
5517
timothy@apple.com5d492192008-08-21 23:54:01 +000055182008-08-21 Anthony Ricaud <rik24d@gmail.com>
5519
5520 Small optimization for when the dividers in the Inspector's
5521 Resources panel are updated.
5522
5523 Reviewed by Tim Hatcher.
5524
5525 * page/inspector/ResourcesPanel.js:
5526 (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
5527 Combind a for loop and clone the divider element.
5528
dino@apple.comaa75e4c2008-08-21 23:35:23 +000055292008-08-21 Chris Marrin <cmarrin@apple.com>
5530
5531 Allow 0 (without units) for Time eg. duration
5532 Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
5533
5534 Reviewed by Dave Hyatt.
5535
5536 Test: css1/units/zero-duration-without-units.html
5537
5538 * css/CSSParser.cpp:
5539 (WebCore::CSSParser::validUnit):
5540
timothy@apple.com29c12d02008-08-21 20:12:47 +000055412008-08-21 Timothy Hatcher <timothy@apple.com>
5542
timothy@apple.comca11cd82008-08-21 20:13:12 +00005543 Make deleting all text while editing a DOM attribute in
5544 the Inspector delete the attribute. This also fixes
5545 an exception that would happen before.
5546
5547 https://bugs.webkit.org/show_bug.cgi?id=20472
5548
5549 Reviewed by Kevin McCullough.
5550
5551 * page/inspector/ElementsPanel.js:
5552 (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
5553 Don't check for hasAttributes on the parseElement, continuing
5554 through the function will correctly remove the attribute.
5555 If the parseElement is null, call _editingCancelled not
5556 editingCancelled, this fixes an exception.
5557
55582008-08-21 Timothy Hatcher <timothy@apple.com>
5559
timothy@apple.comde831cf2008-08-21 20:12:59 +00005560 Update the Inspector's Metrics pane when editing in
5561 the Styles pane. This makes sure the metrics shown
5562 always match what the Styles pane shows.
5563
5564 https://bugs.webkit.org/show_bug.cgi?id=20470
5565
5566 Reviewed by Kevin McCullough.
5567
5568 * page/inspector/ElementsPanel.js:
5569 (WebInspector.ElementsPanel): Add event listeners for
5570 the "style edited" and "style property toggled" events,
5571 so the Metrics pane is updated.
5572 (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
5573 Update the Metrics pane.
5574 * page/inspector/StylesSidebarPane.js:
5575 (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
5576 Dispatch the "style property toggled" event.
5577 (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
5578 Dispatch the "style edited" event when the CSS text is restored.
5579 (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
5580 Dispatch the "style edited" event.
5581
55822008-08-21 Timothy Hatcher <timothy@apple.com>
5583
timothy@apple.com29c12d02008-08-21 20:12:47 +00005584 Make the Inspector's Metrics sidebar pane editable.
5585
5586 https://bugs.webkit.org/show_bug.cgi?id=17218
5587 rdar://problem/5732818
5588
5589 Reviewed by Kevin McCullough.
5590
5591 * page/inspector/ElementsPanel.js:
5592 (WebInspector.ElementsPanel): Add an event listener for
5593 the "metrics edited" event, so the Styles pane is updated.
5594 * page/inspector/MetricsSidebarPane.js:
5595 (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
5596 so future updates work. Add a double click event listener for the
5597 metric values to start editing.
5598 (WebInspector.MetricsSidebarPane.prototype.startEditing):
5599 Call WebInspector.startEditing with some context.
5600 (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
5601 (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
5602 Set the user input on the elements inline style. Fire the
5603 "metrics edited" event.
5604
sfalken@apple.com7e6e5392008-08-21 18:42:44 +000056052008-08-21 Steve Falkenburg <sfalken@apple.com>
5606
5607 Fix a race condition in Windows timer code.
5608 Timer function could end up being called with a 0 timer, leading to a Windows exception.
5609
5610 Don't post a timer message if one is already pending.
5611
5612 Reviewed by Ada Chan.
5613
5614 * platform/win/SharedTimerWin.cpp:
5615 (WebCore::TimerWindowWndProc):
5616 (WebCore::clearTimer):
5617 (WebCore::queueTimerProc):
5618 (WebCore::setSharedTimerFireTime):
5619
timothy@apple.com8d15bcf2008-08-21 16:33:17 +000056202008-08-21 Anthony Ricaud <rik24d@gmail.com>
5621
timothy@apple.com493212c72008-08-21 16:36:06 +00005622 After trying to add the expression, try again with quotes for
5623 easier edition.
5624
5625 https://bugs.webkit.org/show_bug.cgi?id=20466
5626
5627 Reviewed by Tim Hatcher.
5628
5629 * page/inspector/ObjectPropertiesSection.js: Added an
5630 evaluateExpression function.
5631
56322008-08-21 Anthony Ricaud <rik24d@gmail.com>
5633
timothy@apple.com8d15bcf2008-08-21 16:33:17 +00005634 Perform Inspector searches on search event to clear results when
5635 clicking the cross to empty it. Delete the lastQuery when the field
5636 is emptied in order to perform the search if exactly the same query
5637 is entered next.
5638
5639 https://bugs.webkit.org/show_bug.cgi?id=20462
5640
5641 Reviewed by Tim Hatcher.
5642
5643 * page/inspector/inspector.js:
5644
jmalonzo@webkit.orgdd470402008-08-21 11:22:51 +000056452008-08-21 Marco Barisione <marco.barisione@collabora.co.uk>
5646
5647 Reviewed by Mark Rowe.
5648
5649 http://bugs.webkit.org/show_bug.cgi?id=19656
5650 [SOUP] The gio code should call didFail() instead of
5651 didFinishLoading() in case of error
5652
5653 In case of error call didFail() instead of didReceiveResponse() and
5654 didFinishLoading().
5655
5656 * platform/network/soup/ResourceHandleSoup.cpp:
5657 (WebCore::networkErrorForFile):
5658 (WebCore::readCallback):
5659 (WebCore::openCallback):
5660 (WebCore::queryInfoCallback):
5661
mrowe@apple.com72a95b12008-08-21 04:01:51 +000056622008-08-20 Mark Rowe <mrowe@apple.com>
5663
mrowe@apple.com4e593f42008-08-21 06:52:42 +00005664 Reviewed by Jon Honeycutt.
5665
5666 Fix build failure.
5667
5668 * bridge/c/c_instance.cpp:
5669 (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
5670 as that is what NPEnumerationFunctionPtr is declared as accepting.
5671
56722008-08-20 Mark Rowe <mrowe@apple.com>
5673
mrowe@apple.com72a95b12008-08-21 04:01:51 +00005674 Reviewed by Dan Bernstein.
5675
5676 Build fix. Handle kCGInterpolationMedium in switch statements if it is available.
5677
5678 * platform/graphics/GraphicsContext.h:
5679 (WebCore::):
5680 * platform/graphics/cg/GraphicsContextCG.cpp:
5681 (WebCore::GraphicsContext::setImageInterpolationQuality):
5682 (WebCore::GraphicsContext::imageInterpolationQuality):
5683
mitz@apple.comaa938792008-08-21 00:33:29 +000056842008-08-20 Dan Bernstein <mitz@apple.com>
5685
5686 Rubber-stamped by John Sullivan.
5687
5688 - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
5689 rename related methods and variables accordingly.
5690
5691 * WebCore.base.exp:
5692 * page/FrameView.cpp:
5693 (WebCore::FrameViewPrivate::FrameViewPrivate):
5694 (WebCore::FrameView::shouldUpdateWhileOffscreen):
5695 (WebCore::FrameView::setShouldUpdateWhileOffscreen):
5696 * page/FrameView.h:
5697 * platform/ScrollView.h:
5698 * platform/mac/ScrollViewMac.mm:
5699 (WebCore::ScrollView::updateContents):
5700
beidson@apple.com2ace6b12008-08-21 00:13:12 +000057012008-08-20 Brady Eidson <beidson@apple.com>
5702
5703 Reviewed by Mitzpettel
5704
5705 <rdar://problem/6163636> - Many images broken in Mail
5706
5707 This can be traced back to the preload scanner. With that change, CachedResources are created a lot
5708 sooner than before and confuse the WebArchive machinery.
5709
5710 When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore
5711 such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate
5712 machinery and nothing is known about where the data will eventually come from.
5713
5714 * loader/DocumentLoader.cpp:
5715 (WebCore::DocumentLoader::subresource): Ignore a CachedResource if its preloadResult is
5716 CachedResource::PreloadReferenced.
5717
zecke@webkit.orga8fa0e12008-08-20 22:50:39 +000057182008-08-20 Holger Hans Peter Freyther <zecke@selfish.org>
5719
5720 Unreviewed compile fix
5721
5722 Catch up with the JSValue::type elimination.
5723
5724 * bridge/qt/qt_instance.cpp:
5725 (KJS::Bindings::QtRuntimeObjectImp::construct):
5726 (KJS::Bindings::QtInstance::defaultValue):
5727 * bridge/qt/qt_runtime.cpp:
5728 (KJS::Bindings::QtRuntimeConnectionMethod::call):
5729
mrowe@apple.com2d74ec92008-08-20 22:15:53 +000057302008-08-20 Chris Teague <chris.teague@gmail.com>
5731
5732 Reviewed by Mark Rowe.
5733
5734 Fix https://bugs.webkit.org/show_bug.cgi?id=20449
5735 Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
5736
5737 * ChangeLog:
5738 * loader/FrameLoader.cpp:
5739 (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
5740
simon.fraser@apple.combe1d24c2008-08-20 21:57:22 +000057412008-08-20 Simon Fraser <simon.fraser@apple.com>
5742
5743 Reviewed by Dave Hyatt
5744
5745 getComputedStyle() for webkitTransform should return a transform
5746 that does not have the transform origin baked into it.
5747 https://bugs.webkit.org/show_bug.cgi?id=20464
5748
5749 Test: fast/css/getComputedStyle-transform.html
5750
5751 * css/CSSComputedStyleDeclaration.cpp:
5752 (WebCore::computedTransform):
5753 * rendering/style/RenderStyle.cpp:
5754 (WebCore::RenderStyle::applyTransform):
5755 * rendering/style/RenderStyle.h:
5756
andersca@apple.com021ce772008-08-20 21:04:12 +000057572008-08-20 Josh Aas <joshmoz@gmail.com>
5758
5759 Reviewed and landed by Anders.
5760
5761 <rdar://problem/6163636>
5762 rename NPCocoaEvent's "event" struct to "data" (20446)
5763
5764 * bridge/npapi.h:
5765 (_NPCocoaEvent::):
5766
bdakin@apple.com699d13d2008-08-20 20:46:28 +000057672008-08-20 Beth Dakin <bdakin@apple.com>
5768
darin@apple.com07c80c62008-09-05 18:15:43 +00005769 Reviewed by Darin Adler.
bdakin@apple.com699d13d2008-08-20 20:46:28 +00005770
5771 Fix for <rdar://problem/6145626>
5772 This patch fixes a number of remaining problems getting
5773 disconnected frames to work correctly with markAllMatchesForText()
5774 and findString(). Details inline.
5775
5776 This was a static helper function in Frame, but this patch requires
5777 the same functionality in Editor, so I just added it as a function
5778 on Node.
5779 * dom/Node.cpp:
5780 (WebCore::Node::isInShadowTree):
5781 * dom/Node.h:
5782
5783 * editing/Editor.cpp:
5784 (WebCore::Editor::insideVisibleArea): Returns false if
5785 excludeFromTextSearch() is true.
5786
5787 In a normal (non-disconnected) frame, findString returns a range of
5788 the document node if the text is not found in the frame. I changed
5789 firstVisibleRange and lastVisibleRange to match that behavior when
5790 the text is not found
5791 (WebCore::Editor::firstVisibleRange):
5792 (WebCore::Editor::lastVisibleRange):
5793
5794 Here are the bulk of the changes in the patch. A lot of text was
5795 not being found in disconnected frames because I failed to account
5796 for all of the possible problems associated with shadow trees. That
5797 is fixed here.
5798 (WebCore::Editor::nextVisibleRange):
5799 * editing/Editor.h:
5800
5801 excludeFromTextSearch() is new. It allows a WebKit client to mark a
5802 frame as not-text-searchable through SPI.
5803 * WebCore.base.exp:
5804 * page/Frame.cpp:
5805 (WebCore::Frame::excludeFromTextSearch):
5806 (WebCore::Frame::setExcludeFromTextSearch):
5807 (WebCore::FramePrivate::FramePrivate):
5808 * page/Frame.h:
5809 * page/FramePrivate.h:
5810
5811 (WebCore::Frame::findString):
5812 (WebCore::Frame::markAllMatchesForText): I kept running into an
5813 assertion failure in paining code because of the forced paint on
5814 empty visible rects.
5815
timothy@apple.com301befc2008-08-20 19:10:54 +000058162008-08-20 Timothy Hatcher <timothy@apple.com>
5817
5818 Adds a positon box to the Inspector's Metrics sidebar
5819 pane. When an element is not statically positioned, there
5820 is now a position box that show top, right, bottom and
5821 left computed values.
5822
5823 Reviewed by Kevin McCullough.
5824
5825 * English.lproj/localizedStrings.js: Updated the strings.
5826 * page/inspector/MetricsSidebarPane.js:
5827 (WebInspector.MetricsSidebarPane.prototype.update):
5828 Renamed the boxPartValue function to createBoxPartElement
5829 and made it create the entire element. Made it understand
5830 how to get position style properties. Don't use the figure dash
5831 when 0px is used for positions, since the 0 is meaningful there.
5832 Instead use the figure dash when a position is auto.
5833 * page/inspector/inspector.css: Added a new rule for position.
5834
mrowe@apple.com37686d42008-09-04 00:10:39 +000058352008-08-20 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com2a5ecc02008-08-20 18:34:56 +00005836
5837 Reviewed by Beth Dakin
5838
5839 Qt build fix
5840
5841 * WebCore.pro:
5842
mitz@apple.comedaa9042008-08-20 18:28:07 +000058432008-08-20 Dan Bernstein <mitz@apple.com>
5844
5845 Reviewed by Anders Carlsson.
5846
5847 - avoid using a deprecated NSScroller method on Leopard
5848
5849 * platform/mac/PlatformScrollBarMac.mm:
5850 (WebCore::PlatformScrollbar::updateThumbPosition):
5851 (WebCore::PlatformScrollbar::updateThumbProportion):
5852
jmalonzo@webkit.org6e0a3082008-08-20 11:40:31 +000058532008-08-20 Jan Michael Alonzo <jmalonzo@webkit.org>
5854
5855 Reviewed by Oliver Hunt.
5856
5857 Gtk build fix
5858
5859 * GNUmakefile.am:
5860 * page/AccessibilityTable.cpp: Change nil to 0
5861 (WebCore::AccessibilityTable::cellForColumnAndRow):
5862
ap@webkit.org01aff702008-08-20 07:23:06 +000058632008-08-19 Alexey Proskuryakov <ap@webkit.org>
5864
5865 Reviewed by Geoff Garen.
5866
5867 Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
5868
5869 * ForwardingHeaders/kjs/JSLock.h: Added.
5870 * WebCore.vcproj/WebCore.vcproj:
5871 * bindings/js/GCController.cpp:
5872 (WebCore::collect):
5873 (WebCore::GCController::gcTimerFired):
5874 (WebCore::GCController::garbageCollectNow):
5875 * bindings/js/JSCustomSQLStatementCallback.cpp:
5876 (WebCore::JSCustomSQLStatementCallback::handleEvent):
5877 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
5878 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
5879 * bindings/js/JSCustomSQLTransactionCallback.cpp:
5880 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
5881 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
5882 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
5883 * bindings/js/JSCustomVoidCallback.cpp:
5884 (WebCore::JSCustomVoidCallback::handleEvent):
5885 * bindings/js/JSCustomXPathNSResolver.cpp:
5886 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
5887 * bindings/js/JSDOMWindowBase.cpp:
5888 (WebCore::DOMWindowTimer::~DOMWindowTimer):
5889 (WebCore::JSDOMWindowBase::clear):
5890 (WebCore::JSDOMWindowBase::timerFired):
5891 * bindings/js/JSEventCustom.cpp:
5892 (WebCore::toJS):
5893 * bindings/js/JSEventListener.cpp:
5894 (WebCore::JSAbstractEventListener::handleEvent):
5895 * bindings/js/JSNSResolver.cpp:
5896 (WebCore::JSNSResolver::lookupNamespaceURI):
5897 * bindings/js/JSNodeFilterCondition.cpp:
5898 (WebCore::JSNodeFilterCondition::acceptNode):
5899 * bindings/js/ScheduledAction.cpp:
5900 (WebCore::ScheduledAction::execute):
5901 * bindings/js/ScriptController.cpp:
5902 (WebCore::ScriptController::evaluate):
5903 (WebCore::ScriptController::clearWindowShell):
5904 (WebCore::ScriptController::createHTMLEventHandler):
5905 (WebCore::ScriptController::createSVGEventHandler):
5906 (WebCore::ScriptController::initScript):
5907 (WebCore::ScriptController::updateDocument):
5908 (WebCore::ScriptController::bindingRootObject):
5909 (WebCore::ScriptController::windowScriptNPObject):
5910 (WebCore::ScriptController::createScriptObjectForPluginElement):
5911 (WebCore::ScriptController::clearScriptObjects):
5912 * bindings/js/ScriptControllerMac.mm:
5913 (WebCore::ScriptController::windowScriptObject):
5914 * bindings/objc/WebScriptObject.mm:
5915 (_didExecute):
5916 (-[WebScriptObject callWebScriptMethod:withArguments:]):
5917 (-[WebScriptObject evaluateWebScript:]):
5918 (-[WebScriptObject setValue:forKey:]):
5919 (-[WebScriptObject valueForKey:]):
5920 (-[WebScriptObject removeWebScriptKey:]):
5921 (-[WebScriptObject stringRepresentation]):
5922 (-[WebScriptObject webScriptValueAtIndex:]):
5923 (-[WebScriptObject setWebScriptValueAtIndex:value:]):
5924 (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
5925 * bridge/NP_jsobject.cpp:
5926 (_NPN_InvokeDefault):
5927 (_NPN_Invoke):
5928 (_NPN_Evaluate):
5929 (_NPN_GetProperty):
5930 (_NPN_SetProperty):
5931 (_NPN_RemoveProperty):
5932 (_NPN_HasProperty):
5933 (_NPN_HasMethod):
5934 (_NPN_Enumerate):
5935 * bridge/c/c_class.cpp:
5936 (KJS::Bindings::CClass::~CClass):
5937 (KJS::Bindings::CClass::methodsNamed):
5938 (KJS::Bindings::CClass::fieldNamed):
5939 * bridge/c/c_instance.cpp:
5940 (KJS::Bindings::CInstance::invokeMethod):
5941 (KJS::Bindings::CInstance::invokeDefaultMethod):
5942 (KJS::Bindings::CInstance::getPropertyNames):
5943 * bridge/c/c_runtime.cpp:
5944 (KJS::Bindings::CField::valueFromInstance):
5945 (KJS::Bindings::CField::setValueToInstance):
5946 * bridge/c/c_utility.cpp:
5947 (KJS::Bindings::convertValueToNPVariant):
5948 (KJS::Bindings::convertNPVariantToValue):
5949 * bridge/jni/jni_class.cpp:
5950 (JavaClass::JavaClass):
5951 (JavaClass::~JavaClass):
5952 * bridge/jni/jni_instance.cpp:
5953 (JavaInstance::stringValue):
5954 * bridge/jni/jni_jsobject.mm:
5955 (JavaJSObject::call):
5956 (JavaJSObject::eval):
5957 (JavaJSObject::getMember):
5958 (JavaJSObject::setMember):
5959 (JavaJSObject::removeMember):
5960 (JavaJSObject::getSlot):
5961 (JavaJSObject::setSlot):
5962 (JavaJSObject::toString):
5963 (JavaJSObject::convertValueToJObject):
5964 (JavaJSObject::convertJObjectToValue):
5965 * bridge/jni/jni_objc.mm:
5966 (KJS::Bindings::dispatchJNICall):
5967 * bridge/jni/jni_runtime.cpp:
5968 (appendClassName):
5969 (JavaMethod::signature):
5970 * bridge/jni/jni_runtime.h:
5971 (KJS::Bindings::JavaString::JavaString):
5972 (KJS::Bindings::JavaString::_commonInit):
5973 (KJS::Bindings::JavaString::~JavaString):
5974 (KJS::Bindings::JavaString::UTF8String):
5975 * bridge/jni/jni_utility.cpp:
5976 (KJS::Bindings::convertValueToJValue):
5977 * bridge/npruntime.cpp:
5978 (_NPN_GetStringIdentifier):
5979 * bridge/objc/objc_instance.mm:
5980 (ObjcInstance::moveGlobalExceptionToExecState):
5981 (ObjcInstance::invokeMethod):
5982 (ObjcInstance::invokeDefaultMethod):
5983 (ObjcInstance::setValueOfUndefinedField):
5984 (ObjcInstance::getValueOfUndefinedField):
5985 * bridge/objc/objc_runtime.mm:
5986 (ObjcField::valueFromInstance):
5987 (ObjcField::setValueToInstance):
5988 * bridge/objc/objc_utility.mm:
5989 (KJS::Bindings::convertValueToObjcValue):
5990 (KJS::Bindings::convertNSStringToString):
5991 (KJS::Bindings::convertObjcValueToValue):
5992 * bridge/qt/qt_instance.cpp:
5993 (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
5994 (KJS::Bindings::QtInstance::~QtInstance):
5995 (KJS::Bindings::QtInstance::getQtInstance):
5996 (KJS::Bindings::QtInstance::getRuntimeObject):
5997 * bridge/qt/qt_runtime.cpp:
5998 (KJS::Bindings::convertValueToQVariant):
5999 (KJS::Bindings::convertQVariantToValue):
6000 (KJS::Bindings::QtRuntimeMetaMethod::call):
6001 (KJS::Bindings::QtRuntimeConnectionMethod::call):
6002 (KJS::Bindings::QtConnectionObject::QtConnectionObject):
6003 (KJS::Bindings::QtConnectionObject::execute):
6004 * bridge/runtime.cpp:
6005 (KJS::Bindings::Instance::createRuntimeObject):
6006 * bridge/testbindings.cpp:
6007 (main):
6008 * bridge/testbindings.mm:
6009 (main):
6010 * bridge/testqtbindings.cpp:
6011 (main):
6012 * dom/Document.cpp:
6013 (WebCore::Document::~Document):
6014 * dom/Node.cpp:
6015 (WebCore::Node::setDocument):
6016 * history/CachedPage.cpp:
6017 (WebCore::CachedPage::CachedPage):
6018 (WebCore::CachedPage::restore):
6019 (WebCore::CachedPage::clear):
6020 * loader/FrameLoader.cpp:
6021 (WebCore::getString):
6022 * page/InspectorController.cpp:
6023 (WebCore::ConsoleMessage::ConsoleMessage):
6024 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
6025 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
6026 (WebCore::getResourceDocumentNode):
6027 (WebCore::search):
6028 (WebCore::inspectedWindow):
6029 (WebCore::wrapCallback):
6030 (WebCore::currentCallFrame):
6031 (WebCore::profiles):
6032 (WebCore::InspectorController::focusNode):
6033 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
6034 (WebCore::InspectorController::addDatabaseScriptResource):
6035 (WebCore::InspectorController::addScriptProfile):
6036 * page/JavaScriptCallFrame.cpp:
6037 (WebCore::JavaScriptCallFrame::evaluate):
6038 * page/JavaScriptProfileNode.cpp:
6039 (WebCore::getTotalTime):
6040 (WebCore::getSelfTime):
6041 (WebCore::getTotalPercent):
6042 (WebCore::getSelfPercent):
6043 (WebCore::getNumberOfCalls):
6044 (WebCore::getChildren):
6045 (WebCore::getVisible):
6046 * page/Page.cpp:
6047 * page/mac/FrameMac.mm:
6048 * plugins/PluginView.cpp:
6049 (WebCore::PluginView::start):
6050 (WebCore::getString):
6051 (WebCore::PluginView::performRequest):
6052 (WebCore::PluginView::bindingInstance):
6053 * plugins/gtk/PluginViewGtk.cpp:
6054 (WebCore::PluginView::paint):
6055 (WebCore::PluginView::handleKeyboardEvent):
6056 (WebCore::PluginView::handleMouseEvent):
6057 (WebCore::PluginView::setNPWindowRect):
6058 (WebCore::PluginView::stop):
6059 (WebCore::PluginView::init):
6060 * plugins/qt/PluginViewQt.cpp:
6061 (WebCore::PluginView::setNPWindowRect):
6062 (WebCore::PluginView::stop):
6063 (WebCore::PluginView::init):
6064 * plugins/win/PluginViewWin.cpp:
6065 (WebCore::PluginView::dispatchNPEvent):
6066 (WebCore::PluginView::handleKeyboardEvent):
6067 (WebCore::PluginView::handleMouseEvent):
6068 (WebCore::PluginView::setNPWindowRect):
6069 (WebCore::PluginView::stop):
6070 * xml/XMLHttpRequest.cpp:
6071 (WebCore::XMLHttpRequest::clearResponse):
6072 (WebCore::XMLHttpRequest::didFinishLoading):
6073 (WebCore::XMLHttpRequest::didReceiveData):
6074
eric@webkit.orgbac93762008-08-19 23:33:07 +000060752008-08-19 Eric Seidel <eric@webkit.org>
6076
6077 Reviewed by Geoff Garen.
6078
6079 Add the beginnings of Skia graphics support to WebCore
6080 as I try to begin the long process of un-forking the changes
6081 needed to WebCore to make Andriod's WebCore build.
6082
6083 I'll follow this up with actual *Skia.cpp files in a separate patch.
6084
6085 * platform/graphics/AffineTransform.h:
6086 * platform/graphics/FloatPoint.h:
6087 * platform/graphics/FloatRect.h:
6088 * platform/graphics/Gradient.h:
6089 * platform/graphics/GraphicsContext.h:
6090 * platform/graphics/Image.h:
6091 * platform/graphics/ImageBuffer.h:
6092 * platform/graphics/ImageSource.h:
6093 * platform/graphics/IntPoint.h:
6094 * platform/graphics/IntRect.h:
6095 * platform/graphics/Path.h:
6096 * platform/graphics/Pattern.h:
6097 * svg/graphics/SVGPaintServerPattern.h:
6098 * svg/graphics/SVGPaintServerSolid.h:
6099
sfalken@apple.com3f69b332008-08-19 22:34:37 +000061002008-08-19 Steve Falkenburg <sfalken@apple.com>
6101
sfalken@apple.com45d22802008-08-19 22:46:31 +00006102 Fix Windows build more.
6103
6104 * WebCore.vcproj/WebCore.vcproj:
6105
61062008-08-19 Steve Falkenburg <sfalken@apple.com>
6107
sfalken@apple.com3f69b332008-08-19 22:34:37 +00006108 Fix Windows build.
6109
6110 * page/AccessibilityRenderObject.cpp:
6111 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
6112
mrowe@apple.com37686d42008-09-04 00:10:39 +000061132008-08-19 Chris Fleizach <cfleizach@apple.com>
cfleizach@apple.com7c7b5f32008-08-19 22:05:37 +00006114
6115 Reviewed by Beth Dakin.
6116
6117 <rdar://problem/4003764> Expose tables as AXTables
6118
6119 Tests: accessibility/table-attributes.html
6120 accessibility/table-cell-spans.html
6121 accessibility/table-cells.html
6122 accessibility/table-detection.html
6123 accessibility/table-sections.html
6124 accessibility/table-with-rules.html
6125
6126 * WebCore.xcodeproj/project.pbxproj:
6127 * page/AXObjectCache.cpp:
6128 (WebCore::AXObjectCache::get):
6129 * page/AccessibilityObject.h:
6130 (WebCore::):
6131 (WebCore::AccessibilityObject::isDataTable):
6132 (WebCore::AccessibilityObject::isTableRow):
6133 (WebCore::AccessibilityObject::isTableColumn):
6134 (WebCore::AccessibilityObject::isTableCell):
6135 * page/AccessibilityRenderObject.cpp:
6136 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
6137 * page/AccessibilityTable.cpp: Added.
6138 (WebCore::AccessibilityTable::AccessibilityTable):
6139 (WebCore::AccessibilityTable::~AccessibilityTable):
6140 (WebCore::AccessibilityTable::create):
6141 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
6142 (WebCore::AccessibilityTable::clearChildren):
6143 (WebCore::AccessibilityTable::addChildren):
6144 (WebCore::AccessibilityTable::headerContainer):
6145 (WebCore::AccessibilityTable::columns):
6146 (WebCore::AccessibilityTable::rows):
6147 (WebCore::AccessibilityTable::rowHeaders):
6148 (WebCore::AccessibilityTable::columnHeaders):
6149 (WebCore::AccessibilityTable::cells):
6150 (WebCore::AccessibilityTable::columnCount):
6151 (WebCore::AccessibilityTable::rowCount):
6152 (WebCore::AccessibilityTable::cellForColumnAndRow):
6153 (WebCore::AccessibilityTable::roleValue):
6154 (WebCore::AccessibilityTable::accessibilityIsIgnored):
6155 (WebCore::AccessibilityTable::title):
6156 (WebCore::AccessibilityTable::isDataTable):
6157 * page/AccessibilityTable.h: Added.
6158 * page/AccessibilityTableCell.cpp: Added.
6159 (WebCore::AccessibilityTableCell::AccessibilityTableCell):
6160 (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
6161 (WebCore::AccessibilityTableCell::create):
6162 (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
6163 (WebCore::AccessibilityTableCell::rowIndexRange):
6164 (WebCore::AccessibilityTableCell::columnIndexRange):
6165 * page/AccessibilityTableCell.h: Added.
6166 (WebCore::AccessibilityTableCell::isTableCell):
6167 (WebCore::AccessibilityTableCell::roleValue):
6168 * page/AccessibilityTableColumn.cpp: Added.
6169 (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
6170 (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
6171 (WebCore::AccessibilityTableColumn::create):
6172 (WebCore::AccessibilityTableColumn::setParentTable):
6173 (WebCore::AccessibilityTableColumn::elementRect):
6174 (WebCore::AccessibilityTableColumn::size):
6175 (WebCore::AccessibilityTableColumn::children):
6176 (WebCore::AccessibilityTableColumn::headerObject):
6177 (WebCore::AccessibilityTableColumn::headerObjectForSection):
6178 (WebCore::AccessibilityTableColumn::addChildren):
6179 * page/AccessibilityTableColumn.h: Added.
6180 (WebCore::AccessibilityTableColumn::parentObject):
6181 (WebCore::AccessibilityTableColumn::roleValue):
6182 (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
6183 (WebCore::AccessibilityTableColumn::isTableColumn):
6184 (WebCore::AccessibilityTableColumn::setColumnIndex):
6185 (WebCore::AccessibilityTableColumn::columnIndex):
6186 * page/AccessibilityTableHeaderContainer.cpp: Added.
6187 (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
6188 (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
6189 (WebCore::AccessibilityTableHeaderContainer::create):
6190 (WebCore::AccessibilityTableHeaderContainer::children):
6191 (WebCore::AccessibilityTableHeaderContainer::elementRect):
6192 (WebCore::AccessibilityTableHeaderContainer::size):
6193 (WebCore::AccessibilityTableHeaderContainer::addChildren):
6194 * page/AccessibilityTableHeaderContainer.h: Added.
6195 (WebCore::AccessibilityTableHeaderContainer::roleValue):
6196 (WebCore::AccessibilityTableHeaderContainer::setParentTable):
6197 (WebCore::AccessibilityTableHeaderContainer::parentObject):
6198 (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
6199 * page/AccessibilityTableRow.cpp: Added.
6200 (WebCore::AccessibilityTableRow::AccessibilityTableRow):
6201 (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
6202 (WebCore::AccessibilityTableRow::create):
6203 (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
6204 (WebCore::AccessibilityTableRow::headerObject):
6205 * page/AccessibilityTableRow.h: Added.
6206 (WebCore::AccessibilityTableRow::isTableRow):
6207 (WebCore::AccessibilityTableRow::roleValue):
6208 (WebCore::AccessibilityTableRow::setRowIndex):
6209 (WebCore::AccessibilityTableRow::rowIndex):
6210 * page/mac/AccessibilityObjectWrapper.mm:
6211 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
6212 (RoleEntry::):
6213 (-[AccessibilityObjectWrapper roleDescription]):
6214 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
6215 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
6216 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
6217
sfalken@apple.comb83d4692008-08-19 18:39:44 +000062182008-08-19 Steve Falkenburg <sfalken@apple.com>
6219
6220 Build fix.
6221 Add buildfailed support to stop builds early (preventing inaccurate error messages).
6222 Add missing post-build rule to Release.
6223
6224 * WebCore.vcproj/QTMovieWin.vcproj:
6225
timothy@apple.comda3aa632008-08-19 18:33:02 +000062262008-08-19 Keishi Hattori <casey.hattori@gmail.com>
6227
timothy@apple.com7d08c322008-08-19 18:33:27 +00006228 Added support for console.count in the inspector.
6229
6230 Reviewed by Geoff Garen.
6231
6232 * page/Console.cpp:
6233 (WebCore::Console::count):
6234 * page/Console.h:
6235 * page/Console.idl: Added console.count.
6236 * page/InspectorController.cpp:
6237 (WebCore::InspectorController::didCommitLoad): Clears m_counts.
6238 (WebCore::InspectorController::count): Updates the count number
6239 sing "title@source:line" as the identifier, and adds a
6240 message to the console.
6241 * page/InspectorController.h: Added m_counts.
6242
62432008-08-19 Keishi Hattori <casey.hattori@gmail.com>
6244
timothy@apple.comda3aa632008-08-19 18:33:02 +00006245 Clear console.time timers when changing page.
6246
6247 Reviewed by Geoff Garen.
6248
6249 * page/InspectorController.cpp:
6250 (WebCore::InspectorController::didCommitLoad):
6251
adele@apple.com1f2d7e02008-08-19 17:55:58 +000062522008-08-19 Eric Carlson <eric.carlson@apple.com>
6253
6254 Reviewed by Adele.
6255
6256 Fix for <rdar://problem/6154695> Full-page movies flicker while playing
6257 https://bugs.webkit.org/show_bug.cgi?id=20404
6258
6259 Ignore setVisible() when visibility doesn't change.
6260
6261 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
6262 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
6263 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
6264 (WebCore::MediaPlayerPrivate::setVisible):
6265
timothy@apple.com9d9821a2008-08-19 17:00:26 +000062662008-08-19 Timothy Hatcher <timothy@apple.com>
6267
timothy@apple.come058a792008-08-19 17:01:12 +00006268 Fixes a bug in the Profile view where switching sort order, then
6269 switching from heavy to tree mode would show the tree in the
6270 previous sort order.
6271
6272 https://bugs.webkit.org/show_bug.cgi?id=20441
6273
6274 Reviewed by Kevin McCullough.
6275
6276 * page/inspector/ProfileView.js:
6277 (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
6278 on the next profile before assigning it to this.profile.
6279 (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
6280 (WebInspector.ProfileView.prototype._sortProfile): Moves from
6281 _sortData and takes a profile argument. If the profile passed in
6282 matches the this.profile, then call refresh.
6283
62842008-08-18 Timothy Hatcher <timothy@apple.com>
6285
timothy@apple.come525e402008-08-19 17:01:00 +00006286 Changed the default sort order now that heavy view is the default.
6287 Also fixes a bug where the heavy profile was not sorted at first.
6288
6289 https://bugs.webkit.org/show_bug.cgi?id=20440
6290
6291 Reviewed by Kevin McCullough.
6292
6293 * page/inspector/ProfileView.js:
6294 (WebInspector.ProfileView): Changed the default sort column. Also assign
6295 heavyProfile to profile, so the sortSelfTimeDescending call happens
6296 on the heavy profile before assigning to this.profile.
6297
62982008-08-18 Timothy Hatcher <timothy@apple.com>
6299
timothy@apple.comc9287f32008-08-19 17:00:36 +00006300 Add support for editing DOM properties and scope variables by double
6301 clicking a property to enter edit mode.
6302
6303 https://bugs.webkit.org/show_bug.cgi?id=20415
6304
6305 Reviewed by Kevin McCullough.
6306
6307 * page/inspector/ObjectPropertiesSection.js:
6308 (WebInspector.ObjectPropertiesSection): Set editable to true by default.
6309 (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
6310 Factored out code into update, and calls update.
6311 (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
6312 Call removeChildren since this method can be called multiple times now.
6313 (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
6314 gets made later in onattach.
6315 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
6316 if shouldRefreshChildren is true. Call removeChildren since this method can be
6317 called multiple times now.
6318 (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
6319 (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
6320 (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
6321 this element (code moved from the constructor.)
6322 (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
6323 sibling property elements.
6324 (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
6325 WebInspector.startEditing after rememebring some context.
6326 (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
6327 for the list element, since it might have scrolled during editing.
6328 (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
6329 then restore the state from the context. Then call update to restore the title.
6330 (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
6331 if the user input and the previous input are the same. Call editingEnded, then call applyExpression
6332 to commit the user input.
6333 (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
6334 and stores the result on the object for the property name of this element. If the expression is
6335 empty, delete the property and remove the tree element.
6336 * page/inspector/ScopeChainSidebarPane.js:
6337 (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
6338 property on each ObjectPropertiesSection.
6339 (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
6340 since it is now implemented.
6341 * page/inspector/ScriptsPanel.js:
6342 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
6343 that defaults to true if omitted. It specifies whether to call update on the scope chain.
6344 * page/inspector/inspector.css: New styles.
6345 * page/inspector/treeoutline.js:
6346 (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
6347 change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
6348
63492008-08-18 Timothy Hatcher <timothy@apple.com>
6350
timothy@apple.com9d9821a2008-08-19 17:00:26 +00006351 Surround the expression to be evaluated in parenthesis so the
6352 result of the eval is the result of the whole expression not
6353 the last potential sub-expression. So evaluating {x: 123}
6354 will show the Object not 123.
6355
6356 https://bugs.webkit.org/show_bug.cgi?id=20428
6357
6358 Reviewed by Kevin McCullough.
6359
6360 * page/inspector/Console.js:
6361 (Console.prototype._evalInInspectedWindow): Add parenthesis
6362 around the expression. And add couple comments.
6363
kmccullough@apple.come8ac2f32008-08-19 16:38:06 +000063642008-08-19 Kevin McCullough <kmccullough@apple.com>
6365
6366 Reviewed by Geoff.
6367
6368 -Implement a page() function to extract a common code pattern.
6369
6370 * WebCore.xcodeproj/project.pbxproj:
6371 * page/Console.cpp:
6372 (WebCore::Console::addMessage):
6373 (WebCore::Console::error):
6374 (WebCore::Console::info):
6375 (WebCore::Console::log):
6376 (WebCore::Console::dir):
6377 (WebCore::Console::assertCondition):
6378 (WebCore::Console::time):
6379 (WebCore::Console::timeEnd):
6380 (WebCore::Console::group):
6381 (WebCore::Console::groupEnd):
6382 (WebCore::Console::finishedProfiling):
6383 (WebCore::Console::warn):
6384 (WebCore::Console::framePage):
6385 * page/Console.h:
6386
darin@apple.com349e1eb2008-08-19 04:39:04 +000063872008-08-12 Darin Adler <darin@apple.com>
6388
6389 Reviewed by Geoff.
6390
6391 - eliminate JSValue::type()
6392
6393 * bridge/c/c_instance.cpp:
6394 (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
6395 argument instead of JSType argument. Removed unneeded code to handle
6396 boolean, since that's never passed.
6397 * bridge/c/c_instance.h: Ditto.
6398
6399 * bridge/c/c_utility.cpp:
6400 (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
6401 instead of JSValue::type(). Removed unneeded code to handle
6402 "unspecified".
6403
6404 * bridge/jni/jni_instance.cpp:
6405 (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
6406 instead of JSType argument. Removed unneeded code to handle boolean.
6407 * bridge/jni/jni_instance.h: Ditto.
6408
6409 * bridge/jni/jni_jsobject.mm:
6410 (JavaJSObject::convertValueToJObject): Use JSValue::is functions
6411 instead of JSValue::type().
6412
6413 * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
6414 instead of JSType argument. Removed unused argument.
6415 * bridge/objc/objc_instance.mm:
6416 (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
6417 (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
6418 instead of JSType argument. Removed unneeded code to handle boolean
6419 and another dead code path for unknown types.
6420
6421 * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
6422 instead of JSType argument. Removed override of type() that caused
6423 the fallback object to return "UndefinedType" when there is no
6424 invokeUndefinedMethodFromWebScript:withArguments: method defined.
6425 That didn't accomplish much, since most checks for undefined don't
6426 ever call type().
6427 * bridge/objc/objc_runtime.mm:
6428 (ObjcFallbackObjectImp::defaultValue): Ditto.
6429
6430 * bridge/qt/qt_instance.cpp:
6431 (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
6432 argument instead of JSType argument. Removed unneeded code to handle
6433 boolean.
6434 * bridge/qt/qt_instance.h: Ditto.
6435
6436 * bridge/runtime.h:
6437 (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
6438 unsed argument.
6439 * bridge/runtime_object.cpp:
6440 (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
6441 argument instead of JSType argument.
6442 * bridge/runtime_object.h: Ditto.
6443
britto@apple.comaf7f8382008-08-19 00:42:13 +000064442008-08-18 Maxime Britto <britto@apple.com>
6445
6446 Reviewed by Adele.
6447
6448 <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
6449 Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
6450 We shouldn't be able to create another window while we are in pan scrolling.
6451 Other browsers behaviors :
6452 FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
6453 IE7 : Keys are not disabled but stops immediately the panning.
6454 This patch matches FF3 behavior by disabling every key but the esc key.
6455
6456 * page/EventHandler.cpp:
6457 (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
6458 (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
6459
mitz@apple.com12404d82008-08-19 00:20:38 +000064602008-08-18 Dan Bernstein <mitz@apple.com>
6461
6462 Reviewed by Dave Hyatt.
6463
6464 - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
6465
6466 Test: fast/replaced/max-width-percent.html
6467
6468 Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
6469 When false, max-width is not factored into the
6470 calculation.
6471 Changed RenderReplaced and subclasses' calcPrefWidths() to call
6472 calcReplacedWidth(false) and then apply max-width only if it has a
6473 fixed, positive value.
6474
6475 * rendering/RenderBox.cpp:
6476 (WebCore::RenderBox::calcReplacedWidth):
6477 * rendering/RenderBox.h:
6478 * rendering/RenderImage.cpp:
6479 (WebCore::RenderImage::calcReplacedWidth):
6480 (WebCore::RenderImage::calcPrefWidths):
6481 * rendering/RenderImage.h:
6482 * rendering/RenderReplaced.cpp:
6483 (WebCore::RenderReplaced::calcPrefWidths):
6484 * rendering/RenderSVGRoot.cpp:
6485 (WebCore::RenderSVGRoot::calcPrefWidths):
6486 * rendering/RenderVideo.cpp:
6487 (WebCore::RenderVideo::calcReplacedWidth):
6488 (WebCore::RenderVideo::calcPrefWidths):
6489 * rendering/RenderVideo.h:
6490
mrowe@apple.comced88732008-08-18 22:47:28 +000064912008-08-18 Daniel Macks <dmacks@netspace.org>
6492
6493 Reviewed by Mark Rowe.
6494
6495 https://bugs.webkit.org/show_bug.cgi?id=20410
6496 More portable/self-documenting replacement for SIZE_MAX.
6497
6498 * platform/network/curl/FormDataStreamCurl.cpp:
6499 (WebCore::FormDataStream::read):
6500
65012008-08-18 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com6040db32008-08-18 22:11:10 +00006502
6503 Reviewed by Dave Hyatt
6504
6505 Need to make sure we have an Animation in the AnimationList
6506 before setting the initial value.
6507 https://bugs.webkit.org/show_bug.cgi?id=20408
6508
6509 Test: fast/css/transition_shorthand_parsing.html
6510
6511 * css/CSSStyleSelector.cpp:
6512
kmccullough@apple.com64cb2fd2008-08-18 19:55:35 +000065132008-08-18 Kevin McCullough <kmccullough@apple.com>
6514
kmccullough@apple.com707bd362008-08-18 20:21:57 +00006515 Reviewed by Tim.
6516
6517 <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
6518 is another profile.
6519
6520 * page/inspector/ProfilesPanel.js:
6521
65222008-08-18 Kevin McCullough <kmccullough@apple.com>
6523
kmccullough@apple.com64cb2fd2008-08-18 19:55:35 +00006524 Reviewed by Geoff.
6525
6526 <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
6527 all console messages
6528
6529 * page/inspector/Console.js:
6530
jmalonzo@webkit.org5d1e0482008-08-18 11:20:11 +000065312008-08-18 Dirk Schulze <vbs85@gmx.de>
6532
6533 Reviewed by Eric Seidel.
6534
6535 Fixed Canvas for Cairo. Stroke and fill colors didn't work after
6536 the canvas clean up.
6537
6538 https://bugs.webkit.org/show_bug.cgi?id=20405
6539
6540 * html/CanvasRenderingContext2D.cpp:
6541 (WebCore::CanvasRenderingContext2D::fill):
6542 (WebCore::CanvasRenderingContext2D::stroke):
6543 (WebCore::CanvasRenderingContext2D::fillRect):
6544
timothy@apple.comc5e1f8d2008-08-18 03:21:46 +000065452008-08-17 Timothy Hatcher <timothy@apple.com>
6546
6547 Complete in scope variables in the Console when paused.
6548
6549 https://bugs.webkit.org/show_bug.cgi?id=19115
6550
6551 Reviewed by Geoffrey Garen.
6552
6553 * page/inspector/Console.js:
6554 (WebInspector.Console.prototype.completions): If the expressionString
6555 is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
6556 to get an object that declares all the in scope variables. That way
6557 "top level" expressions are completed.
6558 * page/inspector/ScriptsPanel.js:
6559 (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
6560 Return an object that has all the variables that are in scope for the
6561 selected call frame. The value of each property is just true.
6562 The return object is useful for quick lookups or auto completion.
6563
cwzwarich@webkit.orgac715282008-08-17 21:34:46 +000065642008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
6565
6566 Not reviewed.
6567
6568 Speculative Qt build fix.
6569
6570 * bridge/qt/qt_runtime.cpp:
6571 (KJS::Bindings::convertValueToQVariant):
6572 (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
6573
ggaren@apple.comfea43532008-08-17 20:23:49 +000065742008-08-17 Geoffrey Garen <ggaren@apple.com>
6575
6576 Reviewed by Cameron Zwarich.
ggaren@apple.com6e53d0a2008-08-17 20:28:37 +00006577
6578 Updated project files to XCode 3.1.
6579
6580 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
6581
65822008-08-17 Geoffrey Garen <ggaren@apple.com>
6583
6584 Reviewed by Cameron Zwarich.
ggaren@apple.comfea43532008-08-17 20:23:49 +00006585
6586 Made room for a free word in JSCell.
6587
6588 Changed JSDOMWindowBase to store its auxiliary data in a subclass of
6589 JSGlobalData, so the two could share a pointer.
6590
6591 Added a bunch of ASSERTs, to help catch over-sized objects.
6592
mrowe@apple.com13570292008-08-16 06:48:10 +000065932008-08-15 Mark Rowe <mrowe@apple.com>
6594
mitz@apple.comb96c1b92008-08-17 03:28:52 +00006595 Reviewed by Dan Bernstein.
6596
6597 Disable dead code stripping in debug builds.
6598
6599 * Configurations/Base.xcconfig:
6600 * WebCore.xcodeproj/project.pbxproj:
6601
66022008-08-15 Mark Rowe <mrowe@apple.com>
6603
mrowe@apple.com13570292008-08-16 06:48:10 +00006604 Rubber-stamped by Geoff Garen.
6605
6606 <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
6607
6608 * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
6609 between the Debug configuration and debug Production variant.
6610 * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
6611
antti@apple.coma05e8b02008-08-15 22:58:06 +000066122008-08-15 Antti Koivisto <antti@apple.com>
6613
6614 Reviewed by Anders.
6615
6616 Don't start preloading body resources before the head is complete. This prevents
6617 body preloads from slowing down initial display when there is limited amount
6618 of bandwidth available.
6619
6620 Works by queuing up found body preloads to DocLoader and only issuing them
6621 after document has rendering.
6622
6623 With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
6624 without affecting complete load time.
6625
6626 * html/PreloadScanner.cpp:
6627 (WebCore::PreloadScanner::PreloadScanner):
6628 (WebCore::PreloadScanner::scanningBody):
6629 (WebCore::PreloadScanner::emitTag):
6630 (WebCore::PreloadScanner::emitCSSRule):
6631 * html/PreloadScanner.h:
6632 * loader/DocLoader.cpp:
6633 (WebCore::DocLoader::preload):
6634 (WebCore::DocLoader::checkForPendingPreloads):
6635 (WebCore::DocLoader::requestPreload):
6636 * loader/DocLoader.h:
6637 * loader/loader.cpp:
6638 (WebCore::Loader::Host::didFinishLoading):
6639 (WebCore::Loader::Host::didFail):
6640
adachan@apple.com94ac38d2008-08-15 21:08:40 +000066412008-08-15 Ada Chan <adachan@apple.com>
6642
6643 Use item's computed style if the render style is 0 before falling back to the <select>'s style.
6644 This way style set on an <hr> within a <select> will be honored.
6645
6646 Reviewed by Dave Hyatt and Dan Bernstein.
6647
6648 * rendering/RenderMenuList.cpp:
6649 (WebCore::RenderMenuList::itemStyle):
6650
antti@apple.com9f7911472008-08-15 20:48:06 +000066512008-08-15 Antti Koivisto <antti@apple.com>
6652
6653 Reviewed by Oliver.
6654
6655 Some loader performance tweaks:
6656 - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
6657 Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue
6658 to not delay rendering.
6659 - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
6660 can take long time when latency is high so it is good to get started early.
6661 - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
6662 load queues. Issue remaining loads to the network layer.
6663
6664 * loader/loader.cpp:
6665 (WebCore::Loader::determinePriority):
6666 (WebCore::Loader::load):
6667 (WebCore::Loader::Host::servePendingRequests):
6668 * loader/loader.h:
6669
timothy@apple.com2d974c32008-08-15 18:35:39 +000066702008-08-15 Timothy Hatcher <timothy@apple.com>
6671
6672 Detach the script debugger when the Web Inspector's window closes.
6673 This has always been the intended design, but never fully implemented.
6674
6675 https://bugs.webkit.org/show_bug.cgi?id=20402
6676
6677 Reviewed by Adam Roben.
6678
6679 * page/InspectorController.cpp:
6680 (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
6681 if the window is no longer visible.
6682
hausmann@webkit.orgbb4b9142008-08-15 18:11:34 +000066832008-08-15 HĂĄvard Wall <hwall@trolltech.com>
6684
6685 Reviewed by Simon.
6686
hausmann@webkit.org58144a72008-08-15 18:12:08 +00006687 Fixes: compile with QT_NO_CONTEXTMENU
6688
6689 * platform/qt/PlatformMouseEventQt.cpp:
6690 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
6691 * platform/qt/PlatformScrollBarQt.cpp:
6692 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
6693 (WebCore::PlatformScrollbar::handleContextMenuEvent):
6694
66952008-08-15 HĂĄvard Wall <hwall@trolltech.com>
6696
6697 Reviewed by Simon.
6698
hausmann@webkit.orgbb4b9142008-08-15 18:11:34 +00006699 Fixes: compile with QT_NO_WHEELEVENT
6700
6701 * platform/qt/WheelEventQt.cpp:
6702 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
6703
timothy@apple.com4889e612008-08-15 17:06:14 +000067042008-08-15 Keishi Hattori <casey.hattori@gmail.com>
6705
timothy@apple.comd64639c2008-08-15 17:48:36 +00006706 Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
6707
6708 https://bugs.webkit.org/show_bug.cgi?id=20210
6709
6710 Reviewed by Tim Hatcher.
6711
6712 * page/Console.cpp:
6713 (WebCore::Console::group):
6714 (WebCore::Console::groupEnd):
6715 * page/Console.h:
6716 (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
6717 * page/InspectorController.cpp:
6718 (WebCore::InspectorController::startGroup): Increments group level by
6719 one and adds console message with StartGroupMessaageLevel.
6720 (WebCore::InspectorController::endGroup): Decrements group level by one
6721 and adds console message with EndGroupMessaageLevel.
6722 * page/InspectorController.h:
6723 * page/inspector/Console.js:
6724 (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
6725 if the message is StartGroupMessaageLevel.
6726 (WebInspector.ConsoleMessage.prototype.toMessageElement):
6727 (WebInspector.ConsoleGroup.prototype.addMessage):
6728 * page/inspector/inspector.js:
6729
67302008-08-15 Keishi Hattori <casey.hattori@gmail.com>
6731
timothy@apple.com7310b6a2008-08-15 17:35:22 +00006732 Adds support for console.dir to the Inspector
6733
6734 https://bugs.webkit.org/show_bug.cgi?id=19155
6735
6736 Reviewed by Tim Hatcher.
6737
6738 * bindings/js/JSConsoleCustom.cpp:
6739 (WebCore::JSConsole::dir):
6740 * page/Console.cpp:
6741 (WebCore::Console::dir):
6742 * page/Console.h: Added ObjectMessageLevel.
6743 * page/Console.idl: Added console.dir.
6744 * page/inspector/Console.js:
6745 (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
6746 ObjectPropertiesSection if the MessageLevel is Object.
6747 * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
6748 used on primitive data types.
6749 * page/inspector/inspector.css:
6750
67512008-08-15 Keishi Hattori <casey.hattori@gmail.com>
6752
timothy@apple.com4889e612008-08-15 17:06:14 +00006753 Adds support for clear() in the Inspector console.
6754
6755 https://bugs.webkit.org/show_bug.cgi?id=19873
6756
6757 Reviewed by Tim Hatcher.
6758
6759 * page/inspector/Console.js:
6760
timothy@apple.com12c5b5d2008-08-15 17:02:44 +000067612008-08-15 Anthony Ricaud <rik24d@gmail.com>
6762
6763 Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
6764
6765 Platform distinction and modifier key matching adjusted
6766 by Daniel Jalkut <jalkut@red-sweater.com>
6767
6768 Bug 16313: text search (find) keybindings should work in the Web Inspector
6769 https://bugs.webkit.org/show_bug.cgi?id=16313
6770
6771 Reviewed by Tim Hatcher.
6772
6773 * page/inspector/inspector.js: Added a case for the F key
6774
timothy@apple.coma5ba4392008-08-15 16:50:26 +000067752008-08-15 Keishi Hattori <casey.hattori@gmail.com>
6776
6777 Fix for error when the string doesn't contain a webkit-profile link.
6778
6779 https://bugs.webkit.org/show_bug.cgi?id=20399
6780
6781 Reviewed by Tim Hatcher.
6782
6783 * page/inspector/inspector.js:
6784
timothy@apple.com895b2652008-08-15 16:33:27 +000067852008-08-15 Timothy Hatcher <timothy@apple.com>
6786
6787 Fixes two bugs where JavaScript could be executed from the page
6788 while the debugger is paused.
6789
6790 The first issue was JSLazyEventListener not checking the paused
6791 state before parsing the code.
6792
6793 The second issue was with the PageGroup version of
6794 JavaScriptDebugServer::setJavaScriptPaused always passing false
6795 to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
6796 and not the paused argument.
6797
6798 https://bugs.webkit.org/show_bug.cgi?id=20284
6799
6800 Reviewed by Adam Roben.
6801
6802 * bindings/js/JSEventListener.cpp:
6803 (WebCore::JSLazyEventListener::parseCode): Check the paused
6804 state of the ScriptController. Return early if paused.
6805 * manual-tests/inspector/debugger-execution-while-paused.html: Added.
6806 * page/JavaScriptDebugServer.cpp:
6807 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
6808 Pass the paused argument to the Page version of setJavaScriptPaused.
6809
ap@webkit.orgbe495d32008-08-15 07:43:48 +000068102008-08-15 Alexey Proskuryakov <ap@webkit.org>
6811
6812 Reviewed by Geoff Garen.
6813
6814 JSStringRef is created context-free, but can get linked to one via an identifier table,
6815 breaking an implicit API contract.
6816
6817 * page/InspectorController.cpp:
6818 (WebCore::jsStringRef):
6819 (WebCore::InspectorController::didParseSource):
6820 (WebCore::InspectorController::failedToParseSource):
6821 * page/JavaScriptProfile.cpp:
6822 (WebCore::getTitleCallback):
6823 Updated for JavaScriptCore changes.
6824
kevino@webkit.org8fe09ff2008-08-15 05:10:57 +000068252008-08-14 Kevin Ollivier <kevino@theolliviers.com>
6826
6827 wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
6828 an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
6829
6830 * platform/graphics/AffineTransform.h:
6831
adele@apple.com2b2e2f82008-08-15 00:53:36 +000068322008-08-14 Eric Carlson <eric.carlson@apple.com>
6833
6834 Reviewed by Adele.
6835
6836 Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
6837 <video> elements on Windows never becomes visible when a page is restored from the cache
6838
6839 Always pass "set" calls down to MediaPlayerPrivate instead of only when the
6840 value is different from the cached value. Let the implementation decide when
6841 to avoid work because nothing has changed.
6842
6843 * platform/graphics/MediaPlayer.cpp:
6844 (WebCore::MediaPlayer::setVolume):
6845 (WebCore::MediaPlayer::setRate):
6846 (WebCore::MediaPlayer::setRect):
6847 (WebCore::MediaPlayer::setVisible):
6848
timothy@apple.comda810f42008-08-14 23:57:14 +000068492008-08-14 Keishi Hattori <casey.hattori@gmail.com>
6850
6851 Make Firebug command line API respect predefined variables.
6852
timothy@apple.com90751f02008-08-14 23:58:19 +00006853 https://bugs.webkit.org/show_bug.cgi?id=20385
6854
timothy@apple.comda810f42008-08-14 23:57:14 +00006855 Reviewed by Tim Hatcher.
6856
6857 * page/inspector/Console.js:
6858
weinig@apple.com4b51d002008-08-14 23:33:22 +000068592008-08-14 Sam Weinig <sam@webkit.org>
6860
6861 Reviewed by Geoffrey Garen and Timothy Hatcher.
6862
6863 Allow programatically setting the HTMLTokenizers time delay and chunk size
6864 which are used for determining how aggressively we yield.
6865
6866 * WebCore.base.exp:
6867 * html/HTMLTokenizer.cpp:
6868 (WebCore::HTMLTokenizer::begin):
6869 (WebCore::HTMLTokenizer::continueProcessing):
6870 * html/HTMLTokenizer.h:
6871 * page/Page.cpp:
6872 (WebCore::Page::Page):
6873 (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
6874 (WebCore::Page::setCustomHTMLTokenizerChunkSize):
6875 * page/Page.h:
6876 (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
6877 (WebCore::Page::customHTMLTokenizerTimeDelay):
6878 (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
6879 (WebCore::Page::customHTMLTokenizerChunkSize):
6880
eric@webkit.org89613d22008-08-14 23:19:17 +000068812008-08-14 Eric Seidel <eric@webkit.org>
6882
eric@webkit.org7e897c32008-08-14 23:20:00 +00006883 Reviewed by Beth.
6884
6885 Move us one step closer to cross-platform svg/graphics code
6886
6887 * WebCore.xcodeproj/project.pbxproj:
6888 * html/CanvasStyle.cpp:
6889 * platform/graphics/Color.cpp:
6890 (WebCore::colorWithOverrideAlpha):
6891 * platform/graphics/Color.h:
6892 * svg/graphics/cg/CgSupport.cpp:
6893 (WebCore::applyStrokeStyleToContext):
6894 (WebCore::strokeBoundingBox):
6895 * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
6896 (WebCore::SVGPaintServerSolid::setup):
6897
68982008-08-14 Eric Seidel <eric@webkit.org>
6899
eric@webkit.org4f490652008-08-14 23:19:31 +00006900 Reviewed by Alexey.
6901
eric@webkit.org73fa9d12008-08-14 23:19:44 +00006902 Remove un-need includes from HTMLCanvas and use the
6903 Gradient platform abstraction in one place in CanvasStyle
6904
6905 * html/CanvasRenderingContext2D.cpp:
6906 (WebCore::CanvasRenderingContext2D::fillRect):
6907 * html/CanvasStyle.cpp:
6908 * html/HTMLCanvasElement.cpp:
6909
69102008-08-14 Eric Seidel <eric@webkit.org>
6911
6912 Reviewed by Alexey.
6913
eric@webkit.org4f490652008-08-14 23:19:31 +00006914 Clean up GlyphBuffer.h, removing more #ifdefs
6915
6916 * platform/graphics/GlyphBuffer.h:
6917 (WebCore::GlyphBuffer::glyphAt):
6918 (WebCore::GlyphBuffer::advanceAt):
6919 (WebCore::GlyphBuffer::add):
6920
69212008-08-14 Eric Seidel <eric@webkit.org>
6922
eric@webkit.org89613d22008-08-14 23:19:17 +00006923 Reviewed by Sam.
6924
6925 Clean up AffineTransform.h, removing #ifdefs
6926
6927 * platform/graphics/AffineTransform.h:
6928 * platform/graphics/cairo/AffineTransformCairo.cpp:
6929 * platform/graphics/cg/AffineTransformCG.cpp:
6930 * platform/graphics/qt/AffineTransformQt.cpp:
6931 * platform/graphics/wx/AffineTransformWx.cpp:
6932
mitz@apple.com551d6252008-08-14 23:08:09 +000069332008-08-14 Dan Bernstein <mitz@apple.com>
6934
mitz@apple.com94c1a7d2008-08-14 23:12:34 +00006935 - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
6936
6937 * platform/graphics/cairo/ImageSourceCairo.cpp:
6938 (WebCore::ImageSource::frameSizeAtIndex):
6939 * platform/graphics/qt/ImageSourceQt.cpp:
6940 (WebCore::ImageSource::frameSizeAtIndex):
6941 * platform/graphics/wx/ImageSourceWx.cpp:
6942 (WebCore::ImageSource::frameSizeAtIndex):
6943
69442008-08-14 Dan Bernstein <mitz@apple.com>
6945
mitz@apple.com551d6252008-08-14 23:08:09 +00006946 Reviewed by Brady Eidson.
6947
6948 - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
6949
6950 * platform/graphics/BitmapImage.cpp:
6951 (WebCore::BitmapImage::BitmapImage): Added initialization of
6952 m_hasUniformFrameSize.
6953 (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
6954 cached frame for use in decoded size computation and for setting
6955 m_hasUniformFrameSize.
6956 (WebCore::BitmapImage::currentFrameSize): Added.
6957 (WebCore::BitmapImage::dataChanged): Added code to reset
6958 m_hasUniformFrameSize.
6959 * platform/graphics/BitmapImage.h: Added currentFrameSize() and
6960 m_hasUniformFrameSize.
6961 * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
6962 * platform/graphics/cg/ImageCG.cpp:
6963 (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
6964 fixes the bug, which resulted from assuming that the frame being drawn
6965 was the same size as the first frame.
6966 * platform/graphics/cg/ImageSourceCG.cpp:
6967 (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
6968 changed to get the size of the frame at the given index.
6969 (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
6970
simon.fraser@apple.com50954e52008-08-14 23:04:41 +000069712008-08-13 Simon Fraser <simon.fraser@apple.com>
6972
6973 Reviewed by Eric Seidel
6974
6975 Fix @font-face inside @media rule crash.
6976 https://bugs.webkit.org/show_bug.cgi?id=20367
6977
6978 Test: fast/css/font-face-in-media-rule.html
6979
6980 * css/CSSStyleSelector.cpp:
6981 (WebCore::CSSRuleSet::addRulesFromSheet):
6982
kevino@webkit.org141c4602008-08-14 22:52:55 +000069832008-08-14 Kevin Ollivier <kevino@theolliviers.com>
6984
6985 wx build fixes after recent changes to Canvas and Image classes.
6986
6987 * platform/graphics/Pattern.h:
6988 * platform/graphics/wx/GradientWx.cpp:
6989 (WebCore::Gradient::fill):
6990 * platform/graphics/wx/GraphicsContextWx.cpp:
6991 (WebCore::GraphicsContext::applyFillPattern):
6992 (WebCore::GraphicsContext::applyStrokePattern):
6993 * platform/graphics/wx/ImageBufferWx.cpp:
6994 (WebCore::ImageBuffer::image):
6995 * platform/graphics/wx/ImageWx.cpp:
6996 (WebCore::Image::loadPlatformResource):
6997
britto@apple.comd7008662008-08-14 19:26:02 +000069982008-08-14 Maxime Britto <britto@apple.com>
6999
7000 Reviewed by Sam Weinig.
7001
7002 rdar://6102511
7003 When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
7004 IE and FF are both preventing the keyboard event to interact with the page while scrolling.
7005 Some differences exist between them concerning the kind of key which is pressed :
7006 IE7 : every key leads to a stop of the panning
7007 FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
7008 For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
7009
7010 * page/EventHandler.cpp:
7011 (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
7012
christian@webkit.org0e20f322008-08-14 19:14:47 +000070132008-08-14 Christian Dywan <christian@twotoasts.de>
7014
7015 Gtk+/ Cairo build fix, patch by Dirk Schulze.
7016
7017 * html/CanvasStyle.cpp:
7018 * platform/graphics/cairo/PatternCairo.cpp:
7019 (WebCore::Pattern::createPlatformPattern):
7020 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
7021
kmccullough@apple.comd2b50f12008-08-14 18:11:20 +000070222008-08-14 Kevin McCullough <kmccullough@apple.com>
7023
7024 Reviewed by Tim.
7025
7026 <rdar://problem/6115819> Notify of profile in console
7027
7028 * page/InspectorController.cpp:
7029 (WebCore::InspectorController::addProfile):
7030 (WebCore::InspectorController::addProfileMessageToConsole): Called by
7031 addProfile this is the function that adds a message to the console that
7032 a profile finished.
7033 * page/InspectorController.h:
7034 * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
7035 the console log to the profile in the web inspector.
7036 (WebCore::getUniqueIdCallback):
7037 (WebCore::ProfileClass):
7038 * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
7039 Id to bring up the requested profile. Also select and reveal the
7040 profile in the profile panel. And created displayTitleForProfileLink()
7041 which formats a title taking into account if it's user initiated or if
7042 there are multiples. Lasty, I put the user initiated profile in a
7043 variable.
7044 * page/inspector/inspector.js: Make the profile title be a clickable
7045 link that will take the user to the identified profile. Also expose
7046 the count of user initiated profiles so they can be displayed in the
7047 console with the correct count.
7048
timothy@apple.comcd7f0f32008-08-14 17:41:05 +000070492008-08-14 Timothy Hatcher <timothy@apple.com>
7050
7051 Avoid formating ConsoleMessages twice unless the message will be
7052 displayed in bubbles of a SourceFrame.
7053
7054 Reviewed by Kevin McCullough.
7055
7056 * page/inspector/Console.js:
7057 (WebInspector.ConsoleMessage): Only format the plain text message
7058 if the URL and line are valid and the level is error or warning.
7059 (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
7060 Helper to test for error or warning level.
7061 * page/inspector/SourceFrame.js:
7062 (WebInspector.SourceFrame.prototype.addMessage): Don't add the
7063 message if there is no message or valid line or if the msg
7064 isn't an error or warning.
7065
jmalonzo@webkit.orgb469bb72008-08-14 15:07:41 +000070662008-08-14 Jan Michael Alonzo <jmalonzo@webkit.org>
7067
7068 partial Gtk build fix, not reviewed
7069
7070 * platform/graphics/cairo/PatternCairo.cpp:
7071
weinig@apple.com45e83142008-08-14 04:49:30 +000070722008-08-13 Sam Weinig <sam@webkit.org>
7073
7074 Reviewed by Anders Carlson.
7075
7076 Fix style issue.
7077
7078 * html/HTMLMediaElement.cpp:
7079 (WebCore::HTMLMediaElement::pickMedia):
7080
zimmermann@webkit.org9ae47e92008-08-14 02:22:35 +000070812008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
7082
zimmermann@webkit.org7a2f53d2008-08-14 03:06:01 +00007083 Build fix for Cairo, not reviewed. (exposed by gtk build slave)
7084 Continue Erics build fixes, after the Image cleanup.
7085
7086 * platform/graphics/cairo/ImageBufferCairo.cpp:
7087 (WebCore::ImageBuffer::image):
7088
70892008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
7090
zimmermann@webkit.org1ef52132008-08-14 02:38:16 +00007091 Build fix for Qt, not reviewed.
7092 Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
7093
7094 * dom/XMLTokenizer.cpp:
7095 (WebCore::eventuallyMarkAsParserCreated): Was erre
7096
70972008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
7098
zimmermann@webkit.org3e560562008-08-14 02:26:00 +00007099 Build fix, not reviewed.
7100 Add ScriptElement.cpp to Gtk build.
7101
7102 * GNUmakefile.am:
7103
71042008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
7105
zimmermann@webkit.org9ae47e92008-08-14 02:22:35 +00007106 Reviewed by Eric.
7107
7108 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
7109
7110 Refactor HTMLScriptElement's code into a common base class: ScriptElement.
7111 SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
7112
7113 This resolves code duplications and allows us to completly replace the old
7114 SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
7115
7116 As ScriptElement, doesn't actually inherit from Element, we may want to rename
7117 it, though StyleElement uses the same naming convention, so I left it as is for now.
7118 Eventually we'll rename both files in future.
7119
7120 No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
7121
7122 * WebCore.pro: Add new ScriptElement.cpp to build.
7123 * WebCore.vcproj/WebCore.vcproj: Ditto.
7124 * WebCore.xcodeproj/project.pbxproj: Ditto.
7125 * WebCoreSources.bkl: Dutto.
7126 * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
7127 (WebCore::ScriptElement::insertedIntoDocument):
7128 (WebCore::ScriptElement::removedFromDocument):
7129 (WebCore::ScriptElement::childrenChanged):
7130 (WebCore::ScriptElement::finishParsingChildren):
7131 (WebCore::ScriptElement::handleSourceAttribute):
7132 (WebCore::isSupportedJavaScriptLanguage):
7133 (WebCore::ScriptElementData::ScriptElementData):
7134 (WebCore::ScriptElementData::~ScriptElementData):
7135 (WebCore::ScriptElementData::requestScript):
7136 (WebCore::ScriptElementData::evaluateScript):
7137 (WebCore::ScriptElementData::stopLoadRequest):
7138 (WebCore::ScriptElementData::notifyFinished):
7139 (WebCore::ScriptElementData::ignoresLoadRequest):
7140 (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
7141 (WebCore::ScriptElementData::scriptCharset):
7142 (WebCore::ScriptElementData::scriptContent):
7143 * dom/ScriptElement.h: Added.
7144 (WebCore::ScriptElement::ScriptElement):
7145 (WebCore::ScriptElement::~ScriptElement):
7146 (WebCore::ScriptElementData::element):
7147 (WebCore::ScriptElementData::createdByParser):
7148 (WebCore::ScriptElementData::setCreatedByParser):
7149 * dom/XMLTokenizer.cpp:
7150 (WebCore::isScriptElement):
7151 (WebCore::castToScriptElement):
7152 (WebCore::eventuallyMarkAsParserCreated):
7153 (WebCore::XMLTokenizer::startElementNs):
7154 (WebCore::XMLTokenizer::endElementNs):
7155 (WebCore::createXHTMLParserErrorHeader):
7156 (WebCore::XMLTokenizer::insertErrorMessageBlock):
7157 * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
7158 (WebCore::HTMLScriptElement::HTMLScriptElement):
7159 (WebCore::HTMLScriptElement::~HTMLScriptElement):
7160 (WebCore::HTMLScriptElement::isURLAttribute):
7161 (WebCore::HTMLScriptElement::setCreatedByParser):
7162 (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
7163 (WebCore::HTMLScriptElement::childrenChanged):
7164 (WebCore::HTMLScriptElement::parseMappedAttribute):
7165 (WebCore::HTMLScriptElement::finishParsingChildren):
7166 (WebCore::HTMLScriptElement::insertedIntoDocument):
7167 (WebCore::HTMLScriptElement::removedFromDocument):
7168 (WebCore::HTMLScriptElement::text):
7169 (WebCore::HTMLScriptElement::setText):
7170 (WebCore::HTMLScriptElement::setHtmlFor):
7171 (WebCore::HTMLScriptElement::setEvent):
7172 (WebCore::HTMLScriptElement::charset):
7173 (WebCore::HTMLScriptElement::src):
7174 (WebCore::HTMLScriptElement::type):
7175 (WebCore::HTMLScriptElement::scriptCharset):
7176 (WebCore::HTMLScriptElement::scriptContent):
7177 (WebCore::HTMLScriptElement::sourceAttributeValue):
7178 (WebCore::HTMLScriptElement::charsetAttributeValue):
7179 (WebCore::HTMLScriptElement::typeAttributeValue):
7180 (WebCore::HTMLScriptElement::languageAttributeValue):
7181 (WebCore::HTMLScriptElement::dispatchLoadEvent):
7182 (WebCore::HTMLScriptElement::dispatchErrorEvent):
7183 * html/HTMLScriptElement.h:
7184 * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
7185 * svg/SVGScriptElement.cpp:
7186 (WebCore::SVGScriptElement::SVGScriptElement):
7187 (WebCore::SVGScriptElement::scriptContent):
7188 (WebCore::SVGScriptElement::sourceAttributeValue):
7189 (WebCore::SVGScriptElement::charsetAttributeValue):
7190 (WebCore::SVGScriptElement::typeAttributeValue):
7191 (WebCore::SVGScriptElement::languageAttributeValue):
7192 (WebCore::SVGScriptElement::dispatchLoadEvent):
7193 (WebCore::SVGScriptElement::dispatchErrorEvent):
7194 * svg/SVGScriptElement.h:
7195 (WebCore::SVGScriptElement::setCreatedByParser):
7196
eric@webkit.org7811ef02008-08-14 00:28:51 +000071972008-08-13 Eric Seidel <eric@webkit.org>
7198
eric@webkit.org3562c592008-08-14 02:17:29 +00007199 Attempt to fix the Gtk build, no review.
7200
7201 I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
7202
7203 * platform/graphics/GraphicsContext.h:
7204 * platform/graphics/cairo/GraphicsContextCairo.cpp:
7205 * platform/graphics/qt/GradientQt.cpp:
7206 * platform/graphics/qt/GraphicsContextQt.cpp:
7207 * platform/gtk/RenderThemeGtk.cpp:
7208 (WebCore::paintMozWidget):
7209
72102008-08-13 Eric Seidel <eric@webkit.org>
7211
eric@webkit.org2ec42072008-08-14 02:03:09 +00007212 Yet another attempt to fix the Qt build, no review.
7213
7214 * platform/graphics/qt/GradientQt.cpp:
7215 * platform/graphics/qt/GraphicsContextQt.cpp:
7216 (WebCore::GraphicsContext::applyStrokePattern):
7217 (WebCore::GraphicsContext::applyFillPattern):
7218
72192008-08-13 Eric Seidel <eric@webkit.org>
7220
7221 Attempt to fix the Windows build, no review.
7222
7223 * platform/win/CursorWin.cpp:
7224 (WebCore::loadCursorByName):
7225 * platform/win/ScrollViewWin.cpp:
7226 (WebCore::ScrollView::paint):
7227
72282008-08-13 Eric Seidel <eric@webkit.org>
7229
eric@webkit.org508c0282008-08-14 01:29:34 +00007230 Attempt to fix the Windows build, no review.
7231
7232 * platform/win/CursorWin.cpp:
7233 (WebCore::loadCursorByName):
7234 * platform/win/ScrollViewWin.cpp:
7235 (WebCore::ScrollView::paint):
7236
72372008-08-13 Eric Seidel <eric@webkit.org>
7238
eric@webkit.org1bf70ab2008-08-14 01:24:15 +00007239 Attempt to fix the Qt build, no review.
7240
7241 * platform/graphics/qt/ImageBufferQt.cpp:
7242 (WebCore::ImageBuffer::image):
7243
72442008-08-13 Eric Seidel <eric@webkit.org>
7245
eric@webkit.orgf2d7c212008-08-14 01:21:34 +00007246 Attempt to fix the Windows build, no review.
7247
7248 * platform/graphics/win/ImageWin.cpp:
7249 (WebCore::Image::loadPlatformResource):
7250 * plugins/win/PluginViewWin.cpp:
7251 (WebCore::PluginView::paintMissingPluginIcon):
7252
72532008-08-13 Eric Seidel <eric@webkit.org>
7254
eric@webkit.orgac3f6662008-08-14 01:15:50 +00007255 Another attempt to fix the Qt build, no review.
7256
7257 * platform/graphics/qt/ImageQt.cpp:
7258 * platform/graphics/qt/StillImageQt.h:
7259
72602008-08-13 Eric Seidel <eric@webkit.org>
7261
eric@webkit.org31e0d812008-08-14 01:05:42 +00007262 No review, build fix only.
7263
7264 Fix mac build, due to change in new code since my patch was written.
7265
7266 * svg/graphics/cg/SVGResourceMaskerCg.mm:
7267 (WebCore::SVGResourceMasker::applyMask):
7268
72692008-08-13 Eric Seidel <eric@webkit.org>
7270
eric@webkit.orga20a0032008-08-14 00:42:54 +00007271 Build fix only, no review.
7272
7273 Attempt to fix the Qt build.
7274
eric@webkit.org923255c2008-08-14 00:59:20 +00007275 * platform/graphics/qt/ImageBufferQt.cpp:
7276 * platform/graphics/qt/StillImageQt.h:
7277 (WebCore::StillImage::create):
7278 (WebCore::StillImage::destroyDecodedData):
7279 (WebCore::StillImage::decodedSize):
7280
72812008-08-13 Eric Seidel <eric@webkit.org>
7282
7283 Build fix only, no review.
7284
7285 Attempt to fix the Qt build.
7286
eric@webkit.orga20a0032008-08-14 00:42:54 +00007287 * html/CanvasStyle.cpp:
7288 (WebCore::CanvasStyle::applyStrokeColor):
7289 (WebCore::CanvasStyle::applyFillColor):
7290
72912008-08-13 Eric Seidel <eric@webkit.org>
7292
eric@webkit.org4aca3be2008-08-14 00:30:04 +00007293 Reviewed by Sam.
7294
7295 Match HTML5 spec by throwing INVALID_STATE_ERR when
7296 createPattern is called and the HTMLImageElement is not
7297 yet done loading the image (!isComplete)
7298 https://bugs.webkit.org/show_bug.cgi?id=20351
7299
7300 Test: http/misc/canvas-pattern-from-incremental-image.html
7301
7302 * html/CanvasRenderingContext2D.cpp:
7303 (WebCore::CanvasRenderingContext2D::createPattern):
7304
73052008-08-13 Eric Seidel <eric@webkit.org>
7306
eric@webkit.org5b265602008-08-14 00:29:26 +00007307 Reviewed by Niko.
7308
eric@webkit.orgf0124f62008-08-14 00:29:50 +00007309 Split out a Pattern class from CanvasPattern
7310 and remove all the Pattern-related #ifdefs
7311 (This will break non-mac platforms! I will fix them.)
7312 https://bugs.webkit.org/show_bug.cgi?id=20351
7313
7314 * GNUmakefile.am:
7315 * WebCore.pro:
7316 * WebCore.vcproj/WebCore.vcproj:
7317 * WebCore.xcodeproj/project.pbxproj:
7318 * WebCoreSources.bkl:
7319 * html/CanvasPattern.cpp:
7320 (WebCore::CanvasPattern::parseRepetitionType):
7321 (WebCore::CanvasPattern::CanvasPattern):
7322 * html/CanvasPattern.h:
7323 (WebCore::CanvasPattern::create):
7324 (WebCore::CanvasPattern::pattern):
7325 (WebCore::CanvasPattern::originClean):
7326 * html/CanvasRenderingContext2D.cpp:
7327 (WebCore::CanvasRenderingContext2D::createPattern):
7328 (WebCore::CanvasRenderingContext2D::applyStrokePattern):
7329 (WebCore::CanvasRenderingContext2D::applyFillPattern):
7330 * html/CanvasRenderingContext2D.h:
7331 * html/HTMLCanvasElement.cpp:
7332 * html/HTMLCanvasElement.h:
7333 * loader/FrameLoader.cpp:
7334 (WebCore::FrameLoader::createHistoryItem):
7335 * platform/graphics/GraphicsContext.h:
7336 * platform/graphics/cairo/GraphicsContextCairo.cpp:
7337 (WebCore::GraphicsContext::applyStrokePattern):
7338 (WebCore::GraphicsContext::applyFillPattern):
7339 * platform/graphics/cg/GraphicsContextCG.cpp:
7340 (WebCore::GraphicsContext::clipToImageBuffer):
7341 (WebCore::GraphicsContext::applyStrokePattern):
7342 (WebCore::GraphicsContext::applyFillPattern):
7343
73442008-08-13 Eric Seidel <eric@webkit.org>
7345
7346 Reviewed by Niko.
7347
eric@webkit.org5b265602008-08-14 00:29:26 +00007348 Make Images RefCounted (and clean up callers)
7349 https://bugs.webkit.org/show_bug.cgi?id=20351
7350
7351 * editing/DeleteButtonController.cpp:
7352 (WebCore::DeleteButtonController::createDeletionUI):
7353 * loader/CachedImage.cpp:
7354 (WebCore::CachedImage::CachedImage):
7355 (WebCore::brokenImage):
7356 (WebCore::nullImage):
7357 (WebCore::CachedImage::image):
7358 (WebCore::CachedImage::notifyObservers):
7359 (WebCore::CachedImage::createImage):
7360 * loader/CachedImage.h:
7361 * loader/icon/IconRecord.cpp:
7362 (WebCore::IconRecord::setImageData):
7363 (WebCore::IconRecord::loadImageFromResource):
7364 * loader/icon/IconRecord.h:
7365 * platform/graphics/BitmapImage.h:
7366 (WebCore::BitmapImage::create):
7367 * platform/graphics/GeneratedImage.h:
7368 * platform/graphics/Gradient.cpp:
7369 * platform/graphics/Gradient.h:
7370 * platform/graphics/Image.cpp:
7371 (WebCore::Image::nullImage):
7372 * platform/graphics/Image.h:
7373 * platform/graphics/ImageBuffer.h:
7374 * platform/graphics/cairo/ImageBufferCairo.cpp:
7375 (WebCore::ImageBuffer::image):
7376 * platform/graphics/cg/ImageBufferCG.cpp:
7377 (WebCore::ImageBuffer::image):
7378 (WebCore::ImageBuffer::getImageData):
7379 (WebCore::ImageBuffer::putImageData):
7380 * platform/graphics/cg/PDFDocumentImage.h:
7381 (WebCore::PDFDocumentImage::create):
7382 (WebCore::PDFDocumentImage::destroyDecodedData):
7383 (WebCore::PDFDocumentImage::decodedSize):
7384 * platform/graphics/gtk/ImageGtk.cpp:
7385 (WebCore::Image::loadPlatformResource):
7386 * platform/graphics/mac/ImageMac.mm:
7387 (WebCore::Image::loadPlatformResource):
7388 * rendering/RenderImage.cpp:
7389 * rendering/RenderLayer.cpp:
7390 (WebCore::RenderLayer::paintOverflowControls):
7391 * svg/graphics/SVGImage.cpp:
7392 (WebCore::SVGImage::nativeImageForCurrentFrame):
7393 * svg/graphics/SVGImage.h:
7394 (WebCore::SVGImage::create):
7395 (WebCore::SVGImage::destroyDecodedData):
7396 (WebCore::SVGImage::decodedSize):
7397 (WebCore::SVGImage::frameAtIndex):
7398 * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
7399 (WebCore::SVGPaintServerPattern::setup):
7400 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
7401 (WebCore::SVGResourceMasker::applyMask):
7402 * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
7403 (WebCore::patternCallback):
7404 * svg/graphics/cg/SVGResourceMaskerCg.mm:
7405 (WebCore::SVGResourceMasker::applyMask):
7406
74072008-08-13 Eric Seidel <eric@webkit.org>
7408
7409 Reviewed by Niko.
eric@webkit.org7811ef02008-08-14 00:28:51 +00007410
7411 Remove #ifdefs from CanvasStyle by using platform/Color.h
eric@webkit.org5b265602008-08-14 00:29:26 +00007412 https://bugs.webkit.org/show_bug.cgi?id=20351
eric@webkit.org7811ef02008-08-14 00:28:51 +00007413
7414 There are some down-sides to this commit.
7415 This commit limits us to 255 levels of grey for calls like:
7416 context.setStrokeStyle(.37, 1.0)
7417 previously CG might have used up to 32bits to store the grey level
7418 Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
7419
7420 Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
7421 to RGBA32 (like all the rest of colors in WebCore), thus:
7422 context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
7423 context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
7424
7425 If this is a problem for Dashboard, we can either roll out this commit
7426 or add a beefier Color abstraction, which can be used internally by GraphicsContext
7427 when keeping state, and then GraphicsContext can grow some additional set* routines
7428 for setting the a grey/float/whatever fill and stroke.
7429
7430 * html/CanvasRenderingContext2D.cpp:
7431 (WebCore::CanvasRenderingContext2D::setFillStyle):
7432 * html/CanvasStyle.cpp:
7433 (WebCore::CanvasStyle::CanvasStyle):
7434 (WebCore::colorWithOverrideAlpha):
7435 (WebCore::CanvasStyle::applyStrokeColor):
7436 (WebCore::CanvasStyle::applyFillColor):
7437 * html/CanvasStyle.h:
7438 * platform/graphics/Color.cpp:
7439 (WebCore::colorFloatToRGBAByte):
7440 (WebCore::makeRGBA32FromFloats):
7441 * platform/graphics/Color.h:
7442
adele@apple.com83e44822008-08-13 23:50:41 +000074432008-08-13 Eric Carlson <eric.carlson@apple.com>
7444
7445 Reviewed by Adele Peterson.
7446
7447 Fix for <rdar://problem/6137931>
7448 https://bugs.webkit.org/show_bug.cgi?id=20360
7449 Remove all parameters from the MIME type before checking with the MIME type registry
7450
7451 Tests: media/video-source-type-params.html
7452
7453 * html/HTMLMediaElement.cpp:
7454 (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';'
7455 to isSupportedMediaMIMEType()
7456
bdakin@apple.com7bc81bf2008-08-13 21:36:15 +000074572008-08-13 Beth Dakin <bdakin@apple.com>
7458
7459 Reviewed by Sam Weinig.
7460
7461 Fix for <rdar://problem/6141345>
7462
7463 This patch refines findString and markAllMatchesForText functions'
7464 interactions with disconnected frames. They no longer rely on
7465 knowing where a range is relative to the visible region and work
7466 with disconnected frames that contain frames.
7467
7468 * editing/Editor.cpp:
7469 (WebCore::Editor::insideVisibleArea): Now returns a bool instead of
7470 the visiblity enum.
7471 (WebCore::Editor::firstVisibleRange): This now returns the very
7472 first visible range in the document. It's no longer dependent on
7473 searching forward.
7474 (WebCore::Editor::lastVisibleRange): This now returns the very last
7475 visible range in the document. It's no longer dependent on
7476 searching backwards.
7477 (WebCore::Editor::nextVisibleRange): This returns the next visible
7478 range in the appropriate direction from the current range.
7479 * editing/Editor.h:
7480 * page/Frame.cpp:
7481 (WebCore::Frame::findString):
7482 (WebCore::Frame::markAllMatchesForText):
7483
kevino@webkit.orgee5adc42008-08-13 20:07:16 +000074842008-08-13 Kevin Ollivier <kevino@theolliviers.com>
7485
7486 wx build fix for case-sensitive platforms, like Linux.
7487
7488 * WebCoreSources.bkl:
7489
jmalonzo@webkit.org210145b2008-08-13 19:56:20 +000074902008-08-13 Marco Barisione <marco.barisione@collabora.co.uk>
7491
7492 Reviewed by Holger Freyther.
7493
7494 http://bugs.webkit.org/show_bug.cgi?id=16881
7495 [GTK] PlatformScreenGtk is unimplemented
7496
7497 Original patch by Christian Dywan.
7498
7499 * platform/gtk/PlatformScreenGtk.cpp:
7500 (WebCore::screenDepth):
7501 (WebCore::screenDepthPerComponent):
7502 (WebCore::screenIsMonochrome):
7503 (WebCore::screenRect):
7504 (WebCore::screenAvailableRect):
7505
jmalonzo@webkit.orge4693932008-08-13 19:42:08 +000075062008-08-13 Jan Michael Alonzo <jmalonzo@webkit.org>
7507
7508 Reviewed by Holger Freyther.
7509
7510 http://bugs.webkit.org/show_bug.cgi?id=20318
7511 SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
7512
7513 g_idle_add is the same as g_idle_add_full with a priority of
7514 G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
7515
7516 * platform/gtk/SharedTimerGtk.cpp:
7517 (WebCore::setSharedTimerFireTime):
7518
timothy@apple.comf0426602008-08-13 18:11:01 +000075192008-08-13 Timothy Hatcher <timothy@apple.com>
7520
7521 Changed the InspectorController so it can be notified when the
7522 attached state of the Inspector changes in WebKit.
7523
7524 Reviewed by Kevin McCullough.
7525
7526 * WebCore.base.exp: Updated the symbol for setWindowVisible.
7527 * page/InspectorController.cpp:
7528 (WebCore::InspectorController::setWindowVisible): Added an attached argument,
7529 that defaults to false.Call setAttachedWindow with the attached argument.
7530 (WebCore::InspectorController::setAttachedWindow): Call the script version
7531 of setAttachedWindow.
7532 * page/InspectorController.h:
7533 * page/inspector/inspector.js:
7534 (WebInspector.setAttachedWindow): Set the attached property.
7535
timothy@apple.com9ea832b2008-08-13 18:10:36 +000075362008-08-12 Timothy Hatcher <timothy@apple.com>
7537
timothy@apple.com72c92ae2008-08-13 18:10:45 +00007538 Added a close button to the Inspector's toolbar when docked.
7539
7540 https://bugs.webkit.org/show_bug.cgi?id=14270
7541
7542 Reviewed by Kevin McCullough.
7543
7544 * page/InspectorController.cpp:
7545 (WebCore::closeWindow): Call InspectorController::closeWindow.
7546 (WebCore::InspectorController::windowScriptObjectAvailable):
7547 Added closeWindow to the script class.
7548 * page/InspectorController.h:
7549 * page/inspector/Images/closeButtons.png: Added.
7550 * page/inspector/inspector.css: Added and changed styles.
7551 * page/inspector/inspector.html: Added the close button.
7552 * page/inspector/inspector.js:
7553 (WebInspector.loaded): Added click event listener to the close button.
7554 (WebInspector.close): Call InspectorController.closeWindow.
7555
75562008-08-12 Timothy Hatcher <timothy@apple.com>
7557
timothy@apple.com9ea832b2008-08-13 18:10:36 +00007558 Make the docked Web Inspector resizable. This is the cross platform
7559 portion of the code. Each InspectorClient needs to implement the
7560 real resize code.
7561
7562 https://bugs.webkit.org/show_bug.cgi?id=14282
7563
7564 Reviewed by Kevin McCullough.
7565
7566 * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
7567 * page/InspectorClient.h: Added setAttachedWindowHeight.
7568 * page/InspectorController.cpp:
7569 (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
7570 on the InspectorController.
7571 (WebCore::InspectorController::setAttachedWindowHeight): Call
7572 setAttachedWindowHeight on the client.
7573 (WebCore::InspectorController::windowScriptObjectAvailable):
7574 Added setAttachedWindowHeight to the script class.
7575 * page/InspectorController.h:
7576 * page/inspector/inspector.css: Make the cursor on the toolbar be
7577 row-resize when docked.
7578 * page/inspector/inspector.js:
7579 (WebInspector.loaded): Always add the toolbarDragStart event listener.
7580 (WebInspector.toolbarDragStart): Return early if we are not attached
7581 and not on Leopard. Call WebInspector.elementDragStart.
7582 (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
7583 (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
7584 otherwise call moveByUnrestricted.
7585
hausmann@webkit.orgd34f1d22008-08-13 13:43:34 +000075862008-08-13 Simon Hausmann <hausmann@webkit.org>
7587
7588 Reviewed by Holger.
7589
7590 Initialize m_zoomsTextOnly in the Settings constructor.
7591
7592 * page/Settings.cpp:
7593 (WebCore::Settings::Settings):
7594
hausmann@webkit.org74586d62008-08-13 13:31:11 +000075952008-08-13 Brad Hughes <bhughes@trolltech.com>
7596
7597 Reviewed by Simon.
7598
7599 Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
7600
7601 The latest upgrade of the intel compiler allows us to compile all of
7602 Qt with optimizations enabled (yay!).
7603
7604 * WebCore.pro:
7605
hausmann@webkit.org690b7fc2008-08-13 13:24:56 +000076062008-08-13 Prasanth Ullattil <prasanth.ullattil@trolltech.com>
7607
7608 Reviewed by Simon.
7609
7610 Fix QtWebKit not displaying content on 403 HTTP responses
7611
7612 Just like with 404 responses also display content with 403, as
7613 used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
7614
7615 * platform/network/qt/QNetworkReplyHandler.cpp:
7616 (WebCore::QNetworkReplyHandler::finish):
7617
hausmann@webkit.org88c4dc92008-08-13 12:02:00 +000076182008-08-13 Simon Hausmann <hausmann@webkit.org>
7619
hausmann@webkit.orgd2315e32008-08-13 13:16:15 +00007620 Reviewed by Holger.
7621
7622 Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
7623
7624 Make the formatting of String::format() locale independent through the use of QString::vsprintf.
7625
7626 * platform/text/String.cpp:
7627 (WebCore::String::format):
7628
76292008-08-13 Simon Hausmann <hausmann@webkit.org>
7630
hausmann@webkit.org88c4dc92008-08-13 12:02:00 +00007631 Reviewed by Lars.
7632
7633 Fix QWebFrame::setHtml() not setting the new contents immediately.
7634
7635 Added a setter to the DocumentLoader to toggle the deferred loading of the main
7636 resource when it comes from substitute data.
7637
7638 Disable deferred loading of the main resource when we have valid substitute data,
7639 as used by QWebFrame::setHtml.
7640
7641 * loader/DocumentLoader.h:
7642
mrowe@apple.com6aa36d12008-08-13 09:58:32 +000076432008-08-13 Mark Rowe <mrowe@apple.com>
7644
7645 Speculative GTK build fix.
7646
7647 * GNUmakefile.am: Add dependency info for JSSVGElementWrapperFactory.cpp.
7648
hausmann@webkit.org298ce5f2008-08-13 09:11:23 +000076492008-08-13 Thiago Macieira <tjmaciei@trolltech.com>
7650
7651 Reviewed by Simon.
7652
7653 Fix encoding of [ and ] in the host part of the URL
7654
7655 Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
7656 add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
7657 doesn't encode [ and ] when they are found in the host part. That is, the
7658 following URL:
7659 http://[::1]/
7660 is valid and should not be reencoded to:
7661 http://%5b::1%5d/
7662
7663 * platform/qt/KURLQt.cpp:
7664 (WebCore::KURL::operator QUrl):
7665
mitz@apple.come198b012008-08-12 21:49:07 +000076662008-08-12 Mihnea Ovidenie <mihnea@adobe.com>
7667
7668 Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
7669 Broken HTML object elements cause de-reference of pointer to freed memory.
7670 If we fail to load an image for an object tag and we no longer believe the object tag points at
7671 an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
7672 fall back content.
7673
7674 Reviewed by Dave Hyatt and Alexey Proskuryakov.
7675
7676 Test: http/tests/misc/object-image-error-with-onload.html
7677
7678 * html/HTMLObjectElement.cpp:
7679 (WebCore::HTMLObjectElement::renderFallbackContent):
7680 * page/Frame.cpp:
7681 (WebCore::Frame::Frame):
7682
zimmermann@webkit.org36a02512008-08-12 21:11:17 +000076832008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
7684
7685 Reviewed by Dave.
7686
7687 Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
7688 Masks are translated, and the mask images are swapped on the y-axis.
7689
7690 Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
7691 is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
7692
7693 Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
7694 the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
7695
7696 * svg/graphics/cg/SVGResourceMaskerCg.mm:
7697 (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
7698
mitz@apple.comf8a98692008-08-12 17:04:42 +000076992008-08-12 Dan Bernstein <mitz@apple.com>
7700
mitz@apple.com1b7e844f2008-08-12 20:54:12 +00007701 - WebCore part of <rdar://problem/6121636>
7702 Make fast*alloc() abort() on failure and add "try" variants that
7703 return NULL on failure.
7704
7705 Reviewed by Darin Adler.
7706
7707 * platform/Arena.cpp:
7708 (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
7709 result.
7710 * platform/graphics/cg/ImageBufferCG.cpp:
7711 (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
7712
77132008-08-12 Dan Bernstein <mitz@apple.com>
7714
mitz@apple.com1e09cd72008-08-12 18:27:58 +00007715 Reviewed by Darin Adler.
7716
7717 - fix https://bugs.webkit.org/show_bug.cgi?id=19348
7718 <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
7719
7720 Test: fast/frames/frameset-style-recalc.html
7721
7722 * html/HTMLFrameSetElement.cpp:
7723 (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
7724 class implementation after marking for layout.
7725
77262008-08-12 Dan Bernstein <mitz@apple.com>
7727
mitz@apple.comf8a98692008-08-12 17:04:42 +00007728 Reviewed by John Sullivan.
7729
7730 - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
7731
7732 * WebCore.base.exp:
7733 * page/FrameView.cpp:
7734 (WebCore::FrameViewPrivate::FrameViewPrivate):
7735 (WebCore::FrameView::shouldUpdateWhileHidden):
7736 (WebCore::FrameView::setShouldUpdateWhileHidden):
7737 * page/FrameView.h:
7738 * page/Settings.cpp:
7739 * page/Settings.h:
7740
aroben@apple.comeeb8ebb2008-08-12 14:58:51 +000077412008-08-12 Adam Roben <aroben@apple.com>
7742
7743 Windows build fix
7744
7745 * bindings/js/JSSVGPODTypeWrapper.h: Align
7746 JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
7747 members on 16-byte boundaries to avoid an alignment warning.
7748
zimmermann@webkit.orge1388112008-08-12 10:27:53 +000077492008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
7750
7751 Reviewed by Oliver.
7752
zimmermann@webkit.org504f2552008-08-12 10:35:09 +00007753 Add new dynamice-update layout tests covering SVGMarkerElement.
7754 Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
7755 Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
7756
7757 Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
7758 svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
7759 svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
7760 svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
7761 svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
7762 svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
7763 svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
7764 svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
7765 svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
7766 svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
7767 svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
7768 svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
7769 svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
7770 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
7771 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
7772
7773 * svg/SVGMarkerElement.cpp:
7774 (WebCore::SVGMarkerElement::SVGMarkerElement):
7775 (WebCore::SVGMarkerElement::parseMappedAttribute):
7776 (WebCore::SVGMarkerElement::svgAttributeChanged):
7777 (WebCore::SVGMarkerElement::childrenChanged):
7778 (WebCore::SVGMarkerElement::setOrientToAuto):
7779 (WebCore::SVGMarkerElement::setOrientToAngle):
7780 (WebCore::SVGMarkerElement::canvasResource):
7781
77822008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
7783
7784 Reviewed by Oliver.
7785
zimmermann@webkit.orge1388112008-08-12 10:27:53 +00007786 Add new dynamic-update layout tests covering SVGImageElement.
7787 Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
7788
7789 Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
7790 svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
7791 svg/dynamic-updates/SVGImageElement-dom-width-attr.html
7792 svg/dynamic-updates/SVGImageElement-dom-x-attr.html
7793 svg/dynamic-updates/SVGImageElement-dom-y-attr.html
7794 svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
7795 svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
7796 svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
7797 svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
7798 svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
7799
7800 * svg/SVGImageElement.cpp:
7801 (WebCore::SVGImageElement::svgAttributeChanged):
7802
timothy@apple.com93114722008-08-12 04:20:25 +000078032008-08-11 Anthony Ricaud <rik24d@gmail.com>
7804
timothy@apple.com2f2cde32008-08-12 04:28:16 +00007805 Changed Option/Alt-Up or Down in CSS editing when the value is
7806 near zero to jump to the next integer.
7807
7808 Reviewed by Tim Hatcher.
7809
7810 https://bugs.webkit.org/show_bug.cgi?id=20326
7811
7812 * page/inspector/StylesSidebarPane.js:
7813
78142008-08-11 Anthony Ricaud <rik24d@gmail.com>
7815
timothy@apple.com93114722008-08-12 04:20:25 +00007816 Changed the line highlight transition for an easier animation.
7817
7818 Reviewed by Tim Hatcher.
7819
7820 * page/inspector/SourceFrame.js:
7821
timothy@apple.com24a14852008-08-12 03:57:39 +000078222008-08-11 Keishi Hattori <casey.hattori@gmail.com>
7823
7824 Added support for some Firebug Command Line APIs.
7825
7826 Reviewed by Tim Hatcher.
7827
7828 https://bugs.webkit.org/show_bug.cgi?id=19867
7829 https://bugs.webkit.org/show_bug.cgi?id=19868
7830 https://bugs.webkit.org/show_bug.cgi?id=19869
7831 https://bugs.webkit.org/show_bug.cgi?id=19875
7832 https://bugs.webkit.org/show_bug.cgi?id=19876
7833 https://bugs.webkit.org/show_bug.cgi?id=19880
7834
7835 * page/inspector/Console.js:
7836 (WebInspector.Console.prototype._evalInInspectedWindow):
7837 Create an object on the inspected window that holds the console
7838 command line API functions. This object is used in a with statement
7839 around the typed expression.
7840
zimmermann@webkit.org0350b6d2008-08-12 02:22:26 +000078412008-08-11 Nikolas Zimmermann <zimmermann@kde.org>
7842
7843 Reviewed by Antti.
7844
7845 Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
7846
7847 JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
7848 failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
7849
7850 Added tests: svg/custom/svg-modify-currentTranslate.html
7851 svg/custom/tearoffs-with-tearoffs.html
7852 svg/custom/immutable-properties.html
7853
7854 Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
7855
7856 * bindings/js/JSSVGPODTypeWrapper.h:
7857 (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
7858 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
7859 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
7860 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
7861 (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
7862 (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
7863 (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
7864 (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
7865 * bindings/scripts/CodeGenerator.pm:
7866 * bindings/scripts/CodeGeneratorJS.pm:
7867 * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
7868 * svg/SVGZoomEvent.idl: SVG specification explicitely demands these attributes to be readonly, even its content.
7869
beidson@apple.com0e772f72008-08-12 00:34:46 +000078702008-08-11 Brady Eidson <beidson@apple.com>
7871
7872 Reviewed by John and Anders
7873
7874 Fix for <rdar://problem/6141797>
7875
7876 When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
7877 would never have nil data.
7878
7879 When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
7880 semantics with some WebKit applications.
7881
7882 The guarantee was a good one and should be restored.
7883
7884 Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
7885 creates an empty data object in the case of null data for its own purposes.
7886
7887 * loader/SubstituteResource.h:
7888 (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null. This
7889 well help any future subclassers not make this mistake.
7890
7891 * loader/archive/ArchiveResource.cpp:
7892 (WebCore::ArchiveResource::create): Return 0 if the data is null.
7893
simon.fraser@apple.come0d44792008-08-11 22:44:06 +000078942008-08-11 Simon Fraser <simon.fraser@apple.com>
7895
7896 Reviewed by Dave Hyatt
7897
7898 https://bugs.webkit.org/show_bug.cgi?id=20328
7899 Fix a problem when an 'all' transition transition with more than
7900 one property changing is interrupted, and did some AnimationController
7901 cleanup.
7902
7903 Test: transitions/interrupted-all-transition.html
7904
7905 * page/AnimationController.cpp:
7906 (WebCore::ImplicitAnimation::ImplicitAnimation):
7907 (WebCore::AnimationControllerPrivate::blendProperties):
7908 (WebCore::CompositeAnimation::updateTransitions):
7909 (WebCore::CompositeAnimation::cleanupFinishedAnimations):
7910 (WebCore::CompositeAnimation::setTransitionStartTime):
7911 (WebCore::CompositeAnimation::overrideImplicitAnimations):
7912 (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
7913 (WebCore::ImplicitAnimation::animate):
7914 (WebCore::ImplicitAnimation::onAnimationEnd):
7915 (WebCore::ImplicitAnimation::sendTransitionEvent):
7916 (WebCore::ImplicitAnimation::affectsProperty):
7917 (WebCore::KeyframeAnimation::endAnimation):
7918 (WebCore::KeyframeAnimation::onAnimationEnd):
7919
kmccullough@apple.com4a967c12008-08-11 20:45:19 +000079202008-08-11 Kevin McCullough <kmccullough@apple.com>
7921
7922 Reviewed by Tim.
7923
7924 - Because console messages have group levels now, newly created messages
7925 that do not specify the level lose their message since the number of
7926 arguments is wrong.
7927
7928 * page/inspector/Console.js:
7929 * page/inspector/Resource.js:
7930
alp@webkit.orgeeb55142008-08-11 19:52:14 +000079312008-08-11 Alp Toker <alp@nuanti.com>
7932
7933 Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
7934 the opportunity to sort the sources lists.
7935
7936 * GNUmakefile.am:
7937
timothy@apple.com9fe09f82008-08-11 18:48:37 +000079382008-08-11 Timothy Hatcher <timothy@apple.com>
7939
7940 Speed up the the JavaScript syntax highlighter by generating
7941 the finders only once per script instead of per line.
7942
7943 https://bugs.webkit.org/show_bug.cgi?id=20346
7944
7945 Reviewed by Adam Roben.
7946
7947 * page/inspector/SourceFrame.js:
7948 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
7949 Removed, factored into syntaxHighlightJavascript as an inline function.
7950 (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
7951 Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
7952 Generate the finders before iterating the lines.
7953
aroben@apple.com957d2d32008-08-11 18:31:37 +000079542008-08-11 Adam Roben <aroben@apple.com>
7955
7956 Windows build fix
7957
7958 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
7959 JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
7960 too.
7961
mitz@apple.com3f0060f2008-08-11 18:04:46 +000079622008-08-11 Dan Bernstein <mitz@apple.com>
7963
7964 Reviewed by Darin Adler.
7965
7966 - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
7967
7968 Test: fast/css/counters/invalidate-cached-counter-node.html
7969
7970 * rendering/RenderContainer.cpp:
7971 (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
7972 RenderCounters in :before and :after content.
7973 * rendering/RenderContainer.h:
7974 * rendering/RenderCounter.cpp:
7975 (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
7976 to match the RenderObject method.
7977 (WebCore::RenderCounter::invalidate): Added. Resets the cached
7978 CounterNode and invalidates the object's layout and preferred widths.
7979 (WebCore::destroyCounterNodeChildren): Added a call to
7980 invalidateCounters().
7981 * rendering/RenderCounter.h:
7982 * rendering/RenderObject.h:
7983 (WebCore::RenderObject::invalidateCounters):
7984
dino@apple.com2af8c3a2008-08-11 17:24:36 +000079852008-08-11 Dean Jackson <dino@apple.com>
7986
7987 Implement CSS Animation and Transition Events
7988 https://bugs.webkit.org/show_bug.cgi?id=20337
7989
7990 Implement the events defined in the CSS Animations
7991 and Transitions specifications so code can react
7992 to animations and transitions.
7993
7994 Reviewed by Tim Hatcher and Dave Hyatt.
7995
7996 * DerivedSources.make:
7997 * GNUmakefile.am:
7998 * WebCore.pro:
7999 * WebCore.vcproj/WebCore.vcproj:
8000 * WebCore.xcodeproj/project.pbxproj:
8001 * WebCoreSources.bkl:
8002 Build configs for new files
8003
8004 * bindings/js/JSDOMWindowBase.cpp:
8005 * bindings/js/JSDOMWindowBase.h:
8006 * bindings/js/JSEventCustom.cpp:
8007 * dom/Document.h:
8008 * dom/Event.cpp:
8009 * dom/Event.h:
8010 * dom/EventTarget.cpp:
8011 * dom/EventTargetNode.cpp:
8012 * dom/EventTargetNode.h:
8013 * html/HTMLElement.cpp:
8014 * page/AnimationController.cpp:
8015 do all the new event stuff
8016
8017 * html/HTMLAttributeNames.in:
8018 the onwebkitanimation* and onwebkittransitionend attrs
8019
8020 * dom/WebKitAnimationEvent.cpp: Added.
8021 * dom/WebKitAnimationEvent.h: Added.
8022 * dom/WebKitAnimationEvent.idl: Added.
8023 * dom/WebKitTransitionEvent.cpp: Added.
8024 * dom/WebKitTransitionEvent.h: Added.
8025 * dom/WebKitTransitionEvent.idl: Added.
8026 New files for the events
8027
8028 * manual-tests/transition-events.html: Added.
8029 New testfile
8030
aroben@apple.com3eae8622008-08-11 17:21:23 +000080312008-08-11 Adam Roben <aroben@apple.com>
8032
8033 Add a ForwardingHeader for wtf/NotFound.h
8034
8035 Rubberstamped by Darin Adler.
8036
8037 * ForwardingHeaders/wtf/NotFound.h: Added.
8038
timothy@apple.com2f5bdf02008-08-11 16:53:30 +000080392008-08-11 Timothy Hatcher <timothy@apple.com>
8040
8041 Fixes a bug where error bubbles in JavaScript resources would
8042 be clobbered by the syntax highlighter.
8043
8044 https://bugs.webkit.org/show_bug.cgi?id=20345
8045
8046 Reviewed by Adam Roben.
8047
8048 * manual-tests/inspector/resources/script-error.js: Added.
8049 * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
8050 * page/inspector/SourceFrame.js:
8051 (WebInspector.SourceFrame.prototype._addMessageToSource):
8052 Check the nodeType and not the nodeName, this is less fragile.
8053 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
8054 Check if the lastChild is an error bubble, if so remove it before
8055 getting the line's textContent. Add the error bubble back at the end.
8056
mrowe@apple.com4ec50d02008-08-11 05:07:42 +00008057== Rolled over to ChangeLog-2008-08-10 ==