1 2009-09-10 Zoltan Horvath <zoltan@webkit.org>
3 Reviewed by Darin Adler.
5 Use fastNew and fastDelete instead of operator new and delete for CSSSelector class.
6 https://bugs.webkit.org/show_bug.cgi?id=25930
8 Change using of operator new to fastNew and operator delete to
9 fastDeleteSkippingDestructor for CSSSelector class to avoid mismatched function call.
11 This change fixes valgrind's 'mismatched free' notification.
14 (WebCore::CSSParser::~CSSParser):
15 (WebCore::CSSParser::createFloatingSelector):
16 * css/CSSSelectorList.cpp:
17 (WebCore::CSSSelectorList::adoptSelectorVector):
19 2009-09-10 Steve Block <steveblock@google.com>
21 Reviewed by Darin Adler.
23 Geolocation does not correctly handle reentrant calls from callbacks.
24 https://bugs.webkit.org/show_bug.cgi?id=29040
26 Tests: fast/dom/Geolocation/reentrant-error.html
27 fast/dom/Geolocation/reentrant-success.html
29 * page/Geolocation.cpp: Modified.
30 (WebCore::Geolocation::handleError): Modified. Call sendError directly, clearing notifier lists before making callback.
31 (WebCore::Geolocation::makeSuccessCallbacks): Modified. Call sendPosition directly, clearing notifier lists before making callback.
32 * page/Geolocation.h: Modified. Deleted sendErrorToXX and sendPositionToXXX methods.
34 2009-09-10 Erik Arvidsson <arv@chromium.org>
36 Reviewed by Eric Seidel.
38 Fixes issue where focused elements did not get blur and focus events when the window was blurred and focused.
39 https://bugs.webkit.org/show_bug.cgi?id=27105
41 Test: fast/events/blur-focus-window-should-blur-focus-element.html
43 * page/FocusController.cpp:
44 (WebCore::dispatchEventsOnWindowAndFocusedNode):
45 (WebCore::FocusController::setFocused):
46 (WebCore::FocusController::setActive):
48 2009-09-10 Adam Roben <aroben@apple.com>
50 Make the play/pause button in <video> controls indicate the button's
51 action, not the movie state
53 This matches the Mac behavior, iTunes, and many other media players.
57 Fixes <http://webkit.org/b/29126> Play/pause button in <video>
58 controls shows the wrong image
60 Reviewed by Eric Carlson.
62 * rendering/RenderMediaControls.cpp:
63 (WebCore::RenderMediaControls::paintMediaControlsPart): Reversed when
64 we show the play vs. pause artwork, so that the button reflects what
65 will happen when you click it, rather than the current state of the
68 2009-09-09 Steve Block <steveblock@google.com>
70 Reviewed by Maciej Stachowiak.
72 Geolocation Coordinates::toString() prints bogus values for unspecified properties.
73 https://bugs.webkit.org/show_bug.cgi?id=29080
75 Test: fast/dom/Geolocation/position-string.html
77 * GNUmakefile.am: Modified. Removes Geoposition.cpp and Coordinates.cpp.
78 * WebCore.gypi: Modified. Removes Geoposition.cpp and Coordinates.cpp.
79 * WebCore.pro: Modified. Removes Geoposition.cpp and Coordinates.cpp.
80 * WebCore.vcproj/WebCore.vcproj: Modified. Removes Geoposition.cpp and Coordinates.cpp.
81 * WebCore.xcodeproj/project.pbxproj: Modified. Removes Geoposition.cpp and Coordinates.cpp.
82 * WebCoreSources.bkl: Modified. Removes Geoposition.cpp and Coordinates.cpp.
83 * page/Coordinates.cpp: Removed.
84 * page/Coordinates.h: Modified. Removes toString method.
85 * page/Coordinates.idl: Modified. Removes toString method.
86 * page/Geoposition.cpp: Removed.
87 * page/Geoposition.h: Modified. Removes toString method.
88 * page/Geoposition.idl: Modified. Removes toString method.
90 2009-09-09 Steve Block <steveblock@google.com>
92 Reviewed by Adam Barth.
94 Correctly applies the Geolocation timeout property.
95 https://bugs.webkit.org/show_bug.cgi?id=27256
97 If a timeout is specified, the timer is started as soon as the location acquistion process starts.
98 If a position fix is not obtained within the timeout interval, the position request is cancelled
99 and the error callback (if specified) is invoked. If a position fix is obtained within the timeout
100 interval, the timer is stopped. Permissions are then requested from the user if required. See
101 http://www.w3.org/TR/geolocation-API/#position-options.
103 Note that this logic means that the time required to obtain permissions from the user is not
104 included in the timeout interval.
106 Tests: fast/dom/Geolocation/timeout.html
107 fast/dom/Geolocation/timeout-zero.html
109 * page/Geolocation.cpp: Modified.
110 (WebCore::Geolocation::GeoNotifier::GeoNotifier): Modified. Takes Geolocation object as parameter.
111 (WebCore::Geolocation::GeoNotifier::hasZeroTimeout): Added. Determines whether this request has a zero timeout.
112 (WebCore::Geolocation::GeoNotifier::startTimerIfNeeded): Renamed from startTimer. Starts the timer if a timeout was specified.
113 (WebCore::Geolocation::GeoNotifier::timerFired): Modified. Calls the error callback if specified, and reports the timeout to the Geolocation object.
114 (WebCore::Geolocation::getCurrentPosition): Modified. Calls maybeStartTimer when starting the location acquisition process.
115 (WebCore::Geolocation::watchPosition): Modified. Calls maybeStartTimer when starting the location acquisition process.
116 (WebCore::Geolocation::requestTimedOut): Added. Cancels a request when it times out.
117 (WebCore::Geolocation::setIsAllowed): Modified. No longer starts timers.
118 (WebCore::Geolocation::sendPosition): Modified. No longer stops timers.
119 (WebCore::Geolocation::stopTimer): Added. Stops the timers for a vector of notifiers.
120 (WebCore::Geolocation::stopTimersForOneShots): Added. Stops the timers for all one-shots.
121 (WebCore::Geolocation::stopTimersForWatchers): Added. Stops the timers for all watchers.
122 (WebCore::Geolocation::stopTimers): Added. Stops the timers for all requests.
123 (WebCore::Geolocation::geolocationServicePositionChanged): Modfified. Stops the timers for all requests.
124 * page/Geolocation.h: Modified.
125 (WebCore::Geolocation::GeoNotifier::create): Modified. Takes Geolocation object as parameter.
127 2009-09-09 Chris Fleizach <cfleizach@apple.com>
129 AX notifications should be an ENUM type instead of strings
130 https://bugs.webkit.org/show_bug.cgi?id=28963
134 * accessibility/AXObjectCache.h:
135 (WebCore::AXObjectCache::postNotification):
136 (WebCore::AXObjectCache::postPlatformNotification):
138 2009-09-08 Chris Fleizach <cfleizach@apple.com>
140 Reviewed by Darin Adler.
142 AX notifications should be an ENUM type instead of strings
143 https://bugs.webkit.org/show_bug.cgi?id=28963
145 Moves AX notifications over to an ENUM type instead of
146 using the actual string values that are used on OS X.
148 * accessibility/AXObjectCache.cpp:
149 (WebCore::AXObjectCache::postNotification):
150 (WebCore::AXObjectCache::selectedChildrenChanged):
151 * accessibility/AXObjectCache.h:
152 (WebCore::AXObjectCache::):
153 * accessibility/AccessibilityRenderObject.cpp:
154 (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
155 * accessibility/chromium/AXObjectCacheChromium.cpp:
156 (WebCore::AXObjectCache::postPlatformNotification):
157 * accessibility/gtk/AXObjectCacheAtk.cpp:
158 (WebCore::AXObjectCache::postPlatformNotification):
159 * accessibility/mac/AXObjectCacheMac.mm:
160 (WebCore::AXObjectCache::postPlatformNotification):
161 * accessibility/win/AXObjectCacheWin.cpp:
162 (WebCore::AXObjectCache::postPlatformNotification):
164 (WebCore::Document::implicitClose):
166 (WebCore::Element::updateAfterAttributeChanged):
167 * editing/Editor.cpp:
168 (WebCore::Editor::respondToChangedContents):
169 * editing/mac/SelectionControllerMac.mm:
170 (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
171 * html/HTMLInputElement.cpp:
172 (WebCore::HTMLInputElement::setChecked):
173 * page/FrameView.cpp:
174 (WebCore::FrameView::layout):
175 * rendering/RenderTextControl.cpp:
176 (WebCore::RenderTextControl::setInnerTextValue):
178 2009-09-08 Adam Barth <abarth@webkit.org>
180 Reviewed by Eric Seidel.
182 Missing checkout for getSVGDocument()
183 https://bugs.webkit.org/show_bug.cgi?id=29064
185 The V8 code generator didn't understand SVGCheckSecurityDocument.
187 Tests: http/tests/security/xss-DENIED-getSVGDocument-iframe.html
188 http/tests/security/xss-DENIED-getSVGDocument-object.html
190 * bindings/scripts/CodeGeneratorV8.pm:
192 2009-09-09 Cameron McCormack <cam@mcc.id.au>
194 Reviewed by Eric Seidel.
196 Make SVGStyleElement inherit from SVGLangSpace
197 https://bugs.webkit.org/show_bug.cgi?id=29058
199 Required by SVG 1.1 Second Edition:
200 http://dev.w3.org/SVG/profiles/1.1F2/publish/styling.html#InterfaceSVGStyleElement
202 Test: svg/dom/SVGStyleElement/style-langspace.html
204 * svg/SVGStyleElement.cpp: Drop methods xmlspace and setXmlspace.
205 (WebCore::SVGStyleElement::SVGStyleElement): Add SVGLangSpace()
207 (WebCore::SVGStyleElement::parseMappedAttribute): Call
208 parseMappedAttribute on SVGLangSpace.
209 * svg/SVGStyleElement.h: Drop xmlspace and setXmlspace declarations.
210 * svg/SVGStyleElement.idl: Drop xmlspace attribute and add SVGLangSpace
213 2009-09-09 Nate Chapin <japhet@chromium.org>
215 Reviewed by David Levin.
217 Remove unnecessary includes and forward declarations in V8Proxy.h
219 https://bugs.webkit.org/show_bug.cgi?id=29111
221 * bindings/v8/V8Proxy.h:
223 2009-07-30 Eric Seidel <eric@webkit.org>
225 Reviewed by Adam Barth.
227 Add more position constructors
228 positionBeforeNode, positionAfterNode
229 firstPositionInNode, lastPositionInNode
230 https://bugs.webkit.org/show_bug.cgi?id=25494
232 I also added a lastOffsetInNode and deployed it to a couple places.
234 There are no callers to these new constructors yet, but those
235 will be coming in future patches.
238 (WebCore::Position::computeOffsetInContainerNode):
240 (WebCore::positionBeforeNode):
241 (WebCore::positionAfterNode):
242 (WebCore::lastOffsetInNode):
243 (WebCore::firstPositionInNode):
244 (WebCore::lastPositionInNode):
245 * editing/ApplyStyleCommand.cpp:
246 * editing/TextIterator.cpp:
247 (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
248 * editing/htmlediting.cpp:
249 (WebCore::lastOffsetForEditing):
251 2009-04-30 Eric Seidel <eric@webkit.org>
253 Reviewed by Adam Barth.
255 Rename positionBeforeNode to positionInParentBeforeNode
256 and positionAfterNode to positionInParentAfterNode
257 in preparation for adding a positionBeforeNode
258 which returns a neighbor-anchored position.
259 https://bugs.webkit.org/show_bug.cgi?id=25494
261 No functional changes, thus no tests.
263 * dom/PositionConstructors.h:
264 (WebCore::positionInParentBeforeNode):
265 (WebCore::positionInParentAfterNode):
266 * dom/PositionIterator.cpp:
267 (WebCore::PositionIterator::operator Position):
268 * editing/ApplyStyleCommand.cpp:
269 (WebCore::ApplyStyleCommand::applyInlineStyle):
270 * editing/CompositeEditCommand.cpp:
271 (WebCore::CompositeEditCommand::positionOutsideTabSpan):
272 (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
273 (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
274 * editing/CreateLinkCommand.cpp:
275 (WebCore::CreateLinkCommand::doApply):
276 * editing/DeleteButtonController.cpp:
277 (WebCore::DeleteButtonController::deleteTarget):
278 * editing/DeleteSelectionCommand.cpp:
279 (WebCore::DeleteSelectionCommand::initializeStartEnd):
280 (WebCore::updatePositionForNodeRemoval):
281 * editing/InsertLineBreakCommand.cpp:
282 (WebCore::InsertLineBreakCommand::doApply):
283 * editing/InsertListCommand.cpp:
284 (WebCore::InsertListCommand::doApply):
285 * editing/InsertParagraphSeparatorCommand.cpp:
286 (WebCore::InsertParagraphSeparatorCommand::doApply):
287 * editing/InsertTextCommand.cpp:
288 (WebCore::InsertTextCommand::input):
289 * editing/ReplaceSelectionCommand.cpp:
290 (WebCore::ReplaceSelectionCommand::positionAtStartOfInsertedContent):
291 (WebCore::ReplaceSelectionCommand::doApply):
292 * editing/VisibleSelection.cpp:
293 (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
294 * editing/htmlediting.cpp:
295 (WebCore::firstEditablePositionAfterPositionInRoot):
296 (WebCore::lastEditablePositionBeforePositionInRoot):
297 (WebCore::rangeCompliantEquivalent):
298 (WebCore::positionBeforeContainingSpecialElement):
299 (WebCore::positionAfterContainingSpecialElement):
300 (WebCore::positionBeforeTabSpan):
302 2009-04-30 Eric Seidel <eric@webkit.org>
304 Reviewed by Adam Barth.
306 Re-organize position creation functions in preparation for adding more
307 https://bugs.webkit.org/show_bug.cgi?id=25494
309 Make position functions inline to avoid ref-churn.
310 Remove startPosition/endPosition as they were only used in one place.
312 No functional changes, thus no tests.
316 (WebCore::positionBeforeNode):
317 (WebCore::positionAfterNode):
318 * editing/SelectionController.cpp:
319 (WebCore::SelectionController::moveTo):
320 * editing/TypingCommand.cpp:
321 * editing/htmlediting.cpp:
322 * editing/htmlediting.h:
323 (WebCore::firstDeepEditingPositionForNode):
324 (WebCore::lastDeepEditingPositionForNode):
325 * rendering/RenderObject.cpp:
327 2009-09-09 Kevin Watters <kevinwatters@gmail.com>
329 Reviewed by Kevin Ollivier.
331 [wx] Add wxSize conversions for IntSize.
332 https://bugs.webkit.org/show_bug.cgi?id=29104
334 * platform/graphics/IntSize.h:
335 * platform/graphics/wx/IntSizeWx.cpp: Added.
336 (WebCore::IntSize::IntSize):
337 (WebCore::IntSize::operator wxSize):
339 2009-09-09 Yaar Schnitman <yaar@chromium.org>
341 Reviewed by David Levin.
343 Chromium uses its own config.h file that was forked from webkit's config.h.
344 By merging in Chromium's defines, Chromium would again be able to use webkit's
347 https://bugs.webkit.org/show_bug.cgi?id=28882
349 * config.h: Added chromium-specific defines.
351 2009-09-09 Jens Alfke <snej@chromium.org>
353 Reviewed by Eric Seidel.
355 Initialize DataTransfer's effectAllowed and dropEffect properties correctly
356 according to HTML5 spec (sec. 7.9.2-7.9.3).
357 https://bugs.webkit.org/show_bug.cgi?id=26700
358 - At the start of a drag operation, the value of effectAllowed should be
359 the string "uninitialized".
360 - At end of dragstart handler, if effectAllowed hasn't been set yet, it
361 should be set to "copy".
362 - on dragenter and dragover event, dropEffect should be initialized to a
363 default value based on the value of effectAllowed.
364 - at end of dragenter and dragover the dropEffect should be set to "none"
365 if the value set by the handler doesn't match the effectAllowed.
366 - on dragleave event, dropEffect should be "none".
367 - on drop event, dropEffect should be the previously negotiated value.
369 Test: fast/events/drag-dropeffect.html
372 Added a parameter to EventHandler::dragSourceMovedTo.
374 (WebCore::Clipboard::Clipboard):
375 Initialize m_effectAllowed to "uninitialized".
376 (WebCore::Clipboard::sourceOperation):
377 Treat "uninitialized" as meaning no value has been set.
378 * page/DragController.cpp:
379 (WebCore::DragController::DragController):
380 Initialize new member m_destinationDragOperation.
381 (WebCore::DragController::dragExited):
382 Set m_destinationDragOperation to none on dragExit.
383 (WebCore::DragController::performDrag):
384 Set m_destinationDragOperation to current dropEffect.
385 (WebCore::DragController::dragEnteredOrUpdated):
386 Make sure to clear the operation if drag source doesn't allow it.
387 (WebCore::DragController::tryDHTMLDrag):
388 Set a default value for the dst drag op before sending dragEnter/Over.
389 (WebCore::DragController::startDrag):
390 Clear m_destinationDragOperation at start of drag.
391 * page/DragController.h:
392 (WebCore::DragController::destinationDragOperation):
393 Added new member m_destinationDragOperation, and its public getter.
394 * page/EventHandler.cpp:
395 (WebCore::EventHandler::updateDragAndDrop):
396 dropEffect should be 'none' during dropleave handler, per spec.
397 (WebCore::EventHandler::dragSourceMovedTo):
398 Added DragOperation parameter, so the handler sees the current dropEffect.
399 (WebCore::EventHandler::handleDrag):
400 Assume DragOperationEvery for non-DHTML drags.
401 * page/EventHandler.h:
402 Added DragOperation parameter to dragSourceMovedTo().
404 2009-09-09 Dumitru Daniliuc <dumi@chromium.org>
406 Reviewed by Dimitri Glazkov.
408 1. Adding support/bindings for read-only transactions.
409 2. Disallowing the SQLITE_*_VIEW and REINDEX operations in the
410 private browsing mode.
411 3. Adding an authorizer test.
413 https://bugs.webkit.org/show_bug.cgi?id=28918
415 Test: storage/test-authorizer.html
417 * bindings/js/JSDatabaseCustom.cpp:
418 (WebCore::createTransaction): Parses all arguments and executes a
420 (WebCore::JSDatabase::transaction): Refactored to use
422 (WebCore::JSDatabase::readTransaction): Added to execute read-only
423 transactions using createTransaction().
424 * bindings/v8/custom/V8CustomBinding.h: Added the binding for
425 Database::readTransaction().
426 * bindings/v8/custom/V8DatabaseCustom.cpp:
427 (WebCore::createTransaction): Parses all arguments and executes a
429 (WebCore::transaction): Refactored to use createTransaction().
430 (WebCore::readTransaction): Added to execute read-only
431 transactions using createTransaction().
432 * storage/Database.cpp:
433 (WebCore::Database::transaction): Added support for read-only
435 * storage/Database.h: Added support for read-only transactions.
436 * storage/Database.idl: Added support for read-only transactions.
437 * storage/DatabaseAuthorizer.cpp:
438 (WebCore::DatabaseAuthorizer::createTempTable): Make it obvious
439 that the statement will be denied in private browsing mode and
440 read-only transactions.
441 (WebCore::DatabaseAuthorizer::dropTempTable): Same.
442 (WebCore::DatabaseAuthorizer::createTempIndex): Same.
443 (WebCore::DatabaseAuthorizer::dropTempIndex): Same.
444 (WebCore::DatabaseAuthorizer::createTempTrigger): Same.
445 (WebCore::DatabaseAuthorizer::dropTempTrigger): Same.
446 (WebCore::DatabaseAuthorizer::createView): Deny in private
447 browsing mode and read-only transactions.
448 (WebCore::DatabaseAuthorizer::createTempView): Same.
449 (WebCore::DatabaseAuthorizer::dropView): Same.
450 (WebCore::DatabaseAuthorizer::dropTempView): Same.
451 (WebCore::DatabaseAuthorizer::allowReindex): Same.
452 * storage/DatabaseAuthorizer.h:
453 * storage/SQLTransaction.cpp: Added support for read-only
455 (WebCore::SQLTransaction::create):
456 (WebCore::SQLTransaction::SQLTransaction):
457 (WebCore::SQLTransaction::executeSQL):
458 (WebCore::SQLTransaction::acquireLock):
459 * storage/SQLTransaction.h:
460 * storage/SQLTransactionCoordinator.cpp:
461 (WebCore::SQLTransactionCoordinator::acquireLock): Added a new
462 parameter in preparation for a change that will allow multiple
463 read-only transactions on the same DB to run concurrently.
464 * storage/SQLTransactionCoordinator.h:
466 2009-09-09 Dave Hyatt <hyatt@apple.com>
468 Reviewed by Adam Roben.
470 https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user stylesheet injection. This is similar
471 to user script injection but allows for user stylesheets to be added. The stylesheets are applied immediately
472 to all Frames in the PageGroup.
474 Added userscripts/simple-stylesheet.html test case.
478 * WebCore.vcproj/WebCore.vcproj:
479 * WebCore.xcodeproj/project.pbxproj:
480 * css/CSSStyleSelector.cpp:
481 (WebCore::CSSStyleSelector::CSSStyleSelector):
482 * css/CSSStyleSelector.h:
484 (WebCore::Document::Document):
485 (WebCore::Document::attach):
486 (WebCore::Document::pageGroupUserSheets):
487 (WebCore::Document::clearPageGroupUserSheets):
488 (WebCore::Document::recalcStyleSelector):
490 * loader/PlaceholderDocument.cpp:
491 (WebCore::PlaceholderDocument::attach):
492 * page/PageGroup.cpp:
493 (WebCore::PageGroup::addUserStyleSheet):
494 (WebCore::PageGroup::removeUserContentForWorld):
495 (WebCore::PageGroup::removeAllUserContent):
497 (WebCore::PageGroup::userStyleSheets):
498 * page/UserStyleSheet.h: Added.
499 (WebCore::UserStyleSheet::UserStyleSheet):
500 (WebCore::UserStyleSheet::source):
501 (WebCore::UserStyleSheet::url):
502 (WebCore::UserStyleSheet::patterns):
503 (WebCore::UserStyleSheet::worldID):
504 * page/UserStyleSheetTypes.h: Added.
506 2009-09-09 Carol Szabo <carol.szabo@nokia.com>
508 Reviewed by Ariya Hidayat.
510 [Qt] CSS Style -webkit-box-shadow is not rendered correctly on
512 https://bugs.webkit.org/show_bug.cgi?id=23291
514 * platform/graphics/qt/GraphicsContextQt.cpp:
515 (WebCore::GraphicsContext::drawRect):
516 (WebCore::GraphicsContext::strokeArc):
517 (WebCore::GraphicsContext::drawConvexPolygon):
518 (WebCore::GraphicsContext::fillPath):
519 (WebCore::GraphicsContext::strokePath):
520 (WebCore::GraphicsContext::fillRect):
521 (WebCore::GraphicsContext::fillRoundedRect):
522 Added the ability to draw shadows for all these curves.
524 2009-09-09 Kenneth Rohde Christiansen <kenneth@webkit.org>
526 Reviewed by Simon Hausmann.
528 Add the qwebgraphicsitem.cpp to the build system.
530 https://bugs.webkit.org/show_bug.cgi?id=28862
534 2009-09-09 Kevin Watters <kevinwatters@gmail.com>
536 Reviewed by Kevin Ollivier.
538 [wx port] Move functions in TemporaryLinkStubs.cpp out to files where
541 https://bugs.webkit.org/show_bug.cgi?id=29088
543 * editing/wx/EditorWx.cpp:
544 (WebCore::Editor::showColorPanel):
545 (WebCore::Editor::showFontPanel):
546 (WebCore::Editor::showStylesPanel):
547 * platform/graphics/wx/GraphicsContextWx.cpp:
548 (WebCore::GraphicsContext::setPlatformShadow):
549 (WebCore::GraphicsContext::clearPlatformShadow):
550 (WebCore::GraphicsContext::beginTransparencyLayer):
551 (WebCore::GraphicsContext::endTransparencyLayer):
552 (WebCore::GraphicsContext::clearRect):
553 (WebCore::GraphicsContext::strokeRect):
554 (WebCore::GraphicsContext::setLineCap):
555 (WebCore::GraphicsContext::setLineJoin):
556 (WebCore::GraphicsContext::setMiterLimit):
557 (WebCore::GraphicsContext::setAlpha):
558 (WebCore::GraphicsContext::addInnerRoundedRectClip):
559 * platform/graphics/wx/IconWx.cpp: Added.
560 (WebCore::Icon::~Icon):
561 (WebCore::Icon::createIconForFile):
562 (WebCore::Icon::createIconForFiles):
563 (WebCore::Icon::paint):
564 * platform/graphics/wx/ImageWx.cpp:
565 (WebCore::Image::loadPlatformResource):
566 (WebCore::Image::drawPattern):
567 * platform/wx/CursorWx.cpp:
568 (WebCore::moveCursor):
569 * platform/wx/FileChooserWx.cpp: Added.
570 (WebCore::FileChooser::basenameForWidth):
571 * platform/wx/KURLWx.cpp: Added.
572 (WebCore::KURL::fileSystemPath):
573 * platform/wx/SSLKeyGeneratorWx.cpp: Added.
574 (WebCore::getSupportedKeySizes):
575 (WebCore::signedPublicKeyAndChallengeString):
576 * platform/wx/SearchPopupMenuWx.cpp: Added.
577 (WebCore::SearchPopupMenu::SearchPopupMenu):
578 (WebCore::SearchPopupMenu::saveRecentSearches):
579 (WebCore::SearchPopupMenu::loadRecentSearches):
580 (WebCore::SearchPopupMenu::enabled):
581 * platform/wx/SharedBufferWx.cpp: Added.
582 (WebCore::SharedBuffer::createWithContentsOfFile):
583 * platform/wx/SystemTimeWx.cpp: Added.
584 (WebCore::userIdleTime):
585 * platform/wx/TemporaryLinkStubs.cpp: Removed.
586 * platform/wx/TextBreakIteratorInternalICUWx.cpp: Added.
587 (WebCore::currentSearchLocaleID):
588 (WebCore::currentTextBreakLocaleID):
589 * platform/wx/WidgetWx.cpp:
590 (WebCore::Widget::setIsSelected):
592 2009-09-09 Steve Block <steveblock@google.com>
594 Reviewed by Adam Barth.
596 Geolocation incorrectly calls error callback in case of exception in success callback.
597 https://bugs.webkit.org/show_bug.cgi?id=27255
599 Test: fast/dom/Geolocation/callback-exception.html
601 * bindings/js/JSCustomPositionCallback.cpp: Modified.
602 (WebCore::JSCustomPositionCallback::handleEvent): Modified. Removed raisedException out param.
603 * bindings/js/JSCustomPositionCallback.h: Modified. Removed raisedException out param from handleEvent method and made handleEvent private.
604 * bindings/js/JSCustomPositionErrorCallback.h: Modified. Made handleEvent private.
605 * page/Geolocation.cpp: Modified.
606 (WebCore::Geolocation::sendPosition): Modified. No longer call error callback in case of exception in success callback.
607 * page/PositionCallback.h: Modified. Removed raisedException out param from handleEvent method.
609 2009-09-09 Steve Block <steveblock@google.com>
611 Reviewed by Darin Adler.
613 When Geolocation permission is denied, stops watches as well as one-shots.
614 https://bugs.webkit.org/show_bug.cgi?id=28305.
616 Tests: fast/dom/Geolocation/watch.html
617 fast/dom/Geolocation/permission-denied-stops-watches.html
619 * page/Geolocation.cpp: Modified.
620 (WebCore::Geolocation::setIsAllowed): Modified. Marks the permission error as fatal.
621 (WebCore::Geolocation::handleError): Modified. If the error is fatal, stops watchers as well as one-shots.
622 * page/PositionError.h: Modified.
623 (WebCore::PositionError::setIsFatal): Added. Marks an error as fatal.
624 (WebCore::PositionError::isFatal): Added. Determines whether an error is fatal.
626 2009-09-09 Roland Steiner <rolandsteiner@google.com>
628 Reviewed by Eric Seidel.
630 Bug 28964 - [Chromium] ChromiumDataObject should have getter/setter interface
632 Added getter/setter methods and trivial inline implementations for each.
633 (Note that they are not yet actually used.)
634 Once the Chromium code is changed to use them instead of directly accessing the
635 member variables, the member variables should be made private and cleaned up.
637 No new tests (no functional behavior changed).
639 * platform/chromium/ChromiumDataObject.h:
640 (WebCore::ChromiumDataObject::mainURL):
641 (WebCore::ChromiumDataObject::setMainURL):
642 (WebCore::ChromiumDataObject::mainURLTitle):
643 (WebCore::ChromiumDataObject::setMainURLTitle):
644 (WebCore::ChromiumDataObject::textPlain):
645 (WebCore::ChromiumDataObject::setTextPlain):
646 (WebCore::ChromiumDataObject::textHTML):
647 (WebCore::ChromiumDataObject::setTextHTML):
648 (WebCore::ChromiumDataObject::htmlBaseURL):
649 (WebCore::ChromiumDataObject::setHTMLBaseURL):
650 (WebCore::ChromiumDataObject::content):
651 (WebCore::ChromiumDataObject::releaseContent):
652 (WebCore::ChromiumDataObject::setContent):
653 (WebCore::ChromiumDataObject::contentFileExtension):
654 (WebCore::ChromiumDataObject::setContentFileExtension):
655 (WebCore::ChromiumDataObject::contentFileName):
656 (WebCore::ChromiumDataObject::setContentFileName):
657 (WebCore::ChromiumDataObject::fileNames):
658 (WebCore::ChromiumDataObject::setFileNames):
659 (WebCore::ChromiumDataObject::takeFileNames):
661 2009-09-08 Pat Bradley <vincent.bradley@nokia.com>
663 Reviewed by Ariya Hidayat.
665 [Qt] locale date displays incorrect date format in symbian.
666 https://bugs.webkit.org/show_bug.cgi?id=29032
668 strftime() in Symbian does not support #
669 Layout tests cannot be run on Symbian yet, so they are not updated.
671 * runtime/DatePrototype.cpp:
672 (JSC::formatLocaleDate):
674 2009-09-09 Rohini Ananth <rohini.ananth@nokia.com>
676 Reviewed by Simon Hausmann.
678 NPAPI Plugin NPP_AsFile not working on Qt Webkit
679 https://bugs.webkit.org/show_bug.cgi?id=29068
681 * platform/qt/FileSystemQt.cpp:
682 (WebCore::openTemporaryFile)
683 Autoremove property of QTemporaryFile has been set to false. Hence closeFile() just closes and does not delete the file.
684 This solves the deletion of created temp file in PluginStream::destroyStream() before passing to plugin in NPP_AsFile.
686 2009-09-08 Oliver Hunt <oliver@apple.com>
688 Reviewed by NOBODY (Build fix).
690 Remove a few incorrect changes I left in.
692 * bindings/scripts/CodeGeneratorJS.pm:
694 2009-09-08 Oliver Hunt <oliver@apple.com>
696 Reviewed by Sam Weinig.
698 Support numeric index getters in bindings
699 https://bugs.webkit.org/show_bug.cgi?id=29067
701 Add HasNumericIndexGetter to indicate a non-custom getter that
702 returns a number. The numeric index getter also uses PropertySlot's
703 setValue rather than setCustomIndex to avoid an additional indirect
706 * bindings/js/JSCanvasByteArrayCustom.cpp:
707 * bindings/js/JSCanvasFloatArrayCustom.cpp:
708 * bindings/js/JSCanvasIntArrayCustom.cpp:
709 * bindings/js/JSCanvasShortArrayCustom.cpp:
710 * bindings/js/JSCanvasUnsignedByteArrayCustom.cpp:
711 * bindings/js/JSCanvasUnsignedIntArrayCustom.cpp:
712 * bindings/js/JSCanvasUnsignedShortArrayCustom.cpp:
713 * bindings/scripts/CodeGeneratorJS.pm:
714 * html/canvas/CanvasByteArray.h:
715 (WebCore::CanvasByteArray::item):
716 * html/canvas/CanvasByteArray.idl:
717 * html/canvas/CanvasFloatArray.h:
718 (WebCore::CanvasFloatArray::get):
719 (WebCore::CanvasFloatArray::item):
720 * html/canvas/CanvasFloatArray.idl:
721 * html/canvas/CanvasIntArray.h:
722 (WebCore::CanvasIntArray::get):
723 (WebCore::CanvasIntArray::item):
724 * html/canvas/CanvasIntArray.idl:
725 * html/canvas/CanvasPixelArray.idl:
726 * html/canvas/CanvasShortArray.h:
727 (WebCore::CanvasShortArray::get):
728 (WebCore::CanvasShortArray::item):
729 * html/canvas/CanvasShortArray.idl:
730 * html/canvas/CanvasUnsignedByteArray.h:
731 (WebCore::CanvasUnsignedByteArray::get):
732 (WebCore::CanvasUnsignedByteArray::item):
733 * html/canvas/CanvasUnsignedByteArray.idl:
734 * html/canvas/CanvasUnsignedIntArray.h:
735 (WebCore::CanvasUnsignedIntArray::get):
736 (WebCore::CanvasUnsignedIntArray::item):
737 * html/canvas/CanvasUnsignedIntArray.idl:
738 * html/canvas/CanvasUnsignedShortArray.h:
739 (WebCore::CanvasUnsignedShortArray::item):
740 * html/canvas/CanvasUnsignedShortArray.idl:
742 2009-09-08 Kevin Ollivier <kevino@theolliviers.com>
744 wx build fix for 2.8.
746 * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
747 (wxRenderer_DrawScrollbar):
749 2009-09-08 Jens Alfke <snej@chromium.org>
751 Reviewed by Eric Seidel.
753 In Mac Chromium, clicking below the last line of an editable area (textarea or
754 contenteditable) should put the caret at the end of the last line, as in Mac Safari.
756 Tests: LayoutTests/editing/selection/click-in-margins-inside-editable-div.html
757 LayoutTests/editing/selection/click-in-padding-with-multiple-line-boxes.html
760 (WebCore::Settings::Settings): Change #if PLATFORM_MAC to be Mac-Chrome-inclusive.
762 2009-09-08 Dave Hyatt <hyatt@apple.com>
764 Reviewed by Mark Rowe.
766 Make sure not to do an early return when a data URL stylesheet successfully loads. We need to still
767 clear the old cached sheet out of all existing Frames. Fixes the data URL stylesheet layout test failure.
770 (WebCore::Page::userStyleSheetLocationChanged):
772 2009-09-08 Sam Weinig <sam@webkit.org>
778 2009-09-08 Kevin Ollivier <kevino@theolliviers.com>
780 More robust wx build fix for 2.9.
782 * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
783 (wxRenderer_DrawScrollbar):
785 2009-09-08 Sam Weinig <sam@webkit.org>
787 Reviewed by Timothy Hatcher.
789 Fix for https://bugs.webkit.org/show_bug.cgi?id=27046
790 Implement CSSOM DocumentView.caretRangeFromPoint
792 Tests: fast/dom/Document/CaretRangeFromPoint/basic.html
793 fast/dom/Document/CaretRangeFromPoint/replace-element.html
796 (WebCore::Document::caretRangeFromPoint):
800 2009-09-08 Kevin Ollivier <kevino@theolliviers.com>
802 wx build fix, generate derived sources earlier in order to make sure
803 they're found by the build system when generating the list of sources to build.
807 2009-09-08 Nate Chapin <japhet@chromium.org>
809 Reviewed by Dimitri Glazkov.
811 <iterator> include in V8Proxy.h is spurious and causing ObjC compile issues for Chromium.
813 Test: Chromium mac canary build is fixed.
815 * bindings/v8/V8Proxy.h: Remove <iterator> include.
817 2009-09-08 Xan Lopez <xlopez@igalia.com>
819 Unreviewed attempt to fix the GTK+ build.
823 2009-09-04 Dave Hyatt <hyatt@apple.com>
825 Reviewed by Eric Seidel.
827 https://bugs.webkit.org/show_bug.cgi?id=28987, make the Document cache the page's user stylesheet in
828 parsed form. Allows the sheet to survive across destruction/re-creation of the CSSStyleSelector.
830 * css/CSSStyleSelector.cpp:
831 (WebCore::CSSStyleSelector::CSSStyleSelector):
832 * css/CSSStyleSelector.h:
834 (WebCore::Document::attach):
835 (WebCore::Document::pageUserSheet):
836 (WebCore::Document::clearPageUserSheet):
837 (WebCore::Document::recalcStyleSelector):
839 * loader/PlaceholderDocument.cpp:
840 (WebCore::PlaceholderDocument::attach):
842 (WebCore::Page::userStyleSheetLocationChanged):
844 (WebCore::Settings::setUserStyleSheetLocation):
846 2009-09-08 Kenneth Rohde Christiansen <kenneth@webkit.org>
850 Fix Qt build after 48167, by adding the new cpp/h files
851 added to WebCore.gypi to WebCore.pro as well.
855 2009-09-08 Xan Lopez <xlopez@igalia.com>
857 Reviewed by Gustavo Noronha.
859 should not pass URI fragments to libsoup
860 https://bugs.webkit.org/show_bug.cgi?id=28687
862 Strip the fragment from the URI before passing it to soup, since
863 it forwards it to servers in some cases (like when using a proxy)
864 which confuses them and makes them return 403/404.
866 * platform/network/soup/ResourceHandleSoup.cpp:
867 (WebCore::startHttp):
870 2009-09-08 Kenneth Rohde Christiansen <kenneth@webkit.org>
872 Reviewed by Simon Hausmann.
874 Add QGraphicsScene events support to the Qt platform events.
876 * platform/PlatformMouseEvent.h:
877 * platform/PlatformWheelEvent.h:
878 * platform/qt/PlatformMouseEventQt.cpp:
879 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
880 * platform/qt/WheelEventQt.cpp:
881 (WebCore::PlatformWheelEvent::applyDelta):
882 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
884 2009-09-08 Michael Nordman <michaeln@google.com>
886 Reviewed by Eric Seidel.
888 [Chromium] Cleanup: remove a few deprecated methods.
889 https://bugs.webkit.org/show_bug.cgi?id=28960
891 No new tests, just syntactic sugar.
893 * platform/network/chromium/ResourceRequest.h:
894 * platform/network/chromium/ResourceResponse.h:
896 2009-09-08 Yongjun Zhang <yongjun.zhang@nokia.com>
898 Reviewed by Ariya Hidayat.
900 https://bugs.webkit.org/show_bug.cgi?id=28981
902 [Qt] make npapi.h compile in winscw compiler.
904 Add XP_SYMBIAN macro to identify Symbian OS; this macro should be used for Symbian
905 specific changes in npapi.h.
906 Undefine XP_WIN when building for Symbian to avoid including Windows specific code.
910 2009-09-08 Oliver Hunt <oliver@apple.com>
912 Reviewed by Geoff Garen.
914 Web Inspector assertion failure related to marking
915 https://bugs.webkit.org/show_bug.cgi?id=28997
917 When wrapping the callback the JSInspectorCallbackWrapper creator was using
918 inheritorID for the prototype structure which is unsafe for anything other
919 than a pure JS object. Instead we now create a new structure, which while
920 inefficient is not problematic as this code is not hit frequently.
922 * bindings/js/JSInspectorCallbackWrapper.cpp:
923 (WebCore::JSInspectorCallbackWrapper::wrap):
925 2009-09-08 Kelly Norton <knorton@google.com>
927 Reviewed by Dimitri Glazkov.
929 Add missing extension to the file entry in WebCore.vcproj.
931 * WebCore.vcproj/WebCore.vcproj: Added "cpp".
933 2009-09-08 Jian Li <jianli@chromium.org>
935 Reviewed by David Levin.
937 dataTransfer.types() should not return Files if file list is empty in the clipboard.
938 https://bugs.webkit.org/show_bug.cgi?id=28891
940 We change the behavior to handle the empty file list in order to match the spec.
942 Tested by clipboard-file-access.html.
944 * platform/mac/ClipboardMac.mm:
945 (WebCore::addHTMLClipboardTypesForCocoaType):
946 (WebCore::ClipboardMac::types):
948 2009-09-08 Steve VanDeBogart <vandebo@chromium.org>
950 Reviewed by Eric Seidel.
952 Handle middle click in Chromium like QT
953 https://bugs.webkit.org/show_bug.cgi?id=28696
955 Tested by middle-click-onpaste.html.
957 * platform/Pasteboard.h:
958 * platform/chromium/ChromiumBridge.h:
959 * platform/chromium/ClipboardChromium.cpp:
960 (WebCore::ClipboardChromium::getData):
961 * platform/chromium/PasteboardChromium.cpp:
962 (WebCore::Pasteboard::Pasteboard):
963 (WebCore::Pasteboard::isSelectionMode):
964 (WebCore::Pasteboard::setSelectionMode):
965 (WebCore::Pasteboard::canSmartReplace):
966 (WebCore::Pasteboard::plainText):
967 (WebCore::Pasteboard::documentFragment):
968 * platform/chromium/PasteboardPrivate.h:
969 (WebCore::PasteboardPrivate::):
971 2009-09-08 Kelly Norton <knorton@google.com>
973 Reviewed by Eric Seidel.
975 WebInspector: Adds a timeline agent to InspectorController that collects
976 high-level timing data about event dispatch, layout, painting and HTML
977 parsing and makes it available to Inspector.
978 https://bugs.webkit.org/show_bug.cgi?id=25503
981 * WebCore.xcodeproj/project.pbxproj:
983 (WebCore::Document::recalcStyle):
985 (WebCore::Document::inspectorTimelineAgent):
987 (WebCore::Node::dispatchGenericEvent):
988 * html/HTMLTokenizer.cpp:
989 (WebCore::HTMLTokenizer::write):
990 * inspector/DOMDispatchTimelineItem.cpp: Added.
991 (WebCore::DOMDispatchTimelineItem::DOMDispatchTimelineItem):
992 (WebCore::DOMDispatchTimelineItem::convertToScriptObject):
993 * inspector/DOMDispatchTimelineItem.h: Added.
994 (WebCore::DOMDispatchTimelineItem::~DOMDispatchTimelineItem):
995 * inspector/InspectorBackend.cpp:
996 (WebCore::InspectorBackend::enableTimeline):
997 (WebCore::InspectorBackend::disableTimeline):
998 (WebCore::InspectorBackend::timelineEnabled):
999 * inspector/InspectorBackend.h:
1000 * inspector/InspectorBackend.idl:
1001 * inspector/InspectorController.cpp:
1002 (WebCore::InspectorController::setFrontendProxyObject):
1003 (WebCore::InspectorController::close):
1004 (WebCore::InspectorController::resetScriptObjects):
1005 (WebCore::InspectorController::enableTimeline):
1006 (WebCore::InspectorController::disableTimeline):
1007 (WebCore::InspectorController::timelineEnabled):
1008 * inspector/InspectorController.h:
1009 (WebCore::InspectorController::timelineAgent):
1010 * inspector/InspectorFrontend.cpp:
1011 (WebCore::InspectorFrontend::timelineWasEnabled):
1012 (WebCore::InspectorFrontend::timelineWasDisabled):
1013 (WebCore::InspectorFrontend::addItemToTimeline):
1014 * inspector/InspectorFrontend.h:
1015 * inspector/InspectorTimelineAgent.cpp: Added.
1016 (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1017 (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
1018 (WebCore::InspectorTimelineAgent::willDispatchDOMEvent):
1019 (WebCore::InspectorTimelineAgent::didDispatchDOMEvent):
1020 (WebCore::InspectorTimelineAgent::willLayout):
1021 (WebCore::InspectorTimelineAgent::didLayout):
1022 (WebCore::InspectorTimelineAgent::willRecalculateStyle):
1023 (WebCore::InspectorTimelineAgent::didRecalculateStyle):
1024 (WebCore::InspectorTimelineAgent::willPaint):
1025 (WebCore::InspectorTimelineAgent::didPaint):
1026 (WebCore::InspectorTimelineAgent::willWriteHTML):
1027 (WebCore::InspectorTimelineAgent::didWriteHTML):
1028 (WebCore::InspectorTimelineAgent::reset):
1029 (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
1030 (WebCore::InspectorTimelineAgent::currentTimeInMilliseconds):
1031 (WebCore::InspectorTimelineAgent::sessionTimeInMilliseconds):
1032 * inspector/InspectorTimelineAgent.h: Added.
1033 * inspector/TimelineItem.cpp: Added.
1034 (WebCore::TimelineItem::TimelineItem):
1035 (WebCore::TimelineItem::addToTimeline):
1036 (WebCore::TimelineItem::convertToScriptObject):
1037 (WebCore::TimelineItem::convertChildrenToScriptArray):
1038 (WebCore::TimelineItem::addChildItem):
1039 * inspector/TimelineItem.h: Added.
1041 (WebCore::TimelineItem::~TimelineItem):
1042 (WebCore::TimelineItem::previous):
1043 (WebCore::TimelineItem::releasePrevious):
1044 (WebCore::TimelineItem::setEndTime):
1045 (WebCore::TimelineItem::type):
1046 * inspector/front-end/TimelineAgent.js: Added.
1047 (WebInspector.TimelineAgent):
1048 (WebInspector.addItemToTimeline):
1049 (WebInspector.timelineWasEnabled):
1050 (WebInspector.timelineWasDisabled):
1051 * inspector/front-end/inspector.html:
1052 * page/FrameView.cpp:
1053 (WebCore::FrameView::layout):
1054 (WebCore::FrameView::paintContents):
1056 (WebCore::FrameView::inspectorTimelineAgent):
1058 (WebCore::Page::inspectorTimelineAgent):
1061 2009-09-08 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1063 Reviewed by Simon Hausmann.
1065 [Qt] Fix unused variable warnings
1066 https://bugs.webkit.org/show_bug.cgi?id=29018
1068 No functional change, no tests.
1070 * history/qt/HistoryItemQt.cpp:
1071 (WebCore::HistoryItem::restoreState):
1072 * platform/graphics/qt/ImageBufferQt.cpp:
1073 (WebCore::putImageData):
1074 * platform/qt/RenderThemeQt.cpp:
1075 (WebCore::RenderThemeQt::paintMenuList):
1077 2009-09-08 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1079 Reviewed by Ariya Hidayat.
1081 [Qt] Use the declaration order in initializer lists
1082 https://bugs.webkit.org/show_bug.cgi?id=29017
1084 No functional change, no new tests.
1086 * platform/graphics/qt/FontCacheQt.cpp:
1087 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1088 * platform/network/qt/QNetworkReplyHandler.cpp:
1089 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1091 2009-09-08 Kent Tamura <tkent@chromium.org>
1093 Reviewed by Eric Seidel.
1095 Implement ValidityState::typeMismatch() for <input type=number>.
1096 https://bugs.webkit.org/show_bug.cgi?id=28934
1098 Test: fast/forms/ValidityState-typeMismatch-number.html
1100 * html/HTMLInputElement.cpp:
1101 (WebCore::HTMLInputElement::formStringToDouble):
1102 * html/HTMLInputElement.h:
1103 * html/ValidityState.cpp:
1104 (WebCore::ValidityState::typeMismatch):
1105 * html/ValidityState.h:
1107 2009-09-08 Andras Becsi <becsi.andras@stud.u-szeged.hu>
1109 Reviewed by Gustavo Noronha.
1111 [Gtk] Another attempt of a buildfix.
1113 * GNUmakefile.am: Modified. Remove some extra IDL files added in r48153.
1115 2009-09-08 Kenneth Rohde Christiansen <kenneth@webkit.org>
1117 Reviewed by Simon Hausmann.
1119 [Qt] Make cursor set cleaner in QtWebKit Api: eliminate SetCursorEvent hack.
1120 https://bugs.webkit.org/show_bug.cgi?id=28865
1122 Save the QCursor as a property in WidgetQt::setCursor
1123 and actually change the cursor in QWebView::event() by making use
1124 of the QEvent::DynamicPropertyChange event type.
1125 When unsetCursor() is called on the QWidget we can fallback to
1126 the cursor set by WebCore.
1128 Patch by Kenneth Rohde Christiansen <kenneth@webkit.org> and
1129 Antonio Gomes <antonio.gomes@openbossa.org> on 2009-09-07
1131 * platform/qt/WidgetQt.cpp:
1132 (WebCore::Widget::setCursor):
1134 2009-09-08 Andras Becsi <becsi.andras@stud.u-szeged.hu>
1136 Reviewed by Gustavo Noronha.
1138 [Gtk] Buildfix for build error introduced in r48150.
1140 * GNUmakefile.am: Modified. Added missing IDL files.
1142 2009-09-08 Csaba Osztrogonac <oszi@inf.u-szeged.hu>
1144 Reviewed by Tor Arne Vestbø.
1146 [Qt] Buildfix. Build error caused by r48150.
1148 * WebCore.pro: missing IDL files added
1150 2009-09-07 Chris Marrin <cmarrin@apple.com>
1152 Reviewed by Oliver Hunt.
1154 Update Canvas 3D implementation to match spec
1155 https://bugs.webkit.org/show_bug.cgi?id=29010
1157 This adds several new CanvasXXXArray classes each of which has a custom constructor
1158 and custom getters and setters. Also changed CanvasRenderingContext3D and GraphicsContext3D
1159 to match the new and changed API.
1161 * DerivedSources.make:
1162 * WebCore.xcodeproj/project.pbxproj:
1163 * bindings/js/JSCanvasArrayBufferConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1164 * bindings/js/JSCanvasArrayBufferConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1165 * bindings/js/JSCanvasArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1166 * bindings/js/JSCanvasByteArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1167 * bindings/js/JSCanvasByteArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1168 * bindings/js/JSCanvasByteArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1169 * bindings/js/JSCanvasFloatArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1170 * bindings/js/JSCanvasFloatArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1171 * bindings/js/JSCanvasFloatArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1172 * bindings/js/JSCanvasIntArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1173 * bindings/js/JSCanvasIntArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1174 * bindings/js/JSCanvasIntArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1175 * bindings/js/JSCanvasRenderingContext3DCustom.cpp:
1176 (WebCore::JSCanvasRenderingContext3D::bufferData):
1177 (WebCore::JSCanvasRenderingContext3D::bufferSubData):
1178 (WebCore::JSCanvasRenderingContext3D::texImage2D):
1179 (WebCore::JSCanvasRenderingContext3D::texSubImage2D):
1180 * bindings/js/JSCanvasShortArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1181 * bindings/js/JSCanvasShortArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1182 * bindings/js/JSCanvasShortArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1183 * bindings/js/JSCanvasUnsignedByteArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1184 * bindings/js/JSCanvasUnsignedByteArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1185 * bindings/js/JSCanvasUnsignedByteArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1186 * bindings/js/JSCanvasUnsignedIntArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1187 * bindings/js/JSCanvasUnsignedIntArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1188 * bindings/js/JSCanvasUnsignedIntArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1189 * bindings/js/JSCanvasUnsignedShortArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1190 * bindings/js/JSCanvasUnsignedShortArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1191 * bindings/js/JSCanvasUnsignedShortArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1192 * bindings/js/JSDOMWindowCustom.cpp:
1193 (WebCore::JSDOMWindow::canvasArrayBuffer):
1194 (WebCore::JSDOMWindow::canvasByteArray):
1195 (WebCore::JSDOMWindow::canvasUnsignedByteArray):
1196 (WebCore::JSDOMWindow::canvasIntArray):
1197 (WebCore::JSDOMWindow::canvasUnsignedIntArray):
1198 (WebCore::JSDOMWindow::canvasShortArray):
1199 (WebCore::JSDOMWindow::canvasUnsignedShortArray):
1200 (WebCore::JSDOMWindow::canvasFloatArray):
1201 * html/HTMLCanvasElement.cpp:
1202 (WebCore::HTMLCanvasElement::getContext):
1203 (WebCore::HTMLCanvasElement::paint):
1204 * html/canvas/CanvasArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1205 * html/canvas/CanvasArray.h: Added with properties svn:eol-style and svn:mime-type.
1206 * html/canvas/CanvasArray.idl: Added.
1207 * html/canvas/CanvasArrayBuffer.cpp: Added with properties svn:eol-style and svn:mime-type.
1208 * html/canvas/CanvasArrayBuffer.h: Added with properties svn:eol-style and svn:mime-type.
1209 * html/canvas/CanvasArrayBuffer.idl: Added.
1210 * html/canvas/CanvasByteArray.cpp:
1211 * html/canvas/CanvasByteArray.h:
1212 * html/canvas/CanvasByteArray.idl:
1213 * html/canvas/CanvasFloatArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1214 * html/canvas/CanvasFloatArray.h: Added with properties svn:eol-style and svn:mime-type.
1215 * html/canvas/CanvasFloatArray.idl: Added.
1216 * html/canvas/CanvasIntArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1217 * html/canvas/CanvasIntArray.h: Added with properties svn:eol-style and svn:mime-type.
1218 * html/canvas/CanvasIntArray.idl: Added.
1219 * html/canvas/CanvasRenderingContext3D.cpp:
1220 (WebCore::CanvasRenderingContext3D::CanvasRenderingContext3D):
1221 (WebCore::CanvasRenderingContext3D::markContextChanged):
1222 (WebCore::CanvasRenderingContext3D::beginPaint):
1223 (WebCore::CanvasRenderingContext3D::endPaint):
1224 (WebCore::CanvasRenderingContext3D::reshape):
1225 (WebCore::CanvasRenderingContext3D::sizeInBytes):
1226 (WebCore::CanvasRenderingContext3D::bindTexture):
1227 (WebCore::CanvasRenderingContext3D::bufferData):
1228 (WebCore::CanvasRenderingContext3D::bufferSubData):
1229 (WebCore::CanvasRenderingContext3D::checkFramebufferStatus):
1230 (WebCore::CanvasRenderingContext3D::clear):
1231 (WebCore::CanvasRenderingContext3D::createBuffer):
1232 (WebCore::CanvasRenderingContext3D::createFramebuffer):
1233 (WebCore::CanvasRenderingContext3D::createTexture):
1234 (WebCore::CanvasRenderingContext3D::createProgram):
1235 (WebCore::CanvasRenderingContext3D::createRenderbuffer):
1236 (WebCore::CanvasRenderingContext3D::createShader):
1237 (WebCore::CanvasRenderingContext3D::deleteBuffer):
1238 (WebCore::CanvasRenderingContext3D::deleteFramebuffer):
1239 (WebCore::CanvasRenderingContext3D::deleteProgram):
1240 (WebCore::CanvasRenderingContext3D::deleteRenderbuffer):
1241 (WebCore::CanvasRenderingContext3D::deleteShader):
1242 (WebCore::CanvasRenderingContext3D::deleteTexture):
1243 (WebCore::CanvasRenderingContext3D::drawArrays):
1244 (WebCore::CanvasRenderingContext3D::drawElements):
1245 (WebCore::CanvasRenderingContext3D::getBoolean):
1246 (WebCore::CanvasRenderingContext3D::getBooleanv):
1247 (WebCore::CanvasRenderingContext3D::getBufferParameteri):
1248 (WebCore::CanvasRenderingContext3D::getBufferParameteriv):
1249 (WebCore::CanvasRenderingContext3D::getFloat):
1250 (WebCore::CanvasRenderingContext3D::getFloatv):
1251 (WebCore::CanvasRenderingContext3D::getFramebufferAttachmentParameteri):
1252 (WebCore::CanvasRenderingContext3D::getFramebufferAttachmentParameteriv):
1253 (WebCore::CanvasRenderingContext3D::getInteger):
1254 (WebCore::CanvasRenderingContext3D::getIntegerv):
1255 (WebCore::CanvasRenderingContext3D::getProgrami):
1256 (WebCore::CanvasRenderingContext3D::getProgramiv):
1257 (WebCore::CanvasRenderingContext3D::getProgramInfoLog):
1258 (WebCore::CanvasRenderingContext3D::getRenderbufferParameteri):
1259 (WebCore::CanvasRenderingContext3D::getRenderbufferParameteriv):
1260 (WebCore::CanvasRenderingContext3D::getShaderi):
1261 (WebCore::CanvasRenderingContext3D::getShaderiv):
1262 (WebCore::CanvasRenderingContext3D::getShaderInfoLog):
1263 (WebCore::CanvasRenderingContext3D::getShaderSource):
1264 (WebCore::CanvasRenderingContext3D::getTexParameterf):
1265 (WebCore::CanvasRenderingContext3D::getTexParameterfv):
1266 (WebCore::CanvasRenderingContext3D::getTexParameteri):
1267 (WebCore::CanvasRenderingContext3D::getTexParameteriv):
1268 (WebCore::CanvasRenderingContext3D::getUniformf):
1269 (WebCore::CanvasRenderingContext3D::getUniformfv):
1270 (WebCore::CanvasRenderingContext3D::getUniformi):
1271 (WebCore::CanvasRenderingContext3D::getUniformiv):
1272 (WebCore::CanvasRenderingContext3D::getUniformLocation):
1273 (WebCore::CanvasRenderingContext3D::getVertexAttribf):
1274 (WebCore::CanvasRenderingContext3D::getVertexAttribfv):
1275 (WebCore::CanvasRenderingContext3D::getVertexAttribi):
1276 (WebCore::CanvasRenderingContext3D::getVertexAttribiv):
1277 (WebCore::CanvasRenderingContext3D::getVertexAttribOffset):
1278 (WebCore::CanvasRenderingContext3D::texImage2D):
1279 (WebCore::CanvasRenderingContext3D::texParameterf):
1280 (WebCore::CanvasRenderingContext3D::texParameteri):
1281 (WebCore::CanvasRenderingContext3D::texSubImage2D):
1282 (WebCore::CanvasRenderingContext3D::uniform1f):
1283 (WebCore::CanvasRenderingContext3D::uniform1fv):
1284 (WebCore::CanvasRenderingContext3D::uniform1i):
1285 (WebCore::CanvasRenderingContext3D::uniform1iv):
1286 (WebCore::CanvasRenderingContext3D::uniform2f):
1287 (WebCore::CanvasRenderingContext3D::uniform2fv):
1288 (WebCore::CanvasRenderingContext3D::uniform2i):
1289 (WebCore::CanvasRenderingContext3D::uniform2iv):
1290 (WebCore::CanvasRenderingContext3D::uniform3f):
1291 (WebCore::CanvasRenderingContext3D::uniform3fv):
1292 (WebCore::CanvasRenderingContext3D::uniform3i):
1293 (WebCore::CanvasRenderingContext3D::uniform3iv):
1294 (WebCore::CanvasRenderingContext3D::uniform4f):
1295 (WebCore::CanvasRenderingContext3D::uniform4fv):
1296 (WebCore::CanvasRenderingContext3D::uniform4i):
1297 (WebCore::CanvasRenderingContext3D::uniform4iv):
1298 (WebCore::CanvasRenderingContext3D::uniformMatrix2fv):
1299 (WebCore::CanvasRenderingContext3D::uniformMatrix3fv):
1300 (WebCore::CanvasRenderingContext3D::uniformMatrix4fv):
1301 (WebCore::CanvasRenderingContext3D::useProgram):
1302 (WebCore::CanvasRenderingContext3D::validateProgram):
1303 (WebCore::CanvasRenderingContext3D::vertexAttrib1f):
1304 (WebCore::CanvasRenderingContext3D::vertexAttrib1fv):
1305 (WebCore::CanvasRenderingContext3D::vertexAttrib2f):
1306 (WebCore::CanvasRenderingContext3D::vertexAttrib2fv):
1307 (WebCore::CanvasRenderingContext3D::vertexAttrib3f):
1308 (WebCore::CanvasRenderingContext3D::vertexAttrib3fv):
1309 (WebCore::CanvasRenderingContext3D::vertexAttrib4f):
1310 (WebCore::CanvasRenderingContext3D::vertexAttrib4fv):
1311 (WebCore::CanvasRenderingContext3D::vertexAttribPointer):
1312 (WebCore::CanvasRenderingContext3D::viewport):
1313 * html/canvas/CanvasRenderingContext3D.h:
1314 * html/canvas/CanvasRenderingContext3D.idl:
1315 * html/canvas/CanvasShortArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1316 * html/canvas/CanvasShortArray.h: Added with properties svn:eol-style and svn:mime-type.
1317 * html/canvas/CanvasShortArray.idl: Added.
1318 * html/canvas/CanvasTexture.cpp:
1319 (WebCore::CanvasTexture::CanvasTexture):
1320 * html/canvas/CanvasTexture.h:
1321 (WebCore::CanvasTexture::isCubeMapRWrapModeInitialized):
1322 (WebCore::CanvasTexture::setCubeMapRWrapModeInitialized):
1323 * html/canvas/CanvasUnsignedByteArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1324 * html/canvas/CanvasUnsignedByteArray.h: Added with properties svn:eol-style and svn:mime-type.
1325 * html/canvas/CanvasUnsignedByteArray.idl: Added.
1326 * html/canvas/CanvasUnsignedIntArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1327 * html/canvas/CanvasUnsignedIntArray.h: Added with properties svn:eol-style and svn:mime-type.
1328 * html/canvas/CanvasUnsignedIntArray.idl: Added.
1329 * html/canvas/CanvasUnsignedShortArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1330 * html/canvas/CanvasUnsignedShortArray.h: Added with properties svn:eol-style and svn:mime-type.
1331 * html/canvas/CanvasUnsignedShortArray.idl: Added.
1332 * page/DOMWindow.idl:
1333 * platform/graphics/GraphicsContext3D.h:
1334 * platform/graphics/mac/GraphicsContext3DMac.cpp:
1335 (WebCore::GraphicsContext3D::beginPaint):
1336 (WebCore::GraphicsContext3D::endPaint):
1337 (WebCore::GraphicsContext3D::bindTexture):
1338 (WebCore::GraphicsContext3D::bufferData):
1339 (WebCore::GraphicsContext3D::bufferSubData):
1340 (WebCore::GraphicsContext3D::checkFramebufferStatus):
1341 (WebCore::GraphicsContext3D::drawArrays):
1342 (WebCore::GraphicsContext3D::drawElements):
1343 (WebCore::GraphicsContext3D::texParameterf):
1344 (WebCore::GraphicsContext3D::texParameteri):
1345 (WebCore::GraphicsContext3D::uniform1f):
1346 (WebCore::GraphicsContext3D::uniform1fv):
1347 (WebCore::GraphicsContext3D::uniform2f):
1348 (WebCore::GraphicsContext3D::uniform2fv):
1349 (WebCore::GraphicsContext3D::uniform3f):
1350 (WebCore::GraphicsContext3D::uniform3fv):
1351 (WebCore::GraphicsContext3D::uniform4f):
1352 (WebCore::GraphicsContext3D::uniform4fv):
1353 (WebCore::GraphicsContext3D::uniform1i):
1354 (WebCore::GraphicsContext3D::uniform1iv):
1355 (WebCore::GraphicsContext3D::uniform2i):
1356 (WebCore::GraphicsContext3D::uniform2iv):
1357 (WebCore::GraphicsContext3D::uniform3i):
1358 (WebCore::GraphicsContext3D::uniform3iv):
1359 (WebCore::GraphicsContext3D::uniform4i):
1360 (WebCore::GraphicsContext3D::uniform4iv):
1361 (WebCore::GraphicsContext3D::uniformMatrix2fv):
1362 (WebCore::GraphicsContext3D::uniformMatrix3fv):
1363 (WebCore::GraphicsContext3D::uniformMatrix4fv):
1364 (WebCore::GraphicsContext3D::vertexAttrib1f):
1365 (WebCore::GraphicsContext3D::vertexAttrib1fv):
1366 (WebCore::GraphicsContext3D::vertexAttrib2f):
1367 (WebCore::GraphicsContext3D::vertexAttrib2fv):
1368 (WebCore::GraphicsContext3D::vertexAttrib3f):
1369 (WebCore::GraphicsContext3D::vertexAttrib3fv):
1370 (WebCore::GraphicsContext3D::vertexAttrib4f):
1371 (WebCore::GraphicsContext3D::vertexAttrib4fv):
1372 (WebCore::GraphicsContext3D::vertexAttribPointer):
1373 (WebCore::GraphicsContext3D::getBoolean):
1374 (WebCore::GraphicsContext3D::getBooleanv):
1375 (WebCore::GraphicsContext3D::getFloat):
1376 (WebCore::GraphicsContext3D::getFloatv):
1377 (WebCore::GraphicsContext3D::getInteger):
1378 (WebCore::GraphicsContext3D::getIntegerv):
1379 (WebCore::GraphicsContext3D::getBufferParameteri):
1380 (WebCore::GraphicsContext3D::getBufferParameteriv):
1381 (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteri):
1382 (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
1383 (WebCore::GraphicsContext3D::getProgrami):
1384 (WebCore::GraphicsContext3D::getProgramiv):
1385 (WebCore::GraphicsContext3D::getRenderbufferParameteri):
1386 (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
1387 (WebCore::GraphicsContext3D::getShaderi):
1388 (WebCore::GraphicsContext3D::getShaderiv):
1389 (WebCore::GraphicsContext3D::getTexParameterf):
1390 (WebCore::GraphicsContext3D::getTexParameterfv):
1391 (WebCore::GraphicsContext3D::getTexParameteri):
1392 (WebCore::GraphicsContext3D::getTexParameteriv):
1393 (WebCore::GraphicsContext3D::getUniformf):
1394 (WebCore::GraphicsContext3D::getUniformfv):
1395 (WebCore::GraphicsContext3D::getUniformi):
1396 (WebCore::GraphicsContext3D::getUniformiv):
1397 (WebCore::GraphicsContext3D::getVertexAttribf):
1398 (WebCore::GraphicsContext3D::getVertexAttribfv):
1399 (WebCore::GraphicsContext3D::getVertexAttribi):
1400 (WebCore::GraphicsContext3D::getVertexAttribiv):
1401 (WebCore::GraphicsContext3D::getVertexAttribOffset):
1402 (WebCore::GraphicsContext3D::texImage2D):
1403 (WebCore::GraphicsContext3D::texSubImage2D):
1404 (WebCore::GraphicsContext3D::sizeInBytes):
1406 2009-09-08 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
1408 Reviewed by Timothy Hatcher.
1410 Make m_windowVisible more consistent with the actual visibility of the inspector.
1412 * inspector/InspectorController.cpp:
1413 (WebCore::InspectorController::setWindowVisible):
1415 2009-09-07 Adam Barth <abarth@webkit.org>
1417 Unreviewed speculative build fix for Snow Leopard.
1419 * platform/GeolocationService.cpp:
1420 (WebCore::createGeolocationServiceNull):
1422 2009-09-07 Steve Block <steveblock@google.com>
1424 Reviewed by Adam Barth.
1426 Adds a mock Geolocation service. This will be used to provide predictable behavior of the
1427 Geolocation API for use in LayoutTests. Later changes will integrate the the mock
1428 Geolocation service with DumpRenderTree.
1429 https://bugs.webkit.org/show_bug.cgi?id=28264
1431 The mock Geolocation service returns a fixed position or error. This position or error can be
1432 set through static methods on the GeolocationService class. The position or error is shared
1433 between all instances of the mock Geolocation service.
1435 Implementation details.
1436 The GeolocationService object maintains a pointer to a factory function which it uses to create
1437 Geolocation service instances. Each platform implementing Geolocation sets this pointer
1438 to the factory function for their platform's implementation. When the mock Geolocation service
1439 is activated, the factory function pointer is reset to the factory function for the mock service.
1441 Test: fast/dom/Geolocation/error.html
1443 * WebCore.base.exp: Modified. Exports GeolocationServiceMock methods.
1444 * GNUMakefile.am: Modified. Added GeolocationServiceMock files.
1445 * WebCore.gypi: Modified. Added GeolocationServiceMock files.
1446 * WebCore.pro: Modified. Added GeolocationServiceMock files.
1447 * WebCore.vcproj/WebCore.vcproj: Modified. Added GeolocationServiceMock files.
1448 * WebCore.vcproj/WebCoreCommon.vsprops: Modified. Added mock directory to includes.
1449 * WebCore.xcodeproj/project.pbxproj: Modified. Added GeolocationServiceMock files and exports some headers.
1450 * WebCoreSources.bkl: Modified. Added GeolocationServiceMock files.
1451 * page/ChromeClient.h: Modified. Fixed comment.
1452 * page/Geolocation.cpp: Modified.
1453 (WebCore::Geolocation::setIsAllowed): Modified. Fixed error string.
1454 * platform/GeolocationService.cpp: Modified.
1455 (WebCore::createGeolocationServiceNull): Added. Returns null in place of a Geolocation service. Used to avoid link errors on platforms where Geolocation is not implemented.
1456 (WebCore::GeolocationService::create): Added. Uses the factory function pointer to create a Geolocation service implementation.
1457 (WebCore::GeolocationService::useMock): Added. Configures the GeolocationServie to use the mock implementation.
1458 * platform/GeolocationService.h: Modified.
1459 * platform/mock: Added.
1460 * platform/mock/GeolocationServiceMock.cpp: Added.
1461 (WebCore::GeolocationServiceMock::create): Added. Creates a GeolocationServiceMock object.
1462 (WebCore::GeolocationServiceMock::GeolocationServiceMock): Added. Constructor.
1463 (WebCore::GeolocationServiceMock::~GeolocationServiceMock): Added. Destructor.
1464 (WebCore::GeolocationServiceMock::setPosition): Added. Sets the position that will be returned by the object.
1465 (WebCore::GeolocationServiceMock::setError): Added. Sets the error that will be returned by the object.
1466 (WebCore::GeolocationServiceMock::startUpdating): Added. GeolocationService implementation. Starts the service.
1467 (WebCore::GeolocationServiceMock::stopUpdating): Added. GeolocationService implementation. Stops the service.
1468 (WebCore::GeolocationServiceMock::timerFired): Added. Used to provide an asynchronous callback when the service is started.
1469 (WebCore::GeolocationServiceMock::makeGeolocationCallbackFromAllInstances): Added. Used to call back when the position or error is updated.
1470 (WebCore::GeolocationServiceMock::makeGeolocationCallback): Added. Used to call back when the service starts.
1471 (WebCore::GeolocationServiceMock::initStatics): Added. Initializes statics members with constructors.
1472 (WebCore::GeolocationServiceMock::cleanUpStatics): Added. Cleans up static members with constructors.
1473 * platform/mock/GeolocationServiceMock.h: Added.
1474 (WebCore::GeolocationServiceMock::lastPosition): Added. Returns the fixed position.
1475 (WebCore::GeolocationServiceMock::lastError): Added. Returns the fixed error.
1476 * platform/gtk/GeolocationServiceGtk.cpp: Modified.
1477 (WebCore::GeolocationServiceGtk::create): Added. Creates an instance of GeolocationServiceGtk.
1478 * platform/gtk/GeolocationServiceGtk.h: Modified.
1479 * platform/mac/GeolocationServiceMac.h: Modified.
1480 * platform/mac/GeolocationServiceMac.mm: Modified.
1481 (WebCore::GeolocationServiceMac::create): Added. Creates an instance of GeolocationServiceMac.
1483 2009-09-07 Adam Barth <abarth@webkit.org>
1485 Reviewed by Dimitri Glazkov.
1487 https://bugs.webkit.org/show_bug.cgi?id=28985
1489 We need to be slightly more careful about how we pick up a script
1490 execution context. In particular, we were getting the wrong document
1491 for frames that had been navigated somewhere else.
1493 In the long term, we should think about a better algorithm for
1494 computing the script context.
1496 Fixes LayoutTests/http/tests/xmlhttprequest/detaching-frame-2.html
1498 * bindings/v8/V8Proxy.cpp:
1499 (WebCore::V8Proxy::retrieveFrame):
1501 2009-09-07 Kevin Ollivier <kevino@theolliviers.com>
1503 wx build fix for 2.8 compilation.
1505 * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
1506 (wxRenderer_DrawScrollbar):
1508 2009-09-07 Drew Wilson <atwilson@google.com>
1510 Unreviewed build fix.
1512 Reverting r48121 to fix Windows build errors.
1514 * DerivedSources.cpp:
1516 * WebCore.xcodeproj/project.pbxproj:
1517 * bindings/js/JSDOMWindowCustom.cpp:
1518 * bindings/js/JSEventTarget.cpp:
1520 (WebCore::toEventTarget):
1521 * dom/EventTarget.cpp:
1522 * dom/EventTarget.h:
1523 * page/DOMWindow.idl:
1524 * websockets/WebSocket.cpp:
1525 (WebCore::WebSocket::connect):
1526 (WebCore::WebSocket::send):
1527 (WebCore::WebSocket::close):
1528 (WebCore::WebSocket::bufferedAmount):
1529 (WebCore::WebSocket::addEventListener):
1530 (WebCore::WebSocket::removeEventListener):
1531 (WebCore::WebSocket::dispatchEvent):
1532 (WebCore::WebSocket::didConnect):
1533 (WebCore::WebSocket::didReceiveMessage):
1534 (WebCore::WebSocket::didClose):
1535 (WebCore::WebSocket::dispatchOpenEvent):
1536 (WebCore::WebSocket::dispatchMessageEvent):
1537 (WebCore::WebSocket::dispatchCloseEvent):
1538 * websockets/WebSocket.h:
1539 (WebCore::WebSocket::create):
1540 (WebCore::WebSocket::):
1541 (WebCore::WebSocket::setOnopen):
1542 (WebCore::WebSocket::onopen):
1543 (WebCore::WebSocket::setOnmessage):
1544 (WebCore::WebSocket::onmessage):
1545 (WebCore::WebSocket::setOnclose):
1546 (WebCore::WebSocket::onclose):
1547 (WebCore::WebSocket::toWebSocket):
1548 (WebCore::WebSocket::refEventTarget):
1549 (WebCore::WebSocket::derefEventTarget):
1550 * websockets/WebSocketChannel.cpp: Removed.
1551 * websockets/WebSocketChannel.h: Removed.
1552 * websockets/WebSocketChannelClient.h: Removed.
1553 * websockets/WebSocketHandshake.cpp: Removed.
1554 * websockets/WebSocketHandshake.h: Removed.
1556 2009-09-07 Drew Wilson <atwilson@google.com>
1558 Unreviewed speculative build fix.
1560 Reverted previous build fix as it didn't fix the problem.
1562 * bindings/js/JSEventTarget.cpp:
1563 (WebCore::toEventTarget):
1565 2009-09-07 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1567 Unreviewed, build fix.
1569 [Qt] Fix build after SHARED_WORKERS are enabled by default (r48131)
1573 2009-09-07 Drew Wilson <atwilson@google.com>
1575 Unreviewed build fix.
1577 Temporarily removed depenency between JSEventTarget.cpp and WebSocket.h in an attempt to fix a windows build break.
1579 * bindings/js/JSEventTarget.cpp:
1580 (WebCore::toEventTarget):
1582 2009-09-07 Drew Wilson <atwilson@google.com>
1584 Reviewed by David Levin.
1586 Enable SHARED_WORKERS by default.
1587 https://bugs.webkit.org/show_bug.cgi?id=28959
1589 Tests (enabled in a separate patch):
1590 fast/workers/shared-worker-constructor.html
1591 fast/workers/shared-worker-context-gc.html
1592 fast/workers/shared-worker-event-listener.html
1593 fast/workers/shared-worker-exception.html
1594 fast/workers/shared-worker-frame-lifecycle.html
1595 fast/workers/shared-worker-gc.html
1596 fast/workers/shared-worker-lifecycle.html
1597 fast/workers/shared-worker-load-error.html
1598 fast/workers/shared-worker-location.html
1599 fast/workers/shared-worker-navigator.html
1600 fast/workers/shared-worker-replace-global-constructor.html
1601 fast/workers/shared-worker-replace-self.html
1602 fast/workers/shared-worker-shared.html
1603 fast/workers/shared-worker-simple.html
1604 http/tests/workers/shared-worker-importScripts.html
1605 http/tests/workers/shared-worker-redirect.html
1606 http/tests/xmlhttprequest/workers/shared-worker-close.html
1607 http/tests/xmlhttprequest/workers/shared-worker-methods-async.html
1608 http/tests/xmlhttprequest/workers/shared-worker-methods.html
1609 http/tests/xmlhttprequest/workers/shared-worker-xhr-file-not-found.html
1611 * config.h: Removed some whitespace/touched the file to force a full rebuild on the build-bots.
1612 * Configurations/FeatureDefines.xcconfig:
1614 * WebCore.vcproj/WebCoreCommon.vsprops:
1615 * WebCore.vcproj/build-generated-files.sh:
1616 * dom/DOMWindow.idl: Removed unnecessary whitespace to force a rebuild on the build-bots to pickup the flag change.
1617 * workers/DefaultSharedWorkerRepository.cpp:
1618 (WebCore::SharedWorkerScriptLoader::load):
1619 Clean up bitrot in SharedWorker code - DenyCrossOriginRedirect is now DenyCrossOriginRequests.
1620 * workers/SharedWorkerContext.cpp:
1621 (WebCore::SharedWorkerContext::dispatchConnect):
1622 Clean up bitrot - updated SharedWorker code to reflect new MessageEvent API.
1624 2009-09-07 Xan Lopez <xlopez@igalia.com>
1626 Unreviewed build fix.
1628 Add new file to sources list.
1632 2009-09-07 Kevin Ollivier <kevino@theolliviers.com>
1634 wx build fixes for wx SVN trunk.
1637 * platform/wx/RenderThemeWx.cpp:
1638 (WebCore::RenderThemeWx::paintButton):
1639 * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
1640 (WebCore::drawTextWithSpacing):
1641 * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
1642 (wxRenderer_DrawScrollbar):
1644 2009-09-07 Chris Hills <chaz@chaz6.com>
1646 Reviewed by Tor Arne Vestbø.
1648 [Qt] Use direct includes for Phonon, not the pretty ones
1650 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1652 2009-09-07 Fumitoshi Ukai <ukai@chromium.org>
1654 Reviewed by Alexey Proskuryakov.
1656 WebSocket API implementation.
1657 https://bugs.webkit.org/show_bug.cgi?id=28038
1659 Add build systems only for GNUmakefile.am and WebCore.xcodeproj now.
1660 Other build systems will be updated once the code is functional.
1661 Tests will be landed once the code is completed and functional.
1663 * DerivedSources.cpp:
1665 * WebCore.xcodeproj/project.pbxproj:
1666 * bindings/js/JSDOMWindowCustom.cpp:
1667 (WebCore::JSDOMWindow::webSocket):
1668 * bindings/js/JSEventTarget.cpp:
1670 (WebCore::toEventTarget):
1671 * dom/EventTarget.cpp:
1672 (WebCore::EventTarget::toWebSocket):
1673 * dom/EventTarget.h:
1674 * page/DOMWindow.idl:
1675 * websockets/WebSocket.cpp:
1676 (WebCore::ProcessWebSocketEventTask::create):
1677 (WebCore::ProcessWebSocketEventTask::performTask):
1678 (WebCore::ProcessWebSocketEventTask::ProcessWebSocketEventTask):
1679 (WebCore::isValidProtocolString):
1680 (WebCore::WebSocket::connect):
1681 (WebCore::WebSocket::send):
1682 (WebCore::WebSocket::close):
1683 (WebCore::WebSocket::bufferedAmount):
1684 (WebCore::WebSocket::addEventListener):
1685 (WebCore::WebSocket::removeEventListener):
1686 (WebCore::WebSocket::dispatchEvent):
1687 (WebCore::WebSocket::didConnect):
1688 (WebCore::WebSocket::didReceiveMessage):
1689 (WebCore::WebSocket::didClose):
1690 (WebCore::WebSocket::dispatchOpenEvent):
1691 (WebCore::WebSocket::dispatchMessageEvent):
1692 (WebCore::WebSocket::dispatchCloseEvent):
1693 * websockets/WebSocket.h:
1694 (WebCore::WebSocket::create):
1695 (WebCore::WebSocket::):
1696 (WebCore::WebSocket::setOnopen):
1697 (WebCore::WebSocket::onopen):
1698 (WebCore::WebSocket::setOnmessage):
1699 (WebCore::WebSocket::onmessage):
1700 (WebCore::WebSocket::setOnclose):
1701 (WebCore::WebSocket::onclose):
1702 (WebCore::WebSocket::toWebSocket):
1703 (WebCore::WebSocket::eventListeners):
1704 (WebCore::WebSocket::refEventTarget):
1705 (WebCore::WebSocket::derefEventTarget):
1706 * websockets/WebSocketChannel.cpp: Added.
1707 * websockets/WebSocketChannel.h: Added.
1708 * websockets/WebSocketChannelClient.h: Added.
1709 * websockets/WebSocketHandshake.cpp: Added.
1710 * websockets/WebSocketHandshake.h: Added.
1712 2009-09-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
1714 Reviewed by Xan Lopez.
1716 https://bugs.webkit.org/show_bug.cgi?id=26854
1717 [GTK] Needs API to allow more control over outgoing requests
1719 Add infrastructure required to provide the new
1720 WebKitNetworkResponse object in our API.
1722 * GNUmakefile.am: Add new files to the build.
1723 * platform/network/soup/ResourceRequestSoup.cpp:
1724 (WebCore::ResourceRequest::updateFromSoupMessage):
1725 * platform/network/soup/ResourceResponse.h:
1726 * platform/network/soup/ResourceResponseSoup.cpp: Added.
1727 (WebCore::ResourceResponse::toSoupMessage):
1729 2009-09-07 Mads Ager <ager@chromium.org>
1731 Reviewed by Adam Barth.
1733 [V8] Cleanup document/frame null-checking in V8DOMWindowCustom.cpp
1734 https://bugs.webkit.org/show_bug.cgi?id=29009
1736 Be consistent in document and frame null checks.
1738 * bindings/v8/custom/V8DOMWindowCustom.cpp:
1739 (WebCore::V8Custom::WindowSetTimeoutImpl):
1740 (WebCore::ACCESSOR_GETTER):
1741 (WebCore::ACCESSOR_SETTER):
1742 (WebCore::CALLBACK_FUNC_DECL):
1743 (WebCore::NAMED_PROPERTY_GETTER):
1744 (WebCore::V8Custom::ClearTimeoutImpl):
1746 2009-09-07 Xan Lopez <xlopez@igalia.com>
1748 Reviewed by Gustavo Noronha.
1750 [Soup] Limit the number of connections
1751 https://bugs.webkit.org/show_bug.cgi?id=18431
1753 Increase the maximum number of per host and total connections to
1754 similar values than those used by the other modern browsers. Seems
1755 to significantly improve page loading time in many cases.
1757 * platform/network/soup/ResourceHandleSoup.cpp:
1758 (WebCore::ensureSessionIsInitialized):
1760 2009-09-07 Michael Nordman <michaeln@google.com>
1762 Reviewed by Darin Fisher.
1764 Various minor chromium appcache modifications.
1765 https://bugs.webkit.org/show_bug.cgi?id=28960
1769 * bindings/v8/custom/V8DOMApplicationCacheCustom.cpp:
1770 Fix a null pointer exception.
1771 (WebCore::ACCESSOR_GETTER):
1772 * platform/network/chromium/ResourceRequest.h:
1773 Switch from appCache 'context' to 'host' terminology.
1774 Note: leaving the old deprecated accessors in place until the matching
1775 change in chrome is landed to use the new accessors.
1776 (WebCore::ResourceRequest::ResourceRequest):
1777 (WebCore::ResourceRequest::appCacheHostID):
1778 (WebCore::ResourceRequest::setAppCacheHostID):
1779 (WebCore::ResourceRequest::appCacheContextID):
1780 (WebCore::ResourceRequest::setAppCacheContextID):
1781 * platform/network/chromium/ResourceResponse.h:
1782 Add an appCacheManifestURL getter/setter.
1783 Drop the 'get' prefix from the appCacheID getter.
1784 Note: leaving the old deprecated 'get' prefixed accessor in place until the matching
1785 change in chrome is landed to use the new accessor.
1786 (WebCore::ResourceResponse::appCacheID):
1787 (WebCore::ResourceResponse::appCacheManifestURL):
1788 (WebCore::ResourceResponse::setAppCacheManifestURL):
1789 (WebCore::ResourceResponse::getAppCacheID):
1791 2009-09-07 Michael Nordman <michaeln@google.com>
1793 Reviewed by Alexey Proskuryakov.
1795 https://bugs.webkit.org/show_bug.cgi?id=28359
1796 Cleanup: Undo some accidental changes around DOMApplicationCache.
1797 - Restore support for constructing a DOMApplicationCache object with a null frame ptr.
1798 - Return a non-null object for window.applicationCache when the feature is disabled.
1799 - Simplify the swapCache method.
1801 Test: http/tests/appcache/disabled.html
1803 * loader/appcache/DOMApplicationCache.cpp:
1804 (WebCore::DOMApplicationCache::DOMApplicationCache):
1805 (WebCore::DOMApplicationCache::swapCache):
1806 (WebCore::DOMApplicationCache::scriptExecutionContext):
1807 * loader/appcache/DOMApplicationCache.h:
1808 * page/DOMWindow.cpp:
1809 (WebCore::DOMWindow::applicationCache):
1811 2009-09-06 Yael Aharon <yael.aharon@nokia.com>
1813 Reviewed by Darin Adler.
1815 hostname and host are mixed up when manipulating anchor elements.
1816 https://bugs.webkit.org/show_bug.cgi?id=28954
1818 handle the case of port 0.
1820 * html/HTMLAnchorElement.cpp:
1821 (WebCore::HTMLAnchorElement::host):
1823 2009-09-06 Erik Arvidsson <arv@chromium.org>
1825 Reviewed by Eric Seidel.
1827 Make hidden elements not focusable.
1829 Clean up supportsFocus and isFocusable.
1830 supportsFocus now strictly means that the node can be focused by default.
1831 This is true for links, form controls and content editable elements for example.
1832 isFocusable means that the user can actually focus it.
1833 All (2) calls to supportsFocus have been updated to take this into account.
1835 Make a elements without href work correctly as well.
1837 https://bugs.webkit.org/show_bug.cgi?id=27099
1839 Tests: fast/events/click-focus-anchor.html
1840 fast/events/tab-focus-anchor.html
1841 fast/events/tab-focus-hidden.html
1844 (WebCore::Element::focus):
1846 (WebCore::Node::supportsFocus):
1847 (WebCore::Node::isFocusable):
1849 * html/HTMLAnchorElement.cpp:
1850 (WebCore::HTMLAnchorElement::supportsFocus):
1851 (WebCore::HTMLAnchorElement::isMouseFocusable):
1852 (WebCore::HTMLAnchorElement::isKeyboardFocusable):
1853 * html/HTMLAnchorElement.h:
1854 * html/HTMLAreaElement.cpp:
1855 (WebCore::HTMLAreaElement::supportsFocus):
1856 * html/HTMLAreaElement.h:
1857 * html/HTMLElement.cpp:
1858 (WebCore::HTMLElement::supportsFocus):
1859 * html/HTMLElement.h:
1860 * html/HTMLFieldSetElement.cpp:
1861 (WebCore::HTMLFieldSetElement::supportsFocus):
1862 * html/HTMLFieldSetElement.h:
1863 * html/HTMLFormControlElement.cpp:
1864 (WebCore::HTMLFormControlElement::supportsFocus):
1865 (WebCore::HTMLFormControlElement::isFocusable):
1866 * html/HTMLFrameElementBase.cpp:
1867 (WebCore::HTMLFrameElementBase::supportsFocus):
1868 * html/HTMLFrameElementBase.h:
1869 * html/HTMLLegendElement.cpp:
1870 (WebCore::HTMLLegendElement::supportsFocus):
1871 * html/HTMLLegendElement.h:
1872 * html/HTMLOptGroupElement.cpp:
1873 (WebCore::HTMLOptGroupElement::supportsFocus):
1874 (WebCore::HTMLOptGroupElement::isFocusable):
1875 * html/HTMLOptGroupElement.h:
1876 * html/HTMLOptionElement.cpp:
1877 (WebCore::HTMLOptionElement::supportsFocus):
1878 (WebCore::HTMLOptionElement::isFocusable):
1879 * html/HTMLOptionElement.h:
1880 * page/EventHandler.cpp:
1881 (WebCore::EventHandler::dispatchMouseEvent):
1882 * page/FocusController.cpp:
1883 (WebCore::FocusController::advanceFocus):
1884 * svg/SVGAElement.cpp:
1885 (WebCore::SVGAElement::supportsFocus):
1886 (WebCore::SVGAElement::isFocusable):
1887 * wml/WMLAElement.cpp:
1888 (WebCore::WMLAElement::supportsFocus):
1889 * wml/WMLAElement.h:
1890 * wml/WMLFormControlElement.cpp:
1891 (WebCore::WMLFormControlElement::supportsFocus):
1892 (WebCore::WMLFormControlElement::isFocusable):
1893 * wml/WMLFormControlElement.h:
1895 2009-09-06 Joel Stanley <joel@jms.id.au>
1897 Reviewed by Dimitri Glazkov.
1899 Expose functions to set the caret blink interval for Linux Chromium.
1900 Default value is set to that of RenderTheme::caretBlankInterval().
1901 Uses caretBlinkIntervalInternal to avoid overriding
1902 RenderThemeChromiumSkia::caretBlankInterval to preserve the disabling
1903 of blinking caret required for layout tests.
1904 https://bugs.webkit.org/show_bug.cgi?id=28931
1906 * rendering/RenderThemeChromiumLinux.cpp:
1907 (WebCore::RenderThemeChromiumLinux::RenderThemeChromiumLinux):
1908 (WebCore::RenderThemeChromiumLinux::setCaretBlinkInterval):
1909 (WebCore::RenderThemeChromiumLinux::caretBlinkIntervalInternal):
1910 * rendering/RenderThemeChromiumLinux.h:
1912 2009-09-06 Ada Chan <adachan@apple.com>
1914 Remove an extra </File> in WebCore.vcproj.
1916 * WebCore.vcproj/WebCore.vcproj:
1918 2009-09-06 Timothy Hatcher <timothy@apple.com>
1920 Adds a persistent setting for color format in the Web Inspector.
1922 https://bugs.webkit.org/show_bug.cgi?id=28889
1924 Reviewed by Dan Bernstein.
1926 * English.lproj/localizedStrings.js: New strings.
1927 * inspector/front-end/Color.js: Minor style fixes.
1928 (WebInspector.Color.prototype.toString): Added. Replaces the individual
1929 "toFoo" functions. Takes a optional arguments for the color format to return.
1930 * inspector/front-end/Images/paneSettingsButtons.png: Added.
1931 * inspector/front-end/StylesSidebarPane.js:
1932 (WebInspector.StylesSidebarPane.prototype._changeColorFormat): Update the sections to show
1933 the new color format.
1934 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay):
1935 Use the new toString function on Color.
1936 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor): Use the persistent setting
1937 to format colors by default. Add a tooltip for the color swatch.
1938 * inspector/front-end/inspector.css: New styles for the settings menu.
1939 * inspector/front-end/inspector.js:
1940 (WebInspector.loaded): Initilize the colorFormat preference.
1942 2009-09-06 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1944 Reviewed by Eric Seidel.
1946 [Qt] Remove Qt v4.6 check from the prefetchDNS implementation
1947 https://bugs.webkit.org/show_bug.cgi?id=28993
1949 * platform/network/qt/DnsPrefetchHelper.cpp:
1950 * platform/network/qt/DnsPrefetchHelper.h:
1952 2009-09-06 Cameron McCormack <cam@mcc.id.au>
1954 Reviewed by Eric Seidel.
1956 Drop <definition-src> support
1957 https://bugs.webkit.org/show_bug.cgi?id=28991
1959 http://dev.w3.org/SVG/profiles/1.1F2/publish/changes.html#FontsChapter
1961 * DerivedSources.cpp: Remove references to definition-src.
1962 * DerivedSources.make: Ditto.
1963 * GNUmakefile.am: Ditto.
1964 * WebCore.gypi: Ditto.
1965 * WebCore.pro: Ditto.
1966 * WebCore.vcproj/WebCore.vcproj: Ditto.
1967 * WebCore.xcodeproj/project.pbxproj: Ditto.
1968 * bindings/objc/DOM.mm:
1969 (WebCore::createElementClassMap): Ditto.
1970 * bindings/objc/DOMSVG.h: Ditto.
1971 * bindings/v8/DerivedSourcesAllInOne.cpp: Ditto.
1972 * bindings/v8/V8DOMWrapper.cpp: Ditto.
1973 * bindings/v8/V8Index.cpp: Ditto.
1974 * bindings/v8/V8Index.h: Ditto.
1975 * svg/SVGAllInOne.cpp: Ditto.
1976 * svg/SVGDefinitionSrcElement.cpp: Removed.
1977 * svg/SVGDefinitionSrcElement.h: Removed.
1978 * svg/SVGDefinitionSrcElement.idl: Removed.
1979 * svg/SVGFontFaceElement.cpp:
1980 (WebCore::SVGFontFaceElement::rebuildFontFace): Don't search for
1981 definition-src child.
1982 * svg/svgtags.in: Remove definition-src.
1984 2009-09-05 Dimitri Glazkov <dglazkov@chromium.org>
1986 Unreviewed, build fix.
1988 [Chromium] Roll out http://trac.webkit.org/changeset/48094, because the
1989 logic of retrieving default caret blink interval was incorrect (non-existent)
1990 and caused layout test flakiness.
1992 * rendering/RenderThemeChromiumLinux.cpp:
1993 * rendering/RenderThemeChromiumLinux.h:
1995 2009-09-05 Jian Li <jianli@chromium.org>
1997 Reviewed by NOBODY (Chromium reliability build break).
1999 Back up partial change in r48072 in order to fix chromium reliability build break.
2001 * bindings/v8/V8AbstractEventListener.cpp:
2002 (WebCore::V8AbstractEventListener::invokeEventHandler):
2004 2009-09-05 Nicolas Weber <thakis@chromium.org>
2006 Reviewed by Darin Fisher.
2008 https://bugs.webkit.org/show_bug.cgi?id=28975
2009 Fix file upload on chrome/mac. Images that have "Hide Extension" set,
2010 such as screenshots by default, can now be uploaded to sites such as
2013 * platform/FileSystem.h:
2014 Add pathGetDisplayFileName().
2015 * platform/chromium/FileChooserChromium.cpp:
2016 (WebCore::FileChooser::basenameForWidth):
2017 Call pathGetDisplayFileName() instead of pathGetFileName().
2018 * platform/chromium/FileSystemChromiumLinux.cpp:
2019 (WebCore::pathGetDisplayFileName):
2020 Implement pathGetDisplayFileName() by delegating to pathGetFileName().
2021 * platform/chromium/FileSystemChromiumMac.mm:
2022 (WebCore::pathGetFileName):
2023 Now returns a real filename instead of a presentational one, which
2024 fixes the problem addressed by this change.
2025 (WebCore::pathGetDisplayFileName):
2026 New function that returns a presentational filename; does what
2027 pathGetDisplayFileName() did prior to this patch.
2028 * platform/chromium/FileSystemChromiumWin.cpp:
2029 (WebCore::pathGetDisplayFileName):
2030 Implement pathGetDisplayFileName() by delegating to pathGetFileName().
2032 2009-09-05 Joel Stanley <joel@jms.id.au>
2034 Reviewed by David Levin.
2036 Expose functions to set the caret blink interval for Linux Chromium.
2037 https://bugs.webkit.org/show_bug.cgi?id=28931
2039 * rendering/RenderThemeChromiumLinux.cpp:
2040 (WebCore::RenderThemeChromiumLinux::setCaretBlinkInterval):
2041 (WebCore::RenderThemeChromiumLinux::caretBlinkInterval):
2042 * rendering/RenderThemeChromiumLinux.h:
2044 2009-09-04 Dmitry Titov <dimich@chromium.org>
2046 Reviewed by David Levin.
2048 Prevent UI freeze in case when too many timers are in the timer queue.
2049 https://bugs.webkit.org/show_bug.cgi?id=23865
2051 The fix measures the elapsed time while executing timers. If we have too many
2052 timers and it takes significant time to fire, quit the loop and reschedule.
2053 This lets the run loop process user input (close the window for example).
2055 * platform/ThreadTimers.h:
2056 * platform/ThreadTimers.cpp:
2057 (WebCore::ThreadTimers::sharedTimerFiredInternal):
2058 (WebCore::ThreadTimers::fireTimersInNestedEventLoop):
2059 Removed functions and members used before to grab a list of all expired timers.
2060 Now we fetch one by one, measuring time and quitting the loop if it takes too long.
2061 * platform/Timer.cpp:
2062 (WebCore::TimerBase::isActive):
2063 (WebCore::TimerBase::setNextFireTime):
2064 Since timers are now fired one by one, there is no need to keep track of updated timers.
2065 * manual-tests/input-starved-by-timers.html: Manual test that attempts to freeze browser by
2066 creating of enough timers. It then keeps UI frozen and after 10 seconds starts to drain the timers
2067 so the browser un-freezes. This is instead of a regular layout test because we don't have a way
2068 to inject an input events via regular run loop in DRT - instead they are directly dispatched by
2069 eventSender, which does not reproduce the UI freeze that happens with real input.
2071 2009-09-04 Anders Carlsson <andersca@apple.com>
2073 Reviewed by Adele Peterson.
2075 <rdar://problem/7201063>
2077 Detach any custom scrollbars before detaching the document.
2080 (WebCore::Frame::setView):
2082 2009-09-04 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2084 Unreviewed, build fix.
2086 Remove remaining references to UserStyleSheetLoader after r48075.
2089 * WebCore.xcodeproj/project.pbxproj:
2090 * page/qt/FrameQt.cpp:
2091 * page/wince/FrameWince.cpp:
2093 2009-09-04 Michelangelo De Simone <micdesim@gmail.com>
2095 Reviewed by David Levin.
2097 https://bugs.webkit.org/show_bug.cgi?id=28988
2098 Minor fix: "novalidate" attribute renamed in "noValidate", according to
2100 http://www.whatwg.org/specs/web-apps/current-work/#dom-fs-novalidate
2102 * html/HTMLFormElement.cpp:
2103 (WebCore::HTMLFormElement::noValidate):
2104 (WebCore::HTMLFormElement::setNoValidate):
2105 * html/HTMLFormElement.h:
2106 * html/HTMLFormElement.idl:
2108 2009-09-04 Dmitry Titov <dimich@chromium.org>
2110 Reviewed by David Levin.
2112 Remove unused line of code from WorkerContext
2113 https://bugs.webkit.org/show_bug.cgi?id=28990
2115 * workers/WorkerContext.cpp:
2116 (WebCore::WorkerContext::importScripts):
2118 2009-09-04 Darin Adler <darin@apple.com>
2120 Reviewed by Oliver Hunt.
2122 Fix assertion seen when running buildbot.
2124 * bindings/js/JSDOMBinding.h:
2125 (WebCore::DOMObjectWithGlobalPointer::createStructure): Create the structure without
2126 the HasDefaultMark bit since this has a custom mark function.
2128 2009-09-04 Dave Hyatt <hyatt@apple.com>
2130 Reviewed by Adam Roben.
2132 https://bugs.webkit.org/show_bug.cgi?id=28984, remove the remote stylesheet loader on Mac/Qt.
2133 Make sure the other code path (now used by everybody) can handle data URLs.
2135 As per the post on webkit-dev, the ability to work remotely isn't working properly anyway (it doesn't
2136 hold up the pending sheet count, so you'd just FOUC on every Web page), and it's extremely unlikely
2137 that anybody is relying on this support.
2139 Tor Arne agreed it was ok to disable (he enabled it on the Qt side), and only Mac/Qt were using this
2143 * WebCore.xcodeproj/project.pbxproj:
2145 (WebCore::Document::userStyleSheet):
2147 * loader/FrameLoader.cpp:
2148 (WebCore::FrameLoader::begin):
2149 * loader/UserStyleSheetLoader.cpp: Removed.
2150 * loader/UserStyleSheetLoader.h: Removed.
2152 (WebCore::Frame::reapplyStyles):
2155 (WebCore::Page::userStyleSheetLocationChanged):
2156 (WebCore::Page::userStyleSheet):
2157 * page/mac/FrameMac.mm:
2158 * page/qt/FrameQt.cpp:
2160 2009-09-04 Mikhail Naganov <mnaganov@chromium.org>
2162 Reviewed by Timothy Hatcher.
2164 Add "sampling profiler" preference, simplify data display when it's set.
2166 https://bugs.webkit.org/show_bug.cgi?id=28969
2168 * inspector/front-end/ProfileDataGridTree.js:
2169 (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
2170 (WebInspector.ProfileDataGridNode.prototype.get data):
2171 * inspector/front-end/ProfileView.js:
2172 (WebInspector.ProfileView):
2173 * inspector/front-end/inspector.js:
2175 2009-09-04 Jian Li <jianli@chromium.org>
2177 Reviewed by Adam Barth.
2179 [V8] Run-time exception in onmessage handler is not forwarded to the worker object.
2180 https://bugs.webkit.org/show_bug.cgi?id=28980
2182 Tested by worker-close.html.
2184 * bindings/v8/ScriptFunctionCall.cpp:
2185 * bindings/v8/V8AbstractEventListener.cpp:
2186 (WebCore::V8AbstractEventListener::invokeEventHandler):
2187 * bindings/v8/V8Utilities.cpp:
2188 (WebCore::getScriptExecutionContext):
2189 (WebCore::reportException):
2190 * bindings/v8/V8Utilities.h:
2191 (WebCore::getScriptExecutionContext):
2192 * bindings/v8/custom/V8MessageChannelConstructor.cpp:
2193 (WebCore::CALLBACK_FUNC_DECL):
2194 * bindings/v8/custom/V8SharedWorkerCustom.cpp:
2195 (WebCore::CALLBACK_FUNC_DECL):
2196 * bindings/v8/custom/V8WorkerCustom.cpp:
2197 (WebCore::CALLBACK_FUNC_DECL):
2198 * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
2199 (WebCore::CALLBACK_FUNC_DECL):
2200 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
2201 (WebCore::CALLBACK_FUNC_DECL):
2203 2009-09-04 Dave Hyatt <hyatt@apple.com>
2205 Reviewed by Anders Carlsson.
2207 Remove unused m_sheet variable and setCSSStyleSheet methods.
2212 2009-09-04 Anders Carlsson <andersca@apple.com>
2214 Reviewed by David Hyatt and Adele Peterson.
2216 (Based on a patch from Adele).
2218 Fix <rdar://problem/7185875>.
2221 (WebCore::Frame::setView):
2222 Detach any custom scroll bars from the old view.
2224 * page/FrameView.cpp:
2225 (WebCore::FrameView::detachCustomScrollbars):
2226 Simplify the check (and make it work when body is null) by just checking that the scroll bar owner is
2227 not a RenderPart object.
2229 * rendering/RenderObject.cpp:
2230 (WebCore::RenderObject::destroy):
2231 ASSERT that frame() is not null here and also add a null check so that release builds won't crash.
2233 2009-09-04 Dave Hyatt <hyatt@apple.com>
2235 Reviewed by Adam Roben.
2237 Make m_userStyleSheetLoader in Frame an OwnPtr.
2240 (WebCore::Frame::Frame):
2241 (WebCore::Frame::~Frame):
2243 * page/mac/FrameMac.mm:
2244 (WebCore::Frame::setUserStyleSheetLocation):
2245 (WebCore::Frame::setUserStyleSheet):
2247 2009-09-04 Timothy Hatcher <timothy@apple.com>
2249 Show color swatches in the Web Inspector before the color text so clicking them will not
2250 shift the swatch. Also makes multiple swatches in the single property toggle the color format.
2252 https://bugs.webkit.org/show_bug.cgi?id=28978
2254 Reviewed by Darin Adler.
2256 * inspector/front-end/StylesSidebarPane.js:
2257 (WebInspector.StylePropertyTreeElement.prototype.updateTitle): Some refactoring to consolidate
2258 the processing we do on the property value. This eliminated the old nickname code, since the new
2259 WebInspector.Color class handles this. We could also simplify the color regex since more
2260 is handled by the Color class. Also no longer uses innerHTML for the linkify code.
2261 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processValue): Helper function to
2262 process a value given a regex and processor functions.
2263 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL): Make an anchor for the
2264 URL with "url()" syntax surrounding it.
2265 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor): Makes a color, if
2266 there was an exception just return a text node.
2267 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay.changeTo):
2268 Moved from later in the file.
2269 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay): Ditto.
2270 * inspector/front-end/inspector.css:
2272 2009-09-04 Mark Mentovai <mark@chromium.org>
2274 Reviewed by Dave Hyatt.
2276 https://bugs.webkit.org/show_bug.cgi?id=28614
2278 Account for scrollbar state changes that occur during layout.
2280 * platform/ScrollView.cpp:
2281 (WebCore::ScrollView::updateScrollbars):
2283 Perform a layout prior to checking whether the scrollbar modes are
2284 off, on, or automatic. The modes may change during layout.
2289 (WebCore::Frame::createView):
2290 * page/FrameView.cpp:
2291 (WebCore::FrameView::FrameView):
2292 (WebCore::FrameView::resetScrollbars):
2293 (WebCore::FrameView::layout):
2295 * platform/ScrollView.h:
2297 Eliminate duplicated (and incorrect) scrollbar mode tracking between
2298 FrameView and ScrollView.
2300 2009-09-04 Yael Aharon <yael.aharon@nokia.com>
2302 Reviewed by Darin Adler.
2304 hostname and host are mixed up when manipulating anchor elements.
2305 https://bugs.webkit.org/show_bug.cgi?id=28954
2307 Swapped the implementation of host and hostname, and made sure not to return
2308 the port number if it is default for the given protocol.
2309 FireFox also avoids returning the protocol number if it is default.
2311 Test: fast/dom/Element/hostname-host.html
2313 * html/HTMLAnchorElement.cpp:
2314 (WebCore::HTMLAnchorElement::host):
2315 (WebCore::HTMLAnchorElement::hostname):
2316 * page/SecurityOrigin.cpp:
2317 (WebCore::SecurityOrigin::isDefaultPortForProtocol):
2318 * page/SecurityOrigin.h:
2320 2009-09-04 Anders Carlsson <andersca@apple.com>
2322 Reviewed by Darin Adler and Steve Falkenburg.
2324 Fix <rdar://problem/7192902>.
2326 Add the necessary plumbing for having QTMovieWin use WebCore timers.
2328 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2329 (WebCore::TaskTimer::initialize):
2330 Create the timer and call QTMovieWin::setTaskTimerFuncs.
2332 (WebCore::TaskTimer::setTaskTimerDelay):
2335 (WebCore::TaskTimer::stopTaskTimer):
2338 (WebCore::TaskTimer::fired):
2339 Call QTMovieWin::taskTimerFired().
2341 (WebCore::MediaPlayerPrivate::load):
2342 Initialize the Task timer.
2344 * platform/graphics/win/QTMovieWin.cpp:
2346 Call the global stopTaskTimer function and setTaskTimerDelay.
2348 (QTMovieWin::taskTimerFired):
2349 Make this a member function.
2351 (QTMovieWin::setTaskTimerFuncs):
2352 Set the global function pointers.
2354 (QTMovieWin::initializeQuickTime):
2356 No need to use the QT shared timer.
2357 * platform/graphics/win/QTMovieWin.h:
2359 2009-09-04 Tony Chang <tony@chromium.org>
2361 Reviewed by David Levin.
2363 Fix Chromium Win compile. Missing return statement in
2364 WebCore::RenderThemeChromiumSkia::paintSliderThumb.
2365 https://bugs.webkit.org/show_bug.cgi?id=28974
2367 No new tests, build fix.
2369 * rendering/RenderThemeChromiumSkia.cpp:
2370 (WebCore::RenderThemeChromiumSkia::paintSliderThumb):
2372 2009-09-04 Dimitri Glazkov <dglazkov@chromium.org>
2374 Unreviewed, build fix.
2376 [Chromium] Rolling out http://trac.webkit.org/changeset/48035, because it broke
2378 https://bugs.webkit.org/show_bug.cgi?id=28696
2380 2009-09-04 Anders Carlsson <andersca@apple.com>
2384 * WebCore.vcproj/WebCore.vcproj:
2386 2009-09-03 Dave Hyatt <hyatt@apple.com>
2388 Reviewed by Adam Roben.
2390 https://bugs.webkit.org/show_bug.cgi?id=28890, make simple user script injection work.
2392 This patch adds new API for adding and removing user scripts from page groups. User scripts
2393 are bundled together in isolated worlds (you can have multiple scripts together in the same
2396 Added userscripts/ directory for holding new tests (along with a simple test of script injection).
2399 * WebCore.vcproj/WebCore.vcproj:
2400 * WebCore.xcodeproj/project.pbxproj:
2401 * bindings/js/ScriptController.cpp:
2402 (WebCore::ScriptController::evaluateInIsolatedWorld):
2403 * bindings/js/ScriptController.h:
2404 * bindings/v8/ScriptController.cpp:
2405 (WebCore::ScriptController::evaluateInIsolatedWorld):
2406 * bindings/v8/ScriptController.h:
2407 * loader/FrameLoader.cpp:
2408 (WebCore::FrameLoader::finishedParsing):
2409 (WebCore::FrameLoader::dispatchDocumentElementAvailable):
2411 (WebCore::Frame::injectUserScripts):
2412 (WebCore::Frame::injectUserScriptsForWorld):
2414 * page/PageGroup.cpp:
2415 (WebCore::PageGroup::~PageGroup):
2416 (WebCore::PageGroup::addUserScript):
2417 (WebCore::PageGroup::removeUserContentForWorld):
2418 (WebCore::PageGroup::removeAllUserContent):
2420 (WebCore::PageGroup::userScripts):
2421 * page/UserScript.h: Added.
2422 (WebCore::UserScript::UserScript):
2423 (WebCore::UserScript::source):
2424 (WebCore::UserScript::url):
2425 (WebCore::UserScript::patterns):
2426 (WebCore::UserScript::worldID):
2427 (WebCore::UserScript::injectionTime):
2428 * page/UserScriptTypes.h: Added.
2431 2009-09-04 Alexey Proskuryakov <ap@apple.com>
2433 Reviewed by Eric Seidel.
2435 https://bugs.webkit.org/show_bug.cgi?id=26402
2436 Crashes when using a detached DocumentType node
2438 Test: fast/dom/DOMImplementation/detached-doctype.html
2440 DocumentType nodes are the only one that can have null document(), and they can never have
2441 children, so they are a degenerate case for NodeLists.
2444 (WebCore::Node::childNodes): Don't try register node list with document if there's no
2445 document. Since there are no changes possible for a DocumentType's node list, this is not
2447 (WebCore::Node::registerDynamicNodeList): Ditto.
2448 (WebCore::Node::unregisterDynamicNodeList): Ditto. I couldn't find a scenario where this
2449 was invoked for a DocumentType node, but I also couldn't prove that it can't be (the
2450 de-registration code path that I saw taken was via Node destructor, and that already has
2451 a null check for document).
2453 * bindings/js/JSNodeCustom.cpp:
2454 (WebCore::JSNode::addEventListener): Bail out if there is no document (just as we already do
2455 if there is no window).
2456 (WebCore::JSNode::removeEventListener): Ditto.
2458 2009-09-04 Xan Lopez <xlopez@igalia.com>
2460 Reviewed by Gustavo Noronha.
2462 [GTK] loadFinished never emitted
2463 https://bugs.webkit.org/show_bug.cgi?id=28935
2465 Do not report errors right away from
2466 ResourceHandle::start. Instead return true and schedule an error
2467 to be reported in the handle later. Otherwise WebCore gets
2468 confused and thinks the resource never finished loading, making it
2469 not emit the finished status.
2471 * platform/network/soup/ResourceHandleSoup.cpp:
2472 (WebCore::startHttp):
2475 2009-09-04 Ben Murdoch <benm@google.com>
2477 Reviewed by Eric Seidel.
2479 [V8] DOM Storage bindings: Event Handler should create StorageEvents
2480 https://bugs.webkit.org/show_bug.cgi?id=28942
2483 Causes the following tests that were failing with V8 to pass:
2484 * storage/domstorage/localstorage/onstorage-attribute-setwindow.html
2485 * storage/domstorage/localstorage/complex-keys.html
2486 * storage/domstorage/localstorage/onstorage-attribute-markup.html
2487 * storage/domstorage/localstorage/simple-events.html
2488 * storage/domstorage/localstorage/onstorage-attribute-set-attribute.html
2489 * storage/domstorage/localstorage/index-get-and-set.html
2490 * storage/domstorage/sessionstorage/onstorage-attribute-setwindow.html
2491 * storage/domstorage/sessionstorage/onstorage-attribute-markup.html
2492 * storage/domstorage/sessionstorage/simple-events.html
2493 * storage/domstorage/sessionstorage/onstorage-attribute-set-attribute.html
2494 * storage/domstorage/sessionstorage/index-get-and-set.html
2497 * bindings/v8/V8DOMWrapper.cpp:
2498 (WebCore::V8DOMWrapper::convertEventToV8Object): Create StorageEvents.
2499 * bindings/v8/custom/V8StorageCustom.cpp:
2500 (WebCore::storageGetter): Check if we are retrieving the length property and return the number of items in the object rather than a property named length when invoking the getItem() member of local/sessionStorage.
2502 2009-09-03 Pavel Feldman <pfeldman@chromium.org>
2504 Reviewed by Timothy Hatcher.
2506 https://bugs.webkit.org/show_bug.cgi?id=28911
2509 * WebCore.vcproj/WebCore.vcproj:
2510 * inspector/InspectorBackend.cpp:
2511 (WebCore::InspectorBackend::dispatchOnInjectedScript):
2512 * inspector/InspectorBackend.h:
2513 * inspector/InspectorBackend.idl:
2514 * inspector/front-end/ConsoleView.js:
2515 (WebInspector.ConsoleView.prototype.doEvalInWindow):
2516 (WebInspector.ConsoleView.prototype._formatarray):
2517 (WebInspector.ConsoleView.prototype._formatnode):
2518 * inspector/front-end/DOMAgent.js:
2519 * inspector/front-end/ElementsPanel.js:
2520 (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
2521 (WebInspector.ElementsPanel.prototype.searchCanceled):
2522 (WebInspector.ElementsPanel.prototype.performSearch):
2523 * inspector/front-end/InjectedScript.js:
2524 (InjectedScript.dispatch):
2525 * inspector/front-end/InjectedScriptAccess.js: Added.
2526 (InjectedScriptAccess._installHandler.InjectedScriptAccess.methodName):
2527 (InjectedScriptAccess._installHandler):
2528 * inspector/front-end/MetricsSidebarPane.js:
2529 (WebInspector.MetricsSidebarPane.prototype.update):
2530 (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
2531 * inspector/front-end/ObjectPropertiesSection.js:
2532 (WebInspector.ObjectPropertiesSection.prototype.update):
2533 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
2534 (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
2535 * inspector/front-end/PropertiesSidebarPane.js:
2536 (WebInspector.PropertiesSidebarPane.prototype.update):
2537 * inspector/front-end/ResourcesPanel.js:
2538 (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick):
2539 * inspector/front-end/ScriptsPanel.js:
2540 (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
2541 * inspector/front-end/StylesSidebarPane.js:
2542 (WebInspector.StylesSidebarPane.prototype.update):
2543 (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
2544 (WebInspector.BlankStylePropertiesSection.prototype.editingCommitted):
2545 (WebInspector.StylePropertyTreeElement.prototype):
2546 * inspector/front-end/inspector.html:
2548 2009-09-04 Tony Chang <tony@chromium.org>
2550 Reviewed by Eric Seidel.
2552 Implement <input type="range"> for Chromium Linux by painting
2553 the slider and the thumb using skia.
2554 https://bugs.webkit.org/show_bug.cgi?id=28928
2556 Covered by existing tests (we're currently hitting an assert for them).
2558 * rendering/RenderThemeChromiumLinux.cpp:
2559 (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
2560 * rendering/RenderThemeChromiumLinux.h:
2561 * rendering/RenderThemeChromiumSkia.cpp:
2562 (WebCore::drawVertLine):
2563 (WebCore::drawHorizLine):
2565 (WebCore::RenderThemeChromiumSkia::paintSliderTrack):
2566 (WebCore::RenderThemeChromiumSkia::paintSliderThumb):
2567 * rendering/RenderThemeChromiumSkia.h:
2569 2009-09-04 Kent Tamura <tkent@chromium.org>
2571 Reviewed by Eric Seidel.
2573 - Implement <input type=color> as a text field.
2574 - ValidityState::typeMismatch supports for type=color.
2575 https://bugs.webkit.org/show_bug.cgi?id=28966
2577 Tests: fast/forms/ValidityState-patternMismatch-unsupported.html
2578 fast/forms/ValidityState-typeMismatch-color.html
2580 * html/HTMLInputElement.cpp:
2581 (WebCore::HTMLInputElement::valueMissing):
2582 (WebCore::HTMLInputElement::patternMismatch):
2583 (WebCore::HTMLInputElement::setInputType):
2584 (WebCore::HTMLInputElement::formControlType):
2585 (WebCore::HTMLInputElement::saveFormControlState):
2586 (WebCore::HTMLInputElement::restoreFormControlState):
2587 (WebCore::HTMLInputElement::accessKeyAction):
2588 (WebCore::HTMLInputElement::rendererIsNeeded):
2589 (WebCore::HTMLInputElement::createRenderer):
2590 (WebCore::HTMLInputElement::appendFormData):
2591 (WebCore::HTMLInputElement::valueWithDefault):
2592 (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
2593 (WebCore::HTMLInputElement::defaultEventHandler):
2594 (WebCore::HTMLInputElement::isRequiredFormControl):
2595 (WebCore::HTMLInputElement::dataList):
2596 * html/HTMLInputElement.h:
2597 (WebCore::HTMLInputElement::):
2598 (WebCore::HTMLInputElement::isTextField):
2599 * html/ValidityState.cpp:
2600 (WebCore::ValidityState::typeMismatch):
2601 (WebCore::ValidityState::isValidColorString):
2602 * html/ValidityState.h:
2604 2009-09-04 Mads Ager <ager@chromium.org>
2606 Reviewed by David Levin.
2608 [V8] Crash when updating document cache
2609 https://bugs.webkit.org/show_bug.cgi?id=28965
2611 Initialization of a V8 JavaScript context can fail. When that
2612 happens, do not attempt to update the document wrapper cache.
2614 This code path is exercised by http/tests/security/javascriptURL/javascriptURL-in-new-iframe.html.
2616 * bindings/v8/V8Proxy.cpp:
2617 (WebCore::V8Proxy::updateDocument):
2619 2009-09-04 Yaar Schnitman <yaar@chromium.org>
2621 Reviewed by Eric Seidel.
2625 https://bugs.webkit.org/show_bug.cgi?id=25489
2626 CSS property background-position is now serialized in shorthand string as
2627 background-position-x background-position-y, as the specification requires
2628 (See http://www.w3.org/TR/2008/WD-css3-background-20080910/#the-background-position).
2631 https://bugs.webkit.org/show_bug.cgi?id=26541
2632 CSS background-color is now be serialized before other background properties,
2633 as CSS specification requires (See http://dev.w3.org/csswg/cssom/#css-value).
2635 An existing layout test that accepted wrong order and skipped position test
2638 * css/CSSMutableStyleDeclaration.cpp:
2639 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
2641 2009-09-03 Kent Tamura <tkent@chromium.org>
2643 Reviewed by David Levin.
2645 Add support for HTMLTextAreaElement.textLength
2646 https://bugs.webkit.org/show_bug.cgi?id=28929
2648 Test: fast/forms/textarea-textlength.html
2650 * html/HTMLTextAreaElement.h:
2651 (WebCore::HTMLTextAreaElement::textLength):
2652 * html/HTMLTextAreaElement.idl:
2654 2009-09-03 Alexey Proskuryakov <ap@apple.com>
2656 Reviewed by Darin Adler.
2658 <rdar://problem/7180197>, https://bugs.webkit.org/show_bug.cgi?id=28822
2659 REGRESSION(r31231): Creating document with current document's DOCTYPE causes crashes
2661 Test: fast/dom/DOMImplementation/createDocument-with-used-doctype.html
2663 * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): Even though we
2664 cannot raise an exception immediately out of fear of breaking Acid3, we shouldn't use a
2665 DocumentType node in two documents.
2667 2009-09-03 Brady Eidson <beidson@apple.com>
2669 Reviewed by Sam Weinig.
2671 Page Cache should support pages with Frames.
2672 https://bugs.webkit.org/show_bug.cgi?id=13631
2674 Tests: fast/events/pageshow-pagehide-on-back-cached-with-frames.html
2675 fast/loader/frames-with-unload-handlers-in-page-cache.html
2677 * loader/FrameLoader.cpp:
2678 (WebCore::FrameLoader::canCachePageContainingThisFrame):
2679 (WebCore::FrameLoader::logCanCacheFrameDecision):
2681 2009-09-03 Steve VanDeBogart <vandebo@chromium.org>
2683 Reviewed by Eric Seidel.
2685 Handle middle click in Chromium like QT
2686 https://bugs.webkit.org/show_bug.cgi?id=28696
2688 Tested by middle-click-onpaste.html.
2690 * platform/Pasteboard.h:
2691 * platform/chromium/ChromiumBridge.h:
2692 * platform/chromium/ClipboardChromium.cpp:
2693 (WebCore::ClipboardChromium::getData):
2694 * platform/chromium/PasteboardChromium.cpp:
2695 (WebCore::Pasteboard::Pasteboard):
2696 (WebCore::Pasteboard::isSelectionMode):
2697 (WebCore::Pasteboard::setSelectionMode):
2698 (WebCore::Pasteboard::canSmartReplace):
2699 (WebCore::Pasteboard::plainText):
2700 (WebCore::Pasteboard::documentFragment):
2701 * platform/chromium/PasteboardPrivate.h:
2702 (WebCore::PasteboardPrivate::):
2704 2009-09-03 Brady Eidson <beidson@apple.com>
2706 Reviewed by Sam Weinig.
2708 More partial work towards "Page Cache should support pages with Frames"
2709 https://bugs.webkit.org/show_bug.cgi?id=13631
2711 Fix a bug where subframes weren't asked if they were cacheable.
2713 No new tests, especially since page caching for frames isn't turned on yet.
2714 A layout test will come in my next patch, which enables frames in the page cache.
2716 * loader/FrameLoader.cpp:
2717 (WebCore::FrameLoader::canCachePageContainingThisFrame):
2719 2009-09-03 Adam Barth <abarth@webkit.org>
2721 Reviewed by eric@webkit.org.
2723 https://bugs.webkit.org/show_bug.cgi?id=24696
2725 Added mixed content methods to FrameLoaderClient.
2727 * loader/EmptyClients.h:
2728 (WebCore::EmptyFrameLoaderClient::didDisplayInsecureContent):
2729 (WebCore::EmptyFrameLoaderClient::didRunInsecureContent):
2730 * loader/FrameLoaderClient.h:
2732 2009-09-03 Kevin Watters <kevinwatters@gmail.com>
2734 Reviewed by Kevin Ollivier.
2737 https://bugs.webkit.org/show_bug.cgi?id=19041
2739 * page/wx/EventHandlerWx.cpp:
2740 (WebCore::EventHandler::passMousePressEventToSubframe):
2741 (WebCore::EventHandler::passMouseMoveEventToSubframe):
2742 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2743 (WebCore::EventHandler::passWheelEventToWidget):
2744 (WebCore::EventHandler::tabsToAllControls):
2745 (WebCore::EventHandler::passSubframeEventToSubframe):
2746 (WebCore::EventHandler::passMouseDownEventToWidget):
2747 * platform/wx/RenderThemeWx.cpp:
2748 (WebCore::nativeWindowForRenderObject):
2749 (WebCore::RenderThemeWx::paintButton):
2750 (WebCore::RenderThemeWx::paintTextField):
2751 (WebCore::RenderThemeWx::paintMenuList):
2752 (WebCore::RenderThemeWx::paintMenuListButton):
2753 * platform/wx/ScrollbarThemeWx.cpp: Added.
2754 (WebCore::ScrollbarTheme::nativeTheme):
2755 (WebCore::ScrollbarThemeWx::~ScrollbarThemeWx):
2756 (WebCore::ScrollbarThemeWx::scrollbarThickness):
2757 (WebCore::ScrollbarThemeWx::hasThumb):
2758 (WebCore::ScrollbarThemeWx::buttonSize):
2759 (WebCore::ScrollbarThemeWx::backButtonRect):
2760 (WebCore::ScrollbarThemeWx::forwardButtonRect):
2761 (WebCore::ScrollbarThemeWx::trackRect):
2762 (WebCore::ScrollbarThemeWx::paintScrollCorner):
2763 (WebCore::ScrollbarThemeWx::paint):
2764 * platform/wx/ScrollbarThemeWx.h: Added.
2765 (WebCore::ScrollbarThemeWx::hasButtons):
2766 * platform/wx/TemporaryLinkStubs.cpp:
2767 * platform/wx/wxcode/gtk/scrollbar_render.cpp: Added.
2770 (wxGetGdkWindowForDC):
2771 (wxRenderer_DrawScrollbar):
2772 * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp: Added.
2773 (wxScrollbarPartToHIPressedState):
2774 (wxRenderer_DrawScrollbar):
2775 * platform/wx/wxcode/scrollbar_render.h: Added.
2776 (calcThumbStartAndLength):
2777 * platform/wx/wxcode/win/non-kerned-drawing.cpp:
2778 (WebCore::drawTextWithSpacing):
2779 * platform/wx/wxcode/win/scrollbar_render.cpp: Added.
2780 (GraphicsHDC::GraphicsHDC):
2781 (GraphicsHDC::~GraphicsHDC):
2782 (GraphicsHDC::operator HDC):
2783 (getTSStateForPart):
2784 (wxRenderer_DrawScrollbar):
2787 2009-09-03 Yael Aharon <yael.aharon@nokia.com>
2789 Reviewed by Simon Hausmann.
2791 [Qt] Page content is not displayed in case of HTTP status error
2792 https://bugs.webkit.org/show_bug.cgi?id=28949
2794 If the server sent content, show it to the user instead of an error,
2795 even if the HTTP status code is not success.
2797 * platform/network/qt/QNetworkReplyHandler.cpp:
2798 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
2799 (WebCore::QNetworkReplyHandler::finish):
2800 (WebCore::QNetworkReplyHandler::forwardData):
2801 (WebCore::QNetworkReplyHandler::resetState):
2802 * platform/network/qt/QNetworkReplyHandler.h:
2804 2009-09-03 Drew Wilson <atwilson@google.com>
2806 Reviewed by Dimitri Glazkov.
2808 Need to update v8 bindings to support passing multiple ports to postMessage()
2809 https://bugs.webkit.org/show_bug.cgi?id=28839
2811 Added support for passing MessagePortArray to v8 bindings.
2813 New tests that now pass with V8:
2814 fast/events/message-port-multi.html
2815 fast/workers/worker-context-multi-port.html
2816 fast/workers/worker-multi-port.html
2819 Added V8MessageEventCustom.cpp and V8MessagePortCustom.h
2820 * bindings/v8/custom/V8CustomBinding.h:
2821 Added custom postMessage() handlers for various classes.
2822 * bindings/v8/custom/V8DOMWindowCustom.cpp:
2823 (WebCore::DOMWindowPostMessage):
2824 Added custom handler that supports MessagePortArray.
2825 * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
2826 (WebCore::DedicatedWorkerContextPostMessage):
2827 Added custom handler that supports MessagePortArray.
2828 * bindings/v8/custom/V8MessageEventCustom.cpp: Added.
2829 (WebCore::MessageEventPorts):
2830 Added getter for ports attribute.
2831 (WebCore::MessageEventInitMessageEvent):
2832 Added custom handler that supports MessagePortArray.
2833 * bindings/v8/custom/V8MessagePortCustom.cpp:
2834 (WebCore::MessagePortPostMessage):
2835 Added custom handler that supports MessagePortArray.
2836 (WebCore::getMessagePortArray):
2837 Added helper function that supports converting from a sequence-like object to a MessagePortArray.
2838 * bindings/v8/custom/V8MessagePortCustom.h: Added.
2839 Added declaration for getMessagePortArray().
2840 * bindings/v8/custom/V8WorkerCustom.cpp:
2841 (WebCore::WorkerPostMessage):
2842 Added custom handler that supports MessagePortArray.
2844 2009-09-03 Drew Wilson <atwilson@google.com>
2846 Reviewed by Sam Weinig.
2848 Need to update JS bindings and IDL files to support multiple message ports in postMessage()
2849 https://bugs.webkit.org/show_bug.cgi?id=28460
2851 Added new toJSSequence() API which validates that a JSValue meets the WebIDL criteria for a sequence.
2853 Tests: fast/events/message-port-multi.html
2854 fast/workers/worker-context-multi-port.html
2855 fast/workers/worker-multi-port.html
2860 * WebCore.vcproj/WebCore.vcproj:
2861 * WebCore.xcodeproj/project.pbxproj:
2862 * WebCoreSources.bkl:
2863 Added JSMessagePortCustom.h and JSMessageEventCustom.cpp.
2864 * bindings/js/JSDOMBinding.cpp:
2865 (WebCore::toJSSequence):
2866 Added toJSSequence() API to do validation on sequence-like objects per WebIDL.
2867 * bindings/js/JSDOMBinding.h:
2868 * bindings/js/JSDOMWindowCustom.cpp:
2869 (WebCore::JSDOMWindow::postMessage):
2870 Added custom handler for postMessage() that handles being passed MessagePortArrays.
2871 * bindings/js/JSDedicatedWorkerContextCustom.cpp:
2872 (WebCore::JSDedicatedWorkerContext::postMessage):
2873 Added custom handler for postMessage() that handles being passed MessagePortArrays.
2874 * bindings/js/JSMessageEventCustom.cpp: Added.
2875 (WebCore::JSMessageEvent::ports):
2876 Added custom ports() getter that converts from MessagePortArray to JSArray.
2877 (WebCore::JSMessageEvent::initMessageEvent):
2878 Added support for passing a MessagePortArray.
2879 * bindings/js/JSMessagePortCustom.cpp:
2880 (WebCore::JSMessagePort::postMessage):
2881 Added custom handler for postMessage() that handles being passed MessagePortArray.
2882 (WebCore::fillMessagePortArray):
2883 New helper routine that validates/converts from a JS sequence o a WebCore::MessagePortArray.
2884 * bindings/js/JSMessagePortCustom.h: Added.
2885 * bindings/js/JSWorkerCustom.cpp:
2886 (WebCore::JSWorker::postMessage):
2887 Added custom handler for postMessage() that handles being passed MessagePortArray.
2888 * dom/MessageEvent.cpp:
2889 * dom/MessageEvent.h:
2890 (WebCore::MessageEvent::ports):
2891 Changed ports() to return a MessagePortArray* since this value can be null.
2892 * dom/MessageEvent.idl:
2893 Updated IDL to match HTML5 spec (now accepts MessagePortArrays instead of a solitary MessagePort).
2894 * dom/MessagePort.cpp:
2895 * dom/MessagePort.h:
2896 * dom/MessagePort.idl:
2897 Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).
2899 * page/DOMWindow.idl:
2900 Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).
2901 * workers/DedicatedWorkerContext.cpp:
2902 * workers/DedicatedWorkerContext.h:
2903 * workers/DedicatedWorkerContext.idl:
2904 Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).
2905 * workers/Worker.cpp:
2907 * workers/Worker.idl:
2908 Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).
2910 2009-09-03 Pavel Feldman <pfeldman@chromium.org>
2912 Reviewed by Timothy Hatcher.
2914 WebInspector: Do not query non-function call frames for function name.
2916 https://bugs.webkit.org/show_bug.cgi?id=28799
2918 * inspector/front-end/InjectedScript.js:
2919 (InjectedScript.CallFrameProxy):
2920 (InjectedScript.CallFrameProxy.prototype._wrapScopeChain):
2922 2009-09-03 Pavel Feldman <pfeldman@chromium.org>
2924 Reviewed by Timothy Hatcher.
2926 Crash after typing "clear" and pressing return in inspector console.
2928 https://bugs.webkit.org/show_bug.cgi?id=28684
2930 * inspector/front-end/InjectedScript.js:
2931 (InjectedScript._clearConsoleMessages):
2932 (InjectedScript._inspectObject):
2933 (InjectedScript._ensureCommandLineAPIInstalled):
2935 2009-09-03 Vitaly Repeshko <vitalyr@chromium.org>
2937 Reviewed by Adam Barth.
2939 [V8] Squeezed out some performance from string conversion.
2940 https://bugs.webkit.org/show_bug.cgi?id=28945
2942 * bindings/v8/V8Binding.cpp:
2943 (WebCore::WebCoreStringResource::WebCoreStringResource):
2944 (WebCore::WebCoreStringResource::~WebCoreStringResource):
2945 (WebCore::WebCoreStringResource::data):
2946 (WebCore::WebCoreStringResource::length):
2947 (WebCore::WebCoreStringResource::atomicString):
2948 (WebCore::WebCoreStringResource::string):
2949 Avoid calling virtual length method. Be more explicit with
2950 external memory computation. Avoid function calls in data and
2953 (WebCore::v8StringToWebCoreString):
2954 (WebCore::v8StringToAtomicWebCoreString):
2955 (WebCore::v8NonStringValueToWebCoreString):
2956 (WebCore::v8NonStringValueToAtomicWebCoreString):
2957 Avoid extra calls of WebCoreStringResource::toString. When
2958 AtomicString is computed pass it immediately when constructing
2959 WebCoreStringResource. Use inline buffer for small strings.
2960 * bindings/v8/V8Binding.h:
2961 (WebCore::v8ValueToWebCoreString):
2962 (WebCore::v8ValueToAtomicWebCoreString):
2963 (WebCore::toString):
2964 Inline dispatch of string vs. non-string values.
2966 2009-09-03 Vitaly Repeshko <vitalyr@chromium.org>
2968 Reviewed by Adam Barth.
2970 [V8] Inlined common case of V8IsolatedWorld::getEntered to speed
2972 https://bugs.webkit.org/show_bug.cgi?id=28946
2974 * bindings/v8/V8IsolatedWorld.cpp:
2975 (WebCore::V8IsolatedWorld::getEnteredImpl):
2976 * bindings/v8/V8IsolatedWorld.h:
2977 (WebCore::V8IsolatedWorld::getEntered):
2979 2009-09-03 Kent Tamura <tkent@chromium.org>
2981 Reviewed by Eric Seidel.
2983 Fix a regression bug that maxLength doesn't work for IME input.
2984 https://bugs.webkit.org/show_bug.cgi?id=25253
2986 Tests: fast/forms/input-maxlength-ime-completed.html
2987 fast/forms/input-maxlength-ime-preedit.html
2989 * dom/InputElement.cpp:
2990 (WebCore::InputElement::handleBeforeTextInsertedEvent):
2991 * dom/InputElement.h:
2992 * html/HTMLInputElement.cpp:
2993 (WebCore::HTMLInputElement::defaultEventHandler):
2994 * wml/WMLInputElement.cpp:
2995 (WebCore::WMLInputElement::defaultEventHandler):
2997 2009-09-03 Cameron McCormack <cam@mcc.id.au>
2999 Reviewed by Eric Seidel.
3001 Make SVGStyleElement title/media/type setters do something
3002 https://bugs.webkit.org/show_bug.cgi?id=28828
3004 Test: svg/dom/style-reflect.html
3006 * svg/SVGStyleElement.cpp:
3007 (WebCore::SVGStyleElement::setXmlspace): Actually change the attribute.
3008 (WebCore::SVGStyleElement::setType): Ditto.
3009 (WebCore::SVGStyleElement::setMedia): Ditto.
3010 (WebCore::SVGStyleElement::setTitle): Ditto.
3012 2009-09-03 Ben Murdoch <benm@google.com>
3014 https://bugs.webkit.org/show_bug.cgi?id=28872
3016 Fixes a bug where handleEvent() in the V8 Custom SQL Statement Error binding would not return the correct result to WebCore after invoking the callback.
3018 Test: storage/statement-error-callback.html
3020 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
3021 (WebCore::V8CustomSQLStatementErrorCallback::handleEvent): Return true from handleEvent() if the callback raised an exception or the callback itself returned true.
3023 2009-09-03 Maxime Simon <simon.maxime@gmail.com>
3025 Reviewed by Eric Seidel.
3027 [Haiku] Adding three font-specific files to WebCore:
3028 FontCustomPlatformData.cpp, FontCustomPlatformData.h,
3029 and FontPlatformData.h
3030 https://bugs.webkit.org/show_bug.cgi?id=28131
3032 * platform/graphics/haiku/FontCustomPlatformData.cpp: Added.
3033 (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
3034 (WebCore::FontCustomPlatformData::fontPlatformData):
3035 (WebCore::createFontCustomPlatformData):
3036 * platform/graphics/haiku/FontCustomPlatformData.h: Added.
3037 (WebCore::FontCustomPlatformData::FontCustomPlatformData):
3038 * platform/graphics/haiku/FontPlatformData.h: Added.
3039 (WebCore::FontPlatformData::FontPlatformData):
3040 (WebCore::FontPlatformData::font):
3041 (WebCore::FontPlatformData::size):
3042 (WebCore::FontPlatformData::bold):
3043 (WebCore::FontPlatformData::oblique):
3044 (WebCore::FontPlatformData::hashTableDeletedFontValue):
3046 2009-09-02 Brady Eidson <beidson@apple.com>
3048 Reviewed by Darin Adler.
3050 More partial work towards "Page Cache should support pages with Frames"
3051 https://bugs.webkit.org/show_bug.cgi?id=13631
3053 No new tests. (No change in behavior, current tests pass).
3055 * loader/DocumentLoader.cpp:
3056 (WebCore::DocumentLoader::stopLoading): Adopt the new enum form for FrameLoader::stopLoading().
3058 * loader/FrameLoader.cpp:
3059 (WebCore::FrameLoader::stopLoading): Take an enum to decide whether to dispatch no unload events,
3060 only unload, or unload and pagehide.
3061 (WebCore::FrameLoader::closeURL):
3062 (WebCore::FrameLoader::scheduleRedirection):
3063 (WebCore::FrameLoader::cachePageForHistoryItem): Call pageHidden().
3064 (WebCore::FrameLoader::pageHidden): Add to dispatch the pagehide event to all frames in the case
3065 where a page is added to the PageCache.
3066 * loader/FrameLoader.h:
3068 * loader/FrameLoaderTypes.h: Add an UnloadEventPolicy enum.
3070 2009-09-02 Brady Eidson <beidson@apple.com>
3072 Reviewed by Darin Adler.
3074 More partial work towards "Page Cache should support pages with Frames"
3075 https://bugs.webkit.org/show_bug.cgi?id=13631
3077 - More CachedFrame destruction work.
3078 - Including related Frame and FrameLoader changes and cleanup.
3080 No new tests. (No change in behavior, current tests pass).
3082 * history/CachedFrame.cpp:
3083 (WebCore::CachedFrameBase::restore): Rebuild up the whole FrameTree when restoring.
3084 (WebCore::CachedFrame::CachedFrame): Tear down the entire FrameTree when caching.
3085 (WebCore::CachedFrame::destroy): For child frames that are being destroyed while in
3086 the PageCache, do lightweight cleanup to:
3087 A - Prevent referring to a stale Page object.
3088 B - Prevent World Leaks of WebKit objects.
3090 * loader/FrameLoader.cpp:
3091 (WebCore::FrameLoader::stopAllLoaders): stopAllLoaders() should never be called on Frames that are
3092 in the PageCache. ASSERT that fact.
3093 (WebCore::FrameLoader::open): Remove a bogus release-build workaround, as the comment right above it
3094 explains it is not effective, and it'd be better to see the crash locally instead of downstream.
3095 (WebCore::FrameLoader::closeAndRemoveChild): Make sure the owner element has a page pointer before
3097 (WebCore::FrameLoader::detachFromParent): Use the new detachViewsAndDocumentLoader() call
3098 (WebCore::FrameLoader::detachViewsAndDocumentLoader): Does lightweight cleanup of client (WebKit) objects.
3099 * loader/FrameLoader.h:
3102 (WebCore::Frame::detachFromPage): Simply clear the Page pointer without doing any other work.
3103 (WebCore::Frame::pageDestroyed): Use the new detachFromPage().
3106 2009-09-02 Jungshik Shin <jshin@chromium.org>
3108 Reviewed by Dimitri Glazkov
3110 [Chromium] Add 'icu::' qualifier in preparation for ICU upgrade to 4.2
3111 in Chromium. This is to fix a new file added in r28742 since the
3112 last patch for this issue.
3114 https://bugs.webkit.org/show_bug.cgi?id=28410
3116 No change in the test result.
3118 * platform/graphics/chromium/FontLinux.cpp:
3119 (WebCore::TextRunWalker::getNormalizedTextRun):
3121 2009-09-02 Dimitri Glazkov <dglazkov@chromium.org>
3123 Unreviewed, build fix.
3125 [Chromium] Correct a typo to fix bustage, caused by r47991.
3126 https://bugs.webkit.org/show_bug.cgi?id=27933
3128 * platform/graphics/skia/ImageBufferSkia.cpp: Changed "Unpremultipled" to "Unmultiplied".
3130 2009-09-02 Dimitri Glazkov <dglazkov@chromium.org>
3132 Unreviewed, build fix.
3134 [Chromium] Add a missing include to fix bustage, caused by r47991.
3135 https://bugs.webkit.org/show_bug.cgi?id=27933
3137 * platform/graphics/skia/ImageBufferSkia.cpp: Added SkColorPriv include.
3139 2009-09-02 Jian Li <jianli@chromium.org>
3141 Reviewed by Dimitri Glazkov.
3143 [Chromium] Implement file support for DragData.
3144 https://bugs.webkit.org/show_bug.cgi?id=28896
3146 * platform/chromium/DragDataChromium.cpp:
3147 (WebCore::DragData::containsURL):
3148 (WebCore::DragData::asURL):
3149 (WebCore::DragData::containsCompatibleContent):
3151 2009-09-02 Kevin Watters <kevinwatters@gmail.com>
3153 Reviewed by Kevin Ollivier.
3155 Protect libcurl shared data with Mutex objects via curl_set_share_opt.
3156 https://bugs.webkit.org/show_bug.cgi?id=28920
3158 * platform/network/curl/ResourceHandleManager.cpp:
3159 (WebCore::sharedResourceMutex):
3160 (WebCore::curl_lock_callback):
3161 (WebCore::curl_unlock_callback):
3162 (WebCore::ResourceHandleManager::ResourceHandleManager):
3164 2009-09-02 Evan Stade <estade@chromium.org>
3166 Reviewed by Eric Seidel.
3168 Expose functions to change the focus ring color for Linux Chromium
3170 https://bugs.webkit.org/show_bug.cgi?id=28887
3172 * rendering/RenderThemeChromiumLinux.cpp:
3173 (WebCore::RenderThemeChromiumLinux::RenderThemeChromiumLinux):
3174 (WebCore::RenderThemeChromiumLinux::setFocusRingColor):
3175 (WebCore::RenderThemeChromiumLinux::platformFocusRingColor):
3176 * rendering/RenderThemeChromiumLinux.h:
3178 2009-09-02 Dirk Schulze <krit@webkit.org>
3180 Reviewed by Eric Seidel.
3182 SVG Filter premultiplied color support for getImageDate/putImageData
3183 [https://bugs.webkit.org/show_bug.cgi?id=27933]
3185 Patch to get premultiplied color support for Skia on getImageDate/putImageData.
3187 * platform/graphics/skia/ImageBufferSkia.cpp:
3188 (WebCore::getImageData):
3189 (WebCore::putImageData):
3191 2009-09-02 Brady Eidson <beidson@apple.com>
3193 Forget to rename openInFrameloader() to open(), which was requested in Darin's review of my last patch.
3195 * history/CachedFrame.cpp:
3196 (WebCore::CachedFrameBase::restore):
3197 (WebCore::CachedFrame::open):
3198 * history/CachedFrame.h:
3199 * history/CachedPage.cpp:
3200 (WebCore::CachedPage::restore):
3202 2009-09-02 Brady Eidson <beidson@apple.com>
3204 Reviewed by Darin Adler.
3206 In http://trac.webkit.org/changeset/47943 I added new header dependencies to FrameLoader.h.
3207 Removing them is a little trouble, but worth it going forward.
3208 The pattern of creating a "CachedFrameBase" as the interface CachedFrame provides to FrameLoader
3209 was suggested by Darin Adler.
3211 No new tests. (No change in behavior)
3213 Make CachedFrame inherit privately from CachedFrameBase, which becomes the interface FrameLoader uses:
3214 * history/CachedFrame.cpp:
3215 (WebCore::CachedFrameBase::CachedFrameBase):
3216 (WebCore::CachedFrameBase::~CachedFrameBase):
3217 (WebCore::CachedFrameBase::restore):
3218 (WebCore::CachedFrame::CachedFrame):
3219 (WebCore::CachedFrame::openInFrameLoader):
3220 * history/CachedFrame.h:
3221 (WebCore::CachedFrameBase::document):
3222 (WebCore::CachedFrameBase::view):
3223 (WebCore::CachedFrameBase::domWindow):
3224 (WebCore::CachedFrame::create):
3225 (WebCore::CachedFrame::documentLoader):
3226 (WebCore::CachedFrame::mousePressNode):
3228 Call the new ::openInFrameLoader() method on the CachedFrame, as CachedFrameBase is now the only
3229 thing capable of interacting with FrameLoader::open(CachedFrameBase):
3230 * history/CachedPage.cpp:
3231 (WebCore::CachedPage::restore):
3232 * history/CachedPage.h:
3233 (WebCore::CachedPage::documentLoader):
3235 Make ::open(CachedFrame) public, and change it to ::open(CachedFrameBase):
3236 * loader/FrameLoader.cpp:
3237 (WebCore::FrameLoader::open):
3238 * loader/FrameLoader.h:
3240 2009-09-02 Ryosuke Niwa <rniwa@webkit.org>
3242 Reviewed by Eric Seidel.
3244 Cannot pres Enter to escape from bulleted list when <ul> is a child of <li>.
3245 https://bugs.webkit.org/show_bug.cgi?id=24866
3247 This patch modifies breakOutOfEmptyListItem to break out of a properly nested list
3248 (a list to break out of is inside another list item).
3250 When the empty list item appears at the end of another list item, WebKit breaks out of
3251 the outer list item, and adds new item below the outer list item.
3252 Otherwise, WebKit breaks out of the the inner list item and inserts new paragraph.
3254 Test: editing/execCommand/break-out-of-empty-list-item.html
3256 * editing/CompositeEditCommand.cpp:
3257 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
3259 2009-09-02 Brady Eidson <beidson@apple.com>
3261 Reviewed by Sam Weinig.
3263 More partial work towards "Page Cache should support pages with Frames"
3264 https://bugs.webkit.org/show_bug.cgi?id=13631
3266 This patch is primarily about the "CachedFrame tree" and making slightly different decisions
3267 based on whether a CachedFrame is the main frame or a subframe.
3269 - Store whether a CachedFrame represents the main frame or a subframe.
3270 - "Chop off the frame tree" for the main frame when creating its CachedFrame, as main frames
3271 are reused and need to start new page loads with an empty frame tree.
3272 - Reattach the frame tree to the main frame when restoring it.
3273 - open() the cached subframes in their respective loaders when restoring.
3274 - Properly clear() and destroy() cached subframes.
3275 - When committing to a new page load, and after caching the previous page, only clear the
3276 FrameView for the main frame.
3278 Note that all of above will eventually be necessary as I continue to land this work in pieces,
3279 but doesn't actually change any behavior right now because we still refuse to even *try* to
3280 cache pages with frames.
3282 No new tests. No change in behavior, and current tests continue to pass.
3284 * history/CachedFrame.cpp:
3285 (WebCore::CachedFrame::CachedFrame):
3286 (WebCore::CachedFrame::restore):
3287 (WebCore::CachedFrame::clear):
3288 (WebCore::CachedFrame::destroy):
3289 * history/CachedFrame.h:
3290 (WebCore::CachedFrame::isMainFrame):
3292 * loader/FrameLoader.cpp:
3293 (WebCore::FrameLoader::clear):
3294 (WebCore::FrameLoader::open):
3295 * loader/FrameLoader.h:
3297 2009-09-02 Brady Eidson <beidson@apple.com>
3299 No review, build fix.
3301 http://trac.webkit.org/changeset/47976 broke the build.
3302 Let's try compiling before we land things, shall we?
3304 * platform/graphics/SimpleFontData.cpp:
3305 (WebCore::SimpleFontData::SimpleFontData): Order the initialization list correctly.
3307 2009-09-02 Kevin Ollivier <kevino@theolliviers.com>
3309 waf build fixes for Windows/MSVC.
3313 2009-09-02 Ben Murdoch <benm@google.com>
3315 Unreviewed build fix for Chromium.
3317 Missed #including V8Proxy.h in WebCore/bindings/v8/V8Binding.cpp.
3319 * bindings/v8/V8Binding.cpp: add V8Proxy.h as an include
3321 2009-09-02 Kevin Ollivier <kevino@theolliviers.com>
3323 waf build fix, don't define symbols we now grab from other sources.
3325 * platform/wx/TemporaryLinkStubs.cpp:
3327 2009-09-02 Kevin Ollivier <kevino@theolliviers.com>
3329 Build fixes for PluginViewNone.cpp and a wx build fix for PluginView.cpp.
3331 * plugins/PluginView.cpp:
3332 (WebCore::PluginView::stop):
3333 * plugins/PluginViewNone.cpp:
3334 (WebCore::PluginView::platformDestroy):
3336 2009-09-02 Charles Wei <charles.wei@torchmobile.com.cn>
3338 Reviewed by Eric Seidel.
3340 Fix the build failure of WebKit for Linux/Qt when WML is enabled
3342 No test cases needed since this just fixes the build problem.
3344 * wml/WMLElement.cpp:
3345 (WebCore::WMLElement::create):
3346 * wml/WMLTableElement.cpp:
3347 (WebCore::WMLTableElement::joinSuperflousColumns):
3348 (WebCore::WMLTableElement::padWithEmptyColumns):
3350 2009-09-02 Yong Li <yong.li@torchmobile.com>
3352 Reviewed by Adam Barth.
3354 WINCE PORT: use shared buffer for custom font data
3355 https://bugs.webkit.org/show_bug.cgi?id=27734
3357 Refactored by Joe Mason <joe.mason@torchmobile.com>
3359 * loader/CachedFont.cpp:
3360 add WINCE to platforms using cached custom data
3361 * platform/graphics/opentype/OpenTypeUtilities.cpp:
3362 (WebCore::renameFont): implement for WinCE
3363 * platform/graphics/opentype/OpenTypeUtilities.h:
3365 * platform/graphics/wince/FontCustomPlatformData.cpp:
3366 (WebCore::setCustomFontCache): add accessor
3367 (WebCore::createFontCustomPlatformData): change param to SharedBuffer
3368 * platform/graphics/wince/FontCustomPlatformData.h:
3369 update function signatures
3371 2009-09-02 Yong Li <yong.li@torchmobile.com>
3373 Reviewed by Adam Barth.
3375 WINCE PORT: font-related build fixes and minor bugfixes
3376 https://bugs.webkit.org/show_bug.cgi?id=27734
3378 * platform/graphics/FontCache.h: declare functions added in https://bugs.webkit.org/show_bug.cgi?id=27509
3379 * platform/graphics/GlyphPageTreeNode.cpp:
3380 (WebCore::GlyphPageTreeNode::initializePage): fix ambiguous overload error in min/max on Windows
3381 * platform/graphics/SimpleFontData.cpp:
3382 (WebCore::SimpleFontData::SimpleFontData): initialize member vars
3383 * platform/graphics/SimpleFontData.h: disable unused members on Wince to save space
3385 2009-09-02 Jeremy Orlow <jorlow@chromium.org>
3387 Reviewed by Adam Barth.
3389 Another pass at releasing the storage mutex.
3390 https://bugs.webkit.org/show_bug.cgi?id=28904
3392 Another pass at releasing the storage mutex (when applicable) when we finish
3393 executing JavaScript. http://dev.w3.org/html5/spec/Overview.html#storage-mutex
3394 describes the required behavior.
3396 As it turns out, https://bugs.webkit.org/show_bug.cgi?id=28789 didn't solve
3397 the problem correctly. First of all, I missed that events and timeouts go
3398 through a different call path. Second of all, I didn't consider recursion
3399 correctly. Third of all, my check to see if LocalStorage is alive actually
3400 instantiates it if it isn't yet. Fourth, I forgot DOM_STORAGE guards around
3401 it. So I'm reverting that change completely and doing it more cleanly.
3402 Unfortunately, the solution isn't as portable (and thus I've left out the JSC
3403 implementation for now).
3405 NOTE: This change now tracks recursion on function callbacks in V8. I ran this
3406 by Mads Ager and Mike Belshe and they seemed to think adding the checks were
3407 fine. Most callbacks are asynchronous and thus wouldn't be nested. The few
3408 scenareos where you can have nested callbacks probably should have always been
3409 protected by a recursion guard.
3411 Unfortunately, this can't be tested without a hook added to the layout test
3412 controllers since the lock is (by design) not supposed to be observable by
3413 JavaScript. https://bugs.webkit.org/show_bug.cgi?id=28906
3415 * bindings/js/ScriptController.cpp:
3416 (WebCore::ScriptController::evaluate): revert
3417 * bindings/v8/ScriptController.cpp:
3418 (WebCore::ScriptController::evaluate): revert
3419 * bindings/v8/V8Proxy.cpp:
3420 (WebCore::V8Proxy::runScript):
3421 Add releaseStorageMutex call. A small amount of clean up.
3422 (WebCore::V8Proxy::callFunction):
3423 Add releaseStorageMutex call. A small amount of clean up.
3424 (WebCore::V8Proxy::releaseStorageMutex):
3425 Check to see if localStorage has been instantiated. If so, tell it to
3426 unlock all storage areas.
3427 * bindings/v8/V8Proxy.h:
3429 (WebCore::PageGroup::hasLocalStorage): Make hasLocalStorage public.
3431 2009-09-02 Yong Li <yong.li@torchmobile.com>
3433 Reviewed by Adam Barth.
3435 WINCE PORT: Implement ImageBuffer for WINCE
3436 Implement Image interface with a light class BufferedImage
3437 for rendering ImageBuffer
3438 https://bugs.webkit.org/show_bug.cgi?id=28167
3440 * platform/graphics/wince/ImageBufferData.h: Added.
3441 * platform/graphics/wince/ImageBufferWince.cpp: Added.
3443 2009-08-31 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
3445 Reviewed by Eric Seidel.
3447 Join the various PluginView destructors into one shared implementation
3449 https://bugs.webkit.org/show_bug.cgi?id=27706
3451 The Qt port used to delete the platform plugin widget as the last step.
3452 Now this is done before cleaning up the script objects and unloading the
3453 plugin package, similar to how the Win port does it.
3455 * plugins/PluginView.cpp:
3456 * plugins/PluginViewNone.cpp:
3457 * plugins/gtk/PluginViewGtk.cpp:
3458 * plugins/mac/PluginViewMac.cpp:
3459 * plugins/qt/PluginViewQt.cpp:
3460 * plugins/win/PluginViewWin.cpp:
3462 2009-08-31 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
3464 Reviewed by Eric Seidel.
3466 Share PluginView::init() between ports
3468 https://bugs.webkit.org/show_bug.cgi?id=27706
3470 The port-spesific bits are moved to platformStart(), which now returns
3471 a bool based on the success of the platformStart.
3473 m_hasPendingGeometryChange is now initialized in the initializer list
3474 instead of in PluginViewQt's init()
3476 PluginViewMac (currently used only by the Qt port) used to manually call
3477 stop() in the case where an unsupported drawing or event model was detected.
3478 This was wrong, as the m_status and m_isStarted fields should be used to
3479 guard against doing operations on a plugin in this intermediate state.
3481 * plugins/PluginView.cpp:
3482 * plugins/PluginView.h:
3483 * plugins/PluginViewNone.cpp:
3484 * plugins/gtk/PluginViewGtk.cpp:
3485 * plugins/mac/PluginViewMac.cpp:
3486 * plugins/qt/PluginViewQt.cpp:
3487 * plugins/win/PluginViewWin.cpp:
3489 2009-09-02 Ben Murdoch <benm@google.com>
3491 https://bugs.webkit.org/show_bug.cgi?id=28737
3493 Update JavaScript bindings in JSC and V8 for SQLTransaction to throw exceptions in the right places.
3495 * bindings/js/JSSQLTransactionCustom.cpp:
3496 (WebCore::JSSQLTransaction::executeSql): Throw an exception if no parameters are passed to executeSql().
3497 * bindings/v8/V8Binding.cpp:
3498 (WebCore::v8ValueToWebCoreString): Catch an exception if thrown from toString().
3499 * bindings/v8/custom/V8SQLTransactionCustom.cpp:
3500 (WebCore::CALLBACK_FUNC_DECL): Allow "arrayish objects" to be passed to executeSql.
3502 2009-09-01 Pavel Feldman <pfeldman@chromium.org>
3504 Reviewed by Timothy Hatcher.
3506 WebInspector: Migrate Databases tab to InjectedScript /
3507 serialized interaction.
3509 https://bugs.webkit.org/show_bug.cgi?id=28873
3511 * inspector/InspectorDOMAgent.cpp:
3512 (WebCore::InspectorDOMAgent::handleEvent):
3513 * inspector/front-end/Database.js:
3514 (WebInspector.Database.prototype.isDB):
3515 (WebInspector.Database.prototype.runWithTableNames.sortingCallback):
3516 (WebInspector.Database.prototype.runWithTableNames):
3517 (WebInspector.Database.prototype.executeSql):
3518 (WebInspector.Database.prototype.executeSql.errorCallback):
3519 (WebInspector.Database.prototype.executeSql.queryTransaction):
3520 * inspector/front-end/DatabaseQueryView.js:
3521 (WebInspector.DatabaseQueryView.prototype._enterKeyPressed):
3522 (WebInspector.DatabaseQueryView.prototype._queryFinished):
3523 * inspector/front-end/DatabaseTableView.js:
3524 (WebInspector.DatabaseTableView):
3525 * inspector/front-end/StoragePanel.js:
3526 (WebInspector.StoragePanel.prototype.selectDatabase):
3527 (WebInspector.StoragePanel.prototype.updateDatabaseTables.withTableNames):
3528 (WebInspector.StoragePanel.prototype.updateDatabaseTables):
3529 (WebInspector.DatabaseSidebarTreeElement.prototype.onpopulate.withTableNames):
3530 (WebInspector.DatabaseSidebarTreeElement.prototype.onpopulate):
3532 2009-09-02 Pavel Feldman <pfeldman@chromium.org>
3534 Not reviewed (trivial followup fix).
3536 Web Inspector: Trivial follow up fix to r47944.
3538 https://bugs.webkit.org/show_bug.cgi?id=28800
3540 * inspector/InspectorBackend.cpp:
3541 (WebCore::InspectorBackend::nodeForId):
3543 2009-09-01 Brian Weinstein <bweinstein@apple.com>
3545 Reviewed by John Sullivan.
3547 Fixed a bug in handling of isReadOnly, where textareas were casted to HTMLInputElements.
3549 * accessibility/AccessibilityRenderObject.cpp:
3550 (WebCore::AccessibilityRenderObject::isReadOnly):
3552 2009-09-01 Patrick Mueller <Patrick_Mueller@us.ibm.com>
3554 Reviewed by Timothy Hatcher.
3556 https://bugs.webkit.org/show_bug.cgi?id=28047
3557 add utility method to enable logging messages for inspector development
3559 manual test case added (see below)
3561 * inspector/front-end/ConsoleView.js:
3562 (WebInspector.ConsoleMessage.prototype.toMessageElement):
3563 (WebInspector.ConsoleMessage.prototype.toString):