1 2009-03-06 Jay Campan <jcampan@google.com>
3 Reviewed by Darin Fisher.
5 https://bugs.webkit.org/show_bug.cgi?id=24306
7 Adding a flag to ResourceRequestBase to indicate whether or not upload
8 progress notifications are needed for a resource. This is useful to
9 avoid sending these notifications when there are no consumers
10 (especially in the Chromium case where IPC is involved).
12 * platform/network/ResourceRequestBase.h:
13 (WebCore::ResourceRequestBase::reportUploadProgress):
14 (WebCore::ResourceRequestBase::setReportUploadProgress):
15 (WebCore::ResourceRequestBase::ResourceRequestBase):
16 * xml/XMLHttpRequest.cpp:
17 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
19 2009-03-06 Dmitry Titov <dimich@chromium.org>
21 Reviewed by Alexey Proskuryakov.
23 https://bugs.webkit.org/show_bug.cgi?id=24150
24 Add virtual ScriptExecutionContext::encoding()
26 Test: http/tests/workers/text-encoding.html
29 (WebCore::Document::encoding):
31 (WebCore::Document::inputEncoding):
32 (WebCore::Document::charset):
33 (WebCore::Document::characterSet):
34 Add new virtual method and route DOM synonym functions on Document through it.
36 * dom/ScriptExecutionContext.h:
38 (WebCore::Worker::Worker):
39 (WebCore::Worker::notifyFinished):
40 * workers/WorkerContext.cpp:
41 (WebCore::WorkerContext::WorkerContext):
42 (WebCore::WorkerContext::encoding):
43 (WebCore::WorkerContext::completeURL): Added comment on why this is different from Document::completeURL
44 * workers/WorkerContext.h:
45 (WebCore::WorkerContext::create):
46 * workers/WorkerContextProxy.h:
47 * workers/WorkerMessagingProxy.cpp:
48 (WebCore::WorkerMessagingProxy::startWorkerContext):
49 * workers/WorkerMessagingProxy.h:
50 * workers/WorkerThread.cpp:
51 (WebCore::WorkerThreadStartupData::create):
52 (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
53 (WebCore::WorkerThread::create):
54 (WebCore::WorkerThread::WorkerThread):
55 (WebCore::WorkerThread::workerThread):
56 * workers/WorkerThread.h:
57 All of the above route the 'encoding' parameter of parent context to the new
58 instance of WorkerContext - from Worker::notifyFinished() via WorkerMessagingProxy
59 through WorkerThread through WorkerThreadStartupData and into constructor of WorkerContext.
61 2009-03-06 Peter Kasting <pkasting@google.com>
66 (WebCore::Node::dispatchWheelEvent):
68 2009-03-06 Eric Carlson <eric.carlson@apple.com>
70 Reviewed by Antti Koivisto.
72 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
73 (WebCore::MediaPlayerPrivate::createQTMovieView): Delay callback while setting up movieview.
75 2009-03-06 Douglas R. Davidson <ddavidso@apple.com>
77 Reviewed by Justin Garcia.
79 https://bugs.webkit.org/show_bug.cgi?id=24108
81 Update spelling and grammar checking to use the new combined text
82 checking (with automatic language identification) on Snow Leopard.
83 Tested manually in Mail and Safari; automated tests to come later.
86 (WebCore::findFirstMisspellingOrBadGrammarInRange):
87 (WebCore::Editor::advanceToNextMisspelling):
88 (WebCore::guessesForMisspelledOrUngrammaticalRange):
89 (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
90 (WebCore::Editor::markMisspellingsAfterTypingToPosition):
91 (WebCore::markAllMisspellingsAndBadGrammarInRanges):
92 (WebCore::Editor::markMisspellingsAndBadGrammar):
94 * loader/EmptyClients.h:
95 (WebCore::EmptyEditorClient::checkSpellingAndGrammarOfParagraph):
96 * page/EditorClient.h:
98 (WebCore::Frame::respondToChangedSelection):
99 * platform/ContextMenu.cpp:
100 (WebCore::ContextMenu::populate):
102 2009-03-06 Peter Kasting <pkasting@google.com>
104 Reviewed by Darin Fisher.
106 https://bugs.webkit.org/show_bug.cgi?id=24407
107 Windows scroll amount was too small, and wheel scroll distance
108 conversion code was overly complex.
110 * page/EventHandler.cpp:
111 (WebCore::scrollAndAcceptEvent):
112 * platform/PlatformWheelEvent.h:
114 * platform/ScrollView.cpp:
115 (WebCore::ScrollView::wheelEvent):
116 * platform/Scrollbar.h:
117 * platform/gtk/WheelEventGtk.cpp:
118 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
119 * platform/mac/WheelEventMac.mm:
120 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
121 * platform/qt/WheelEventQt.cpp:
122 * platform/win/WheelEventWin.cpp:
123 (WebCore::horizontalScrollChars):
124 (WebCore::verticalScrollLines):
125 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
126 * platform/wx/MouseWheelEventWx.cpp:
127 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
129 2009-03-06 Dimitri Glazkov <dglazkov@chromium.org>
131 Reviewed by Adam Roben.
133 Generate valid bindings with HTML5 database support disabled.
135 * inspector/InspectorController.idl: Added feature guard around
136 databaseTableNames definition.
138 2009-03-04 Xan Lopez <xan@gnome.org>
140 Reviewed by Holger Freyther.
142 https://bugs.webkit.org/show_bug.cgi?id=24358
143 [GTK] Scrollbars not clipped correctly
145 Do not take into account the case of being a ScrollView scrollbar,
146 since those are native in our case.
148 * platform/gtk/ScrollbarGtk.cpp:
149 (ScrollbarGtk::frameRectsChanged):
151 2009-03-04 Xan Lopez <xan@gnome.org>
153 Reviewed by Holger Freyther.
155 https://bugs.webkit.org/show_bug.cgi?id=24358
156 [GTK] Scrollbars not clipped correctly
158 Move Widget::paint to ScrollbarGtk::paint, since it's scrollbar
159 specific and it's our only Widget anyway.
161 * platform/gtk/ScrollbarGtk.cpp:
162 (ScrollbarGtk::paint):
163 * platform/gtk/ScrollbarGtk.h:
164 * platform/gtk/WidgetGtk.cpp:
166 2009-03-04 Xan Lopez <xan@gnome.org>
168 Reviewed by Holger Freyther.
170 https://bugs.webkit.org/show_bug.cgi?id=24358
171 [GTK] Scrollbars not clipped correctly
173 Use correct clip rectangle and apply coordinate translation needed
174 for non-ScrollView scrollbars.
176 We were ignoring the clip rectangle passed as parameter, which is
177 wrong in the case of non coalesced expose events. This, in turn,
178 uncovers the fact that we were not applying coordinate translation
181 * platform/gtk/WidgetGtk.cpp:
182 (WebCore::Widget::paint):
184 2009-03-06 Eric Carlson <eric.carlson@apple.com>
188 * platform/graphics/chromium/MediaPlayerPrivateChromium.h: fix setSize declaration
190 2009-03-06 Eric Carlson <eric.carlson@apple.com>
192 Reviewed by Simon Fraser.
194 https://bugs.webkit.org/show_bug.cgi?id=22790
195 Bug 22790: [Transforms] MediaPlayer::setRect() makes no sense with transforms
196 Replace media engine setRect with setSize since they don't use about the
199 * platform/graphics/MediaPlayer.cpp:
200 (WebCore::NullMediaPlayerPrivate::setSize): Changed from setRect.
201 (WebCore::MediaPlayer::setSize): Ditto.
202 * platform/graphics/MediaPlayer.h:
203 (WebCore::MediaPlayer::size): Changed from rect().
205 * platform/graphics/MediaPlayerPrivate.h: Changed setRect to setSize.
207 * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Ditto.
209 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
210 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_size instead of m_rect
211 (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
212 (WebCore::MediaPlayerPrivate::paint): update comment
213 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: m_rect -> m_size.
215 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: m_rect
216 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
217 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_rect.
218 (WebCore::MediaPlayerPrivate::createQTMovieView): setRect-> setSize.
219 (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
220 (WebCore::MediaPlayerPrivate::paint): Call view:setFrame: when in a media document so
221 the movie is drawn in the correct location.
223 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
224 (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
225 * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
227 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
228 (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
229 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
231 * rendering/RenderVideo.cpp:
232 (WebCore::RenderVideo::updatePlayer): Call setSize instead of setRect.
234 2009-03-06 Darin Adler <darin@apple.com>
236 Reviewed by Darin Fisher.
238 Bug 24422: REGRESSION: null-URL crash in FrameLoader setting location.hash on new window
239 https://bugs.webkit.org/show_bug.cgi?id=24422
240 rdar://problem/6402208
242 Test: fast/dom/location-new-window-no-crash.html
244 The issue here is empty (or null) URLs. I picked the "schedule navigation" bottleneck
245 to add some checks for empty URLs. We could also put the empty URL checks at some
246 other bottleneck level and add more assertions over time. I tried adding a few more
247 assertions to functions like loadURL and hit them while running the regression tests,
248 so it's probably going to be a bit tricky to clean this up throughout the loader.
250 * loader/FrameLoader.cpp:
251 (WebCore::ScheduledRedirection::ScheduledRedirection): Explicitly marked this struct
252 immutable by making all its members const. Added assertions about the arguments,
253 including that the URL is not empty. Initialized one uninitialized member in one of
255 (WebCore::FrameLoader::scheduleHTTPRedirection): Added an early exit to make this
256 a no-op if passed an empty URL.
257 (WebCore::FrameLoader::scheduleLocationChange): Ditto.
258 (WebCore::FrameLoader::scheduleRefresh): Ditto.
260 2009-03-06 Gustavo Noronha Silva <gns@gnome.org>
262 Reviewed by Holger Freyther.
264 https://bugs.webkit.org/show_bug.cgi?id=24423
265 Use new soup_message_body_set_accumulate API in soup backend
267 Disable accumulating chunks for request_body on file uploads,
268 using the new soup API.
270 * platform/network/soup/ResourceHandleSoup.cpp:
271 (WebCore::ResourceHandle::startHttp):
273 2009-03-06 Gustavo Noronha Silva <gns@gnome.org>
275 Reviewed by Holger Freyther.
277 Replace use of deprecated SOUP_MESSAGE_OVERWRITE_CHUNKS flag with
278 the new soup_message_body_set_accumulate API in soup.
280 * platform/network/soup/ResourceHandleSoup.cpp:
281 (WebCore::gotHeadersCallback):
282 (WebCore::ResourceHandle::startHttp):
284 2009-03-06 Gustavo Noronha Silva <gns@gnome.org>
286 Reviewed by Holger Freyther.
288 https://bugs.webkit.org/show_bug.cgi?id=24051
289 Soup backend needs content sniffing capabilities
291 Perform content sniffing when using soup, so that we have a chance
292 of figuring out the Content-Type of the file if it's not sent by
295 * platform/network/ResourceHandleInternal.h:
296 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
297 * platform/network/soup/ResourceHandleSoup.cpp:
298 (WebCore::gotHeadersCallback):
299 (WebCore::gotChunkCallback):
301 2009-03-06 Hironori Bono <hbono@chromium.org>
303 Reviewed by Alexey Proskuryakov.
305 https://bugs.webkit.org/show_bug.cgi?id=24342
306 Cannot insert a Thai character after a Thai prepend character when using ICU 4.0
308 This change creates a new break iterator "cursorMovementIterator" for
309 moving cursors and use it when moving an input cursor.
310 In "TextBreakIteratorICU.cpp", this break iterator uses custom ruleset
311 based on the one of ICU 3.8.
312 On the other hand, in "TextBreakIteratorQt.cpp", this break iterator
313 just calls the characterBreakIterator() function.
315 Test: editing/inserting/insert-thai-characters-001.html
317 * platform/text/TextBreakIterator.h: Added a new function cursorMovementIterator().
318 * platform/text/TextBreakIteratorICU.cpp: Implemented the cursorMovementIterator() function for ICU.
319 (WebCore::setUpIteratorWithRules): Ditto.
320 (WebCore::cursorMovementIterator): Ditto.
321 * platform/text/qt/TextBreakIteratorQt.cpp: Implemented the cursorMovementIterator() function for Qt.
322 (WebCore::cursorMovementIterator): Ditto.
323 * rendering/RenderText.cpp: Call the cursorMovementIterator() function when moving an input cursor.
324 (WebCore::RenderText::previousOffset): Ditto.
325 (WebCore::RenderText::nextOffset): Ditto.
327 2009-03-05 Alexey Proskuryakov <ap@webkit.org>
329 Reviewed by Oliver Hunt.
331 <rdar://problem/6621701> Safari 4 Beta Breaks XMLHttpRequest Response Text With Special
332 Characters (a compatibility issue with widgets).
334 Test: http/tests/xmlhttprequest/broken-xml-encoding.html
336 Revert part of an Acid 3 fix - now we are no longer strict when decoding XMLHttpRequest XML
339 * loader/TextResourceDecoder.cpp:
340 (WebCore::TextResourceDecoder::TextResourceDecoder):
341 (WebCore::TextResourceDecoder::decode):
342 (WebCore::TextResourceDecoder::flush):
343 * loader/TextResourceDecoder.h:
344 (WebCore::TextResourceDecoder::useLenientXMLDecoding):
345 Don't stop on XML decoding errors if useLenientXMLDecoding() was called.
347 * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didReceiveData): Don't stop on XML
348 decoding errors. This behavior is now limited to other kinds of XML content.
350 2009-03-05 Simone Fiorentino <simone.fiorentino@consulenti.fastweb.it>
352 Bug 24382: request to add SH4 platform
354 <https://bugs.webkit.org/show_bug.cgi?id=24382>
356 Reviewed by David Kilzer.
358 * platform/text/AtomicString.cpp:
359 (WebCore::equal): Aligned memory access on SH4 platform.
361 2009-03-05 Jeremy Moskovich <jeremy@chromium.org>
363 Reviewed by Simon Fraser.
365 Fix for https://bugs.webkit.org/show_bug.cgi?id=24215
367 Gears expects an object tag with display:none to instantiate the plugin,
368 so we add a workaround to make this work and fix Gears on WebKit trunk.
370 * html/HTMLObjectElement.cpp:
371 (WebCore::HTMLObjectElement::rendererIsNeeded):
373 2009-03-05 Avi Drissman <avi@chromium.org>
375 Reviewed by Darin Fisher.
377 Need to have Chromium Mac match Safari Mac's accesskey handling
378 https://bugs.webkit.org/show_bug.cgi?id=24404
380 * page/chromium/EventHandlerChromium.cpp:
381 (WebCore::EventHandler::accessKeyModifiers): Share access key modifiers with Mac Safari when building for the Mac.
383 2009-03-05 Simon Fraser <simon.fraser@apple.com>
385 Reviewed by Dave Hyatt
387 https://bugs.webkit.org/show_bug.cgi?id=24412
389 Fix crash when hit-testing elements with -webkit-transform-style: preserve-3d
390 but no transform. We need to make localTransformState if we see preserve-3d.
391 Also need to call update3DTransformedDescendantStatus() before we test
392 m_has3DTransformedDescendant.
394 Test: transforms/3d/hit-testing/hit-preserves-3d.html
396 * rendering/RenderLayer.cpp:
397 (WebCore::RenderLayer::hitTestLayer):
399 2009-03-05 Eric Seidel <eric@webkit.org>
401 Reviewed by David Hyatt.
403 Changes to RenderLayer destruction to hopefully help catch an elusive crasher
404 https://bugs.webkit.org/show_bug.cgi?id=24409
406 Added a new RenderBoxModelObject::destroyLayer() call which is
407 now the only way which RenderLayers should ever be destroyed.
408 This ensures that the pointer to the layer is cleared in the
409 RenderObject after destruction, allowing us to ASSERT in the
410 RenderBoxModelObject destructor.
412 * rendering/RenderBox.cpp:
413 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
414 * rendering/RenderBoxModelObject.cpp:
415 (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
416 (WebCore::RenderBoxModelObject::destroyLayer):
417 (WebCore::RenderBoxModelObject::destroy):
418 (WebCore::RenderBoxModelObject::styleDidChange):
419 * rendering/RenderBoxModelObject.h:
420 * rendering/RenderLayer.cpp:
421 (WebCore::RenderLayer::stackingContext):
422 (WebCore::RenderLayer::destroy):
423 (WebCore::RenderLayer::removeOnlyThisLayer):
424 * rendering/RenderLayer.h:
425 * rendering/RenderObject.cpp:
426 (WebCore::RenderObject::destroy):
427 * rendering/RenderWidget.cpp:
428 (WebCore::RenderWidget::destroy):
430 2009-03-05 Eric Seidel <eric@webkit.org>
432 Reviewed by David Hyatt.
434 Remove old, unused IE 5.5 scrollbar-* CSS properties.
435 Sort the unimplemented getComputedStyle properties so it's
436 easier to see which ones actually need implementation.
438 * css/CSSComputedStyleDeclaration.cpp:
439 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
441 (WebCore::CSSParser::parseValue):
442 * css/CSSPropertyNames.in:
443 * css/CSSStyleSelector.cpp:
444 (WebCore::CSSStyleSelector::applyProperty):
446 2009-03-05 Justin Garcia <justin.garcia@apple.com>
448 Reviewed by Darin Adler.
450 WebViewDidChangeSelectionNotifications weren't being sent for commands that change the selection's position
451 within the document without changing its position in the DOM. For example, pressing return in (caret marked by ^):
452 <div contentEditable="true"><div>^Hello</div></div>
453 Undo was being enabled, shouldDeleteDOMRange called, etc. when doing no-op deletes (a delete in an empty document
456 Changes to layout tests demonstrate fix.
458 * editing/EditCommand.cpp:
459 (WebCore::EditCommand::apply): Don't call applyEditing for a TypingCommand. The TypingCommand knows whether or
460 not it did work that needs to be applied.
461 * editing/Editor.cpp:
462 (WebCore::Editor::appliedEditing): Moved code (but did not alter) to changeSelectionAfterCommand.
463 (WebCore::Editor::unappliedEditing): Ditto.
464 (WebCore::Editor::reappliedEditing): Ditto.
465 (WebCore::Editor::changeSelectionAfterCommand): Moved code from *appliedEditing into here. Also call out to
466 EditorClient::respondToChangedSelection() for commands that changed the selection's position in the document
467 even if they did not change it's position in the DOM. Any TypingCommand that gets this far changed it's position
470 * editing/TypingCommand.cpp:
471 (WebCore::TypingCommand::TypingCommand): Removed unused m_appliedEditing.
472 (WebCore::TypingCommand::typingAddedToOpenCommand): Always apply editing. We won't get this far if we don't need to.
473 (WebCore::TypingCommand::deleteKeyPressed): Don't do any of the things that only make sense for Range selections, like
474 adding to the killring and responding to a change in selections if the delete was a no-op.
475 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
476 * editing/TypingCommand.h:
478 2009-03-05 Dimitri Glazkov <dglazkov@chromium.org>
480 Reviewed by Adam Roben.
482 Eliminate a ref-counting leak in InspectorController.
484 * inspector/InspectorController.h: Made constructor private, added static create method.
486 (WebCore::Page::Page): Change initializer to use static create method.
488 2009-03-05 Dimitri Glazkov <dglazkov@chromium.org>
490 Reviewed by Timothy Hatcher.
492 https://bugs.webkit.org/show_bug.cgi?id=24355
493 Add InspectorController.idl and convert InspectorController.cpp to use
496 * DerivedSources.make: Added InspectorController.idl
497 * WebCore.xcodeproj/project.pbxproj: Added idl, bindings files.
498 * bindings/js/JSInspectorControllerCustom.cpp: Added.
499 * bindings/scripts/CodeGeneratorJS.pm: Added Array to no-header types.
500 * inspector/InspectorController.cpp: Removed hand-rolled bindings.
501 * inspector/InspectorController.h: Added platform and addSourceToFrame methods.
502 * inspector/InspectorController.idl: Added.
503 * page/Page.h: Changed member to RefPtr since InspectorController is now ref-counted.
505 2009-03-05 Eric Carlson <eric.carlson@apple.com>
507 Reviewed by Simon Fraser.
509 https://bugs.webkit.org/show_bug.cgi?id=24400
510 Bug 24400: Remove "start", "end", "loopStart", "loopEnd", "currentLoop", and "playCount"
511 media element attributes
513 Test: media/video-loop.html
515 * html/HTMLMediaElement.cpp:
516 (WebCore::HTMLMediaElement::HTMLMediaElement):
517 (WebCore::HTMLMediaElement::loadInternal):
518 (WebCore::HTMLMediaElement::setNetworkState):
519 (WebCore::HTMLMediaElement::seek):
520 (WebCore::HTMLMediaElement::playInternal):
521 (WebCore::HTMLMediaElement::loop):
522 (WebCore::HTMLMediaElement::setLoop):
523 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
524 (WebCore::HTMLMediaElement::endedPlayback):
525 (WebCore::HTMLMediaElement::updatePlayState):
526 * html/HTMLMediaElement.h:
527 * html/HTMLMediaElement.idl:
529 2009-03-05 Steve Falkenburg <sfalken@apple.com>
531 <rdar://problem/6651112> Safari asks about re-posting a form even when page is cached
533 Reviewed by Ada Chan.
535 * platform/network/cf/ResourceHandleCFNet.cpp:
536 (WebCore::ResourceHandle::willLoadFromCache): Ported from Mac version.
538 2009-03-05 David Hyatt <hyatt@apple.com>
540 Reviewed by Eric Seidel
542 https://bugs.webkit.org/show_bug.cgi?id=24248
544 Make sure painting of overflow controls checks that visibility:visible is set on the block before
545 painting. Pixel tests caught this regression.
547 Make sure resizer painting pushes a clip of the corner rect. It was relying on the clip layers happened
548 to do to their bounds (which had nothing to do with overflow).
550 * rendering/RenderBlock.cpp:
551 (WebCore::RenderBlock::paint):
552 * rendering/RenderLayer.cpp:
553 (WebCore::RenderLayer::paintResizer):
555 2009-03-05 Yong Li <yong.li@torchmobile.com>
557 Reviewed by Simon Fraser.
559 https://bugs.webkit.org/show_bug.cgi?id=24386
560 A faster implementation of extractMIMETypeFromMediaType.
562 * platform/network/HTTPParsers.cpp:
563 (WebCore::extractMIMETypeFromMediaType):
565 2009-03-05 Yong Li <yong.li@torchmobile.com>
567 Reviewed by Antti Koivisto.
569 https://bugs.webkit.org/show_bug.cgi?id=24392
570 Do not get the current time for unless we're doing PRELOAD_DEBUG as this
571 can be unnecessarily expensive.
573 * html/PreloadScanner.cpp:
574 (WebCore::PreloadScanner::write):
576 2009-03-04 Simon Fraser <simon.fraser@apple.com>
578 Reviewed by Dave Hyatt
580 https://bugs.webkit.org/show_bug.cgi?id=24327
582 When mapping points and hit testing through transforms, work
583 correctly when acclerated animations of transforms are running.
585 Tested by LayoutTests/animations/animation-hit-test-transform.html,
586 which only failed when ACCELERATED_COMPOSITING was turned on.
588 * rendering/RenderLayer.cpp:
589 (WebCore::RenderLayer::currentTransform):
590 * rendering/RenderLayer.h:
591 * rendering/RenderObject.cpp:
592 (WebCore::RenderObject::transformFromContainer):
594 2009-03-05 Mike Belshe <mike@belshe.com>
596 Reviewed by Darin Fisher.
598 https://bugs.webkit.org/show_bug.cgi?id=24391
599 Frame.cpp uses JSC specific includes
603 2009-03-05 Gustavo Noronha Silva <gns@gnome.org>
605 Reviewed by Alexey Proskuryakov.
607 https://bugs.webkit.org/show_bug.cgi?id=24389
608 WebKitGTK+ crashes when cancelling plugin loads
610 Remove bogus calls to the client's didFinishLoading method from
611 our ResourceHandle::cancel implementation. Calling
612 didFinishLoading here is mostly inoffensive for most loads, but
613 causes crashes when plugin loads are cancelled.
615 * platform/network/soup/ResourceHandleSoup.cpp:
616 (WebCore::ResourceHandle::cancel):
618 2009-03-05 Steve Falkenburg <sfalken@apple.com>
622 * WebCore.vcproj/QTMovieWin.vcproj:
624 2009-03-05 Adam Treat <adam.treat@torchmobile.com>
626 Build fix for when ENABLE_NETSCAPE_PLUGIN_API = 0. The method
627 ScriptController::jsObjectForPluginElement(HTMLPlugInElement*); is not
628 protected by an #if and uses HTMLPlugInElement so it must be included.
630 * bindings/js/ScriptController.cpp:
632 2009-03-05 Dimitri Glazkov <dglazkov@chromium.org>
636 * inspector/ConsoleMessage.h: Use proper header.
638 2009-03-05 Dimitri Glazkov <dglazkov@chromium.org>
640 Reviewed by Timothy Hatcher.
642 https://bugs.webkit.org/show_bug.cgi?id=24376
643 Split InspectorController.cpp file into separate classes.
645 * GNUmakefile.am: Modified to include new files.
646 * WebCore.pro: Ditto.
647 * WebCore.scons: Ditto.
648 * WebCore.vcproj/WebCore.vcproj: Ditto.
649 * WebCore.xcodeproj/project.pbxproj: Ditto.
650 * WebCoreSources.bkl: Ditto.
651 * inspector/ConsoleMessage.cpp: Added.
652 * inspector/ConsoleMessage.h: Added.
653 * inspector/InspectorController.cpp:
654 * inspector/InspectorDOMStorageResource.cpp: Added.
655 * inspector/InspectorDOMStorageResource.h: Added.
656 * inspector/InspectorDatabaseResource.cpp: Added.
657 * inspector/InspectorDatabaseResource.h: Added.
658 * inspector/InspectorResource.cpp: Added.
659 * inspector/InspectorResource.h: Added.
661 2009-03-05 Eric Carlson <eric.carlson@apple.com>
663 Reviewed by Darin Adler
665 https://bugs.webkit.org/show_bug.cgi?id=24387
666 Remove media element bufferingRate attribute. No test necessary as there
667 were none for this attribute.
669 * html/HTMLMediaElement.cpp:
670 (WebCore::HTMLMediaElement::HTMLMediaElement): Don't initialize m_bufferingRate.
671 (WebCore::HTMLMediaElement::loadInternal): Ditto.
672 (WebCore::HTMLMediaElement::setNetworkState): Ditto.
673 (WebCore::HTMLMediaElement::progressEventTimerFired): Don't calculate m_bufferingRate.
674 * html/HTMLMediaElement.h: Remove m_bufferingRate.
675 * html/HTMLMediaElement.idl: Ditto.
677 2009-03-05 Xan Lopez <xan@gnome.org>
679 Reviewed by Mark Rowe.
681 https://bugs.webkit.org/show_bug.cgi?id=24377
682 [GTK] Comply better with coding style guidelines in ResourceHandleSoup
684 Use C++ booleans, 0 instead of NULL, prefix boolean variables with
685 'is', do not use 'else if' if the previous if had a return, delete
686 trailing whitespace, etc.
688 * platform/network/ResourceHandleInternal.h:
689 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
690 * platform/network/soup/ResourceHandleSoup.cpp:
691 (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
692 (WebCore::fillResponseFromMessage):
693 (WebCore::restartedCallback):
694 (WebCore::finishedCallback):
695 (WebCore::parseDataUrl):
696 (WebCore::ensureSessionIsInitialized):
697 (WebCore::ResourceHandle::startHttp):
698 (WebCore::reportUnknownProtocolError):
699 (WebCore::ResourceHandle::start):
700 (WebCore::cleanupGioOperation):
701 (WebCore::closeCallback):
702 (WebCore::readCallback):
703 (WebCore::openCallback):
704 (WebCore::queryInfoCallback):
705 (WebCore::ResourceHandle::startGio):
707 2009-03-04 Simon Fraser <simon.fraser@apple.com>
709 Reviewed by Eric Seidel
711 https://bugs.webkit.org/show_bug.cgi?id=24328
713 If an element has backface-visibility: hidden, hit testing should not
714 hit the back sides of elements. Test for that by inverting the accumulated
715 transform and looking at the z vector.
717 Tested by transforms/3d/hit-testing/backface-hit-test.html
719 * rendering/RenderLayer.cpp:
720 (WebCore::RenderLayer::hitTestLayer):
722 2009-03-04 Adam Langley <agl@google.com>
724 Reviewed by Darin Fisher.
726 r41362 mistakenly added functions "RenderThemeWin::" into
727 RenderThemeChromiumGtk.cpp. When correcting this, I somehow changed
728 them to void return types. This patch switches them back to ints.
730 https://bugs.webkit.org/show_bug.cgi?id=24360
732 * rendering/RenderThemeChromiumLinux.cpp:
733 (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingLeft):
734 (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingRight):
735 (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingTop):
736 (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingBottom):
738 2009-03-04 Adam Langley <agl@google.com>
740 Reviewed by Darin Fisher.
742 Chromium Linux: change some metrics to better match Windows after
743 r41416. Aesthetically this may be worse, but web-compat is king.
745 Also, the previous code had an off by one error when drawing
746 scrollbars which caused the scrollbar to overflow it's bounds by 1px
747 at the right and bottom edges.
749 https://bugs.webkit.org/show_bug.cgi?id=24369
751 * rendering/RenderThemeChromiumLinux.cpp:
753 (WebCore::RenderThemeChromiumLinux::systemFont):
754 * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
755 (WebCore::ScrollbarThemeChromium::paintTrackPiece):
757 2009-03-04 Eric Seidel <eric@webkit.org>
759 Reviewed by Adam Roben.
761 Add an ASSERT to better demonstrate the cause of the crash in
762 https://bugs.webkit.org/show_bug.cgi?id=23736
764 * loader/DocLoader.cpp:
765 (WebCore::DocLoader::~DocLoader):
767 2009-03-04 David Levin <levin@chromium.org>
769 Reviewed by Alexey Proskuryakov.
771 Bug 24337: Assert when doing sync XHR in a worker for a cacheable response.
772 <https://bugs.webkit.org/show_bug.cgi?id=24337>
774 Tests: http/tests/xmlhttprequest/access-control-basic-denied-preflight-cache.html
775 http/tests/xmlhttprequest/workers/xmlhttprequest-file-not-found.html
777 * loader/mac/ResourceLoaderMac.mm:
778 (WebCore::ResourceLoader::willCacheResponse):
779 An identifier is only asssigned if resource load callbacks are done. So don't send
780 willCacheResponse which uses identifier if resource load callbacks aren't being sent.
782 2009-03-04 David Levin <levin@chromium.org>
784 Reviewed by Alexey Proskuryakov.
786 Bug 24330: Sync xhr in workers should send an abort exception when the worker is terminated.
787 <https://bugs.webkit.org/show_bug.cgi?id=24330>
789 Test: http/tests/xmlhttprequest/workers/abort-exception-assert.html
791 * dom/ExceptionCode.cpp:
792 (WebCore::xmlHttpRequestExceptionNames):
793 Added missing ABORT_ERR whose absence caused an assert.
795 * loader/WorkerThreadableLoader.cpp:
796 (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
797 (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
798 Add more logic to handle the termination case for sync xhr.
800 2009-03-04 Eric Carlson <eric.carlson@apple.com>
802 Reviewed by Antti Koivisto.
804 https://bugs.webkit.org/show_bug.cgi?id=24364
805 Add support for HTMLMediaElement canPlayType method. Make
806 MediaPlayer::supportsType take a ContentType instead of a
807 separate mime type and codecs parameter.
809 Test: media/video-can-play-type.html
811 * dom/DOMImplementation.cpp:
812 (WebCore::DOMImplementation::createDocument):
813 * html/HTMLMediaElement.cpp:
814 (WebCore::HTMLMediaElement::canPlayType): Add canPlayType method.
815 (WebCore::HTMLMediaElement::loadInternal): selectMediaURL returns a ContentType.
816 (WebCore::HTMLMediaElement::selectMediaURL): Return a ContentType instead of raw MIME type.
817 (WebCore::HTMLMediaElement::initialURL): selectMediaURL returns a ContentType.
818 * html/HTMLMediaElement.h: Add prototype.
819 * html/HTMLMediaElement.idl: Ditto.
820 * platform/graphics/MediaPlayer.cpp:
821 (WebCore::MediaPlayer::load): Take a ContentType instead of raw MIME type.
822 (WebCore::MediaPlayer::supportsType): Ditto.
823 * platform/graphics/MediaPlayer.h:
825 2009-03-04 Antti Koivisto <antti@apple.com>
827 Reviewed by Dave Hyatt.
829 https://bugs.webkit.org/show_bug.cgi?id=24359
830 Repaint throttling mechanism
832 Excessive repainting can slow down page loadind. This implements a timer
833 based throttling mechanism. It is behind ENABLE(REPAINT_THROTTLING) and not
836 * loader/FrameLoader.cpp:
837 (WebCore::FrameLoader::checkCompleted):
838 * page/EventHandler.cpp:
839 (WebCore::EventHandler::dispatchDragEvent):
840 (WebCore::EventHandler::dispatchMouseEvent):
841 (WebCore::EventHandler::keyEvent):
842 (WebCore::EventHandler::handleTextInputEvent):
843 * page/FrameView.cpp:
844 (WebCore::FrameView::FrameView):
845 (WebCore::FrameView::reset):
846 (WebCore::FrameView::repaintContentRectangle):
847 (WebCore::FrameView::beginDeferredRepaints):
848 (WebCore::FrameView::endDeferredRepaints):
849 (WebCore::FrameView::checkStopDelayingDeferredRepaints):
850 (WebCore::FrameView::doDeferredRepaints):
851 (WebCore::FrameView::updateDeferredRepaintDelay):
852 (WebCore::FrameView::resetDeferredRepaintDelay):
853 (WebCore::FrameView::adjustedDeferredRepaintDelay):
854 (WebCore::FrameView::deferredRepaintTimerFired):
855 (WebCore::FrameView::paintContents):
858 2009-03-04 Sam Weinig <sam@webkit.org>
860 Rubber-stamped by Antti Koivisto.
862 Remove LOW_BANDWIDTH_DISPLAY as it is not being used by any platforms.
865 (WebCore::Document::Document):
867 (WebCore::Document::haveStylesheetsLoaded):
868 * html/HTMLTokenizer.cpp:
869 (WebCore::HTMLTokenizer::scriptHandler):
871 (WebCore::Cache::requestResource):
872 * loader/CachedCSSStyleSheet.cpp:
873 (WebCore::CachedCSSStyleSheet::checkNotify):
874 * loader/DocLoader.h:
875 * loader/FrameLoader.cpp:
876 (WebCore::FrameLoader::FrameLoader):
877 (WebCore::FrameLoader::requestFrame):
878 (WebCore::FrameLoader::stopLoading):
879 (WebCore::FrameLoader::begin):
880 (WebCore::FrameLoader::write):
881 (WebCore::FrameLoader::endIfNotLoadingMainResource):
882 (WebCore::FrameLoader::checkCompleted):
883 (WebCore::FrameLoader::requestObject):
884 (WebCore::FrameLoader::loadItem):
885 * loader/FrameLoader.h:
887 2009-03-02 Xan Lopez <xan@gnome.org>
889 Reviewed by Mark Rowe.
891 https://bugs.webkit.org/show_bug.cgi?id=24287
892 [GTK] Move auth dialog feature to WebKit/
894 Remove WebKitSoupAuthDialog files from build and stop using it.
897 * platform/network/soup/ResourceHandleSoup.cpp:
898 (WebCore::ensureSessionIsInitialized):
899 * platform/network/soup/webkit-soup-auth-dialog.c: Removed.
900 * platform/network/soup/webkit-soup-auth-dialog.h: Removed.
902 2009-03-04 Simon Fraser <simon.fraser@apple.com>
904 Reviewed by Dave Hyatt
906 https://bugs.webkit.org/show_bug.cgi?id=24361
908 Reinstate code that sets result.innerNode when hitTest() returns true,
909 but never filled in the innerNode. Fixes hit testing of generated content.
911 Test: fast/css-generated-content/hit-test-generated-content.html
913 * rendering/RenderLayer.cpp:
914 (WebCore::RenderLayer::hitTestContents):
916 2009-03-04 Adam Barth <abath@webkit.org>
918 Reviewed by Alexey Proskuryakov.
920 https://bugs.webkit.org/show_bug.cgi?id=24356
922 Fix WebKit style for allowUniversalAccessFromFileURLs.
926 (WebCore::Document::initSecurityContext):
928 (WebCore::Settings::Settings):
929 (WebCore::Settings::setAllowUniversalAccessFromFileURLs):
931 (WebCore::Settings::allowUniversalAccessFromFileURLs):
933 2009-03-04 Brady Eidson <beidson@apple.com>
935 Reviewed by Darin Adler
937 <rdar://problem/6619630> Quick Look of vCards stuck on image of first card opened.
939 I narrowed this down to http://trac.webkit.org/changeset/39304 which, among other things,
940 consolidated some of the various decision making pieces of the Cache into the new method
941 FrameLoader::cachePolicy().
943 Before 39304, when deciding whether to use an existing CachedResource, we checked if the FrameLoader
944 is reloading. If it is, we'd evict any existing resource then recreate it. Quick looks uses the
945 same URL for this image every time and expects it to be reloaded with each new card.
947 The FrameLoader::isReloading() check did one thing - Ask the DocumentLoader if it's cache policy
948 is "ReloadIgnoringCacheData". This check was lost in the consolidation to the new method.
950 * loader/FrameLoader.cpp:
951 (WebCore::FrameLoader::cachePolicy): Restore the DocumentLoader's cachePolicy check as a possible
952 condition for returning CachePolicyReload.
954 2009-03-04 Timothy Hatcher <timothy@apple.com>
956 * English.lproj/localizedStrings.js: Update strings to include "DATABASES",
957 "LOCAL STORAGE" and "SESSION STORAGE".
959 2009-03-04 Timothy Hatcher <timothy@apple.com>
961 Fix a regression where the Web Inspector console would not animate
964 Reviewed by Anders Carlsson.
966 * inspector/front-end/inspector.css: Move a z-index to a child element
967 to get the correct stacking order during the animation.
969 2009-03-03 David Hyatt <hyatt@apple.com>
971 https://bugs.webkit.org/show_bug.cgi?id=24201, pathologically bad block layout.
973 Make sure to factor clear deltas into y position estimates. Also avoid doing the comparison of
974 the final position against the y position estimate until after the clear has happened. This gets rid
975 of some duplicated cut/pasted code and also ensures a layout delta only has to be put in once.
977 Reviewed by Dan Bernstein
979 Added fast/block/float/nested-clearance.html
981 * rendering/RenderBlock.cpp:
982 (WebCore::RenderBlock::collapseMargins):
983 (WebCore::RenderBlock::clearFloatsIfNeeded):
984 (WebCore::RenderBlock::estimateVerticalPosition):
985 (WebCore::RenderBlock::layoutBlockChildren):
986 (WebCore::RenderBlock::getClearDelta):
987 * rendering/RenderBlock.h:
989 2009-03-02 Kim Grönholm <kim.gronholm@nomovok.com>
991 Reviewed by Simon Hausmann.
993 Improvement to 3d transformations rendering in QtWebKit. QTransform is used
994 instead of QMatrix. This allows perspective transformations since QTransform is
997 * platform/graphics/qt/GraphicsContextQt.cpp: Use QTransform instead of QMatrix everywhere.
998 (WebCore::GraphicsContext::getCTM):
999 (WebCore::GraphicsContext::restorePlatformState):
1000 (WebCore::GraphicsContext::fillPath):
1001 (WebCore::GraphicsContext::strokePath):
1002 (WebCore::GraphicsContext::fillRect):
1003 (WebCore::GraphicsContext::translate):
1004 (WebCore::GraphicsContext::rotate):
1005 (WebCore::GraphicsContext::scale):
1006 (WebCore::GraphicsContext::concatCTM):
1007 * platform/graphics/qt/ImageQt.cpp:
1008 (WebCore::Image::drawPattern):
1009 * platform/graphics/qt/PathQt.cpp:
1010 (WebCore::Path::translate):
1011 (WebCore::Path::transform):
1012 * platform/graphics/qt/PatternQt.cpp:
1013 (WebCore::Pattern::createPlatformPattern):
1014 * platform/graphics/qt/TransformationMatrixQt.cpp:
1015 (WebCore::TransformationMatrix::operator QTransform): Replace the conversion operator
1016 to QMatrix with one to QTransform.
1017 * platform/graphics/transforms/TransformationMatrix.h:
1018 * platform/graphics/qt/FontQt.cpp:
1020 2009-02-24 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1022 Reviewed by Simon Hausmann.
1024 https://bugs.webkit.org/show_bug.cgi?id=24151
1025 Fix Qt/S60 build break
1027 * platform/FileSystem.h: Create a default case for non-win and non-mac Qt builds
1028 * platform/qt/FileSystemQt.cpp: Ditto
1029 (WebCore::unloadModule):
1031 2009-03-03 Mike Belshe <mike@belshe.com>
1033 Reviewed by Alexey Proskuryakov.
1035 https://bugs.webkit.org/show_bug.cgi?id=21939
1036 Uninitialized ExceptionCode in DOMWindow::postMessage
1038 * dom/MessagePort.cpp:
1039 (WebCore::MessagePort::postMessage):
1041 2009-03-03 David Kilzer <ddkilzer@apple.com>
1043 <rdar://problem/6581203> WebCore and WebKit should install the same set of headers during installhdrs phase as build phase
1045 Reviewed by Mark Rowe.
1047 The fix is to add INSTALLHDRS_COPY_PHASE = YES and
1048 INSTALLHDRS_SCRIPT_PHASE = YES to WebCore.xcconfig, then to make
1049 sure various build phase scripts work with the installhdrs build
1052 * Configurations/Base.xcconfig: Defined REAL_PLATFORM_NAME
1053 based on PLATFORM_NAME to work around the missing definition on
1055 * Configurations/WebCore.xcconfig: Added
1056 JAVASCRIPTCORE_PRIVATE_HEADERS_DIR variable to simplify logic in
1057 the "Generate Derived Sources" script. Added
1058 INSTALLHDRS_COPY_PHASE = YES and INSTALLHDRS_SCRIPT_PHASE = YES.
1060 * WebCore.xcodeproj/project.pbxproj:
1061 - Added shell code to prevent running "Check For Global
1062 Initializers", "Check For Exit Time Destructors" and "Check
1063 For Weak VTables" scripts during the installhdrs build phase.
1064 - Made "Generate Derived Sources" work for the installhdrs build
1065 phase. Also simplified setting of CREATE_HASH_TABLE by using
1066 JAVASCRIPTCORE_PRIVATE_HEADERS_DIR.
1068 2009-03-02 Adam Langley <agl@google.com>
1070 Reviewed by Darin Fisher.
1072 Chromium Linux: Switch to using Skia to render widgets.
1074 In order to sandbox the Chromium renderer on Linux we need to remove
1075 the X connection. GTK cannot render without an X connection so, for
1076 now, we render widgets ourselves.
1078 Previously didn't use anti-alias fonts in order to match Windows font
1079 rendering exactly. This was helpful when bootstrapping our layout
1080 tests. Now, however, we are ready to enable it.
1082 https://bugs.webkit.org/show_bug.cgi?id=24244
1084 * platform/chromium/ScrollbarThemeChromium.cpp:
1085 (WebCore::ScrollbarThemeChromium::buttonSize):
1086 * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
1087 (WebCore::ScrollbarThemeChromium::scrollbarThickness):
1088 (WebCore::ScrollbarThemeChromium::paintTrackPiece):
1089 (WebCore::ScrollbarThemeChromium::paintButton):
1090 (WebCore::ScrollbarThemeChromium::paintThumb):
1091 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
1092 (WebCore::FontPlatformData::setupPaint):
1093 * platform/graphics/skia/PlatformContextSkia.cpp:
1094 (PlatformContextSkia::PlatformContextSkia):
1095 (PlatformContextSkia::~PlatformContextSkia):
1096 * platform/graphics/skia/PlatformContextSkia.h:
1097 * rendering/RenderThemeChromiumGtk.cpp: Removed.
1098 * rendering/RenderThemeChromiumGtk.h: Removed.
1099 * rendering/RenderThemeChromiumLinux.cpp: Added.
1100 * rendering/RenderThemeChromiumLinux.h: Added.
1102 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
1104 Reviewed by Darin Fisher.
1106 https://bugs.webkit.org/show_bug.cgi?id=24261
1109 Test: LayoutTests/dom/svg/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.svg
1111 * bindings/v8/V8Binding.h:
1112 (WebCore::toInt32): change return type to int
1113 (WebCore::toFloat): change return type to float.
1115 2009-03-03 Anders Carlsson <andersca@apple.com>
1117 Reviewed by John Sullivan.
1119 https://bugs.webkit.org/show_bug.cgi?id=22884
1120 <rdar://problem/6449783>
1121 modified layout test crashes Safari
1123 Null check NPStream before dereferencing it.
1125 * plugins/PluginView.cpp:
1126 (WebCore::PluginView::destroyStream):
1128 2009-03-03 Eric Carlson <eric.carlson@apple.com>
1130 Reviewed by Simon Fraser.
1132 Fix for <rdar://problem/6641045>
1133 Don't call QTKit to get movie properties until movie metadata has been loaded.
1135 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1136 (WebCore::MediaPlayerPrivate::metaDataAvailable): defined
1137 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1138 (WebCore::MediaPlayerPrivate::createQTTime): return default if !metaDataAvailable.
1139 (WebCore::MediaPlayerPrivate::play): Ditto.
1140 (WebCore::MediaPlayerPrivate::pause): Ditto.
1141 (WebCore::MediaPlayerPrivate::duration): Ditto.
1142 (WebCore::MediaPlayerPrivate::currentTime): Ditto.
1143 (WebCore::MediaPlayerPrivate::seek): Ditto.
1144 (WebCore::MediaPlayerPrivate::seekTimerFired): Ditto.
1145 (WebCore::MediaPlayerPrivate::paused): Ditto.
1146 (WebCore::MediaPlayerPrivate::seeking): Ditto.
1147 (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
1148 (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
1149 (WebCore::MediaPlayerPrivate::setVolume): Ditto.
1150 (WebCore::MediaPlayerPrivate::setRate): Ditto.
1151 (WebCore::MediaPlayerPrivate::dataRate): Ditto.
1152 (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
1153 (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
1155 2009-03-03 Kevin McCullough <kmccullough@apple.com>
1160 (WebCore::Console::profile):
1162 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
1164 Reviewed by Darin Fisher.
1166 https://bugs.webkit.org/show_bug.cgi?id=23657
1167 Remove Database API callback IDLs from the project.
1168 They were removed in r40633.
1170 * WebCore.xcodeproj/project.pbxproj: Removed IDL files from the project.
1172 2009-03-03 Kevin McCullough <kmccullough@apple.com>
1174 Reviewed by Oliver Hunt.
1176 <rdar://problem/6639110> console.profile() doesn't work without a title
1179 (WebCore::Console::profile): If there is no title assume this is a user
1180 initiated profile and give it the next incremented title name.
1182 2009-03-03 Timothy Hatcher <timothy@apple.com>
1184 Fix a regression that broke dirxml and caused an ASSERT in debug builds. Also simplified
1185 the console code and refactored things to have fewer code paths and duplication.
1187 rdar://problem/6367127
1188 https://bugs.webkit.org/show_bug.cgi?id=24329
1190 Reviewed by Kevin McCullough.
1192 Test: manual-tests/inspector/console-dir.html
1194 * bindings/js/JSInspectedObjectWrapper.cpp:
1195 (WebCore::JSInspectedObjectWrapper::wrap): Use the lexicalGlobalObject instead of dynamicGlobalObject
1196 to fix an ASSERT about using a wrapper from the wrong ExecState.
1197 * bindings/js/JSQuarantinedObjectWrapper.cpp:
1198 (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper): Ditto.
1199 (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Ditto.
1200 * inspector/front-end/Console.js:
1201 (WebInspector.Console.prototype._format): Remove the inline argument and add forceObjectFormat.
1202 When forceObjectFormat is true, the only formatter used is _formatobject.
1203 (WebInspector.Console.prototype._formatvalue): Remove the inline argument.
1204 (WebInspector.Console.prototype._formatstring): Ditto.
1205 (WebInspector.Console.prototype._formatregexp): Ditto.
1206 (WebInspector.Console.prototype._formatarray): Ditto.
1207 (WebInspector.Console.prototype._formatnode): Remove the inline argument and make a DOM tree instead of an anchor.
1208 (WebInspector.Console.prototype._formatobject): Remove the inline argument and always make a property graph.
1209 (WebInspector.Console.prototype._formaterror): Remove the inline argument.
1210 (WebInspector.ConsoleMessage): Remove the case for MessageLevel.Node and
1211 simplify the case for MessageLevel.Object to use the normal _format code path with the %O formatter.
1212 (WebInspector.ConsoleMessage.prototype._format.formatForConsole): Don't pass an additional true argument for inline.
1213 (WebInspector.ConsoleMessage.prototype._format.formatAsObjectForConsole): Added. Pass a true argument for forceObjectFormat.
1214 (WebInspector.ConsoleMessage.prototype._format): Added support for the %O formatter. Use formatForConsole for all arguments.
1215 (WebInspector.ConsoleMessage.prototype.toString): Add the other message levels.
1216 * inspector/front-end/inspector.css: Tweak styles to look and work correctly.
1217 * inspector/front-end/utilities.js:
1218 (Object.type): Return "node" for Node objects.
1219 (Object.describe): Handle the "node" type.
1221 (WebCore::printMessageSourceAndLevelPrefix): Fix an assert by adding the other message level types.
1222 (WebCore::Console::dirxml): Use the standard log fuction since it prints a DOM tree for nodes by default.
1224 (WebCore::enum MessageLevel): Removed NodeMessageLevel. Added a FIXME.
1226 2009-03-03 Scott Violet <sky@google.com>
1228 Reviewed by Eric Seidel.
1230 https://bugs.webkit.org/show_bug.cgi?id=24325
1231 Crash on replacing document contents during drop.
1233 Makes sure a node is in the document during a move before using it.
1235 Test: fast/events/crash-on-mutate-during-drop.html
1237 * editing/MoveSelectionCommand.cpp:
1238 (WebCore::MoveSelectionCommand::doApply):
1240 2009-03-03 Jungshik Shin <jshin@chromium.org>
1242 Reviewed by Eric Seidel.
1244 https://bugs.webkit.org/show_bug.cgi?id=23028
1245 Enable dynamic web font support to Chromium on Windows.
1246 Files that were omitted by mistake in the latest patch
1249 * loader/CachedFont.cpp:
1250 (WebCore::CachedFont::~CachedFont):
1251 (WebCore::CachedFont::ensureCustomFontData):
1252 (WebCore::CachedFont::platformDataFromCustomData):
1253 (WebCore::CachedFont::allClientsRemoved):
1254 * platform/graphics/chromium/FontCustomPlatformData.cpp:
1255 (WebCore::EOTStream::EOTStream):
1256 (WebCore::createFontCustomPlatformData):
1257 * platform/graphics/win/FontCustomPlatformData.cpp:
1258 (WebCore::EOTStream::EOTStream):
1259 (WebCore::createFontCustomPlatformData):
1261 2009-03-03 Gustavo Noronha Silva <gns@gnome.org>
1263 Reviewed by Alexey Proskuryakov.
1265 https://bugs.webkit.org/show_bug.cgi?id=16826
1266 [Gtk] Implement WebKitDownload
1268 Make the Soup backend able to handle requests without a frame,
1269 since we may have such things now that we support downloads.
1271 * platform/network/ResourceHandleInternal.h:
1272 * platform/network/soup/ResourceHandleSoup.cpp:
1273 (WebCore::ResourceHandle::start):
1275 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
1277 Reviewed by Eric Seidel.
1279 https://bugs.webkit.org/show_bug.cgi?id=24331
1280 Add custom V8 bindings for Element, Attr, HTMLFrame, and HTMLIFrame.
1282 * bindings/v8/custom/V8AttrCustom.cpp: Added.
1283 * bindings/v8/custom/V8CustomBinding.cpp: Added.
1284 * bindings/v8/custom/V8CustomBinding.h: Added attribute-checking helpers.
1285 * bindings/v8/custom/V8ElementCustom.cpp: Added.
1286 * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: Added.
1287 * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: Added.
1289 2009-03-03 Brady Eidson <beidson@apple.com>
1291 Reviewed by Darin Adler
1293 <rdar://problem/6616664> - Quick looks of various file types is broken
1295 In http://trac.webkit.org/changeset/40553 there was an attempt to prevent NSURLRequest churn
1296 for non-HTTP loads when the underlying ResourceRequest changed. Unfortunately it was a little
1297 overzealous as the mainDocumentURL is relevant for all loads, not only HTTP/HTTPS loads.
1299 Partially reverted behavior to always set the mainDocumentURL in situations when we would've
1302 * loader/FrameLoader.cpp:
1303 (WebCore::FrameLoader::addExtraFieldsToRequest):
1305 * platform/network/ResourceRequestBase.cpp:
1306 (WebCore::ResourceRequestBase::setMainDocumentURL):
1308 2009-03-03 Chris Marrin <cmarrin@apple.com>
1310 Reviewed by Simon Fraser.
1312 https://bugs.webkit.org/show_bug.cgi?id=24256
1314 Added a WebCoreForceSoftwareAnimation flag.
1316 * platform/graphics/mac/GraphicsLayerCA.mm:
1317 (WebCore::forceSoftwareAnimation):
1318 (WebCore::GraphicsLayerCA::setOpacity):
1319 (WebCore::GraphicsLayerCA::animateTransform):
1320 (WebCore::GraphicsLayerCA::animateFloat):
1322 2009-03-02 Chris Marrin <cmarrin@apple.com>
1324 Reviewed by Sam Weinig.
1326 https://bugs.webkit.org/show_bug.cgi?id=24257
1328 Added prototype properties for several classes with constructors that
1329 were missing them, including the one mentioned in the bug.
1331 Test: fast/dom/Window/custom-constructors.html
1333 * bindings/js/JSAudioConstructor.cpp:
1334 (WebCore::JSAudioConstructor::JSAudioConstructor):
1335 * bindings/js/JSDOMWindowBase.cpp:
1336 (jsDOMWindowBaseWebKitCSSMatrix):
1337 * bindings/js/JSImageConstructor.cpp:
1338 (WebCore::JSImageConstructor::JSImageConstructor):
1339 * bindings/js/JSOptionConstructor.cpp:
1340 (WebCore::JSOptionConstructor::JSOptionConstructor):
1341 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
1342 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
1343 * bindings/js/JSWebKitCSSMatrixConstructor.h:
1344 * bindings/js/JSWebKitPointConstructor.cpp:
1345 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
1346 * bindings/js/JSWorkerConstructor.cpp:
1347 (WebCore::JSWorkerConstructor::JSWorkerConstructor):
1349 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
1351 Reviewed by Darin Fisher.
1353 https://bugs.webkit.org/show_bug.cgi?id=24321
1354 Add V8 bindings headers.
1356 * bindings/v8/V8Binding.h: Added.
1357 * bindings/v8/V8Proxy.h: Added.
1358 * bindings/v8/custom/V8CustomBinding.h: Added.
1359 * bindings/v8/custom/V8CustomEventListener.h: Added.
1361 2009-03-03 Jungshik Shin <jshin@chromium.org>
1363 Reviewed by Eric Seidel.
1365 https://bugs.webkit.org/show_bug.cgi?id=23803
1366 Fix an 'off-by-1' error in ChromiumWin's font fallback.
1368 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
1369 (WebCore::FontCache::getFontDataForCharacters):
1371 2009-03-03 Jungshik Shin <jshin@chromium.org>
1373 Reviewed by Eric Seidel.
1375 http://bugs.webkit.org/show_bug.cgi?id=23028
1376 Enable dynamic web font support to Chromium on Windows: Part 1
1377 - Move OpenTypeUtilities.{cpp,h} to platform/graphics/opentype
1378 from platform/graphics/win because both Windows port and Chromium Windows
1380 - Adjust WebCore.vcproj accordingly.
1382 * WebCore.vcproj/WebCore.vcproj:
1383 * platform/graphics/opentype: Added.
1384 * platform/graphics/opentype/OpenTypeUtilities.cpp: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.cpp.
1385 * platform/graphics/opentype/OpenTypeUtilities.h: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.h.
1386 * platform/graphics/win/OpenTypeUtilities.cpp: Removed.
1387 * platform/graphics/win/OpenTypeUtilities.h: Removed.
1389 2009-03-03 Simon Fraser <simon.fraser@apple.com>
1391 Reviewed by Dave Hyatt
1393 https://bugs.webkit.org/show_bug.cgi?id=24312
1395 Take 3D transforms into account when hit testing:
1397 1. Maintain a bit on each RenderLayer that is set when the layer
1398 has 3d descendants, so that we know when to fall into the slow
1401 2. Make a ref-counted HitTestingTransformState, which is used to store
1402 an accumulated transform, and the hit test point, and hitTestRect
1403 in the plane of the ancestor non-3d ('flattening') layer.
1405 It's ref-counted so we can heap allocate it (to avoid stack bloat),
1406 and avoid copying when hitTestLayer calls itself after applying the transform.
1408 3. Add logic to hitTestLayer to depth-test just direct descendants, if any have
1409 3D transforms, or to do deep depth-testing when traversing a preserves-3d
1410 hierarchy. When hit, layers compute a z-offset from the ancestor flattening
1411 layer, which allows for correct depth testing.
1413 The existing early-return codepath is unaffected when there are no 3d transforms
1416 * rendering/RenderLayer.cpp:
1417 (WebCore::RenderLayer::RenderLayer):
1418 (WebCore::RenderLayer::updateTransform):
1419 (WebCore::RenderLayer::dirty3DTransformedDescendantStatus):
1420 (WebCore::RenderLayer::update3DTransformedDescendantStatus):
1421 (WebCore::RenderLayer::hitTest):
1422 (WebCore::computeZOffset):
1423 (WebCore::RenderLayer::createLocalTransformState):
1424 (WebCore::RenderLayer::hitTestLayer):
1425 (WebCore::RenderLayer::hitTestContents):
1426 * rendering/RenderLayer.h:
1427 (WebCore::RenderLayer::preserves3D):
1428 (WebCore::RenderLayer::has3DTransform):
1429 (WebCore::RenderLayer::setHas3DTransformedDescendant):
1430 (WebCore::RenderLayer::has3DTransformedDescendant):
1431 * rendering/RenderLayerBacking.cpp:
1432 * rendering/TransformState.cpp:
1433 (WebCore::TransformState::flatten):
1434 (WebCore::TransformState::mappedPoint):
1435 (WebCore::HitTestingTransformState::move):
1436 (WebCore::HitTestingTransformState::applyTransform):
1437 (WebCore::HitTestingTransformState::flatten):
1438 (WebCore::HitTestingTransformState::mappedPoint):
1439 (WebCore::HitTestingTransformState::mappedQuad):
1440 * rendering/TransformState.h:
1441 (WebCore::TransformState::TransformState):
1442 (WebCore::HitTestingTransformState::create):
1443 (WebCore::HitTestingTransformState::move):
1444 (WebCore::HitTestingTransformState::HitTestingTransformState):
1446 2009-03-03 Brett Wilson <brettw@chromium.org>
1448 Fix uninitialized memory reads in the Chromium Windows transparency
1449 code that were identified by Purify,
1451 Reviewed by Darin Fisher.
1453 * platform/graphics/chromium/TransparencyWin.cpp:
1454 (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
1455 (WebCore::TransparencyWin::initializeNewContext):
1457 2009-03-03 Simon Fraser <simon.fraser@apple.com>
1459 Reviewed by Dave Hyatt
1461 https://bugs.webkit.org/show_bug.cgi?id=24312
1463 Factor the code that compute a transform relative to the container
1464 into RenderObject::transformFromContainer().
1466 * rendering/RenderBox.cpp:
1467 (WebCore::RenderBox::mapLocalToAbsolutePoint):
1468 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
1469 * rendering/RenderObject.cpp:
1470 (WebCore::RenderObject::transformFromContainer):
1471 * rendering/RenderObject.h:
1473 2009-03-03 Simon Fraser <simon.fraser@apple.com>
1475 Reviewed by Dave Hyatt
1477 https://bugs.webkit.org/show_bug.cgi?id=24317
1479 Always return |true| from RenderTextControlMultiLine::nodeAtPoint() if
1480 the superclass found a node, otherwise we set the innerNode of the
1481 HitTestResult, but don't actually report that we found a hit.
1483 * rendering/RenderTextControlMultiLine.cpp:
1484 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
1486 2009-03-03 Onne Gorter <onne.gorter@avinity.net>
1488 Reviewed by Anders Carlsson.
1490 https://bugs.webkit.org/show_bug.cgi?id=23707
1491 resizing plugins does not work, because the plugin never gets informed
1493 Make gtk plugins resize correctly, by sending them the setwindow event
1494 correctly. Also ensure that all plugin eventing is done with correct
1495 locking/calling. Mostly copied from mac implementation.
1497 manual test: manual-tests/gtk/plugin-resize-scroll.html
1499 * plugins/PluginView.h:
1500 * plugins/gtk/PluginViewGtk.cpp:
1501 (WebCore::PluginView::dispatchNPEvent):
1502 ensure locking/calling for NPEvents
1503 (WebCore::PluginView::updatePluginWidget):
1504 if something changed, let setNPWindowIfNeeded handle it
1505 (WebCore::PluginView::paint):
1506 (WebCore::PluginView::handleKeyboardEvent):
1507 (WebCore::PluginView::handleMouseEvent):
1508 ensure calling conventions
1509 (WebCore::PluginView::setNPWindowRect):
1510 just pass control to setNPWindowIfNeeded
1511 (WebCore::PluginView::setNPWindowIfNeeded):
1512 event the plugin correctly of new window
1513 (WebCore::PluginView::init):
1514 init through the new setup
1516 2009-03-03 Mike Belshe <mike@belshe.com>
1518 Reviewed by Darin Fisher.
1520 https://bugs.webkit.org/show_bug.cgi?id=24311
1521 Make IDL returning DOMObject use [V8Custom]
1524 * html/HTMLCanvasElement.idl:
1526 2009-03-02 Simon Fraser <simon.fraser@apple.com>
1528 Reviewed by Adele Peterson
1530 https://bugs.webkit.org/show_bug.cgi?id=24313
1532 If RenderTextControlSingleLine::nodeAtPoint() pokes a node into the
1533 HitTestResult, then it had better well return |true|. And m_innerBlock
1534 could never have been set as the hit node by the superclass, because
1535 the superclass knows nothing about m_innerBlock.
1537 Test: fast/forms/input-hit-test-border.html
1539 * rendering/RenderTextControlSingleLine.cpp:
1540 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
1542 2009-03-02 Sam Weinig <sam@webkit.org>
1544 Reviewed by Mark Rowe.
1546 Enable Geolocation (except on Tiger and Leopard).
1548 * Configurations/WebCore.xcconfig:
1550 2009-03-02 Ojan Vafai <ojan@chromium.org>
1552 Reviewed by Adele Peterson.
1554 Fix https://bugs.webkit.org/show_bug.cgi?id=24307
1555 Null out m_highlightedNode on hideHighlight().
1556 Ran WebCore/manual-tests/inspector/highlight-nodes.html.
1558 * inspector/InspectorController.cpp:
1559 (WebCore::InspectorController::hideHighlight):
1561 2009-03-02 Sam Weinig <sam@webkit.org>
1563 Reviewed by Geoffrey Garen.
1565 Fix for <rdar://problem/6507404> Add Geolocation support.
1567 This is not yet turned on for any Mac platform.
1569 * WebCore.xcodeproj/project.pbxproj:
1571 (WebCore::Chrome::shouldAllowGeolocationForFrame):
1573 * page/ChromeClient.h:
1574 (WebCore::ChromeClient::shouldAllowGeolocationForFrame):
1575 * page/Geolocation.cpp:
1576 (WebCore::Geolocation::Geolocation):
1577 (WebCore::Geolocation::disconnectFrame): Remove call to setUsingGeolocation as the document
1578 will not be alive at this point.
1579 (WebCore::Geolocation::getCurrentPosition): Check if the embedding app allows geolocation and
1580 return a PERMISSION_DENIED if not.
1581 (WebCore::Geolocation::watchPosition): Ditto.
1582 (WebCore::Geolocation::shouldAllowGeolocation): Perform request to embedding layer of whether
1583 to allow geolocation and cache the result.
1584 * page/Geolocation.h:
1585 (WebCore::Geolocation::):
1586 * platform/GeolocationService.cpp:
1587 * platform/GeolocationService.h:
1588 (WebCore::GeolocationService::~GeolocationService):
1589 (WebCore::GeolocationService::stopUpdating):
1590 * platform/mac/GeolocationServiceMac.h: Added.
1591 (WebCore::GeolocationServiceMac::lastPosition):
1592 (WebCore::GeolocationServiceMac::lastError):
1593 * platform/mac/GeolocationServiceMac.mm: Added.
1594 (WebCore::GeolocationService::create):
1595 (WebCore::GeolocationServiceMac::GeolocationServiceMac):
1596 (WebCore::GeolocationServiceMac::~GeolocationServiceMac):
1597 (WebCore::GeolocationServiceMac::startUpdating):
1598 (WebCore::GeolocationServiceMac::stopUpdating):
1599 (WebCore::GeolocationServiceMac::suspend):
1600 (WebCore::GeolocationServiceMac::resume):
1601 (WebCore::GeolocationServiceMac::positionChanged):
1602 (WebCore::GeolocationServiceMac::errorOccurred):
1603 (-[WebCoreCoreLocationObserver initWithCallback:]):
1604 (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
1605 (-[WebCoreCoreLocationObserver locationManager:didFailWithError:]):
1607 2009-03-02 Kevin Ollivier <kevino@theolliviers.com>
1609 Build fixes for wxWidgets Mac trunk build.
1611 * platform/wx/wxcode/mac/carbon/fontprops.cpp:
1612 (wxFontProperties::wxFontProperties):
1616 2009-03-02 Kevin Ollivier <kevino@theolliviers.com>
1618 wxGTK missing header build fix.
1620 * platform/wx/wxcode/gtk/fontprops.cpp:
1622 2009-03-02 Dan Bernstein <mitz@apple.com>
1624 Reviewed by Adam Roben.
1626 - fix https://bugs.webkit.org/show_bug.cgi?id=21811
1627 REGRESSION: Windows Build Not Selecting Proper Font
1629 * platform/graphics/win/FontCacheWin.cpp:
1630 (WebCore::createGDIFont): Added back code to verify that the created
1631 HFONT has the requested face name.
1633 2009-03-02 Timothy Hatcher <timothy@apple.com>
1635 Fixes a regression caused by splitting the input and output of console commands.
1637 https://bugs.webkit.org/show_bug.cgi?id=24293
1639 Reviewed by Kevin McCullough.
1641 * inspector/front-end/Console.js:
1642 (WebInspector.Console.prototype.addMessage): Don't treat ConsoleCommandResult as a
1643 normal ConsoleMessage when appending. This prevents resetting repeatCounts incorrectly.
1645 2009-03-02 Timothy Hatcher <timothy@apple.com>
1647 Make exception messages and logged Error objects display consistently.
1649 https://bugs.webkit.org/show_bug.cgi?id=18983
1651 Reviewed by Adam Roben.
1653 * English.lproj/localizedStrings.js: Remove a string for line numbers.
1654 * inspector/front-end/Console.js:
1655 (WebInspector.Console.prototype._enterKeyPressed): Pass the exception
1656 boolean to the ConsoleCommandResult constructor and don't pass level.
1657 (WebInspector.Console.prototype._formatnode): Fix a className typo.
1658 (WebInspector.Console.prototype._formaterror): Add an error-message
1659 classed span around the message to show in red and remove the
1660 console-message-url class from the link so it doesn't float right.
1661 Instead enclose the link in parentheses and use displayNameForURL
1662 to shorten the URL in the link.
1663 (WebInspector.ConsoleMessage.prototype.toMessageElement): Simplify
1664 how line numbers are shown since link underlining a string with
1665 parentheses looks bad.
1666 (WebInspector.ConsoleCommandResult): Take an exception boolean flag
1667 instead of a level and get line and URL based on that flag.
1668 * inspector/front-end/inspector.css: Tweaks to the styles.
1670 2009-03-02 Ojan Vafai <ojan@chromium.org>
1672 Reviewed by Adele Peterson.
1674 Bug 24048: extra windows button padding doesn't apply when there's no appearance
1675 <https://bugs.webkit.org/show_bug.cgi?id=24048>
1677 Replace adjustButtonInnerStyle with buttonInternalPaddingLeft/Right/Top/Bottom.
1679 No tests added as existing tests already cover this behavior.
1681 * rendering/RenderButton.cpp:
1682 (WebCore::RenderButton::setupInnerStyle):
1683 * rendering/RenderTheme.cpp:
1684 * rendering/RenderTheme.h:
1685 (WebCore::RenderTheme::buttonInternalPaddingLeft):
1686 (WebCore::RenderTheme::buttonInternalPaddingRight):
1687 (WebCore::RenderTheme::buttonInternalPaddingTop):
1688 * rendering/RenderThemeChromiumGtk.cpp:
1689 (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
1690 (WebCore::RenderThemeWin::buttonInternalPaddingRight):
1691 (WebCore::RenderThemeWin::buttonInternalPaddingTop):
1692 (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
1693 * rendering/RenderThemeChromiumGtk.h:
1694 * rendering/RenderThemeChromiumWin.cpp:
1695 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingLeft):
1696 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingRight):
1697 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingTop):
1698 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingBottom):
1699 * rendering/RenderThemeChromiumWin.h:
1700 * rendering/RenderThemeWin.cpp:
1701 (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
1702 (WebCore::RenderThemeWin::buttonInternalPaddingRight):
1703 (WebCore::RenderThemeWin::buttonInternalPaddingTop):
1704 (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
1705 * rendering/RenderThemeWin.h:
1707 2009-03-02 Adam Treat <adam.treat@torchmobile.com>
1709 Build fix for Qt port. Remove unnecessary assert.
1711 * platform/graphics/qt/ImageBufferQt.cpp:
1712 (WebCore::ImageBuffer::putImageData):
1714 2009-03-02 Adam Treat <adam.treat@torchmobile.com>
1716 Reviewed by Adam Roben and previously by Eric Seidel and Simon Fraser.
1718 https://bugs.webkit.org/show_bug.cgi?id=24227
1719 Ensure that the checkForSolidColor() optimization is correctly triggered
1720 for all cases of drawPattern. Currently, the optimization was not triggered
1721 when the check had not been previously performed via a request for the
1722 image's NativeImagePtr.
1724 Implement the Qt version of the checkForSolidColor() method. Combined with
1725 the bug fix this reduces the time it takes to draw a repeating background
1726 of a 1x1 image from ~50msecs to ~0msecs on my machine.
1728 * platform/graphics/BitmapImage.cpp:
1729 (WebCore::BitmapImage::BitmapImage):
1730 * platform/graphics/BitmapImage.h:
1731 (WebCore::BitmapImage::mayFillWithSolidColor):
1732 * platform/graphics/Image.h:
1733 (WebCore::Image::mayFillWithSolidColor):
1734 * platform/graphics/cairo/ImageCairo.cpp:
1735 (WebCore::BitmapImage::BitmapImage):
1736 (WebCore::BitmapImage::checkForSolidColor):
1737 * platform/graphics/cg/ImageCG.cpp:
1738 (WebCore::BitmapImage::BitmapImage):
1739 (WebCore::BitmapImage::checkForSolidColor):
1740 * platform/graphics/qt/ImageQt.cpp:
1741 (WebCore::BitmapImage::checkForSolidColor):
1742 * platform/graphics/skia/ImageSkia.cpp:
1743 (WebCore::BitmapImage::checkForSolidColor):
1744 * platform/graphics/wx/ImageWx.cpp:
1745 (WebCore::BitmapImage::checkForSolidColor):
1747 2009-03-02 Gustavo Noronha Silva <gns@gnome.org>
1749 Unreviewed build fix; adding missing files to EXTRA_DIST, so that
1750 they show up in the tarball.
1754 2009-03-02 Dirk Schulze <krit@webkit.org>
1756 Reviewed by Holger Freyther.
1758 Added putImageData to Qt. Discussed with Ariya Hidayat.
1760 [Qt] lacks putImageData support in Canvas
1761 https://bugs.webkit.org/show_bug.cgi?id=22186
1763 * platform/graphics/qt/ImageBufferQt.cpp:
1764 (WebCore::ImageBuffer::putImageData):
1766 2009-03-02 Timothy Hatcher <timothy@apple.com>
1768 Show exception messages again when evaluating bad expressions in the
1769 Web Inspector's console.
1771 https://bugs.webkit.org/show_bug.cgi?id=19890
1773 Reviewed by Oliver Hunt.
1775 * bindings/js/JSQuarantinedObjectWrapper.cpp:
1776 (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
1777 Fix the order in which the exception is set and cleared now that the
1778 exception is stored in the shared GlobalData, not per ExecState.
1780 2009-02-28 Timothy Hatcher <timothy@apple.com>
1782 Make input in the Web Inspector console print before any output
1783 that might be added by the called function.
1785 https://bugs.webkit.org/show_bug.cgi?id=19931
1787 Reviewed by Oliver Hunt.
1789 * inspector/front-end/Console.js:
1790 (WebInspector.Console.prototype._enterKeyPressed): Add the command
1791 message before evaluating the result. Associate the originating
1792 command to the result, so if they are adjacent there is no divider.
1793 (WebInspector.ConsoleCommand): No longer take a result.
1794 (WebInspector.ConsoleCommand.prototype.toMessageElement): Result
1795 code removed since it isn't used now.
1796 (WebInspector.ConsoleCommandResult): Subclass ConsoleMessage.
1797 (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
1798 Call the ConsoleMessage toMessageElement and add a style class.
1799 * inspector/front-end/inspector.css: Add a new style class for
1800 adjacent results to hide the divider. Also tweak the position of
1801 the disclosure triangle for objects to not use the left margin.
1803 2009-03-01 Chris Fleizach <cfleizach@apple.com>
1805 Reviewed by Oliver Hunt.
1807 Bug 24282: AX Palindrome error when asking for a specific index of the AXChildren array
1808 <https://bugs.webkit.org/show_bug.cgi?id=24282>
1810 When fetching an array of elements with a range, attachment views need to be returned
1811 instead of the actual attachment.
1813 * page/mac/AccessibilityObjectWrapper.mm:
1814 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
1815 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
1817 2009-03-01 Ojan Vafai <ojan@chromium.org>
1819 Reviewed by Eric Seidel.
1821 Bug 24251: Cleanup: replace positionForCoordinates with positionForPoint
1822 <https://bugs.webkit.org/show_bug.cgi?id=24251>
1824 Make RenderObject::positionForCoordinate non-virtual and
1825 RenderObject::positionForPoint virtual in preparation for
1826 removing positionFor* from RenderObject/RenderText.
1829 (WebCore::Frame::visiblePositionForPoint):
1830 * rendering/RenderBR.cpp:
1831 (WebCore::RenderBR::positionForPoint):
1832 * rendering/RenderBR.h:
1833 * rendering/RenderBlock.cpp:
1834 (WebCore::RenderBlock::positionForPoint):
1835 * rendering/RenderBlock.h:
1836 * rendering/RenderBox.cpp:
1837 (WebCore::RenderBox::positionForPoint):
1838 * rendering/RenderBox.h:
1839 * rendering/RenderInline.cpp:
1840 (WebCore::RenderInline::positionForPoint):
1841 * rendering/RenderInline.h:
1842 * rendering/RenderObject.cpp:
1843 (WebCore::RenderObject::positionForCoordinates):
1844 (WebCore::RenderObject::positionForPoint):
1845 * rendering/RenderObject.h:
1846 * rendering/RenderReplaced.cpp:
1847 (WebCore::RenderReplaced::positionForPoint):
1848 * rendering/RenderReplaced.h:
1849 * rendering/RenderSVGInlineText.cpp:
1850 (WebCore::RenderSVGInlineText::positionForPoint):
1851 * rendering/RenderSVGInlineText.h:
1852 * rendering/RenderText.cpp:
1853 (WebCore::RenderText::positionForPoint):
1854 * rendering/RenderText.h:
1856 2009-03-01 Larry Ewing <lewing@novell.com>
1858 Reviewed by Alexey Proskuryakov.
1860 https://bugs.webkit.org/show_bug.cgi?id=24080
1861 NPN_GetValue casting to the wrong type and writing outside bounds
1863 Make sure to cast the value to the correct type so that only
1864 memory owned by the value is written to.
1866 * plugins/gtk/PluginViewGtk.cpp (PluginView::getValueStatic):
1867 * plugins/qt/PluginViewQt.cpp (PluginView::getValueStatic):
1868 * plugins/mac/PluginViewMac.cpp (PluginView::getValueStatic):
1869 (PluginView::getValue):
1871 2009-03-01 Jeremy Moskovich <jeremy@chromium.org>
1873 Reviewed by Simon Fraser.
1875 https://bugs.webkit.org/show_bug.cgi?id=24197 and
1876 https://bugs.webkit.org/show_bug.cgi?id=23512
1878 The Windows version of cgColor() is conditionally compiled using
1879 !PLATFORM(MAC) change this to PLATFORM(WIN_OS) so that Chrome
1880 can use the OS X version instead of the Windows version.
1882 Also rename cgColor() -> createCGColor()
1884 No observable change in behavior, so no test.
1886 * platform/graphics/Color.h:
1887 * platform/graphics/cg/ColorCG.cpp:
1888 (WebCore::createCGColor):
1889 * platform/graphics/cg/GraphicsContextCG.cpp:
1890 (WebCore::GraphicsContext::setPlatformShadow):
1891 * platform/graphics/mac/ColorMac.mm:
1892 (WebCore::createCGColor):
1893 * platform/graphics/mac/GraphicsContextMac.mm:
1894 (WebCore::GraphicsContext::drawFocusRing):
1895 * platform/graphics/mac/GraphicsLayerCA.mm:
1896 (WebCore::setLayerBorderColor):
1897 (WebCore::setLayerBackgroundColor):
1898 (WebCore::GraphicsLayerCA::setBackgroundColor):
1899 * platform/graphics/win/GraphicsContextCGWin.cpp:
1900 (WebCore::GraphicsContext::drawFocusRing):
1901 * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
1904 2009-03-01 David Levin <levin@chromium.org>
1906 Reviewed by Alexey Proskuryakov.
1908 Bug 24271: XMLHttpRequest needs js bindings for Workers.
1909 <https://bugs.webkit.org/show_bug.cgi?id=24271>
1911 Tests: http/tests/xmlhttprequest/workers/methods-async.html
1912 http/tests/xmlhttprequest/workers/methods.html
1914 * bindings/js/JSWorkerContextBase.cpp:
1915 (WebCore::JSWorkerContextBase::getOwnPropertySlot):
1916 (jsWorkerContextBaseXMLHttpRequest):
1917 (setJSWorkerContextBaseXMLHttpRequest):
1918 Expose XMLHttpRequest to Workers.
1920 * bindings/js/JSWorkerContextBase.h:
1922 * bindings/js/JSXMLHttpRequestConstructor.cpp:
1923 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
1924 (WebCore::constructXMLHttpRequest):
1925 (WebCore::JSXMLHttpRequestConstructor::mark):
1926 Removed the dependencies on Document.
1928 * bindings/js/JSXMLHttpRequestConstructor.h:
1929 (WebCore::JSXMLHttpRequestConstructor::scriptExecutionContext):
1930 * dom/EventException.idl:
1931 * dom/EventListener.idl:
1932 Change to have the NoStaticTables attribute since they are used from XHR.
1934 * loader/WorkerThreadableLoader.cpp:
1935 (WebCore::workerContextDidFinishLoading):
1936 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
1937 Fixed identifier to be unsigned long.
1939 * loader/WorkerThreadableLoader.h:
1940 * workers/WorkerThread.cpp:
1941 (WebCore::WorkerThread::workerThread):
1942 Stop active objects when the thread is getting shutdown so that xhr gets properly shutdown.
1944 * xml/XMLHttpRequestUpload.cpp:
1946 * xml/XMLHttpRequest.idl:
1947 * xml/XMLHttpRequestException.idl:
1948 * xml/XMLHttpRequestProgressEvent.idl:
1949 * xml/XMLHttpRequestUpload.idl:
1950 Change to have the NoStaticTables attribute since they are used from XHR.
1952 2009-03-01 Horia Olaru <olaru@adobe.com>
1954 Adding manual debugger test cases for bug.
1956 https://bugs.webkit.org/show_bug.cgi?id=21073
1958 Reviewed by Kevin McCullough.
1960 * manual-tests/inspector/debugger-step-on-do-while-statements.html: Added.
1961 * manual-tests/inspector/debugger-step-on-for-in-statements.html: Added.
1962 * manual-tests/inspector/debugger-step-on-for-statements.html: Added.
1963 * manual-tests/inspector/debugger-step-on-while-statements.html: Added.
1964 * manual-tests/inspector/resources/loop-statements.js: Added.
1966 2009-03-01 Dan Bernstein <mitz@apple.com>
1968 Reviewed by Darin Adler.
1970 - fix <rdar://problem/6634768> Reproducible crash in RenderLayer::updateScrollCornerStyle() using full-page zoom at MobileMe Contacts
1972 Test: fast/events/scroll-during-zoom-change.html
1975 (WebCore::Document::recalcStyle): Pause scheduled events during style
1976 reclaculation. Changes to the zoom property result in scroll events
1977 being generated during style recalc, and those events need to be
1978 deferred until the render tree is consistent.
1979 * page/FrameView.cpp:
1980 (WebCore::FrameView::layout): Changed to account for a case in which the
1981 post-layout tasks trigger a nested layout, which reactivates the
1982 post-layout task timer.
1984 2009-03-01 Ross Boucher <rboucher@gmail.com>
1986 Alphabetically sort scripts in the Script's panel file popup menu.
1988 https://bugs.webkit.org/show_bug.cgi?id=23395
1990 Reviewed by Timothy Hatcher.
1992 * inspector/front-end/ScriptsPanel.js:
1993 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
1994 * inspector/front-end/utilities.js:
1995 (insertionIndexForObjectInListSortedByFunction):
1996 (indexOfObjectInListSortedByFunction):
1998 2009-03-01 Yael Aharon <yael.aharon@nokia.com>
2000 Pass securityOrigin->host() instead of securityOrigin->domain() to WebInspector
2001 when creating databases, localStorage or sessionStorage. Changing document.domain
2002 should have no affect on databases, localStorage and sessionStorage in Web Inspector.
2004 https://bugs.webkit.org/show_bug.cgi?id=23844
2006 Reviewed by Timothy Hatcher.
2008 * inspector/InspectorController.cpp:
2009 (WebCore::InspectorController::addDOMStorageScriptResource):
2010 (WebCore::InspectorController::didUseDOMStorage):
2011 * storage/Database.cpp:
2012 (WebCore::Database::openDatabase):
2014 2009-03-01 Gustavo Noronha Silva <gns@gnome.org>
2016 Reviewed by Holger Freyther.
2018 Avoid leaking errors when reporting GIO errors.
2020 * platform/network/soup/ResourceHandleSoup.cpp:
2021 (WebCore::readCallback):
2022 (WebCore::openCallback):
2023 (WebCore::queryInfoCallback):
2025 2009-03-01 Gustavo Noronha Silva <gns@gnome.org>
2027 Reviewed by Holger Freyther.
2029 Fixes crash when the GIO backend is given the URI for a directory.
2031 * platform/network/soup/ResourceHandleSoup.cpp:
2032 (WebCore::networkErrorForFile):
2034 2009-02-28 Dimitri Glazkov <dglazkov@chromium.org>
2036 Reviewed by Darin Fisher.
2038 https://bugs.webkit.org/show_bug.cgi?id=24261
2039 Fix V8 custom binding scrubbing error.
2041 Test: fast/dom/TreeWalker/TreeWalker-currentNode.html
2042 Test: traversal/exception-forwarding.html
2043 TesT: traversal/stay-within-root.html
2045 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2046 * bindings/v8/custom/V8NodeIteratorCustom.cpp:
2047 (WebCore::toV8): Replace v8::Undefined() return value with v8::Null().
2048 * bindings/v8/custom/V8TreeWalkerCustom.cpp:
2049 (WebCore::toV8): Ditto.
2051 2009-02-28 Dimitri Glazkov <dglazkov@chromium.org>
2053 Reviewed by Darin Fisher.
2055 https://bugs.webkit.org/show_bug.cgi?id=24261
2056 Fix V8 custom binding scrubbing error.
2058 Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html
2060 * WebCore.xcodeproj/project.pbxproj:
2061 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2062 (WebCore::cssPropertyName): Remove dubious checks, left over from
2063 incomplete conversion of parameter from pointer to pass-by-ref.
2064 (WebCore::NAMED_PROPERTY_GETTER): Initialize parameter.
2065 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
2067 2009-02-28 Xan Lopez <xan@gnome.org>
2069 Reviewed by Holger Freyther.
2071 https://bugs.webkit.org/show_bug.cgi?id=24263
2072 [GTK] ref ResourceHandle until we are finished with it
2074 Add a ref to the ResourceHandle in startHttp so we can keep it
2075 alive untill all callbacks have been executed, and unref it when
2076 soup tells us it's done with the SoupMessage (in
2077 finishedCallback). Fixes a number of crashes when calling
2078 didReceiveData whould crash because of the handle dying.
2080 * platform/network/soup/ResourceHandleSoup.cpp:
2081 (WebCore::finishedCallback):
2082 (WebCore::ResourceHandle::startHttp):
2084 2009-02-28 Adam Bergkvist <adam.bergkvist@ericsson.com>
2086 Reviewed by Alexey Proskuryakov.
2088 https://bugs.webkit.org/show_bug.cgi?id=24226
2089 [SOUP] HTTP status text is never set
2091 Set HTTP status text to SoupMessage reason_phrase.
2093 * platform/network/soup/ResourceHandleSoup.cpp:
2094 (WebCore::fillResponseFromMessage):
2096 2009-02-28 Dan Bernstein <mitz@apple.com>
2098 - fix malformed project file
2100 * WebCore.xcodeproj/project.pbxproj:
2102 2009-02-28 Dan Bernstein <mitz@apple.com>
2104 Reviewed by Oliver Hunt.
2106 - fix https://bugs.webkit.org/show_bug.cgi?id=23848
2107 <rdar://problem/6573250> REGRESSION: Crash when mouse cursor moves over a link on www.opportuno.de
2109 Test: fast/layers/inline-dirty-z-order-lists.html
2111 * rendering/RenderBox.cpp:
2112 (WebCore::RenderBox::styleWillChange): Moved the code that dirties a
2113 layer's and its stacking context's z-order lists when the layer's
2114 z-index or visibility change from here...
2115 * rendering/RenderBoxModelObject.cpp:
2116 (WebCore::RenderBoxModelObject::styleWillChange): ...to here, so that
2117 it will apply to RenderInline too.
2119 2009-02-27 Alexey Proskuryakov <ap@webkit.org>
2121 Reviewed by David Hyatt.
2123 Don't include TextResourceDecoder.h in Document.h
2125 This undoes inlining of Document::displayStringModifiedByEncoding() to avoid world rebuilds
2126 when TextResourceDecoder.h is modified. Performance impact is expected to be negligible.
2129 (WebCore::Document::displayStringModifiedByEncoding):
2130 (WebCore::Document::displayBufferModifiedByEncoding):
2134 2009-02-27 Matt Pennig <pennig@apple.com>
2136 Reviewed by David Hyatt.
2138 Resolves: https://bugs.webkit.org/show_bug.cgi?id=24107
2139 "Fixed elements have 0 as an offsetLeft property"
2141 Code also brings offsetLeft/Top in full conformance with the spec.
2142 Added two tests, one for fixed-position elements, and one for <html>.
2144 Tests: fast/dom/Element/fixed-position-offset-parent.html
2145 fast/dom/Element/offsetLeft-offsetTop-html.html
2147 * rendering/RenderBoxModelObject.cpp:
2148 (WebCore::RenderBoxModelObject::offsetLeft):
2149 (WebCore::RenderBoxModelObject::offsetTop):
2151 2009-02-27 Dean Jackson <dino@apple.com>
2153 Reviewed by Simon Fraser.
2155 renderer()->hasTransform() returns true for elements
2156 with perspective, but no transform, so test for transform
2157 when hit testing. This fixes ASSERT from
2158 https://bugs.webkit.org/show_bug.cgi?id=24252
2160 Test: transforms/no_transform_hit_testing.html
2162 * rendering/RenderLayer.cpp:
2163 (WebCore::RenderLayer::hitTestLayer):
2165 2009-02-27 Dimitri Glazkov <dglazkov@chromium.org>
2167 Reviewed by Darin Fisher.
2169 Fix scrubbing error -- a reversed condition.
2171 * bindings/v8/ScriptValue.h:
2172 (WebCore::ScriptValue::clear): Change early exit for empty value, not the opposite.
2174 2009-02-27 Jian Li <jianli@chromium.org>
2176 Reviewed by Alexey Proskuryakov.
2178 Add confirmMessageFromWorkerObject to WorkerObjectProxy.
2179 https://bugs.webkit.org/show_bug.cgi?id=24152
2181 * workers/WorkerMessagingProxy.cpp:
2182 (WebCore::MessageWorkerContextTask::performTask):
2183 (WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
2184 * workers/WorkerMessagingProxy.h:
2185 * workers/WorkerObjectProxy.h:
2187 2009-02-27 Anders Carlsson <andersca@apple.com>
2189 Reviewed by David Hyatt.
2191 Revert r41295, the fix for https://bugs.webkit.org/show_bug.cgi?id=24227
2192 because it leads to assertion failures in the Mac port.
2194 * platform/graphics/BitmapImage.cpp:
2195 (WebCore::BitmapImage::BitmapImage):
2196 * platform/graphics/BitmapImage.h:
2197 (WebCore::BitmapImage::mayFillWithSolidColor):
2198 * platform/graphics/Image.h:
2199 (WebCore::Image::mayFillWithSolidColor):
2200 * platform/graphics/cairo/ImageCairo.cpp:
2201 (WebCore::BitmapImage::BitmapImage):
2202 * platform/graphics/cg/ImageCG.cpp:
2203 (WebCore::BitmapImage::BitmapImage):
2204 (WebCore::BitmapImage::checkForSolidColor):
2205 * platform/graphics/qt/ImageQt.cpp:
2206 (WebCore::BitmapImage::checkForSolidColor):
2207 * platform/graphics/skia/ImageSkia.cpp:
2208 (WebCore::BitmapImage::checkForSolidColor):
2209 * platform/graphics/wx/ImageWx.cpp:
2210 (WebCore::BitmapImage::checkForSolidColor):
2212 2009-02-27 Adam Barth <abarth@webkit.org>
2214 Reviewed by Eric Seidel.
2216 https://bugs.webkit.org/show_bug.cgi?id=20249
2218 Add a preference to allow universal access from local URLs to mitigate
2219 some attacks. Some clients still want to allow this access, so we
2220 expose this as a preference.
2224 (WebCore::Document::initSecurityContext):
2225 * page/SecurityOrigin.cpp:
2226 (WebCore::SecurityOrigin::SecurityOrigin):
2227 * page/Settings.cpp:
2228 (WebCore::Settings::Settings):
2229 (WebCore::Settings::setAllowUniversalAccessFromFileUrls):
2231 (WebCore::Settings::allowUniversalAccessFromFileUrls):
2233 2009-02-27 Adam Treat <adam.treat@torchmobile.com>
2235 Reviewed by Eric Seidel.
2237 https://bugs.webkit.org/show_bug.cgi?id=24229
2238 If an image has no alpha channel there is no reason to use SourceOver.
2240 * platform/graphics/qt/ImageQt.cpp:
2241 (WebCore::Image::drawPattern):
2242 (WebCore::BitmapImage::draw):
2244 2009-02-27 Adam Treat <adam.treat@torchmobile.com>
2246 Reviewed by Eric Seidel and Simon Fraser.
2248 https://bugs.webkit.org/show_bug.cgi?id=24227
2249 Ensure that the checkForSolidColor() optimization is correctly triggered
2250 for all cases of drawPattern. Currently, the optimization was not triggered
2251 when the check had not been previously performed via a request for the
2252 image's NativeImagePtr.
2254 Implement the Qt version of the checkForSolidColor() method. Combined with
2255 the bug fix this reduces the time it takes to draw a repeating background
2256 of a 1x1 image from ~50msecs to ~0msecs on my machine.
2258 * platform/graphics/BitmapImage.cpp:
2259 (WebCore::BitmapImage::BitmapImage):
2260 * platform/graphics/BitmapImage.h:
2261 (WebCore::BitmapImage::mayFillWithSolidColor):
2262 * platform/graphics/Image.h:
2263 (WebCore::Image::mayFillWithSolidColor):
2264 * platform/graphics/cairo/ImageCairo.cpp:
2265 (WebCore::BitmapImage::BitmapImage):
2266 * platform/graphics/cg/ImageCG.cpp:
2267 (WebCore::BitmapImage::BitmapImage):
2268 (WebCore::BitmapImage::checkForSolidColor):
2269 * platform/graphics/qt/ImageQt.cpp:
2270 (WebCore::BitmapImage::checkForSolidColor):
2271 * platform/graphics/skia/ImageSkia.cpp:
2272 (WebCore::BitmapImage::checkForSolidColor):
2273 * platform/graphics/wx/ImageWx.cpp:
2274 (WebCore::BitmapImage::checkForSolidColor):
2276 2009-02-27 Dirk Schulze <krit@webkit.org>
2278 Reviewed by Zack Rusin.
2280 Added support for gradients and pattern on Fonts for Qt.
2282 [Qt] gradients and patterns for FontQt
2283 https://bugs.webkit.org/show_bug.cgi?id=24243
2285 * platform/graphics/qt/FontQt.cpp:
2286 (WebCore::Font::drawComplexText):
2288 2009-02-27 Jian Li <jianli@chromium.org>
2290 Reviewed by Alexey Proskuryakov.
2292 WorkerContextProxy::create in WorkerMessagingProxy.cpp should only be provided for non-Chromium platform.
2293 https://bugs.webkit.org/show_bug.cgi?id=24113
2295 * workers/WorkerMessagingProxy.cpp:
2297 2009-02-27 Yael Aharon <yael.aharon@nokia.com>
2299 Added a refresh button to storage views.
2301 https://bugs.webkit.org/show_bug.cgi?id=24040
2303 Reviewed by Timothy Hatcher.
2305 * inspector/front-end/DOMStorageItemsView.js:
2306 (WebInspector.DOMStorageItemsView):
2307 (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
2308 (WebInspector.DOMStorageItemsView.prototype.update):
2309 (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
2310 * inspector/front-end/DatabaseTableView.js:
2311 (WebInspector.DatabaseTableView):
2312 (WebInspector.DatabaseTableView.prototype.get statusBarItems):
2313 (WebInspector.DatabaseTableView.prototype._refreshButtonClicked):
2314 * inspector/front-end/DatabasesPanel.js:
2315 (WebInspector.DatabasesPanel):
2316 (WebInspector.DatabasesPanel.prototype.get statusBarItems):
2317 (WebInspector.DatabasesPanel.prototype.reset):
2318 (WebInspector.DatabasesPanel.prototype.showDatabase):
2319 (WebInspector.DatabasesPanel.prototype.showDOMStorage):
2320 (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
2321 * inspector/front-end/inspector.css:
2323 2009-02-27 Yael Aharon <yael.aharon@nokia.com>
2325 Added support for editing/deleting localStorage and sessionStorage items
2326 directly from Web Inspector.
2328 https://bugs.webkit.org/show_bug.cgi?id=23866.
2330 Reviewed by Timothy Hatcher.
2332 * WebCore.vcproj/WebCore.vcproj:
2333 * inspector/front-end/DOMStorageDataGrid.js: Added.
2334 (WebInspector.DOMStorageDataGrid):
2335 (WebInspector.DOMStorageDataGrid.prototype._ondblclick):
2336 (WebInspector.DOMStorageDataGrid.prototype._startEditing):
2337 (WebInspector.DOMStorageDataGrid.prototype._editingCommitted):
2338 (WebInspector.DOMStorageDataGrid.prototype._editingCancelled):
2339 (WebInspector.DOMStorageDataGrid.prototype.deleteSelectedRow):
2340 * inspector/front-end/DOMStorageItemsView.js:
2341 (WebInspector.DOMStorageItemsView):
2342 (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
2343 (WebInspector.DOMStorageItemsView.prototype.hide):
2344 (WebInspector.DOMStorageItemsView.prototype.update):
2345 (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
2346 * inspector/front-end/DatabasesPanel.js:
2347 (WebInspector.DatabasesPanel):
2348 (WebInspector.DatabasesPanel.prototype.get statusBarItems):
2349 (WebInspector.DatabasesPanel.prototype.reset):
2350 (WebInspector.DatabasesPanel.prototype.showDOMStorage):
2351 (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
2352 (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
2353 * inspector/front-end/WebKit.qrc:
2354 * inspector/front-end/inspector.css:
2355 * inspector/front-end/inspector.html:
2357 2009-02-26 Brett Wilson <brettw@chromium.org>
2359 Fix Windows transparency for the Chromium port. Implement a helper
2360 class for handling transparency on Windows. It allows semitransparent
2361 ClearType and semitransparent form controls by making new layers in the
2364 It also replaces the "ThemeHelper" which allows better
2365 scaling and transforms on Windows form controls. In addition to the
2366 functionality that the ThemeHelper did, but additionally handles the
2367 antialiasing properly so that the form controls aren't composited on a
2370 https://bugs.webkit.org/show_bug.cgi?id=24101
2372 Reviewed by Eric Seidel.
2374 * platform/graphics/chromium/FontChromiumWin.cpp:
2376 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
2377 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
2378 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
2379 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::drawGlyphs):
2380 (WebCore::Font::drawGlyphs):
2381 * platform/graphics/chromium/ThemeHelperChromiumWin.cpp:
2382 * platform/graphics/chromium/ThemeHelperChromiumWin.h:
2383 * platform/graphics/chromium/TransparencyWin.cpp: Added.
2385 (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
2386 (WebCore::TransparencyWin::OwnedBuffers::destBitmap):
2387 (WebCore::TransparencyWin::OwnedBuffers::referenceBitmap):
2388 (WebCore::TransparencyWin::OwnedBuffers::canHandleSize):
2389 (WebCore::TransparencyWin::TransparencyWin):
2390 (WebCore::TransparencyWin::~TransparencyWin):
2391 (WebCore::TransparencyWin::init):
2392 (WebCore::TransparencyWin::computeLayerSize):
2393 (WebCore::TransparencyWin::setupLayer):
2394 (WebCore::TransparencyWin::setupLayerForNoLayer):
2395 (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer):
2396 (WebCore::TransparencyWin::setupLayerForTextComposite):
2397 (WebCore::TransparencyWin::setupLayerForWhiteLayer):
2398 (WebCore::TransparencyWin::setupTransform):
2399 (WebCore::TransparencyWin::setupTransformForKeepTransform):
2400 (WebCore::TransparencyWin::setupTransformForUntransform):
2401 (WebCore::TransparencyWin::setupTransformForScaleTransform):
2402 (WebCore::TransparencyWin::setTextCompositeColor):
2403 (WebCore::TransparencyWin::initializeNewContext):
2404 (WebCore::TransparencyWin::compositeOpaqueComposite):
2405 (WebCore::TransparencyWin::compositeTextComposite):
2406 (WebCore::TransparencyWin::makeLayerOpaque):
2407 * platform/graphics/chromium/TransparencyWin.h: Added.
2408 (WebCore::TransparencyWin::):
2409 (WebCore::TransparencyWin::context):
2410 (WebCore::TransparencyWin::platformContext):
2411 (WebCore::TransparencyWin::drawRect):
2412 * platform/graphics/skia/GraphicsContextSkia.cpp:
2413 (WebCore::GraphicsContext::endTransparencyLayer):
2414 * platform/graphics/skia/ImageSkia.cpp:
2415 (WebCore::paintSkBitmap):
2416 * rendering/RenderThemeChromiumWin.cpp:
2418 (WebCore::RenderThemeChromiumWin::paintButton):
2419 (WebCore::RenderThemeChromiumWin::paintMenuList):
2420 (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
2422 2009-02-27 Dimitri Glazkov <dglazkov@chromium.org>
2424 Reviewed by Eric Seidel.
2426 https://bugs.webkit.org/show_bug.cgi?id=24211
2427 Add ScheduledAction for V8.
2429 * bindings/v8/ScheduledAction.cpp: Added.
2430 (WebCore::ScheduledAction::ScheduledAction):
2431 (WebCore::ScheduledAction::~ScheduledAction):
2432 (WebCore::ScheduledAction::execute):
2433 * bindings/v8/ScheduledAction.h: Added.
2434 (WebCore::ScheduledAction::ScheduledAction):
2436 2009-02-27 Zack Rusin <zack@kde.org>
2438 Reviewed by Nikolas Zimmermann.
2440 Qt: be more reasonable about scrolled lines
2442 cMouseWheelPixelsPerLineStep is currently a constant set to 13.3. it doesn't
2443 match our metrics meaning that Qt scrolls by ~2 lines by default which is quite
2444 irritating. so lets scroll vertically by the Qt set number of lines * Qt default
2447 * platform/qt/WheelEventQt.cpp:
2449 2009-02-27 Xan Lopez <xan@gnome.org>
2451 Rubber-stamped by Alexey Proskuryakov.
2453 https://bugs.webkit.org/show_bug.cgi?id=24222
2454 [GTK] Remove checks for old glib versions
2456 libsoup, which is a hard dependency, needs at least glib 2.15.3,
2457 so remove all glib checks for versions older than that.
2459 * platform/gtk/ContextMenuGtk.cpp:
2460 (WebCore::ContextMenu::ContextMenu):
2461 * platform/gtk/ContextMenuItemGtk.cpp:
2462 (WebCore::ContextMenuItem::setSubMenu):
2463 * platform/gtk/PopupMenuGtk.cpp:
2464 (WebCore::PopupMenu::show):
2465 * platform/gtk/WidgetGtk.cpp:
2466 (WebCore::Widget::retainPlatformWidget):
2467 * platform/network/soup/ResourceHandleSoup.cpp:
2469 2009-02-26 Dirk Schulze <krit@webkit.org>
2471 Reviewed by Oliver Hunt.
2473 Added support for Gradients and Patterns on filled or stroked Fonts
2474 in Cairo. I also added support for globalAlpha on FontCairo.
2476 [CAIRO] SVG/Canvas fonts miss gradients/pattern support
2477 https://bugs.webkit.org/show_bug.cgi?id=18617
2479 * html/CanvasRenderingContext2D.cpp:
2480 (WebCore::CanvasRenderingContext2D::drawTextInternal):
2481 * platform/graphics/cairo/FontCairo.cpp:
2482 (WebCore::Font::drawGlyphs):
2484 2009-02-26 Stephen White <senorblanco@chromium.org>
2486 Reviewed by Eric Seidel.
2488 https://bugs.webkit.org/show_bug.cgi?id=23957
2490 Fix for SVG gradient and pattern text for Chromium/skia.
2491 Added accessors for the fill and stroke gradients to
2492 GraphicsContext. Changed the paintSkiaText function to take a
2493 GraphicsContext, so we can check for gradients/patterns.
2494 Changed the skiaDrawText function to set the SkPaint shader
2495 correctly, and to scale up the gradient shader matrix to
2496 encompass the entire text string. Also offset each glyph
2497 separately, rather than transforming the canvas, so that the
2498 gradient/pattern stays fixed relative to the text origin.
2500 * platform/graphics/GraphicsContext.cpp:
2501 (WebCore::GraphicsContext::getFillGradient):
2502 (WebCore::GraphicsContext::getStrokeGradient):
2503 (WebCore::GraphicsContext::getFillPattern):
2504 (WebCore::GraphicsContext::getStrokePattern):
2505 * platform/graphics/GraphicsContext.h:
2506 * platform/graphics/chromium/FontChromiumWin.cpp:
2507 (WebCore::Font::drawGlyphs):
2508 * platform/graphics/chromium/UniscribeHelper.cpp:
2509 (WebCore::UniscribeHelper::draw):
2510 * platform/graphics/skia/SkiaFontWin.cpp:
2511 (WebCore::windowsCanHandleTextDrawing):
2512 (WebCore::skiaDrawText):
2513 (WebCore::paintSkiaText):
2514 * platform/graphics/skia/SkiaFontWin.h:
2516 2009-02-26 Dimitri Glazkov <dglazkov@chromium.org>
2518 Reviewed by Eric Seidel.
2520 https://bugs.webkit.org/show_bug.cgi?id=24208
2521 Add custom V8 bindings for Navigator, Clipboard, Document, and Node.
2523 * bindings/v8/custom/V8ClipboardCustom.cpp: Added.
2524 (WebCore::ACCESSOR_GETTER):
2525 (WebCore::CALLBACK_FUNC_DECL):
2526 * bindings/v8/custom/V8DocumentCustom.cpp: Added.
2527 (WebCore::CALLBACK_FUNC_DECL):
2528 * bindings/v8/custom/V8NavigatorCustom.cpp: Added.
2529 (WebCore::ACCESSOR_GETTER):
2530 * bindings/v8/custom/V8NodeCustom.cpp: Added.
2531 (WebCore::CALLBACK_FUNC_DECL):
2533 2009-02-26 Gustavo Noronha Silva <gns@gnome.org>
2535 Unreviewed build fix for building with GNOME Keyring enabled.
2537 * platform/network/soup/webkit-soup-auth-dialog.c:
2540 2009-02-26 Xan Lopez <xan@gnome.org>
2542 Reviewed by Holger Freyther.
2544 https://bugs.webkit.org/show_bug.cgi?id=16947
2545 [GTK] Missing HTTP Auth challenge
2547 Add HTTP authentication dialog with optional GNOME Keyring
2551 * platform/network/ResourceHandleInternal.h:
2552 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2553 * platform/network/soup/ResourceHandleSoup.cpp:
2554 (WebCore::currentToplevelCallback):
2555 (WebCore::ResourceHandle::startHttp):
2556 (WebCore::ResourceHandle::start):
2557 * platform/network/soup/webkit-soup-auth-dialog.c: Added.
2558 (webkit_soup_auth_dialog_class_init):
2559 (webkit_soup_auth_dialog_init):
2560 (webkit_soup_auth_dialog_session_feature_init):
2562 (set_password_callback):
2563 (response_callback):
2565 (find_password_callback):
2566 (session_authenticate):
2568 * platform/network/soup/webkit-soup-auth-dialog.h: Added.
2570 2009-02-25 Ojan Vafai <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
2572 Reviewed by Dave Hyatt.
2574 After Ojan's positionForCoordinates fix http://trac.webkit.org/changeset/41191
2575 svg/custom/pointer-events-image.svg and svg/custom/pointer-events-text.svg
2576 started failing because Ojan's new code was now *correctly* calling through to
2577 SVG asking for the closest text offset in the last line box, instead of
2578 just returning the offset at the end of the last line box when clicking below a box.
2580 But! The SVG code was wrong, in that it returned the character offset of the last
2581 character when you asked for a character offset after the end of the box, instead
2582 it should return the offset *after* the last character. This patch fixes
2583 that behavior by reordering the last two clauses in svgCharacterHitsPosition.
2585 The SVG positionForCoordinates function is still wrong, and I've added some FIXMEs
2586 to document what's wrong. I've also cleaned up the code a bit so it's clearer
2587 what it is doing (which also makes more obvious what's wrong with it).
2589 * rendering/RenderSVGInlineText.cpp:
2590 (WebCore::RenderSVGInlineText::positionForCoordinates):
2591 * rendering/SVGInlineTextBox.cpp:
2592 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::SVGInlineTextBoxClosestCharacterToPositionWalker):
2593 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
2594 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::offsetOfHitCharacter):
2595 (WebCore::SVGInlineTextBox::closestCharacterToPosition):
2596 (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
2598 2009-02-26 Darin Fisher <darin@chromium.org>
2600 Reviewed by Eric Seidel.
2602 Minor cleanup of ChromiumBridge:
2603 Removing unused matchesMIMEType method and s/Javascript/JavaScript/
2605 * platform/chromium/ChromiumBridge.h:
2606 * platform/chromium/MimeTypeRegistryChromium.cpp:
2607 (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
2608 (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
2609 (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
2611 2009-02-26 David Hyatt <hyatt@apple.com>
2613 Reviewed by Sam Weinig
2615 Fix text-bottom vertical alignment. It was incorrectly aligning the bottom of the descent instead of including
2616 the line-height below the descent.
2618 Added fast/inline/vertical-align-text-bottom.html
2620 * rendering/RenderBoxModelObject.cpp:
2621 (WebCore::RenderBoxModelObject::verticalPosition):
2623 2009-02-26 Dirk Schulze <krit@webkit.org>
2625 Reviewed by Eric Seidel.
2627 Make SVG Masking platform independet with the use of ImageBuffer::getImageData(),
2628 ImageBuffer::putImageData() and GraphicsContext::clipToImageBuffer(). Every platform has
2629 just to implement this three methods to support SVG Masking now.
2631 Make SVG Masking platform aware
2632 https://bugs.webkit.org/show_bug.cgi?id=19243
2636 * WebCore.vcproj/WebCore.vcproj:
2637 * WebCore.xcodeproj/project.pbxproj:
2638 * svg/graphics/SVGResourceMasker.cpp:
2639 (WebCore::SVGResourceMasker::applyMask):
2640 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp: Removed.
2641 * svg/graphics/cg/SVGResourceMaskerCg.cpp: Removed.
2642 * svg/graphics/cg/SVGResourceMaskerCg.mm: Removed.
2643 * svg/graphics/qt/SVGResourceMaskerQt.cpp: Removed.
2644 * svg/graphics/skia/SVGResourceMaskerSkia.cpp: Removed.
2646 2009-02-26 Yong Li <yong.li@torchmobile.com>
2648 Reviewed by Darin Adler, Antti Koivisto and Alexey Proskuryakov.
2650 Test: http/tests/misc/slow-preload-cancel.html
2652 https://bugs.webkit.org/show_bug.cgi?id=24133
2653 Clear all pending preloads in the DocLoader object when we decide to
2654 cancel its all requests.
2656 * loader/DocLoader.cpp:
2657 (WebCore::DocLoader::clearPendingPreloads):
2658 * loader/DocLoader.h:
2659 * loader/loader.cpp:
2660 (WebCore::Loader::cancelRequests):
2662 2009-02-26 Dimitri Glazkov <dglazkov@chromium.org>
2664 Reviewed by Eric Seidel.
2666 https://bugs.webkit.org/show_bug.cgi?id=24182
2667 Add NodeFilter, NodeIterator, and TreeWalker custom V8 bindings.
2669 * bindings/v8/custom/V8NodeFilterCustom.cpp: Added.
2670 (WebCore::CALLBACK_FUNC_DECL):
2671 * bindings/v8/custom/V8NodeIteratorCustom.cpp: Added.
2673 (WebCore::CALLBACK_FUNC_DECL):
2674 * bindings/v8/custom/V8TreeWalkerCustom.cpp: Added.
2676 (WebCore::CALLBACK_FUNC_DECL):
2678 2009-02-26 Alexey Proskuryakov <ap@webkit.org>
2680 Reviewed by Darin Adler.
2682 https://bugs.webkit.org/show_bug.cgi?id=23500
2683 KURL::parse() incorrectly compares its result to original string
2685 * platform/KURL.cpp: (WebCore::KURL::parse): Take string length into account.
2687 2009-02-26 Ojan Vafai <ojan@chromium.org>
2689 Reviewed by Kevin McCullough.
2691 Manual test for inspector node highlighting.
2693 * manual-tests/inspector/highlight-nodes.html: Added.
2695 2009-02-16 Anantanarayanan Iyengar <ananta@chromium.org>
2697 Reviewed by Darin Fisher.
2699 https://bugs.webkit.org/show_bug.cgi?id=23973
2700 ScrollView::scrollContents can be invoked during view shutdown. In
2701 this scenario the FrameView::hostWindow method can return NULL, which
2702 indicates that the frame/page is being destroyed. This causes a crash
2703 when we try to dereference a NULL hostWindow pointer. Fix is to add a
2704 NULL check for this.
2706 * platform/ScrollView.cpp:
2707 (WebCore::ScrollView::scrollContents):
2709 2009-02-26 Rahul Kuchhal <kuchhal@chromium.org>
2711 Reviewed by Dave Hyatt.
2713 https://bugs.webkit.org/show_bug.cgi?id=24003
2714 Fix a crash caused by unsafe type conversion.
2716 Test: fast/block/positioning/absolute-in-inline-rtl-4.html
2718 * rendering/RenderBox.cpp:
2719 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
2721 2009-02-26 Ojan Vafai <ojan@chromium.org>
2723 Reviewed by Adam Roben.
2725 https://bugs.webkit.org/show_bug.cgi?id=24202
2726 Have drawNodeHighlight clip instead of clearing. This makes it work for
2727 both Safari and Chromium since Chromium draws the inspector highlighting
2728 in the same buffer as the page.
2730 * inspector/InspectorController.cpp:
2731 (WebCore::quadToPath):
2732 (WebCore::drawOutlinedQuad):
2733 (WebCore::drawOutlinedQuadWithClip):
2734 (WebCore::drawHighlightForBox):
2736 2009-02-26 David Hyatt <hyatt@apple.com>
2738 Reviewed by Dan Bernstein & Darin Adler
2740 Make sure the border/padding are properly omitted at the start of an inline that is a continuation.
2742 Added fast/inline/inline-continuation-borders.html
2744 * rendering/InlineFlowBox.cpp:
2745 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
2747 2009-02-26 Simon Fraser <simon.fraser@apple.com>
2749 Build fix, no review.
2751 Try to fix the wx build after r41218.
2753 * WebCoreSources.bkl:
2755 2009-02-26 Alexey Proskuryakov <ap@webkit.org>
2757 Reviewed by Darin Adler.
2759 https://bugs.webkit.org/show_bug.cgi?id=19527
2760 ASSERTION FAILED: containerA && containerB
2762 Test: fast/dom/Range/bug-19527.html
2765 (WebCore::Range::isPointInRange):
2766 (WebCore::Range::comparePoint):
2767 Bring the behavior in line with current Firefox, making it impossible for these methods
2768 to pass a null container to compareBoundaryPoints().
2770 2009-02-26 Jonathon Jongsma <jonathon@quotidian.org>
2772 Reviewed by Holger Freyther.
2774 https://bugs.webkit.org/show_bug.cgi?id=20358
2776 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
2777 (WebCore::SimpleFontData::smallCapsFontData): the small-caps font data
2778 should set the computed size rather than the specified size, otherwise
2779 the caps just get rendered normal size.
2781 2009-02-26 Benjamin Meyer <benjamin.meyer@torchmobile.com>
2783 Reviewed by George Staikos.
2785 https://bugs.webkit.org/show_bug.cgi?id=24062
2786 QNetworkCookieJar expects the url and not the policy url. Sending the
2787 policy url will cause QNetworkCookieJar to behave incorrectly. One
2788 example would be a cookie that does not have a path or domain.
2789 QNetworkCookieJar will use the url it is given to fill in default values.
2790 This allows setting cookies on the url of the main frame from an iFrame
2791 when the cookie should be set on the url of the iFrame.
2793 Originally noticed on http://writer.zoho.com/jsp/home.jsp?serviceurl=/index.do
2795 * platform/qt/CookieJarQt.cpp:
2796 (WebCore::setCookies):
2798 2009-02-26 Charles Wei <charles.wei@torchmobile.com.cn>
2800 Reviewed by George Staikos.
2802 make WebKit/Qt compile with SVG disabled
2805 * platform/graphics/qt/FontPlatformDataQt.cpp:
2807 2009-02-25 Gustavo Noronha Silva <gns@gnome.org>
2809 Unreviewed build fix. Add WebCore/workers to the list of paths
2810 searched by the bindings generator perl script.
2814 2009-02-25 Sam Weinig <sam@webkit.org>
2816 Reviewed by Geoffrey Garen.
2818 Add canvas to the list of RenderObjects that can mark a page as
2821 * rendering/RenderHTMLCanvas.cpp:
2822 (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
2824 2009-02-25 Eric Carlson <eric.carlson@apple.com>
2826 Reviewed by Dave Hyatt.
2828 * rendering/RenderBox.cpp:
2829 (WebCore::RenderBox::nodeAtPoint): Remove assertion fired when child has layer
2830 as RenderMedia with controls always has a layer.
2832 2009-02-25 Dan Bernstein <mitz@apple.com>
2834 Reviewed by Simon Fraser.
2836 - fix https://bugs.webkit.org/show_bug.cgi?id=24130
2837 <rdar://problem/6618196> Paint very slow when horizontally resizing
2839 Test: fast/gradients/background-clipped.html
2841 * rendering/RenderBoxModelObject.cpp:
2842 (WebCore::RenderBoxModelObject::paintFillLayerExtended): Intersect the
2843 destination rectangle passed to drawTiledImage() with the dirty
2844 rectangle. This makes it more likely for the destination rect to be
2845 contained in a single tile rect, which results in a faster code path
2846 being taken down the road (just drawing a single tile instead of
2849 2009-02-25 Ojan Vafai <ojan@chromium.org>
2851 Reviewed by Eric Seidel.
2853 Fix test regressions from positionForCoordinates patch.
2854 https://bugs.webkit.org/show_bug.cgi?id=24148
2856 * rendering/RenderBlock.cpp:
2857 (WebCore::positionForPointWithInlineChildren):
2858 Remove ASSERT that placeholder text codepath is hitting.
2860 2009-02-25 Chris Fleizach <cfleizach@apple.com>
2862 Reviewed by Beth Dakin.
2864 Bug 24143: Crash occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility() when applying a link in GMail
2865 https://bugs.webkit.org/show_bug.cgi?id=24143
2867 When an AX object is marked dirty, do not create AX elements while going up the parent chain.
2868 Do not allow AXRenderObjects to remove their own IDs from the cache, all the cache to do that work
2869 Make sure the AXObjectWrapper's have an object before calling them
2870 In AXObjectCache, change get -> getOrCreate. Use get() to only retrieve an element if it exists
2872 Test: platform/mac-snowleopard/accessibility/table-updating.html
2875 * page/AXObjectCache.cpp:
2876 (WebCore::AXObjectCache::~AXObjectCache):
2877 (WebCore::AXObjectCache::get):
2878 (WebCore::AXObjectCache::getOrCreate):
2879 (WebCore::AXObjectCache::removeAXID):
2880 (WebCore::AXObjectCache::handleActiveDescendantChanged):
2881 (WebCore::AXObjectCache::handleAriaRoleChanged):
2882 * page/AXObjectCache.h:
2883 * page/AccessibilityImageMapLink.cpp:
2884 (WebCore::AccessibilityImageMapLink::parentObject):
2885 * page/AccessibilityListBox.cpp:
2886 (WebCore::AccessibilityListBox::listBoxOptionAccessibilityObject):
2887 (WebCore::AccessibilityListBox::doAccessibilityHitTest):
2888 * page/AccessibilityListBoxOption.cpp:
2889 (WebCore::AccessibilityListBoxOption::elementRect):
2890 (WebCore::AccessibilityListBoxOption::parentObject):
2891 * page/AccessibilityObject.cpp:
2892 (WebCore::AccessibilityObject::detach):
2893 (WebCore::AccessibilityObject::parentObjectIfExists):
2894 (WebCore::replacedNodeNeedsCharacter):
2895 (WebCore::AccessibilityObject::accessibilityObjectForPosition):
2896 * page/AccessibilityObject.h:
2897 * page/AccessibilityRenderObject.cpp:
2898 (WebCore::AccessibilityRenderObject::firstChild):
2899 (WebCore::AccessibilityRenderObject::lastChild):
2900 (WebCore::AccessibilityRenderObject::previousSibling):
2901 (WebCore::AccessibilityRenderObject::nextSibling):
2902 (WebCore::AccessibilityRenderObject::parentObjectIfExists):
2903 (WebCore::AccessibilityRenderObject::parentObject):
2904 (WebCore::AccessibilityRenderObject::isAttachment):
2905 (WebCore::AccessibilityRenderObject::headingLevel):
2906 (WebCore::AccessibilityRenderObject::anchorElement):
2907 (WebCore::AccessibilityRenderObject::menuForMenuButton):
2908 (WebCore::AccessibilityRenderObject::menuButtonForMenu):
2909 (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
2910 (WebCore::AccessibilityRenderObject::internalLinkElement):
2911 (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
2912 (WebCore::AccessibilityRenderObject::titleUIElement):
2913 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2914 (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
2915 (WebCore::AccessibilityRenderObject::getDocumentLinks):
2916 (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
2917 (WebCore::AccessibilityRenderObject::focusedUIElement):
2918 (WebCore::AccessibilityRenderObject::activeDescendant):
2919 (WebCore::AccessibilityRenderObject::observableObject):
2920 (WebCore::AccessibilityRenderObject::childrenChanged):
2921 (WebCore::AccessibilityRenderObject::addChildren):
2922 * page/AccessibilityRenderObject.h:
2923 (WebCore::AccessibilityRenderObject::setRenderObject):
2924 * page/AccessibilityTable.cpp:
2925 (WebCore::AccessibilityTable::addChildren):
2926 (WebCore::AccessibilityTable::headerContainer):
2927 (WebCore::AccessibilityTable::cellForColumnAndRow):
2928 * page/AccessibilityTableCell.cpp:
2929 (WebCore::AccessibilityTableCell::isTableCell):
2930 (WebCore::AccessibilityTableCell::titleUIElement):
2931 * page/AccessibilityTableColumn.cpp:
2932 (WebCore::AccessibilityTableColumn::headerObjectForSection):
2933 * page/AccessibilityTableRow.cpp:
2934 (WebCore::AccessibilityTableRow::isTableRow):
2935 * page/gtk/AccessibilityObjectWrapperAtk.cpp:
2936 * page/mac/AXObjectCacheMac.mm:
2937 (WebCore::AXObjectCache::postNotification):
2938 (WebCore::AXObjectCache::postNotificationToElement):
2939 * page/mac/AccessibilityObjectWrapper.mm:
2940 (textMarkerForVisiblePosition):
2941 (AXLinkElementForNode):
2942 (nsStringForReplacedNode):
2943 (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
2944 (-[AccessibilityObjectWrapper accessibilityActionNames]):
2945 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2946 (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
2947 (-[AccessibilityObjectWrapper accessibilityHitTest:]):
2948 (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
2949 (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
2950 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
2951 (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
2952 (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
2953 (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
2954 (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]):
2955 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
2956 (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
2957 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
2959 2009-02-25 Beth Dakin <bdakin@apple.com>
2961 Reviewed by Geoff Garen.
2963 Re-working of <rdar://problem/6487249> repro crash in
2964 WebCore::CSSParser::parseFillImage copying entire contents of this
2966 -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
2968 Fixes a bunch of layout test failures I caused!
2970 * css/CSSParser.cpp:
2971 (WebCore::CSSParser::parseValue):
2972 (WebCore::CSSParser::parseContent):
2973 (WebCore::CSSParser::parseFillImage):
2974 (WebCore::CSSParser::parseFontFaceSrc):
2975 (WebCore::CSSParser::parseBorderImage):
2977 2009-02-25 Dimitri Glazkov <dglazkov@chromium.org>
2979 Reviewed by Eric Seidel.
2981 https://bugs.webkit.org/show_bug.cgi?id=24174
2982 Add more V8 custom bindings.
2984 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp: Added.
2985 (WebCore::hasCSSPropertyNamePrefix):
2986 (WebCore::cssPropertyName):
2987 (WebCore::NAMED_PROPERTY_GETTER):
2988 (WebCore::NAMED_PROPERTY_SETTER):
2989 * bindings/v8/custom/V8DOMStringListCustom.cpp: Added.
2990 (WebCore::INDEXED_PROPERTY_GETTER):
2991 (WebCore::CALLBACK_FUNC_DECL):
2992 * bindings/v8/custom/V8EventCustom.cpp: Added.
2993 (WebCore::ACCESSOR_SETTER):
2994 (WebCore::ACCESSOR_GETTER):
2995 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: Added.
2996 (WebCore::NAMED_PROPERTY_DELETER):
2997 (WebCore::NAMED_PROPERTY_SETTER):
2998 (WebCore::NAMED_PROPERTY_GETTER):
2999 * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp: Added.
3000 (WebCore::NAMED_PROPERTY_GETTER):
3001 * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Added.
3002 (WebCore::INDEXED_PROPERTY_GETTER):
3003 (WebCore::NAMED_PROPERTY_GETTER):
3004 * bindings/v8/custom/V8NodeListCustom.cpp: Added.
3005 (WebCore::NAMED_PROPERTY_GETTER):
3006 * bindings/v8/custom/V8StyleSheetListCustom.cpp: Added.
3007 (WebCore::NAMED_PROPERTY_GETTER):
3009 2009-02-25 Scott Violet <sky@google.com>
3011 Reviewed by Dave Hyatt.
3013 https://bugs.webkit.org/show_bug.cgi?id=24171
3014 Provides a RenderTheme method for getting the scroll bar size and
3015 changes RenderListBox to use it. RenderTheme returns a size of regular,
3016 and Mac's override to return small. Changes ScrollbarThemeChromium to
3017 use the scrollbarsize of the scrollbar when getting the size
3018 instead of passing in no-args.
3020 * platform/chromium/ScrollbarThemeChromium.cpp:
3021 (WebCore::ScrollbarThemeChromium::trackRect):
3022 (WebCore::ScrollbarThemeChromium::buttonSize):
3023 * rendering/RenderListBox.cpp:
3024 (WebCore::RenderListBox::createScrollbar):
3025 * rendering/RenderTheme.h:
3026 (WebCore::RenderTheme::scrollbarControlSizeForPart):
3027 * rendering/RenderThemeChromiumMac.h:
3028 (WebCore::RenderThemeChromiumMac::scrollbarControlSizeForPart):
3029 * rendering/RenderThemeMac.h:
3030 (WebCore::RenderThemeMac::scrollbarControlSizeForPart):
3032 2009-02-25 Beth Dakin <bdakin@apple.com>
3034 Reviewed by Darin Adler.
3036 Fix for <rdar://problem/6487249> repro crash in
3037 WebCore::CSSParser::parseFillImage copying entire contents of this
3039 -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
3041 * css/CSSParser.cpp:
3042 (WebCore::CSSParser::parseValue): Null-check m_styleSheet
3044 2009-02-25 Adam Treat <adam.treat@torchmobile.com>
3050 2009-02-25 Jan Michael Alonzo <jmalonzo@webkit.org>
3052 Gtk build fix. Not reviewed.
3054 Add files to the build per r41218.
3055 Rename WebkitPoint.h to WebKitPoint.h in DOMWindow.cpp
3058 * page/DOMWindow.cpp:
3060 2009-02-25 Zan Dobersek <zandobersek@gmail.com>
3062 Reviewed by Alexey Proskuryakov.
3064 https://bugs.webkit.org/show_bug.cgi?id=24043
3065 When faced with URLs with unsupported protocol on Gtk port,
3066 report the error through an idle function and return true, so
3067 a proper resource handle is created.
3069 * platform/network/soup/ResourceHandleSoup.cpp:
3070 (WebCore::reportUnknownProtocolError):
3071 (WebCore::ResourceHandle::start):
3073 2009-02-25 Steve Falkenburg <sfalken@apple.com>
3076 Use struct to forward declare ResourceRequest.
3078 * history/HistoryItem.h:
3079 * inspector/InspectorController.h:
3080 * loader/DocumentThreadableLoader.h:
3081 * loader/FrameLoaderClient.h:
3082 * loader/MainResourceLoader.h:
3083 * loader/SubresourceLoader.h:
3084 * loader/SubresourceLoaderClient.h:
3085 * loader/ThreadableLoader.h:
3086 * loader/WorkerThreadableLoader.h:
3087 * platform/CrossThreadCopier.h:
3088 * platform/network/ResourceHandle.h:
3089 * platform/network/ResourceHandleClient.h:
3090 * platform/network/ResourceRequestBase.h:
3091 * platform/network/cf/ResourceRequestCFNet.h:
3092 * xml/XMLHttpRequest.h:
3094 2009-02-25 Steve Falkenburg <sfalken@apple.com>
3096 Partial Windows build fix.
3098 * DerivedSources.cpp:
3099 * WebCore.vcproj/WebCore.vcproj:
3101 2009-02-25 Dirk Schulze <krit@webkit.org>
3103 Reviewed by Oliver Hunt.
3105 Ported arcTo to Qt. Qt has no native support for arcTo. This changes
3106 calculate the behavior of arcTo and draws it with lineTo and arc.
3108 [QT] implement Canvas arcTo
3109 https://bugs.webkit.org/show_bug.cgi?id=23873
3111 * platform/graphics/qt/PathQt.cpp:
3112 (WebCore::Path::addArcTo):
3114 2009-02-25 Simon Fraser <simon.fraser@apple.com>
3116 Reviewed by Dan Bernstein
3118 Remove idl files from Resources, and sort.
3120 * WebCore.xcodeproj/project.pbxproj:
3122 2009-02-25 Chris Marrin <cmarrin@apple.com>
3124 Reviewed by Simon Fraser.
3126 https://bugs.webkit.org/show_bug.cgi?id=23943
3128 Added webkitConvertPointFromNodeToPage and webkitConvertPointFromPageToNode on
3129 the window object. Also added WebKitPoint object, which is passed in and out
3132 Test: fast/dom/Window/webkitConvertPoint.html
3134 * DerivedSources.make:
3136 * WebCore.vcproj/WebCore.vcproj:
3137 * WebCore.xcodeproj/project.pbxproj:
3138 * WebCoreSources.bkl:
3139 * bindings/js/JSDOMWindowBase.cpp:
3140 (jsDOMWindowBaseWebKitPoint):
3141 (setJSDOMWindowBaseWebKitPoint):
3142 * bindings/js/JSWebKitPointConstructor.cpp: Added.
3144 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
3145 (WebCore::constructWebKitPoint):
3146 (WebCore::JSWebKitPointConstructor::getConstructData):
3147 * bindings/js/JSWebKitPointConstructor.h: Added.
3148 (WebCore::JSWebKitPointConstructor::classInfo):
3150 (WebCore::Node::convertToPage):
3151 (WebCore::Node::convertFromPage):
3153 * page/DOMWindow.cpp:
3154 (WebCore::DOMWindow::webkitConvertPointFromNodeToPage):
3155 (WebCore::DOMWindow::webkitConvertPointFromPageToNode):
3157 * page/DOMWindow.idl:
3158 * page/WebKitPoint.h: Added.
3159 (WebCore::WebKitPoint::create):
3160 (WebCore::WebKitPoint::x):
3161 (WebCore::WebKitPoint::y):
3162 (WebCore::WebKitPoint::setX):
3163 (WebCore::WebKitPoint::setY):
3164 (WebCore::WebKitPoint::WebKitPoint):
3165 * page/WebKitPoint.idl: Added.
3167 2009-02-25 Jian Li <jianli@chromium.org>
3169 Reviewed by Alexey Proskuryakov.
3171 Remove "#if ENABLE(WORKERS)" wrap from CrossThreadCopier files.
3172 https://bugs.webkit.org/show_bug.cgi?id=24145
3174 * platform/CrossThreadCopier.cpp:
3175 * platform/CrossThreadCopier.h:
3177 2009-02-25 David Levin <levin@chromium.org>
3179 Reviewed by Alexey Proskuryakov.
3181 Bug 23688: ThreadableLoader needs a sync implementation for Workers.
3182 <https://bugs.webkit.org/show_bug.cgi?id=23688>
3184 No observable change in behavior, so no test.
3186 * loader/ThreadableLoader.cpp:
3187 (WebCore::ThreadableLoader::loadResourceSynchronously):
3188 * loader/ThreadableLoaderClientWrapper.h:
3189 (WebCore::ThreadableLoaderClientWrapper::clearClient):
3190 (WebCore::ThreadableLoaderClientWrapper::done):
3191 (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
3192 (WebCore::ThreadableLoaderClientWrapper::didFail):
3193 (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
3194 (WebCore::ThreadableLoaderClientWrapper::ThreadableLoaderClientWrapper):
3195 Expose whether the loader is done (based on what callbacks were done).
3197 * loader/WorkerThreadableLoader.cpp:
3198 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
3199 (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
3200 Each loader is given its own mode so that only its callbacks get through the run loop.
3202 The xhr spec says that the readystatechange events are synchronous, so in the case of a
3203 nested sync xhr no readystatechange events should be fired for the outer xhr.
3205 (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
3207 * loader/WorkerThreadableLoader.h:
3208 (WebCore::WorkerThreadableLoader::create):
3209 (WebCore::WorkerThreadableLoader::done):
3211 * workers/WorkerRunLoop.cpp:
3212 (WebCore::WorkerRunLoop::WorkerRunLoop):
3213 * workers/WorkerRunLoop.h:
3214 (WebCore::WorkerRunLoop::createUniqueId):
3215 Simple method to create a uniqueId on demand with respect to the run loop.
3217 * workers/WorkerThread.h:
3219 2009-02-25 David Levin <levin@chromium.org>
3221 Reviewed by Alexey Proskuryakov.
3223 Bug 24089: ThreadableLoader::loadResourceSynchronously should do callbacks like the async code.
3224 <https://bugs.webkit.org/show_bug.cgi?id=24089>
3226 Make threadable loader callbacks to happen during the sync load call.
3228 Changes the behavior of sync xhr for insecure redirects in two ways:
3229 + Sends an error event instead of an abort event (which is the same as async xhr's behavior).
3230 + Throws a network exception which is what other browsers do and what the spec
3231 says to do (http://www.w3.org/TR/XMLHttpRequest/).
3233 * loader/DocumentThreadableLoader.cpp:
3234 (WebCore::DocumentThreadableLoader::loadResourceSynchronously):
3235 * loader/DocumentThreadableLoader.h:
3236 * loader/ThreadableLoader.cpp:
3237 (WebCore::ThreadableLoader::loadResourceSynchronously):
3238 * loader/ThreadableLoader.h:
3239 * xml/XMLHttpRequest.cpp:
3240 (WebCore::XMLHttpRequest::XMLHttpRequest):
3241 (WebCore::XMLHttpRequest::loadRequestSynchronously):
3242 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
3243 (WebCore::XMLHttpRequest::didFail):
3244 (WebCore::XMLHttpRequest::didFailRedirectCheck):
3245 * xml/XMLHttpRequest.h:
3247 2009-02-24 Chris Marrin <cmarrin@apple.com>
3249 Reviewed by David Hyatt.
3251 https://bugs.webkit.org/show_bug.cgi?id=23368
3253 Added logic to correctly hit test accelerated layers.
3255 Tests: animations/animation-hit-test-transform.html
3256 animations/animation-hit-test.html
3257 transitions/transition-hit-test-transform.html
3258 transitions/transition-hit-test.html
3260 * page/animation/KeyframeAnimation.cpp:
3261 (WebCore::KeyframeAnimation::animate):
3262 * rendering/RenderLayer.cpp:
3263 (WebCore::RenderLayer::hitTestLayer):
3264 (WebCore::RenderLayer::updateClipRects):
3265 * rendering/RenderLayerBacking.cpp:
3266 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3268 2009-02-25 Alexey Proskuryakov <ap@webkit.org>
3270 Reviewed by Darin Adler.
3272 https://bugs.webkit.org/show_bug.cgi?id=24067
3273 REGRESSION: Crash in WebCore::Document::initSecurityContext
3275 The crash started to happen when we removed a check for frame->document() being null.
3276 However, the original document shouldn't be null here, because it is needed to alias
3277 security origins. So, this patch fixes the crash by correcting security origin behavior.
3279 Test: http/tests/security/aboutBlank/window-open-self-about-blank.html
3280 This tests for not crashing, and for inheriting the domain from the document being replaced.
3281 Preserving the aliasing cannot be tested for automatically, because we'd need a non-trivial
3282 domain to remove a prefix from.
3284 * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Create a new document before
3285 clearing the frame, so that Document::initSecurityContext() could access the old one.
3287 2009-02-25 Jay Campan <jcampan@google.com>
3289 Reviewed by Darin Fisher.
3291 https://bugs.webkit.org/show_bug.cgi?id=24066
3293 Items in drop-downs were not painted correctly. Makes sure the
3294 PopupListBox invalidates in the coordinates of the window as this is
3295 FramelessScrollView::invalidateRect paints to.
3297 * platform/chromium/PopupMenuChromium.cpp:
3298 (WebCore::PopupListBox::invalidateRow):
3300 2009-02-24 Simon Fraser <simon.fraser@apple.com>
3302 Reviewed by Anders Carlsson
3304 https://bugs.webkit.org/show_bug.cgi?id=15081
3306 Make display:none work for applet, emebed and object elements
3307 by calling rendererIsNeeded() on superclasses.
3309 Tests: fast/replaced/applet-display-none.html
3310 fast/replaced/embed-display-none.html
3311 fast/replaced/object-display-none.html
3313 * html/HTMLAppletElement.cpp:
3314 (WebCore::HTMLAppletElement::rendererIsNeeded):
3315 * html/HTMLElement.cpp:
3316 (WebCore::HTMLElement::rendererIsNeeded):
3317 * html/HTMLEmbedElement.cpp:
3318 (WebCore::HTMLEmbedElement::rendererIsNeeded):
3319 * html/HTMLObjectElement.cpp:
3320 (WebCore::HTMLObjectElement::rendererIsNeeded):
3322 2009-02-24 Simon Fraser <simon.fraser@apple.com>
3324 Reviewed by Dave Hyatt
3326 https://bugs.webkit.org/show_bug.cgi?id=24137
3328 Fix localToAbsolute() and absoluteToLocal() to map points through 3d transforms,
3329 taking perspective and transform-style: preserve-3d into account.
3331 In order to support transform-style: preserve-3d, which keeps elements in a
3332 3d space, we have to carry along an accumulated matrix in TransformState.
3333 We also need to apply the perspective from the parent, if any, with the
3340 * WebCore.vcproj/WebCore.vcproj:
3341 * WebCore.xcodeproj/project.pbxproj:
3342 * WebCoreSources.bkl:
3343 * css/CSSComputedStyleDeclaration.cpp:
3344 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3345 * platform/graphics/transforms/TransformationMatrix.cpp:
3346 (WebCore::TransformationMatrix::translate):
3347 (WebCore::TransformationMatrix::translate3d):
3348 (WebCore::TransformationMatrix::translateRight3d):
3349 * platform/graphics/transforms/TransformationMatrix.h:
3350 * rendering/RenderBox.cpp:
3351 (WebCore::RenderBox::mapLocalToAbsolutePoint):
3352 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
3353 * rendering/RenderBox.h:
3354 * rendering/RenderLayer.cpp:
3355 (WebCore::RenderLayer::updateTransform):
3356 (WebCore::RenderLayer::perspectiveTransform):
3357 (WebCore::RenderLayer::perspectiveOrigin):
3358 * rendering/RenderLayer.h:
3359 * rendering/RenderLayerBacking.cpp:
3360 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3361 * rendering/RenderLayerCompositor.cpp:
3362 (WebCore::requiresCompositingLayerForTransform):
3363 (WebCore::RenderLayerCompositor::layerHas3DContent):
3364 * rendering/RenderObject.cpp:
3365 (WebCore::RenderObject::localToAbsolute):
3366 (WebCore::RenderObject::absoluteToLocal):
3367 (WebCore::RenderObject::mapLocalToAbsolutePoint):
3368 (WebCore::RenderObject::mapAbsoluteToLocalPoint):
3369 * rendering/RenderObject.h:
3370 * rendering/RenderTableCell.cpp:
3371 (WebCore::RenderTableCell::mapLocalToAbsolutePoint):
3372 (WebCore::RenderTableCell::mapAbsoluteToLocalPoint):
3373 * rendering/RenderTableCell.h:
3374 * rendering/RenderView.cpp:
3375 (WebCore::RenderView::mapLocalToAbsolutePoint):
3376 (WebCore::RenderView::mapAbsoluteToLocalPoint):
3377 * rendering/RenderView.h:
3378 * rendering/TransformState.cpp: Added.
3379 (WebCore::TransformState::move):
3380 (WebCore::TransformState::applyTransform):
3381 (WebCore::TransformState::flatten):
3382 * rendering/TransformState.h: Added.
3383 (WebCore::TransformState::):
3384 (WebCore::TransformState::TransformState):
3385 (WebCore::TransformState::move):
3386 * rendering/style/RenderStyle.h:
3387 (WebCore::InheritedFlags::hasPerspective):
3389 2009-02-24 Sam Weinig <sam@webkit.org>
3391 Reviewed by David Hyatt.
3393 Fix for https://bugs.webkit.org/show_bug.cgi?id=23990
3394 Regression (r40837): JavaScript image popup doesn't work
3396 Make the getClientRects and getBoundingClientRect methods return rects
3397 relative to the viewport.
3399 Test: fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport.html
3402 (WebCore::Element::getClientRects):
3403 (WebCore::Element::getBoundingClientRect):
3405 2009-02-24 Ojan Vafai <ojan@chromium.org>
3407 Reviewed by Eric Seidel.
3409 SVG pages don't have a body or an html element!
3410 Don't return early if there is no body.
3412 * editing/VisiblePosition.cpp:
3413 (WebCore::VisiblePosition::canonicalPosition):
3415 2009-02-23 David Hyatt <hyatt@apple.com>
3417 Reviewed by Eric Seidel
3419 https://bugs.webkit.org/show_bug.cgi?id=23740, painting order wrong for normal flow elements with overflow: hidden
3421 This patch reworks the painting of overflow. There is now the concept of a "self-painting layer." All
3422 layers are considered to be self-painting except for overflow layers that are normal flow (and that don't have
3423 reflections or masks).
3425 If an overflow layer is not self-painting, then it ends up painted by its parent just like any other normal flow object.
3426 The only difference is that the clip has to be pushed and popped when painting the object's children.
3428 The lightweight clipping scheme used for controls has been extended to cover overflow now in this simplified case. With
3429 the code consolidated into reusable push/pop functions, all of the renderers that use overflow have been patched to
3430 use the new functions.
3432 Hit testing has also been patched to check the overflow clip rect first before recurring into children.
3434 Scrollbar paint has been moved into RenderBlock for now, since none of the table objects support scrollbars
3435 yet, and scrollbar hit testing was already there anyway. Now the two code paths are more symmetrical.
3437 Masks are now treated like normal flow layers (just like reflections).
3439 A couple of test cases have been added to fast/overflow to test the stacking order.
3441 * rendering/InlineFlowBox.cpp:
3442 (WebCore::InlineFlowBox::nodeAtPoint):
3443 (WebCore::InlineFlowBox::paint):
3444 * rendering/RenderBlock.cpp:
3445 (WebCore::RenderBlock::repaintOverhangingFloats):
3446 (WebCore::RenderBlock::paint):
3447 (WebCore::RenderBlock::paintChildren):
3448 (WebCore::RenderBlock::paintObject):
3449 (WebCore::RenderBlock::paintFloats):
3450 (WebCore::RenderBlock::insertFloatingObject):
3451 (WebCore::RenderBlock::floatRect):
3452 (WebCore::RenderBlock::lowestPosition):
3453 (WebCore::RenderBlock::rightmostPosition):
3454 (WebCore::RenderBlock::leftmostPosition):
3455 (WebCore::RenderBlock::addOverhangingFloats):
3456 (WebCore::RenderBlock::nodeAtPoint):
3457 (WebCore::RenderBlock::hitTestContents):
3458 * rendering/RenderBox.cpp:
3459 (WebCore::RenderBox::nodeAtPoint):
3460 (WebCore::RenderBox::pushContentsClip):
3461 (WebCore::RenderBox::popContentsClip):
3462 * rendering/RenderBox.h:
3463 (WebCore::RenderBox::paintObject):
3464 * rendering/RenderBoxModelObject.cpp:
3465 (WebCore::RenderBoxModelObject::hasSelfPaintingLayer):
3466 * rendering/RenderBoxModelObject.h:
3467 * rendering/RenderLayer.cpp:
3468 (WebCore::RenderLayer::paintLayer):
3469 (WebCore::RenderLayer::hitTestLayer):
3470 (WebCore::RenderLayer::shouldBeNormalFlowOnly):
3471 (WebCore::RenderLayer::isSelfPaintingLayer):
3472 * rendering/RenderLayer.h:
3473 * rendering/RenderTable.cpp:
3474 (WebCore::RenderTable::paint):
3475 (WebCore::RenderTable::paintObject):
3476 (WebCore::RenderTable::nodeAtPoint):
3477 * rendering/RenderTable.h:
3478 * rendering/RenderTableCell.cpp:
3479 (WebCore::RenderTableCell::paint):
3480 * rendering/RenderTableRow.cpp:
3481 (WebCore::RenderTableRow::nodeAtPoint):
3482 (WebCore::RenderTableRow::paint):
3483 * rendering/RenderTableRow.h:
3484 * rendering/RenderTableSection.cpp:
3485 (WebCore::RenderTableSection::paint):
3486 (WebCore::RenderTableSection::paintObject):
3487 (WebCore::RenderTableSection::nodeAtPoint):
3488 * rendering/RenderTableSection.h:
3489 * rendering/RenderTreeAsText.cpp:
3491 (WebCore::writeLayers):
3493 2009-02-24 David Levin <levin@chromium.org>
3495 Reviewed by NOBODY (build fix).
3497 Attempted build fix for wx-mac.
3499 * WebCoreSources.bkl:
3501 2009-02-24 David Levin <levin@chromium.org>
3503 Reviewed by NOBODY (build fix).
3505 Attempted build fixes for qt-linux and wx-mac.
3510 2009-02-24 Ojan Vafai <ojan@dhcp-172-31-134-214.sfo.corp.google.com>
3512 Reviewed by Sam Weinig.
3514 Fix null pointer error. If the node is the Document, then ownerDocument()
3515 returns null, document() does not.
3517 * editing/VisiblePosition.cpp:
3518 (WebCore::VisiblePosition::canonicalPosition):
3520 2009-02-24 Jian Li <jianli@chromium.org>
3522 Reviewed by NOBODY (attempted build fixes).
3524 Fix build break for Windows and Linux.
3527 * WebCore.vcproj/WebCore.vcproj:
3529 2009-02-24 Dimitri Glazkov <dglazkov@chromium.org>
3531 Reviewed by Eric Seidel.
3533 https://bugs.webkit.org/show_bug.cgi?id=24131
3534 Fix-up COM/RefCounted dichotomy in Chromium port.
3536 * page/chromium/AccessibilityObjectWrapper.h:
3537 (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Added
3538 explicit setting of recount.
3540 2009-02-24 Dimitri Glazkov <dglazkov@chromium.org>
3542 Reviewed by Eric Seidel.
3544 https://bugs.webkit.org/show_bug.cgi?id=24141
3545 Add clarity to V8 interceptor helper function.
3547 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
3548 (WebCore::NAMED_PROPERTY_GETTER): Renamed to notHandledByInterceptor.
3549 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
3550 (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
3551 (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
3553 2009-02-24 Simon Fraser <simon.fraser@apple.com>
3555 Reviewed by Eric Seidel
3557 Minor numeric cleanup: convert float literals to doubles.
3559 * platform/graphics/transforms/RotateTransformOperation.cpp:
3560 (WebCore::RotateTransformOperation::blend):
3562 2009-02-24 Mark Mentovai <mark@chromium.org>
3564 Reviewed by Eric Seidel.
3566 https://bugs.webkit.org/show_bug.cgi?id=24139
3567 Add missing include.
3569 * bindings/v8/ScriptInstance.h:
3571 2009-02-24 Jian Li <jianli@chromium.org>
3573 Reviewed by Alexey Proskuryakov.
3575 Move worker related files from dom directory to worker directory under WebCore.
3576 https://bugs.webkit.org/show_bug.cgi?id=24123
3578 * DerivedSources.make:
3582 * WebCore.vcproj/MigrateIDLAndScripts:
3583 * WebCore.vcproj/WebCore.vcproj:
3584 * WebCore.xcodeproj/project.pbxproj:
3585 * platform/CrossThreadCopier.cpp: Renamed from WebCore/dom/CrossThreadCopier.cpp.
3586 * platform/CrossThreadCopier.h: Renamed from WebCore/dom/CrossThreadCopier.h.
3587 * workers/GenericWorkerTask.h: Renamed from WebCore/dom/GenericWorkerTask.h.
3588 * workers/Worker.cpp: Renamed from WebCore/dom/Worker.cpp.
3589 * workers/Worker.h: Renamed from WebCore/dom/Worker.h.
3590 * workers/Worker.idl: Renamed from WebCore/dom/Worker.idl.
3591 * workers/WorkerContext.cpp: Renamed from WebCore/dom/WorkerContext.cpp.
3592 * workers/WorkerContext.h: Renamed from WebCore/dom/WorkerContext.h.
3593 * workers/WorkerContext.idl: Renamed from WebCore/dom/WorkerContext.idl.
3594 * workers/WorkerContextProxy.h: Renamed from WebCore/dom/WorkerContextProxy.h.
3595 * workers/WorkerLocation.cpp: Renamed from WebCore/dom/WorkerLocation.cpp.
3596 * workers/WorkerLocation.h: Renamed from WebCore/dom/WorkerLocation.h.
3597 * workers/WorkerLocation.idl: Renamed from WebCore/dom/WorkerLocation.idl.
3598 * workers/WorkerMessagingProxy.cpp: Renamed from WebCore/dom/WorkerMessagingProxy.cpp.
3599 * workers/WorkerMessagingProxy.h: Renamed from WebCore/dom/WorkerMessagingProxy.h.
3600 * workers/WorkerObjectProxy.h: Renamed from WebCore/dom/WorkerObjectProxy.h.
3601 * workers/WorkerRunLoop.cpp: Renamed from WebCore/dom/WorkerRunLoop.cpp.
3602 * workers/WorkerRunLoop.h: Renamed from WebCore/dom/WorkerRunLoop.h.
3603 * workers/WorkerThread.cpp: Renamed from WebCore/dom/WorkerThread.cpp.
3604 * workers/WorkerThread.h: Renamed from WebCore/dom/WorkerThread.h.
3606 2009-02-05 Ojan Vafai <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
3608 Reviewed by Dave Hyatt.
3610 Make cursor positions match IE6/IE7/FF3 when clicking in margins/padding
3611 around divs inside editable regions.
3612 https://bugs.webkit.org/show_bug.cgi?id=23605
3614 Fix clicks outside editable regions from focusing the editable region.
3615 https://bugs.webkit.org/show_bug.cgi?id=23607
3617 Removed editing/selection/contenteditable-click-outside.html as it's
3618 not as useful as our new tests.
3620 Clean up RenderBlock::positionForCoordinates to remove dead code,
3621 duplicate code, and generally make it more readable.
3623 Tests: editing/selection/click-in-margins-inside-editable-div.html
3624 editing/selection/click-in-padding-with-multiple-line-boxes.html
3625 editing/selection/click-outside-editable-div.html
3627 * editing/VisiblePosition.cpp:
3628 (WebCore::VisiblePosition::canonicalPosition):
3629 * rendering/RenderBlock.cpp:
3630 (WebCore::positionForPointRespectingEditingBoundaries):
3631 (WebCore::positionForPointWithInlineChildren):
3632 (WebCore::RenderBlock::positionForCoordinates):
3633 (WebCore::RenderBlock::updateFirstLetter):
3635 2009-02-24 Sam Weinig <sam@webkit.org>
3637 Reviewed by Geoffrey Garen.
3639 Related to <rdar://problem/6590295>
3640 Allow disabling javascript: urls.
3643 * html/HTMLAnchorElement.cpp:
3644 (WebCore::HTMLAnchorElement::parseMappedAttribute):
3645 * loader/FrameLoader.cpp:
3646 (WebCore::FrameLoader::executeIfJavaScriptURL):
3648 (WebCore::Page::Page):
3649 (WebCore::Page::setJavaScriptURLsAreAllowed):
3650 (WebCore::Page::javaScriptURLsAreAllowed):
3653 2009-02-24 Simon Fraser <simon.fraser@apple.com>
3655 Fix build when ACCELERATED_COMPOSITING is turned on
3656 (overflowList() -> normalFlowList()).
3658 * rendering/RenderLayerBacking.cpp:
3659 (WebCore::RenderLayerBacking::hasNonCompositingContent):
3660 (WebCore::RenderLayerBacking::paintIntoLayer):
3661 * rendering/RenderLayerCompositor.cpp:
3662 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
3663 (WebCore::RenderLayerCompositor::computeCompositingRequirements):
3664 (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
3665 (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
3666 (WebCore::RenderLayerCompositor::layerHas3DContent):
3668 2009-02-24 Simon Fraser <simon.fraser@apple.com>
3670 Reviewed by Darin Adler
3672 https://bugs.webkit.org/show_bug.cgi?id=24135
3674 Round the FloatPoint returned by absoluteToLocal(), rather than
3677 * dom/MouseRelatedEvent.cpp:
3678 (WebCore::MouseRelatedEvent::receivedTarget):
3680 2009-02-24 Beth Dakin <bdakin@apple.com>
3682 Reviewed by Sam Weinig.
3684 Fix for https://bugs.webkit.org/show_bug.cgi?id=24004 REGRESSION:
3685 Ordered list item marker misaligned when line height is not 1.2
3686 -and corresponding <rdar://problem/6602506>
3688 This is a regression from http://trac.webkit.org/changeset/40880
3689 where createInlineBox was taken off of RenderObject and moved to
3690 RenderBox. The problem was that the RenderBox version still needs
3691 to be virtual because there is still an existing implementation in
3694 * rendering/RenderBox.h:
3695 * rendering/RenderListMarker.cpp:
3696 (WebCore::RenderListMarker::createInlineBox):
3697 * rendering/RenderListMarker.h:
3699 2009-02-24 Dimitri Glazkov <dglazkov@chromium.org>
3701 Reviewed by Eric Seidel.
3703 https://bugs.webkit.org/show_bug.cgi?id=24128
3704 Upstream more V8 custom bindings: constructors, XSLTProcessor.
3706 * bindings/v8/custom/V8DOMParserConstructor.cpp: Added.
3707 (WebCore::CALLBACK_FUNC_DECL):
3708 * bindings/v8/custom/V8MessageChannelConstructor.cpp: Added.
3709 (WebCore::CALLBACK_FUNC_DECL):
3710 * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp: Added.
3711 (WebCore::CALLBACK_FUNC_DECL):
3712 * bindings/v8/custom/V8XMLSerializerConstructor.cpp: Added.
3713 (WebCore::CALLBACK_FUNC_DECL):
3714 * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp: Added.
3715 (WebCore::CALLBACK_FUNC_DECL):
3716 * bindings/v8/custom/V8XSLTProcessorCustom.cpp: Added.
3717 (WebCore::CALLBACK_FUNC_DECL):
3719 2009-02-24 David Levin <levin@chromium.org>
3721 Reviewed by Alexey Proskuryakov.
3723 Bug 24090: WorkerThreadableLoader needs to be able to post tasks for a mode.
3724 <https://bugs.webkit.org/show_bug.cgi?id=24090>
3726 No observable change in behavior, so no test.
3728 * dom/WorkerMessagingProxy.cpp:
3729 (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
3730 (WebCore::WorkerMessagingProxy::postTaskToWorkerContext):
3731 Fixed the bug that m_unconfirmedMessageCount was getting incremented for non-message tasks.
3733 (WebCore::WorkerMessagingProxy::postTaskForModeToWorkerContext):
3735 * dom/WorkerMessagingProxy.h:
3736 * loader/ThreadableLoader.cpp:
3737 (WebCore::ThreadableLoader::create):
3738 * loader/WorkerThreadableLoader.cpp:
3739 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
3740 (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
3741 (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
3742 (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
3743 (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
3744 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
3745 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
3746 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
3747 (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
3748 Changed these methods to post task using a mode.
3750 * loader/WorkerThreadableLoader.h:
3751 (WebCore::WorkerThreadableLoader::create):
3753 2009-02-24 Alexey Proskuryakov <ap@webkit.org>
3755 Reviewed by Darin Adler.
3757 https://bugs.webkit.org/show_bug.cgi?id=24091
3758 <rdar://problem/6468660> Start of redirect chain ends up as master entry in Application Cache
3760 Test: http/tests/appcache/access-via-redirect.php
3762 * loader/appcache/ApplicationCacheGroup.cpp:
3763 (WebCore::ApplicationCacheGroup::finishedLoadingMainResource): Use the URL we ended up with,
3764 not the original one.
3766 2009-02-24 Jian Li <jianli@chromium.org>
3768 Reviewed by Alexey Proskuryakov.
3770 Change to include WorkerObjectProxy.h instead of WorkerMessagingProxy.h in WorkerContext.cpp and WorkerScriptController.cpp.
3771 https://bugs.webkit.org/show_bug.cgi?id=24112
3773 * bindings/js/WorkerScriptController.cpp:
3774 * dom/WorkerContext.cpp:
3776 2009-02-23 Antti Koivisto <antti@apple.com>
3778 Reviewed by Oliver Hunt.
3780 <rdar://problem/6613796> Extended text codecs registered on webview creation
3782 Comparing a text encoding with string "GBK" ended up constructing
3783 TextEncoding("GBK") which in turn initialized all extended
3786 * platform/text/TextCodecICU.cpp:
3787 (WebCore::TextCodecICU::decode):
3789 2009-02-23 Sam Weinig <sam@webkit.org>
3793 * bridge/qt/qt_runtime.cpp:
3794 (JSC::Bindings::valueRealType):
3796 2009-02-23 Julien Chaffraix <jchaffraix@webkit.org>
3798 Reviewed by Darin Adler.
3800 Bug 23956: Safari crashes when cloneNode fails (cloning a XML element with an invalid nodeName)
3802 The crash occurred because Document::cloneNode would call Document::createElementNS. Unfortunately
3803 element created with createElement could have a wrong nodeName (createElement sets the string as the
3804 localName without checking for a prefix).
3806 The fix is to call Document::createElement(const QualifiedName&, bool) that will not do any checks on the QualifiedName
3807 and will always succeed.
3808 Also rolled-out the HTMLElement specialisation of clonedNode as it was equivalent to what is done now (added an ASSERT
3811 Test: fast/dom/cloneNode.html
3814 (WebCore::Element::cloneNode): Call createElement(const QualifiedName&, bool) instead of createElementNS as it will
3815 always return an element.
3817 * html/HTMLElement.cpp:
3818 * html/HTMLElement.h: Removed HTMLElement::clonedNode as it is equivalent to what is now done.
3820 2009-02-23 Dimitri Glazkov <dglazkov@chromium.org>
3822 Reviewed by Eric Seidel.
3824 https://bugs.webkit.org/show_bug.cgi?id=24109
3825 Upstream V8 Script abstractions, all except ScriptController.
3827 * bindings/v8/ScriptCachedFrameData.h: Added.
3828 (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
3829 (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData):
3830 (WebCore::ScriptCachedFrameData::restore):
3831 (WebCore::ScriptCachedFrameData::clear):
3832 (WebCore::ScriptCachedFrameData::domWindow):
3833 * bindings/v8/ScriptCallFrame.cpp: Added.
3834 (WebCore::ScriptCallFrame::ScriptCallFrame):
3835 (WebCore::ScriptCallFrame::~ScriptCallFrame):
3836 (WebCore::ScriptCallFrame::argumentAt):
3837 * bindings/v8/ScriptCallFrame.h: Added.
3838 (WebCore::ScriptCallFrame::functionName):
3839 (WebCore::ScriptCallFrame::sourceURL):
3840 (WebCore::ScriptCallFrame::lineNumber):
3841 (WebCore::ScriptCallFrame::argumentCount):
3842 * bindings/v8/ScriptCallStack.cpp: Added.
3843 (WebCore::ScriptCallStack::ScriptCallStack):
3844 (WebCore::ScriptCallStack::~ScriptCallStack):
3845 (WebCore::ScriptCallStack::at):
3846 * bindings/v8/ScriptCallStack.h: Added.
3847 (WebCore::ScriptCallStack::size):
3848 * bindings/v8/ScriptInstance.cpp: Added.
3849 (WebCore::V8ScriptInstance::V8ScriptInstance):
3850 (WebCore::V8ScriptInstance::~V8ScriptInstance):
3851 (WebCore::V8ScriptInstance::instance):
3852 (WebCore::V8ScriptInstance::clear):
3853 (WebCore::V8ScriptInstance::set):
3854 * bindings/v8/ScriptInstance.h: Added.
3855 (WebCore::V8ScriptInstance::create):
3856 * bindings/v8/ScriptSourceCode.h: Added.
3857 (WebCore::ScriptSourceCode::ScriptSourceCode):
3858 (WebCore::ScriptSourceCode::isEmpty):
3859 (WebCore::ScriptSourceCode::source):
3860 (WebCore::ScriptSourceCode::url):
3861 (WebCore::ScriptSourceCode::startLine):
3862 * bindings/v8/ScriptState.h: Added.
3863 (WebCore::ScriptState::hadException):
3864 (WebCore::ScriptState::setException):
3865 (WebCore::ScriptState::exception):
3866 * bindings/v8/ScriptString.h: Added.
3867 (WebCore::ScriptString::ScriptString):
3868 (WebCore::ScriptString::operator String):
3869 (WebCore::ScriptString::isNull):
3870 (WebCore::ScriptString::size):
3871 (WebCore::ScriptString::operator=):
3872 (WebCore::ScriptString::operator+=):
3873 * bindings/v8/ScriptValue.cpp: Added.
3874 (WebCore::ScriptValue::getString):
3875 * bindings/v8/ScriptValue.h: Added.
3876 (WebCore::ScriptValue::ScriptValue):
3877 (WebCore::ScriptValue::operator=):
3878 (WebCore::ScriptValue::operator==):
3879 (WebCore::ScriptValue::operator!=):
3880 (WebCore::ScriptValue::isNull):
3881 (WebCore::ScriptValue::isUndefined):
3882 (WebCore::ScriptValue::clear):
3883 (WebCore::ScriptValue::~ScriptValue):
3884 (WebCore::ScriptValue::v8Value):
3886 2009-02-23 Adam Treat <adam.treat@torchmobile.com>
3888 Reviewed by Timothy Hatcher.
3890 https://bugs.webkit.org/show_bug.cgi?id=24106
3891 The Qt port is crashing on exit because the tear down procedure involves
3892 the WebCore::InspectorController trying to access the JS execution context
3893 for a page that is being deleted. This patch amends the inspector so
3894 that it does not try and access the execution context of the WebCore::Page
3895 in the midst of deletion.
3897 * inspector/InspectorController.cpp:
3898 (WebCore::InspectorController::inspectedPageDestroyed):
3899 (WebCore::InspectorController::stopUserInitiatedProfiling):
3901 2009-02-23 David Levin <levin@chromium.org>
3903 Reviewed by Alexey Proskuryakov.
3905 Bug 24088: ThreadableLoaderClient::didFailWillSendRequestCheck isn't wired up completely for workers and could use a better name.
3906 <https://bugs.webkit.org/show_bug.cgi?id=24088>
3908 No observable change in behavior, so no test.
3910 * loader/DocumentThreadableLoader.cpp:
3911 (WebCore::DocumentThreadableLoader::create):
3912 * loader/ThreadableLoaderClient.h:
3913 (WebCore::ThreadableLoaderClient::didFailRedirectCheck):
3914 * loader/ThreadableLoaderClientWrapper.h:
3915 (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
3916 * loader/WorkerThreadableLoader.cpp:
3917 (WebCore::workerContextDidFailRedirectCheck):
3918 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
3919 * loader/WorkerThreadableLoader.h:
3920 * xml/XMLHttpRequest.cpp:
3921 (WebCore::XMLHttpRequest::didFinishLoading):
3922 * xml/XMLHttpRequest.h:
3924 2009-02-23 David Levin <levin@chromium.org>
3926 Reviewed by Alexey Proskuryakov.
3928 Bug 24047: Need to simplify nested if's in WorkerRunLoop::runInMode
3929 <https://bugs.webkit.org/show_bug.cgi?id=24047>
3931 Made a nested if inside of WorkerRunLoop::runInMode a lot simpler by
3932 using only MessageQueue::waitForMessageFilteredWithTimeout instead
3933 of three different MessageQueue methods.
3935 No observable change in behavior, so no test.
3937 * dom/WorkerRunLoop.cpp:
3938 (WebCore::ModePredicate::operator()):
3939 Minor clean-up to able to pass a const ref point for ModePredicate into runInMode.
3940 (WebCore::WorkerRunLoop::runInMode):
3941 * dom/WorkerRunLoop.h:
3943 2009-02-23 David Hyatt <hyatt@apple.com>
3945 In preparation for making layers for multicol objects (so that they can properly split child layers
3946 into multiple columns), rename all of the "overflowOnly" and "overflowList" members and functions
3947 of RenderLayer to use the term "normal flow" instead.
3949 Reviewed by Cameron Zwarich
3951 * rendering/RenderLayer.cpp:
3952 (WebCore::RenderLayer::RenderLayer):
3953 (WebCore::RenderLayer::~RenderLayer):
3954 (WebCore::RenderLayer::setHasVisibleContent):
3955 (WebCore::RenderLayer::enclosingCompositingLayer):
3956 (WebCore::RenderLayer::addChild):
3957 (WebCore::RenderLayer::removeChild):
3958 (WebCore::RenderLayer::paintLayer):
3959 (WebCore::RenderLayer::hitTestLayer):
3960 (WebCore::RenderLayer::dirtyNormalFlowList):
3961 (WebCore::RenderLayer::updateNormalFlowList):
3962 (WebCore::RenderLayer::collectLayers):
3963 (WebCore::RenderLayer::updateLayerListsIfNeeded):
3964 (WebCore::RenderLayer::shouldBeNormalFlowOnly):
3965 (WebCore::RenderLayer::styleChanged):
3966 * rendering/RenderLayer.h:
3967 (WebCore::RenderLayer::isNormalFlowOnly):
3968 (WebCore::RenderLayer::normalFlowList):
3969 * rendering/RenderTreeAsText.cpp:
3970 (WebCore::writeLayers):
3972 2009-02-23 David Hyatt <hyatt@apple.com>
3974 Fix the stacking order for column rules in multi-column layout. Column rules should paint as part of the background of an element, just
3975 after all other components of the background have been painted. This allows negative z-index children to still paint on top of the
3976 column rules (rather than ending up above the background of the box but behind the column rules).
3978 Reviewed by Eric Seidel
3980 Added fast/multicol/column-rules-stacking.html
3982 * rendering/RenderBlock.cpp:
3983 (WebCore::RenderBlock::paintColumnRules):
3984 (WebCore::RenderBlock::paintColumnContents):
3985 (WebCore::RenderBlock::paintObject):
3986 * rendering/RenderBlock.h:
3988 2009-02-23 Adam Treat <adam.treat@torchmobile.com>
3990 Reviewed by David Hyatt.
3992 No testcases have been added or modified since this patch should not result in
3993 a behavior change for ports that have layout tests enabled.
3995 Currently, the implementation of GraphicsContext::drawLineForText amongst
3996 the various ports differ in that some of them are honoring the context's
3997 strokeStyle when drawing a text-decoration and some of them are not.
3998 For instance, Apple's Mac port *does not* honor the context's strokeStyle(),
3999 but the Cairo implementation does and has an explicit workaround that
4000 sets the strokeStyle() temporarily.
4002 This patch fixes so that all ports are consistent by explicitly making sure
4003 to set the GraphicsContext strokeStyle to SolidStroke whenever
4004 painting the text-decoration of an InlineFlowBox or InlineTextBox as these
4005 should always use a solid stroke.
4007 This patch addresses these bugs:
4008 https://bugs.webkit.org/show_bug.cgi?id=19364
4009 https://bugs.webkit.org/show_bug.cgi?id=15659
4011 * rendering/InlineFlowBox.cpp:
4012 (WebCore::InlineFlowBox::paintTextDecorations):
4013 * rendering/InlineTextBox.cpp:
4014 (WebCore::InlineTextBox::paintDecoration):
4016 2009-02-23 Scott Violet <sky@google.com>
4018 Reviewed by Eric Seidel.
4020 https://bugs.webkit.org/show_bug.cgi?id=24098
4021 Bugs in ClipboardChromium
4023 Fixes the following bugs in ClipboardChromium:
4024 * It's possible for the extension to be empty, resulting in a bad file
4025 name, for example, 'foo.' or just '.'.
4026 * We weren't restricting the size of the file to MAX_PATH.
4027 * We weren't removing characters that are invalid for file system names.
4029 * platform/chromium/ClipboardChromium.cpp:
4030 (WebCore::writeImageToDataObject):
4031 * platform/chromium/ClipboardChromium.h:
4032 * platform/chromium/ClipboardChromiumLinux.cpp: Added.
4033 (WebCore::ClipboardChromium::validateFileName):
4034 * platform/chromium/ClipboardChromiumMac.cpp: Added.
4035 (WebCore::ClipboardChromium::validateFileName):
4036 * platform/chromium/ClipboardChromiumWin.cpp: Added.
4037 (WebCore::isInvalidFileCharacter):
4038 (WebCore::ClipboardChromium::validateFileName):
4040 2009-02-23 Thiago Macieira <thiago.macieira@nokia.com>
4042 Reviewed by Simon Hausmann.
4044 Fix the Copyright notices in a few files
4046 * platform/qt/RenderThemeQt.h:
4048 2009-02-23 Xan Lopez <xan@gnome.org>
4050 Reviewed by Alexey Proskuryakov.
4052 https://bugs.webkit.org/show_bug.cgi?id=22624
4053 [SOUP][GTK] Need API to get SoupSession from WebKit.
4055 Allow to retrieve the Soup session and modify the code to take
4056 into account users changing features on it.
4058 * platform/network/ResourceHandle.h:
4059 * platform/network/soup/CookieJarSoup.cpp:
4060 (WebCore::defaultCookieJar):
4061 (WebCore::setDefaultCookieJar):
4062 * platform/network/soup/CookieJarSoup.h:
4063 * platform/network/soup/ResourceHandleSoup.cpp:
4064 (WebCore::createSoupSession):
4065 (WebCore::ensureSessionIsInitialized):
4066 (WebCore::ResourceHandle::startHttp):
4067 (WebCore::ResourceHandle::cancel):
4068 (WebCore::ResourceHandle::defaultSession):
4070 2009-02-23 Xan Lopez <xan@gnome.org>
4072 Reviewed by Alexey Proskuryakov.
4074 https://bugs.webkit.org/show_bug.cgi?id=22624
4075 [SOUP][GTK] Need API to get SoupSession from WebKit.
4077 Remove CURL support.
4081 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
4083 Reviewed by Mark Rowe.
4085 Test: fast/dom/empty-hash-and-search.html
4087 https://bugs.webkit.org/show_bug.cgi?id=21147
4088 hash property returns incorrect value for links w/o hash
4090 Make hash() and search() behavior for empty and missing parts match IE and Firefox.
4092 * platform/KURL.cpp:
4093 (WebCore::KURL::query): Changed to return query without '?', as it is already done for ref().
4094 (WebCore::KURL::prettyURL): Append the query with the question mark.
4096 * page/Location.cpp:
4097 (WebCore::Location::search): Return an empty string if query is empty or missing.
4098 (WebCore::Location::hash): Return an empty string for empty hashes, not only missing ones.
4100 * dom/WorkerLocation.cpp:
4101 (WebCore::WorkerLocation::search):
4102 (WebCore::WorkerLocation::hash):
4103 Match document.location fixes above.
4105 * html/HTMLAnchorElement.cpp:
4106 (WebCore::HTMLAnchorElement::hash):
4107 (WebCore::HTMLAnchorElement::search):
4108 Return an empty string for empty and missing parts.
4110 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
4112 Reviewed by Darin Adler.
4114 https://bugs.webkit.org/show_bug.cgi?id=20184
4115 SELECT with no name generates invalid query string
4117 Test: fast/forms/select-no-name.html
4119 * html/HTMLSelectElement.cpp:
4120 (WebCore::HTMLSelectElement::appendFormData): Added a check for empty name.
4122 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
4124 Apply review comments for the previous check-in (forgot to save the file, oops).
4126 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren):
4128 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
4130 Reviewed by Darin Adler.
4132 https://bugs.webkit.org/show_bug.cgi?id=15707
4133 Crash when manipulating document from within an iframe onload function
4135 Test: fast/dom/onload-open.html
4137 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Protect the container and
4138 the current node, because anything can happen when dispatching events.
4140 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
4142 Reviewed by Darin Adler.
4144 https://bugs.webkit.org/show_bug.cgi?id=18970
4145 Numerically named input fields cause document.forms loop problems
4147 Test: fast/forms/numeric-input-name.html
4149 * bindings/scripts/CodeGeneratorJS.pm: Try index getter before name getter, even if the
4150 latter overrides properties.
4152 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
4154 Reviewed by Sam Weinig.
4156 https://bugs.webkit.org/show_bug.cgi?id=24059
4157 Tokenizer::write() return value is never used
4160 * dom/XMLTokenizer.cpp:
4161 (WebCore::XMLTokenizer::write):
4162 * dom/XMLTokenizer.h:
4163 * html/HTMLTokenizer.cpp:
4164 (WebCore::HTMLTokenizer::write):
4165 * html/HTMLTokenizer.h:
4166 * loader/FTPDirectoryDocument.cpp:
4167 (WebCore::FTPDirectoryTokenizer::write):
4168 * loader/ImageDocument.cpp:
4169 (WebCore::ImageTokenizer::write):
4170 * loader/MediaDocument.cpp:
4171 (WebCore::MediaTokenizer::write):
4172 * loader/PluginDocument.cpp:
4173 (WebCore::PluginTokenizer::write):
4174 * loader/TextDocument.cpp:
4175 (WebCore::TextTokenizer::write):
4176 Made write() return void, not bool.
4178 2009-02-20 Geoffrey Garen <ggaren@apple.com>
4180 Reviewed by Sam Weinig.
4182 Updated for JavaScriptCore changes to timeout checking.
4184 * bindings/js/JSCustomPositionCallback.cpp:
4185 (WebCore::JSCustomPositionCallback::handleEvent):
4186 * bindings/js/JSCustomPositionErrorCallback.cpp:
4187 (WebCore::JSCustomPositionErrorCallback::handleEvent):
4188 * bindings/js/JSCustomSQLStatementCallback.cpp:
4189 (WebCore::JSCustomSQLStatementCallback::handleEvent):
4190 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
4191 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
4192 * bindings/js/JSCustomSQLTransactionCallback.cpp:
4193 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
4194 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
4195 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
4196 * bindings/js/JSCustomVoidCallback.cpp:
4197 (WebCore::JSCustomVoidCallback::handleEvent):
4198 * bindings/js/JSCustomXPathNSResolver.cpp:
4199 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
4200 * bindings/js/JSDOMWindowBase.cpp:
4201 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
4202 (WebCore::JSDOMWindowBase::commonJSGlobalData):
4203 * bindings/js/JSEventListener.cpp:
4204 (WebCore::JSAbstractEventListener::handleEvent):
4205 * bindings/js/ScheduledAction.cpp:
4206 (WebCore::ScheduledAction::executeFunctionInContext):
4207 * bindings/js/ScriptController.cpp:
4208 (WebCore::ScriptController::evaluate):
4209 * bindings/js/WorkerScriptController.cpp:
4210 (WebCore::WorkerScriptController::evaluate):
4211 (WebCore::WorkerScriptController::forbidExecution):
4212 * bindings/objc/WebScriptObject.mm:
4213 (-[WebScriptObject callWebScriptMethod:withArguments:]):
4214 (-[WebScriptObject evaluateWebScript:]):
4215 * bridge/NP_jsobject.cpp:
4216 (_NPN_InvokeDefault):
4220 * bridge/jni/jni_jsobject.mm:
4221 (JavaJSObject::call):
4222 (JavaJSObject::eval):
4224 2009-02-21 Hironori Bono <hbono@chromium.org>
4226 Reviewed by Alexey Proskuryakov.
4228 https://bugs.webkit.org/show_bug.cgi?id=23786
4229 [Chromium] line-break characters in a complex text are treated as zero-width spaces
4231 This change prevents the UniscribeHelper class from treating the line-break characters
4234 Tests: fast/text/international/bidi-linebreak-001.html
4235 fast/text/international/bidi-linebreak-002.html
4236 fast/text/international/bidi-linebreak-003.html
4238 * platform/graphics/chromium/UniscribeHelper.cpp:
4239 (WebCore::UniscribeHelper::adjustSpaceAdvances):
4240 Make the UniscribeHelper::adjustSpaceAdvances() function treat all characters in
4241 the treatAsSpace() function (e.g. U+0020, U+000A, U+000D, U+00A0) as whitespaces,
4242 so does when Chromium renders a simple text.
4244 2009-02-20 Julien Chaffraix <jchaffraix@webkit.org>
4246 Reviewed by Alexey Proskuryakov.
4248 Bug 23940: Use Document::createElement(const QualifiedName&, bool) when creating a known element inside WebCore
4250 Document::createElement(const QualifiedName&, bool) does not check for the prefix as opposed the the one taking an AtomicString
4251 or Document::createElementNS. This is perfectly fine internally because we know the type of element created and the check is
4254 It also removes the use of an ExceptionCode argument which was here only to check that the prefix check was fine. Finally it
4255 enables us to use some generated QualifiedName.
4257 * bindings/js/JSOptionConstructor.cpp:
4258 (WebCore::constructHTMLOptionElement):
4260 (WebCore::Document::setTitle):
4261 * dom/XMLTokenizer.cpp:
4262 (WebCore::createXHTMLParserErrorHeader):
4263 (WebCore::XMLTokenizer::insertErrorMessageBlock):
4264 * editing/CompositeEditCommand.cpp: