1 2009-07-21 Jian Li <jianli@chromium.org>
3 Reviewed by David Levin.
5 Add onerror to WorkerContext.
6 https://bugs.webkit.org/show_bug.cgi?id=27516
8 * bindings/js/JSWorkerContextCustom.cpp:
9 (WebCore::JSWorkerContext::mark):
10 * workers/WorkerContext.h:
11 (WebCore::WorkerContext::setOnerror):
12 (WebCore::WorkerContext::onerror):
13 * workers/WorkerContext.idl:
15 2009-07-21 Yong Li <yong.li@torchmobile.com>
17 Reviewed by George Staikos.
19 https://bugs.webkit.org/show_bug.cgi?id=27509
20 Add font-related files for the WinCE port.
22 Written by Yong Li <yong.li@torchmobile.com>
24 * platform/graphics/wince/FontCacheWince.cpp: Added.
25 * platform/graphics/wince/FontCustomPlatformData.cpp: Added.
26 * platform/graphics/wince/FontCustomPlatformData.h: Added.
27 * platform/graphics/wince/FontPlatformData.cpp: Added.
28 * platform/graphics/wince/FontPlatformData.h: Added.
29 * platform/graphics/wince/FontWince.cpp: Added.
30 * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Added.
31 * platform/graphics/wince/SimpleFontDataWince.cpp: Added.
33 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
35 Fix the Windows build, and update the comment on top now that wx uses WebCorePrefix.h too.
39 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
41 WebCorePrefix.h build fixes for non-Mac and wx / CURL builds.
45 2009-07-21 Eric Seidel <eric@webkit.org>
47 Reviewed by Adam Barth.
49 All DOMConstructorObjects should hold a pointer to the JSDOMGlobalObject
50 https://bugs.webkit.org/show_bug.cgi?id=27478
52 This is just moving code.
53 I've added two new classes: DOMObjectWithGlobalPointer and DOMConstructorWithDocument.
55 DOMObjectWithGlobalPointer is a new baseclass for DOMConstructorObject.
56 (It's a baseclass because eventually all DOMObjects will have a global pointer, but
57 I'll be moving them onto DOMObjectWithGlobalPointer in stages.)
59 DOMConstructorWithDocument is a new baseclass for the 3 constructor objects
60 which require a backpointer to the Document to function. I made this a subclass of
61 DOMConstructorObject to make clear that most constructors can hold no-such assumptions
62 about having a back-pointer to the Document (since many constructors can be used from Workers).
64 * bindings/js/JSAudioConstructor.cpp:
65 (WebCore::JSAudioConstructor::JSAudioConstructor):
66 * bindings/js/JSAudioConstructor.h:
67 * bindings/js/JSDOMBinding.h:
68 (WebCore::DOMObjectWithGlobalPointer::globalObject):
69 (WebCore::DOMObjectWithGlobalPointer::scriptExecutionContext):
70 (WebCore::DOMObjectWithGlobalPointer::DOMObjectWithGlobalPointer):
71 (WebCore::DOMObjectWithGlobalPointer::mark):
72 (WebCore::DOMConstructorObject::DOMConstructorObject):
73 (WebCore::DOMConstructorWithDocument::document):
74 (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
75 * bindings/js/JSImageConstructor.cpp:
76 (WebCore::JSImageConstructor::JSImageConstructor):
77 * bindings/js/JSImageConstructor.h:
78 * bindings/js/JSMessageChannelConstructor.cpp:
79 (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
80 * bindings/js/JSMessageChannelConstructor.h:
81 * bindings/js/JSOptionConstructor.cpp:
82 (WebCore::JSOptionConstructor::JSOptionConstructor):
83 * bindings/js/JSOptionConstructor.h:
84 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
85 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
86 * bindings/js/JSWebKitPointConstructor.cpp:
87 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
88 * bindings/js/JSWorkerConstructor.cpp:
89 (WebCore::JSWorkerConstructor::JSWorkerConstructor):
90 * bindings/js/JSXMLHttpRequestConstructor.cpp:
91 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
92 * bindings/js/JSXMLHttpRequestConstructor.h:
93 * bindings/js/JSXSLTProcessorConstructor.cpp:
94 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
96 2009-07-21 James Hawkins <jhawkins@google.com>
98 Reviewed by David Hyatt.
100 https://bugs.webkit.org/show_bug.cgi?id=27453
101 Initialize isInt when creating a CSSParserValue for a function.
103 No change in behavior, so no tests.
105 * css/CSSFunctionValue.cpp:
106 (WebCore::CSSFunctionValue::parserValue):
108 2009-07-20 Jens Alfke <snej@google.com>
110 Reviewed by David Levin.
112 Bug 27448: [Chromium] On Mac, arrow keys should cause Select to pop up its menu.
113 Mac build of Chromium doesn't follow Mac HI guidelines to pop up the menu when
114 an arrow key is pressed.
115 https://bugs.webkit.org/show_bug.cgi?id=27448
117 No new tests; affects only control response to user input.
119 * dom/SelectElement.cpp:
120 Changed definition of ARROW_KEYS_POP_MENU to make it true in Mac Chromium,
121 so it will behave compatibly with Mac HI guidelines on pop-up menus.
122 It's not possible to have PLATFORM(MAC) be true in the Mac build of Chromium.
124 2009-07-21 Paul Godavari <paul@chromium.org>
126 Reviewed by Eric Seidel.
128 [Chromium] popup menus can crash when the selected index is -1
129 https://bugs.webkit.org/show_bug.cgi?id=27275
131 Crash reports from users indicate a crash can occur when PopupListBox::isSelectableItem
132 is passed an index of less than 0 (which is possible under certain circumstances). This
133 change prevents such a value from causing a crash by enforcing valid index values passed
134 by all callers of isSelectableItem. isSelectableItem is now a private method of
135 PopupListBox, as there are no external callers.
137 Also cleaned up a small amount of code for style and grammar errors.
139 No automatic test is provided since we cannot send events to the child window used by
142 * platform/chromium/PopupMenuChromium.cpp:
143 (WebCore::PopupListBox::acceptIndex):
144 (WebCore::PopupListBox::selectIndex):
145 (WebCore::PopupListBox::isSelectableItem):
146 (WebCore::PopupListBox::selectPreviousRow):
148 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
150 wx build fix. Don't include winsock2.h on wx, it conflicts with wx's inclusion of winsock.
152 * platform/network/curl/ResourceHandleManager.h:
154 2009-07-21 Adam Roben <aroben@apple.com>
156 Roll out r46153, r46154, and r46155
158 These changes were causing build failures and assertion failures on
161 * ForwardingHeaders/wtf/PossiblyNull.h: Removed.
162 * platform/graphics/cg/ImageBufferCG.cpp:
164 2009-07-21 Jian Li <jianli@chromium.org>
166 Reviewed by Eric Seidel.
168 Implement ErrorEvent API.
169 https://bugs.webkit.org/show_bug.cgi?id=27387
171 * DerivedSources.cpp:
172 * DerivedSources.make:
176 * WebCore.vcproj/WebCore.vcproj:
177 * WebCore.xcodeproj/project.pbxproj:
178 * WebCoreSources.bkl:
179 * bindings/js/JSEventCustom.cpp:
181 * dom/ErrorEvent.cpp: Added.
182 * dom/ErrorEvent.h: Added.
183 * dom/ErrorEvent.idl: Added.
185 (WebCore::Event::isErrorEvent):
188 2009-07-21 Priit Laes <plaes@plaes.org>
190 Reviewed by Gustavo Noronha.
192 [Gtk] Searching in thepiratebay.org doesn't work with more than 1 word
193 https://bugs.webkit.org/show_bug.cgi?id=24602
195 Remove workaround required for <=libsoup-2.26.1
197 * platform/network/soup/ResourceHandleSoup.cpp:
198 (WebCore::restartedCallback):
200 2009-07-21 Adam Barth <abarth@webkit.org>
202 Reviewed by David Levin.
204 V8IsolatedWorld keeps a handle to a disposed context
205 https://bugs.webkit.org/show_bug.cgi?id=27397
207 Make a copy of the context handle before making it weak. We don't want
208 to make the original handle weak because we want it to survive for the
209 length of the V8IsolatedWorld::evaluate method.
211 * bindings/v8/V8IsolatedWorld.cpp:
212 (WebCore::V8IsolatedWorld::V8IsolatedWorld):
214 2009-07-21 Pavel Feldman <pfeldman@chromium.org>
216 Reviewed by Timothy Hatcher.
218 Web Inspector: Add ability to evaluate selection while on break point.
220 https://bugs.webkit.org/show_bug.cgi?id=27502
222 * inspector/front-end/SourceFrame.js:
223 (WebInspector.SourceFrame.prototype._loaded):
224 (WebInspector.SourceFrame.prototype._documentKeyDown):
226 2009-07-21 Pavel Feldman <pfeldman@chromium.org>
228 Reviewed by Timothy Hatcher.
230 WebInspector: Special case ConsolePanel opening since
233 https://bugs.webkit.org/show_bug.cgi?id=27493
235 * inspector/InspectorController.cpp:
236 (WebCore::InspectorController::setWindowVisible):
238 2009-07-20 Kenneth Rohde Christiansen <kenneth@webkit.org>
240 Reviewed by Eric Seidel.
242 Fix Qt code to follow the WebKit Coding Style.
244 * platform/graphics/qt/FontQt.cpp:
246 (WebCore::fixSpacing):
247 * platform/graphics/qt/FontQt43.cpp:
248 (WebCore::generateComponents):
249 (WebCore::Font::offsetForPositionForComplexText):
250 (WebCore::cursorToX):
251 * platform/graphics/qt/GradientQt.cpp:
252 (WebCore::Gradient::platformGradient):
253 * platform/graphics/qt/GraphicsContextQt.cpp:
254 (WebCore::toQtFillRule):
255 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
256 (WebCore::GraphicsContext::~GraphicsContext):
257 (WebCore::GraphicsContext::getCTM):
258 (WebCore::GraphicsContext::concatCTM):
259 (WebCore::GraphicsContext::getWindowsContext):
260 * platform/graphics/qt/IconQt.cpp:
261 (WebCore::Icon::paint):
262 * platform/graphics/qt/ImageDecoderQt.cpp:
263 (WebCore::ImageDecoderQt::ReadContext::read):
264 (WebCore::ImageDecoderQt::ReadContext::readImageLines):
265 (WebCore::ImageDecoderQt::setData):
266 * platform/graphics/qt/ImageQt.cpp:
267 (WebCore::Image::drawPattern):
268 (WebCore::BitmapImage::draw):
269 * platform/graphics/qt/ImageSourceQt.cpp:
270 (WebCore::ImageSource::frameDurationAtIndex):
271 (WebCore::ImageSource::frameHasAlphaAtIndex):
272 (WebCore::ImageSource::frameIsCompleteAtIndex):
273 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
274 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
275 (WebCore::MediaPlayerPrivate::create):
276 (WebCore::MediaPlayerPrivate::bytesLoaded):
277 (WebCore::MediaPlayerPrivate::updateStates):
278 * platform/graphics/qt/PathQt.cpp:
279 (WebCore::Path::addArcTo):
280 (WebCore::Path::isEmpty):
281 * platform/graphics/qt/TransformationMatrixQt.cpp:
282 (WebCore::TransformationMatrix::operator QTransform):
283 * platform/qt/ClipboardQt.cpp:
284 (WebCore::ClipboardQt::ClipboardQt):
285 (WebCore::ClipboardQt::clearData):
286 (WebCore::ClipboardQt::clearAllData):
287 (WebCore::ClipboardQt::getData):
288 (WebCore::ClipboardQt::setData):
289 (WebCore::ClipboardQt::setDragImage):
290 (WebCore::getCachedImage):
291 (WebCore::ClipboardQt::declareAndWriteDragImage):
292 (WebCore::ClipboardQt::writeURL):
293 (WebCore::ClipboardQt::writeRange):
294 (WebCore::ClipboardQt::hasData):
295 * platform/qt/ClipboardQt.h:
296 * platform/qt/ContextMenuItemQt.cpp:
297 (WebCore::ContextMenuItem::action):
298 (WebCore::ContextMenuItem::title):
299 * platform/qt/CursorQt.cpp:
300 (WebCore::westPanningCursor):
301 (WebCore::notAllowedCursor):
302 * platform/qt/DragDataQt.cpp:
303 (WebCore::DragData::containsFiles):
304 (WebCore::DragData::asFilenames):
305 (WebCore::DragData::asPlainText):
306 (WebCore::DragData::asFragment):
307 * platform/qt/DragImageQt.cpp:
308 (WebCore::createDragImageIconForCachedImage):
309 * platform/qt/FileSystemQt.cpp:
310 (WebCore::getFileSize):
311 (WebCore::unloadModule):
312 * platform/qt/Localizations.cpp:
313 (WebCore::contextMenuItemTagShowSpellingPanel):
314 * platform/qt/MIMETypeRegistryQt.cpp:
316 * platform/qt/PasteboardQt.cpp:
317 (WebCore::Pasteboard::Pasteboard):
318 (WebCore::Pasteboard::writeSelection):
319 (WebCore::Pasteboard::plainText):
320 * platform/qt/PlatformKeyboardEventQt.cpp:
321 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
322 * platform/qt/PlatformMouseEventQt.cpp:
323 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
324 * platform/qt/PopupMenuQt.cpp:
325 (WebCore::PopupMenu::populate):
326 * platform/qt/RenderThemeQt.cpp:
327 (WebCore::RenderThemeQt::fallbackStyle):
328 (WebCore::inflateButtonRect):
329 (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
330 (WebCore::RenderThemeQt::paintButton):
331 (WebCore::RenderThemeQt::paintMenuList):
332 (WebCore::RenderThemeQt::applyTheme):
333 (WebCore::WorldMatrixTransformer::WorldMatrixTransformer):
334 (WebCore::RenderThemeQt::paintMediaBackground):
335 (WebCore::RenderThemeQt::paintMediaFullscreenButton):
336 * platform/qt/RenderThemeQt.h:
337 * platform/qt/ScreenQt.cpp:
338 (WebCore::screenRect):
339 (WebCore::usableScreenRect):
340 * platform/qt/ScrollbarQt.cpp:
341 (WebCore::Scrollbar::contextMenu):
342 * platform/qt/ScrollbarThemeQt.cpp:
344 (WebCore::scrollbarPart):
345 * platform/qt/ScrollbarThemeQt.h:
346 * platform/qt/SharedBufferQt.cpp:
347 (WebCore::SharedBuffer::createWithContentsOfFile):
348 * platform/qt/TemporaryLinkStubs.cpp:
349 (PluginDatabase::defaultPluginDirectories):
350 (PluginDatabase::getPluginPathsInDirectories):
351 (PluginDatabase::isPreferredPluginDirectory):
352 (WebCore::getSupportedKeySizes):
353 (WebCore::signedPublicKeyAndChallengeString):
354 (WebCore::userIdleTime):
355 (WebCore::prefetchDNS):
356 * platform/text/qt/StringQt.cpp:
357 (WebCore::String::String):
358 * platform/text/qt/TextBoundaries.cpp:
359 * platform/text/qt/TextBreakIteratorQt.cpp:
360 (WebCore::TextBreakIterator::following):
361 (WebCore::TextBreakIterator::preceding):
362 (WebCore::WordBreakIteratorQt::first):
363 (WebCore::WordBreakIteratorQt::next):
364 (WebCore::WordBreakIteratorQt::previous):
365 (WebCore::CharBreakIteratorQt::first):
366 (WebCore::CharBreakIteratorQt::next):
367 (WebCore::CharBreakIteratorQt::previous):
368 (WebCore::characterBreakIterator):
369 * plugins/qt/PluginPackageQt.cpp:
370 (WebCore::PluginPackage::fetchInfo):
371 * plugins/qt/PluginViewQt.cpp:
372 (WebCore::PluginView::userAgentStatic):
373 (WebCore::PluginView::handlePostReadFile):
374 (WebCore::PluginView::init):
376 2009-07-21 Maxime Simon <simon.maxime@gmail.com>
378 Reviewed by David Levin.
380 Added a first bunch of Haiku-specific files for WebCore.
381 https://bugs.webkit.org/show_bug.cgi?id=26988
383 * platform/haiku/ClipboardHaiku.cpp: Added.
384 (WebCore::ClipboardHaiku::ClipboardHaiku):
385 (WebCore::ClipboardHaiku::clearData):
386 (WebCore::ClipboardHaiku::clearAllData):
387 (WebCore::ClipboardHaiku::getData):
388 (WebCore::ClipboardHaiku::setData):
389 (WebCore::ClipboardHaiku::types):
390 (WebCore::ClipboardHaiku::files):
391 (WebCore::ClipboardHaiku::dragLocation):
392 (WebCore::ClipboardHaiku::dragImage):
393 (WebCore::ClipboardHaiku::setDragImage):
394 (WebCore::ClipboardHaiku::dragImageElement):
395 (WebCore::ClipboardHaiku::setDragImageElement):
396 (WebCore::ClipboardHaiku::createDragImage):
397 (WebCore::ClipboardHaiku::declareAndWriteDragImage):
398 (WebCore::ClipboardHaiku::writeURL):
399 (WebCore::ClipboardHaiku::writeRange):
400 (WebCore::ClipboardHaiku::hasData):
401 * platform/haiku/ClipboardHaiku.h: Added.
402 (WebCore::ClipboardHaiku::create):
403 (WebCore::ClipboardHaiku::~ClipboardHaiku):
404 * platform/haiku/CookieJarHaiku.cpp: Added.
405 (WebCore::setCookies):
407 (WebCore::cookiesEnabled):
408 * platform/haiku/CursorHaiku.cpp: Added.
409 (WebCore::Cursor::Cursor):
410 (WebCore::Cursor::~Cursor):
411 (WebCore::Cursor::operator=):
412 (WebCore::pointerCursor):
413 (WebCore::moveCursor):
414 (WebCore::crossCursor):
415 (WebCore::handCursor):
416 (WebCore::iBeamCursor):
417 (WebCore::waitCursor):
418 (WebCore::helpCursor):
419 (WebCore::eastResizeCursor):
420 (WebCore::northResizeCursor):
421 (WebCore::northEastResizeCursor):
422 (WebCore::northWestResizeCursor):
423 (WebCore::southResizeCursor):
424 (WebCore::southEastResizeCursor):
425 (WebCore::southWestResizeCursor):
426 (WebCore::westResizeCursor):
427 (WebCore::northSouthResizeCursor):
428 (WebCore::eastWestResizeCursor):
429 (WebCore::northEastSouthWestResizeCursor):
430 (WebCore::northWestSouthEastResizeCursor):
431 (WebCore::columnResizeCursor):
432 (WebCore::rowResizeCursor):
433 (WebCore::verticalTextCursor):
434 (WebCore::cellCursor):
435 (WebCore::contextMenuCursor):
436 (WebCore::noDropCursor):
437 (WebCore::copyCursor):
438 (WebCore::progressCursor):
439 (WebCore::aliasCursor):
440 (WebCore::noneCursor):
441 (WebCore::notAllowedCursor):
442 (WebCore::zoomInCursor):
443 (WebCore::zoomOutCursor):
444 (WebCore::grabCursor):
445 (WebCore::grabbingCursor):
447 2009-07-21 Albert Astals Cid <aacid@kde.org>
449 Reviewed by Tor Arne Vestbø.
451 Change #error line not to have a ' (single quote)
453 * DerivedSources.cpp:
455 2009-07-21 Roland Steiner <rolandsteiner@google.com>
457 Reviewed by David Levin.
459 Add ENABLE_RUBY to list of build options
460 https://bugs.webkit.org/show_bug.cgi?id=27324
462 Added flag ENABLE_RUBY:
464 * Configurations/FeatureDefines.xcconfig:
465 * DerivedSources.make:
468 * WebCore.vcproj/WebCoreCommon.vsprops:
469 * WebCore.vcproj/build-generated-files.sh:
471 2009-07-21 James Hawkins <jhawkins@google.com>
473 Reviewed by Eric Seidel.
475 https://bugs.webkit.org/show_bug.cgi?id=27467
476 Return an empty path in PlatformContextSkia::currentPathInLocalCoordinates
477 if matrix.invert() fails. This prevents the use of an uninitialized
478 value in inverseMatrix.
480 No new tests added. Run
481 LayoutTests/svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
482 under valgrind and notice there are no errors.
484 * platform/graphics/skia/PlatformContextSkia.cpp:
485 (PlatformContextSkia::currentPathInLocalCoordinates):
487 2009-07-21 Stephen White <senorblanco@chromium.org>
489 Reviewed by Eric Seidel.
491 https://bugs.webkit.org/show_bug.cgi?id=27388
493 Fix dotted and dashed borders on Chromium/skia. This follows
494 the logic in the Cg path, so results are much closer to Safari now
495 (some tests won't be exactly the same due to font layout differences).
497 * platform/graphics/skia/GraphicsContextSkia.cpp:
498 (WebCore::GraphicsContext::drawLine):
499 * platform/graphics/skia/PlatformContextSkia.cpp:
500 (PlatformContextSkia::setupPaintForStroking):
502 2009-07-20 Oliver Hunt <oliver@apple.com>
504 Reviewed by Gavin Barraclough.
506 Make it harder to misuse try* allocation routines
507 https://bugs.webkit.org/show_bug.cgi?id=27469
509 Add forwarding header for PossiblyNull type, and add missing null check
510 to ImageBuffer creation.
512 * ForwardingHeaders/wtf/PossiblyNull.h: Added.
513 * platform/graphics/cg/ImageBufferCG.cpp:
514 (WebCore::ImageBuffer::ImageBuffer):
516 2009-07-20 Adam Langley <agl@google.com>
518 Reviewed by Eric Seidel.
520 Guard access to installedMediaEngines()[0].
522 https://bugs.webkit.org/show_bug.cgi?id=27479
523 http://code.google.com/p/chromium/issues/detail?id=16541
525 Else where in the file, installedMediaEngines is always checked for
526 being empty because access. This patch adds a case which missed that
529 This triggered a crash in Chromium:
530 http://www.yakeze.com/chat/example-chromium-crash/
532 * platform/graphics/MediaPlayer.cpp:
533 (WebCore::MediaPlayer::load):
535 2009-07-20 Adam Langley <agl@google.com>
537 Reviewed by Eric Seidel.
539 Allow search entries to render with a CSS border if the RenderTheme
542 https://bugs.webkit.org/show_bug.cgi?id=27466
543 http://code.google.com/p/chromium/issues/detail?id=16958
545 <input type="search"> is very much like a text entry except that,
546 currently, if the RenderTheme doesn't deal with it, nothing is
547 rendered. With this patch, the default CSS border is rendered if the
548 RenderTheme requests it.
550 This will affect many layout tests, but only for Chromium Linux and
551 those results are not currently in the WebKit tree.
553 * rendering/RenderTheme.cpp:
554 (WebCore::RenderTheme::paintBorderOnly):
556 2009-07-17 Anton Muhin <antonm@chromium.org>
558 Reviewed by Adam Barth.
560 Switch to faster methods to access internal fields.
561 https://bugs.webkit.org/show_bug.cgi?id=27372
565 * bindings/scripts/CodeGeneratorV8.pm:
566 * bindings/v8/V8DOMWrapper.cpp:
567 (WebCore::V8DOMWrapper::convertToSVGPODTypeImpl):
568 (WebCore::V8DOMWrapper::setDOMWrapper):
569 * bindings/v8/V8DOMWrapper.h:
570 (WebCore::V8DOMWrapper::convertDOMWrapperToNative):
571 (WebCore::V8DOMWrapper::convertDOMWrapperToNode):
572 (WebCore::V8DOMWrapper::convertToNativeObject):
573 (WebCore::V8DOMWrapper::convertToNativeEvent):
574 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
575 (WebCore::CALLBACK_FUNC_DECL):
576 * bindings/v8/custom/V8ClipboardCustom.cpp:
577 (WebCore::CALLBACK_FUNC_DECL):
578 * bindings/v8/custom/V8DocumentCustom.cpp:
579 (WebCore::CALLBACK_FUNC_DECL):
580 * bindings/v8/custom/V8ElementCustom.cpp:
581 (WebCore::CALLBACK_FUNC_DECL):
582 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
583 (WebCore::CALLBACK_FUNC_DECL):
584 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
585 (WebCore::CALLBACK_FUNC_DECL):
586 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
587 (WebCore::removeElement):
588 * bindings/v8/custom/V8InspectorControllerCustom.cpp:
589 (WebCore::CALLBACK_FUNC_DECL):
590 * bindings/v8/custom/V8NodeCustom.cpp:
591 (WebCore::CALLBACK_FUNC_DECL):
592 * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
593 (WebCore::CALLBACK_FUNC_DECL):
595 2009-07-20 Adam Langley <agl@google.com>
597 Reviewed by Eric Seidel.
599 Chromium Linux: cache Harfbuzz faces.
601 https://bugs.webkit.org/show_bug.cgi?id=27473
603 Previously, we recreated the Harfbuzz face for each script-run. With
604 this patch, we keep the Harfbuzz face in the FontPlatformData (created
605 as needed) and so they will persist for the duration of the
608 Shouldn't affect any layout tests. Results in a significant win on the
609 intl2 page cycler time.
611 * platform/graphics/chromium/FontLinux.cpp:
612 (WebCore::TextRunWalker::~TextRunWalker):
613 (WebCore::TextRunWalker::setupFontForScriptRun):
614 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
615 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::~RefCountedHarfbuzzFace):
616 (WebCore::FontPlatformData::FontPlatformData):
617 (WebCore::FontPlatformData::harfbuzzFace):
618 * platform/graphics/chromium/FontPlatformDataLinux.h:
619 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::create):
620 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::face):
621 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::RefCountedHarfbuzzFace):
622 * platform/graphics/chromium/HarfbuzzSkia.h: Added.
624 2009-07-20 Ryosuke Niwa <rniwa@webkit.org>
626 Reviewed by Simon Fraser.
628 REGRESSION (r46142): Need to remove showTreeThisForThis
629 https://bugs.webkit.org/show_bug.cgi?id=27475
631 Removes showTreeThisForThis
633 * editing/IndentOutdentCommand.cpp:
634 (WebCore::IndentOutdentCommand::appendParagraphIntoNode):
636 2009-07-19 Ryosuke Niwa <rniwa@webkit.org>
638 Reviewed by Eric Seidel.
640 Refactoring of indentRegion to fix bugs 26816 and 25317
641 https://bugs.webkit.org/show_bug.cgi?id=26816
642 https://bugs.webkit.org/show_bug.cgi?id=25317
643 https://bugs.webkit.org/show_bug.cgi?id=23995 (partially)
645 This patch implements appendParagraphIntoNode, a simpler specialized version of moveParagraph
646 and replaces all calls inside indentRegion. The following is the new behavior of indentRegion.
648 1. We try to indent as many wrapping nodes as possible.
649 e.g. when indenting "hello" in <div>hello</div>, we try to indent div as well.
650 2. We do not delete any wrapping elements
651 With moveParagraph, we used to remove all wrapping nodes, and replaced with a blockquote.
652 This was causing https://bugs.webkit.org/show_bug.cgi?id=23995 for indentation.
653 With appendParagraphIntoNode, we can preserve all wrapping nodes.
654 3. We only split the tree until the closest block node instead of until the root editable node.
655 This behavioral change fixes the bug 25317.
656 4. When multiple paragraphs are indented, we indent the highest common ancestor within the selection.
657 e.g. when a list is a child node of a div, and the entire div is intended,
658 we enclose the div by a single blockquote.
660 Note that new behavior is more consistent with that of Internet Explorer and Firefox.
661 To demonstrate this, the following tests are added.
663 Tests: editing/execCommand/indent-div-inside-list.html
664 editing/execCommand/indent-nested-blockquotes.html
665 editing/execCommand/indent-nested-div.html
666 editing/execCommand/indent-second-paragraph-in-blockquote.html
668 * editing/IndentOutdentCommand.cpp: prepareBlockquoteLevelForInsertion is removed
669 (WebCore::IndentOutdentCommand::tryIndentingAsListItem): uses appendParagraphIntoNode now
670 (WebCore::IndentOutdentCommand::indentIntoBlockquote): uses appendParagraphIntoNode now
671 (WebCore::IndentOutdentCommand::appendParagraphIntoNode): removes a paragraph and appends it to a new node
672 (WebCore::IndentOutdentCommand::removeUnnecessaryLineBreakAt): removes a break element at the specified position
673 (WebCore::IndentOutdentCommand::indentRegion): exhibits the described behavior
674 * editing/IndentOutdentCommand.h: updated prototype
676 2009-07-20 Dan Bernstein <mitz@apple.com>
678 Try to fix release builds after r46136
682 2009-07-17 Pierre d'Herbemont <pdherbemont@apple.com>
684 Reviewed by Eric Seidel.
686 Media Controls: We are specifying the text height, where it is unneeded and the slider is 2px off.
687 https://bugs.webkit.org/show_bug.cgi?id=27380
689 Adjust the margin of the slider and remove useless height specification to fix alignement of the media controls.
691 * css/mediaControlsQT.css:
693 2009-07-20 Peter Kasting <pkasting@google.com>
695 Reviewed by Mark Rowe.
697 https://bugs.webkit.org/show_bug.cgi?id=27468
698 Back out r46060, which caused problems for some Apple developers.
700 * WebCore.vcproj/QTMovieWin.vcproj:
701 * WebCore.vcproj/WebCoreCommon.vsprops:
702 * WebCore.vcproj/WebCoreGenerated.vcproj:
704 2009-07-20 Dan Bernstein <mitz@apple.com>
706 Reviewed by Anders Carlsson.
708 When loading a custom view into a frame, the old document is still
710 <rdar://problem/5145841>
712 Safari fires onload before PDF is loaded into the browser
713 <rdar://problem/6618869>
715 Test: fast/loader/non-html-load-event.html
717 * GNUmakefile.am: Added PlaceholderDocument.{cpp,h}
718 * WebCore.gypi: Ditto.
719 * WebCore.pro: Ditto.
720 * WebCore.vcproj/WebCore.vcproj: Ditto.
721 * WebCore.xcodeproj/project.pbxproj: Ditto.
722 * WebCoreSources.bkl: Ditto.
724 (WebCore::Document::setStyleSelector): Added this protected accessor for
725 PlaceholderDocument to use.
727 (WebCore::Element::clientWidth): Check whether the document has a
729 (WebCore::Element::clientHeight): Ditto.
730 * loader/FrameLoader.cpp:
731 (WebCore::FrameLoader::begin): Create a PlaceholderDocument for frames
732 that do not use an HTML view. Do not nullify the content size in
734 (WebCore::FrameLoader::transitionToCommitted): For frames that do not
735 use an HTML view, call receivedFirstData(), which sets up the
736 frame with a new PlaceHolderDocument.
737 * loader/PlaceholderDocument.cpp: Added.
738 (WebCore::PlaceholderDocument::attach): Sets up the style selector but
739 does not create a RenderView.
740 * loader/PlaceholderDocument.h: Added.
741 (WebCore::PlaceholderDocument::create):
742 (WebCore::PlaceholderDocument::PlaceholderDocument):
744 2009-07-20 Chris Marrin <cmarrin@apple.com>
746 Reviewed by Simon Fraser.
748 Handle opacity and opacity animations on transform layers in Leopard
749 https://bugs.webkit.org/show_bug.cgi?id=27398
751 This makes two changes, and only for Leopard.
753 First, whenever opacity is changed on a layer I propagate the
754 change into the content layer and all the children if the layer
755 on which opacity is set is a transform layer (preserve3D is true).
756 The opacity set is the accumulated opacity from this layer
757 and all its direct ancestor transform layers. Second, I turn off all
758 hardware opacity animation.
760 * platform/graphics/GraphicsLayer.cpp:
761 (WebCore::GraphicsLayer::accumulatedOpacity):
762 (WebCore::GraphicsLayer::distributeOpacity):
763 * platform/graphics/GraphicsLayer.h:
764 (WebCore::GraphicsLayer::setOpacityInternal):
765 * platform/graphics/mac/GraphicsLayerCA.h:
766 * platform/graphics/mac/GraphicsLayerCA.mm:
767 (WebCore::GraphicsLayerCA::setPreserves3D):
768 (WebCore::GraphicsLayerCA::setOpacity):
769 (WebCore::GraphicsLayerCA::animateFloat):
770 (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
771 (WebCore::GraphicsLayerCA::setOpacityInternal):
772 (WebCore::GraphicsLayerCA::updateOpacityOnLayer):
774 2009-07-20 Yong Li <yong.li@torchmobile.com>
776 Reviewed by Adam Roben.
778 https://bugs.webkit.org/show_bug.cgi?id=27349
779 Add GraphicsContext implementation for the WinCE port.
781 Written by Yong Li <yong.li@torchmobile.com>, George Staikos <george.staikos@torchmobile.com> and Lyon Chen <lyon.chen@torchmobile.com>
782 with trivial style fixes by Adam Treat <adam.treat@torchmobile.com>
784 * platform/graphics/wince/GraphicsContextWince.cpp: Added.
786 2009-07-20 Dumitru Daniliuc <dumi@chromium.org>
788 Reviewed by Dimitri Glazkov.
790 Adding the Win SQLite VFS implementation for Chromium, and stubs
791 for the Mac and Linux VFSs.
793 https://bugs.webkit.org/show_bug.cgi?id=26940
796 * platform/chromium/ChromiumBridge.h:
797 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Added.
798 * platform/sql/chromium/SQLiteFileSystemChromiumLinux.cpp: Added.
799 * platform/sql/chromium/SQLiteFileSystemChromiumMac.cpp: Added.
800 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Added.
802 2009-07-20 Xan Lopez <xlopez@igalia.com>
804 Reviewed by Gustavo Noronha.
806 https://bugs.webkit.org/show_bug.cgi?id=27097
807 [Gtk] Segfault when examining an object of ROLE_TABLE via at-spi
809 Check that an object is a RenderObject before trying to access its
810 renderer and related node.
812 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
813 (webkit_accessible_get_role):
815 2009-07-20 Balazs Kelemen <kelemen.balazs.3@stud.u-szeged.hu>
817 Reviewed by Simon Hausmann.
819 [Qt] font cache reworking
820 https://bugs.webkit.org/show_bug.cgi?id=27265
822 Reimplemented Qt's FontCache in a way that follows the shared one.
823 Now we can release its elements when those became inactive.
824 FontFallbackList had been changed to be able to hold WebCore fonts in its list and to be able to release a FontData what is in the cache.
826 No change in behavior, so no tests.
828 * platform/graphics/qt/FontCacheQt.cpp:
829 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
830 (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
831 (WebCore::FontPlatformDataCacheKey::): Key type for the cache of FontPlatformData objects.
832 It can be constructed from a FontPlatformData or from a FontDescription. The keys have to be consistent
833 with FontPlatformData::FontPlatformData(const FontDescription&) - if we create the same
834 FontPlatformData from two FontDescription then we have to create the same key from them, and vica versa.
835 (WebCore::FontPlatformDataCacheKey::operator==):
836 (WebCore::FontPlatformDataCacheKey::hash):
837 (WebCore::FontPlatformDataCacheKey::computeHash):
838 (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize):
839 (WebCore::FontPlatformDataCacheKeyHash::hash):
840 (WebCore::FontPlatformDataCacheKeyHash::equal):
841 (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
842 (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue):
843 (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue):
844 (WebCore::FontCache::getCachedFontPlatformData): Get a FontDescription and returns a FontPlatformData.
845 (WebCore::FontCache::getCachedFontData): Get a FontPlatformData and returns a SimpleFontData.
846 (WebCore::FontCache::releaseFontData): Get a SimpleFontData and releases it from the cache. Also releases the appropriate FontPlatformData.
847 (WebCore::FontCache::purgeInactiveFontData): Frees inactive elements.
848 (WebCore::FontCache::invalidate): Frees all inactive elements (call purgeInactiveFontData with default argument)
849 * platform/graphics/qt/FontFallbackListQt.cpp:
850 (WebCore::FontFallbackList::releaseFontData):
851 (WebCore::FontFallbackList::fontDataAt):
852 * platform/graphics/qt/FontPlatformData.h:
853 (WebCore::FontPlatformData::family): Getter. It is needed for FontPlatformDataCacheKey.
854 (WebCore::FontPlatformData::bold): Ditto.
855 (WebCore::FontPlatformData::italic): Ditto.
856 (WebCore::FontPlatformData::smallCaps): Ditto.
857 (WebCore::FontPlatformData::pixelSize): Ditto.
858 * platform/graphics/qt/FontPlatformDataQt.cpp:
859 (WebCore::FontPlatformData::FontPlatformData): Set m_bold.
861 2009-07-20 Xan Lopez <xlopez@igalia.com>
863 Reviewed by Holger Freyther.
865 https://bugs.webkit.org/show_bug.cgi?id=26716
866 [Gtk] Each XMLHttpRequest leaks memory.
868 Free the SoupURI we create to check the URI. Fix suggested by John
871 * platform/network/soup/ResourceHandleSoup.cpp:
874 2009-07-20 Laszlo Gombos <laszlo.1.gombos@nokia.com>
876 Reviewed by Holger Freyther.
878 [Qt] On Symbian link against system sqlite3
879 https://bugs.webkit.org/show_bug.cgi?id=27368
881 Add an option to force linking against system sqlite3
882 by adding system-sqlite to the CONFIG variable.
884 The Symbian specific part of this patch is contributed by
889 2009-07-20 Xan Lopez <xlopez@igalia.com>
891 Reviewed by Gustavo Noronha.
893 Change the glib version check to check for the first unstable
894 release with g_mapped_file_unref. Otherwise this would be useless
895 until 2.22 is released, a few months from now.
897 * platform/network/soup/ResourceHandleSoup.cpp:
898 (WebCore::ResourceHandle::startHttp):
900 2009-07-20 Simon Hausmann <simon.hausmann@nokia.com>
902 Reviewed by and done with Tor Arne Vestbø.
904 Fix fast/css/pseudo-required-optional-*.html in the Qt build
907 These tests triggered a bug in RenderThemeQt where we did not fall back
908 to the unstyled painting of text areas and input fields when they have
911 Our re-implementation of isControlStyled incorrectly only checked the
912 border for determining whether to style or not. The base-implementation
913 performs the same check, but also includes the background. Removing
914 our implementation fixes the appearance.
916 * platform/qt/RenderThemeQt.cpp: Removed isControlStyled reimplementation.
917 * platform/qt/RenderThemeQt.h: Ditto.
919 2009-07-20 Simon Hausmann <simon.hausmann@nokia.com>
921 Rubber-stamped by Tor Arne Vestbø.
923 Add missing (sorted) header files to the HEADERS variable in the qmake
924 .pro file for improved completion in IDEs.
928 2009-07-19 Adam Barth <abarth@webkit.org>
930 Reviewed by David Levin.
932 [V8] Factor V8ConsoleMessage out of V8Proxy
933 https://bugs.webkit.org/show_bug.cgi?id=27421
938 * bindings/v8/V8ConsoleMessage.cpp: Added.
939 (WebCore::V8ConsoleMessage::V8ConsoleMessage):
940 (WebCore::V8ConsoleMessage::dispatchNow):
941 (WebCore::V8ConsoleMessage::dispatchLater):
942 (WebCore::V8ConsoleMessage::processDelayed):
943 (WebCore::V8ConsoleMessage::handler):
944 * bindings/v8/V8ConsoleMessage.h: Added.
945 (WebCore::V8ConsoleMessage::Scope::Scope):
946 (WebCore::V8ConsoleMessage::Scope::~Scope):
947 * bindings/v8/V8Proxy.cpp:
949 (WebCore::reportUnsafeAccessTo):
950 (WebCore::V8Proxy::runScript):
951 (WebCore::V8Proxy::callFunction):
952 (WebCore::V8Proxy::newInstance):
953 (WebCore::V8Proxy::initContextIfNeeded):
954 (WebCore::V8Proxy::processConsoleMessages):
956 2009-07-19 Rob Buis <rwlbuis@gmail.com>
958 Reviewed by Adam Barth.
960 Remove unused member variable.
962 * svg/SVGPolyElement.h:
964 2009-07-19 Eric Carlson <eric.carlson@apple.com>
966 Reviewed by Dan Bernstein.
968 HTMLAudioElement: constructor should set "autobuffer" attribute
969 https://bugs.webkit.org/show_bug.cgi?id=27422
971 Test: media/audio-constructor-autobuffer.html
973 * bindings/js/JSAudioConstructor.cpp:
974 (WebCore::constructAudio):
975 Set 'autobuffer' attribute.
977 2009-07-19 Thierry Bastian <thierry.bastian@nokia.com>
979 Reviewed by Simon Hausmann.
981 Fix the Qt build with mingw.
983 * WebCore.pro: Don't use MSVC commandline options to disable warnings
986 2009-07-19 Adam Barth <abarth@webkit.org>
988 Reviewed by David Levin.
990 [V8] Phase 2: Remove event listener methods from V8Proxy
991 https://bugs.webkit.org/show_bug.cgi?id=27415
995 * bindings/v8/V8ObjectEventListener.cpp:
996 (WebCore::weakObjectEventListenerCallback):
997 (WebCore::V8ObjectEventListener::~V8ObjectEventListener):
998 * bindings/v8/V8Proxy.cpp:
999 (WebCore::V8Proxy::disconnectEventListeners):
1000 * bindings/v8/V8Proxy.h:
1001 (WebCore::V8Proxy::eventListeners):
1002 (WebCore::V8Proxy::objectListeners):
1003 * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
1004 (WebCore::getEventListener):
1005 * bindings/v8/custom/V8CustomEventListener.cpp:
1006 (WebCore::V8EventListener::~V8EventListener):
1007 * bindings/v8/custom/V8DOMWindowCustom.cpp:
1008 (WebCore::CALLBACK_FUNC_DECL):
1009 (WebCore::ACCESSOR_SETTER):
1010 * bindings/v8/custom/V8ElementCustom.cpp:
1011 (WebCore::ACCESSOR_SETTER):
1012 * bindings/v8/custom/V8MessagePortCustom.cpp:
1013 (WebCore::ACCESSOR_SETTER):
1014 (WebCore::CALLBACK_FUNC_DECL):
1015 * bindings/v8/custom/V8NodeCustom.cpp:
1016 (WebCore::CALLBACK_FUNC_DECL):
1017 * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
1018 (WebCore::CALLBACK_FUNC_DECL):
1019 * bindings/v8/custom/V8WorkerCustom.cpp:
1020 (WebCore::getEventListener):
1021 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1022 (WebCore::getEventListener):
1023 * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
1024 (WebCore::ACCESSOR_SETTER):
1025 (WebCore::CALLBACK_FUNC_DECL):
1027 2009-07-18 Jan Michael Alonzo <jmalonzo@webkit.org>
1029 Reviewed by Gustavo Noronha.
1031 [Gtk] soup/ResourceHandleSoup.cpp:533: error: 'g_mapped_file_free' was not declared in this scope
1032 https://bugs.webkit.org/show_bug.cgi?id=27230
1034 Use g_mapped_file_unref for GLIB version 2.22 onwards.
1036 * platform/network/soup/ResourceHandleSoup.cpp:
1037 (WebCore::ResourceHandle::startHttp):
1039 2009-07-18 Dan Bernstein <mitz@apple.com>
1041 Reviewed by Anders Carlsson.
1043 Add spread radius support to -webkit-box-shadow
1044 https://bugs.webkit.org/show_bug.cgi?id=27417
1045 rdar://problem/7072267
1047 Test: fast/box-shadow/spread.html
1049 * css/CSSComputedStyleDeclaration.cpp:
1050 (WebCore::valueForShadow): Added a property ID parameter and used it to
1051 include the spread length for box-shadow but not for text-shadow.
1052 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1053 Pass the property ID to valueForShadow().
1055 * css/CSSParser.cpp:
1056 (WebCore::ShadowParseContext::ShadowParseContext): Added property,
1057 spread, and allowSpread members. Added a property ID parameter to
1058 the constructor. Initialize the property and allowSpread members.
1059 (WebCore::ShadowParseContext::allowLength): Added allowSpread.
1060 (WebCore::ShadowParseContext::commitValue): Pass the spread value to
1061 the ShadowValue constructor. Reset allowSpread.
1062 (WebCore::ShadowParseContext::commitLength): Allow spread after blur
1063 for the box-shadow property.
1064 (WebCore::ShadowParseContext::commitColor): Reset allowSpread.
1065 (WebCore::CSSParser::parseShadow): Pass the property ID to
1066 ShadowParseContext().
1068 * css/CSSStyleSelector.cpp:
1069 (WebCore::CSSStyleSelector::applyProperty): Get the spread value from
1070 the shadow value and pass it to the ShadowData constructor.
1072 * css/ShadowValue.cpp:
1073 (WebCore::ShadowValue::ShadowValue): Added spread.
1074 (WebCore::ShadowValue::cssText): Added spread.
1076 * css/ShadowValue.h:
1077 (WebCore::ShadowValue::create): Added spread.
1079 * page/animation/AnimationBase.cpp:
1080 (WebCore::blendFunc): Blend the spread value.
1081 (WebCore::PropertyWrapperShadow::blend): Added 0 spread to the default
1084 * rendering/InlineFlowBox.cpp:
1085 (WebCore::InlineFlowBox::placeBoxesHorizontally): Account for spread in
1086 the visual overflow calculations.
1087 (WebCore::InlineFlowBox::placeBoxesVertically): Ditto.
1088 (WebCore::InlineFlowBox::paint): Ditto.
1090 * rendering/RenderBlock.cpp:
1091 (WebCore::RenderBlock::overflowHeight): Ditto.
1092 (WebCore::RenderBlock::overflowWidth): Ditto.
1093 (WebCore::RenderBlock::overflowLeft): Ditto.
1094 (WebCore::RenderBlock::overflowTop): Ditto.
1095 (WebCore::RenderBlock::overflowRect): Ditto.
1096 (WebCore::RenderBlock::layoutBlock): Ditto.
1098 * rendering/RenderBoxModelObject.cpp:
1099 (WebCore::RenderBoxModelObject::paintBoxShadow): Inflate the shadow-
1100 casting rect by the shadow spread value. Adjust border radii if
1103 * rendering/RenderFlexibleBox.cpp:
1104 (WebCore::RenderFlexibleBox::layoutBlock): Account for spread in the
1105 visual overflow calculations.
1106 * rendering/RenderLayer.cpp:
1107 (WebCore::RenderLayer::calculateRects): Ditto.
1109 * rendering/RenderObject.cpp:
1110 (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Account for spread.
1111 (WebCore::RenderObject::adjustRectForOutlineAndShadow): Ditto.
1113 * rendering/RenderReplaced.cpp:
1114 (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect): Ditto.
1116 * rendering/style/RenderStyle.cpp:
1117 (WebCore::RenderStyle::setTextShadow): Assert that text shadows do not
1120 * rendering/style/ShadowData.cpp:
1121 (WebCore::ShadowData::ShadowData): Added spread.
1122 (WebCore::ShadowData::operator==): Compare spread.
1123 * rendering/style/ShadowData.h:
1124 (WebCore::ShadowData::ShadowData): Added spread.
1126 2009-07-18 Adam Barth <abarth@webkit.org>
1128 Reviewed by Jan Alonzo.
1130 Minor FrameLoader.cpp cleanup
1131 https://bugs.webkit.org/show_bug.cgi?id=27406
1135 * loader/FrameLoader.cpp:
1136 (WebCore::FrameLoader::executeIfJavaScriptURL):
1138 2009-07-18 Adam Barth <abarth@webkit.org>
1140 Reviewed by Darin Fisher.
1142 [V8] Move event listener methods from V8Proxy to V8EventListenerList
1143 https://bugs.webkit.org/show_bug.cgi?id=27408
1145 Move some event listener code out of V8Proxy and into the event
1148 I'd like to remove these methods from V8Proxy entirely and just expose
1149 getters for the lists themselves, but I'll do that in a follow up
1152 * bindings/v8/V8EventListenerList.cpp:
1153 (WebCore::V8EventListenerList::findWrapper):
1154 * bindings/v8/V8EventListenerList.h:
1155 (WebCore::V8EventListenerList::findOrCreateWrapper):
1156 * bindings/v8/V8ObjectEventListener.cpp:
1157 * bindings/v8/V8Proxy.cpp:
1158 (WebCore::V8Proxy::findV8EventListener):
1159 (WebCore::V8Proxy::findOrCreateV8EventListener):
1160 (WebCore::V8Proxy::removeV8EventListener):
1161 (WebCore::V8Proxy::findObjectEventListener):
1162 (WebCore::V8Proxy::findOrCreateObjectEventListener):
1163 (WebCore::V8Proxy::removeObjectEventListener):
1164 * bindings/v8/V8Proxy.h:
1166 2009-07-18 Jeremy Orlow <jorlow@chromium.org>
1168 Rubber stamped by Adam Barth.
1170 Revert https://bugs.webkit.org/show_bug.cgi?id=27383
1171 https://bugs.webkit.org/show_bug.cgi?id=27407
1173 Revert Jens' patch. I believe he forgot to include a file.
1176 * bindings/scripts/CodeGeneratorV8.pm:
1177 * bindings/v8/DOMObjectsInclude.h:
1178 * bindings/v8/V8DOMWrapper.cpp:
1179 (WebCore::V8DOMWrapper::getTemplate):
1180 * bindings/v8/V8DataGridDataSource.cpp: Removed.
1181 * bindings/v8/V8DataGridDataSource.h: Removed.
1182 * bindings/v8/V8GCController.h:
1183 * bindings/v8/V8Index.h:
1184 * bindings/v8/custom/V8CustomBinding.h:
1185 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp:
1186 (WebCore::ACCESSOR_GETTER):
1187 (WebCore::ACCESSOR_SETTER):
1189 2009-07-17 Daniel Bates <dbates@intudata.com>
1191 Reviewed by Adam Barth.
1193 https://bugs.webkit.org/show_bug.cgi?id=27405
1195 Fixes an issue when decoding HTML entities with an unknown named entity that
1196 caused null-characters to be inserted into the decoded result.
1198 Test: http/tests/security/xssAuditor/link-onclick-ampersand.html
1199 http/tests/security/xssAuditor/javascript-link-ampersand.html
1201 * page/XSSAuditor.cpp:
1202 (WebCore::XSSAuditor::decodeHTMLEntities): Added check to conditional so that
1203 non-zero entity values are not inserted during decoding process.
1205 2009-07-17 Jan Michael Alonzo <jmalonzo@webkit.org>
1207 <http://webkit.org/b/18363> [GTK] Combo boxes cannot be opened pressing space
1209 Reviewed by Holger Freyther.
1211 Add Gtk to platforms that want to open the menulist using the
1214 * dom/SelectElement.cpp:
1215 (WebCore::SelectElement::menuListDefaultEventHandler):
1217 2009-07-17 Mario Sanchez Prada <msanchez@igalia.com>
1219 Reviewed by Jan Alonzo.
1221 https://bugs.webkit.org/show_bug.cgi?id=25523
1222 [GTK] The text displayed by push buttons is not exposed to assistive technologies
1224 Add new public method text() to RenderButton and use it from
1225 AccessibilityRenderObject::stringValue().
1227 * accessibility/AccessibilityRenderObject.cpp:
1228 (WebCore::AccessibilityRenderObject::stringValue):
1229 * rendering/RenderButton.cpp:
1230 (WebCore::RenderButton::text):
1231 * rendering/RenderButton.h:
1233 2009-07-17 Anton Muhin <antonm@chromium.org>
1235 Reviewed by Dimitri Glazkov.
1237 Restore proxy retrieval
1238 https://bugs.webkit.org/show_bug.cgi?id=27369
1240 No new tests are needed.
1242 * bindings/v8/V8DOMWrapper.cpp:
1243 (WebCore::V8DOMWrapper::instantiateV8Object):
1245 2009-07-17 Yael Aharon <yael.aharon@nokia.com>
1247 Reviewed by George Staikos.
1249 https://bugs.webkit.org/show_bug.cgi?id=27351
1250 Added platform "Symbian" to WEBCORE_NAVIGATOR_PLATFORM
1251 Use uname to find the correct platform for Linux.
1253 * page/NavigatorBase.cpp:
1254 (WebCore::NavigatorBase::platform):
1256 2009-07-17 Jens Alfke <snej@chromium.org>
1258 Reviewed by Dimitri Glazkov.
1260 Hook up V8 bindings for DataGrid elements.
1261 https://bugs.webkit.org/show_bug.cgi?id=27383
1262 http://code.google.com/p/chromium/issues/detail?id=16730
1264 Tests: Enhanced LayoutTests/fast/dom/HTMLDataGridElement/*
1265 to handle exceptions, check appropriate JS prototypes, and
1266 test column-list's item() method as well as array-indexing.
1268 * WebCore.gypi: Added new source files.
1269 * bindings/scripts/CodeGeneratorV8.pm: Made GenerateBatchedAttributeData put #if's around conditional attributes.
1270 * bindings/v8/DOMObjectsInclude.h: #include DataGrid headers.
1271 * bindings/v8/V8DOMWrapper.cpp: Add bindings from HTML tags to datagrid templates.
1272 (WebCore::V8DOMWrapper::getTemplate): Customize datagrid template.
1273 * bindings/v8/V8DataGridDataSource.cpp: Added. (Based on JSDataGridDataSource)
1274 (WebCore::V8DataGridDataSource::V8DataGridDataSource):
1275 (WebCore::V8DataGridDataSource::~V8DataGridDataSource):
1276 * bindings/v8/V8DataGridDataSource.h: Added. (Based on JSDataGridDataSource)
1277 (WebCore::V8DataGridDataSource::create):
1278 (WebCore::V8DataGridDataSource::isJSDataGridDataSource):
1279 (WebCore::V8DataGridDataSource::jsDataSource):
1280 (WebCore::asV8DataGridDataSource):
1281 * bindings/v8/V8GCController.h: Added new handle type "DATASOURCE".
1282 * bindings/v8/V8Index.h: Conditionalize datagrid stuff.
1283 * bindings/v8/custom/V8CustomBinding.h: Declare more accessors. Conditionalize.
1284 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Fill in dataSource accessors.
1285 (WebCore::ACCESSOR_GETTER):
1286 (WebCore::ACCESSOR_SETTER):
1288 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
1290 Reviewed by Darin Fisher.
1292 StorageArea should only contain methods we intend to proxy.
1293 https://bugs.webkit.org/show_bug.cgi?id=27181
1295 Right now, StorageAreaSync takes in a StorageArea* and calls methods
1296 like importItem. Really, StorageAreaSync should be operating directly
1297 on StorageAreaImpl* and those methods should be removed from StorageArea
1298 since StorageAreaSync should never be attached to anything other than a
1301 This was pointed out in the review for
1302 https://bugs.webkit.org/show_bug.cgi?id=27072
1304 Also clean up StorageNamespaceImpl to operate directly on
1305 StorageAreaImpl. Also, get rid of the factory for StorageArea
1306 since nothing should ever create a StorageArea directly.
1309 * WebCore.vcproj/WebCore.vcproj:
1310 * WebCore.xcodeproj/project.pbxproj:
1311 * WebCoreSources.bkl:
1312 * storage/StorageArea.cpp: Removed.
1313 * storage/StorageArea.h:
1314 (WebCore::StorageArea::~StorageArea):
1315 * storage/StorageAreaImpl.cpp:
1316 (WebCore::StorageAreaImpl::copy):
1317 * storage/StorageAreaImpl.h:
1318 * storage/StorageAreaSync.cpp:
1319 (WebCore::StorageAreaSync::create):
1320 (WebCore::StorageAreaSync::StorageAreaSync):
1321 * storage/StorageAreaSync.h:
1322 * storage/StorageNamespaceImpl.cpp:
1323 (WebCore::StorageNamespaceImpl::copy):
1324 (WebCore::StorageNamespaceImpl::storageArea):
1325 * storage/StorageNamespaceImpl.h:
1327 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
1329 Reviewed by Dimitri Glazkov.
1331 Add v8 implementation for DOM Storage ScriptObjectQuarantine.
1332 https://bugs.webkit.org/show_bug.cgi?id=27327
1334 Wrap the storage object with a generic object as is done elsewhere in
1335 the file (but continue to hit a NOTIMPLEMENTED if DOM_STORAGE is not
1338 * bindings/v8/ScriptObjectQuarantine.cpp:
1339 (WebCore::getQuarantinedScriptObject):
1341 2009-07-17 Mads Ager <ager@chromium.org>
1343 Reviewed by Dimitri Glazkov.
1345 https://bugs.webkit.org/show_bug.cgi?id=27394
1346 Fix access to global object wrappers after navigation of their
1347 frame in the V8 bindings. This fixes selenium test failures.
1349 * bindings/v8/V8Proxy.cpp:
1350 (WebCore::V8Proxy::updateDocument):
1352 2009-07-17 Mark Rowe <mrowe@apple.com>
1354 Fix the 32-bit build by removing implicit float <-> double conversions.
1356 * inspector/InspectorController.cpp:
1357 (WebCore::constrainedAttachedWindowHeight):
1359 2009-07-17 Brian Weinstein <bweinstein@apple.com>
1361 Reviewed by Adam Roben.
1363 Fix of <rdar://problem/5712795> Win: Cannot change the height of the docked Web Inspector (14272)
1364 https://bugs.webkit.org/show_bug.cgi?id=14272
1366 Moved preference setting for attached inspector height and inspector height calculation from
1367 WebInspectorClient.mm into InspectorController.cpp, to make this code cross-platform and enable
1368 Windows resizing of attached inspector.
1370 * inspector/InspectorController.cpp:
1371 * inspector/InspectorController.h:
1373 2009-07-17 Dan Bernstein <mitz@apple.com>
1375 Another attempt at fixing the build after r46063
1377 * WebCore.xcodeproj/project.pbxproj: Made ExceptionCode.h a private
1378 header, because it is now included from htmlediting.h, which is
1381 2009-07-17 Alexey Proskuryakov <ap@webkit.org>
1383 Reviewed by Dan Bernstein.
1385 https://bugs.webkit.org/show_bug.cgi?id=27396
1386 Moving cursor in Thai text sometimes jumps over two characters
1388 Test: editing/text-iterator/thai-cursor-movement.html
1390 * platform/text/TextBreakIteratorICU.cpp: (WebCore::cursorMovementIterator): Added a special
1391 case for five Thai characters, matching ICU/CLDR changes.
1393 2009-07-14 Eric Seidel <eric@webkit.org>
1395 Reviewed by Adam Barth.
1397 Some constructor objects exposed on Window have the wrong prototype chain
1398 https://bugs.webkit.org/show_bug.cgi?id=27276
1400 Several Constructor classes were already being passed a global object
1401 during construction, but they were ignoring it for prototype lookup.
1402 I've fixed those to use the passed global object instead.
1404 Most of these Constructor classes should just be auto-generated, but I
1405 refrained from changing them over to auto-gen in this patch.
1407 Fixed CodeGeneratorJS to pass a global object to getDOMConstructor when
1408 available, otherwise default to deprecatedGlobalObjectForPrototype(exec)
1409 to match existing behavior.
1411 Test: fast/dom/prototype-inheritance.html
1413 * bindings/js/JSAudioConstructor.cpp:
1414 (WebCore::JSAudioConstructor::JSAudioConstructor): use the existing globalObject pointer for prototype lookup
1415 * bindings/js/JSDOMBinding.h:
1416 (WebCore::deprecatedGlobalObjectForPrototype): Make it easy to detect where the wrong global object is being used.
1417 (WebCore::deprecatedGetDOMStructure):
1418 * bindings/js/JSDOMGlobalObject.h: remove error-prone getDOMConstructor, require passing JSDOMGlobalObject*
1419 * bindings/js/JSDOMWindowCustom.cpp:
1420 (WebCore::JSDOMWindow::webKitPoint): pass "this" for the global object.
1421 (WebCore::JSDOMWindow::webKitCSSMatrix): pass "this" for the global object.
1422 (WebCore::JSDOMWindow::xsltProcessor): pass "this" for the global object.
1423 (WebCore::JSDOMWindow::worker): pass "this" for the global object.
1424 * bindings/js/JSImageConstructor.cpp:
1425 (WebCore::JSImageConstructor::JSImageConstructor): use the existing globalObject pointer for prototype lookup
1426 * bindings/js/JSMessageChannelConstructor.cpp:
1427 (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): use the existing globalObject pointer for prototype lookup
1428 * bindings/js/JSOptionConstructor.cpp:
1429 (WebCore::JSOptionConstructor::JSOptionConstructor): use the existing globalObject pointer for prototype lookup
1430 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
1431 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor): add new globalObject parameter and use it
1432 * bindings/js/JSWebKitCSSMatrixConstructor.h:
1433 * bindings/js/JSWebKitPointConstructor.cpp:
1434 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor): add new globalObject parameter and use it
1435 * bindings/js/JSWebKitPointConstructor.h:
1436 * bindings/js/JSWorkerConstructor.cpp:
1437 (WebCore::JSWorkerConstructor::JSWorkerConstructor): add new globalObject parameter and use it
1438 * bindings/js/JSWorkerConstructor.h:
1439 * bindings/js/JSXMLHttpRequestConstructor.cpp:
1440 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor): use the existing globalObject pointer for prototype lookup
1441 -- XMLHttpRequest constructor was also missing a length. Added one.
1442 * bindings/js/JSXSLTProcessorConstructor.cpp:
1443 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
1444 * bindings/js/JSXSLTProcessorConstructor.h:
1445 * bindings/scripts/CodeGeneratorJS.pm:
1447 2009-07-17 Dan Bernstein <mitz@apple.com>
1451 * editing/htmlediting.cpp:
1452 (WebCore::visiblePositionBeforeNode):
1453 (WebCore::visiblePositionAfterNode):
1455 2009-07-17 Jan Michael Alonzo <jmalonzo@webkit.org>
1457 Gtk build fix for symbol lookup error.
1459 Move AbstractWorker from SHARED_WORKERS to WORKERS as Worker derives from it now
1460 Changed in http://trac.webkit.org/changeset/46048
1464 2009-07-17 Ryosuke Niwa <ryosuke.niwa@gmail.com>
1466 Reviewed by Eric Seidel.
1468 htmlediting.cpp needs more utility functions to fix the bug 26816
1469 https://bugs.webkit.org/show_bug.cgi?id=27038
1471 In order to fix the bug 26816, we need several utility functions be added to htmlediting.cpp
1473 No tests because functions haven't been used anywhere yet.
1476 (WebCore::Range::create):
1477 (WebCore::Range::comparePoint): added const qualifier
1478 (WebCore::Range::compareNode): added const qualifier
1480 * editing/htmlediting.cpp:
1481 (WebCore::unsplittableElementForPosition): find the enclosing unsplittable element (editing root & table cell)
1482 (WebCore::positionBeforeNode): added ASSERT(node)
1483 (WebCore::positionAfterNode): added ASSERT(node)
1484 (WebCore::visiblePositionBeforeNode):
1485 (WebCore::visiblePositionAfterNode):
1486 (WebCore::createRange): create a range object from two visible positions
1487 (WebCore::extendRangeToWrappingNodes): extend range to include nodes that starts and ends at the boundaries
1488 (WebCore::canMergeLists): typo
1489 (WebCore::indexForVisiblePosition): added const qualifier
1490 (WebCore::isVisiblyAdjacent): typo
1491 (WebCore::isNodeVisiblyContainedWithin): determine if a node is inside a range or within the visible boundaries of the range
1492 * editing/htmlediting.h:
1494 2009-07-17 Michelangelo De Simone <micdesim@gmail.com>
1496 Reviewed by Darin Adler.
1498 https://bugs.webkit.org/show_bug.cgi?id=25551
1499 Added support for the "required" attribute, the valueMissing flag
1500 to the ValidityState object and :required/:optional CSS pseudoclasses.
1501 Part of HTML5 sec. Forms specs.
1502 http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#attr-input-required
1504 Tests: fast/css/pseudo-required-optional-001.html
1505 fast/css/pseudo-required-optional-002.html
1506 fast/css/pseudo-required-optional-003.html
1507 fast/css/pseudo-required-optional-004.html
1508 fast/css/pseudo-required-optional-005.html
1509 fast/css/pseudo-required-optional-006.html
1510 fast/forms/ValidityState-valueMissing-001.html
1511 fast/forms/ValidityState-valueMissing-002.html
1512 fast/forms/ValidityState-valueMissing-003.html
1513 fast/forms/ValidityState-valueMissing-004.html
1514 fast/forms/ValidityState-valueMissing-005.html
1515 fast/forms/ValidityState-valueMissing-006.html
1516 fast/forms/ValidityState-valueMissing-007.html
1517 fast/forms/ValidityState-valueMissing-008.html
1518 fast/forms/ValidityState-valueMissing-009.html
1519 fast/forms/required-attribute-001.html
1520 fast/forms/required-attribute-002.html
1522 * css/CSSSelector.cpp:
1523 (WebCore::CSSSelector::extractPseudoType): pseudoRequired/pseudoOptional
1524 * css/CSSSelector.h:
1525 (WebCore::CSSSelector::): ditto
1526 * css/CSSStyleSelector.cpp:
1527 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ditto
1529 (WebCore::Element::isOptionalFormControl): check for optional controls
1530 (WebCore::Element::isRequiredFormControl): check for required controls
1531 * html/HTMLAttributeNames.in: required attribute
1532 * html/HTMLButtonElement.h:
1533 (WebCore::HTMLButtonElement::isOptionalFormControl): ditto
1534 * html/HTMLFormControlElement.cpp:
1535 (WebCore::HTMLFormControlElement::required): requiredAttr getter
1536 (WebCore::HTMLFormControlElement::setRequired): requiredAttr setter
1537 * html/HTMLFormControlElement.h:
1538 (WebCore::HTMLFormControlElement::valueMissing): method definition
1539 * html/HTMLInputElement.cpp:
1540 (WebCore::HTMLInputElement::valueMissing): validation code
1541 (WebCore::HTMLInputElement::isRequiredFormControl): ditto
1542 * html/HTMLInputElement.h:
1543 (WebCore::HTMLInputElement::isOptionalFormControl): ditto
1544 * html/HTMLInputElement.idl: required DOM attribute
1545 * html/HTMLSelectElement.h:
1546 (WebCore::HTMLSelectElement::isOptionalFormControl): ditto
1547 * html/HTMLTextAreaElement.h:
1548 (WebCore::HTMLTextAreaElement::valueMissing): validation code
1549 (WebCore::HTMLTextAreaElement::isOptionalFormControl): ditto
1550 (WebCore::HTMLTextAreaElement::isRequiredFormControl): ditto
1551 * html/HTMLTextAreaElement.idl: required DOM attribute
1552 * html/ValidityState.cpp:
1553 * html/ValidityState.h:
1554 (WebCore::ValidityState::valueMissing): validation flag
1556 2009-07-17 Beth Dakin <bdakin@apple.com>
1558 Reviewed by Darin Adler.
1560 Fix for https://bugs.webkit.org/show_bug.cgi?id=27390 CSS custom
1561 cursor hotspots should work in quirks mode
1562 - and corresponding <rdar://problem/6554340>
1564 Enable hotspots in quirks mode.
1565 * css/CSSParser.cpp:
1566 (WebCore::CSSParser::parseValue):
1568 Update this manual test to reflect the fact that hotspots are now
1569 expected to work in quirks mode.
1570 * manual-tests/css3-cursor-fallback-quirks.html:
1572 2009-07-17 Peter Kasting <pkasting@google.com>
1574 Reviewed by Steve Falkenburg.
1576 https://bugs.webkit.org/show_bug.cgi?id=27323
1577 Only add Cygwin to the path when it isn't already there. This avoids
1578 causing problems for people who purposefully have non-Cygwin versions of
1579 executables like svn in front of the Cygwin ones in their paths.
1581 * WebCore.vcproj/QTMovieWin.vcproj:
1582 * WebCore.vcproj/WebCoreCommon.vsprops:
1583 * WebCore.vcproj/WebCoreGenerated.vcproj:
1585 2009-07-17 Alexey Proskuryakov <ap@webkit.org>
1587 Reviewed by David Levin.
1589 https://bugs.webkit.org/show_bug.cgi?id=27384
1590 Random crashes in appcache/update-cache.html test
1592 * loader/appcache/ApplicationCacheGroup.cpp:
1593 (WebCore::ApplicationCacheGroup::didReceiveResponse): Reorder code to avoid using a handle
1596 2009-07-17 Drew Wilson <atwilson@google.com>
1598 Reviewed by David Levin.
1600 Need to refactor Worker to derive from AbstractWorker
1601 https://bugs.webkit.org/show_bug.cgi?id=26948
1603 Changed Worker to derive from AbstractWorker, which involved moving
1604 AbstractWorker files from being wrapped by ENABLE_SHARED_WORKERS to
1607 Removed obsolete functionality from the JS/V8 bindings that is now
1608 inherited from AbstractWorker.
1611 Moved AbstractWorker files out of SHARED_WORKERS section and into WORKERS.
1612 * bindings/js/JSAbstractWorkerCustom.cpp:
1613 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
1614 * bindings/js/JSWorkerCustom.cpp:
1615 Removed obsolete event listener code (now in base class)
1616 (WebCore::JSWorker::mark):
1617 No longer need to explicitly mark event listeners (handled by base class).
1618 * bindings/v8/V8Index.h:
1619 Moved AbstractWorker lines out of SHARED_WORKERS section and into WORKERS.
1620 * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
1621 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
1622 * bindings/v8/custom/V8CustomBinding.h:
1623 Moved AbstractWorker lines out of SHARED_WORKERS section and into WORKERS.
1624 * bindings/v8/custom/V8WorkerCustom.cpp:
1625 Removed obsolete event listener code that now lives in the base class.
1626 (WebCore::V8WorkerConstructor): Cleaned up legacy style nits.
1627 * workers/AbstractWorker.cpp:
1628 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
1629 * workers/AbstractWorker.h:
1630 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
1631 * workers/Worker.cpp:
1632 Removed event listener code (now in base class).
1633 (WebCore::Worker::Worker): Now derives from AbstractWorker.
1634 (WebCore::Worker::notifyFinished): Calls dispatchLoadErrorEvent on base class.
1636 Removed APIs that now live in the base class.
1637 * workers/Worker.idl:
1638 Now derives from AbstractWorker.
1639 Removed APIs that live in the base class, and added a GenerateToJS flag.
1641 2009-07-17 David Hyatt <hyatt@apple.com>
1643 Reviewed by Dan Bernstein.
1645 https://bugs.webkit.org/show_bug.cgi?id=27379
1646 Absolutely-positioned elements with a scrollbar wrap prematurely. Make sure to include
1647 the vertical scrollbar width for overflow:scroll elements.
1649 Added fast/css/positioned-overflow-scroll.html
1651 * rendering/RenderBlock.cpp:
1652 (WebCore::RenderBlock::calcPrefWidths):
1653 * rendering/RenderFlexibleBox.cpp:
1654 (WebCore::RenderFlexibleBox::calcPrefWidths):
1656 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
1658 Reviewed by Dimitri Glazkov.
1660 Need a DOM_STORAGE guard in DerivedSroucesAllInOne.cpp
1661 https://bugs.webkit.org/show_bug.cgi?id=27375
1663 In https://bugs.webkit.org/show_bug.cgi?id=27360 I added Storage.cpp
1664 and StorageEvent.cpp. Unfortunately, until later this afternoon,
1665 DOM_STORAGE is not turned on by default in Chromium, and so these two
1666 files are never generated. This breaks the compile.
1668 There are no other instances of guards in the file, which puzzles me...
1669 but I think adding guards is the right way to go about this.
1671 * bindings/v8/DerivedSourcesAllInOne.cpp: Added the guard.
1673 2009-07-17 Brady Eidson <beidson@apple.com>
1675 Reviewed by Darin Adler.
1677 https://bugs.webkit.org/show_bug.cgi?id=26496
1679 Let WebCore always enforce the connection-per-host limit itself.
1681 * loader/loader.cpp:
1682 (WebCore::Loader::Host::servePendingRequests):
1684 2009-07-17 Chris Marrin <cmarrin@apple.com>
1686 Reviewed by David Hyatt.
1688 Some transitions don't work correctly on Leopard
1689 https://bugs.webkit.org/show_bug.cgi?id=27356
1691 We only have code to do component animation using valueFunction.
1692 So on Leopard we always need to do matrix animation in hardware.
1693 This fix ensures that.
1695 This is currently not testable because it appears only in the
1696 hardware animation and we can't yet do pixel tests while
1699 * platform/graphics/mac/GraphicsLayerCA.mm:
1700 (WebCore::GraphicsLayerCA::animateTransform):
1702 2009-07-17 Holger Hans Peter Freyther <zecke@selfish.org>
1704 Reviewed by Gustavo Noronha.
1706 [GTK+] Crash in screenAvailable due a null Widget*
1708 JSDOMWindow::open called screenAvailableRect(0). The other
1709 Screen methods can be called with a null widget as well, fix the
1710 crashing test by checking for null.
1712 In screenRect and screenAvailableRect it is not tried to use
1713 a default screen as the existing implementation didn't try either
1714 in case of not having a toplevel widget.
1716 LayoutTests/fast/frames/crash-removed-iframe.html caused a crash.
1718 * platform/gtk/PlatformScreenGtk.cpp:
1719 (WebCore::getVisual): New method to get a visual or return zero.
1720 (WebCore::screenDepth): Use getVisual.
1721 (WebCore::screenDepthPerComponent): Use getVisual.
1722 (WebCore::screenIsMonochrome): Use screenDepth which will do the null checking
1723 (WebCore::screenRect): Check for !widget.
1724 (WebCore::screenAvailableRect): Check for !widget.
1726 2009-07-17 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1728 Reviewed by Simon Hausmann.
1730 [Qt] Fix the include path for the Symbian port
1731 https://bugs.webkit.org/show_bug.cgi?id=27358
1735 2009-07-17 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
1737 Reviewed by Simon Hausmann.
1739 Make it possible to set the plugin directories from the DRT.
1740 Part of https://bugs.webkit.org/show_bug.cgi?id=27215
1742 * plugins/PluginDatabase.cpp:
1743 (WebCore::PluginDatabase::installedPlugins): Now optionally takes
1744 a populate argument, so we can avoid loading system plugins from the
1745 DRT and thus avoid their strerr errors that can make tests fail.
1746 (WebCore::PluginDatabase::clear): Make it possible to clear the
1747 database. Called from setPluginDirectories.
1748 * plugins/PluginDatabase.h:
1749 (WebCore::PluginDatabase::setPluginDirectories): Make public
1751 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1753 Reviewed by Simon Hausmann.
1755 PluginViewMac: Stop the plugin when loading fails
1757 Also, prevent event propagation when in the stopped state
1759 * plugins/mac/PluginViewMac.cpp:
1761 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1763 Reviewed by Simon Hausmann.
1765 PluginViewMac: Allow query and set of drawing and event models
1767 We now support querying and setting of the drawing and event model,
1768 but we still only support the CoreGraphics drawing model, and the
1771 If unsupported drawing or event models are detected we show the
1772 missing-plugin icon.
1774 * plugins/PluginView.cpp:
1775 * plugins/PluginView.h:
1776 * plugins/mac/PluginViewMac.cpp:
1778 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1780 Reviewed by Simon Hausmann.
1782 Initialize two PluginView members using memset
1784 m_npWindow is used on all platforms, not just for XP_UNIX,
1785 so always initialize it. m_npCgContext on the other hand
1786 is only used for XP_MACOSX.
1788 * plugins/PluginView.cpp:
1790 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1792 Reviewed by Simon Hausmann.
1794 Add more debug logging in PluginView
1796 * plugins/PluginView.cpp: Add debug for setValue
1797 * plugins/gtk/PluginViewGtk.cpp: Add debug for getValue
1798 * plugins/mac/PluginViewMac.cpp: Add debug for getValue and more
1799 * plugins/qt/PluginViewQt.cpp: Add debug for getValue
1800 * plugins/win/PluginViewWin.cpp: Add debug for getValue
1802 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1804 Reviewed by Holger Freyther.
1806 Use same license in PluginDebug.cpp as in the original PluginDebug.h
1808 * plugins/PluginDebug.cpp: Use license from PluginDebug.h
1810 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1812 Reviewed by Simon Hausmann.
1814 Add more debugging functionality for the WebCore NPAPI layer
1816 * GNUmakefile.am: Add PluginDebug.cpp
1817 * WebCore.gypi: Add PluginDebug.cpp
1818 * WebCore.pro: Add PluginDebug.cpp
1819 * WebCore.vcproj/WebCore.vcproj: Add PluginDebug.cpp
1820 * WebCoreSources.bkl: Add PluginDebug.cpp
1821 * plugins/PluginDebug.h: Move errorStrings to PluginDebug.cpp
1822 * plugins/PluginDebug.cpp: New file
1824 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
1826 Reviewed by David Levin.
1828 Fix Chromium build with DOM_STORAGE enabled.
1829 https://bugs.webkit.org/show_bug.cgi?id=27360
1831 2 minor changes as noted below:
1833 * bindings/v8/DerivedSourcesAllInOne.cpp: Add the generated .cpp files.
1834 * storage/StorageAreaImpl.cpp: #include "DOMWindow.h"
1836 2009-07-16 Fumitoshi Ukai <ukai@chromium.org>
1838 Reviewed by David Levin.
1840 Add --web-sockets flag and ENABLE_WEB_SOCKETS define.
1841 https://bugs.webkit.org/show_bug.cgi?id=27206
1843 Add ENABLE_WEB_SOCKETS
1845 * Configurations/FeatureDefines.xcconfig: add ENABLE_WEB_SOCKETS
1846 * GNUmakefile.am: add ENABLE_WEB_SOCKETS
1847 * WebCore.vcproj/WebCoreCommon.vsprops: add ENABLE_WEB_SOCKETS
1848 * WebCore.vcproj/build-generated-files.sh: add ENABLE_WEB_SOCKETS
1850 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
1852 Reviewed by Oliver Hunt.
1854 Added a third bunch of Haiku-specific files for WebCore.
1855 https://bugs.webkit.org/show_bug.cgi?id=26952
1857 Adding five files, EventLoopHaiku.cpp, FileChooserHaiku.cpp,
1858 FileSystemHaiku.cpp, KeyboardCodes.h and MIMETypeRegistryHaiku.cpp
1860 * platform/haiku/EventLoopHaiku.cpp: Added.
1861 (WebCore::EventLoop::cycle):
1862 * platform/haiku/FileChooserHaiku.cpp: Added.
1863 (WebCore::FileChooser::FileChooser):
1864 (WebCore::FileChooser::basenameForWidth):
1865 * platform/haiku/FileSystemHaiku.cpp: Added.
1866 (WebCore::fileSystemRepresentation):
1867 (WebCore::homeDirectoryPath):
1868 (WebCore::openTemporaryFile):
1869 (WebCore::closeFile):
1870 (WebCore::writeToFile):
1871 (WebCore::unloadModule):
1872 (WebCore::listDirectory):
1873 * platform/haiku/KeyboardCodes.h: Added.
1874 * platform/haiku/MIMETypeRegistryHaiku.cpp: Added.
1876 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1878 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
1880 Reviewed by Oliver Hunt.
1882 Added a second bunch of Haiku-specific files for WebCore.
1883 https://bugs.webkit.org/show_bug.cgi?id=26952
1885 Adding four files, ContextMenuHaiku.cpp, ContextMenuItemHaiku.cpp,
1886 DragDataHaiku.cpp and DragImageHaiku.cpp
1888 * platform/haiku/ContextMenuHaiku.cpp: Added.
1889 (WebCore::ContextMenuReceiver::ContextMenuReceiver):
1890 (WebCore::ContextMenuReceiver::HandleMessage):
1891 (WebCore::ContextMenuReceiver::Result):
1892 (WebCore::ContextMenu::ContextMenu):
1893 (WebCore::ContextMenu::~ContextMenu):
1894 (WebCore::ContextMenu::appendItem):
1895 (WebCore::ContextMenu::itemCount):
1896 (WebCore::ContextMenu::insertItem):
1897 (WebCore::ContextMenu::platformDescription):
1898 (WebCore::ContextMenu::setPlatformDescription):
1899 * platform/haiku/ContextMenuItemHaiku.cpp: Added.
1900 (ContextMenuItem::ContextMenuItem):
1901 (ContextMenuItem::~ContextMenuItem):
1902 (ContextMenuItem::releasePlatformDescription):
1903 (ContextMenuItem::type):
1904 (ContextMenuItem::setType):
1905 (ContextMenuItem::action):
1906 (ContextMenuItem::setAction):
1907 (ContextMenuItem::title):
1908 (ContextMenuItem::setTitle):
1909 (ContextMenuItem::platformSubMenu):
1910 (ContextMenuItem::setSubMenu):
1911 (ContextMenuItem::setChecked):
1912 (ContextMenuItem::setEnabled):
1913 (ContextMenuItem::enabled):
1914 * platform/haiku/DragDataHaiku.cpp: Added.
1915 (WebCore::DragData::canSmartReplace):
1916 (WebCore::DragData::containsColor):
1917 (WebCore::DragData::containsFiles):
1918 (WebCore::DragData::asFilenames):
1919 (WebCore::DragData::containsPlainText):
1920 (WebCore::DragData::asPlainText):
1921 (WebCore::DragData::asColor):
1922 (WebCore::DragData::createClipboard):
1923 (WebCore::DragData::containsCompatibleContent):
1924 (WebCore::DragData::containsURL):
1925 (WebCore::DragData::asURL):
1926 (WebCore::DragData::asFragment):
1927 * platform/haiku/DragImageHaiku.cpp: Added.
1928 (WebCore::dragImageSize):
1929 (WebCore::deleteDragImage):
1930 (WebCore::scaleDragImage):
1931 (WebCore::dissolveDragImageToFraction):
1932 (WebCore::createDragImageFromImage):
1933 (WebCore::createDragImageIconForCachedImage):
1935 2009-07-16 Stephen White <senorblanco@chromium.org>
1937 Reviewed by Darin Fisher and Brett Wilson.
1939 Refactor Skia implementation of gradients and patterns.
1941 http://bugs.webkit.org/show_bug.cgi?id=26618
1943 The following layout tests were breaking on Chromium/Linux:
1945 LayoutTests/svg/custom/js-late-gradient-creation.svg (bad baseline PNG)
1946 LayoutTests/svg/custom/js-late-gradient-and-object.creation.svg
1947 LayoutTests/svg/custom/js-late-pattern-creation.svg (bad baseline PNG)
1948 LayoutTests/svg/custom/js-late-pattern-and-object-creation.svg
1950 I could've fixed these the easy way, by copying the same 5
1951 lines of code we use everywhere we need patterns or gradients, but
1952 I decided to fix it the hard way: by refactoring the code so that
1953 PlatformContextSkia::setupPaintForFilling() and
1954 PlatformContextSkia::setupPaintForStroking() do the right thing,
1955 and also handle gradients and patterns.
1957 This required pushing the gradients and patterns set in
1958 (generic) GraphicsContext::setFillPattern() and friends down into
1959 PlatformContextSkia. For this, I followed the setPlatformXXX()
1960 pattern used elsewhere in GraphicsContext, and stubbed them out on
1961 the other platforms with #if !PLATFORM(SKIA). This also required
1962 pushing changes to the gradientSpaceTransform from the Gradient into
1965 Since it's a Skia context, I decided to cache the values as
1966 SkShaders. There were existing m_pattern and m_gradient SkShaders,
1967 but they were unused, and whose use was ambiguous, so I
1968 replaced them with one SkShader each for filling and stroking.
1970 * platform/graphics/Gradient.cpp:
1971 (WebCore::Gradient::setGradientSpaceTransform):
1972 (WebCore::Gradient::setPlatformGradientSpaceTransform):
1973 * platform/graphics/Gradient.h:
1974 * platform/graphics/GraphicsContext.cpp:
1975 (WebCore::GraphicsContext::setStrokePattern):
1976 (WebCore::GraphicsContext::setFillPattern):
1977 (WebCore::GraphicsContext::setStrokeGradient):
1978 (WebCore::GraphicsContext::setFillGradient):
1979 (WebCore::GraphicsContext::setPlatformFillGradient):
1980 (WebCore::GraphicsContext::setPlatformFillPattern):
1981 (WebCore::GraphicsContext::setPlatformStrokeGradient):
1982 (WebCore::GraphicsContext::setPlatformStrokePattern):
1983 * platform/graphics/GraphicsContext.h:
1984 * platform/graphics/skia/GradientSkia.cpp:
1985 (WebCore::Gradient::setPlatformGradientSpaceTransform):
1986 * platform/graphics/skia/GraphicsContextSkia.cpp:
1987 (WebCore::GraphicsContext::fillPath):
1988 (WebCore::GraphicsContext::fillRect):
1989 (WebCore::GraphicsContext::setPlatformFillGradient):
1990 (WebCore::GraphicsContext::setPlatformFillPattern):
1991 (WebCore::GraphicsContext::setPlatformStrokeGradient):
1992 (WebCore::GraphicsContext::setPlatformStrokePattern):
1993 (WebCore::GraphicsContext::strokePath):
1994 (WebCore::GraphicsContext::strokeRect):
1995 * platform/graphics/skia/PlatformContextSkia.cpp:
1996 (PlatformContextSkia::State::State):
1997 (PlatformContextSkia::State::~State):
1998 (PlatformContextSkia::drawRect):
1999 (PlatformContextSkia::setupPaintCommon):
2000 (PlatformContextSkia::setupPaintForFilling):
2001 (PlatformContextSkia::setupPaintForStroking):
2002 (PlatformContextSkia::setFillColor):
2003 (PlatformContextSkia::setStrokeColor):
2004 (PlatformContextSkia::setStrokeShader):
2005 (PlatformContextSkia::setFillShader):
2006 * platform/graphics/skia/PlatformContextSkia.h:
2007 * platform/graphics/skia/SkiaFontWin.cpp:
2008 (WebCore::skiaDrawText):
2009 (WebCore::paintSkiaText):
2010 * svg/graphics/SVGPaintServer.cpp:
2011 (WebCore::SVGPaintServer::teardown):
2013 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2015 Reviewed by Oliver Hunt.
2017 Added Haiku-specific files for WebCore/platform/image-decoders/.
2018 https://bugs.webkit.org/show_bug.cgi?id=26949
2020 Adding a new file, ImageDecoderHaiku.cpp.
2022 * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Added.
2023 (WebCore::RGBA32Buffer::RGBA32Buffer):
2024 (WebCore::RGBA32Buffer::clear):
2025 (WebCore::RGBA32Buffer::zeroFill):
2026 (WebCore::RGBA32Buffer::copyBitmapData):
2027 (WebCore::RGBA32Buffer::setSize):
2028 (WebCore::RGBA32Buffer::asNewNativeImage):
2029 (WebCore::RGBA32Buffer::hasAlpha):
2030 (WebCore::RGBA32Buffer::setHasAlpha):
2031 (WebCore::RGBA32Buffer::setStatus):
2032 (WebCore::RGBA32Buffer::operator=):
2033 (WebCore::RGBA32Buffer::width):
2034 (WebCore::RGBA32Buffer::height):
2036 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2038 Reviewed by Eric Seidel.
2040 Added Haiku-specific files for WebCore/page/.
2041 https://bugs.webkit.org/show_bug.cgi?id=26949
2043 Adding three new files, DragControllerHaiku.cpp, EventHandlerHaiku.cpp
2046 * page/haiku/DragControllerHaiku.cpp: Added.
2047 (WebCore::DragController::isCopyKeyDown):
2048 (WebCore::DragController::dragOperation):
2049 (WebCore::DragController::maxDragImageSize):
2050 (WebCore::DragController::cleanupAfterSystemDrag):
2051 * page/haiku/EventHandlerHaiku.cpp: Added.
2052 (WebCore::isKeyboardOptionTab):
2053 (WebCore::EventHandler::invertSenseOfTabsToLinks):
2054 (WebCore::EventHandler::tabsToAllControls):
2055 (WebCore::EventHandler::focusDocumentView):
2056 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2057 (WebCore::EventHandler::passMouseDownEventToWidget):
2058 (WebCore::EventHandler::eventActivatedView):
2059 (WebCore::EventHandler::passSubframeEventToSubframe):
2060 (WebCore::EventHandler::passWheelEventToWidget):
2061 (WebCore::EventHandler::createDraggingClipboard):
2062 (WebCore::EventHandler::passMousePressEventToSubframe):
2063 (WebCore::EventHandler::passMouseMoveEventToSubframe):
2064 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2065 (WebCore::EventHandler::accessKeyModifiers):
2066 * page/haiku/FrameHaiku.cpp: Added.
2067 (WebCore::Frame::dragImageForSelection):
2069 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2071 Reviewed by Eric Seidel.
2073 Added Haiku-specific files for WebCore/editing/.
2074 https://bugs.webkit.org/show_bug.cgi?id=26949
2076 Adding one new file, EditorHaiku.cpp
2078 * editing/haiku/EditorHaiku.cpp: Added.
2079 (WebCore::Editor::newGeneralClipboard):
2081 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2083 Reviewed by Eric Seidel.
2085 Added Haiku-specific files for WebCore/bindings/js/.
2086 https://bugs.webkit.org/show_bug.cgi?id=26949
2088 Adding a new file, ScriptControllerHaiku.cpp
2090 * bindings/js/ScriptControllerHaiku.cpp: Added.
2091 (WebCore::ScriptController::createScriptInstanceForWidget):
2093 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2095 Reviewed by Eric Seidel.
2097 Added Haiku-specific files for WebCore/platform/text/.
2098 https://bugs.webkit.org/show_bug.cgi?id=26949
2100 Adding two new files, StringHaiku.cpp
2101 and TextBreakIteratorInternalICUHaiku.cpp
2103 * platform/text/haiku/StringHaiku.cpp: Added.
2104 (WebCore::String::String):
2105 (WebCore::String::operator BString):
2106 * platform/text/haiku/TextBreakIteratorInternalICUHaiku.cpp: Added.
2107 (WebCore::currentTextBreakLocaleID):
2109 2009-07-16 Kent Tamura <tkent@chromium.org>
2111 Reviewed by Eric Seidel.
2113 Sends the basename of a selected file for non-multipart form submission.
2114 <https://bugs.webkit.org/show_bug.cgi?id=26505>
2116 Test: fast/forms/get-file-upload.html
2118 * html/HTMLInputElement.cpp:
2119 (WebCore::HTMLInputElement::appendFormData):
2121 2009-07-16 Adam Barth <abarth@webkit.org>
2123 Reviewed by David Levin.
2125 [V8] Centralize hidden property names
2126 https://bugs.webkit.org/show_bug.cgi?id=27359
2128 No behavior change. Just moving these names to a central location.
2129 I'll move the rest of our hidden property names as I sweep though the
2133 * bindings/v8/V8HiddenPropertyName.cpp: Added.
2134 (WebCore::V8HiddenPropertyName::objectPrototype):
2135 (WebCore::V8HiddenPropertyName::isolatedWorld):
2136 * bindings/v8/V8HiddenPropertyName.h: Added.
2137 * bindings/v8/V8IsolatedWorld.cpp:
2138 (WebCore::V8IsolatedWorld::V8IsolatedWorld):
2139 (WebCore::V8IsolatedWorld::getEntered):
2140 * bindings/v8/V8Proxy.cpp:
2141 (WebCore::V8Proxy::getHiddenObjectPrototype):
2142 (WebCore::V8Proxy::installHiddenObjectPrototype):
2144 2009-07-16 Dan Bernstein <mitz@apple.com>
2146 Reviewed by Simon Fraser.
2148 REGRESSION (r41238) Repainted portion of a scaled image does not line up with full image
2149 https://bugs.webkit.org/show_bug.cgi?id=26747
2150 rdar://problem/7009243
2152 Test: fast/repaint/background-misaligned.html
2154 * platform/graphics/Image.cpp:
2155 (WebCore::Image::drawTiled): Moved a variable definition closer to where
2157 * platform/graphics/cg/ImageCG.cpp:
2158 (WebCore::BitmapImage::draw): In the subimage code path, compute a
2159 pixel-aligned source rect, because the subiamge is always pixel-aligned
2160 in source space, and adjust the destination rect to preserve the
2161 source -> destination mapping. Clip to the (original) destination rect
2162 to prevent bleeding out.
2164 2009-07-16 Jeremy Orlow <jorlow@chromium.org>
2166 Reviewed by Adam Barth.
2168 Add a sessionStorageEnabled setting to the settings class.
2169 https://bugs.webkit.org/show_bug.cgi?id=27318
2171 Allow LocalStorage to be enabled without enabling SessionStorage at
2172 runtime. There is a settings class setting for localStorage, but not
2173 for sessionStorage. We want to be able to test one of these features
2174 without necessarily enabling the other.
2176 SessionStorage defaults to true so as to not change behavior and
2177 because there really aren't any security concerns around SessionStorage
2178 (unlike LocalsStorage). The flag is needed in Chromium only because
2179 we want to enable the compile time flag in the default build, but don't
2180 want it on by default until it's been thoroughly tested.
2182 * page/DOMWindow.cpp:
2183 (WebCore::DOMWindow::sessionStorage): Check the new flag
2184 (WebCore::DOMWindow::localStorage): A bit of cleanup
2185 * page/Settings.cpp:
2186 (WebCore::Settings::Settings): Default the flag to true
2187 (WebCore::Settings::setSessionStorageEnabled): Add the new flag
2189 (WebCore::Settings::sessionStorageEnabled): Get the new flag
2191 2009-07-16 Adam Barth <abarth@webkit.org>
2195 Revert 45987. Tests did not pass on Windows.
2197 * html/HTMLInputElement.cpp:
2198 (WebCore::HTMLInputElement::appendFormData):
2200 2009-07-16 Drew Wilson <atwilson@google.com>
2202 Reviewed by David Levin.
2204 Added SHARED_WORKER flag to Windows build files, as well as associated .ccp/.h files.
2205 Added missing V8 bindings to the AllInOne file
2207 https://bugs.webkit.org/show_bug.cgi?id=27321
2209 * WebCore.vcproj/WebCore.vcproj:
2210 Added missing files to build.
2211 * bindings/v8/DerivedSourcesAllInOne.cpp:
2212 Added missing V8 bindings (V8AbstractWorker.cpp and V8SharedWorker.cpp)
2213 * DerivedSources.cpp
2214 Added missing JS bindings (JSAbstractWorker.cpp and JSSharedWorker.cpp)
2216 2009-07-16 John Abd-El-Malek <jam@chromium.org>
2218 Reviewed by David Levin.
2220 Add a getter in MessagePortChannel for the PlatformMessagePortChannel.
2222 https://bugs.webkit.org/show_bug.cgi?id=27337
2224 * dom/MessagePortChannel.h:
2225 (WebCore::MessagePortChannel::channel):
2227 2009-07-16 Xiaomei Ji <xji@chromium.org>
2229 Reviewed by Darin Adler.
2231 Fix tooltip does not get its directionality from its element's directionality.
2232 https://bugs.webkit.org/show_bug.cgi?id=24187
2234 Per mitz's suggestion in comment #6, while getting the plain-text
2235 title, we also get the directionality of the title. How to handle
2236 the directionality is up to clients. Clients could ignore it,
2237 or use attribute or unicode control characters to display the title
2240 WARNING: NO TEST CASES ADDED OR CHANGED
2242 * WebCore.base.exp: Replace 2 names due to signature change.
2243 * loader/EmptyClients.h:
2244 (WebCore::EmptyChromeClient::setToolTip): Add direction as 2nd parameter.
2246 (WebCore::Chrome::setToolTip): Calculate tooltip direction as well and pass it to client to take care when display tooltip.
2247 * page/ChromeClient.h: Add direction as 2nd parameter to pure virtual function setToolTip().
2248 * page/chromium/ChromeClientChromium.h:
2249 (WebCore::ChromeClientChromium::setToolTip): Add setToolTip()
2250 temprarily to make chromium compile after pick up this webkit patch.
2251 * rendering/HitTestResult.cpp:
2252 (WebCore::HitTestResult::spellingToolTip): Besides getting the
2253 spelling tooltip, get its directionality as well.
2254 (WebCore::HitTestResult::title): Besides getting the title,
2255 get its directionality as well.
2256 * rendering/HitTestResult.h: Add 2 more methods.
2258 2009-07-16 Shinichiro Hamaji <hamaji@chromium.org>
2260 Reviewed by Oliver Hunt.
2262 [CAIRO] pattern of a canvas-element changes after modifications on canvas-element
2263 https://bugs.webkit.org/show_bug.cgi?id=20578
2265 Copy pixel image in ImageBuffer::image() just like CG and Skia glue.
2267 Test: fast/canvas/canvas-pattern-modify.html
2269 * platform/graphics/cairo/ImageBufferCairo.cpp:
2271 (WebCore::ImageBuffer::image):
2273 2009-07-16 David Hyatt <hyatt@apple.com>
2275 Reviewed by Beth Dakin.
2277 https://bugs.webkit.org/show_bug.cgi?id=27353
2278 Images mispositioned because of bug in percentage-based relative positioning.
2280 Added fast/css/nested-floating-relative-position-percentages.html
2282 * rendering/RenderBoxModelObject.cpp:
2283 (WebCore::RenderBoxModelObject::relativePositionOffsetX):
2285 2009-07-16 Kent Tamura <tkent@chromium.org>
2287 Reviewed by Eric Seidel.
2289 Sends the basename of a selected file for non-multipart form submission.
2290 <https://bugs.webkit.org/show_bug.cgi?id=26505>
2292 Test: fast/forms/get-file-upload.html
2294 * html/HTMLInputElement.cpp:
2295 (WebCore::HTMLInputElement::appendFormData):
2297 2009-07-16 Simon Fraser <simon.fraser@apple.com>
2299 Reviewed by Darin Adler.
2301 Video size sometimes jumps just after the video starts loading
2302 https://bugs.webkit.org/show_bug.cgi?id=27352
2304 Ensure that the media player is at or after the 'HaveMetadata' state so that
2305 the instrinsic size is known before we create the layer for video. This avoids
2306 a flash caused by computing the video rect using the default intrinsic size, and then
2307 re-computing it when that size changes.
2309 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2310 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2311 (WebCore::MediaPlayerPrivate::isReadyForRendering):
2312 (WebCore::MediaPlayerPrivate::updateStates):
2313 (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering):
2315 2009-07-16 Brady Eidson <beidson@apple.com>
2317 Reviewed by Antti Koivisto.
2318 Patch by Brady Eidson and Alexey Proskuryakov.
2320 https://bugs.webkit.org/show_bug.cgi?id=26496
2321 <rdar://problem/7065391> Microsoft Outlook Web Access fails because XHR stream connection blocks script loading/revalidation
2323 After refreshing a page and when all CachedResources on that page are in validation mode, they got an exemption
2324 from the connection-per-host limit. Removing that exemption makes the test case load smoothly after reloads.
2326 * loader/loader.cpp:
2327 (WebCore::Loader::Host::servePendingRequests): Remove the resourceIsCacheValidator exemption to the connection-per-host limit.
2329 2009-07-16 Adam Barth <abarth@webkit.org>
2331 Reviewed by Dimitri Glazkov.
2333 [V8] V8IsolatedWorld::evaluate needs to call didCreateIsolatedScriptContext
2334 https://bugs.webkit.org/show_bug.cgi?id=27335
2336 evaluateInNewContext makes this delegate call. evaluateInNewWorld
2337 needs to make the same call. This does not appear to be testable with
2338 our current technology.
2340 * bindings/v8/V8IsolatedWorld.cpp:
2341 (WebCore::V8IsolatedWorld::evaluate):
2343 2009-07-15 Jakub Wieczorek <faw217@gmail.com>
2345 Reviewed by Simon Hausmann.
2347 Fix a typo: application/atom=xml -> application/atom+xml.
2349 * dom/ProcessingInstruction.cpp:
2350 (WebCore::ProcessingInstruction::checkStyleSheet):
2352 2009-07-16 Dean McNamee <deanm@chromium.org>
2354 Reviewed by Oliver Hunt.
2356 https://bugs.webkit.org/show_bug.cgi?id=27292
2357 Improve handling of <canvas> path operations on an empty path.
2358 Implement Skia's Path::hasCurrentPoint().
2360 * html/CanvasRenderingContext2D.cpp:
2361 (WebCore::CanvasRenderingContext2D::lineTo):
2362 (WebCore::CanvasRenderingContext2D::quadraticCurveTo):
2363 (WebCore::CanvasRenderingContext2D::bezierCurveTo):
2364 * platform/graphics/skia/PathSkia.cpp:
2365 (WebCore::Path::hasCurrentPoint):
2367 2009-07-15 Shinichiro Hamaji <hamaji@chromium.org>
2369 Reviewed by Eric Seidel.
2371 Setting white-space and word-wrap via CSS in textarea doesn't override the wrap attribute
2372 https://bugs.webkit.org/show_bug.cgi?id=26254
2374 Make it so that setting white-space and word-wrap via CSS
2375 overrides the wrap attribute.
2377 This involves having the shadow div in the textarea inherit
2378 the CSS from its parent instead of hard-coding it in
2379 RenderTextControlMultiline.
2381 Committer note: Earlier I reverted this change because I did it incorrectly
2382 by leaving out css/html.css. In the patch, the filename was the old name
2383 css/html4.css and that led to my error.
2386 * html/HTMLTextAreaElement.cpp:
2387 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
2388 * rendering/RenderTextControlMultiLine.cpp:
2389 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
2391 2009-07-15 James Hawkins <jhawkins@google.com>
2393 Reviewed by Adam Barth.
2395 [V8] Remove a local variable that is shadowing a function parameter.
2396 https://bugs.webkit.org/show_bug.cgi?id=27309
2398 No test required as this modification does not change the current behavior.
2400 * bindings/v8/V8DOMWrapper.cpp:
2401 (WebCore::V8DOMWrapper::instantiateV8Object):
2403 2009-07-15 Adam Langley <agl@google.com>
2405 No review: reverting previous change.
2409 2009-07-15 Dumitru Daniliuc <dumi@chromium.org>
2410 Reviewed by Dimitri Glazkov.
2412 Adding the Win SQLite VFS implementation for Chromium.
2414 https://bugs.webkit.org/show_bug.cgi?id=26940
2417 The Chromium side of this patch was landed in 20839, but broke the build. It
2418 was reverted in r20840. Thus, I'm reverting this side of the patch too.
2421 * platform/chromium/ChromiumBridge.h:
2422 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Removed.
2423 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Removed.
2425 2009-07-15 David Levin <levin@chromium.org>
2427 Layout test fix, reverting previous change.
2429 Reverting r45962 as it caused several layout test failures.
2431 * html/HTMLTextAreaElement.cpp:
2432 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
2433 * rendering/RenderTextControlMultiLine.cpp:
2434 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
2436 2009-06-08 Shinichiro Hamaji <hamaji@chromium.org>
2438 Reviewed by Eric Seidel.
2440 Setting white-space and word-wrap via CSS in textarea doesn't override the wrap attribute
2441 https://bugs.webkit.org/show_bug.cgi?id=26254
2443 Make it so that setting white-space and word-wrap via CSS
2444 overrides the wrap attribute.
2446 This involves having the shadow div in the textarea inherit
2447 the CSS from its parent instead of hard-coding it in
2448 RenderTextControlMultiline.
2451 * html/HTMLTextAreaElement.cpp:
2452 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
2453 * rendering/RenderTextControlMultiLine.cpp:
2454 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
2456 2009-07-15 Dumitru Daniliuc <dumi@chromium.org>
2458 Reviewed by Dimitri Glazkov.
2460 Adding the Win SQLite VFS implementation for Chromium.
2462 https://bugs.webkit.org/show_bug.cgi?id=26940
2464 * platform/chromium/ChromiumBridge.h:
2465 * platform/sql/chromium: Added.
2466 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Added.
2467 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Added.
2469 2009-07-15 Jian Li <jianli@chromium.org>
2471 Reviewed by David Levin.
2473 Bug 25151 - workers that fail to load scripts not firing error event.
2474 https://bugs.webkit.org/show_bug.cgi?id=25151
2476 This fixes the problem that an error event is not fired when the worker
2477 script fails to load. Some reasons this may occur are an invalid URL for
2478 the worker script or a cross-origin redirect.
2480 We also moves the code to complete the URL and check its origin from
2481 Worker constructor to WorkerScriptLoader loading functions in order to
2482 move the exception throwing logic out of the scope of Worker constructor.
2483 Due to this change, we also remove the output ExceptionCode parameter
2484 in the worker constructor. Corresponding JS/V8 binding codes have been
2485 updated to reflect this change.
2487 * bindings/js/JSWorkerConstructor.cpp:
2488 (WebCore::constructWorker):
2489 * bindings/v8/custom/V8WorkerCustom.cpp:
2490 (WebCore::CALLBACK_FUNC_DECL):
2491 * workers/Worker.cpp:
2492 (WebCore::Worker::Worker):
2493 (WebCore::Worker::notifyFinished):
2495 (WebCore::Worker::create):
2496 * workers/WorkerContext.cpp:
2497 (WebCore::WorkerContext::importScripts):
2498 * workers/WorkerScriptLoader.cpp:
2499 (WebCore::toCrossOriginRedirectPolicy):
2500 (WebCore::WorkerScriptLoader::loadSynchronously):
2501 (WebCore::WorkerScriptLoader::loadAsynchronously):
2502 (WebCore::notifyLoadErrorTask):
2503 (WebCore::WorkerScriptLoader::createResourceRequest):
2504 (WebCore::WorkerScriptLoader::didFail):
2505 (WebCore::WorkerScriptLoader::didFailRedirectCheck):
2506 (WebCore::WorkerScriptLoader::didReceiveAuthenticationCancellation):
2507 (WebCore::WorkerScriptLoader::notifyError):
2508 * workers/WorkerScriptLoader.h:
2510 (WebCore::WorkerScriptLoader::url):
2512 2009-07-15 Dan Bernstein <mitz@apple.com>
2514 Reviewed by Dave Hyatt.
2516 text-shadow is not drawn for text with transparent colour
2517 https://bugs.webkit.org/show_bug.cgi?id=21374
2519 Test: fast/text/shadow-translucent-fill.html
2521 * rendering/InlineTextBox.cpp:
2522 (WebCore::paintTextWithShadows): If the text fill color is not opaque,
2523 paint all shadows separately from the text, by casting them from
2524 clipped-out opaque text.
2526 2009-07-15 Adam Treat <adam.treat@torchmobile.com>
2530 * html/HTMLAreaElement.cpp:
2532 2009-07-15 Jeremy Orlow <jorlow@chromium.org>
2534 Reviewed by Darin Fisher.
2536 Cleanup DOM Storage dependencies.
2537 https://bugs.webkit.org/show_bug.cgi?id=27180
2539 DOM Storage had several unnecessary (and probably unintended)
2540 dependencies. This patch replaces many includes of header files with
2541 forward declaration of classes, making some destructors explicit, and
2542 taking some factories out of the header files.
2544 This will allow things like StorageAreaSync to take a StorageAreaImpl*
2545 (as it should) rather than a StorageArea* which previously weren't
2546 possible because the dependencies were such a tangled mess.
2548 * storage/LocalStorageTask.cpp:
2549 (WebCore::LocalStorageTask::~LocalStorageTask):
2550 * storage/LocalStorageTask.h:
2551 * storage/Storage.cpp:
2552 (WebCore::Storage::~Storage):
2553 * storage/Storage.h:
2554 * storage/StorageArea.cpp:
2555 * storage/StorageArea.h:
2556 * storage/StorageAreaImpl.cpp:
2557 * storage/StorageAreaImpl.h:
2558 * storage/StorageAreaSync.cpp:
2559 (WebCore::StorageAreaSync::~StorageAreaSync):
2560 * storage/StorageAreaSync.h:
2561 * storage/StorageEvent.cpp:
2562 (WebCore::StorageEvent::create):
2563 (WebCore::StorageEvent::StorageEvent):
2564 * storage/StorageEvent.h:
2565 * storage/StorageNamespace.h:
2566 * storage/StorageNamespaceImpl.cpp:
2567 * storage/StorageNamespaceImpl.h:
2568 * storage/StorageSyncManager.cpp:
2569 (WebCore::StorageSyncManager::~StorageSyncManager):
2570 * storage/StorageSyncManager.h:
2572 2009-07-15 Chris Marrin <cmarrin@apple.com>
2574 Reviewed by Simon Fraser.
2576 Incorrect animation when trying to duplicate effect of transform-origin
2577 https://bugs.webkit.org/show_bug.cgi?id=27310
2579 The bug is that matrix animation is being used when animating
2580 a list of transform functions that match in the from and to states.
2581 This sometimes works. But because of the way CA does matrix animation
2582 function lists like the one shown in the testcase animate incorrectly.
2584 This fixes the bug by always doing component animation
2585 as long as the function lists match. This allows CA
2586 to animate the components and then recompose the result
2587 into the correct matrix.
2589 Test: animations/transform-origin-vs-functions.html
2591 * platform/graphics/mac/GraphicsLayerCA.mm:
2592 (WebCore::GraphicsLayerCA::animateTransform):
2594 2009-07-15 Albert J. Wong <ajwong@chromium.org>
2596 Reviewed by David Levin.
2598 Upstream the V8NPObject and NPV8Object build changes for WebCore.gypi.
2600 Add upstreamed V8 bindings files into WebCore.gypi so they can be seen
2602 https://bugs.webkit.org/show_bug.cgi?id=27274
2604 Changes the build file for chromium. Test built the chromium tree
2609 2009-07-15 Mark Rowe <mrowe@apple.com>
2611 I like it when the code compiles.
2615 2009-07-15 Darin Adler <darin@apple.com>
2617 Reviewed by Sam Weinig.
2619 Renamed parseURL to deprecatedParseURL.
2621 * bindings/js/JSAttrCustom.cpp:
2622 (WebCore::JSAttr::setValue): Renamed.
2623 * bindings/js/JSElementCustom.cpp:
2624 (WebCore::allowSettingSrcToJavascriptURL): Renamed.
2625 * bindings/js/JSHTMLFrameElementCustom.cpp:
2626 (WebCore::allowSettingJavascriptURL): Renamed.
2627 * bindings/js/JSHTMLIFrameElementCustom.cpp:
2628 (WebCore::JSHTMLIFrameElement::setSrc): Renamed.
2629 * bindings/objc/DOM.mm:
2630 (-[DOMElement _getURLAttribute:]): Renamed.
2631 * bindings/objc/DOMHTML.mm:
2632 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): Renamed.
2633 * bindings/v8/custom/V8CustomBinding.cpp:
2634 (WebCore::allowSettingFrameSrcToJavascriptUrl): Renamed.
2635 * css/CSSHelper.cpp:
2636 (WebCore::deprecatedParseURL): Renamed.
2637 * css/CSSHelper.h: Renamed and updated comment.
2638 * html/HTMLAnchorElement.cpp:
2639 (WebCore::HTMLAnchorElement::defaultEventHandler): Renamed.
2640 (WebCore::HTMLAnchorElement::parseMappedAttribute): Renamed.
2641 * html/HTMLBaseElement.cpp:
2642 (WebCore::HTMLBaseElement::parseMappedAttribute): Renamed.
2643 * html/HTMLBodyElement.cpp:
2644 (WebCore::HTMLBodyElement::parseMappedAttribute): Renamed.
2645 * html/HTMLEmbedElement.cpp:
2646 (WebCore::HTMLEmbedElement::parseMappedAttribute): Renamed.
2647 * html/HTMLFormElement.cpp:
2648 (WebCore::HTMLFormElement::parseMappedAttribute): Renamed.
2649 * html/HTMLFrameElementBase.cpp:
2650 (WebCore::HTMLFrameElementBase::parseMappedAttribute): Renamed.
2651 * html/HTMLImageElement.cpp:
2652 (WebCore::HTMLImageElement::parseMappedAttribute): Renamed.
2653 * html/HTMLImageLoader.cpp:
2654 (WebCore::HTMLImageLoader::sourceURI): Renamed.
2655 * html/HTMLLinkElement.cpp:
2656 (WebCore::HTMLLinkElement::parseMappedAttribute): Renamed.
2657 * html/HTMLObjectElement.cpp:
2658 (WebCore::HTMLObjectElement::parseMappedAttribute): Renamed.
2659 * html/HTMLTableElement.cpp:
2660 (WebCore::HTMLTableElement::parseMappedAttribute): Renamed.
2661 * html/HTMLTablePartElement.cpp:
2662 (WebCore::HTMLTablePartElement::parseMappedAttribute): Renamed.
2663 * html/HTMLTokenizer.cpp:
2664 (WebCore::HTMLTokenizer::parseTag): Renamed.
2665 * html/PreloadScanner.cpp:
2666 (WebCore::PreloadScanner::processAttribute): Renamed.
2667 (WebCore::PreloadScanner::emitCSSRule): Renamed.
2668 * platform/chromium/ClipboardChromium.cpp:
2669 (WebCore::ClipboardChromium::declareAndWriteDragImage): Renamed.
2670 * platform/chromium/PasteboardChromium.cpp:
2671 (WebCore::Pasteboard::writeImage): Renamed.
2672 * platform/qt/ClipboardQt.cpp:
2673 (WebCore::ClipboardQt::declareAndWriteDragImage): Renamed.
2674 * platform/win/ClipboardWin.cpp:
2675 (WebCore::ClipboardWin::declareAndWriteDragImage): Renamed.
2676 * rendering/HitTestResult.cpp:
2677 (WebCore::HitTestResult::absoluteImageURL): Renamed.
2678 (WebCore::HitTestResult::absoluteMediaURL): Renamed.
2679 (WebCore::HitTestResult::absoluteLinkURL): Renamed.
2680 * svg/SVGAElement.cpp:
2681 (WebCore::SVGAElement::defaultEventHandler): Renamed.
2682 * svg/SVGImageLoader.cpp:
2683 (WebCore::SVGImageLoader::sourceURI): Renamed.
2684 * wml/WMLAElement.cpp:
2685 (WebCore::WMLAElement::defaultEventHandler): Renamed.
2686 * wml/WMLImageLoader.cpp:
2687 (WebCore::WMLImageLoader::sourceURI): Renamed.
2689 2009-07-15 Darin Adler <darin@apple.com>
2691 Reviewed by Dan Bernstein.
2693 CSSHelper.h's parseURL is a function that no one should ever call
2694 Part 1: Eliminate callers in the CSS parser.
2695 https://bugs.webkit.org/show_bug.cgi?id=26599
2697 Test: fast/css/uri-token-parsing.html
2699 * css/CSSHelper.h: Added a comment explaining why nobody should ever call this
2700 function. A FIXME suggests a next step, which would be to rename it deprecatedParseURL.
2702 * css/CSSParser.cpp:
2703 (WebCore::CSSParser::parseValue): Removed unneeded call to parseURL;
2704 CSSParser::text already takes care of parsing the URI token syntax, and the
2705 parseURL function does no good.
2706 (WebCore::CSSParser::parseContent): Ditto.
2707 (WebCore::CSSParser::parseFillImage): Ditto.
2708 (WebCore::CSSParser::parseFontFaceSrc): Ditto.
2709 (WebCore::CSSParser::parseBorderImage): Ditto.
2710 (WebCore::isCSSWhitespace): Added. Helper function that makes the text function
2712 (WebCore::CSSParser::text): Tweak logic so that leading and trailing whitespace
2713 are both trimmed before removing the quote marks. Changed to use the
2714 isCSSWhitespace, isASCIIHexDigit, and toASCIIHexValue functions for clarity.
2716 * css/CSSParser.h: Removed stray "public:" in this header.
2718 * platform/text/StringImpl.cpp:
2719 (WebCore::StringImpl::substring): Optimized the case where the substring covers
2720 the entire string, so we just share the StringImpl instead of making a new one.
2721 This case came up in earlier versions of the CSS parser changes above.
2722 (WebCore::StringImpl::substringCopy): Streamlined the logic here and made it
2723 not call substring any more. Before, this was relying on the substring function
2724 always making a copy of any non-empty substring.
2726 2009-07-15 Darin Adler <darin@apple.com>
2728 Reviewed by John Sullivan.
2730 After double-clicking a word, using Shift-arrow to select behaves unpredictably
2731 https://bugs.webkit.org/show_bug.cgi?id=27177
2732 rdar://problem/7034324
2734 Test: editing/selection/extend-selection-after-double-click.html
2736 The bug was due to the m_lastChangeWasHorizontalExtension flag, which was not
2737 being cleared in many cases where it should have been.
2739 * editing/SelectionController.cpp:
2740 (WebCore::SelectionController::setSelection): Set m_lastChangeWasHorizontalExtension
2741 to false. This catches all sorts of cases that don't flow through the modify function.
2742 Before, the flag would reflect the last call to the modify function, which was not
2743 necessarily the last selection change.
2744 (WebCore::SelectionController::willBeModified): Rearrange function for clarity.
2745 Remove code that sets m_lastChangeWasHorizontalExtension; that is now handled elsewhere.
2746 (WebCore::SelectionController::modify): Call setLastChangeWasHorizontalExtension after
2747 setSelection when setting up a trial selection controller, since setSelection now
2748 clears that flag. Also changed both trial selection controller cases to set the flag,
2749 although it's not strictly necessary in both cases. Added code to set
2750 m_lastChangeWasHorizontalExtension when extending the selection, which used to be
2751 handled in willBeModified. Now we need to do it after the selection change.
2753 2009-07-15 Jeremy Orlow <jorlow@chromium.org>
2755 Reviewed by Dimitri Glazkov.
2757 Need to update DOM Storage files in GYPI file.
2758 https://bugs.webkit.org/show_bug.cgi?id=27317
2760 Need to update DOM Storage files in the GYPI file. They're pretty out
2761 of date and we're on the path towards enabling them for everyone!
2765 2009-07-15 Kwang Yul Seo <skyul@company100.net>
2767 Reviewed by Eric Seidel.
2769 https://bugs.webkit.org/show_bug.cgi?id=26794
2770 Make Yacc-generated parsers to use fastMalloc/fastFree.
2772 Define YYMALLOC and YYFREE to fastMalloc and fastFree
2776 * xml/XPathGrammar.y:
2778 2009-07-15 David Hyatt <hyatt@apple.com>
2780 Reviewed by Adam Roben.
2782 https://bugs.webkit.org/show_bug.cgi?id=27193
2783 Don't run in to anonymous blocks. No other browsers do this, and our implementation of run-in
2784 is effectively broken as a result.
2786 No new tests. Changed fast/runin/001.html and fast/runin/generated.html to match new behavior.
2788 * rendering/RenderBlock.cpp:
2789 (WebCore::RenderBlock::handleRunInChild):
2791 2009-07-15 Yuzo Fujishima <yuzo@google.com>
2793 Reviewed by Darin Adler.
2795 Test: fast/js/instanceof-operator.html
2797 Fix for: Bug 25205 - XMLHttpRequest instance is not an instanceof XMLHttpRequest
2798 https://bugs.webkit.org/show_bug.cgi?id=25205
2800 In addition to for XMLHttpRequest, this also fixes for:
2810 * bindings/js/JSAudioConstructor.cpp:
2811 (WebCore::JSAudioConstructor::JSAudioConstructor):
2812 * bindings/js/JSAudioConstructor.h:
2813 * bindings/js/JSDOMBinding.h:
2814 (WebCore::DOMConstructorObject::createStructure):
2815 (WebCore::DOMConstructorObject::DOMConstructorObject):
2816 * bindings/js/JSImageConstructor.cpp:
2817 (WebCore::JSImageConstructor::JSImageConstructor):
2818 * bindings/js/JSImageConstructor.h:
2819 * bindings/js/JSMessageChannelConstructor.cpp:
2820 (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
2821 * bindings/js/JSMessageChannelConstructor.h:
2822 * bindings/js/JSOptionConstructor.cpp:
2823 (WebCore::JSOptionConstructor::JSOptionConstructor):
2824 * bindings/js/JSOptionConstructor.h:
2825 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
2826 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
2827 * bindings/js/JSWebKitCSSMatrixConstructor.h:
2828 * bindings/js/JSWebKitPointConstructor.cpp:
2829 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
2830 * bindings/js/JSWebKitPointConstructor.h:
2831 * bindings/js/JSWorkerConstructor.cpp:
2832 (WebCore::JSWorkerConstructor::JSWorkerConstructor):
2833 * bindings/js/JSWorkerConstructor.h:
2834 * bindings/js/JSXMLHttpRequestConstructor.cpp:
2835 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
2836 * bindings/js/JSXMLHttpRequestConstructor.h:
2837 * bindings/js/JSXSLTProcessorConstructor.cpp:
2838 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
2839 * bindings/js/JSXSLTProcessorConstructor.h:
2841 2009-07-15 Kai Br�ning <kai@granus.net>
2843 Reviewed by Dave Hyatt.
2845 CSS21 attribute selectors not dynamic for xml.
2846 https://bugs.webkit.org/show_bug.cgi?id=25072
2848 Moved the relevant test in StyledElement::attributeChanged()
2849 to a new function Element::recalcStyleIfNeededAfterAttributeChanged()
2850 so it can be called from both StyledElement::attributeChanged()
2851 and Element::attributeChanged().
2852 Refactored Element::attributeChanged() into
2853 Element::updateAfterAttributeChanged() and
2854 Element::recalcStyleIfNeededAfterAttributeChanged(), which are called
2855 separately from StyledElement::attributeChanged().
2857 Test: fast/css/attribute-selector-dynamic.xml
2860 (WebCore::Element::attributeChanged):
2861 (WebCore::Element::updateAfterAttributeChanged):
2862 (WebCore::Element::recalcStyleIfNeededAfterAttributeChanged):
2864 * dom/StyledElement.cpp:
2865 (WebCore::StyledElement::attributeChanged):
2867 2009-07-15 Alpha Lam <hclam@chromium.org>
2869 Reviewed by David Levin.
2871 [V8] Layout test failures for drawImage in Canvas
2872 https://bugs.webkit.org/show_bug.cgi?id=27311
2874 Fixing several canvas layout tests failures due to a
2875 missing return statement in CanvasRenderingContext2DDrawImage() which
2876 was accidentally removed in r45929.
2878 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
2880 2009-07-15 Robert Hogan <robert@roberthogan.net>
2882 Reviewed by Eric Seidel.
2884 https://bugs.webkit.org/show_bug.cgi?id=26969
2886 If the httpMethod() of the request passed to SubresourceLoader::create is not
2887 supported by the client we must expect to call didFail() while m_loader is still null.
2889 * loader/DocumentThreadableLoader.cpp:
2890 (DocumentThreadableLoader::didFail):Changed.
2892 2009-07-15 Mark Rowe <mrowe@apple.com>
2897 * css/MediaQueryEvaluator.cpp:
2898 * rendering/SVGRenderTreeAsText.cpp:
2899 * rendering/style/SVGRenderStyle.cpp:
2900 * svg/graphics/SVGPaintServer.cpp:
2902 2009-07-07 Alpha Lam <hclam@chromium.org>
2904 Reviewed by Dimitri Glazkov.
2906 [V8] drawImage method of HTMLCanvasElement to accept HTMLVideoElement as argument
2907 https://bugs.webkit.org/show_bug.cgi?id=27170
2909 Changed CanvasRenderingContext2DDrawImage() to accept HTMLVideoElement
2910 as a parameter of drawImage() for HTMLCanvasElement.
2912 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
2914 2009-07-15 Adam Barth <abarth@webkit.org>
2916 Reviewed by Dimitri Glazkov.
2918 [V8] Fix isolated world constructors
2919 https://bugs.webkit.org/show_bug.cgi?id=27287
2921 Don't enter V8Proxy::m_context before creating DOM constructors.
2922 Instead, use getWrapperContext to get the right context.
2924 After this patch, all my tests pass. I'll enable the feature
2925 downstream and land the tests.
2927 * bindings/scripts/CodeGeneratorV8.pm:
2928 * bindings/v8/V8DOMWrapper.cpp:
2929 (WebCore::V8DOMWrapper::getConstructor):
2930 (WebCore::V8DOMWrapper::lookupDOMWrapper):
2931 * bindings/v8/V8DOMWrapper.h:
2932 * bindings/v8/V8IsolatedWorld.cpp:
2933 (WebCore::V8IsolatedWorld::evaluate):
2934 * bindings/v8/V8Proxy.cpp:
2935 (WebCore::V8Proxy::createWrapperFromCache):
2936 (WebCore::V8Proxy::isContextInitialized):
2937 (WebCore::V8Proxy::disposeContextHandles):
2938 (WebCore::V8Proxy::installDOMWindow):
2939 (WebCore::V8Proxy::initContextIfNeeded):
2940 (WebCore::V8Proxy::getHiddenObjectPrototype):
2941 (WebCore::V8Proxy::installHiddenObjectPrototype):
2942 * bindings/v8/V8Proxy.h:
2944 2009-07-15 Antonio Gomes <antonio.gomes@openbossa.org>
2946 Reviewed by Darin Adler.
2948 useless null-check statement in visible_units.cpp@logicalStartOfLine
2949 https://bugs.webkit.org/show_bug.cgi?id=27154
2953 * editing/visible_units.cpp:
2954 (WebCore::logicalStartOfLine): Doubled honorEditableBoundaryAtOrAfter() call removed.
2956 2009-07-15 Brady Eidson <beidson@apple.com>
2958 Reviewed by Dan Bernstein.
2960 https://bugs.webkit.org/show_bug.cgi?id=27304
2961 WebKit should provide usage and eligibility information about the page cache.
2965 * history/CachedFrame.cpp:
2966 (WebCore::CachedFrame::childFrameCount):
2967 * history/CachedFrame.h:
2969 * history/PageCache.cpp:
2970 (WebCore::PageCache::frameCount):
2971 (WebCore::PageCache::autoreleasedPageCount):
2972 * history/PageCache.h:
2973 (WebCore::PageCache::pageCount):
2975 2009-07-15 Shinichiro Hamaji <hamaji@chromium.org>
2977 Reviewed by David Levin.
2979 Chromium's canvas forgets its context after fillText again
2980 https://bugs.webkit.org/show_bug.cgi?id=27293
2982 No new tests because the test for this was already added in
2983 https://bugs.webkit.org/show_bug.cgi?id=26436
2985 * platform/graphics/chromium/TransparencyWin.cpp:
2986 (WebCore::TransparencyWin::compositeTextComposite):
2988 2009-07-14 David Hyatt <hyatt@apple.com>
2990 Reviewed by Simon Fraser.
2992 https://bugs.webkit.org/show_bug.cgi?id=27283
2994 Implement the new 'rem' unit from CSS3.
2996 Added some rem-* tests in fast/css.
2999 * css/CSSParser.cpp:
3000 (WebCore::CSSParser::validUnit):
3001 (WebCore::unitFromString):
3002 (WebCore::CSSParser::parseValue):
3003 (WebCore::CSSParser::lex):
3004 * css/CSSParserValues.cpp:
3005 (WebCore::CSSParserValue::createCSSValue):
3006 * css/CSSPrimitiveValue.cpp:
3007 (WebCore::CSSPrimitiveValue::computeLengthInt):
3008 (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
3009 (WebCore::CSSPrimitiveValue::computeLengthShort):
3010 (WebCore::CSSPrimitiveValue::computeLengthFloat):
3011 (WebCore::CSSPrimitiveValue::computeLengthDouble):
3012 (WebCore::CSSPrimitiveValue::cssText):
3013 (WebCore::CSSPrimitiveValue::parserValue):
3014 * css/CSSPrimitiveValue.h:
3015 (WebCore::CSSPrimitiveValue::):
3016 (WebCore::CSSPrimitiveValue::isUnitTypeLength):
3017 * css/CSSStyleSelector.cpp:
3018 (WebCore::CSSStyleSelector::initForStyleResolve):
3019 (WebCore::convertToLength):
3020 (WebCore::CSSStyleSelector::applyProperty):
3021 (WebCore::CSSStyleSelector::mapFillSize):
3022 (WebCore::CSSStyleSelector::mapFillXPosition):
3023 (WebCore::CSSStyleSelector::mapFillYPosition):
3024 (WebCore::CSSStyleSelector::createTransformOperations):
3025 * css/CSSStyleSelector.h:
3026 * css/MediaQueryEvaluator.cpp:
3027 (WebCore::device_heightMediaFeatureEval):
3028 (WebCore::device_widthMediaFeatureEval):
3029 (WebCore::heightMediaFeatureEval):
3030 (WebCore::widthMediaFeatureEval):
3031 * css/WebKitCSSMatrix.cpp:
3032 (WebCore::WebKitCSSMatrix::setMatrixValue):
3033 * css/tokenizer.flex:
3035 (WebCore::Document::Document):
3037 (WebCore::Document::usesRemUnits):
3038 (WebCore::Document::setUsesRemUnits):
3040 (WebCore::Element::recalcStyle):
3041 * rendering/SVGRenderTreeAsText.cpp:
3042 (WebCore::writeStyle):
3043 * rendering/style/SVGRenderStyle.cpp:
3044 (WebCore::SVGRenderStyle::cssPrimitiveToLength):
3045 * svg/graphics/SVGPaintServer.cpp:
3046 (WebCore::applyStrokeStyleToContext):
3047 (WebCore::dashArrayFromRenderingStyle):
3048 * svg/graphics/SVGPaintServer.h:
3050 2009-07-15 Dimitri Glazkov <dglazkov@chromium.org>
3052 Unreviewed, build fix.
3054 Remove extraneous qualifier, accidentally added in http://trac.webkit.org/changeset/45884.
3056 * bindings/v8/V8DOMWrapper.h: Removed extraneous qualifier.
3058 2009-07-15 Dimitri Glazkov <dglazkov@chromium.org>
3060 Reviewed by Darin Fisher.
3062 [V8] Update bindings for ValiditeState patch.
3063 https://bugs.webkit.org/show_bug.cgi?id=19562
3065 * bindings/v8/DOMObjectsInclude.h:
3066 * bindings/v8/DerivedSourcesAllInOne.cpp:
3067 * bindings/v8/V8Index.cpp:
3068 * bindings/v8/V8Index.h:
3070 2009-07-15 Laszlo Gombos <laszlo.1.gombos@nokia.com>
3072 Reviewed by Simon Hausmann.
3074 [Qt] Cleanup - Remove obsolete code from the make system
3075 https://bugs.webkit.org/show_bug.cgi?id=27299
3079 2009-07-15 Simon Hausmann <simon.hausmann@nokia.com>
3081 Reviewed by Ariya Hidayat.
3083 Fix the build without media elements.
3085 * rendering/HitTestResult.cpp:
3086 (WebCore::HitTestResult::absoluteMediaURL): Add #if ENABLE(VIDEO)
3087 markers around the body of the method.
3089 2009-07-14 Pavel Feldman <pfeldman@chromium.org>
3091 Reviewed by Timothy Hatcher.
3093 WebInspector: Move storeLastActivePanel out of the
3094 ifdef ENABLE_JAVASCRIPT_DEBUGGER section in IDL;
3095 Add default panel for the first opening of the
3098 https://bugs.webkit.org/show_bug.cgi?id=27263
3100 * inspector/InspectorController.cpp:
3101 (InspectorController::setWindowVisible):
3102 * inspector/InspectorController.idl:
3104 2009-07-14 Darin Adler <darin@apple.com>
3106 Try to fix Windows build.
3108 * bindings/scripts/CodeGeneratorCOM.pm: Add Reflect and ReflectURL support.
3110 2009-07-14 Pierre d'Herbemont <pdherbemont@apple.com>
3112 Reviewed by Oliver Hunt.
3114 HTMLMediaElement::supportsFullscreen() should return false
3115 https://bugs.webkit.org/show_bug.cgi?id=27284
3117 (Reverting a part of 45875)
3119 HTMLVideoElement::supportsFullscreen() will properly do the
3120 job, and check if the backend supports fullscreen.
3122 HTMLVideoElement is the only subclass to support fullscreen
3123 (conditionnaly). HTMLAudioElement fullscreen is not supported
3124 and is a different kind of fullscreen, if it comes to be wanted.
3126 No test can be done currently given that none of the media
3127 backends support fullscreen.
3129 * html/HTMLMediaElement.cpp:
3130 * html/HTMLMediaElement.h:
3131 (WebCore::HTMLMediaElement::supportsFullscreen):
3133 2009-07-14 Darin Adler <darin@apple.com>
3135 Reviewed by Dimitri Glazkov.
3137 Next step in making DOM attribute getter/setters consistently use AtomicString
3138 https://bugs.webkit.org/show_bug.cgi?id=25425
3140 This covers eight DOM classes, and for each one of the classes:
3142 - Changes the IDL to use the Reflect syntax for all simple cases.
3143 - Removes unused functions in the classes, mainly newly unused ones that were
3144 used for reflection before.
3145 - Removes unneeded explicitly defined destructors.
3146 - Explicitly declares destructors as virtual.
3147 - Removes unneeded includes.
3148 - Makes members protected or private rather than public where possible.
3149 - Renames "doc" to "document".
3150 - Tweaks formatting to match our latest style in a few places.
3151 - Improves some FIXME comments.
3153 Over time we'll want to do this for all HTML DOM classes.
3155 * html/HTMLAnchorElement.cpp:
3156 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
3157 * html/HTMLAnchorElement.h:
3158 (WebCore::HTMLAnchorElement::endTagRequirement):
3159 (WebCore::HTMLAnchorElement::tagPriority):
3160 * html/HTMLAnchorElement.idl:
3161 * html/HTMLAppletElement.cpp:
3162 * html/HTMLAppletElement.h:
3163 * html/HTMLAppletElement.idl:
3164 * html/HTMLAreaElement.cpp:
3165 (WebCore::HTMLAreaElement::parseMappedAttribute):
3166 * html/HTMLAreaElement.h:
3167 (WebCore::HTMLAreaElement::endTagRequirement):
3168 (WebCore::HTMLAreaElement::tagPriority):
3169 * html/HTMLAreaElement.idl:
3170 * html/HTMLBRElement.cpp:
3171 (WebCore::HTMLBRElement::parseMappedAttribute):
3172 * html/HTMLBRElement.h:
3173 * html/HTMLBRElement.idl:
3174 * html/HTMLBaseElement.cpp:
3175 (WebCore::HTMLBaseElement::HTMLBaseElement):
3176 (WebCore::HTMLBaseElement::removedFromDocument):
3177 (WebCore::HTMLBaseElement::process):
3178 * html/HTMLBaseElement.h:
3179 * html/HTMLBaseElement.idl:
3180 * html/HTMLBaseFontElement.cpp:
3181 (WebCore::HTMLBaseFontElement::HTMLBaseFontElement):
3182 * html/HTMLBaseFontElement.h:
3183 (WebCore::HTMLBaseFontElement::endTagRequirement):
3184 (WebCore::HTMLBaseFontElement::tagPriority):
3185 * html/HTMLBaseFontElement.idl:
3186 * html/HTMLBlockquoteElement.cpp:
3187 (WebCore::HTMLBlockquoteElement::HTMLBlockquoteElement):
3188 * html/HTMLBlockquoteElement.h:
3189 (WebCore::HTMLBlockquoteElement::tagPriority):
3190 * html/HTMLBlockquoteElement.idl:
3191 * html/HTMLBodyElement.cpp:
3192 (WebCore::HTMLBodyElement::HTMLBodyElement):
3193 (WebCore::HTMLBodyElement::addSubresourceAttributeURLs):
3194 * html/HTMLBodyElement.h:
3195 (WebCore::HTMLBodyElement::endTagRequirement):
3196 (WebCore::HTMLBodyElement::tagPriority):
3197 * html/HTMLBodyElement.idl:
3198 Made changes as described above.
3200 * loader/FrameLoader.cpp: Removed unneeded include of HTMLAnchorElement.h.
3202 2009-07-14 Steve Falkenburg <sfalken@apple.com>
3204 Reorganize JavaScriptCore headers into:
3205 API: include/JavaScriptCore/
3206 Private: include/private/JavaScriptCore/
3208 Reviewed by Darin Adler.
3210 * WebCore.vcproj/QTMovieWin.vcproj:
3211 * WebCore.vcproj/WebCoreCommon.vsprops:
3212 * WebCore.vcproj/build-generated-files.sh:
3214 2009-07-14 Zoltan Horvath <hzoltan@inf.u-szeged.hu>
3216 Reviewed by Darin Adler.
3218 Change all Noncopyable inheriting visibility to public.
3219 https://bugs.webkit.org/show_bug.cgi?id=27225
3221 Change all Noncopyable inheriting visibility to public because
3222 it is needed to the custom allocation framework (bug #20422).
3224 * bindings/js/GCController.h:
3225 * bindings/js/WorkerScriptController.h:
3226 * bindings/v8/V8DOMMap.cpp:
3229 * css/CSSSelector.h:
3230 * css/CSSSelectorList.h:
3231 * css/CSSStyleSelector.h:
3233 * dom/MessagePortChannel.h:
3234 * dom/XMLTokenizerLibxml2.cpp:
3235 * dom/XMLTokenizerScope.h:
3236 * editing/ReplaceSelectionCommand.cpp:
3237 * editing/SelectionController.h:
3238 * editing/TextIterator.cpp:
3239 * history/PageCache.h:
3240 * html/CanvasRenderingContext2D.h:
3241 * html/HTMLParser.h:
3242 * html/HTMLParserQuirks.h:
3243 * html/PreloadScanner.h:
3245 * loader/CrossOriginPreflightResultCache.h:
3246 * loader/FrameLoader.h:
3247 * loader/ProgressTracker.h:
3248 * loader/ThreadableLoader.h:
3249 * loader/appcache/ApplicationCacheGroup.h:
3250 * loader/archive/ArchiveResourceCollection.h:
3251 * loader/icon/IconDatabase.h:
3252 * loader/icon/IconLoader.h:
3253 * loader/icon/PageURLRecord.h:
3255 * page/ContextMenuController.h:
3256 * page/EventHandler.h:
3260 * page/PageGroupLoadDeferrer.h:
3261 * page/mac/EventHandlerMac.mm:
3262 * platform/AutodrainedPool.h:
3263 * platform/ContextMenu.h:
3264 * platform/EventLoop.h:
3265 * platform/HostWindow.h:
3266 * platform/Pasteboard.h:
3267 * platform/PurgeableBuffer.h:
3268 * platform/RunLoopTimer.h:
3269 * platform/ThreadGlobalData.h:
3270 * platform/ThreadTimers.h:
3272 * platform/TreeShared.h:
3273 * platform/graphics/FontData.h:
3274 * platform/graphics/GlyphWidthMap.h:
3275 * platform/graphics/GraphicsContext.h:
3276 * platform/graphics/ImageBuffer.h:
3277 * platform/graphics/ImageSource.h:
3278 * platform/graphics/MediaPlayer.h:
3279 * platform/graphics/skia/GraphicsContextPlatformPrivate.h:
3280 * platform/graphics/skia/PlatformContextSkia.h:
3281 * platform/graphics/win/QTMovieWin.cpp:
3282 * platform/mac/LocalCurrentGraphicsContext.h:
3283 * platform/network/FormDataBuilder.h:
3284 * platform/network/ResourceHandleInternal.h:
3285 * platform/network/soup/ResourceHandleSoup.cpp:
3286 * platform/text/StringBuffer.h:
3287 * platform/text/TextCodec.h:
3288 * platform/win/WindowMessageBroadcaster.h:
3289 * rendering/CounterNode.h:
3290 * rendering/LayoutState.h:
3291 * rendering/RenderFrameSet.h:
3292 * rendering/RenderView.h:
3293 * rendering/TransformState.h:
3294 * svg/SVGAnimatedProperty.h:
3295 * svg/SynchronizableTypeWrapper.h:
3296 * workers/WorkerMessagingProxy.h:
3297 * workers/WorkerRunLoop.cpp:
3298 * xml/XPathExpressionNode.h:
3299 * xml/XPathParser.h:
3300 * xml/XPathPredicate.h:
3303 2009-07-14 Darin Fisher <darin@chromium.org>
3305 Reviewed by Darin Adler.
3307 Fails to save document state when navigating away from a page with a
3309 https://bugs.webkit.org/show_bug.cgi?id=27281
3311 Test: fast/history/saves-state-after-fragment-nav.html
3313 * history/HistoryItem.cpp:
3314 (WebCore::HistoryItem::isCurrentDocument): Use equalIgnoringRef
3317 2009-07-14 Joseph Pecoraro <joepeck02@gmail.com>
3319 Reviewed by Sam Weinig.
3321 Inspector: Remove Unintended Global Variables
3322 https://bugs.webkit.org/show_bug.cgi?id=27203
3324 * inspector/front-end/Console.js:
3325 (WebInspector.Console.prototype._ensureCommandLineAPIInstalled):
3326 * inspector/front-end/DatabasesPanel.js:
3327 (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
3328 * inspector/front-end/ObjectPropertiesSection.js:
3329 (WebInspector.ObjectPropertyTreeElement.prototype.update):
3330 * inspector/front-end/inspector.js:
3331 (WebInspector.animateStyle):
3333 2009-07-14 Michelangelo De Simone <micdesim@gmail.com>
3335 Reviewed by Adele Peterson.
3337 https://bugs.webkit.org/show_bug.cgi?id=19562
3338 Added build stuff and stub for the ValidityState class, part of HTML5
3340 http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#validitystate
3342 Test: fast/forms/ValidityState-001.html
3344 * DerivedSources.cpp: Inclusion of ValidityState files
3345 * DerivedSources.make: ditto
3346 * GNUmakefile.am: ditto
3347 * WebCore.gypi: ditto
3348 * WebCore.pro: ditto
3349 * WebCore.vcproj/WebCore.vcproj: ditto
3350 * WebCore.xcodeproj/project.pbxproj: ditto
3351 * WebCoreSources.bkl: ditto
3352 * html/HTMLButtonElement.idl: validity attribute
3353 * html/HTMLFieldSetElement.idl: ditto
3354 * html/HTMLFormControlElement.cpp:
3355 (WebCore::HTMLFormControlElement::validity): ValidityState getter
3356 * html/HTMLFormControlElement.h: ditto
3357 * html/HTMLInputElement.idl: validity attribute
3358 * html/HTMLSelectElement.idl: ditto
3359 * html/HTMLTextAreaElement.idl: ditto
3360 * html/ValidityState.cpp: Added.
3361 (WebCore::ValidityState::ValidityState):
3362 (WebCore::ValidityState::valid): validation flag
3363 * html/ValidityState.h: Added.
3364 (WebCore::ValidityState::create): validation flag
3365 (WebCore::ValidityState::control): ditto
3366 (WebCore::ValidityState::valueMissing): ditto
3367 (WebCore::ValidityState::typeMismatch): ditto
3368 (WebCore::ValidityState::patternMismatch): ditto
3369 (WebCore::ValidityState::tooLong): ditto
3370 (WebCore::ValidityState::rangeUnderflow): ditto
3371 (WebCore::ValidityState::rangeOverflow): ditto
3372 (WebCore::ValidityState::stepMismatch): ditto
3373 (WebCore::ValidityState::customError): ditto
3374 * html/ValidityState.idl: Added.
3376 2009-07-14 Ryosuke Niwa <rniwa@google.com>
3378 Reviewed by Eric Seidel.
3380 Outdenting a line inside a blockquote tag does nothing
3381 https://bugs.webkit.org/show_bug.cgi?id=25316
3383 The bug was caused by the code checking whether the blockquote is created by WebKit or not.
3384 We simply remove this code to be consistent with Firefox and Internet Explorer.
3385 Also, enclosingBlockFlow == enclosingNode in outdentParagraph isn't a sufficient condition to insert
3386 the placeholder before the enclosingNode because there could be contents before the current paragraph.
3387 Instead, we should split the enclosingNode (which is a blockquote) at the starting position of outdentation.
3388 It turned out that this solves the bug 25315 also: https://bugs.webkit.org/show_bug.cgi?id=25315
3390 Test: editing/execCommand/outdent-regular-blockquote.html
3392 * editing/IndentOutdentCommand.cpp:
3393 (WebCore::isIndentBlockquote): no longer checks whether a blockquote is created by WebKit or not.
3394 (WebCore::IndentOutdentCommand::outdentParagraph): takes care of the case enclosingBlockFlow == enclosingNode
3396 2009-07-14 Adam Barth <abarth@webkit.org>
3398 Reviewed by Dimitri Glazkov.
3400 [V8] Fix isolated world wrappers for Node prototypes
3401 https://bugs.webkit.org/show_bug.cgi?id=27277
3403 This change does two things:
3405 1) We bypass the wrapper cache in the isolated world. This is because
3406 the wrapper template cache has prototypes that lead to the main
3407 world. We can add a template cache for the isolated world if
3408 performance warrants.
3410 2) We introduce a smarter way to grab the wrapper context for a frame
3411 that is aware that proxy <-> context do not stand in one-to-one
3412 correspondence. This generalizes our solution for the node wrapper
3415 The net result is that Node wrappers get the right prototypes. As
3416 before, tests to follow.
3418 * bindings/v8/V8DOMWrapper.cpp:
3419 (WebCore::V8DOMWrapper::setHiddenWindowReference):
3420 (WebCore::V8DOMWrapper::instantiateV8Object):
3421 (WebCore::V8DOMWrapper::convertNodeToV8Object):
3422 (WebCore::V8DOMWrapper::convertWindowToV8Object):
3423 (WebCore::V8DOMWrapper::getWrapperContext):
3424 * bindings/v8/V8DOMWrapper.h:
3426 2009-07-14 Adam Barth <abarth@webkit.org>
3428 Reviewed by Dimitri Glazkov.
3430 [V8] Fix isolated world wrappers for Nodes
3431 https://bugs.webkit.org/show_bug.cgi?id=27271
3433 Previously, we keepy a pointer to the DOMMap on V8Proxy, but this
3434 caused us to miss the branch in V8DOMMap.cpp for isolated worlds.
3436 I have tests, but I can't land them until I get this feature under
3439 * bindings/v8/V8DOMWrapper.cpp:
3440 (WebCore::V8DOMWrapper::convertNodeToV8Object):
3441 * bindings/v8/V8Proxy.h:
3442 (WebCore::V8Proxy::V8Proxy):
3444 2009-07-14 Adam Barth <abarth@webkit.org>
3446 Reviewed by Dimitri Glazkov.
3448 [V8] Fix isolated world crash on getting window.location
3449 https://bugs.webkit.org/show_bug.cgi?id=27268
3451 I have a test for this locally, but it requires a compile-time hack to
3452 run. Once I get the feature's stability under control, we can turn the
3453 feature on and add the tests.
3455 * bindings/v8/V8DOMWrapper.cpp:
3456 (WebCore::V8DOMWrapper::setHiddenWindowReference):
3457 * bindings/v8/V8IsolatedWorld.h:
3458 (WebCore::V8IsolatedWorld::context):
3460 2009-07-14 Brent Fulgham <bfulgham@webkit.org>
3462 Correct failing tests after r45875. The original patch did not
3463 test the m_player member for null, causing crashes. This will
3464 happen fairly frequently in real use. Was this original patch
3466 https://bugs.webkit.org/show_bug.cgi?id=27246
3468 Test via existing media tests.
3470 * html/HTMLMediaElement.cpp:
3471 (WebCore::HTMLMediaElement::supportsFullscreen): Check for null pointer.
3472 (WebCore::HTMLMediaElement::supportsSave): Check for null pointer.
3474 2009-07-14 Avi Drissman <avi@chromium.org>
3476 Reviewed by Darin Fisher.
3478 Explicitly mark the HTML generated for the Mac as being UTF-8 encoded.
3479 The Windows clipboard format is explicitly documented as being UTF-8,
3480 and all Linux apps assume UTF-8. On the Mac, though, unless otherwise
3481 indicated, Windows-1252 is assumed, which is wrong.
3483 Bug: https://bugs.webkit.org/show_bug.cgi?id=27262
3487 * platform/chromium/ClipboardChromium.cpp:
3488 (WebCore::ClipboardChromium::writeRange):
3489 * platform/chromium/PasteboardChromium.cpp:
3490 (WebCore::Pasteboard::writeSelection):
3492 2009-07-14 Albert J. Wong <ajwong@chromium.org>
3494 Reviewed by Dimitri Glazkov.
3496 Upstream V8NPObject.h and V8NPObject.cpp.
3497 https://bugs.webkit.org/show_bug.cgi?id=27103
3499 This just upstreams the files from the chromium code base. Only
3500 minor changes to formatting and similar were done, so no testing
3501 is required because nothing really changed. Code verified to compile.
3503 * bindings/v8/ScriptController.cpp:
3504 (WebCore::ScriptController::bindToWindowObject):
3505 (WebCore::ScriptController::createScriptInstanceForWidget):
3506 * bindings/v8/V8NPObject.cpp: Added.
3507 (npObjectInvokeImpl):
3508 (npObjectMethodHandler):
3509 (npObjectInvokeDefaultHandler):
3510 (weakTemplateCallback):
3511 (npObjectGetProperty):
3512 (npObjectNamedPropertyGetter):
3513 (npObjectIndexedPropertyGetter):
3514 (npObjectGetNamedProperty):
3515 (npObjectGetIndexedProperty):
3516 (npObjectSetProperty):
3517 (npObjectNamedPropertySetter):
3518 (npObjectIndexedPropertySetter):
3519 (npObjectSetNamedProperty):
3520 (npObjectSetIndexedProperty):
3521 (weakNPObjectCallback):
3522 (createV8ObjectForNPObject):
3523 (forgetV8ObjectForNPObject):
3524 * bindings/v8/V8NPObject.h: Added.
3525 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
3526 (WebCore::NAMED_PROPERTY_GETTER):
3527 (WebCore::NAMED_PROPERTY_SETTER):
3528 (WebCore::CALLBACK_FUNC_DECL):
3529 (WebCore::INDEXED_PROPERTY_GETTER):
3530 (WebCore::INDEXED_PROPERTY_SETTER):
3533 2009-07-14 Albert J. Wong <ajwong@chromium.org>
3535 Reviewed by Darin Adler.
3537 Add HTMLMediaElement::supportSave() and a
3538 HitTestResult::absoluteMediaURL() functions
3539 https://bugs.webkit.org/show_bug.cgi?id=27246
3541 Added an implementation of supportsSave() into HTMLMediaElement
3542 that delegates to MediaPlayerPrivateImpl so that the media engine
3543 is able to signal whether or not a media source supports saving.
3545 Also added a function to HitTestResult that allows for retrieval
3546 of the currentSrc associated with the "hit" media element.
3548 These functions are just pipeing with no visible UI change so there
3549 are no related layout test changes.
3551 * html/HTMLMediaElement.cpp:
3552 (WebCore::HTMLMediaElement::supportsFullscreen):
3553 (WebCore::HTMLMediaElement::supportsSave):
3554 * html/HTMLMediaElement.h:
3555 * platform/graphics/MediaPlayer.cpp:
3556 (WebCore::MediaPlayer::supportsSave):
3557 * platform/graphics/MediaPlayer.h:
3558 * platform/graphics/MediaPlayerPrivate.h:
3559 (WebCore::MediaPlayerPrivateInterface::supportsFullscreen):
3560 (WebCore::MediaPlayerPrivateInterface::supportsSave):
3561 * rendering/HitTestResult.cpp:
3562 (WebCore::HitTestResult::altDisplayString):
3563 (WebCore::HitTestResult::absoluteMediaURL):
3564 * rendering/HitTestResult.h:
3566 2009-07-14 Dimitri Glazkov <dglazkov@chromium.org>
3568 Reviewed by Adam Barth.
3570 [V8] Implement Reflect and ReflectURL attribute support.
3571 https://bugs.webkit.org/show_bug.cgi?id=27273
3573 * bindings/scripts/CodeGeneratorV8.pm: Added support for Reflect and ReflectURL attributes.
3575 2009-07-14 Dmitry Titov <dimich@chromium.org>
3577 Reviewed by Darin Adler.
3579 https://bugs.webkit.org/show_bug.cgi?id=27266
3580 Add hasCurrentPoint() to WebCore::Path.
3581 This fixes Skia-based Chromium regression caused by the fix for
3582 https://bugs.webkit.org/show_bug.cgi?id=27187.
3583 For Skia, the new method always returns 'true', pending actual implementation.
3584 This means Chromium still will differ from Gecko behavior, but at least its Canvas
3585 will not be completely broken.
3587 Existing Canvas Layout Tests should pass in Chromium after this change.
3589 * html/CanvasRenderingContext2D.cpp:
3590 (WebCore::CanvasRenderingContext2D::lineTo): insteand of Path::isEmpty() test for hasCurrentPoint().
3591 (WebCore::CanvasRenderingContext2D::quadraticCurveTo): ditto.
3592 (WebCore::CanvasRenderingContext2D::bezierCurveTo): ditto.
3594 * platform/graphics/Path.h:
3595 * platform/graphics/cairo/PathCairo.cpp:
3596 (WebCore::Path::hasCurrentPoint):
3597 * platform/graphics/cg/PathCG.cpp:
3598 (WebCore::Path::isEmpty):
3599 (WebCore::Path::hasCurrentPoint):
3600 * platform/graphics/qt/PathQt.cpp:
3601 (WebCore::Path::hasCurrentPoint):
3602 * platform/graphics/skia/PathSkia.cpp:
3603 (WebCore::Path::hasCurrentPoint):
3604 * platform/graphics/wx/PathWx.cpp:
3605 (WebCore::Path::hasCurrentPoint):
3606 All these files add a Path::hasCurrentPoint() for various platforms.