1 2009-07-21 Yong Li <yong.li@torchmobile.com>
3 Reviewed by George Staikos.
5 https://bugs.webkit.org/show_bug.cgi?id=27509
6 Add font-related files for the WinCE port.
8 Written by Yong Li <yong.li@torchmobile.com>
10 * platform/graphics/wince/FontCacheWince.cpp: Added.
11 * platform/graphics/wince/FontCustomPlatformData.cpp: Added.
12 * platform/graphics/wince/FontCustomPlatformData.h: Added.
13 * platform/graphics/wince/FontPlatformData.cpp: Added.
14 * platform/graphics/wince/FontPlatformData.h: Added.
15 * platform/graphics/wince/FontWince.cpp: Added.
16 * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Added.
17 * platform/graphics/wince/SimpleFontDataWince.cpp: Added.
19 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
21 Fix the Windows build, and update the comment on top now that wx uses WebCorePrefix.h too.
25 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
27 WebCorePrefix.h build fixes for non-Mac and wx / CURL builds.
31 2009-07-21 Eric Seidel <eric@webkit.org>
33 Reviewed by Adam Barth.
35 All DOMConstructorObjects should hold a pointer to the JSDOMGlobalObject
36 https://bugs.webkit.org/show_bug.cgi?id=27478
38 This is just moving code.
39 I've added two new classes: DOMObjectWithGlobalPointer and DOMConstructorWithDocument.
41 DOMObjectWithGlobalPointer is a new baseclass for DOMConstructorObject.
42 (It's a baseclass because eventually all DOMObjects will have a global pointer, but
43 I'll be moving them onto DOMObjectWithGlobalPointer in stages.)
45 DOMConstructorWithDocument is a new baseclass for the 3 constructor objects
46 which require a backpointer to the Document to function. I made this a subclass of
47 DOMConstructorObject to make clear that most constructors can hold no-such assumptions
48 about having a back-pointer to the Document (since many constructors can be used from Workers).
50 * bindings/js/JSAudioConstructor.cpp:
51 (WebCore::JSAudioConstructor::JSAudioConstructor):
52 * bindings/js/JSAudioConstructor.h:
53 * bindings/js/JSDOMBinding.h:
54 (WebCore::DOMObjectWithGlobalPointer::globalObject):
55 (WebCore::DOMObjectWithGlobalPointer::scriptExecutionContext):
56 (WebCore::DOMObjectWithGlobalPointer::DOMObjectWithGlobalPointer):
57 (WebCore::DOMObjectWithGlobalPointer::mark):
58 (WebCore::DOMConstructorObject::DOMConstructorObject):
59 (WebCore::DOMConstructorWithDocument::document):
60 (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
61 * bindings/js/JSImageConstructor.cpp:
62 (WebCore::JSImageConstructor::JSImageConstructor):
63 * bindings/js/JSImageConstructor.h:
64 * bindings/js/JSMessageChannelConstructor.cpp:
65 (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
66 * bindings/js/JSMessageChannelConstructor.h:
67 * bindings/js/JSOptionConstructor.cpp:
68 (WebCore::JSOptionConstructor::JSOptionConstructor):
69 * bindings/js/JSOptionConstructor.h:
70 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
71 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
72 * bindings/js/JSWebKitPointConstructor.cpp:
73 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
74 * bindings/js/JSWorkerConstructor.cpp:
75 (WebCore::JSWorkerConstructor::JSWorkerConstructor):
76 * bindings/js/JSXMLHttpRequestConstructor.cpp:
77 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
78 * bindings/js/JSXMLHttpRequestConstructor.h:
79 * bindings/js/JSXSLTProcessorConstructor.cpp:
80 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
82 2009-07-21 James Hawkins <jhawkins@google.com>
84 Reviewed by David Hyatt.
86 https://bugs.webkit.org/show_bug.cgi?id=27453
87 Initialize isInt when creating a CSSParserValue for a function.
89 No change in behavior, so no tests.
91 * css/CSSFunctionValue.cpp:
92 (WebCore::CSSFunctionValue::parserValue):
94 2009-07-20 Jens Alfke <snej@google.com>
96 Reviewed by David Levin.
98 Bug 27448: [Chromium] On Mac, arrow keys should cause Select to pop up its menu.
99 Mac build of Chromium doesn't follow Mac HI guidelines to pop up the menu when
100 an arrow key is pressed.
101 https://bugs.webkit.org/show_bug.cgi?id=27448
103 No new tests; affects only control response to user input.
105 * dom/SelectElement.cpp:
106 Changed definition of ARROW_KEYS_POP_MENU to make it true in Mac Chromium,
107 so it will behave compatibly with Mac HI guidelines on pop-up menus.
108 It's not possible to have PLATFORM(MAC) be true in the Mac build of Chromium.
110 2009-07-21 Paul Godavari <paul@chromium.org>
112 Reviewed by Eric Seidel.
114 [Chromium] popup menus can crash when the selected index is -1
115 https://bugs.webkit.org/show_bug.cgi?id=27275
117 Crash reports from users indicate a crash can occur when PopupListBox::isSelectableItem
118 is passed an index of less than 0 (which is possible under certain circumstances). This
119 change prevents such a value from causing a crash by enforcing valid index values passed
120 by all callers of isSelectableItem. isSelectableItem is now a private method of
121 PopupListBox, as there are no external callers.
123 Also cleaned up a small amount of code for style and grammar errors.
125 No automatic test is provided since we cannot send events to the child window used by
128 * platform/chromium/PopupMenuChromium.cpp:
129 (WebCore::PopupListBox::acceptIndex):
130 (WebCore::PopupListBox::selectIndex):
131 (WebCore::PopupListBox::isSelectableItem):
132 (WebCore::PopupListBox::selectPreviousRow):
134 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
136 wx build fix. Don't include winsock2.h on wx, it conflicts with wx's inclusion of winsock.
138 * platform/network/curl/ResourceHandleManager.h:
140 2009-07-21 Adam Roben <aroben@apple.com>
142 Roll out r46153, r46154, and r46155
144 These changes were causing build failures and assertion failures on
147 * ForwardingHeaders/wtf/PossiblyNull.h: Removed.
148 * platform/graphics/cg/ImageBufferCG.cpp:
150 2009-07-21 Jian Li <jianli@chromium.org>
152 Reviewed by Eric Seidel.
154 Implement ErrorEvent API.
155 https://bugs.webkit.org/show_bug.cgi?id=27387
157 * DerivedSources.cpp:
158 * DerivedSources.make:
162 * WebCore.vcproj/WebCore.vcproj:
163 * WebCore.xcodeproj/project.pbxproj:
164 * WebCoreSources.bkl:
165 * bindings/js/JSEventCustom.cpp:
167 * dom/ErrorEvent.cpp: Added.
168 * dom/ErrorEvent.h: Added.
169 * dom/ErrorEvent.idl: Added.
171 (WebCore::Event::isErrorEvent):
174 2009-07-21 Priit Laes <plaes@plaes.org>
176 Reviewed by Gustavo Noronha.
178 [Gtk] Searching in thepiratebay.org doesn't work with more than 1 word
179 https://bugs.webkit.org/show_bug.cgi?id=24602
181 Remove workaround required for <=libsoup-2.26.1
183 * platform/network/soup/ResourceHandleSoup.cpp:
184 (WebCore::restartedCallback):
186 2009-07-21 Adam Barth <abarth@webkit.org>
188 Reviewed by David Levin.
190 V8IsolatedWorld keeps a handle to a disposed context
191 https://bugs.webkit.org/show_bug.cgi?id=27397
193 Make a copy of the context handle before making it weak. We don't want
194 to make the original handle weak because we want it to survive for the
195 length of the V8IsolatedWorld::evaluate method.
197 * bindings/v8/V8IsolatedWorld.cpp:
198 (WebCore::V8IsolatedWorld::V8IsolatedWorld):
200 2009-07-21 Pavel Feldman <pfeldman@chromium.org>
202 Reviewed by Timothy Hatcher.
204 Web Inspector: Add ability to evaluate selection while on break point.
206 https://bugs.webkit.org/show_bug.cgi?id=27502
208 * inspector/front-end/SourceFrame.js:
209 (WebInspector.SourceFrame.prototype._loaded):
210 (WebInspector.SourceFrame.prototype._documentKeyDown):
212 2009-07-21 Pavel Feldman <pfeldman@chromium.org>
214 Reviewed by Timothy Hatcher.
216 WebInspector: Special case ConsolePanel opening since
219 https://bugs.webkit.org/show_bug.cgi?id=27493
221 * inspector/InspectorController.cpp:
222 (WebCore::InspectorController::setWindowVisible):
224 2009-07-20 Kenneth Rohde Christiansen <kenneth@webkit.org>
226 Reviewed by Eric Seidel.
228 Fix Qt code to follow the WebKit Coding Style.
230 * platform/graphics/qt/FontQt.cpp:
232 (WebCore::fixSpacing):
233 * platform/graphics/qt/FontQt43.cpp:
234 (WebCore::generateComponents):
235 (WebCore::Font::offsetForPositionForComplexText):
236 (WebCore::cursorToX):
237 * platform/graphics/qt/GradientQt.cpp:
238 (WebCore::Gradient::platformGradient):
239 * platform/graphics/qt/GraphicsContextQt.cpp:
240 (WebCore::toQtFillRule):
241 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
242 (WebCore::GraphicsContext::~GraphicsContext):
243 (WebCore::GraphicsContext::getCTM):
244 (WebCore::GraphicsContext::concatCTM):
245 (WebCore::GraphicsContext::getWindowsContext):
246 * platform/graphics/qt/IconQt.cpp:
247 (WebCore::Icon::paint):
248 * platform/graphics/qt/ImageDecoderQt.cpp:
249 (WebCore::ImageDecoderQt::ReadContext::read):
250 (WebCore::ImageDecoderQt::ReadContext::readImageLines):
251 (WebCore::ImageDecoderQt::setData):
252 * platform/graphics/qt/ImageQt.cpp:
253 (WebCore::Image::drawPattern):
254 (WebCore::BitmapImage::draw):
255 * platform/graphics/qt/ImageSourceQt.cpp:
256 (WebCore::ImageSource::frameDurationAtIndex):
257 (WebCore::ImageSource::frameHasAlphaAtIndex):
258 (WebCore::ImageSource::frameIsCompleteAtIndex):
259 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
260 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
261 (WebCore::MediaPlayerPrivate::create):
262 (WebCore::MediaPlayerPrivate::bytesLoaded):
263 (WebCore::MediaPlayerPrivate::updateStates):
264 * platform/graphics/qt/PathQt.cpp:
265 (WebCore::Path::addArcTo):
266 (WebCore::Path::isEmpty):
267 * platform/graphics/qt/TransformationMatrixQt.cpp:
268 (WebCore::TransformationMatrix::operator QTransform):
269 * platform/qt/ClipboardQt.cpp:
270 (WebCore::ClipboardQt::ClipboardQt):
271 (WebCore::ClipboardQt::clearData):
272 (WebCore::ClipboardQt::clearAllData):
273 (WebCore::ClipboardQt::getData):
274 (WebCore::ClipboardQt::setData):
275 (WebCore::ClipboardQt::setDragImage):
276 (WebCore::getCachedImage):
277 (WebCore::ClipboardQt::declareAndWriteDragImage):
278 (WebCore::ClipboardQt::writeURL):
279 (WebCore::ClipboardQt::writeRange):
280 (WebCore::ClipboardQt::hasData):
281 * platform/qt/ClipboardQt.h:
282 * platform/qt/ContextMenuItemQt.cpp:
283 (WebCore::ContextMenuItem::action):
284 (WebCore::ContextMenuItem::title):
285 * platform/qt/CursorQt.cpp:
286 (WebCore::westPanningCursor):
287 (WebCore::notAllowedCursor):
288 * platform/qt/DragDataQt.cpp:
289 (WebCore::DragData::containsFiles):
290 (WebCore::DragData::asFilenames):
291 (WebCore::DragData::asPlainText):
292 (WebCore::DragData::asFragment):
293 * platform/qt/DragImageQt.cpp:
294 (WebCore::createDragImageIconForCachedImage):
295 * platform/qt/FileSystemQt.cpp:
296 (WebCore::getFileSize):
297 (WebCore::unloadModule):
298 * platform/qt/Localizations.cpp:
299 (WebCore::contextMenuItemTagShowSpellingPanel):
300 * platform/qt/MIMETypeRegistryQt.cpp:
302 * platform/qt/PasteboardQt.cpp:
303 (WebCore::Pasteboard::Pasteboard):
304 (WebCore::Pasteboard::writeSelection):
305 (WebCore::Pasteboard::plainText):
306 * platform/qt/PlatformKeyboardEventQt.cpp:
307 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
308 * platform/qt/PlatformMouseEventQt.cpp:
309 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
310 * platform/qt/PopupMenuQt.cpp:
311 (WebCore::PopupMenu::populate):
312 * platform/qt/RenderThemeQt.cpp:
313 (WebCore::RenderThemeQt::fallbackStyle):
314 (WebCore::inflateButtonRect):
315 (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
316 (WebCore::RenderThemeQt::paintButton):
317 (WebCore::RenderThemeQt::paintMenuList):
318 (WebCore::RenderThemeQt::applyTheme):
319 (WebCore::WorldMatrixTransformer::WorldMatrixTransformer):
320 (WebCore::RenderThemeQt::paintMediaBackground):
321 (WebCore::RenderThemeQt::paintMediaFullscreenButton):
322 * platform/qt/RenderThemeQt.h:
323 * platform/qt/ScreenQt.cpp:
324 (WebCore::screenRect):
325 (WebCore::usableScreenRect):
326 * platform/qt/ScrollbarQt.cpp:
327 (WebCore::Scrollbar::contextMenu):
328 * platform/qt/ScrollbarThemeQt.cpp:
330 (WebCore::scrollbarPart):
331 * platform/qt/ScrollbarThemeQt.h:
332 * platform/qt/SharedBufferQt.cpp:
333 (WebCore::SharedBuffer::createWithContentsOfFile):
334 * platform/qt/TemporaryLinkStubs.cpp:
335 (PluginDatabase::defaultPluginDirectories):
336 (PluginDatabase::getPluginPathsInDirectories):
337 (PluginDatabase::isPreferredPluginDirectory):
338 (WebCore::getSupportedKeySizes):
339 (WebCore::signedPublicKeyAndChallengeString):
340 (WebCore::userIdleTime):
341 (WebCore::prefetchDNS):
342 * platform/text/qt/StringQt.cpp:
343 (WebCore::String::String):
344 * platform/text/qt/TextBoundaries.cpp:
345 * platform/text/qt/TextBreakIteratorQt.cpp:
346 (WebCore::TextBreakIterator::following):
347 (WebCore::TextBreakIterator::preceding):
348 (WebCore::WordBreakIteratorQt::first):
349 (WebCore::WordBreakIteratorQt::next):
350 (WebCore::WordBreakIteratorQt::previous):
351 (WebCore::CharBreakIteratorQt::first):
352 (WebCore::CharBreakIteratorQt::next):
353 (WebCore::CharBreakIteratorQt::previous):
354 (WebCore::characterBreakIterator):
355 * plugins/qt/PluginPackageQt.cpp:
356 (WebCore::PluginPackage::fetchInfo):
357 * plugins/qt/PluginViewQt.cpp:
358 (WebCore::PluginView::userAgentStatic):
359 (WebCore::PluginView::handlePostReadFile):
360 (WebCore::PluginView::init):
362 2009-07-21 Maxime Simon <simon.maxime@gmail.com>
364 Reviewed by David Levin.
366 Added a first bunch of Haiku-specific files for WebCore.
367 https://bugs.webkit.org/show_bug.cgi?id=26988
369 * platform/haiku/ClipboardHaiku.cpp: Added.
370 (WebCore::ClipboardHaiku::ClipboardHaiku):
371 (WebCore::ClipboardHaiku::clearData):
372 (WebCore::ClipboardHaiku::clearAllData):
373 (WebCore::ClipboardHaiku::getData):
374 (WebCore::ClipboardHaiku::setData):
375 (WebCore::ClipboardHaiku::types):
376 (WebCore::ClipboardHaiku::files):
377 (WebCore::ClipboardHaiku::dragLocation):
378 (WebCore::ClipboardHaiku::dragImage):
379 (WebCore::ClipboardHaiku::setDragImage):
380 (WebCore::ClipboardHaiku::dragImageElement):
381 (WebCore::ClipboardHaiku::setDragImageElement):
382 (WebCore::ClipboardHaiku::createDragImage):
383 (WebCore::ClipboardHaiku::declareAndWriteDragImage):
384 (WebCore::ClipboardHaiku::writeURL):
385 (WebCore::ClipboardHaiku::writeRange):
386 (WebCore::ClipboardHaiku::hasData):
387 * platform/haiku/ClipboardHaiku.h: Added.
388 (WebCore::ClipboardHaiku::create):
389 (WebCore::ClipboardHaiku::~ClipboardHaiku):
390 * platform/haiku/CookieJarHaiku.cpp: Added.
391 (WebCore::setCookies):
393 (WebCore::cookiesEnabled):
394 * platform/haiku/CursorHaiku.cpp: Added.
395 (WebCore::Cursor::Cursor):
396 (WebCore::Cursor::~Cursor):
397 (WebCore::Cursor::operator=):
398 (WebCore::pointerCursor):
399 (WebCore::moveCursor):
400 (WebCore::crossCursor):
401 (WebCore::handCursor):
402 (WebCore::iBeamCursor):
403 (WebCore::waitCursor):
404 (WebCore::helpCursor):
405 (WebCore::eastResizeCursor):
406 (WebCore::northResizeCursor):
407 (WebCore::northEastResizeCursor):
408 (WebCore::northWestResizeCursor):
409 (WebCore::southResizeCursor):
410 (WebCore::southEastResizeCursor):
411 (WebCore::southWestResizeCursor):
412 (WebCore::westResizeCursor):
413 (WebCore::northSouthResizeCursor):
414 (WebCore::eastWestResizeCursor):
415 (WebCore::northEastSouthWestResizeCursor):
416 (WebCore::northWestSouthEastResizeCursor):
417 (WebCore::columnResizeCursor):
418 (WebCore::rowResizeCursor):
419 (WebCore::verticalTextCursor):
420 (WebCore::cellCursor):
421 (WebCore::contextMenuCursor):
422 (WebCore::noDropCursor):
423 (WebCore::copyCursor):
424 (WebCore::progressCursor):
425 (WebCore::aliasCursor):
426 (WebCore::noneCursor):
427 (WebCore::notAllowedCursor):
428 (WebCore::zoomInCursor):
429 (WebCore::zoomOutCursor):
430 (WebCore::grabCursor):
431 (WebCore::grabbingCursor):
433 2009-07-21 Albert Astals Cid <aacid@kde.org>
435 Reviewed by Tor Arne Vestbø.
437 Change #error line not to have a ' (single quote)
439 * DerivedSources.cpp:
441 2009-07-21 Roland Steiner <rolandsteiner@google.com>
443 Reviewed by David Levin.
445 Add ENABLE_RUBY to list of build options
446 https://bugs.webkit.org/show_bug.cgi?id=27324
448 Added flag ENABLE_RUBY:
450 * Configurations/FeatureDefines.xcconfig:
451 * DerivedSources.make:
454 * WebCore.vcproj/WebCoreCommon.vsprops:
455 * WebCore.vcproj/build-generated-files.sh:
457 2009-07-21 James Hawkins <jhawkins@google.com>
459 Reviewed by Eric Seidel.
461 https://bugs.webkit.org/show_bug.cgi?id=27467
462 Return an empty path in PlatformContextSkia::currentPathInLocalCoordinates
463 if matrix.invert() fails. This prevents the use of an uninitialized
464 value in inverseMatrix.
466 No new tests added. Run
467 LayoutTests/svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
468 under valgrind and notice there are no errors.
470 * platform/graphics/skia/PlatformContextSkia.cpp:
471 (PlatformContextSkia::currentPathInLocalCoordinates):
473 2009-07-21 Stephen White <senorblanco@chromium.org>
475 Reviewed by Eric Seidel.
477 https://bugs.webkit.org/show_bug.cgi?id=27388
479 Fix dotted and dashed borders on Chromium/skia. This follows
480 the logic in the Cg path, so results are much closer to Safari now
481 (some tests won't be exactly the same due to font layout differences).
483 * platform/graphics/skia/GraphicsContextSkia.cpp:
484 (WebCore::GraphicsContext::drawLine):
485 * platform/graphics/skia/PlatformContextSkia.cpp:
486 (PlatformContextSkia::setupPaintForStroking):
488 2009-07-20 Oliver Hunt <oliver@apple.com>
490 Reviewed by Gavin Barraclough.
492 Make it harder to misuse try* allocation routines
493 https://bugs.webkit.org/show_bug.cgi?id=27469
495 Add forwarding header for PossiblyNull type, and add missing null check
496 to ImageBuffer creation.
498 * ForwardingHeaders/wtf/PossiblyNull.h: Added.
499 * platform/graphics/cg/ImageBufferCG.cpp:
500 (WebCore::ImageBuffer::ImageBuffer):
502 2009-07-20 Adam Langley <agl@google.com>
504 Reviewed by Eric Seidel.
506 Guard access to installedMediaEngines()[0].
508 https://bugs.webkit.org/show_bug.cgi?id=27479
509 http://code.google.com/p/chromium/issues/detail?id=16541
511 Else where in the file, installedMediaEngines is always checked for
512 being empty because access. This patch adds a case which missed that
515 This triggered a crash in Chromium:
516 http://www.yakeze.com/chat/example-chromium-crash/
518 * platform/graphics/MediaPlayer.cpp:
519 (WebCore::MediaPlayer::load):
521 2009-07-20 Adam Langley <agl@google.com>
523 Reviewed by Eric Seidel.
525 Allow search entries to render with a CSS border if the RenderTheme
528 https://bugs.webkit.org/show_bug.cgi?id=27466
529 http://code.google.com/p/chromium/issues/detail?id=16958
531 <input type="search"> is very much like a text entry except that,
532 currently, if the RenderTheme doesn't deal with it, nothing is
533 rendered. With this patch, the default CSS border is rendered if the
534 RenderTheme requests it.
536 This will affect many layout tests, but only for Chromium Linux and
537 those results are not currently in the WebKit tree.
539 * rendering/RenderTheme.cpp:
540 (WebCore::RenderTheme::paintBorderOnly):
542 2009-07-17 Anton Muhin <antonm@chromium.org>
544 Reviewed by Adam Barth.
546 Switch to faster methods to access internal fields.
547 https://bugs.webkit.org/show_bug.cgi?id=27372
551 * bindings/scripts/CodeGeneratorV8.pm:
552 * bindings/v8/V8DOMWrapper.cpp:
553 (WebCore::V8DOMWrapper::convertToSVGPODTypeImpl):
554 (WebCore::V8DOMWrapper::setDOMWrapper):
555 * bindings/v8/V8DOMWrapper.h:
556 (WebCore::V8DOMWrapper::convertDOMWrapperToNative):
557 (WebCore::V8DOMWrapper::convertDOMWrapperToNode):
558 (WebCore::V8DOMWrapper::convertToNativeObject):
559 (WebCore::V8DOMWrapper::convertToNativeEvent):
560 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
561 (WebCore::CALLBACK_FUNC_DECL):
562 * bindings/v8/custom/V8ClipboardCustom.cpp:
563 (WebCore::CALLBACK_FUNC_DECL):
564 * bindings/v8/custom/V8DocumentCustom.cpp:
565 (WebCore::CALLBACK_FUNC_DECL):
566 * bindings/v8/custom/V8ElementCustom.cpp:
567 (WebCore::CALLBACK_FUNC_DECL):
568 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
569 (WebCore::CALLBACK_FUNC_DECL):
570 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
571 (WebCore::CALLBACK_FUNC_DECL):
572 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
573 (WebCore::removeElement):
574 * bindings/v8/custom/V8InspectorControllerCustom.cpp:
575 (WebCore::CALLBACK_FUNC_DECL):
576 * bindings/v8/custom/V8NodeCustom.cpp:
577 (WebCore::CALLBACK_FUNC_DECL):
578 * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
579 (WebCore::CALLBACK_FUNC_DECL):
581 2009-07-20 Adam Langley <agl@google.com>
583 Reviewed by Eric Seidel.
585 Chromium Linux: cache Harfbuzz faces.
587 https://bugs.webkit.org/show_bug.cgi?id=27473
589 Previously, we recreated the Harfbuzz face for each script-run. With
590 this patch, we keep the Harfbuzz face in the FontPlatformData (created
591 as needed) and so they will persist for the duration of the
594 Shouldn't affect any layout tests. Results in a significant win on the
595 intl2 page cycler time.
597 * platform/graphics/chromium/FontLinux.cpp:
598 (WebCore::TextRunWalker::~TextRunWalker):
599 (WebCore::TextRunWalker::setupFontForScriptRun):
600 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
601 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::~RefCountedHarfbuzzFace):
602 (WebCore::FontPlatformData::FontPlatformData):
603 (WebCore::FontPlatformData::harfbuzzFace):
604 * platform/graphics/chromium/FontPlatformDataLinux.h:
605 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::create):
606 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::face):
607 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::RefCountedHarfbuzzFace):
608 * platform/graphics/chromium/HarfbuzzSkia.h: Added.
610 2009-07-20 Ryosuke Niwa <rniwa@webkit.org>
612 Reviewed by Simon Fraser.
614 REGRESSION (r46142): Need to remove showTreeThisForThis
615 https://bugs.webkit.org/show_bug.cgi?id=27475
617 Removes showTreeThisForThis
619 * editing/IndentOutdentCommand.cpp:
620 (WebCore::IndentOutdentCommand::appendParagraphIntoNode):
622 2009-07-19 Ryosuke Niwa <rniwa@webkit.org>
624 Reviewed by Eric Seidel.
626 Refactoring of indentRegion to fix bugs 26816 and 25317
627 https://bugs.webkit.org/show_bug.cgi?id=26816
628 https://bugs.webkit.org/show_bug.cgi?id=25317
629 https://bugs.webkit.org/show_bug.cgi?id=23995 (partially)
631 This patch implements appendParagraphIntoNode, a simpler specialized version of moveParagraph
632 and replaces all calls inside indentRegion. The following is the new behavior of indentRegion.
634 1. We try to indent as many wrapping nodes as possible.
635 e.g. when indenting "hello" in <div>hello</div>, we try to indent div as well.
636 2. We do not delete any wrapping elements
637 With moveParagraph, we used to remove all wrapping nodes, and replaced with a blockquote.
638 This was causing https://bugs.webkit.org/show_bug.cgi?id=23995 for indentation.
639 With appendParagraphIntoNode, we can preserve all wrapping nodes.
640 3. We only split the tree until the closest block node instead of until the root editable node.
641 This behavioral change fixes the bug 25317.
642 4. When multiple paragraphs are indented, we indent the highest common ancestor within the selection.
643 e.g. when a list is a child node of a div, and the entire div is intended,
644 we enclose the div by a single blockquote.
646 Note that new behavior is more consistent with that of Internet Explorer and Firefox.
647 To demonstrate this, the following tests are added.
649 Tests: editing/execCommand/indent-div-inside-list.html
650 editing/execCommand/indent-nested-blockquotes.html
651 editing/execCommand/indent-nested-div.html
652 editing/execCommand/indent-second-paragraph-in-blockquote.html
654 * editing/IndentOutdentCommand.cpp: prepareBlockquoteLevelForInsertion is removed
655 (WebCore::IndentOutdentCommand::tryIndentingAsListItem): uses appendParagraphIntoNode now
656 (WebCore::IndentOutdentCommand::indentIntoBlockquote): uses appendParagraphIntoNode now
657 (WebCore::IndentOutdentCommand::appendParagraphIntoNode): removes a paragraph and appends it to a new node
658 (WebCore::IndentOutdentCommand::removeUnnecessaryLineBreakAt): removes a break element at the specified position
659 (WebCore::IndentOutdentCommand::indentRegion): exhibits the described behavior
660 * editing/IndentOutdentCommand.h: updated prototype
662 2009-07-20 Dan Bernstein <mitz@apple.com>
664 Try to fix release builds after r46136
668 2009-07-17 Pierre d'Herbemont <pdherbemont@apple.com>
670 Reviewed by Eric Seidel.
672 Media Controls: We are specifying the text height, where it is unneeded and the slider is 2px off.
673 https://bugs.webkit.org/show_bug.cgi?id=27380
675 Adjust the margin of the slider and remove useless height specification to fix alignement of the media controls.
677 * css/mediaControlsQT.css:
679 2009-07-20 Peter Kasting <pkasting@google.com>
681 Reviewed by Mark Rowe.
683 https://bugs.webkit.org/show_bug.cgi?id=27468
684 Back out r46060, which caused problems for some Apple developers.
686 * WebCore.vcproj/QTMovieWin.vcproj:
687 * WebCore.vcproj/WebCoreCommon.vsprops:
688 * WebCore.vcproj/WebCoreGenerated.vcproj:
690 2009-07-20 Dan Bernstein <mitz@apple.com>
692 Reviewed by Anders Carlsson.
694 When loading a custom view into a frame, the old document is still
696 <rdar://problem/5145841>
698 Safari fires onload before PDF is loaded into the browser
699 <rdar://problem/6618869>
701 Test: fast/loader/non-html-load-event.html
703 * GNUmakefile.am: Added PlaceholderDocument.{cpp,h}
704 * WebCore.gypi: Ditto.
705 * WebCore.pro: Ditto.
706 * WebCore.vcproj/WebCore.vcproj: Ditto.
707 * WebCore.xcodeproj/project.pbxproj: Ditto.
708 * WebCoreSources.bkl: Ditto.
710 (WebCore::Document::setStyleSelector): Added this protected accessor for
711 PlaceholderDocument to use.
713 (WebCore::Element::clientWidth): Check whether the document has a
715 (WebCore::Element::clientHeight): Ditto.
716 * loader/FrameLoader.cpp:
717 (WebCore::FrameLoader::begin): Create a PlaceholderDocument for frames
718 that do not use an HTML view. Do not nullify the content size in
720 (WebCore::FrameLoader::transitionToCommitted): For frames that do not
721 use an HTML view, call receivedFirstData(), which sets up the
722 frame with a new PlaceHolderDocument.
723 * loader/PlaceholderDocument.cpp: Added.
724 (WebCore::PlaceholderDocument::attach): Sets up the style selector but
725 does not create a RenderView.
726 * loader/PlaceholderDocument.h: Added.
727 (WebCore::PlaceholderDocument::create):
728 (WebCore::PlaceholderDocument::PlaceholderDocument):
730 2009-07-20 Chris Marrin <cmarrin@apple.com>
732 Reviewed by Simon Fraser.
734 Handle opacity and opacity animations on transform layers in Leopard
735 https://bugs.webkit.org/show_bug.cgi?id=27398
737 This makes two changes, and only for Leopard.
739 First, whenever opacity is changed on a layer I propagate the
740 change into the content layer and all the children if the layer
741 on which opacity is set is a transform layer (preserve3D is true).
742 The opacity set is the accumulated opacity from this layer
743 and all its direct ancestor transform layers. Second, I turn off all
744 hardware opacity animation.
746 * platform/graphics/GraphicsLayer.cpp:
747 (WebCore::GraphicsLayer::accumulatedOpacity):
748 (WebCore::GraphicsLayer::distributeOpacity):
749 * platform/graphics/GraphicsLayer.h:
750 (WebCore::GraphicsLayer::setOpacityInternal):
751 * platform/graphics/mac/GraphicsLayerCA.h:
752 * platform/graphics/mac/GraphicsLayerCA.mm:
753 (WebCore::GraphicsLayerCA::setPreserves3D):
754 (WebCore::GraphicsLayerCA::setOpacity):
755 (WebCore::GraphicsLayerCA::animateFloat):
756 (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
757 (WebCore::GraphicsLayerCA::setOpacityInternal):
758 (WebCore::GraphicsLayerCA::updateOpacityOnLayer):
760 2009-07-20 Yong Li <yong.li@torchmobile.com>
762 Reviewed by Adam Roben.
764 https://bugs.webkit.org/show_bug.cgi?id=27349
765 Add GraphicsContext implementation for the WinCE port.
767 Written by Yong Li <yong.li@torchmobile.com>, George Staikos <george.staikos@torchmobile.com> and Lyon Chen <lyon.chen@torchmobile.com>
768 with trivial style fixes by Adam Treat <adam.treat@torchmobile.com>
770 * platform/graphics/wince/GraphicsContextWince.cpp: Added.
772 2009-07-20 Dumitru Daniliuc <dumi@chromium.org>
774 Reviewed by Dimitri Glazkov.
776 Adding the Win SQLite VFS implementation for Chromium, and stubs
777 for the Mac and Linux VFSs.
779 https://bugs.webkit.org/show_bug.cgi?id=26940
782 * platform/chromium/ChromiumBridge.h:
783 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Added.
784 * platform/sql/chromium/SQLiteFileSystemChromiumLinux.cpp: Added.
785 * platform/sql/chromium/SQLiteFileSystemChromiumMac.cpp: Added.
786 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Added.
788 2009-07-20 Xan Lopez <xlopez@igalia.com>
790 Reviewed by Gustavo Noronha.
792 https://bugs.webkit.org/show_bug.cgi?id=27097
793 [Gtk] Segfault when examining an object of ROLE_TABLE via at-spi
795 Check that an object is a RenderObject before trying to access its
796 renderer and related node.
798 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
799 (webkit_accessible_get_role):
801 2009-07-20 Balazs Kelemen <kelemen.balazs.3@stud.u-szeged.hu>
803 Reviewed by Simon Hausmann.
805 [Qt] font cache reworking
806 https://bugs.webkit.org/show_bug.cgi?id=27265
808 Reimplemented Qt's FontCache in a way that follows the shared one.
809 Now we can release its elements when those became inactive.
810 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.
812 No change in behavior, so no tests.
814 * platform/graphics/qt/FontCacheQt.cpp:
815 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
816 (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
817 (WebCore::FontPlatformDataCacheKey::): Key type for the cache of FontPlatformData objects.
818 It can be constructed from a FontPlatformData or from a FontDescription. The keys have to be consistent
819 with FontPlatformData::FontPlatformData(const FontDescription&) - if we create the same
820 FontPlatformData from two FontDescription then we have to create the same key from them, and vica versa.
821 (WebCore::FontPlatformDataCacheKey::operator==):
822 (WebCore::FontPlatformDataCacheKey::hash):
823 (WebCore::FontPlatformDataCacheKey::computeHash):
824 (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize):
825 (WebCore::FontPlatformDataCacheKeyHash::hash):
826 (WebCore::FontPlatformDataCacheKeyHash::equal):
827 (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
828 (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue):
829 (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue):
830 (WebCore::FontCache::getCachedFontPlatformData): Get a FontDescription and returns a FontPlatformData.
831 (WebCore::FontCache::getCachedFontData): Get a FontPlatformData and returns a SimpleFontData.
832 (WebCore::FontCache::releaseFontData): Get a SimpleFontData and releases it from the cache. Also releases the appropriate FontPlatformData.
833 (WebCore::FontCache::purgeInactiveFontData): Frees inactive elements.
834 (WebCore::FontCache::invalidate): Frees all inactive elements (call purgeInactiveFontData with default argument)
835 * platform/graphics/qt/FontFallbackListQt.cpp:
836 (WebCore::FontFallbackList::releaseFontData):
837 (WebCore::FontFallbackList::fontDataAt):
838 * platform/graphics/qt/FontPlatformData.h:
839 (WebCore::FontPlatformData::family): Getter. It is needed for FontPlatformDataCacheKey.
840 (WebCore::FontPlatformData::bold): Ditto.
841 (WebCore::FontPlatformData::italic): Ditto.
842 (WebCore::FontPlatformData::smallCaps): Ditto.
843 (WebCore::FontPlatformData::pixelSize): Ditto.
844 * platform/graphics/qt/FontPlatformDataQt.cpp:
845 (WebCore::FontPlatformData::FontPlatformData): Set m_bold.
847 2009-07-20 Xan Lopez <xlopez@igalia.com>
849 Reviewed by Holger Freyther.
851 https://bugs.webkit.org/show_bug.cgi?id=26716
852 [Gtk] Each XMLHttpRequest leaks memory.
854 Free the SoupURI we create to check the URI. Fix suggested by John
857 * platform/network/soup/ResourceHandleSoup.cpp:
860 2009-07-20 Laszlo Gombos <laszlo.1.gombos@nokia.com>
862 Reviewed by Holger Freyther.
864 [Qt] On Symbian link against system sqlite3
865 https://bugs.webkit.org/show_bug.cgi?id=27368
867 Add an option to force linking against system sqlite3
868 by adding system-sqlite to the CONFIG variable.
870 The Symbian specific part of this patch is contributed by
875 2009-07-20 Xan Lopez <xlopez@igalia.com>
877 Reviewed by Gustavo Noronha.
879 Change the glib version check to check for the first unstable
880 release with g_mapped_file_unref. Otherwise this would be useless
881 until 2.22 is released, a few months from now.
883 * platform/network/soup/ResourceHandleSoup.cpp:
884 (WebCore::ResourceHandle::startHttp):
886 2009-07-20 Simon Hausmann <simon.hausmann@nokia.com>
888 Reviewed by and done with Tor Arne Vestbø.
890 Fix fast/css/pseudo-required-optional-*.html in the Qt build
893 These tests triggered a bug in RenderThemeQt where we did not fall back
894 to the unstyled painting of text areas and input fields when they have
897 Our re-implementation of isControlStyled incorrectly only checked the
898 border for determining whether to style or not. The base-implementation
899 performs the same check, but also includes the background. Removing
900 our implementation fixes the appearance.
902 * platform/qt/RenderThemeQt.cpp: Removed isControlStyled reimplementation.
903 * platform/qt/RenderThemeQt.h: Ditto.
905 2009-07-20 Simon Hausmann <simon.hausmann@nokia.com>
907 Rubber-stamped by Tor Arne Vestbø.
909 Add missing (sorted) header files to the HEADERS variable in the qmake
910 .pro file for improved completion in IDEs.
914 2009-07-19 Adam Barth <abarth@webkit.org>
916 Reviewed by David Levin.
918 [V8] Factor V8ConsoleMessage out of V8Proxy
919 https://bugs.webkit.org/show_bug.cgi?id=27421
924 * bindings/v8/V8ConsoleMessage.cpp: Added.
925 (WebCore::V8ConsoleMessage::V8ConsoleMessage):
926 (WebCore::V8ConsoleMessage::dispatchNow):
927 (WebCore::V8ConsoleMessage::dispatchLater):
928 (WebCore::V8ConsoleMessage::processDelayed):
929 (WebCore::V8ConsoleMessage::handler):
930 * bindings/v8/V8ConsoleMessage.h: Added.
931 (WebCore::V8ConsoleMessage::Scope::Scope):
932 (WebCore::V8ConsoleMessage::Scope::~Scope):
933 * bindings/v8/V8Proxy.cpp:
935 (WebCore::reportUnsafeAccessTo):
936 (WebCore::V8Proxy::runScript):
937 (WebCore::V8Proxy::callFunction):
938 (WebCore::V8Proxy::newInstance):
939 (WebCore::V8Proxy::initContextIfNeeded):
940 (WebCore::V8Proxy::processConsoleMessages):
942 2009-07-19 Rob Buis <rwlbuis@gmail.com>
944 Reviewed by Adam Barth.
946 Remove unused member variable.
948 * svg/SVGPolyElement.h:
950 2009-07-19 Eric Carlson <eric.carlson@apple.com>
952 Reviewed by Dan Bernstein.
954 HTMLAudioElement: constructor should set "autobuffer" attribute
955 https://bugs.webkit.org/show_bug.cgi?id=27422
957 Test: media/audio-constructor-autobuffer.html
959 * bindings/js/JSAudioConstructor.cpp:
960 (WebCore::constructAudio):
961 Set 'autobuffer' attribute.
963 2009-07-19 Thierry Bastian <thierry.bastian@nokia.com>
965 Reviewed by Simon Hausmann.
967 Fix the Qt build with mingw.
969 * WebCore.pro: Don't use MSVC commandline options to disable warnings
972 2009-07-19 Adam Barth <abarth@webkit.org>
974 Reviewed by David Levin.
976 [V8] Phase 2: Remove event listener methods from V8Proxy
977 https://bugs.webkit.org/show_bug.cgi?id=27415
981 * bindings/v8/V8ObjectEventListener.cpp:
982 (WebCore::weakObjectEventListenerCallback):
983 (WebCore::V8ObjectEventListener::~V8ObjectEventListener):
984 * bindings/v8/V8Proxy.cpp:
985 (WebCore::V8Proxy::disconnectEventListeners):
986 * bindings/v8/V8Proxy.h:
987 (WebCore::V8Proxy::eventListeners):
988 (WebCore::V8Proxy::objectListeners):
989 * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
990 (WebCore::getEventListener):
991 * bindings/v8/custom/V8CustomEventListener.cpp:
992 (WebCore::V8EventListener::~V8EventListener):
993 * bindings/v8/custom/V8DOMWindowCustom.cpp:
994 (WebCore::CALLBACK_FUNC_DECL):
995 (WebCore::ACCESSOR_SETTER):
996 * bindings/v8/custom/V8ElementCustom.cpp:
997 (WebCore::ACCESSOR_SETTER):
998 * bindings/v8/custom/V8MessagePortCustom.cpp:
999 (WebCore::ACCESSOR_SETTER):
1000 (WebCore::CALLBACK_FUNC_DECL):
1001 * bindings/v8/custom/V8NodeCustom.cpp:
1002 (WebCore::CALLBACK_FUNC_DECL):
1003 * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
1004 (WebCore::CALLBACK_FUNC_DECL):
1005 * bindings/v8/custom/V8WorkerCustom.cpp:
1006 (WebCore::getEventListener):
1007 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1008 (WebCore::getEventListener):
1009 * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
1010 (WebCore::ACCESSOR_SETTER):
1011 (WebCore::CALLBACK_FUNC_DECL):
1013 2009-07-18 Jan Michael Alonzo <jmalonzo@webkit.org>
1015 Reviewed by Gustavo Noronha.
1017 [Gtk] soup/ResourceHandleSoup.cpp:533: error: 'g_mapped_file_free' was not declared in this scope
1018 https://bugs.webkit.org/show_bug.cgi?id=27230
1020 Use g_mapped_file_unref for GLIB version 2.22 onwards.
1022 * platform/network/soup/ResourceHandleSoup.cpp:
1023 (WebCore::ResourceHandle::startHttp):
1025 2009-07-18 Dan Bernstein <mitz@apple.com>
1027 Reviewed by Anders Carlsson.
1029 Add spread radius support to -webkit-box-shadow
1030 https://bugs.webkit.org/show_bug.cgi?id=27417
1031 rdar://problem/7072267
1033 Test: fast/box-shadow/spread.html
1035 * css/CSSComputedStyleDeclaration.cpp:
1036 (WebCore::valueForShadow): Added a property ID parameter and used it to
1037 include the spread length for box-shadow but not for text-shadow.
1038 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1039 Pass the property ID to valueForShadow().
1041 * css/CSSParser.cpp:
1042 (WebCore::ShadowParseContext::ShadowParseContext): Added property,
1043 spread, and allowSpread members. Added a property ID parameter to
1044 the constructor. Initialize the property and allowSpread members.
1045 (WebCore::ShadowParseContext::allowLength): Added allowSpread.
1046 (WebCore::ShadowParseContext::commitValue): Pass the spread value to
1047 the ShadowValue constructor. Reset allowSpread.
1048 (WebCore::ShadowParseContext::commitLength): Allow spread after blur
1049 for the box-shadow property.
1050 (WebCore::ShadowParseContext::commitColor): Reset allowSpread.
1051 (WebCore::CSSParser::parseShadow): Pass the property ID to
1052 ShadowParseContext().
1054 * css/CSSStyleSelector.cpp:
1055 (WebCore::CSSStyleSelector::applyProperty): Get the spread value from
1056 the shadow value and pass it to the ShadowData constructor.
1058 * css/ShadowValue.cpp:
1059 (WebCore::ShadowValue::ShadowValue): Added spread.
1060 (WebCore::ShadowValue::cssText): Added spread.
1062 * css/ShadowValue.h:
1063 (WebCore::ShadowValue::create): Added spread.
1065 * page/animation/AnimationBase.cpp:
1066 (WebCore::blendFunc): Blend the spread value.
1067 (WebCore::PropertyWrapperShadow::blend): Added 0 spread to the default
1070 * rendering/InlineFlowBox.cpp:
1071 (WebCore::InlineFlowBox::placeBoxesHorizontally): Account for spread in
1072 the visual overflow calculations.
1073 (WebCore::InlineFlowBox::placeBoxesVertically): Ditto.
1074 (WebCore::InlineFlowBox::paint): Ditto.
1076 * rendering/RenderBlock.cpp:
1077 (WebCore::RenderBlock::overflowHeight): Ditto.
1078 (WebCore::RenderBlock::overflowWidth): Ditto.
1079 (WebCore::RenderBlock::overflowLeft): Ditto.
1080 (WebCore::RenderBlock::overflowTop): Ditto.
1081 (WebCore::RenderBlock::overflowRect): Ditto.
1082 (WebCore::RenderBlock::layoutBlock): Ditto.
1084 * rendering/RenderBoxModelObject.cpp:
1085 (WebCore::RenderBoxModelObject::paintBoxShadow): Inflate the shadow-
1086 casting rect by the shadow spread value. Adjust border radii if
1089 * rendering/RenderFlexibleBox.cpp:
1090 (WebCore::RenderFlexibleBox::layoutBlock): Account for spread in the
1091 visual overflow calculations.
1092 * rendering/RenderLayer.cpp:
1093 (WebCore::RenderLayer::calculateRects): Ditto.
1095 * rendering/RenderObject.cpp:
1096 (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Account for spread.
1097 (WebCore::RenderObject::adjustRectForOutlineAndShadow): Ditto.
1099 * rendering/RenderReplaced.cpp:
1100 (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect): Ditto.
1102 * rendering/style/RenderStyle.cpp:
1103 (WebCore::RenderStyle::setTextShadow): Assert that text shadows do not
1106 * rendering/style/ShadowData.cpp:
1107 (WebCore::ShadowData::ShadowData): Added spread.
1108 (WebCore::ShadowData::operator==): Compare spread.
1109 * rendering/style/ShadowData.h:
1110 (WebCore::ShadowData::ShadowData): Added spread.
1112 2009-07-18 Adam Barth <abarth@webkit.org>
1114 Reviewed by Jan Alonzo.
1116 Minor FrameLoader.cpp cleanup
1117 https://bugs.webkit.org/show_bug.cgi?id=27406
1121 * loader/FrameLoader.cpp:
1122 (WebCore::FrameLoader::executeIfJavaScriptURL):
1124 2009-07-18 Adam Barth <abarth@webkit.org>
1126 Reviewed by Darin Fisher.
1128 [V8] Move event listener methods from V8Proxy to V8EventListenerList
1129 https://bugs.webkit.org/show_bug.cgi?id=27408
1131 Move some event listener code out of V8Proxy and into the event
1134 I'd like to remove these methods from V8Proxy entirely and just expose
1135 getters for the lists themselves, but I'll do that in a follow up
1138 * bindings/v8/V8EventListenerList.cpp:
1139 (WebCore::V8EventListenerList::findWrapper):
1140 * bindings/v8/V8EventListenerList.h:
1141 (WebCore::V8EventListenerList::findOrCreateWrapper):
1142 * bindings/v8/V8ObjectEventListener.cpp:
1143 * bindings/v8/V8Proxy.cpp:
1144 (WebCore::V8Proxy::findV8EventListener):
1145 (WebCore::V8Proxy::findOrCreateV8EventListener):
1146 (WebCore::V8Proxy::removeV8EventListener):
1147 (WebCore::V8Proxy::findObjectEventListener):
1148 (WebCore::V8Proxy::findOrCreateObjectEventListener):
1149 (WebCore::V8Proxy::removeObjectEventListener):
1150 * bindings/v8/V8Proxy.h:
1152 2009-07-18 Jeremy Orlow <jorlow@chromium.org>
1154 Rubber stamped by Adam Barth.
1156 Revert https://bugs.webkit.org/show_bug.cgi?id=27383
1157 https://bugs.webkit.org/show_bug.cgi?id=27407
1159 Revert Jens' patch. I believe he forgot to include a file.
1162 * bindings/scripts/CodeGeneratorV8.pm:
1163 * bindings/v8/DOMObjectsInclude.h:
1164 * bindings/v8/V8DOMWrapper.cpp:
1165 (WebCore::V8DOMWrapper::getTemplate):
1166 * bindings/v8/V8DataGridDataSource.cpp: Removed.
1167 * bindings/v8/V8DataGridDataSource.h: Removed.
1168 * bindings/v8/V8GCController.h:
1169 * bindings/v8/V8Index.h:
1170 * bindings/v8/custom/V8CustomBinding.h:
1171 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp:
1172 (WebCore::ACCESSOR_GETTER):
1173 (WebCore::ACCESSOR_SETTER):
1175 2009-07-17 Daniel Bates <dbates@intudata.com>
1177 Reviewed by Adam Barth.
1179 https://bugs.webkit.org/show_bug.cgi?id=27405
1181 Fixes an issue when decoding HTML entities with an unknown named entity that
1182 caused null-characters to be inserted into the decoded result.
1184 Test: http/tests/security/xssAuditor/link-onclick-ampersand.html
1185 http/tests/security/xssAuditor/javascript-link-ampersand.html
1187 * page/XSSAuditor.cpp:
1188 (WebCore::XSSAuditor::decodeHTMLEntities): Added check to conditional so that
1189 non-zero entity values are not inserted during decoding process.
1191 2009-07-17 Jan Michael Alonzo <jmalonzo@webkit.org>
1193 <http://webkit.org/b/18363> [GTK] Combo boxes cannot be opened pressing space
1195 Reviewed by Holger Freyther.
1197 Add Gtk to platforms that want to open the menulist using the
1200 * dom/SelectElement.cpp:
1201 (WebCore::SelectElement::menuListDefaultEventHandler):
1203 2009-07-17 Mario Sanchez Prada <msanchez@igalia.com>
1205 Reviewed by Jan Alonzo.
1207 https://bugs.webkit.org/show_bug.cgi?id=25523
1208 [GTK] The text displayed by push buttons is not exposed to assistive technologies
1210 Add new public method text() to RenderButton and use it from
1211 AccessibilityRenderObject::stringValue().
1213 * accessibility/AccessibilityRenderObject.cpp:
1214 (WebCore::AccessibilityRenderObject::stringValue):
1215 * rendering/RenderButton.cpp:
1216 (WebCore::RenderButton::text):
1217 * rendering/RenderButton.h:
1219 2009-07-17 Anton Muhin <antonm@chromium.org>
1221 Reviewed by Dimitri Glazkov.
1223 Restore proxy retrieval
1224 https://bugs.webkit.org/show_bug.cgi?id=27369
1226 No new tests are needed.
1228 * bindings/v8/V8DOMWrapper.cpp:
1229 (WebCore::V8DOMWrapper::instantiateV8Object):
1231 2009-07-17 Yael Aharon <yael.aharon@nokia.com>
1233 Reviewed by George Staikos.
1235 https://bugs.webkit.org/show_bug.cgi?id=27351
1236 Added platform "Symbian" to WEBCORE_NAVIGATOR_PLATFORM
1237 Use uname to find the correct platform for Linux.
1239 * page/NavigatorBase.cpp:
1240 (WebCore::NavigatorBase::platform):
1242 2009-07-17 Jens Alfke <snej@chromium.org>
1244 Reviewed by Dimitri Glazkov.
1246 Hook up V8 bindings for DataGrid elements.
1247 https://bugs.webkit.org/show_bug.cgi?id=27383
1248 http://code.google.com/p/chromium/issues/detail?id=16730
1250 Tests: Enhanced LayoutTests/fast/dom/HTMLDataGridElement/*
1251 to handle exceptions, check appropriate JS prototypes, and
1252 test column-list's item() method as well as array-indexing.
1254 * WebCore.gypi: Added new source files.
1255 * bindings/scripts/CodeGeneratorV8.pm: Made GenerateBatchedAttributeData put #if's around conditional attributes.
1256 * bindings/v8/DOMObjectsInclude.h: #include DataGrid headers.
1257 * bindings/v8/V8DOMWrapper.cpp: Add bindings from HTML tags to datagrid templates.
1258 (WebCore::V8DOMWrapper::getTemplate): Customize datagrid template.
1259 * bindings/v8/V8DataGridDataSource.cpp: Added. (Based on JSDataGridDataSource)
1260 (WebCore::V8DataGridDataSource::V8DataGridDataSource):
1261 (WebCore::V8DataGridDataSource::~V8DataGridDataSource):
1262 * bindings/v8/V8DataGridDataSource.h: Added. (Based on JSDataGridDataSource)
1263 (WebCore::V8DataGridDataSource::create):
1264 (WebCore::V8DataGridDataSource::isJSDataGridDataSource):
1265 (WebCore::V8DataGridDataSource::jsDataSource):
1266 (WebCore::asV8DataGridDataSource):
1267 * bindings/v8/V8GCController.h: Added new handle type "DATASOURCE".
1268 * bindings/v8/V8Index.h: Conditionalize datagrid stuff.
1269 * bindings/v8/custom/V8CustomBinding.h: Declare more accessors. Conditionalize.
1270 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Fill in dataSource accessors.
1271 (WebCore::ACCESSOR_GETTER):
1272 (WebCore::ACCESSOR_SETTER):
1274 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
1276 Reviewed by Darin Fisher.
1278 StorageArea should only contain methods we intend to proxy.
1279 https://bugs.webkit.org/show_bug.cgi?id=27181
1281 Right now, StorageAreaSync takes in a StorageArea* and calls methods
1282 like importItem. Really, StorageAreaSync should be operating directly
1283 on StorageAreaImpl* and those methods should be removed from StorageArea
1284 since StorageAreaSync should never be attached to anything other than a
1287 This was pointed out in the review for
1288 https://bugs.webkit.org/show_bug.cgi?id=27072
1290 Also clean up StorageNamespaceImpl to operate directly on
1291 StorageAreaImpl. Also, get rid of the factory for StorageArea
1292 since nothing should ever create a StorageArea directly.
1295 * WebCore.vcproj/WebCore.vcproj:
1296 * WebCore.xcodeproj/project.pbxproj:
1297 * WebCoreSources.bkl:
1298 * storage/StorageArea.cpp: Removed.
1299 * storage/StorageArea.h:
1300 (WebCore::StorageArea::~StorageArea):
1301 * storage/StorageAreaImpl.cpp:
1302 (WebCore::StorageAreaImpl::copy):
1303 * storage/StorageAreaImpl.h:
1304 * storage/StorageAreaSync.cpp:
1305 (WebCore::StorageAreaSync::create):
1306 (WebCore::StorageAreaSync::StorageAreaSync):
1307 * storage/StorageAreaSync.h:
1308 * storage/StorageNamespaceImpl.cpp:
1309 (WebCore::StorageNamespaceImpl::copy):
1310 (WebCore::StorageNamespaceImpl::storageArea):
1311 * storage/StorageNamespaceImpl.h:
1313 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
1315 Reviewed by Dimitri Glazkov.
1317 Add v8 implementation for DOM Storage ScriptObjectQuarantine.
1318 https://bugs.webkit.org/show_bug.cgi?id=27327
1320 Wrap the storage object with a generic object as is done elsewhere in
1321 the file (but continue to hit a NOTIMPLEMENTED if DOM_STORAGE is not
1324 * bindings/v8/ScriptObjectQuarantine.cpp:
1325 (WebCore::getQuarantinedScriptObject):
1327 2009-07-17 Mads Ager <ager@chromium.org>
1329 Reviewed by Dimitri Glazkov.
1331 https://bugs.webkit.org/show_bug.cgi?id=27394
1332 Fix access to global object wrappers after navigation of their
1333 frame in the V8 bindings. This fixes selenium test failures.
1335 * bindings/v8/V8Proxy.cpp:
1336 (WebCore::V8Proxy::updateDocument):
1338 2009-07-17 Mark Rowe <mrowe@apple.com>
1340 Fix the 32-bit build by removing implicit float <-> double conversions.
1342 * inspector/InspectorController.cpp:
1343 (WebCore::constrainedAttachedWindowHeight):
1345 2009-07-17 Brian Weinstein <bweinstein@apple.com>
1347 Reviewed by Adam Roben.
1349 Fix of <rdar://problem/5712795> Win: Cannot change the height of the docked Web Inspector (14272)
1350 https://bugs.webkit.org/show_bug.cgi?id=14272
1352 Moved preference setting for attached inspector height and inspector height calculation from
1353 WebInspectorClient.mm into InspectorController.cpp, to make this code cross-platform and enable
1354 Windows resizing of attached inspector.
1356 * inspector/InspectorController.cpp:
1357 * inspector/InspectorController.h:
1359 2009-07-17 Dan Bernstein <mitz@apple.com>
1361 Another attempt at fixing the build after r46063
1363 * WebCore.xcodeproj/project.pbxproj: Made ExceptionCode.h a private
1364 header, because it is now included from htmlediting.h, which is
1367 2009-07-17 Alexey Proskuryakov <ap@webkit.org>
1369 Reviewed by Dan Bernstein.
1371 https://bugs.webkit.org/show_bug.cgi?id=27396
1372 Moving cursor in Thai text sometimes jumps over two characters
1374 Test: editing/text-iterator/thai-cursor-movement.html
1376 * platform/text/TextBreakIteratorICU.cpp: (WebCore::cursorMovementIterator): Added a special
1377 case for five Thai characters, matching ICU/CLDR changes.
1379 2009-07-14 Eric Seidel <eric@webkit.org>
1381 Reviewed by Adam Barth.
1383 Some constructor objects exposed on Window have the wrong prototype chain
1384 https://bugs.webkit.org/show_bug.cgi?id=27276
1386 Several Constructor classes were already being passed a global object
1387 during construction, but they were ignoring it for prototype lookup.
1388 I've fixed those to use the passed global object instead.
1390 Most of these Constructor classes should just be auto-generated, but I
1391 refrained from changing them over to auto-gen in this patch.
1393 Fixed CodeGeneratorJS to pass a global object to getDOMConstructor when
1394 available, otherwise default to deprecatedGlobalObjectForPrototype(exec)
1395 to match existing behavior.
1397 Test: fast/dom/prototype-inheritance.html
1399 * bindings/js/JSAudioConstructor.cpp:
1400 (WebCore::JSAudioConstructor::JSAudioConstructor): use the existing globalObject pointer for prototype lookup
1401 * bindings/js/JSDOMBinding.h:
1402 (WebCore::deprecatedGlobalObjectForPrototype): Make it easy to detect where the wrong global object is being used.
1403 (WebCore::deprecatedGetDOMStructure):
1404 * bindings/js/JSDOMGlobalObject.h: remove error-prone getDOMConstructor, require passing JSDOMGlobalObject*
1405 * bindings/js/JSDOMWindowCustom.cpp:
1406 (WebCore::JSDOMWindow::webKitPoint): pass "this" for the global object.
1407 (WebCore::JSDOMWindow::webKitCSSMatrix): pass "this" for the global object.
1408 (WebCore::JSDOMWindow::xsltProcessor): pass "this" for the global object.
1409 (WebCore::JSDOMWindow::worker): pass "this" for the global object.
1410 * bindings/js/JSImageConstructor.cpp:
1411 (WebCore::JSImageConstructor::JSImageConstructor): use the existing globalObject pointer for prototype lookup
1412 * bindings/js/JSMessageChannelConstructor.cpp:
1413 (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): use the existing globalObject pointer for prototype lookup
1414 * bindings/js/JSOptionConstructor.cpp:
1415 (WebCore::JSOptionConstructor::JSOptionConstructor): use the existing globalObject pointer for prototype lookup
1416 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
1417 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor): add new globalObject parameter and use it
1418 * bindings/js/JSWebKitCSSMatrixConstructor.h:
1419 * bindings/js/JSWebKitPointConstructor.cpp:
1420 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor): add new globalObject parameter and use it
1421 * bindings/js/JSWebKitPointConstructor.h:
1422 * bindings/js/JSWorkerConstructor.cpp:
1423 (WebCore::JSWorkerConstructor::JSWorkerConstructor): add new globalObject parameter and use it
1424 * bindings/js/JSWorkerConstructor.h:
1425 * bindings/js/JSXMLHttpRequestConstructor.cpp:
1426 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor): use the existing globalObject pointer for prototype lookup
1427 -- XMLHttpRequest constructor was also missing a length. Added one.
1428 * bindings/js/JSXSLTProcessorConstructor.cpp:
1429 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
1430 * bindings/js/JSXSLTProcessorConstructor.h:
1431 * bindings/scripts/CodeGeneratorJS.pm:
1433 2009-07-17 Dan Bernstein <mitz@apple.com>
1437 * editing/htmlediting.cpp:
1438 (WebCore::visiblePositionBeforeNode):
1439 (WebCore::visiblePositionAfterNode):
1441 2009-07-17 Jan Michael Alonzo <jmalonzo@webkit.org>
1443 Gtk build fix for symbol lookup error.
1445 Move AbstractWorker from SHARED_WORKERS to WORKERS as Worker derives from it now
1446 Changed in http://trac.webkit.org/changeset/46048
1450 2009-07-17 Ryosuke Niwa <ryosuke.niwa@gmail.com>
1452 Reviewed by Eric Seidel.
1454 htmlediting.cpp needs more utility functions to fix the bug 26816
1455 https://bugs.webkit.org/show_bug.cgi?id=27038
1457 In order to fix the bug 26816, we need several utility functions be added to htmlediting.cpp
1459 No tests because functions haven't been used anywhere yet.
1462 (WebCore::Range::create):
1463 (WebCore::Range::comparePoint): added const qualifier
1464 (WebCore::Range::compareNode): added const qualifier
1466 * editing/htmlediting.cpp:
1467 (WebCore::unsplittableElementForPosition): find the enclosing unsplittable element (editing root & table cell)
1468 (WebCore::positionBeforeNode): added ASSERT(node)
1469 (WebCore::positionAfterNode): added ASSERT(node)
1470 (WebCore::visiblePositionBeforeNode):
1471 (WebCore::visiblePositionAfterNode):
1472 (WebCore::createRange): create a range object from two visible positions
1473 (WebCore::extendRangeToWrappingNodes): extend range to include nodes that starts and ends at the boundaries
1474 (WebCore::canMergeLists): typo
1475 (WebCore::indexForVisiblePosition): added const qualifier
1476 (WebCore::isVisiblyAdjacent): typo
1477 (WebCore::isNodeVisiblyContainedWithin): determine if a node is inside a range or within the visible boundaries of the range
1478 * editing/htmlediting.h:
1480 2009-07-17 Michelangelo De Simone <micdesim@gmail.com>
1482 Reviewed by Darin Adler.
1484 https://bugs.webkit.org/show_bug.cgi?id=25551
1485 Added support for the "required" attribute, the valueMissing flag
1486 to the ValidityState object and :required/:optional CSS pseudoclasses.
1487 Part of HTML5 sec. Forms specs.
1488 http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#attr-input-required
1490 Tests: fast/css/pseudo-required-optional-001.html
1491 fast/css/pseudo-required-optional-002.html
1492 fast/css/pseudo-required-optional-003.html
1493 fast/css/pseudo-required-optional-004.html
1494 fast/css/pseudo-required-optional-005.html
1495 fast/css/pseudo-required-optional-006.html
1496 fast/forms/ValidityState-valueMissing-001.html
1497 fast/forms/ValidityState-valueMissing-002.html
1498 fast/forms/ValidityState-valueMissing-003.html
1499 fast/forms/ValidityState-valueMissing-004.html
1500 fast/forms/ValidityState-valueMissing-005.html
1501 fast/forms/ValidityState-valueMissing-006.html
1502 fast/forms/ValidityState-valueMissing-007.html
1503 fast/forms/ValidityState-valueMissing-008.html
1504 fast/forms/ValidityState-valueMissing-009.html
1505 fast/forms/required-attribute-001.html
1506 fast/forms/required-attribute-002.html
1508 * css/CSSSelector.cpp:
1509 (WebCore::CSSSelector::extractPseudoType): pseudoRequired/pseudoOptional
1510 * css/CSSSelector.h:
1511 (WebCore::CSSSelector::): ditto
1512 * css/CSSStyleSelector.cpp:
1513 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ditto
1515 (WebCore::Element::isOptionalFormControl): check for optional controls
1516 (WebCore::Element::isRequiredFormControl): check for required controls
1517 * html/HTMLAttributeNames.in: required attribute
1518 * html/HTMLButtonElement.h:
1519 (WebCore::HTMLButtonElement::isOptionalFormControl): ditto
1520 * html/HTMLFormControlElement.cpp:
1521 (WebCore::HTMLFormControlElement::required): requiredAttr getter
1522 (WebCore::HTMLFormControlElement::setRequired): requiredAttr setter
1523 * html/HTMLFormControlElement.h:
1524 (WebCore::HTMLFormControlElement::valueMissing): method definition
1525 * html/HTMLInputElement.cpp:
1526 (WebCore::HTMLInputElement::valueMissing): validation code
1527 (WebCore::HTMLInputElement::isRequiredFormControl): ditto
1528 * html/HTMLInputElement.h:
1529 (WebCore::HTMLInputElement::isOptionalFormControl): ditto
1530 * html/HTMLInputElement.idl: required DOM attribute
1531 * html/HTMLSelectElement.h:
1532 (WebCore::HTMLSelectElement::isOptionalFormControl): ditto
1533 * html/HTMLTextAreaElement.h:
1534 (WebCore::HTMLTextAreaElement::valueMissing): validation code
1535 (WebCore::HTMLTextAreaElement::isOptionalFormControl): ditto
1536 (WebCore::HTMLTextAreaElement::isRequiredFormControl): ditto
1537 * html/HTMLTextAreaElement.idl: required DOM attribute
1538 * html/ValidityState.cpp:
1539 * html/ValidityState.h:
1540 (WebCore::ValidityState::valueMissing): validation flag
1542 2009-07-17 Beth Dakin <bdakin@apple.com>
1544 Reviewed by Darin Adler.
1546 Fix for https://bugs.webkit.org/show_bug.cgi?id=27390 CSS custom
1547 cursor hotspots should work in quirks mode
1548 - and corresponding <rdar://problem/6554340>
1550 Enable hotspots in quirks mode.
1551 * css/CSSParser.cpp:
1552 (WebCore::CSSParser::parseValue):
1554 Update this manual test to reflect the fact that hotspots are now
1555 expected to work in quirks mode.
1556 * manual-tests/css3-cursor-fallback-quirks.html:
1558 2009-07-17 Peter Kasting <pkasting@google.com>
1560 Reviewed by Steve Falkenburg.
1562 https://bugs.webkit.org/show_bug.cgi?id=27323
1563 Only add Cygwin to the path when it isn't already there. This avoids
1564 causing problems for people who purposefully have non-Cygwin versions of
1565 executables like svn in front of the Cygwin ones in their paths.
1567 * WebCore.vcproj/QTMovieWin.vcproj:
1568 * WebCore.vcproj/WebCoreCommon.vsprops:
1569 * WebCore.vcproj/WebCoreGenerated.vcproj:
1571 2009-07-17 Alexey Proskuryakov <ap@webkit.org>
1573 Reviewed by David Levin.
1575 https://bugs.webkit.org/show_bug.cgi?id=27384
1576 Random crashes in appcache/update-cache.html test
1578 * loader/appcache/ApplicationCacheGroup.cpp:
1579 (WebCore::ApplicationCacheGroup::didReceiveResponse): Reorder code to avoid using a handle
1582 2009-07-17 Drew Wilson <atwilson@google.com>
1584 Reviewed by David Levin.
1586 Need to refactor Worker to derive from AbstractWorker
1587 https://bugs.webkit.org/show_bug.cgi?id=26948
1589 Changed Worker to derive from AbstractWorker, which involved moving
1590 AbstractWorker files from being wrapped by ENABLE_SHARED_WORKERS to
1593 Removed obsolete functionality from the JS/V8 bindings that is now
1594 inherited from AbstractWorker.
1597 Moved AbstractWorker files out of SHARED_WORKERS section and into WORKERS.
1598 * bindings/js/JSAbstractWorkerCustom.cpp:
1599 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
1600 * bindings/js/JSWorkerCustom.cpp:
1601 Removed obsolete event listener code (now in base class)
1602 (WebCore::JSWorker::mark):
1603 No longer need to explicitly mark event listeners (handled by base class).
1604 * bindings/v8/V8Index.h:
1605 Moved AbstractWorker lines out of SHARED_WORKERS section and into WORKERS.
1606 * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
1607 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
1608 * bindings/v8/custom/V8CustomBinding.h:
1609 Moved AbstractWorker lines out of SHARED_WORKERS section and into WORKERS.
1610 * bindings/v8/custom/V8WorkerCustom.cpp:
1611 Removed obsolete event listener code that now lives in the base class.
1612 (WebCore::V8WorkerConstructor): Cleaned up legacy style nits.
1613 * workers/AbstractWorker.cpp:
1614 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
1615 * workers/AbstractWorker.h:
1616 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
1617 * workers/Worker.cpp:
1618 Removed event listener code (now in base class).
1619 (WebCore::Worker::Worker): Now derives from AbstractWorker.
1620 (WebCore::Worker::notifyFinished): Calls dispatchLoadErrorEvent on base class.
1622 Removed APIs that now live in the base class.
1623 * workers/Worker.idl:
1624 Now derives from AbstractWorker.
1625 Removed APIs that live in the base class, and added a GenerateToJS flag.
1627 2009-07-17 David Hyatt <hyatt@apple.com>
1629 Reviewed by Dan Bernstein.
1631 https://bugs.webkit.org/show_bug.cgi?id=27379
1632 Absolutely-positioned elements with a scrollbar wrap prematurely. Make sure to include
1633 the vertical scrollbar width for overflow:scroll elements.
1635 Added fast/css/positioned-overflow-scroll.html
1637 * rendering/RenderBlock.cpp:
1638 (WebCore::RenderBlock::calcPrefWidths):
1639 * rendering/RenderFlexibleBox.cpp:
1640 (WebCore::RenderFlexibleBox::calcPrefWidths):
1642 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
1644 Reviewed by Dimitri Glazkov.
1646 Need a DOM_STORAGE guard in DerivedSroucesAllInOne.cpp
1647 https://bugs.webkit.org/show_bug.cgi?id=27375
1649 In https://bugs.webkit.org/show_bug.cgi?id=27360 I added Storage.cpp
1650 and StorageEvent.cpp. Unfortunately, until later this afternoon,
1651 DOM_STORAGE is not turned on by default in Chromium, and so these two
1652 files are never generated. This breaks the compile.
1654 There are no other instances of guards in the file, which puzzles me...
1655 but I think adding guards is the right way to go about this.
1657 * bindings/v8/DerivedSourcesAllInOne.cpp: Added the guard.
1659 2009-07-17 Brady Eidson <beidson@apple.com>
1661 Reviewed by Darin Adler.
1663 https://bugs.webkit.org/show_bug.cgi?id=26496
1665 Let WebCore always enforce the connection-per-host limit itself.
1667 * loader/loader.cpp:
1668 (WebCore::Loader::Host::servePendingRequests):
1670 2009-07-17 Chris Marrin <cmarrin@apple.com>
1672 Reviewed by David Hyatt.
1674 Some transitions don't work correctly on Leopard
1675 https://bugs.webkit.org/show_bug.cgi?id=27356
1677 We only have code to do component animation using valueFunction.
1678 So on Leopard we always need to do matrix animation in hardware.
1679 This fix ensures that.
1681 This is currently not testable because it appears only in the
1682 hardware animation and we can't yet do pixel tests while
1685 * platform/graphics/mac/GraphicsLayerCA.mm:
1686 (WebCore::GraphicsLayerCA::animateTransform):
1688 2009-07-17 Holger Hans Peter Freyther <zecke@selfish.org>
1690 Reviewed by Gustavo Noronha.
1692 [GTK+] Crash in screenAvailable due a null Widget*
1694 JSDOMWindow::open called screenAvailableRect(0). The other
1695 Screen methods can be called with a null widget as well, fix the
1696 crashing test by checking for null.
1698 In screenRect and screenAvailableRect it is not tried to use
1699 a default screen as the existing implementation didn't try either
1700 in case of not having a toplevel widget.
1702 LayoutTests/fast/frames/crash-removed-iframe.html caused a crash.
1704 * platform/gtk/PlatformScreenGtk.cpp:
1705 (WebCore::getVisual): New method to get a visual or return zero.
1706 (WebCore::screenDepth): Use getVisual.
1707 (WebCore::screenDepthPerComponent): Use getVisual.
1708 (WebCore::screenIsMonochrome): Use screenDepth which will do the null checking
1709 (WebCore::screenRect): Check for !widget.
1710 (WebCore::screenAvailableRect): Check for !widget.
1712 2009-07-17 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1714 Reviewed by Simon Hausmann.
1716 [Qt] Fix the include path for the Symbian port
1717 https://bugs.webkit.org/show_bug.cgi?id=27358
1721 2009-07-17 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
1723 Reviewed by Simon Hausmann.
1725 Make it possible to set the plugin directories from the DRT.
1726 Part of https://bugs.webkit.org/show_bug.cgi?id=27215
1728 * plugins/PluginDatabase.cpp:
1729 (WebCore::PluginDatabase::installedPlugins): Now optionally takes
1730 a populate argument, so we can avoid loading system plugins from the
1731 DRT and thus avoid their strerr errors that can make tests fail.
1732 (WebCore::PluginDatabase::clear): Make it possible to clear the
1733 database. Called from setPluginDirectories.
1734 * plugins/PluginDatabase.h:
1735 (WebCore::PluginDatabase::setPluginDirectories): Make public
1737 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1739 Reviewed by Simon Hausmann.
1741 PluginViewMac: Stop the plugin when loading fails
1743 Also, prevent event propagation when in the stopped state
1745 * plugins/mac/PluginViewMac.cpp:
1747 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1749 Reviewed by Simon Hausmann.
1751 PluginViewMac: Allow query and set of drawing and event models
1753 We now support querying and setting of the drawing and event model,
1754 but we still only support the CoreGraphics drawing model, and the
1757 If unsupported drawing or event models are detected we show the
1758 missing-plugin icon.
1760 * plugins/PluginView.cpp:
1761 * plugins/PluginView.h:
1762 * plugins/mac/PluginViewMac.cpp:
1764 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1766 Reviewed by Simon Hausmann.
1768 Initialize two PluginView members using memset
1770 m_npWindow is used on all platforms, not just for XP_UNIX,
1771 so always initialize it. m_npCgContext on the other hand
1772 is only used for XP_MACOSX.
1774 * plugins/PluginView.cpp:
1776 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1778 Reviewed by Simon Hausmann.
1780 Add more debug logging in PluginView
1782 * plugins/PluginView.cpp: Add debug for setValue
1783 * plugins/gtk/PluginViewGtk.cpp: Add debug for getValue
1784 * plugins/mac/PluginViewMac.cpp: Add debug for getValue and more
1785 * plugins/qt/PluginViewQt.cpp: Add debug for getValue
1786 * plugins/win/PluginViewWin.cpp: Add debug for getValue
1788 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1790 Reviewed by Holger Freyther.
1792 Use same license in PluginDebug.cpp as in the original PluginDebug.h
1794 * plugins/PluginDebug.cpp: Use license from PluginDebug.h
1796 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1798 Reviewed by Simon Hausmann.
1800 Add more debugging functionality for the WebCore NPAPI layer
1802 * GNUmakefile.am: Add PluginDebug.cpp
1803 * WebCore.gypi: Add PluginDebug.cpp
1804 * WebCore.pro: Add PluginDebug.cpp
1805 * WebCore.vcproj/WebCore.vcproj: Add PluginDebug.cpp
1806 * WebCoreSources.bkl: Add PluginDebug.cpp
1807 * plugins/PluginDebug.h: Move errorStrings to PluginDebug.cpp
1808 * plugins/PluginDebug.cpp: New file
1810 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
1812 Reviewed by David Levin.
1814 Fix Chromium build with DOM_STORAGE enabled.
1815 https://bugs.webkit.org/show_bug.cgi?id=27360
1817 2 minor changes as noted below:
1819 * bindings/v8/DerivedSourcesAllInOne.cpp: Add the generated .cpp files.
1820 * storage/StorageAreaImpl.cpp: #include "DOMWindow.h"
1822 2009-07-16 Fumitoshi Ukai <ukai@chromium.org>
1824 Reviewed by David Levin.
1826 Add --web-sockets flag and ENABLE_WEB_SOCKETS define.
1827 https://bugs.webkit.org/show_bug.cgi?id=27206
1829 Add ENABLE_WEB_SOCKETS
1831 * Configurations/FeatureDefines.xcconfig: add ENABLE_WEB_SOCKETS
1832 * GNUmakefile.am: add ENABLE_WEB_SOCKETS
1833 * WebCore.vcproj/WebCoreCommon.vsprops: add ENABLE_WEB_SOCKETS
1834 * WebCore.vcproj/build-generated-files.sh: add ENABLE_WEB_SOCKETS
1836 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
1838 Reviewed by Oliver Hunt.
1840 Added a third bunch of Haiku-specific files for WebCore.
1841 https://bugs.webkit.org/show_bug.cgi?id=26952
1843 Adding five files, EventLoopHaiku.cpp, FileChooserHaiku.cpp,
1844 FileSystemHaiku.cpp, KeyboardCodes.h and MIMETypeRegistryHaiku.cpp
1846 * platform/haiku/EventLoopHaiku.cpp: Added.
1847 (WebCore::EventLoop::cycle):
1848 * platform/haiku/FileChooserHaiku.cpp: Added.
1849 (WebCore::FileChooser::FileChooser):
1850 (WebCore::FileChooser::basenameForWidth):
1851 * platform/haiku/FileSystemHaiku.cpp: Added.
1852 (WebCore::fileSystemRepresentation):
1853 (WebCore::homeDirectoryPath):
1854 (WebCore::openTemporaryFile):
1855 (WebCore::closeFile):
1856 (WebCore::writeToFile):
1857 (WebCore::unloadModule):
1858 (WebCore::listDirectory):
1859 * platform/haiku/KeyboardCodes.h: Added.
1860 * platform/haiku/MIMETypeRegistryHaiku.cpp: Added.
1862 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1864 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
1866 Reviewed by Oliver Hunt.
1868 Added a second bunch of Haiku-specific files for WebCore.
1869 https://bugs.webkit.org/show_bug.cgi?id=26952
1871 Adding four files, ContextMenuHaiku.cpp, ContextMenuItemHaiku.cpp,
1872 DragDataHaiku.cpp and DragImageHaiku.cpp
1874 * platform/haiku/ContextMenuHaiku.cpp: Added.
1875 (WebCore::ContextMenuReceiver::ContextMenuReceiver):
1876 (WebCore::ContextMenuReceiver::HandleMessage):
1877 (WebCore::ContextMenuReceiver::Result):
1878 (WebCore::ContextMenu::ContextMenu):
1879 (WebCore::ContextMenu::~ContextMenu):
1880 (WebCore::ContextMenu::appendItem):
1881 (WebCore::ContextMenu::itemCount):
1882 (WebCore::ContextMenu::insertItem):
1883 (WebCore::ContextMenu::platformDescription):
1884 (WebCore::ContextMenu::setPlatformDescription):
1885 * platform/haiku/ContextMenuItemHaiku.cpp: Added.
1886 (ContextMenuItem::ContextMenuItem):
1887 (ContextMenuItem::~ContextMenuItem):
1888 (ContextMenuItem::releasePlatformDescription):
1889 (ContextMenuItem::type):
1890 (ContextMenuItem::setType):
1891 (ContextMenuItem::action):
1892 (ContextMenuItem::setAction):
1893 (ContextMenuItem::title):
1894 (ContextMenuItem::setTitle):
1895 (ContextMenuItem::platformSubMenu):
1896 (ContextMenuItem::setSubMenu):
1897 (ContextMenuItem::setChecked):
1898 (ContextMenuItem::setEnabled):
1899 (ContextMenuItem::enabled):
1900 * platform/haiku/DragDataHaiku.cpp: Added.
1901 (WebCore::DragData::canSmartReplace):
1902 (WebCore::DragData::containsColor):
1903 (WebCore::DragData::containsFiles):
1904 (WebCore::DragData::asFilenames):
1905 (WebCore::DragData::containsPlainText):
1906 (WebCore::DragData::asPlainText):
1907 (WebCore::DragData::asColor):
1908 (WebCore::DragData::createClipboard):
1909 (WebCore::DragData::containsCompatibleContent):
1910 (WebCore::DragData::containsURL):
1911 (WebCore::DragData::asURL):
1912 (WebCore::DragData::asFragment):
1913 * platform/haiku/DragImageHaiku.cpp: Added.
1914 (WebCore::dragImageSize):
1915 (WebCore::deleteDragImage):
1916 (WebCore::scaleDragImage):
1917 (WebCore::dissolveDragImageToFraction):
1918 (WebCore::createDragImageFromImage):
1919 (WebCore::createDragImageIconForCachedImage):
1921 2009-07-16 Stephen White <senorblanco@chromium.org>
1923 Reviewed by Darin Fisher and Brett Wilson.
1925 Refactor Skia implementation of gradients and patterns.
1927 http://bugs.webkit.org/show_bug.cgi?id=26618
1929 The following layout tests were breaking on Chromium/Linux:
1931 LayoutTests/svg/custom/js-late-gradient-creation.svg (bad baseline PNG)
1932 LayoutTests/svg/custom/js-late-gradient-and-object.creation.svg
1933 LayoutTests/svg/custom/js-late-pattern-creation.svg (bad baseline PNG)
1934 LayoutTests/svg/custom/js-late-pattern-and-object-creation.svg
1936 I could've fixed these the easy way, by copying the same 5
1937 lines of code we use everywhere we need patterns or gradients, but
1938 I decided to fix it the hard way: by refactoring the code so that
1939 PlatformContextSkia::setupPaintForFilling() and
1940 PlatformContextSkia::setupPaintForStroking() do the right thing,
1941 and also handle gradients and patterns.
1943 This required pushing the gradients and patterns set in
1944 (generic) GraphicsContext::setFillPattern() and friends down into
1945 PlatformContextSkia. For this, I followed the setPlatformXXX()
1946 pattern used elsewhere in GraphicsContext, and stubbed them out on
1947 the other platforms with #if !PLATFORM(SKIA). This also required
1948 pushing changes to the gradientSpaceTransform from the Gradient into
1951 Since it's a Skia context, I decided to cache the values as
1952 SkShaders. There were existing m_pattern and m_gradient SkShaders,
1953 but they were unused, and whose use was ambiguous, so I
1954 replaced them with one SkShader each for filling and stroking.
1956 * platform/graphics/Gradient.cpp:
1957 (WebCore::Gradient::setGradientSpaceTransform):
1958 (WebCore::Gradient::setPlatformGradientSpaceTransform):
1959 * platform/graphics/Gradient.h:
1960 * platform/graphics/GraphicsContext.cpp:
1961 (WebCore::GraphicsContext::setStrokePattern):
1962 (WebCore::GraphicsContext::setFillPattern):
1963 (WebCore::GraphicsContext::setStrokeGradient):
1964 (WebCore::GraphicsContext::setFillGradient):
1965 (WebCore::GraphicsContext::setPlatformFillGradient):
1966 (WebCore::GraphicsContext::setPlatformFillPattern):
1967 (WebCore::GraphicsContext::setPlatformStrokeGradient):
1968 (WebCore::GraphicsContext::setPlatformStrokePattern):
1969 * platform/graphics/GraphicsContext.h:
1970 * platform/graphics/skia/GradientSkia.cpp:
1971 (WebCore::Gradient::setPlatformGradientSpaceTransform):
1972 * platform/graphics/skia/GraphicsContextSkia.cpp:
1973 (WebCore::GraphicsContext::fillPath):
1974 (WebCore::GraphicsContext::fillRect):
1975 (WebCore::GraphicsContext::setPlatformFillGradient):
1976 (WebCore::GraphicsContext::setPlatformFillPattern):
1977 (WebCore::GraphicsContext::setPlatformStrokeGradient):
1978 (WebCore::GraphicsContext::setPlatformStrokePattern):
1979 (WebCore::GraphicsContext::strokePath):
1980 (WebCore::GraphicsContext::strokeRect):
1981 * platform/graphics/skia/PlatformContextSkia.cpp:
1982 (PlatformContextSkia::State::State):
1983 (PlatformContextSkia::State::~State):
1984 (PlatformContextSkia::drawRect):
1985 (PlatformContextSkia::setupPaintCommon):
1986 (PlatformContextSkia::setupPaintForFilling):
1987 (PlatformContextSkia::setupPaintForStroking):
1988 (PlatformContextSkia::setFillColor):
1989 (PlatformContextSkia::setStrokeColor):
1990 (PlatformContextSkia::setStrokeShader):
1991 (PlatformContextSkia::setFillShader):
1992 * platform/graphics/skia/PlatformContextSkia.h:
1993 * platform/graphics/skia/SkiaFontWin.cpp:
1994 (WebCore::skiaDrawText):
1995 (WebCore::paintSkiaText):
1996 * svg/graphics/SVGPaintServer.cpp:
1997 (WebCore::SVGPaintServer::teardown):
1999 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2001 Reviewed by Oliver Hunt.
2003 Added Haiku-specific files for WebCore/platform/image-decoders/.
2004 https://bugs.webkit.org/show_bug.cgi?id=26949
2006 Adding a new file, ImageDecoderHaiku.cpp.
2008 * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Added.
2009 (WebCore::RGBA32Buffer::RGBA32Buffer):
2010 (WebCore::RGBA32Buffer::clear):
2011 (WebCore::RGBA32Buffer::zeroFill):
2012 (WebCore::RGBA32Buffer::copyBitmapData):
2013 (WebCore::RGBA32Buffer::setSize):
2014 (WebCore::RGBA32Buffer::asNewNativeImage):
2015 (WebCore::RGBA32Buffer::hasAlpha):
2016 (WebCore::RGBA32Buffer::setHasAlpha):
2017 (WebCore::RGBA32Buffer::setStatus):
2018 (WebCore::RGBA32Buffer::operator=):
2019 (WebCore::RGBA32Buffer::width):
2020 (WebCore::RGBA32Buffer::height):
2022 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2024 Reviewed by Eric Seidel.
2026 Added Haiku-specific files for WebCore/page/.
2027 https://bugs.webkit.org/show_bug.cgi?id=26949
2029 Adding three new files, DragControllerHaiku.cpp, EventHandlerHaiku.cpp
2032 * page/haiku/DragControllerHaiku.cpp: Added.
2033 (WebCore::DragController::isCopyKeyDown):
2034 (WebCore::DragController::dragOperation):
2035 (WebCore::DragController::maxDragImageSize):
2036 (WebCore::DragController::cleanupAfterSystemDrag):
2037 * page/haiku/EventHandlerHaiku.cpp: Added.
2038 (WebCore::isKeyboardOptionTab):
2039 (WebCore::EventHandler::invertSenseOfTabsToLinks):
2040 (WebCore::EventHandler::tabsToAllControls):
2041 (WebCore::EventHandler::focusDocumentView):
2042 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2043 (WebCore::EventHandler::passMouseDownEventToWidget):
2044 (WebCore::EventHandler::eventActivatedView):
2045 (WebCore::EventHandler::passSubframeEventToSubframe):
2046 (WebCore::EventHandler::passWheelEventToWidget):
2047 (WebCore::EventHandler::createDraggingClipboard):
2048 (WebCore::EventHandler::passMousePressEventToSubframe):
2049 (WebCore::EventHandler::passMouseMoveEventToSubframe):
2050 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2051 (WebCore::EventHandler::accessKeyModifiers):
2052 * page/haiku/FrameHaiku.cpp: Added.
2053 (WebCore::Frame::dragImageForSelection):
2055 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2057 Reviewed by Eric Seidel.
2059 Added Haiku-specific files for WebCore/editing/.
2060 https://bugs.webkit.org/show_bug.cgi?id=26949
2062 Adding one new file, EditorHaiku.cpp
2064 * editing/haiku/EditorHaiku.cpp: Added.
2065 (WebCore::Editor::newGeneralClipboard):
2067 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2069 Reviewed by Eric Seidel.
2071 Added Haiku-specific files for WebCore/bindings/js/.
2072 https://bugs.webkit.org/show_bug.cgi?id=26949
2074 Adding a new file, ScriptControllerHaiku.cpp
2076 * bindings/js/ScriptControllerHaiku.cpp: Added.
2077 (WebCore::ScriptController::createScriptInstanceForWidget):
2079 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2081 Reviewed by Eric Seidel.
2083 Added Haiku-specific files for WebCore/platform/text/.
2084 https://bugs.webkit.org/show_bug.cgi?id=26949
2086 Adding two new files, StringHaiku.cpp
2087 and TextBreakIteratorInternalICUHaiku.cpp
2089 * platform/text/haiku/StringHaiku.cpp: Added.
2090 (WebCore::String::String):
2091 (WebCore::String::operator BString):
2092 * platform/text/haiku/TextBreakIteratorInternalICUHaiku.cpp: Added.
2093 (WebCore::currentTextBreakLocaleID):
2095 2009-07-16 Kent Tamura <tkent@chromium.org>
2097 Reviewed by Eric Seidel.
2099 Sends the basename of a selected file for non-multipart form submission.
2100 <https://bugs.webkit.org/show_bug.cgi?id=26505>
2102 Test: fast/forms/get-file-upload.html
2104 * html/HTMLInputElement.cpp:
2105 (WebCore::HTMLInputElement::appendFormData):
2107 2009-07-16 Adam Barth <abarth@webkit.org>
2109 Reviewed by David Levin.
2111 [V8] Centralize hidden property names
2112 https://bugs.webkit.org/show_bug.cgi?id=27359
2114 No behavior change. Just moving these names to a central location.
2115 I'll move the rest of our hidden property names as I sweep though the
2119 * bindings/v8/V8HiddenPropertyName.cpp: Added.
2120 (WebCore::V8HiddenPropertyName::objectPrototype):
2121 (WebCore::V8HiddenPropertyName::isolatedWorld):
2122 * bindings/v8/V8HiddenPropertyName.h: Added.
2123 * bindings/v8/V8IsolatedWorld.cpp:
2124 (WebCore::V8IsolatedWorld::V8IsolatedWorld):
2125 (WebCore::V8IsolatedWorld::getEntered):
2126 * bindings/v8/V8Proxy.cpp:
2127 (WebCore::V8Proxy::getHiddenObjectPrototype):
2128 (WebCore::V8Proxy::installHiddenObjectPrototype):
2130 2009-07-16 Dan Bernstein <mitz@apple.com>
2132 Reviewed by Simon Fraser.
2134 REGRESSION (r41238) Repainted portion of a scaled image does not line up with full image
2135 https://bugs.webkit.org/show_bug.cgi?id=26747
2136 rdar://problem/7009243
2138 Test: fast/repaint/background-misaligned.html
2140 * platform/graphics/Image.cpp:
2141 (WebCore::Image::drawTiled): Moved a variable definition closer to where
2143 * platform/graphics/cg/ImageCG.cpp:
2144 (WebCore::BitmapImage::draw): In the subimage code path, compute a
2145 pixel-aligned source rect, because the subiamge is always pixel-aligned
2146 in source space, and adjust the destination rect to preserve the
2147 source -> destination mapping. Clip to the (original) destination rect
2148 to prevent bleeding out.
2150 2009-07-16 Jeremy Orlow <jorlow@chromium.org>
2152 Reviewed by Adam Barth.
2154 Add a sessionStorageEnabled setting to the settings class.
2155 https://bugs.webkit.org/show_bug.cgi?id=27318
2157 Allow LocalStorage to be enabled without enabling SessionStorage at
2158 runtime. There is a settings class setting for localStorage, but not
2159 for sessionStorage. We want to be able to test one of these features
2160 without necessarily enabling the other.
2162 SessionStorage defaults to true so as to not change behavior and
2163 because there really aren't any security concerns around SessionStorage
2164 (unlike LocalsStorage). The flag is needed in Chromium only because
2165 we want to enable the compile time flag in the default build, but don't
2166 want it on by default until it's been thoroughly tested.
2168 * page/DOMWindow.cpp:
2169 (WebCore::DOMWindow::sessionStorage): Check the new flag
2170 (WebCore::DOMWindow::localStorage): A bit of cleanup
2171 * page/Settings.cpp:
2172 (WebCore::Settings::Settings): Default the flag to true
2173 (WebCore::Settings::setSessionStorageEnabled): Add the new flag
2175 (WebCore::Settings::sessionStorageEnabled): Get the new flag
2177 2009-07-16 Adam Barth <abarth@webkit.org>
2181 Revert 45987. Tests did not pass on Windows.
2183 * html/HTMLInputElement.cpp:
2184 (WebCore::HTMLInputElement::appendFormData):
2186 2009-07-16 Drew Wilson <atwilson@google.com>
2188 Reviewed by David Levin.
2190 Added SHARED_WORKER flag to Windows build files, as well as associated .ccp/.h files.
2191 Added missing V8 bindings to the AllInOne file
2193 https://bugs.webkit.org/show_bug.cgi?id=27321
2195 * WebCore.vcproj/WebCore.vcproj:
2196 Added missing files to build.
2197 * bindings/v8/DerivedSourcesAllInOne.cpp:
2198 Added missing V8 bindings (V8AbstractWorker.cpp and V8SharedWorker.cpp)
2199 * DerivedSources.cpp
2200 Added missing JS bindings (JSAbstractWorker.cpp and JSSharedWorker.cpp)
2202 2009-07-16 John Abd-El-Malek <jam@chromium.org>
2204 Reviewed by David Levin.
2206 Add a getter in MessagePortChannel for the PlatformMessagePortChannel.
2208 https://bugs.webkit.org/show_bug.cgi?id=27337
2210 * dom/MessagePortChannel.h:
2211 (WebCore::MessagePortChannel::channel):
2213 2009-07-16 Xiaomei Ji <xji@chromium.org>
2215 Reviewed by Darin Adler.
2217 Fix tooltip does not get its directionality from its element's directionality.
2218 https://bugs.webkit.org/show_bug.cgi?id=24187
2220 Per mitz's suggestion in comment #6, while getting the plain-text
2221 title, we also get the directionality of the title. How to handle
2222 the directionality is up to clients. Clients could ignore it,
2223 or use attribute or unicode control characters to display the title
2226 WARNING: NO TEST CASES ADDED OR CHANGED
2228 * WebCore.base.exp: Replace 2 names due to signature change.
2229 * loader/EmptyClients.h:
2230 (WebCore::EmptyChromeClient::setToolTip): Add direction as 2nd parameter.
2232 (WebCore::Chrome::setToolTip): Calculate tooltip direction as well and pass it to client to take care when display tooltip.
2233 * page/ChromeClient.h: Add direction as 2nd parameter to pure virtual function setToolTip().
2234 * page/chromium/ChromeClientChromium.h:
2235 (WebCore::ChromeClientChromium::setToolTip): Add setToolTip()
2236 temprarily to make chromium compile after pick up this webkit patch.
2237 * rendering/HitTestResult.cpp:
2238 (WebCore::HitTestResult::spellingToolTip): Besides getting the
2239 spelling tooltip, get its directionality as well.
2240 (WebCore::HitTestResult::title): Besides getting the title,
2241 get its directionality as well.
2242 * rendering/HitTestResult.h: Add 2 more methods.
2244 2009-07-16 Shinichiro Hamaji <hamaji@chromium.org>
2246 Reviewed by Oliver Hunt.
2248 [CAIRO] pattern of a canvas-element changes after modifications on canvas-element
2249 https://bugs.webkit.org/show_bug.cgi?id=20578
2251 Copy pixel image in ImageBuffer::image() just like CG and Skia glue.
2253 Test: fast/canvas/canvas-pattern-modify.html
2255 * platform/graphics/cairo/ImageBufferCairo.cpp:
2257 (WebCore::ImageBuffer::image):
2259 2009-07-16 David Hyatt <hyatt@apple.com>
2261 Reviewed by Beth Dakin.
2263 https://bugs.webkit.org/show_bug.cgi?id=27353
2264 Images mispositioned because of bug in percentage-based relative positioning.
2266 Added fast/css/nested-floating-relative-position-percentages.html
2268 * rendering/RenderBoxModelObject.cpp:
2269 (WebCore::RenderBoxModelObject::relativePositionOffsetX):
2271 2009-07-16 Kent Tamura <tkent@chromium.org>
2273 Reviewed by Eric Seidel.
2275 Sends the basename of a selected file for non-multipart form submission.
2276 <https://bugs.webkit.org/show_bug.cgi?id=26505>
2278 Test: fast/forms/get-file-upload.html
2280 * html/HTMLInputElement.cpp:
2281 (WebCore::HTMLInputElement::appendFormData):
2283 2009-07-16 Simon Fraser <simon.fraser@apple.com>
2285 Reviewed by Darin Adler.
2287 Video size sometimes jumps just after the video starts loading
2288 https://bugs.webkit.org/show_bug.cgi?id=27352
2290 Ensure that the media player is at or after the 'HaveMetadata' state so that
2291 the instrinsic size is known before we create the layer for video. This avoids
2292 a flash caused by computing the video rect using the default intrinsic size, and then
2293 re-computing it when that size changes.
2295 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2296 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2297 (WebCore::MediaPlayerPrivate::isReadyForRendering):
2298 (WebCore::MediaPlayerPrivate::updateStates):
2299 (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering):
2301 2009-07-16 Brady Eidson <beidson@apple.com>
2303 Reviewed by Antti Koivisto.
2304 Patch by Brady Eidson and Alexey Proskuryakov.
2306 https://bugs.webkit.org/show_bug.cgi?id=26496
2307 <rdar://problem/7065391> Microsoft Outlook Web Access fails because XHR stream connection blocks script loading/revalidation
2309 After refreshing a page and when all CachedResources on that page are in validation mode, they got an exemption
2310 from the connection-per-host limit. Removing that exemption makes the test case load smoothly after reloads.
2312 * loader/loader.cpp:
2313 (WebCore::Loader::Host::servePendingRequests): Remove the resourceIsCacheValidator exemption to the connection-per-host limit.
2315 2009-07-16 Adam Barth <abarth@webkit.org>
2317 Reviewed by Dimitri Glazkov.
2319 [V8] V8IsolatedWorld::evaluate needs to call didCreateIsolatedScriptContext
2320 https://bugs.webkit.org/show_bug.cgi?id=27335
2322 evaluateInNewContext makes this delegate call. evaluateInNewWorld
2323 needs to make the same call. This does not appear to be testable with
2324 our current technology.
2326 * bindings/v8/V8IsolatedWorld.cpp:
2327 (WebCore::V8IsolatedWorld::evaluate):
2329 2009-07-15 Jakub Wieczorek <faw217@gmail.com>
2331 Reviewed by Simon Hausmann.
2333 Fix a typo: application/atom=xml -> application/atom+xml.
2335 * dom/ProcessingInstruction.cpp:
2336 (WebCore::ProcessingInstruction::checkStyleSheet):
2338 2009-07-16 Dean McNamee <deanm@chromium.org>
2340 Reviewed by Oliver Hunt.
2342 https://bugs.webkit.org/show_bug.cgi?id=27292
2343 Improve handling of <canvas> path operations on an empty path.
2344 Implement Skia's Path::hasCurrentPoint().
2346 * html/CanvasRenderingContext2D.cpp:
2347 (WebCore::CanvasRenderingContext2D::lineTo):
2348 (WebCore::CanvasRenderingContext2D::quadraticCurveTo):
2349 (WebCore::CanvasRenderingContext2D::bezierCurveTo):
2350 * platform/graphics/skia/PathSkia.cpp:
2351 (WebCore::Path::hasCurrentPoint):
2353 2009-07-15 Shinichiro Hamaji <hamaji@chromium.org>
2355 Reviewed by Eric Seidel.
2357 Setting white-space and word-wrap via CSS in textarea doesn't override the wrap attribute
2358 https://bugs.webkit.org/show_bug.cgi?id=26254
2360 Make it so that setting white-space and word-wrap via CSS
2361 overrides the wrap attribute.
2363 This involves having the shadow div in the textarea inherit
2364 the CSS from its parent instead of hard-coding it in
2365 RenderTextControlMultiline.
2367 Committer note: Earlier I reverted this change because I did it incorrectly
2368 by leaving out css/html.css. In the patch, the filename was the old name
2369 css/html4.css and that led to my error.
2372 * html/HTMLTextAreaElement.cpp:
2373 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
2374 * rendering/RenderTextControlMultiLine.cpp:
2375 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
2377 2009-07-15 James Hawkins <jhawkins@google.com>
2379 Reviewed by Adam Barth.
2381 [V8] Remove a local variable that is shadowing a function parameter.
2382 https://bugs.webkit.org/show_bug.cgi?id=27309
2384 No test required as this modification does not change the current behavior.
2386 * bindings/v8/V8DOMWrapper.cpp:
2387 (WebCore::V8DOMWrapper::instantiateV8Object):
2389 2009-07-15 Adam Langley <agl@google.com>
2391 No review: reverting previous change.
2395 2009-07-15 Dumitru Daniliuc <dumi@chromium.org>
2396 Reviewed by Dimitri Glazkov.
2398 Adding the Win SQLite VFS implementation for Chromium.
2400 https://bugs.webkit.org/show_bug.cgi?id=26940
2403 The Chromium side of this patch was landed in 20839, but broke the build. It
2404 was reverted in r20840. Thus, I'm reverting this side of the patch too.
2407 * platform/chromium/ChromiumBridge.h:
2408 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Removed.
2409 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Removed.
2411 2009-07-15 David Levin <levin@chromium.org>
2413 Layout test fix, reverting previous change.
2415 Reverting r45962 as it caused several layout test failures.
2417 * html/HTMLTextAreaElement.cpp:
2418 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
2419 * rendering/RenderTextControlMultiLine.cpp:
2420 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
2422 2009-06-08 Shinichiro Hamaji <hamaji@chromium.org>
2424 Reviewed by Eric Seidel.
2426 Setting white-space and word-wrap via CSS in textarea doesn't override the wrap attribute
2427 https://bugs.webkit.org/show_bug.cgi?id=26254
2429 Make it so that setting white-space and word-wrap via CSS
2430 overrides the wrap attribute.
2432 This involves having the shadow div in the textarea inherit
2433 the CSS from its parent instead of hard-coding it in
2434 RenderTextControlMultiline.
2437 * html/HTMLTextAreaElement.cpp:
2438 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
2439 * rendering/RenderTextControlMultiLine.cpp:
2440 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
2442 2009-07-15 Dumitru Daniliuc <dumi@chromium.org>
2444 Reviewed by Dimitri Glazkov.
2446 Adding the Win SQLite VFS implementation for Chromium.
2448 https://bugs.webkit.org/show_bug.cgi?id=26940
2450 * platform/chromium/ChromiumBridge.h:
2451 * platform/sql/chromium: Added.
2452 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Added.
2453 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Added.
2455 2009-07-15 Jian Li <jianli@chromium.org>
2457 Reviewed by David Levin.
2459 Bug 25151 - workers that fail to load scripts not firing error event.
2460 https://bugs.webkit.org/show_bug.cgi?id=25151
2462 This fixes the problem that an error event is not fired when the worker
2463 script fails to load. Some reasons this may occur are an invalid URL for
2464 the worker script or a cross-origin redirect.
2466 We also moves the code to complete the URL and check its origin from
2467 Worker constructor to WorkerScriptLoader loading functions in order to
2468 move the exception throwing logic out of the scope of Worker constructor.
2469 Due to this change, we also remove the output ExceptionCode parameter
2470 in the worker constructor. Corresponding JS/V8 binding codes have been
2471 updated to reflect this change.
2473 * bindings/js/JSWorkerConstructor.cpp:
2474 (WebCore::constructWorker):
2475 * bindings/v8/custom/V8WorkerCustom.cpp:
2476 (WebCore::CALLBACK_FUNC_DECL):
2477 * workers/Worker.cpp:
2478 (WebCore::Worker::Worker):
2479 (WebCore::Worker::notifyFinished):
2481 (WebCore::Worker::create):
2482 * workers/WorkerContext.cpp:
2483 (WebCore::WorkerContext::importScripts):
2484 * workers/WorkerScriptLoader.cpp:
2485 (WebCore::toCrossOriginRedirectPolicy):
2486 (WebCore::WorkerScriptLoader::loadSynchronously):
2487 (WebCore::WorkerScriptLoader::loadAsynchronously):
2488 (WebCore::notifyLoadErrorTask):
2489 (WebCore::WorkerScriptLoader::createResourceRequest):
2490 (WebCore::WorkerScriptLoader::didFail):
2491 (WebCore::WorkerScriptLoader::didFailRedirectCheck):
2492 (WebCore::WorkerScriptLoader::didReceiveAuthenticationCancellation):
2493 (WebCore::WorkerScriptLoader::notifyError):
2494 * workers/WorkerScriptLoader.h:
2496 (WebCore::WorkerScriptLoader::url):
2498 2009-07-15 Dan Bernstein <mitz@apple.com>
2500 Reviewed by Dave Hyatt.
2502 text-shadow is not drawn for text with transparent colour
2503 https://bugs.webkit.org/show_bug.cgi?id=21374
2505 Test: fast/text/shadow-translucent-fill.html
2507 * rendering/InlineTextBox.cpp:
2508 (WebCore::paintTextWithShadows): If the text fill color is not opaque,
2509 paint all shadows separately from the text, by casting them from
2510 clipped-out opaque text.
2512 2009-07-15 Adam Treat <adam.treat@torchmobile.com>
2516 * html/HTMLAreaElement.cpp:
2518 2009-07-15 Jeremy Orlow <jorlow@chromium.org>
2520 Reviewed by Darin Fisher.
2522 Cleanup DOM Storage dependencies.
2523 https://bugs.webkit.org/show_bug.cgi?id=27180
2525 DOM Storage had several unnecessary (and probably unintended)
2526 dependencies. This patch replaces many includes of header files with
2527 forward declaration of classes, making some destructors explicit, and
2528 taking some factories out of the header files.
2530 This will allow things like StorageAreaSync to take a StorageAreaImpl*
2531 (as it should) rather than a StorageArea* which previously weren't
2532 possible because the dependencies were such a tangled mess.
2534 * storage/LocalStorageTask.cpp:
2535 (WebCore::LocalStorageTask::~LocalStorageTask):
2536 * storage/LocalStorageTask.h:
2537 * storage/Storage.cpp:
2538 (WebCore::Storage::~Storage):
2539 * storage/Storage.h:
2540 * storage/StorageArea.cpp:
2541 * storage/StorageArea.h:
2542 * storage/StorageAreaImpl.cpp:
2543 * storage/StorageAreaImpl.h:
2544 * storage/StorageAreaSync.cpp:
2545 (WebCore::StorageAreaSync::~StorageAreaSync):
2546 * storage/StorageAreaSync.h:
2547 * storage/StorageEvent.cpp:
2548 (WebCore::StorageEvent::create):
2549 (WebCore::StorageEvent::StorageEvent):
2550 * storage/StorageEvent.h:
2551 * storage/StorageNamespace.h:
2552 * storage/StorageNamespaceImpl.cpp:
2553 * storage/StorageNamespaceImpl.h:
2554 * storage/StorageSyncManager.cpp:
2555 (WebCore::StorageSyncManager::~StorageSyncManager):
2556 * storage/StorageSyncManager.h:
2558 2009-07-15 Chris Marrin <cmarrin@apple.com>
2560 Reviewed by Simon Fraser.
2562 Incorrect animation when trying to duplicate effect of transform-origin
2563 https://bugs.webkit.org/show_bug.cgi?id=27310
2565 The bug is that matrix animation is being used when animating
2566 a list of transform functions that match in the from and to states.
2567 This sometimes works. But because of the way CA does matrix animation
2568 function lists like the one shown in the testcase animate incorrectly.
2570 This fixes the bug by always doing component animation
2571 as long as the function lists match. This allows CA
2572 to animate the components and then recompose the result
2573 into the correct matrix.
2575 Test: animations/transform-origin-vs-functions.html
2577 * platform/graphics/mac/GraphicsLayerCA.mm:
2578 (WebCore::GraphicsLayerCA::animateTransform):
2580 2009-07-15 Albert J. Wong <ajwong@chromium.org>
2582 Reviewed by David Levin.
2584 Upstream the V8NPObject and NPV8Object build changes for WebCore.gypi.
2586 Add upstreamed V8 bindings files into WebCore.gypi so they can be seen
2588 https://bugs.webkit.org/show_bug.cgi?id=27274
2590 Changes the build file for chromium. Test built the chromium tree
2595 2009-07-15 Mark Rowe <mrowe@apple.com>
2597 I like it when the code compiles.
2601 2009-07-15 Darin Adler <darin@apple.com>
2603 Reviewed by Sam Weinig.
2605 Renamed parseURL to deprecatedParseURL.
2607 * bindings/js/JSAttrCustom.cpp:
2608 (WebCore::JSAttr::setValue): Renamed.
2609 * bindings/js/JSElementCustom.cpp:
2610 (WebCore::allowSettingSrcToJavascriptURL): Renamed.
2611 * bindings/js/JSHTMLFrameElementCustom.cpp:
2612 (WebCore::allowSettingJavascriptURL): Renamed.
2613 * bindings/js/JSHTMLIFrameElementCustom.cpp:
2614 (WebCore::JSHTMLIFrameElement::setSrc): Renamed.
2615 * bindings/objc/DOM.mm:
2616 (-[DOMElement _getURLAttribute:]): Renamed.
2617 * bindings/objc/DOMHTML.mm:
2618 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): Renamed.
2619 * bindings/v8/custom/V8CustomBinding.cpp:
2620 (WebCore::allowSettingFrameSrcToJavascriptUrl): Renamed.
2621 * css/CSSHelper.cpp:
2622 (WebCore::deprecatedParseURL): Renamed.
2623 * css/CSSHelper.h: Renamed and updated comment.
2624 * html/HTMLAnchorElement.cpp:
2625 (WebCore::HTMLAnchorElement::defaultEventHandler): Renamed.
2626 (WebCore::HTMLAnchorElement::parseMappedAttribute): Renamed.
2627 * html/HTMLBaseElement.cpp:
2628 (WebCore::HTMLBaseElement::parseMappedAttribute): Renamed.
2629 * html/HTMLBodyElement.cpp:
2630 (WebCore::HTMLBodyElement::parseMappedAttribute): Renamed.
2631 * html/HTMLEmbedElement.cpp:
2632 (WebCore::HTMLEmbedElement::parseMappedAttribute): Renamed.
2633 * html/HTMLFormElement.cpp:
2634 (WebCore::HTMLFormElement::parseMappedAttribute): Renamed.
2635 * html/HTMLFrameElementBase.cpp:
2636 (WebCore::HTMLFrameElementBase::parseMappedAttribute): Renamed.
2637 * html/HTMLImageElement.cpp:
2638 (WebCore::HTMLImageElement::parseMappedAttribute): Renamed.
2639 * html/HTMLImageLoader.cpp:
2640 (WebCore::HTMLImageLoader::sourceURI): Renamed.
2641 * html/HTMLLinkElement.cpp:
2642 (WebCore::HTMLLinkElement::parseMappedAttribute): Renamed.
2643 * html/HTMLObjectElement.cpp:
2644 (WebCore::HTMLObjectElement::parseMappedAttribute): Renamed.
2645 * html/HTMLTableElement.cpp:
2646 (WebCore::HTMLTableElement::parseMappedAttribute): Renamed.
2647 * html/HTMLTablePartElement.cpp:
2648 (WebCore::HTMLTablePartElement::parseMappedAttribute): Renamed.
2649 * html/HTMLTokenizer.cpp:
2650 (WebCore::HTMLTokenizer::parseTag): Renamed.
2651 * html/PreloadScanner.cpp:
2652 (WebCore::PreloadScanner::processAttribute): Renamed.
2653 (WebCore::PreloadScanner::emitCSSRule): Renamed.
2654 * platform/chromium/ClipboardChromium.cpp:
2655 (WebCore::ClipboardChromium::declareAndWriteDragImage): Renamed.
2656 * platform/chromium/PasteboardChromium.cpp:
2657 (WebCore::Pasteboard::writeImage): Renamed.
2658 * platform/qt/ClipboardQt.cpp:
2659 (WebCore::ClipboardQt::declareAndWriteDragImage): Renamed.
2660 * platform/win/ClipboardWin.cpp:
2661 (WebCore::ClipboardWin::declareAndWriteDragImage): Renamed.
2662 * rendering/HitTestResult.cpp:
2663 (WebCore::HitTestResult::absoluteImageURL): Renamed.
2664 (WebCore::HitTestResult::absoluteMediaURL): Renamed.
2665 (WebCore::HitTestResult::absoluteLinkURL): Renamed.
2666 * svg/SVGAElement.cpp:
2667 (WebCore::SVGAElement::defaultEventHandler): Renamed.
2668 * svg/SVGImageLoader.cpp:
2669 (WebCore::SVGImageLoader::sourceURI): Renamed.
2670 * wml/WMLAElement.cpp:
2671 (WebCore::WMLAElement::defaultEventHandler): Renamed.
2672 * wml/WMLImageLoader.cpp:
2673 (WebCore::WMLImageLoader::sourceURI): Renamed.
2675 2009-07-15 Darin Adler <darin@apple.com>
2677 Reviewed by Dan Bernstein.
2679 CSSHelper.h's parseURL is a function that no one should ever call
2680 Part 1: Eliminate callers in the CSS parser.
2681 https://bugs.webkit.org/show_bug.cgi?id=26599
2683 Test: fast/css/uri-token-parsing.html
2685 * css/CSSHelper.h: Added a comment explaining why nobody should ever call this
2686 function. A FIXME suggests a next step, which would be to rename it deprecatedParseURL.
2688 * css/CSSParser.cpp:
2689 (WebCore::CSSParser::parseValue): Removed unneeded call to parseURL;
2690 CSSParser::text already takes care of parsing the URI token syntax, and the
2691 parseURL function does no good.
2692 (WebCore::CSSParser::parseContent): Ditto.
2693 (WebCore::CSSParser::parseFillImage): Ditto.
2694 (WebCore::CSSParser::parseFontFaceSrc): Ditto.
2695 (WebCore::CSSParser::parseBorderImage): Ditto.
2696 (WebCore::isCSSWhitespace): Added. Helper function that makes the text function
2698 (WebCore::CSSParser::text): Tweak logic so that leading and trailing whitespace
2699 are both trimmed before removing the quote marks. Changed to use the
2700 isCSSWhitespace, isASCIIHexDigit, and toASCIIHexValue functions for clarity.
2702 * css/CSSParser.h: Removed stray "public:" in this header.
2704 * platform/text/StringImpl.cpp:
2705 (WebCore::StringImpl::substring): Optimized the case where the substring covers
2706 the entire string, so we just share the StringImpl instead of making a new one.
2707 This case came up in earlier versions of the CSS parser changes above.
2708 (WebCore::StringImpl::substringCopy): Streamlined the logic here and made it
2709 not call substring any more. Before, this was relying on the substring function
2710 always making a copy of any non-empty substring.
2712 2009-07-15 Darin Adler <darin@apple.com>
2714 Reviewed by John Sullivan.
2716 After double-clicking a word, using Shift-arrow to select behaves unpredictably
2717 https://bugs.webkit.org/show_bug.cgi?id=27177
2718 rdar://problem/7034324
2720 Test: editing/selection/extend-selection-after-double-click.html
2722 The bug was due to the m_lastChangeWasHorizontalExtension flag, which was not
2723 being cleared in many cases where it should have been.
2725 * editing/SelectionController.cpp:
2726 (WebCore::SelectionController::setSelection): Set m_lastChangeWasHorizontalExtension
2727 to false. This catches all sorts of cases that don't flow through the modify function.
2728 Before, the flag would reflect the last call to the modify function, which was not
2729 necessarily the last selection change.
2730 (WebCore::SelectionController::willBeModified): Rearrange function for clarity.
2731 Remove code that sets m_lastChangeWasHorizontalExtension; that is now handled elsewhere.
2732 (WebCore::SelectionController::modify): Call setLastChangeWasHorizontalExtension after
2733 setSelection when setting up a trial selection controller, since setSelection now
2734 clears that flag. Also changed both trial selection controller cases to set the flag,
2735 although it's not strictly necessary in both cases. Added code to set
2736 m_lastChangeWasHorizontalExtension when extending the selection, which used to be
2737 handled in willBeModified. Now we need to do it after the selection change.
2739 2009-07-15 Jeremy Orlow <jorlow@chromium.org>
2741 Reviewed by Dimitri Glazkov.
2743 Need to update DOM Storage files in GYPI file.
2744 https://bugs.webkit.org/show_bug.cgi?id=27317
2746 Need to update DOM Storage files in the GYPI file. They're pretty out
2747 of date and we're on the path towards enabling them for everyone!
2751 2009-07-15 Kwang Yul Seo <skyul@company100.net>
2753 Reviewed by Eric Seidel.
2755 https://bugs.webkit.org/show_bug.cgi?id=26794
2756 Make Yacc-generated parsers to use fastMalloc/fastFree.
2758 Define YYMALLOC and YYFREE to fastMalloc and fastFree
2762 * xml/XPathGrammar.y:
2764 2009-07-15 David Hyatt <hyatt@apple.com>
2766 Reviewed by Adam Roben.
2768 https://bugs.webkit.org/show_bug.cgi?id=27193
2769 Don't run in to anonymous blocks. No other browsers do this, and our implementation of run-in
2770 is effectively broken as a result.
2772 No new tests. Changed fast/runin/001.html and fast/runin/generated.html to match new behavior.
2774 * rendering/RenderBlock.cpp:
2775 (WebCore::RenderBlock::handleRunInChild):
2777 2009-07-15 Yuzo Fujishima <yuzo@google.com>
2779 Reviewed by Darin Adler.
2781 Test: fast/js/instanceof-operator.html
2783 Fix for: Bug 25205 - XMLHttpRequest instance is not an instanceof XMLHttpRequest
2784 https://bugs.webkit.org/show_bug.cgi?id=25205
2786 In addition to for XMLHttpRequest, this also fixes for:
2796 * bindings/js/JSAudioConstructor.cpp:
2797 (WebCore::JSAudioConstructor::JSAudioConstructor):
2798 * bindings/js/JSAudioConstructor.h:
2799 * bindings/js/JSDOMBinding.h:
2800 (WebCore::DOMConstructorObject::createStructure):
2801 (WebCore::DOMConstructorObject::DOMConstructorObject):
2802 * bindings/js/JSImageConstructor.cpp:
2803 (WebCore::JSImageConstructor::JSImageConstructor):
2804 * bindings/js/JSImageConstructor.h:
2805 * bindings/js/JSMessageChannelConstructor.cpp:
2806 (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
2807 * bindings/js/JSMessageChannelConstructor.h:
2808 * bindings/js/JSOptionConstructor.cpp:
2809 (WebCore::JSOptionConstructor::JSOptionConstructor):
2810 * bindings/js/JSOptionConstructor.h:
2811 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
2812 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
2813 * bindings/js/JSWebKitCSSMatrixConstructor.h:
2814 * bindings/js/JSWebKitPointConstructor.cpp:
2815 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
2816 * bindings/js/JSWebKitPointConstructor.h:
2817 * bindings/js/JSWorkerConstructor.cpp:
2818 (WebCore::JSWorkerConstructor::JSWorkerConstructor):
2819 * bindings/js/JSWorkerConstructor.h:
2820 * bindings/js/JSXMLHttpRequestConstructor.cpp:
2821 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
2822 * bindings/js/JSXMLHttpRequestConstructor.h:
2823 * bindings/js/JSXSLTProcessorConstructor.cpp:
2824 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
2825 * bindings/js/JSXSLTProcessorConstructor.h:
2827 2009-07-15 Kai Br�ning <kai@granus.net>
2829 Reviewed by Dave Hyatt.
2831 CSS21 attribute selectors not dynamic for xml.
2832 https://bugs.webkit.org/show_bug.cgi?id=25072
2834 Moved the relevant test in StyledElement::attributeChanged()
2835 to a new function Element::recalcStyleIfNeededAfterAttributeChanged()
2836 so it can be called from both StyledElement::attributeChanged()
2837 and Element::attributeChanged().
2838 Refactored Element::attributeChanged() into
2839 Element::updateAfterAttributeChanged() and
2840 Element::recalcStyleIfNeededAfterAttributeChanged(), which are called
2841 separately from StyledElement::attributeChanged().
2843 Test: fast/css/attribute-selector-dynamic.xml
2846 (WebCore::Element::attributeChanged):
2847 (WebCore::Element::updateAfterAttributeChanged):
2848 (WebCore::Element::recalcStyleIfNeededAfterAttributeChanged):
2850 * dom/StyledElement.cpp:
2851 (WebCore::StyledElement::attributeChanged):
2853 2009-07-15 Alpha Lam <hclam@chromium.org>
2855 Reviewed by David Levin.
2857 [V8] Layout test failures for drawImage in Canvas
2858 https://bugs.webkit.org/show_bug.cgi?id=27311
2860 Fixing several canvas layout tests failures due to a
2861 missing return statement in CanvasRenderingContext2DDrawImage() which
2862 was accidentally removed in r45929.
2864 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
2866 2009-07-15 Robert Hogan <robert@roberthogan.net>
2868 Reviewed by Eric Seidel.
2870 https://bugs.webkit.org/show_bug.cgi?id=26969
2872 If the httpMethod() of the request passed to SubresourceLoader::create is not
2873 supported by the client we must expect to call didFail() while m_loader is still null.
2875 * loader/DocumentThreadableLoader.cpp:
2876 (DocumentThreadableLoader::didFail):Changed.
2878 2009-07-15 Mark Rowe <mrowe@apple.com>
2883 * css/MediaQueryEvaluator.cpp:
2884 * rendering/SVGRenderTreeAsText.cpp:
2885 * rendering/style/SVGRenderStyle.cpp:
2886 * svg/graphics/SVGPaintServer.cpp:
2888 2009-07-07 Alpha Lam <hclam@chromium.org>
2890 Reviewed by Dimitri Glazkov.
2892 [V8] drawImage method of HTMLCanvasElement to accept HTMLVideoElement as argument
2893 https://bugs.webkit.org/show_bug.cgi?id=27170
2895 Changed CanvasRenderingContext2DDrawImage() to accept HTMLVideoElement
2896 as a parameter of drawImage() for HTMLCanvasElement.
2898 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
2900 2009-07-15 Adam Barth <abarth@webkit.org>
2902 Reviewed by Dimitri Glazkov.
2904 [V8] Fix isolated world constructors
2905 https://bugs.webkit.org/show_bug.cgi?id=27287
2907 Don't enter V8Proxy::m_context before creating DOM constructors.
2908 Instead, use getWrapperContext to get the right context.
2910 After this patch, all my tests pass. I'll enable the feature
2911 downstream and land the tests.
2913 * bindings/scripts/CodeGeneratorV8.pm:
2914 * bindings/v8/V8DOMWrapper.cpp:
2915 (WebCore::V8DOMWrapper::getConstructor):
2916 (WebCore::V8DOMWrapper::lookupDOMWrapper):
2917 * bindings/v8/V8DOMWrapper.h:
2918 * bindings/v8/V8IsolatedWorld.cpp:
2919 (WebCore::V8IsolatedWorld::evaluate):
2920 * bindings/v8/V8Proxy.cpp:
2921 (WebCore::V8Proxy::createWrapperFromCache):
2922 (WebCore::V8Proxy::isContextInitialized):
2923 (WebCore::V8Proxy::disposeContextHandles):
2924 (WebCore::V8Proxy::installDOMWindow):
2925 (WebCore::V8Proxy::initContextIfNeeded):
2926 (WebCore::V8Proxy::getHiddenObjectPrototype):
2927 (WebCore::V8Proxy::installHiddenObjectPrototype):
2928 * bindings/v8/V8Proxy.h:
2930 2009-07-15 Antonio Gomes <antonio.gomes@openbossa.org>
2932 Reviewed by Darin Adler.
2934 useless null-check statement in visible_units.cpp@logicalStartOfLine
2935 https://bugs.webkit.org/show_bug.cgi?id=27154
2939 * editing/visible_units.cpp:
2940 (WebCore::logicalStartOfLine): Doubled honorEditableBoundaryAtOrAfter() call removed.
2942 2009-07-15 Brady Eidson <beidson@apple.com>
2944 Reviewed by Dan Bernstein.
2946 https://bugs.webkit.org/show_bug.cgi?id=27304
2947 WebKit should provide usage and eligibility information about the page cache.
2951 * history/CachedFrame.cpp:
2952 (WebCore::CachedFrame::childFrameCount):
2953 * history/CachedFrame.h:
2955 * history/PageCache.cpp:
2956 (WebCore::PageCache::frameCount):
2957 (WebCore::PageCache::autoreleasedPageCount):
2958 * history/PageCache.h:
2959 (WebCore::PageCache::pageCount):
2961 2009-07-15 Shinichiro Hamaji <hamaji@chromium.org>
2963 Reviewed by David Levin.
2965 Chromium's canvas forgets its context after fillText again
2966 https://bugs.webkit.org/show_bug.cgi?id=27293
2968 No new tests because the test for this was already added in
2969 https://bugs.webkit.org/show_bug.cgi?id=26436
2971 * platform/graphics/chromium/TransparencyWin.cpp:
2972 (WebCore::TransparencyWin::compositeTextComposite):
2974 2009-07-14 David Hyatt <hyatt@apple.com>
2976 Reviewed by Simon Fraser.
2978 https://bugs.webkit.org/show_bug.cgi?id=27283
2980 Implement the new 'rem' unit from CSS3.
2982 Added some rem-* tests in fast/css.
2985 * css/CSSParser.cpp:
2986 (WebCore::CSSParser::validUnit):
2987 (WebCore::unitFromString):
2988 (WebCore::CSSParser::parseValue):
2989 (WebCore::CSSParser::lex):
2990 * css/CSSParserValues.cpp:
2991 (WebCore::CSSParserValue::createCSSValue):
2992 * css/CSSPrimitiveValue.cpp:
2993 (WebCore::CSSPrimitiveValue::computeLengthInt):
2994 (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
2995 (WebCore::CSSPrimitiveValue::computeLengthShort):
2996 (WebCore::CSSPrimitiveValue::computeLengthFloat):
2997 (WebCore::CSSPrimitiveValue::computeLengthDouble):
2998 (WebCore::CSSPrimitiveValue::cssText):
2999 (WebCore::CSSPrimitiveValue::parserValue):
3000 * css/CSSPrimitiveValue.h:
3001 (WebCore::CSSPrimitiveValue::):
3002 (WebCore::CSSPrimitiveValue::isUnitTypeLength):
3003 * css/CSSStyleSelector.cpp:
3004 (WebCore::CSSStyleSelector::initForStyleResolve):
3005 (WebCore::convertToLength):
3006 (WebCore::CSSStyleSelector::applyProperty):
3007 (WebCore::CSSStyleSelector::mapFillSize):
3008 (WebCore::CSSStyleSelector::mapFillXPosition):
3009 (WebCore::CSSStyleSelector::mapFillYPosition):
3010 (WebCore::CSSStyleSelector::createTransformOperations):
3011 * css/CSSStyleSelector.h:
3012 * css/MediaQueryEvaluator.cpp:
3013 (WebCore::device_heightMediaFeatureEval):
3014 (WebCore::device_widthMediaFeatureEval):
3015 (WebCore::heightMediaFeatureEval):
3016 (WebCore::widthMediaFeatureEval):
3017 * css/WebKitCSSMatrix.cpp:
3018 (WebCore::WebKitCSSMatrix::setMatrixValue):
3019 * css/tokenizer.flex:
3021 (WebCore::Document::Document):
3023 (WebCore::Document::usesRemUnits):
3024 (WebCore::Document::setUsesRemUnits):
3026 (WebCore::Element::recalcStyle):
3027 * rendering/SVGRenderTreeAsText.cpp:
3028 (WebCore::writeStyle):
3029 * rendering/style/SVGRenderStyle.cpp:
3030 (WebCore::SVGRenderStyle::cssPrimitiveToLength):
3031 * svg/graphics/SVGPaintServer.cpp:
3032 (WebCore::applyStrokeStyleToContext):
3033 (WebCore::dashArrayFromRenderingStyle):
3034 * svg/graphics/SVGPaintServer.h:
3036 2009-07-15 Dimitri Glazkov <dglazkov@chromium.org>
3038 Unreviewed, build fix.
3040 Remove extraneous qualifier, accidentally added in http://trac.webkit.org/changeset/45884.
3042 * bindings/v8/V8DOMWrapper.h: Removed extraneous qualifier.
3044 2009-07-15 Dimitri Glazkov <dglazkov@chromium.org>
3046 Reviewed by Darin Fisher.
3048 [V8] Update bindings for ValiditeState patch.
3049 https://bugs.webkit.org/show_bug.cgi?id=19562
3051 * bindings/v8/DOMObjectsInclude.h:
3052 * bindings/v8/DerivedSourcesAllInOne.cpp:
3053 * bindings/v8/V8Index.cpp:
3054 * bindings/v8/V8Index.h:
3056 2009-07-15 Laszlo Gombos <laszlo.1.gombos@nokia.com>
3058 Reviewed by Simon Hausmann.
3060 [Qt] Cleanup - Remove obsolete code from the make system
3061 https://bugs.webkit.org/show_bug.cgi?id=27299
3065 2009-07-15 Simon Hausmann <simon.hausmann@nokia.com>
3067 Reviewed by Ariya Hidayat.
3069 Fix the build without media elements.
3071 * rendering/HitTestResult.cpp:
3072 (WebCore::HitTestResult::absoluteMediaURL): Add #if ENABLE(VIDEO)
3073 markers around the body of the method.
3075 2009-07-14 Pavel Feldman <pfeldman@chromium.org>
3077 Reviewed by Timothy Hatcher.
3079 WebInspector: Move storeLastActivePanel out of the
3080 ifdef ENABLE_JAVASCRIPT_DEBUGGER section in IDL;
3081 Add default panel for the first opening of the
3084 https://bugs.webkit.org/show_bug.cgi?id=27263
3086 * inspector/InspectorController.cpp:
3087 (InspectorController::setWindowVisible):
3088 * inspector/InspectorController.idl:
3090 2009-07-14 Darin Adler <darin@apple.com>
3092 Try to fix Windows build.
3094 * bindings/scripts/CodeGeneratorCOM.pm: Add Reflect and ReflectURL support.
3096 2009-07-14 Pierre d'Herbemont <pdherbemont@apple.com>
3098 Reviewed by Oliver Hunt.
3100 HTMLMediaElement::supportsFullscreen() should return false
3101 https://bugs.webkit.org/show_bug.cgi?id=27284
3103 (Reverting a part of 45875)
3105 HTMLVideoElement::supportsFullscreen() will properly do the
3106 job, and check if the backend supports fullscreen.
3108 HTMLVideoElement is the only subclass to support fullscreen
3109 (conditionnaly). HTMLAudioElement fullscreen is not supported
3110 and is a different kind of fullscreen, if it comes to be wanted.
3112 No test can be done currently given that none of the media
3113 backends support fullscreen.
3115 * html/HTMLMediaElement.cpp:
3116 * html/HTMLMediaElement.h:
3117 (WebCore::HTMLMediaElement::supportsFullscreen):
3119 2009-07-14 Darin Adler <darin@apple.com>
3121 Reviewed by Dimitri Glazkov.
3123 Next step in making DOM attribute getter/setters consistently use AtomicString
3124 https://bugs.webkit.org/show_bug.cgi?id=25425
3126 This covers eight DOM classes, and for each one of the classes:
3128 - Changes the IDL to use the Reflect syntax for all simple cases.
3129 - Removes unused functions in the classes, mainly newly unused ones that were
3130 used for reflection before.
3131 - Removes unneeded explicitly defined destructors.
3132 - Explicitly declares destructors as virtual.
3133 - Removes unneeded includes.
3134 - Makes members protected or private rather than public where possible.
3135 - Renames "doc" to "document".
3136 - Tweaks formatting to match our latest style in a few places.
3137 - Improves some FIXME comments.
3139 Over time we'll want to do this for all HTML DOM classes.
3141 * html/HTMLAnchorElement.cpp:
3142 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
3143 * html/HTMLAnchorElement.h:
3144 (WebCore::HTMLAnchorElement::endTagRequirement):
3145 (WebCore::HTMLAnchorElement::tagPriority):
3146 * html/HTMLAnchorElement.idl:
3147 * html/HTMLAppletElement.cpp:
3148 * html/HTMLAppletElement.h:
3149 * html/HTMLAppletElement.idl:
3150 * html/HTMLAreaElement.cpp:
3151 (WebCore::HTMLAreaElement::parseMappedAttribute):
3152 * html/HTMLAreaElement.h:
3153 (WebCore::HTMLAreaElement::endTagRequirement):
3154 (WebCore::HTMLAreaElement::tagPriority):
3155 * html/HTMLAreaElement.idl:
3156 * html/HTMLBRElement.cpp:
3157 (WebCore::HTMLBRElement::parseMappedAttribute):
3158 * html/HTMLBRElement.h:
3159 * html/HTMLBRElement.idl:
3160 * html/HTMLBaseElement.cpp:
3161 (WebCore::HTMLBaseElement::HTMLBaseElement):
3162 (WebCore::HTMLBaseElement::removedFromDocument):
3163 (WebCore::HTMLBaseElement::process):
3164 * html/HTMLBaseElement.h:
3165 * html/HTMLBaseElement.idl:
3166 * html/HTMLBaseFontElement.cpp:
3167 (WebCore::HTMLBaseFontElement::HTMLBaseFontElement):
3168 * html/HTMLBaseFontElement.h:
3169 (WebCore::HTMLBaseFontElement::endTagRequirement):
3170 (WebCore::HTMLBaseFontElement::tagPriority):
3171 * html/HTMLBaseFontElement.idl:
3172 * html/HTMLBlockquoteElement.cpp:
3173 (WebCore::HTMLBlockquoteElement::HTMLBlockquoteElement):
3174 * html/HTMLBlockquoteElement.h:
3175 (WebCore::HTMLBlockquoteElement::tagPriority):
3176 * html/HTMLBlockquoteElement.idl:
3177 * html/HTMLBodyElement.cpp:
3178 (WebCore::HTMLBodyElement::HTMLBodyElement):
3179 (WebCore::HTMLBodyElement::addSubresourceAttributeURLs):
3180 * html/HTMLBodyElement.h:
3181 (WebCore::HTMLBodyElement::endTagRequirement):
3182 (WebCore::HTMLBodyElement::tagPriority):
3183 * html/HTMLBodyElement.idl:
3184 Made changes as described above.
3186 * loader/FrameLoader.cpp: Removed unneeded include of HTMLAnchorElement.h.
3188 2009-07-14 Steve Falkenburg <sfalken@apple.com>
3190 Reorganize JavaScriptCore headers into:
3191 API: include/JavaScriptCore/
3192 Private: include/private/JavaScriptCore/
3194 Reviewed by Darin Adler.
3196 * WebCore.vcproj/QTMovieWin.vcproj:
3197 * WebCore.vcproj/WebCoreCommon.vsprops:
3198 * WebCore.vcproj/build-generated-files.sh:
3200 2009-07-14 Zoltan Horvath <hzoltan@inf.u-szeged.hu>
3202 Reviewed by Darin Adler.
3204 Change all Noncopyable inheriting visibility to public.
3205 https://bugs.webkit.org/show_bug.cgi?id=27225
3207 Change all Noncopyable inheriting visibility to public because
3208 it is needed to the custom allocation framework (bug #20422).
3210 * bindings/js/GCController.h:
3211 * bindings/js/WorkerScriptController.h:
3212 * bindings/v8/V8DOMMap.cpp:
3215 * css/CSSSelector.h:
3216 * css/CSSSelectorList.h:
3217 * css/CSSStyleSelector.h:
3219 * dom/MessagePortChannel.h:
3220 * dom/XMLTokenizerLibxml2.cpp:
3221 * dom/XMLTokenizerScope.h:
3222 * editing/ReplaceSelectionCommand.cpp:
3223 * editing/SelectionController.h:
3224 * editing/TextIterator.cpp:
3225 * history/PageCache.h:
3226 * html/CanvasRenderingContext2D.h:
3227 * html/HTMLParser.h:
3228 * html/HTMLParserQuirks.h:
3229 * html/PreloadScanner.h:
3231 * loader/CrossOriginPreflightResultCache.h:
3232 * loader/FrameLoader.h:
3233 * loader/ProgressTracker.h:
3234 * loader/ThreadableLoader.h:
3235 * loader/appcache/ApplicationCacheGroup.h:
3236 * loader/archive/ArchiveResourceCollection.h:
3237 * loader/icon/IconDatabase.h:
3238 * loader/icon/IconLoader.h:
3239 * loader/icon/PageURLRecord.h:
3241 * page/ContextMenuController.h:
3242 * page/EventHandler.h:
3246 * page/PageGroupLoadDeferrer.h:
3247 * page/mac/EventHandlerMac.mm:
3248 * platform/AutodrainedPool.h:
3249 * platform/ContextMenu.h:
3250 * platform/EventLoop.h:
3251 * platform/HostWindow.h:
3252 * platform/Pasteboard.h:
3253 * platform/PurgeableBuffer.h:
3254 * platform/RunLoopTimer.h:
3255 * platform/ThreadGlobalData.h:
3256 * platform/ThreadTimers.h:
3258 * platform/TreeShared.h:
3259 * platform/graphics/FontData.h:
3260 * platform/graphics/GlyphWidthMap.h:
3261 * platform/graphics/GraphicsContext.h:
3262 * platform/graphics/ImageBuffer.h:
3263 * platform/graphics/ImageSource.h:
3264 * platform/graphics/MediaPlayer.h:
3265 * platform/graphics/skia/GraphicsContextPlatformPrivate.h:
3266 * platform/graphics/skia/PlatformContextSkia.h:
3267 * platform/graphics/win/QTMovieWin.cpp:
3268 * platform/mac/LocalCurrentGraphicsContext.h:
3269 * platform/network/FormDataBuilder.h:
3270 * platform/network/ResourceHandleInternal.h:
3271 * platform/network/soup/ResourceHandleSoup.cpp:
3272 * platform/text/StringBuffer.h:
3273 * platform/text/TextCodec.h:
3274 * platform/win/WindowMessageBroadcaster.h:
3275 * rendering/CounterNode.h:
3276 * rendering/LayoutState.h:
3277 * rendering/RenderFrameSet.h:
3278 * rendering/RenderView.h:
3279 * rendering/TransformState.h:
3280 * svg/SVGAnimatedProperty.h:
3281 * svg/SynchronizableTypeWrapper.h:
3282 * workers/WorkerMessagingProxy.h:
3283 * workers/WorkerRunLoop.cpp:
3284 * xml/XPathExpressionNode.h:
3285 * xml/XPathParser.h:
3286 * xml/XPathPredicate.h:
3289 2009-07-14 Darin Fisher <darin@chromium.org>
3291 Reviewed by Darin Adler.
3293 Fails to save document state when navigating away from a page with a
3295 https://bugs.webkit.org/show_bug.cgi?id=27281
3297 Test: fast/history/saves-state-after-fragment-nav.html
3299 * history/HistoryItem.cpp:
3300 (WebCore::HistoryItem::isCurrentDocument): Use equalIgnoringRef
3303 2009-07-14 Joseph Pecoraro <joepeck02@gmail.com>
3305 Reviewed by Sam Weinig.
3307 Inspector: Remove Unintended Global Variables
3308 https://bugs.webkit.org/show_bug.cgi?id=27203
3310 * inspector/front-end/Console.js:
3311 (WebInspector.Console.prototype._ensureCommandLineAPIInstalled):
3312 * inspector/front-end/DatabasesPanel.js:
3313 (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
3314 * inspector/front-end/ObjectPropertiesSection.js:
3315 (WebInspector.ObjectPropertyTreeElement.prototype.update):
3316 * inspector/front-end/inspector.js:
3317 (WebInspector.animateStyle):
3319 2009-07-14 Michelangelo De Simone <micdesim@gmail.com>
3321 Reviewed by Adele Peterson.
3323 https://bugs.webkit.org/show_bug.cgi?id=19562
3324 Added build stuff and stub for the ValidityState class, part of HTML5
3326 http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#validitystate
3328 Test: fast/forms/ValidityState-001.html
3330 * DerivedSources.cpp: Inclusion of ValidityState files
3331 * DerivedSources.make: ditto
3332 * GNUmakefile.am: ditto
3333 * WebCore.gypi: ditto
3334 * WebCore.pro: ditto
3335 * WebCore.vcproj/WebCore.vcproj: ditto
3336 * WebCore.xcodeproj/project.pbxproj: ditto
3337 * WebCoreSources.bkl: ditto
3338 * html/HTMLButtonElement.idl: validity attribute
3339 * html/HTMLFieldSetElement.idl: ditto
3340 * html/HTMLFormControlElement.cpp:
3341 (WebCore::HTMLFormControlElement::validity): ValidityState getter
3342 * html/HTMLFormControlElement.h: ditto
3343 * html/HTMLInputElement.idl: validity attribute
3344 * html/HTMLSelectElement.idl: ditto
3345 * html/HTMLTextAreaElement.idl: ditto
3346 * html/ValidityState.cpp: Added.
3347 (WebCore::ValidityState::ValidityState):
3348 (WebCore::ValidityState::valid): validation flag
3349 * html/ValidityState.h: Added.
3350 (WebCore::ValidityState::create): validation flag
3351 (WebCore::ValidityState::control): ditto
3352 (WebCore::ValidityState::valueMissing): ditto
3353 (WebCore::ValidityState::typeMismatch): ditto
3354 (WebCore::ValidityState::patternMismatch): ditto
3355 (WebCore::ValidityState::tooLong): ditto
3356 (WebCore::ValidityState::rangeUnderflow): ditto
3357 (WebCore::ValidityState::rangeOverflow): ditto
3358 (WebCore::ValidityState::stepMismatch): ditto
3359 (WebCore::ValidityState::customError): ditto
3360 * html/ValidityState.idl: Added.
3362 2009-07-14 Ryosuke Niwa <rniwa@google.com>
3364 Reviewed by Eric Seidel.
3366 Outdenting a line inside a blockquote tag does nothing
3367 https://bugs.webkit.org/show_bug.cgi?id=25316
3369 The bug was caused by the code checking whether the blockquote is created by WebKit or not.
3370 We simply remove this code to be consistent with Firefox and Internet Explorer.
3371 Also, enclosingBlockFlow == enclosingNode in outdentParagraph isn't a sufficient condition to insert
3372 the placeholder before the enclosingNode because there could be contents before the current paragraph.
3373 Instead, we should split the enclosingNode (which is a blockquote) at the starting position of outdentation.
3374 It turned out that this solves the bug 25315 also: https://bugs.webkit.org/show_bug.cgi?id=25315
3376 Test: editing/execCommand/outdent-regular-blockquote.html
3378 * editing/IndentOutdentCommand.cpp:
3379 (WebCore::isIndentBlockquote): no longer checks whether a blockquote is created by WebKit or not.
3380 (WebCore::IndentOutdentCommand::outdentParagraph): takes care of the case enclosingBlockFlow == enclosingNode
3382 2009-07-14 Adam Barth <abarth@webkit.org>
3384 Reviewed by Dimitri Glazkov.
3386 [V8] Fix isolated world wrappers for Node prototypes
3387 https://bugs.webkit.org/show_bug.cgi?id=27277
3389 This change does two things:
3391 1) We bypass the wrapper cache in the isolated world. This is because
3392 the wrapper template cache has prototypes that lead to the main
3393 world. We can add a template cache for the isolated world if
3394 performance warrants.
3396 2) We introduce a smarter way to grab the wrapper context for a frame
3397 that is aware that proxy <-> context do not stand in one-to-one
3398 correspondence. This generalizes our solution for the node wrapper
3401 The net result is that Node wrappers get the right prototypes. As
3402 before, tests to follow.
3404 * bindings/v8/V8DOMWrapper.cpp:
3405 (WebCore::V8DOMWrapper::setHiddenWindowReference):
3406 (WebCore::V8DOMWrapper::instantiateV8Object):
3407 (WebCore::V8DOMWrapper::convertNodeToV8Object):
3408 (WebCore::V8DOMWrapper::convertWindowToV8Object):
3409 (WebCore::V8DOMWrapper::getWrapperContext):
3410 * bindings/v8/V8DOMWrapper.h:
3412 2009-07-14 Adam Barth <abarth@webkit.org>
3414 Reviewed by Dimitri Glazkov.
3416 [V8] Fix isolated world wrappers for Nodes
3417 https://bugs.webkit.org/show_bug.cgi?id=27271
3419 Previously, we keepy a pointer to the DOMMap on V8Proxy, but this
3420 caused us to miss the branch in V8DOMMap.cpp for isolated worlds.
3422 I have tests, but I can't land them until I get this feature under
3425 * bindings/v8/V8DOMWrapper.cpp:
3426 (WebCore::V8DOMWrapper::convertNodeToV8Object):
3427 * bindings/v8/V8Proxy.h:
3428 (WebCore::V8Proxy::V8Proxy):
3430 2009-07-14 Adam Barth <abarth@webkit.org>
3432 Reviewed by Dimitri Glazkov.
3434 [V8] Fix isolated world crash on getting window.location
3435 https://bugs.webkit.org/show_bug.cgi?id=27268
3437 I have a test for this locally, but it requires a compile-time hack to
3438 run. Once I get the feature's stability under control, we can turn the
3439 feature on and add the tests.
3441 * bindings/v8/V8DOMWrapper.cpp:
3442 (WebCore::V8DOMWrapper::setHiddenWindowReference):
3443 * bindings/v8/V8IsolatedWorld.h:
3444 (WebCore::V8IsolatedWorld::context):
3446 2009-07-14 Brent Fulgham <bfulgham@webkit.org>
3448 Correct failing tests after r45875. The original patch did not
3449 test the m_player member for null, causing crashes. This will
3450 happen fairly frequently in real use. Was this original patch
3452 https://bugs.webkit.org/show_bug.cgi?id=27246
3454 Test via existing media tests.
3456 * html/HTMLMediaElement.cpp:
3457 (WebCore::HTMLMediaElement::supportsFullscreen): Check for null pointer.
3458 (WebCore::HTMLMediaElement::supportsSave): Check for null pointer.
3460 2009-07-14 Avi Drissman <avi@chromium.org>
3462 Reviewed by Darin Fisher.
3464 Explicitly mark the HTML generated for the Mac as being UTF-8 encoded.
3465 The Windows clipboard format is explicitly documented as being UTF-8,
3466 and all Linux apps assume UTF-8. On the Mac, though, unless otherwise
3467 indicated, Windows-1252 is assumed, which is wrong.
3469 Bug: https://bugs.webkit.org/show_bug.cgi?id=27262
3473 * platform/chromium/ClipboardChromium.cpp:
3474 (WebCore::ClipboardChromium::writeRange):
3475 * platform/chromium/PasteboardChromium.cpp:
3476 (WebCore::Pasteboard::writeSelection):
3478 2009-07-14 Albert J. Wong <ajwong@chromium.org>
3480 Reviewed by Dimitri Glazkov.
3482 Upstream V8NPObject.h and V8NPObject.cpp.
3483 https://bugs.webkit.org/show_bug.cgi?id=27103
3485 This just upstreams the files from the chromium code base. Only
3486 minor changes to formatting and similar were done, so no testing
3487 is required because nothing really changed. Code verified to compile.
3489 * bindings/v8/ScriptController.cpp:
3490 (WebCore::ScriptController::bindToWindowObject):
3491 (WebCore::ScriptController::createScriptInstanceForWidget):
3492 * bindings/v8/V8NPObject.cpp: Added.
3493 (npObjectInvokeImpl):
3494 (npObjectMethodHandler):
3495 (npObjectInvokeDefaultHandler):
3496 (weakTemplateCallback):
3497 (npObjectGetProperty):
3498 (npObjectNamedPropertyGetter):
3499 (npObjectIndexedPropertyGetter):
3500 (npObjectGetNamedProperty):
3501 (npObjectGetIndexedProperty):
3502 (npObjectSetProperty):
3503 (npObjectNamedPropertySetter):
3504 (npObjectIndexedPropertySetter):
3505 (npObjectSetNamedProperty):
3506 (npObjectSetIndexedProperty):
3507 (weakNPObjectCallback):
3508 (createV8ObjectForNPObject):
3509 (forgetV8ObjectForNPObject):
3510 * bindings/v8/V8NPObject.h: Added.
3511 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
3512 (WebCore::NAMED_PROPERTY_GETTER):
3513 (WebCore::NAMED_PROPERTY_SETTER):
3514 (WebCore::CALLBACK_FUNC_DECL):
3515 (WebCore::INDEXED_PROPERTY_GETTER):
3516 (WebCore::INDEXED_PROPERTY_SETTER):
3519 2009-07-14 Albert J. Wong <ajwong@chromium.org>
3521 Reviewed by Darin Adler.
3523 Add HTMLMediaElement::supportSave() and a
3524 HitTestResult::absoluteMediaURL() functions
3525 https://bugs.webkit.org/show_bug.cgi?id=27246
3527 Added an implementation of supportsSave() into HTMLMediaElement
3528 that delegates to MediaPlayerPrivateImpl so that the media engine
3529 is able to signal whether or not a media source supports saving.
3531 Also added a function to HitTestResult that allows for retrieval
3532 of the currentSrc associated with the "hit" media element.
3534 These functions are just pipeing with no visible UI change so there
3535 are no related layout test changes.
3537 * html/HTMLMediaElement.cpp:
3538 (WebCore::HTMLMediaElement::supportsFullscreen):
3539 (WebCore::HTMLMediaElement::supportsSave):
3540 * html/HTMLMediaElement.h:
3541 * platform/graphics/MediaPlayer.cpp:
3542 (WebCore::MediaPlayer::supportsSave):
3543 * platform/graphics/MediaPlayer.h:
3544 * platform/graphics/MediaPlayerPrivate.h:
3545 (WebCore::MediaPlayerPrivateInterface::supportsFullscreen):
3546 (WebCore::MediaPlayerPrivateInterface::supportsSave):
3547 * rendering/HitTestResult.cpp:
3548 (WebCore::HitTestResult::altDisplayString):
3549 (WebCore::HitTestResult::absoluteMediaURL):
3550 * rendering/HitTestResult.h:
3552 2009-07-14 Dimitri Glazkov <dglazkov@chromium.org>
3554 Reviewed by Adam Barth.
3556 [V8] Implement Reflect and ReflectURL attribute support.
3557 https://bugs.webkit.org/show_bug.cgi?id=27273
3559 * bindings/scripts/CodeGeneratorV8.pm: Added support for Reflect and ReflectURL attributes.
3561 2009-07-14 Dmitry Titov <dimich@chromium.org>
3563 Reviewed by Darin Adler.
3565 https://bugs.webkit.org/show_bug.cgi?id=27266
3566 Add hasCurrentPoint() to WebCore::Path.
3567 This fixes Skia-based Chromium regression caused by the fix for
3568 https://bugs.webkit.org/show_bug.cgi?id=27187.
3569 For Skia, the new method always returns 'true', pending actual implementation.
3570 This means Chromium still will differ from Gecko behavior, but at least its Canvas
3571 will not be completely broken.
3573 Existing Canvas Layout Tests should pass in Chromium after this change.
3575 * html/CanvasRenderingContext2D.cpp:
3576 (WebCore::CanvasRenderingContext2D::lineTo): insteand of Path::isEmpty() test for hasCurrentPoint().
3577 (WebCore::CanvasRenderingContext2D::quadraticCurveTo): ditto.
3578 (WebCore::CanvasRenderingContext2D::bezierCurveTo): ditto.
3580 * platform/graphics/Path.h:
3581 * platform/graphics/cairo/PathCairo.cpp:
3582 (WebCore::Path::hasCurrentPoint):
3583 * platform/graphics/cg/PathCG.cpp:
3584 (WebCore::Path::isEmpty):
3585 (WebCore::Path::hasCurrentPoint):
3586 * platform/graphics/qt/PathQt.cpp:
3587 (WebCore::Path::hasCurrentPoint):
3588 * platform/graphics/skia/PathSkia.cpp:
3589 (WebCore::Path::hasCurrentPoint):
3590 * platform/graphics/wx/PathWx.cpp:
3591 (WebCore::Path::hasCurrentPoint):
3592 All these files add a Path::hasCurrentPoint() for various platforms.
3594 2009-07-14 Nate Chapin <japhet@chromium.org>
3596 Reviewed by Sam Weinig.
3598 Upstream RGBColor from src.chromium.org.
3600 https://bugs.webkit.org/show_bug.cgi?id=27133
3602 * WebCore.gypi: Add RGBColor
3603 * css/RGBColor.cpp: Added.
3604 (WebCore::RGBColor::create):
3605 (WebCore::RGBColor::red):
3606 (WebCore::RGBColor::green):
3607 (WebCore::RGBColor::blue):
3608 * css/RGBColor.h: Added.
3609 (WebCore::RGBColor::RGBColor):
3611 2009-07-10 Matt Perry <mpcomplete@chromium.org>
3613 Reviewed by Darin Fisher.
3615 [V8] Rename the didCreate/DestroyScriptContext calls to make it
3616 clear that that those refer to the frame's contxt. Add another
3617 similar call for when creating contexts via evaluateInNewContext.
3618 https://bugs.webkit.org/show_bug.cgi?id=27104
3620 * bindings/v8/V8Proxy.cpp:
3621 (WebCore::V8Proxy::evaluateInNewContext):
3622 (WebCore::V8Proxy::disposeContextHandles):
3623 (WebCore::V8Proxy::initContextIfNeeded):
3624 * loader/EmptyClients.h:
3625 (WebCore::EmptyFrameLoaderClient::didCreateScriptContextForFrame):
3626 (WebCore::EmptyFrameLoaderClient::didDestroyScriptContextForFrame):
3627 (WebCore::EmptyFrameLoaderClient::didCreateIsolatedScriptContext):
3628 * loader/FrameLoaderClient.h:
3630 2009-07-14 Brent Fulgham <bfulgham@webkit.org>
3632 Revert http://trac.webkit.org/changeset/45864 after
3633 breaking of Windows build.
3635 * storage/LocalStorageTask.cpp:
3636 * storage/LocalStorageTask.h:
3637 * storage/Storage.cpp:
3638 * storage/Storage.h:
3639 * storage/StorageArea.cpp:
3640 * storage/StorageArea.h:
3641 * storage/StorageAreaImpl.cpp:
3642 * storage/StorageAreaImpl.h:
3643 * storage/StorageAreaSync.cpp:
3644 * storage/StorageAreaSync.h:
3645 * storage/StorageEvent.cpp:
3646 * storage/StorageEvent.h:
3647 (WebCore::StorageEvent::create):
3648 (WebCore::StorageEvent::StorageEvent):
3649 * storage/StorageNamespace.h:
3650 * storage/StorageNamespaceImpl.cpp:
3651 * storage/StorageNamespaceImpl.h:
3652 * storage/StorageSyncManager.cpp:
3653 * storage/StorageSyncManager.h:
3655 2009-07-11 Jeremy Orlow <jorlow@chromium.org>
3657 Reviewed by Darin Adler.
3659 Cleanup DOM Storage dependencies.
3660 https://bugs.webkit.org/show_bug.cgi?id=27180
3662 DOM Storage had several unnecessary (and probably unintended)
3663 dependencies. This patch replaces many includes of header files with
3664 forward declaration of classes, making some destructors explicit, and
3665 taking some factories out of the header files.
3667 This will allow things like StorageAreaSync to take a StorageAreaImpl*
3668 (as it should) rather than a StorageArea* which previously weren't
3669 possible because the dependencies were such a tangled mess.
3671 * storage/LocalStorageTask.cpp:
3672 (WebCore::LocalStorageTask::~LocalStorageTask):
3673 * storage/LocalStorageTask.h:
3674 * storage/Storage.cpp:
3675 (WebCore::Storage::~Storage):
3676 * storage/Storage.h:
3677 * storage/StorageArea.cpp:
3678 * storage/StorageArea.h:
3679 * storage/StorageAreaImpl.cpp:
3680 * storage/StorageAreaImpl.h:
3681 * storage/StorageAreaSync.cpp:
3682 (WebCore::StorageAreaSync::~StorageAreaSync):
3683 * storage/StorageAreaSync.h:
3684 * storage/StorageEvent.cpp:
3685 (WebCore::StorageEvent::create):
3686 (WebCore::StorageEvent::StorageEvent):
3687 * storage/StorageEvent.h:
3688 * storage/StorageNamespace.h:
3689 * storage/StorageNamespaceImpl.cpp:
3690 * storage/StorageNamespaceImpl.h:
3691 * storage/StorageSyncManager.cpp:
3692 (WebCore::StorageSyncManager::~StorageSyncManager):
3693 * storage/StorageSyncManager.h:
3696 2009-07-14 Adam Treat <adam.treat@torchmobile.com>
3698 Reviewed by David Hyatt.
3700 https://bugs.webkit.org/show_bug.cgi?id=26983
3702 Check to make sure the view is attached to a frame() in the visibleContentsResized()
3703 method as it can be triggered before the view is attached by Frame::createView(...)
3704 setting various values such as setScrollBarModes(...) for example. An ASSERT is
3705 triggered when a view is layout before being attached to a frame().
3707 * page/FrameView.cpp:
3708 (WebCore::FrameView::visibleContentsResized):
3711 2009-07-14 Pavel Feldman <pfeldman@chromium.org>
3713 Reviewed by Timothy Hatcher.
3715 WebInspector: show last opened panel when invoking inspector.
3717 https://bugs.webkit.org/show_bug.cgi?id=27263
3719 * inspector/InspectorController.cpp:
3720 (WebCore::InspectorController::InspectorController):
3721 (WebCore::InspectorController::setWindowVisible):
3722 (WebCore::InspectorController::storeLastActivePanel):
3723 (WebCore::InspectorController::specialPanelForJSName):
3724 * inspector/InspectorController.h:
3725 (WebCore::InspectorController::Setting::Setting):
3726 * inspector/InspectorController.idl:
3727 * inspector/front-end/inspector.js:
3728 (WebInspector.set currentPanel):
3729 (WebInspector.loaded):
3731 2009-07-14 Anton Muhin <antonm@chromium.org>
3733 Reviewed by Dimitri Glazkov.
3735 Speed up access to NodeList length.
3736 https://bugs.webkit.org/show_bug.cgi?id=27264
3738 That's a minimal alternation of the code.
3740 * bindings/v8/custom/V8NodeListCustom.cpp:
3741 (WebCore::NAMED_PROPERTY_GETTER): 1) use AtomicString for comparison, 2) use
3742 v8::Integer::New instead of v8::Number::New.
3744 2009-07-14 Anton Muhin <antonm@chromium.org>
3746 Reviewed by Dimitri Glazkov.
3748 Do not do unnecessary conversions from v8::Handle<v8::Value> to
3749 v8::Handle<v8::Object> and accompanying changes.
3750 https://bugs.webkit.org/show_bug.cgi?id=26953
3754 1) do not cast from v8::Value to v8::Object if unnecessary---casts are cheap,
3755 but are not free (they check for emptiness of handle);
3756 2) inline conversion from wrapper to node;
3757 3) simplify case to an ASSERT.
3759 This is just a refactoring, so no new tests are needed.
3761 * bindings/scripts/CodeGeneratorV8.pm:
3762 * bindings/v8/V8Proxy.cpp:
3763 (WebCore::V8Proxy::evaluateInNewContext):
3764 (WebCore::V8Proxy::convertToSVGPODTypeImpl):
3765 * bindings/v8/V8Proxy.h:
3766 (WebCore::V8Proxy::convertDOMWrapperToNative):
3767 (WebCore::V8Proxy::convertToNativeObject):
3768 (WebCore::V8Proxy::convertToNativeEvent):
3769 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
3770 (WebCore::toCanvasStyle):
3771 (WebCore::CALLBACK_FUNC_DECL):
3772 * bindings/v8/custom/V8CustomBinding.cpp:
3773 (WebCore::V8Custom::GetTargetFrame):
3774 * bindings/v8/custom/V8DOMWindowCustom.cpp:
3775 (WebCore::CALLBACK_FUNC_DECL):
3776 (WebCore::V8Custom::ClearTimeoutImpl):
3777 (WebCore::NAMED_ACCESS_CHECK):
3778 (WebCore::INDEXED_ACCESS_CHECK):
3779 * bindings/v8/custom/V8DocumentCustom.cpp:
3780 (WebCore::CALLBACK_FUNC_DECL):
3781 * bindings/v8/custom/V8LocationCustom.cpp:
3782 (WebCore::CALLBACK_FUNC_DECL):
3784 2009-07-14 Darin Adler <darin@apple.com>
3786 Reviewed by Dan Bernstein.
3788 Straight quotes should match fancy quotes in in-page search
3789 https://bugs.webkit.org/show_bug.cgi?id=27217
3791 Tests: fast/text/find-quotes.html
3793 * editing/TextIterator.cpp:
3794 (WebCore::foldQuoteMark): Added.
3795 (WebCore::foldQuoteMarks): Added.
3796 (WebCore::SearchBuffer::SearchBuffer): Call foldQuoteMarks on the target string.
3797 (WebCore::SearchBuffer::append): Call foldQuoteMarks on characters as they are
3798 added to the search buffer.
3800 * platform/text/CharacterNames.h: Added more quotation mark character names.
3801 Sorted character names with the sort tool.
3803 2009-07-13 Pavel Feldman <pfeldman@chromium.org>
3805 Reviewed by Timothy Hatcher.
3807 WebInspector: handle debugger shortcuts while on source frame or on
3808 script file selector.
3810 https://bugs.webkit.org/show_bug.cgi?id=27224
3812 * inspector/front-end/ScriptsPanel.js:
3813 (WebInspector.ScriptsPanel):
3814 * inspector/front-end/SourceFrame.js:
3815 (WebInspector.SourceFrame.prototype._loaded):
3817 2009-07-13 Sam Weinig <sam@webkit.org>
3819 Reviewed by Darin Adler.
3821 Use standard HashCountedSet instead of a hand rolled one
3824 * html/HTMLDocument.cpp:
3825 (WebCore::addItemToMap):
3826 (WebCore::removeItemFromMap):
3827 * html/HTMLDocument.h:
3829 2009-07-13 Erik Arvidsson <arv@chromium.org>
3831 Reviewed by Darin Adler and Maciej Stachowiak.
3833 Implement HTML5 draggable
3834 https://bugs.webkit.org/show_bug.cgi?id=26262
3836 This adds support for the HTML5 draggable attribute and its DOM binding. It maps the draggable property
3837 to the CSS properties -webkit-user-drag and -webkit-user-select respectively.
3839 Spec: http://www.whatwg.org/specs/web-apps/current-work/multipage/editing.html#the-draggable-attribute
3841 Test: fast/html/draggable.html
3844 * html/HTMLAnchorElement.cpp:
3845 (WebCore::HTMLAnchorElement::draggable):
3846 * html/HTMLAnchorElement.h:
3847 * html/HTMLAttributeNames.in:
3848 * html/HTMLElement.cpp:
3849 (WebCore::HTMLElement::draggable):
3850 (WebCore::HTMLElement::setDraggable):
3851 * html/HTMLElement.h:
3852 * html/HTMLElement.idl:
3853 * html/HTMLImageElement.cpp:
3854 (WebCore::HTMLImageElement::draggable):
3855 * html/HTMLImageElement.h:
3857 2009-07-13 Simon Fraser <simon.fraser@apple.com>
3859 Reviewed by Dan Bernstein.
3861 Image rendered as layer contents looks different from image rendered via CG.
3862 <rdar://problem/7048830>
3864 Fix a visible color profile difference between between images rendered via Core Graphics
3865 and those rendered via a compositing layer, by assigning the GenericRGB profile to
3866 untagged images (which come through as having the DeviceRGB profile) when they are set
3869 Test: compositing/color-matching/image-color-matching.html
3871 * platform/graphics/mac/GraphicsLayerCA.mm:
3872 (WebCore::GraphicsLayerCA::setContentsToImage):
3874 2009-07-13 Darin Adler <darin@apple.com>
3876 Reviewed by Oliver Hunt.
3878 https://bugs.webkit.org/show_bug.cgi?id=27220
3879 Assertion failure in createSearcher() (usearch_open() status is U_USING_DEFAULT_WARNING)
3881 * editing/TextIterator.cpp:
3882 (WebCore::createSearcher): Add U_USING_DEFAULT_WARNING as a possible status code
3883 in the assertion. Affects only the assertion.
3885 2009-07-13 Alexey Proskuryakov <ap@webkit.org>
3887 Reviewed by Darin Adler.
3889 https://bugs.webkit.org/show_bug.cgi?id=26925
3890 <rdar://problem/7027850> URL Fragment Breaks Application Cache Loads
3892 Test: http/tests/appcache/main-resource-hash.html
3894 * loader/appcache/ApplicationCache.cpp:
3895 (WebCore::ApplicationCache::resourceForURL):
3896 (WebCore::ApplicationCache::resourceForRequest):
3897 * loader/appcache/ApplicationCacheGroup.cpp:
3898 (WebCore::ApplicationCacheGroup::cacheForMainRequest):
3899 (WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest):
3900 (WebCore::ApplicationCacheGroup::selectCache):
3901 (WebCore::ApplicationCacheGroup::finishedLoadingMainResource):
3902 (WebCore::ApplicationCacheGroup::didReceiveResponse):
3903 (WebCore::ApplicationCacheGroup::didFail):
3904 (WebCore::ApplicationCacheGroup::addEntry):
3905 Remove URL fragment at appcache code borders.
3907 * loader/appcache/ApplicationCacheResource.h:
3908 (WebCore::ApplicationCacheResource::create):
3909 * loader/appcache/ApplicationCacheStorage.cpp:
3910 (WebCore::ApplicationCacheStorage::findOrCreateCacheGroup):
3911 (WebCore::ApplicationCacheStorage::cacheGroupForURL):
3912 (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
3913 Assert that there is no URL fragment in URL at key points in appcache code.
3915 2009-07-13 Darin Adler <darin@apple.com>
3917 Reviewed by Dan Bernstein.
3919 https://bugs.webkit.org/show_bug.cgi?id=27166
3920 rdar://problem/7015857
3921 Find for strings composed entirely of spaces doesn't work
3923 Test: fast/text/find-spaces.html
3925 * editing/TextIterator.cpp:
3926 (WebCore::findPlainText): Removed unneeded special case.
3927 The empty string case already works correctly.
3929 2009-07-13 Anders Carlsson <andersca@apple.com>
3931 Reviewed by Kevin Decker.
3933 Remove NPPVpluginPrivateModeBool, it was removed from the spec.
3937 2009-07-13 Feng Qian <feng@chromium.org>
3939 Reviewed by Dimitri Glazkov.
3941 Fix for https://bugs.webkit.org/show_bug.cgi?id=27237
3943 Make V8DOMMap.h compiling with gcc option -Werror=non=virtual-dtor.
3945 * bindings/v8/V8DOMMap.h:
3946 (WebCore::WeakReferenceMap::WeakReferenceMap):
3947 (WebCore::WeakReferenceMap::~WeakReferenceMap):
3949 2009-07-13 Dimitri Glazkov <dglazkov@chromium.org>
3951 Reviewed by Darin Fisher.
3953 Remove an accidental add of bidi.(cpp|h) to WebCore.gypi.
3955 * WebCore.gypi: Removed bidi.cpp and bidi.h
3957 2009-07-13 Dimitri Glazkov <dglazkov@chromium.org>
3959 Reviewed by Darin Fisher.
3961 Update WebCore.gyp in preparation to hooking it up.
3963 * WebCore.gypi: Added files that were mid-stream while switching over.
3965 2009-07-13 Dmitry Titov <dimich@chromium.org>
3967 Not reviewed, another small fix for Chromium build.
3969 * bindings/v8/ScriptController.cpp:
3970 (WebCore::ScriptController::evaluate):
3972 2009-07-13 Dmitry Titov <dimich@chromium.org>
3974 Not reviewed, fix Chromium build bustage.
3976 * bindings/v8/ScriptController.cpp:
3977 (WebCore::ScriptController::evaluate):
3978 * bindings/v8/V8Proxy.cpp:
3979 (WebCore::JavaScriptConsoleMessage::addToPage):
3980 * bindings/v8/WorkerContextExecutionProxy.cpp:
3981 (WebCore::handleConsoleMessage):
3983 2009-07-13 Sam Weinig <sam@webkit.org>
3985 Reviewed by Darin Adler.
3987 Fix for https://bugs.webkit.org/show_bug.cgi?id=27234
3988 <rdar://problem/7054356>
3990 Add null page check in HTMLDocument::hasFocus.
3992 Test: fast/dom/HTMLDocument/hasFocus-frameless-crash.html
3994 * html/HTMLDocument.cpp:
3995 (WebCore::HTMLDocument::hasFocus): Add page null check.
3996 (WebCore::HTMLDocument::createTokenizer): Cleanup page null check.
3998 2009-07-13 Dan Bernstein <mitz@apple.com>
4000 Reviewed by Darin Adler.
4002 Disable continuous spell checking in the inspector
4003 https://bugs.webkit.org/show_bug.cgi?id=27131
4005 * inspector/front-end/inspector.html: Added spellcheck="false" to the
4006 main-panels and console-prompt containers.
4008 2009-07-13 Adam Langley <agl@google.com>
4010 Reviewed by Eric Seidel.
4012 Chromium Linux: fix assertion when rendering google.com.kh
4014 https://bugs.webkit.org/show_bug.cgi?id=26924
4016 Some shapers (i.e. Khmer) will produce cluster logs which report that
4017 /no/ code points contributed to certain glyphs. Because of this, we
4018 take any code point which contributed to the glyph in question, or any
4019 subsequent glyph. If we run off the end, then we take the last code
4022 Added LayoutTests/fast/text/international/khmar-selection.html
4024 * platform/graphics/chromium/FontLinux.cpp:
4025 (WebCore::Font::offsetForPositionForComplexText):
4027 2009-07-13 Dan Bernstein <mitz@apple.com>
4029 Reviewed by Darin Adler.
4031 spellcheck="false" is ignored
4032 <rdar://problem/7054177>
4034 * editing/Editor.cpp:
4035 (WebCore::markMisspellingsOrBadGrammar): Moved code to check the
4036 spellcheck attribute from here...
4037 (WebCore::Editor::spellCheckingEnabledInFocusedNode): ...to here.
4038 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Bail out
4039 if spell chcking is disabled by the spellcheck attribute.
4042 2009-07-13 Brent Fulgham <bfulgham@webkit.org>
4044 Reviewed by Adam Roben.
4046 Add new configuration flag for redistributable Windows build.
4047 https://bugs.webkit.org/show_bug.cgi=27087
4049 * WebCore.vcproj/WebCore.vcproj: Add new WinCairo.vsprops to
4050 Debug_Cairo and Release_Cairo builds.
4051 * config.h: Check for presence of WIN_CAIRO and select appropriate
4052 configuration. Defaults to standard Apple build.
4054 2009-07-13 Peter Kasting <pkasting@google.com>
4056 https://bugs.webkit.org/show_bug.cgi?id=19562
4057 Back out previous patch for this bug (too many problems).
4059 * DerivedSources.cpp:
4060 * DerivedSources.make:
4064 * WebCore.vcproj/WebCore.vcproj:
4065 * WebCore.xcodeproj/project.pbxproj:
4066 * WebCoreSources.bkl:
4067 * html/HTMLButtonElement.idl:
4068 * html/HTMLFieldSetElement.idl:
4069 * html/HTMLFormControlElement.cpp:
4070 * html/HTMLFormControlElement.h:
4071 (WebCore::HTMLFormControlElement::form):
4072 * html/HTMLInputElement.idl:
4073 * html/HTMLSelectElement.idl:
4074 * html/HTMLTextAreaElement.idl:
4075 * html/ValidityState.cpp: Removed.
4076 * html/ValidityState.h: Removed.
4077 * html/ValidityState.idl: Removed.
4079 2009-07-13 Nate Chapin <japhet@chromium.org>
4081 Reviewed by Dimitri Glazkov.
4083 Add HTMLAllCollection to WebCore.gypi.
4085 https://bugs.webkit.org/show_bug.cgi?id=27223
4087 * WebCore.gypi: Add HTMLAllCollection.
4089 2009-07-13 Dimitri Glazkov <dglazkov@chromium.org>
4091 Reviewed by Darin Fisher.
4093 [V8] Add a missing check for constructor call in WebKitCSSMatrixConstructor.
4094 https://bugs.webkit.org/show_bug.cgi?id=27218
4096 Test: fast/css/matrix-as-function-crash.html
4098 * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp:
4099 (WebCore::CALLBACK_FUNC_DECL): Added a check for constructor call.
4101 2009-07-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
4103 Unreviewed make dist build fix.
4107 2009-07-13 Cédric Luthi <cedric.luthi@gmail.com>
4109 Reviewed by Tor Arne Vestbø.
4111 Fix NPWindow clip rect in PluginViewMac
4113 The rect should be in window-coordinates. This bug can be observed
4114 with Flash 10 here: http://www.permadi.com/tutorial/cursorTracker/
4116 * plugins/mac/PluginViewMac.cpp:
4118 2009-07-13 Simon Hausmann <hausmann@webkit.org>
4120 Reviewed by Ariya Hidayat.
4122 Fix Qt implementation of WebCore::directoryName to return the absolute
4123 directory name instead of the base file name.
4125 * platform/qt/FileSystemQt.cpp:
4126 (WebCore::directoryName):
4128 2009-07-13 Simon Hausmann <hausmann@webkit.org>
4130 Reviewed by Ariya Hidayat.
4132 Fix WebCore::Path::isEmpty() for the Qt port to return true
4133 if there is no element in the path.
4135 QPainterPath::isEmpty() returns also true if there is one single
4136 MoveTo element inside, which makes sense but doesn't patch Webcore's
4137 is-empty definition.
4139 * platform/graphics/qt/PathQt.cpp:
4140 (WebCore::Path::isEmpty): Use elementCount() == 0.
4142 2009-07-13 Albert J. Wong <ajwong@chromium.org>
4144 Reviewed by Dimitri Glazkov.
4146 Upstream fixes to NPV8Object.cpp that make ~30 layout tests pass.
4147 https://bugs.webkit.org/show_bug.cgi?id=27127
4149 There were a number of bugs introduced during the last upstreaming
4150 effort that broke around 30 layout tests. This fixes those bugs.
4151 It also has compile fixes to match the recent cutting apart of
4154 * bindings/v8/NPV8Object.cpp:
4156 (npCreateV8ScriptObject):
4158 (NPN_InvokeDefault):
4159 (NPN_EvaluateHelper):
4163 2009-07-13 Mads Ager <ager@chromium.org>
4165 Reviewed by Adam Barth.
4167 Fix memory leak in the V8 binding layer.
4168 https://bugs.webkit.org/show_bug.cgi?id=27163
4170 Reinitializing the context is not necessary when clearing the proxy for navigation
4171 and it will lead us to hold on to an empty context for each frame.
4173 Test for empty context instead of empty global object handle when
4174 updating the document for a context.
4176 * bindings/v8/V8Proxy.cpp:
4177 (WebCore::V8Proxy::clearForNavigation):
4178 (WebCore::V8Proxy::updateDocument):
4180 2009-07-13 John Gregg <johnnyg@google.com>
4182 Reviewed by David Levin.
4184 Correct the logic to determine if a V8 callback returns a value.
4185 https://bugs.webkit.org/show_bug.cgi?id=27155
4187 * bindings/v8/custom/V8CustomVoidCallback.cpp:
4188 (WebCore::invokeCallback):
4189 - Don't crash if result.IsEmpty().
4191 2009-07-13 Drew Wilson <atwilson@google.com>
4193 Reviewed by David Levin.
4195 Add ENABLE(SHARED_WORKERS) flag and define SharedWorker APIs
4196 https://bugs.webkit.org/show_bug.cgi?id=26932
4198 Initial IDL definition and bindings for SharedWorkers.
4200 * Configurations/FeatureDefines.xcconfig:
4201 Added new files for SharedWorker support.
4202 * DerivedSources.make:
4203 Added new files for SharedWorker support.
4205 Added new files for SharedWorker support.
4207 Added new files for SharedWorker support.
4209 Added new files for SharedWorker support.
4210 * WebCore.xcodeproj/project.pbxproj:
4211 Added new files for SharedWorker support.
4212 * bindings/js/JSAbstractWorkerCustom.cpp: Added.
4213 (WebCore::JSAbstractWorker::mark):
4214 Custom mark handler that marks the event listeners.
4215 (WebCore::JSAbstractWorker::addEventListener):
4216 (WebCore::JSAbstractWorker::removeEventListener):
4217 (WebCore::JSAbstractWorker::toJS):
4218 Custom toJS handler which differentiates between various subclasses.
4219 * bindings/js/JSDOMWindowCustom.cpp:
4220 (WebCore::JSDOMWindow::sharedWorker):
4221 SharedWorker constructor (only enabled when SHARED_WORKERS is
4223 * bindings/js/JSEventTarget.cpp:
4225 (WebCore::toEventTarget):
4226 Added support for converting to/from SharedWorkers.
4227 * bindings/js/JSSharedWorkerConstructor.cpp: Added.
4228 (WebCore::JSSharedWorkerConstructor::JSSharedWorkerConstructor):
4229 (WebCore::constructSharedWorker):
4230 (WebCore::JSSharedWorkerConstructor::getConstructData):
4231 * bindings/js/JSSharedWorkerConstructor.h: Added.
4232 (WebCore::JSSharedWorkerConstructor::classInfo):
4233 * bindings/js/JSSharedWorkerCustom.cpp: Added.
4234 (WebCore::JSSharedWorker::mark):
4235 Custom mark function that marks the internal MessagePort.
4236 * bindings/v8/DOMObjectsInclude.h:
4237 Updated to include new header files.
4238 * bindings/v8/V8Index.cpp:
4239 * bindings/v8/V8Index.h:
4240 * bindings/v8/custom/V8AbstractWorkerCustom.cpp: Added.
4241 (WebCore::getEventListener):
4242 (WebCore::ACCESSOR_GETTER):
4243 (WebCore::ACCESSOR_SETTER):
4244 (WebCore::CALLBACK_FUNC_DECL):
4245 V8 handlers for add/removeEventListener().
4246 * bindings/v8/custom/V8CustomBinding.h:
4247 * bindings/v8/custom/V8SharedWorkerCustom.cpp: Added.
4248 (WebCore::CALLBACK_FUNC_DECL):
4249 Custom constructor for SharedWorker.
4250 * dom/EventTarget.cpp:
4251 (WebCore::EventTarget::toSharedWorker):
4252 * dom/EventTarget.h:
4253 * page/DOMWindow.idl:
4254 * workers/AbstractWorker.cpp: Added.
4255 (WebCore::AbstractWorker::AbstractWorker):
4256 Common base class for SharedWorker and (soon) Worker. The functions below were copied from Worker.cpp.
4257 This is the first step in refactoring Worker to derive from AbstractWorker to enable code sharing.
4258 (WebCore::AbstractWorker::~AbstractWorker):
4259 (WebCore::AbstractWorker::addEventListener):
4260 (WebCore::AbstractWorker::removeEventListener):
4261 (WebCore::AbstractWorker::dispatchEvent):
4262 (WebCore::AbstractWorker::dispatchLoadErrorEvent):
4263 (WebCore::AbstractWorker::dispatchScriptErrorEvent):
4264 * workers/AbstractWorker.h: Added.
4265 Definitions of functionality shared by Worker.h and SharedWorker.h. In a future patch, Worker will derive from AbstractWorker.
4266 (WebCore::AbstractWorker::scriptExecutionContext):
4267 (WebCore::AbstractWorker::setOnerror):
4268 (WebCore::AbstractWorker::onerror):
4269 (WebCore::AbstractWorker::eventListeners):
4270 (WebCore::AbstractWorker::refEventTarget):
4271 (WebCore::AbstractWorker::derefEventTarget):