Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1985)

Side by Side Diff: Source/WebCore/ChangeLog

Issue 7432005: Merge 91249 - Fix microphone icon placement in speech input control for dir=rtl. (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/782/
Patch Set: Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « LayoutTests/platform/chromium/test_expectations.txt ('k') | Source/WebCore/css/html.css » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 2011-07-19 Jeremy Moskovich <jeremy@chromium.org>
2
3 Fix microphone icon placement in speech input control for dir=rtl.
4 https://bugs.webkit.org/show_bug.cgi?id=64668
5
6 Reviewed by Dimitri Glazkov.
7
8 Modify default stylesheet to propagate dir=rtl from the outer input
9 control to the shadow DOM container. This makes the microphone
10 icon appear on the left for dir=rtl, which is the desired behavior.
11
12 Test: fast/speech/speech-bidi-rendering.html
13
14 * css/html.css:
15 (input[x-webkit-speech][dir=rtl]::-webkit-textfield-decoration-container ):
16
17 2011-07-19 Raphael Kubo da Costa <kubo@profusion.mobi>
18
19 [EFL] Account for the invalid pointer case in WebCore::screenRect()
20 https://bugs.webkit.org/show_bug.cgi?id=64543
21
22 Reviewed by Antonio Gomes.
23
24 Fix a regression introduced in r88245: it assumes the pointer passed
25 to screenRect() is always valid.
26 fast/frames/crash-removed-iframe.html proves this is not always true,
27 so we need to do some sanity check on the pointer before using it.
28 No new tests as this has been caught by the current test suite.
29
30 * platform/efl/PlatformScreenEfl.cpp:
31 (WebCore::screenRect):
32
33 2011-07-19 Robin Qiu <robin.qiu@torchmobile.com.cn>
34
35 Reviewed by Antonio Gomes.
36
37 ScrollBar should initialize current position in constructor.
38 https://bugs.webkit.org/show_bug.cgi?id=39284
39
40 When ScrollBar is created, m_currentPos should be initialized to
41 m_scrollableArea's current scrollPosition. Because scrollbars may
42 be created after the content of m_scrollableArea has been scrolled.
43
44 Test: scrollbars/scrollbar-initial-position.html
45
46 * platform/Scrollbar.cpp:
47 (WebCore::Scrollbar::Scrollbar):
48
49 2011-07-19 Yuta Kitamura <yutak@chromium.org>
50
51 WebSocket: Implement hybi framing
52 https://bugs.webkit.org/show_bug.cgi?id=64522
53
54 Reviewed by Kent Tamura.
55
56 Implement WebSocket framing protocol which is mainly described in
57 <http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10#sect ion-4> and
58 <http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10#sect ion-6>.
59
60 Hybi protocol introduces a new frame format which is drastically differe nt from
61 the old one. Notable differences are:
62 - Binary data support.
63 - Fragmentation support: a single message can be fragmented to multiple frames.
64 - Ping-pong support.
65 - Masking: frame content of a client must be masked to prevent cross-pro tocol attacks.
66
67 This patch covers the following features:
68 - Send a pong frame when a ping frame is received.
69 - Receive fragmented frames.
70 - Receive masked frames. (Servers do not have to mask frames, but they m ay if they wish.)
71
72 The following features are NOT implemented yet:
73 - Send or receive binary messages.
74 - Send a ping message.
75 - Send fragmented frames. (It is unclear whether this is necessary.)
76 - Rewrite the frame content by WebSocket protocol extensions (like frame compression).
77
78 New tests: http/tests/websocket/tests/hybi/broken-utf8.html
79 http/tests/websocket/tests/hybi/fragmented-control-frame.html
80 http/tests/websocket/tests/hybi/fragmented-frames.html
81 http/tests/websocket/tests/hybi/interleaved-fragments.html
82 http/tests/websocket/tests/hybi/long-control-frame.html
83 http/tests/websocket/tests/hybi/masked-frames.html
84 http/tests/websocket/tests/hybi/pong.html
85 http/tests/websocket/tests/hybi/reserved-bits.html
86 http/tests/websocket/tests/hybi/reserved-opcodes.html
87 http/tests/websocket/tests/hybi/too-long-payload.html
88
89 * websockets/WebSocketChannel.cpp:
90 (WebCore::WebSocketChannel::WebSocketChannel):
91 (WebCore::WebSocketChannel::send):
92 The original content of send() was moved to a private method sendFrameHi xie76().
93 (WebCore::WebSocketChannel::fail):
94 Stop handling incoming data after the WebSocket connection is failed.
95 It was unclear to me whether we should do the same thing for hixie-76 co nnection;
96 for now, I kept the original behavior.
97 (WebCore::WebSocketChannel::processBuffer):
98 (WebCore::WebSocketChannel::resumeTimerFired):
99 (WebCore::WebSocketChannel::startClosingHandshake):
100 (WebCore::WebSocketChannel::closingTimerFired):
101 (WebCore::WebSocketChannel::parseFrame):
102 (WebCore::WebSocketChannel::processFrame):
103 (WebCore::WebSocketChannel::processFrameHixie76):
104 (WebCore::WebSocketChannel::sendFrame):
105 (WebCore::WebSocketChannel::sendFrameHixie76):
106 * websockets/WebSocketChannel.h:
107 (WebCore::WebSocketChannel::isNonControlOpCode):
108 (WebCore::WebSocketChannel::isControlOpCode):
109 (WebCore::WebSocketChannel::isReservedOpCode):
110
111 2011-07-19 Nikolas Zimmermann <nzimmermann@rim.com>
112
113 REGRESSION (r88913): Preview in Safari's snippet editor has a fixed heig ht instead of filling the entire pane
114 https://bugs.webkit.org/show_bug.cgi?id=64059
115
116 REGRESSION (r88913): <object> has wrong computed height
117 https://bugs.webkit.org/show_bug.cgi?id=62769
118
119 Reviewed by Rob Buis.
120
121 Fix misinterpretation of CSS 2.1 - "10.5 Content height: the 'height' pr operty".
122 It says "If the height of the containing block is not specified explicit elz (i.e. it depends on the
123 content height), and this element is not absolutely positioned, the valu e computes to 'auto'".
124
125 Checking whether the containing block height depends on the content heig ht is not equal to checking
126 whether the height property is set on the containing block, there are ot her ways to implicitly specify
127 the height by setting top & bottom. Fix that by checking whether the con taining block has a height
128 property or top & bottom set.
129
130 While I was at it, make computeReplacedLogicalWidth/Height a bit more ex plicit to make it easier to compare
131 the code with the spec quoatations - this doesn't change the functionali ty only the readability.
132
133 Test: fast/css/replaced-element-implicit-size.html
134
135 * rendering/RenderReplaced.cpp:
136 (WebCore::RenderReplaced::computeReplacedLogicalWidth): Cleanup comment, make code more explicit.
137 (WebCore::RenderReplaced::logicalHeightIsAuto): Add helper method used b y computeReplacedLogicalHeight.
138 (WebCore::RenderReplaced::computeReplacedLogicalHeight): Fix height=auto detection.
139 * rendering/RenderReplaced.h:
140
141 2011-07-18 Ryosuke Niwa <rniwa@webkit.org>
142
143 REGRESSION(91209?): fast/css/custom-font-xheight.html is failing on Leop ard
144 https://bugs.webkit.org/show_bug.cgi?id=64767
145
146 Add a runtime check for font cascading optimization.
147
148 It's a constant value in Mac port so hopefully gcc will constant-propaga te the value
149 and eliminate the function altogether.
150
151 * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
152 (WebCore::canSetCascadeListForCustomFont): Added.
153 (WebCore::FontPlatformData::ctFont):
154
155 2011-07-18 MORITA Hajime <morrita@google.com>
156
157 [ShadowContentElement] forwarded node should be able to access its hosti ng content element.
158 https://bugs.webkit.org/show_bug.cgi?id=64251
159
160 Reviewed by Dimitri Glazkov.
161
162 - Introduced ShadowInclusionSet to manage included nodes to its includer content element.
163 ShadowInclusionSet instance is owned by ShadowRoot.
164 - Updated the set on inclusion list changes.
165 - Used the set to retrieve the content element of NodeRenderingContext.
166
167 There are also related refactoring and cleanup:
168 - Renamed NodeRenderingContext::m_contentElement to m_includer
169 - ShadowContentSelector::m_activeElement is no longer used, thus removed .
170
171 Test: fast/dom/shadow/content-element-includer.html
172
173 * WebCore.exp.in:
174 * dom/NodeRenderingContext.cpp:
175 (WebCore::NodeRenderingContext::NodeRenderingContext):
176 (WebCore::NodeRenderingContext::nextRenderer):
177 (WebCore::NodeRenderingContext::previousRenderer):
178 * dom/NodeRenderingContext.h:
179 (WebCore::NodeRenderingContext::includer):
180 * dom/ShadowContentElement.cpp:
181 (WebCore::removeFromSet):
182 (WebCore::addToSet):
183 (WebCore::ShadowContentElement::attach):
184 (WebCore::ShadowContentElement::detach):
185 * dom/ShadowContentElement.h:
186 (WebCore::ShadowInclusionSet::add):
187 (WebCore::ShadowInclusionSet::remove):
188 (WebCore::ShadowInclusionSet::isEmpty):
189 (WebCore::ShadowInclusionSet::Translator::hash):
190 (WebCore::ShadowInclusionSet::Translator::equal):
191 (WebCore::ShadowInclusionSet::Hash::hash):
192 (WebCore::ShadowInclusionSet::Hash::equal):
193 (WebCore::ShadowInclusionSet::find):
194 * dom/ShadowContentSelector.cpp:
195 (WebCore::ShadowContentSelector::ShadowContentSelector):
196 (WebCore::ShadowContentSelector::selectInclusion):
197 * dom/ShadowContentSelector.h:
198 * dom/ShadowRoot.cpp:
199 (WebCore::ShadowRoot::~ShadowRoot):
200 (WebCore::ShadowRoot::includerFor):
201 (WebCore::ShadowRoot::inclusions):
202 (WebCore::ShadowRoot::ensureInclusions):
203 * dom/ShadowRoot.h:
204 (WebCore::toShadowRoot):
205 * testing/Internals.cpp:
206 (WebCore::Internals::includerFor):
207 * testing/Internals.h:
208 * testing/Internals.idl:
209
210 2011-07-18 Dean Jackson <dino@apple.com>
211
212 https://bugs.webkit.org/show_bug.cgi?id=64742
213 Expose WebPreferences for media playback requiring user gestures and inl ine playback
214
215 Reviewed by Simon Fraser.
216
217 Media playback already tested if it should require user gestures, but
218 no setting was ever exposed to clients. Also, some ports only allow medi a
219 playback to be fullscreen, so exposing a new setting for them.
220
221 * html/HTMLMediaElement.cpp:
222 (WebCore::HTMLMediaElement::HTMLMediaElement): Examine the new Setting
223 for user gestures.
224 * page/Settings.cpp:
225 (WebCore::Settings::Settings):
226 * page/Settings.h: Two new settings.
227 (WebCore::Settings::setMediaPlaybackRequiresUserGesture):
228 (WebCore::Settings::mediaPlaybackRequiresUserGesture):
229 (WebCore::Settings::setMediaPlaybackAllowsInline):
230 (WebCore::Settings::mediaPlaybackAllowsInline):
231
232 2011-07-18 Ryosuke Niwa <rniwa@webkit.org>
233
234 Leopard build fix after r91229.
235
236 * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
237 (WebCore::FontPlatformData::ctFont):
238
239 2011-07-18 Dan Bernstein <mitz@apple.com>
240
241 REGRESSION(91209?): fast/css/custom-font-xheight.html is failing on Leop ard
242 https://bugs.webkit.org/show_bug.cgi?id=64767
243
244 Reviewed by Sam Weinig.
245
246 * platform/graphics/Font.h:
247 * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
248 (WebCore::FontPlatformData::ctFont): Undo the cascade list optimization on Leopard for custom
249 fonts, because adding a cascade list apparently breaks the font.
250
251 2011-07-18 Matthew Delaney <mdelaney@apple.com>
252
253 Remove drawsUsingCopy now that all ports handle the copying
254 https://bugs.webkit.org/show_bug.cgi?id=64768
255
256 Introduced in https://bugs.webkit.org/show_bug.cgi?id=43507, ImageBuffer ::drawsUsingCopy
257 was used to know whether or not an ImageBuffer should be explicitly copi ed before being
258 painted into a context (as was used in HTMLCanvasElement::paint). All pl atforms now
259 handle the logic of copying or not in their ImageBuffer::draw() implemen tations, so
260 drawsUsingCopy() is no longer needed. This patch removes it.
261
262 Reviewed by Dan Bernstein.
263
264 No new tests; does not affect behavior.
265
266 * html/HTMLCanvasElement.cpp:
267 (WebCore::HTMLCanvasElement::paint):
268 * platform/graphics/ImageBuffer.h:
269 (WebCore::ImageBuffer::isAccelerated):
270 * platform/graphics/cairo/ImageBufferCairo.cpp:
271 * platform/graphics/cg/ImageBufferCG.cpp:
272 * platform/graphics/qt/ImageBufferQt.cpp:
273 * platform/graphics/skia/ImageBufferSkia.cpp:
274 * platform/graphics/wince/ImageBufferWinCE.cpp:
275 * platform/graphics/wx/ImageBufferWx.cpp:
276
277 2011-07-18 Vsevolod Vlasov <vsevik@chromium.org>
278
279 Web Inspector: [REGRESSION] Resource preserving fails when frameNavigate d event is dispatched on NetworkPanel.
280 https://bugs.webkit.org/show_bug.cgi?id=64748
281
282 Reviewed by Pavel Feldman.
283
284 * inspector/front-end/NetworkPanel.js:
285 (WebInspector.NetworkLogView.prototype._frameNavigated):
286
287 2011-07-18 Brian Weinstein <bweinstein@apple.com>
288
289 Prep work for: Crash under WebPage::platformDragEnded when dragging on M ac
290 https://bugs.webkit.org/show_bug.cgi?id=64766
291 <rdar://problem/9548174>
292
293 Reviewed by Darin Adler.
294
295 Add a DragClient function that is called when a drag is ended, and call it from DragController::dragEnded.
296 This isn't used yet, but will be used by WebKit2 on Mac.
297
298 This patch also cleans up style in DragClient.h.
299
300 No change in behavior, no tests needed.
301
302 * page/DragClient.h:
303 (WebCore::DragClient::dragEnded): Stub virtual implementation for now, t his will be used by
304 WebKit2 on Mac.
305 * page/DragController.cpp:
306 (WebCore::DragController::dragEnded): Call DragClient::dragEnded.
307
308 2011-07-18 Jon Honeycutt <jhoneycutt@apple.com>
309
310 Focus and selection events are not fired when a <select>'s selection
311 changes
312 https://bugs.webkit.org/show_bug.cgi?id=64504
313 <rdar://problem/9319881>
314
315 Reviewed by Alice Liu.
316
317 Test: platform/win/accessibility/option-element-selection-and-focus-even ts.html
318
319 * accessibility/chromium/AXObjectCacheChromium.cpp:
320 (WebCore::AXObjectCache::postPlatformNotification):
321 Add new notification type to the section of unhandled notifications.
322
323 * accessibility/AXObjectCache.h:
324 Declare a new notification, AXMenuListItemSelected.
325
326 * accessibility/AccessibilityMenuList.cpp:
327 (WebCore::AccessibilityMenuList::didUpdateActiveOption):
328 Tell our child popup that the active option changed, and post a
329 notification that our value changed.
330
331 * accessibility/AccessibilityMenuList.h:
332 Declare didUpdateActiveOption().
333
334 * accessibility/AccessibilityMenuListPopup.cpp:
335 (WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):
336 Get the child <option> element that is selected, and fire focus and
337 selection events for it.
338
339 * accessibility/AccessibilityMenuListPopup.h:
340 Declare didUpdateActiveOption().
341
342 * accessibility/win/AXObjectCacheWin.cpp:
343 (WebCore::AXObjectCache::postPlatformNotification):
344 Map AXMenuListItemSelected -> EVENT_OBJECT_SELECTION.
345
346 * dom/SelectElement.cpp:
347 (WebCore::SelectElement::setSelectedIndex):
348 Pass the newly-selected index.
349
350 * rendering/RenderMenuList.cpp:
351 (WebCore::RenderMenuList::RenderMenuList):
352 Update the initialization list for the renamed m_lastActiveIndex.
353 (WebCore::RenderMenuList::setTextFromOption):
354 A new selection has been made in the popup; call
355 didUpdateActiveOption().
356 (WebCore::RenderMenuList::didSetSelectedIndex):
357 Call didUpdateActiveOption(), passing the index of the newly-selected
358 <option>.
359 (WebCore::RenderMenuList::didUpdateActiveOption):
360 If accessibility is disabled, or if the active option has not changed,
361 return early. Check whether the option index is in the range of list
362 items, and assert that the item at that index is an <option> element.
363 Tell the AccessibilityMenuList for this element that we updated the
364 active option.
365
366 * rendering/RenderMenuList.h:
367 Updated the declaration of didSetSelectedIndex() to take the selected
368 index. Declared didUpdateActiveOption(). Renamed m_lastSelectedIndex to
369 m_lastActiveIndex.
370
371 2011-07-18 Dan Bernstein <mitz@apple.com>
372
373 Specify a cascade list consisting of the last resort font for Core Text
374 https://bugs.webkit.org/show_bug.cgi?id=64747
375
376 Reviewed by Sam Weinig.
377
378 No new tests, because this does not affect behavior.
379
380 This prevents Core Text from taking its default, longer fallback list wh en the primary font does
381 not include a character. This is OK to do because WebKit never uses the results of Core Text
382 fallback anyway.
383
384 * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
385 (WebCore::cascadeToLastResortFontDescriptor): Added. Returns a CTFontDes criptor with a cascade
386 list consisting of the last resort font.
387 (WebCore::FontPlatformData::ctFont): Changed to include the cascadeToLas tResortFontDescriptor
388 in the returned font.
389
390 2011-07-18 James Robinson <jamesr@chromium.org>
391
392 Timer scheduling should be based off the monotonic clock
393 https://bugs.webkit.org/show_bug.cgi?id=64544
394
395 Reviewed by Darin Adler.
396
397 Changes the Timer scheduling logic from using absolute values in terms o f currentTime() to using relative
398 intervals in terms of monotonicallyIncreasingTime(). This provides bett er standards compliance, compatibility,
399 and predictability when the system clock is adjusted.
400
401 No automated tests since there is no way to modify the system clock from DRT.
402
403 * platform/SharedTimer.h:
404 (WebCore::MainThreadSharedTimer::setFireInterval):
405 * platform/ThreadTimers.cpp:
406 (WebCore::ThreadTimers::updateSharedTimer):
407 (WebCore::ThreadTimers::sharedTimerFiredInternal):
408 * platform/Timer.cpp:
409 (WebCore::TimerBase::start):
410 (WebCore::TimerBase::nextFireInterval):
411 * platform/android/SharedTimerAndroid.cpp:
412 (WebCore::setSharedTimerFireInterval):
413 * platform/brew/SharedTimerBrew.cpp:
414 (WebCore::setSharedTimerFireInterval):
415 * platform/chromium/PlatformBridge.h:
416 * platform/chromium/SharedTimerChromium.cpp:
417 (WebCore::setSharedTimerFireInterval):
418 * platform/efl/SharedTimerEfl.cpp:
419 (WebCore::addNewTimer):
420 (WebCore::setSharedTimerFireInterval):
421 * platform/gtk/SharedTimerGtk.cpp:
422 (WebCore::setSharedTimerFireInterval):
423 * platform/haiku/SharedTimerHaiku.cpp:
424 (WebCore::SharedTimerHaiku::start):
425 (WebCore::setSharedTimerFireInterval):
426 * platform/mac/SharedTimerMac.mm:
427 (WebCore::setSharedTimerFireInterval):
428 * platform/qt/SharedTimerQt.cpp:
429 (WebCore::SharedTimerQt::start):
430 (WebCore::setSharedTimerFireInterval):
431 * platform/win/SharedTimerWin.cpp:
432 (WebCore::setSharedTimerFireInterval):
433 * platform/wince/SharedTimerWinCE.cpp:
434 (WebCore::setSharedTimerFireInterval):
435 * platform/wx/SharedTimerWx.cpp:
436 (WebCore::setSharedTimerFireInterval):
437 * workers/WorkerRunLoop.cpp:
438 (WebCore::WorkerSharedTimer::setFireInterval):
439
440 2011-07-18 Pratik Solanki <psolanki@apple.com>
441
442 Unreviewed. Fix Windows build. Move static function defaultSessionCookie Storage() to before
443 its use in defaultCookieStorage().
444
445 * platform/network/cf/CookieStorageCFNet.cpp:
446 (WebCore::defaultSessionCookieStorage):
447
448 2011-07-18 Pratik Solanki <psolanki@apple.com>
449
450 Part of https://bugs.webkit.org/show_bug.cgi?id=63674
451 Get webkit to compile with USE(CFNETWORK) enabled on Mac
452
453 Reviewed by David Kilzer.
454
455 Get coookie storage code to work with USE(CFNETWORK) enabled on Mac.
456
457 No new tests because no change in functionality.
458
459 * platform/network/cf/CookieStorageCFNet.cpp:
460 (WebCore::defaultCookieStorage):
461 (WebCore::defaultSessionCookieStorage):
462 * platform/network/cf/ResourceHandleCFNet.cpp:
463 (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
464 * platform/network/mac/CookieStorageMac.mm:
465
466 2011-07-18 Pratik Solanki <psolanki@apple.com>
467
468 Part of https://bugs.webkit.org/show_bug.cgi?id=63674
469 Get webkit to compile with USE(CFNETWORK) enabled on Mac
470
471 Reviewed by David Kilzer.
472
473 * WebCore.exp.in:
474
475 2011-07-18 Gavin Barraclough <barraclough@apple.com>
476
477 Speculative fix for Leopard assertions caused by 91095.
478
479 Rubber stamped by Sam Weinig.
480
481 * bridge/NP_jsobject.cpp:
482 (_NPN_Invoke):
483 - ensure we pass the window shell, not the global object.
484
485 2011-07-18 Mark Hahnenberg <mhahnenberg@apple.com>
486
487 Refactor JSC to replace JSCell::operator new with static create method
488 https://bugs.webkit.org/show_bug.cgi?id=64466
489
490 Reviewed by Oliver Hunt (oliver@apple.com) and Darin Adler (darin@apple. com).
491
492 First step in a longer refactoring process to remove the use of
493 operator new overloading in order to allocate GC objects and to replace
494 this method with static create methods for each individual type of heap- allocated
495 JS object. This particular patch only deals with replacing uses of
496 operator new within JSC proper. Future patches will remove it from the
497 parts that interface with the DOM. Due to the DOM's continued dependenc e
498 on it, operator new has not actually been removed from JSCell.
499
500 * bindings/js/JSDOMBinding.cpp:
501 (WebCore::jsDateOrNull):
502 (WebCore::objectToStringFunctionGetter):
503 * bindings/js/JSDOMWindowCustom.cpp:
504 (WebCore::nonCachingStaticFunctionGetter):
505 * bindings/js/JSHistoryCustom.cpp:
506 (WebCore::nonCachingStaticBackFunctionGetter):
507 (WebCore::nonCachingStaticForwardFunctionGetter):
508 (WebCore::nonCachingStaticGoFunctionGetter):
509 * bindings/js/JSLocationCustom.cpp:
510 (WebCore::nonCachingStaticReplaceFunctionGetter):
511 (WebCore::nonCachingStaticReloadFunctionGetter):
512 (WebCore::nonCachingStaticAssignFunctionGetter):
513 * bindings/js/SerializedScriptValue.cpp:
514 (WebCore::CloneDeserializer::readTerminal):
515 * bridge/qt/qt_runtime.cpp:
516 (JSC::Bindings::convertQVariantToValue):
517
518 2011-07-18 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
519
520 [Texmap] [Qt] [WK2] Unsync in TextureMapperNode between parent and child lists cause crashes on WK2.
521 https://bugs.webkit.org/show_bug.cgi?id=62587
522
523 Reviewed by Noam Rosenthal.
524
525 Fix unsync between m_parent and m_children list in child and parent text ure mapper nodes
526 in syncCompositingStateSelf.
527
528 * platform/graphics/texmap/TextureMapperNode.cpp:
529 (WebCore::TextureMapperNode::syncCompositingStateSelf):
530
531 2011-07-18 Rob Buis <rbuis@rim.com>
532
533 Stroking of zero-length paths in SVG should change according to erratum
534 https://bugs.webkit.org/show_bug.cgi?id=18356
535
536 Reviewed by Nikolas Zimmermann.
537
538 Do not rely on toolkits to correctly render zero-length path with stroke -linecap=round, render
539 it ourselves just like for stroke-linecap=square.
540
541 * rendering/svg/RenderSVGPath.cpp:
542 (WebCore::RenderSVGPath::shouldStrokeZeroLengthSubpath):
543 (WebCore::RenderSVGPath::setupSquareCapPath):
544
545 2011-07-18 Mihnea Ovidenie <mihnea@adobe.com>
546
547 [REGRESSION] Value 'none' breaks multiple background-image display
548 https://bugs.webkit.org/show_bug.cgi?id=59274
549
550 Reviewed by Simon Fraser.
551
552 When taking fast path for simple color background, we should draw
553 the background only if it is the last in the list of backgrounds.
554 Otherwise, it will obscure the previously drawn backgrounds.
555
556 Test: fast/backgrounds/background-fast-path-simple-color.html
557
558 * rendering/RenderBoxModelObject.cpp:
559 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
560
561 2011-07-18 Yi Shen <yi.4.shen@nokia.com>
562
563 [Qt] ASSERTION FAILED in ResourceHandle::setDefersLoading causes crash
564 https://bugs.webkit.org/show_bug.cgi?id=62808
565
566 The assertion in ResourceHandle::setDefersLoading assumes asynchronous
567 content delivery -- To resume a page, first, its main resource loader
568 calls setDefersLoading to resume loading the main content; then all the
569 sub-resource loaders calls setDefersLoading to resume sub-contents.
570 However, since QNetworkReplyHandler delivers content synchronously,
571 some new sub-resource loaders get created as soon as the main resource
572 loader resumed, and all these new sub-resource loaders set their
573 defersLoading flag to false. Then, the assertion fails for these new
574 sub-resource loaders when calling setDefersLoading on them. As a fix,
575 this path makes QNetworkReplyHandler deliver content asynchronously
576 when its load type is set to SynchronousLoad.
577
578 Reviewed by Benjamin Poulain.
579
580 Test: loader/load-defer-resume-crash.html
581
582 * platform/network/qt/QNetworkReplyHandler.cpp:
583 (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
584 * platform/network/qt/QNetworkReplyHandler.h:
585 (WebCore::QNetworkReplyHandler::setLoadingDeferred):
586
587 2011-07-18 Young Han Lee <joybro@company100.net>
588
589 AnimationBase asserts if a test tries to pause during the delay phase
590 https://bugs.webkit.org/show_bug.cgi?id=59475
591
592 Reviewed by Simon Fraser.
593
594 There is no more assertion failure after r90765, but the testcase still fails due to
595 the miscalculation of the pauseTime. This patch pauses the animation at its startTime
596 if a test tries to pause it during the delay phase.
597
598 Test: transitions/transition-in-delay-phase.html
599
600 * page/animation/AnimationBase.cpp:
601 (WebCore::AnimationBase::freezeAtTime):
602
603 2011-07-18 Vsevolod Vlasov <vsevik@chromium.org>
604
605 Web Inspector: Web Inspector: provide unique identifiers for loaders
606 https://bugs.webkit.org/show_bug.cgi?id=64599
607
608 Reviewed by Pavel Feldman.
609
610 * inspector/InspectorInstrumentation.cpp:
611 (WebCore::InspectorInstrumentation::loaderDetachedFromFrameImpl):
612 * inspector/InspectorInstrumentation.h:
613 (WebCore::InspectorInstrumentation::frameDestroyed):
614 (WebCore::InspectorInstrumentation::loaderDetachedFromFrame):
615 * inspector/InspectorPageAgent.cpp:
616 (WebCore::InspectorPageAgent::loaderId):
617 (WebCore::InspectorPageAgent::loaderDetachedFromFrame):
618 * inspector/InspectorPageAgent.h:
619 * loader/DocumentLoader.cpp:
620 (WebCore::DocumentLoader::detachFromFrame):
621
622 2011-07-18 Pavel Feldman <pfeldman@google.com>
623
624 Web Inspector: "Reveal in Elements Panel" is broken.
625 https://bugs.webkit.org/show_bug.cgi?id=64688
626
627 Reviewed by Yury Semikhatsky.
628
629 * inspector/front-end/ElementsTreeOutline.js:
630 (WebInspector.ElementsTreeOutline):
631 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focus Element):
632 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
633 (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
634
635 2011-07-18 Julien Chaffraix <jchaffraix@webkit.org>
636
637 Remove RenderObject::addLayers second argument
638 https://bugs.webkit.org/show_bug.cgi?id=64649
639
640 Reviewed by Benjamin Poulain.
641
642 No change in behavior.
643
644 The code was always passing |this| as the second argument. Thus just
645 removed the argument for clarity.
646
647 * rendering/RenderObject.h:
648 * rendering/RenderObject.cpp:
649 (WebCore::RenderObject::addLayers): Removed the argument, replaced
650 by |this|.
651
652 * rendering/RenderObjectChildList.cpp:
653 (WebCore::RenderObjectChildList::appendChildNode):
654 (WebCore::RenderObjectChildList::insertChildNode):
655 Removed the second argument at those 2 call sites.
656
657 2011-07-18 Pavel Feldman <pfeldman@google.com>
658
659 Web Inspector: do not pause on caught exceptions while typing in the con sole.
660 https://bugs.webkit.org/show_bug.cgi?id=64379
661
662 Reviewed by Yury Semikhatsky.
663
664 * inspector/Inspector.json:
665 * inspector/InspectorController.cpp:
666 (WebCore::InspectorController::InspectorController):
667 * inspector/InspectorRuntimeAgent.cpp:
668 (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
669 (WebCore::InspectorRuntimeAgent::evaluate):
670 (WebCore::InspectorRuntimeAgent::setScriptDebugServer):
671 * inspector/InspectorRuntimeAgent.h:
672 * inspector/WorkerInspectorController.cpp:
673 (WebCore::WorkerInspectorController::WorkerInspectorController):
674 * inspector/front-end/ConsoleView.js:
675 (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
676 * inspector/front-end/WatchExpressionsSidebarPane.js:
677 (WebInspector.WatchExpressionsSection.prototype.update):
678
679 2011-07-18 Sheriff Bot <webkit.review.bot@gmail.com>
680
681 Unreviewed, rolling out r91132 and r91135.
682 http://trac.webkit.org/changeset/91132
683 http://trac.webkit.org/changeset/91135
684 https://bugs.webkit.org/show_bug.cgi?id=64681
685
686 Broke GTK and Chromium debug bots (Requested by rniwa on
687 #webkit).
688
689 * accessibility/AXObjectCache.h:
690 * accessibility/AccessibilityMenuList.cpp:
691 * accessibility/AccessibilityMenuList.h:
692 * accessibility/AccessibilityMenuListPopup.cpp:
693 * accessibility/AccessibilityMenuListPopup.h:
694 * accessibility/chromium/AXObjectCacheChromium.cpp:
695 (WebCore::AXObjectCache::postPlatformNotification):
696 * accessibility/win/AXObjectCacheWin.cpp:
697 (WebCore::AXObjectCache::postPlatformNotification):
698 * dom/SelectElement.cpp:
699 (WebCore::SelectElement::setSelectedIndex):
700 * rendering/RenderMenuList.cpp:
701 (WebCore::RenderMenuList::RenderMenuList):
702 (WebCore::RenderMenuList::setTextFromOption):
703 (WebCore::RenderMenuList::didSetSelectedIndex):
704 * rendering/RenderMenuList.h:
705
706 2011-07-17 Luke Macpherson <macpherson@chromium.org>
707
708 Implement CSSPropertyCursor in CSSStyleApplyProperty
709 https://bugs.webkit.org/show_bug.cgi?id=64432
710
711 Reviewed by Dimitri Glazkov.
712
713 No new tests / refectoring only.
714
715 * css/CSSStyleApplyProperty.cpp:
716 Add handler for CSSPropertyCursor.
717 * css/CSSStyleSelector.cpp:
718 Remove current handler of CSSPropertyCursor.
719 * css/CSSStyleSelector.h:
720 Make styleImage and cachedOrPendingFromValue public.
721
722 2011-07-16 Simon Fraser <simon.fraser@apple.com>
723
724 Add code to attempt to align compositing layers to pixel boundaries when page scale changes
725 https://bugs.webkit.org/show_bug.cgi?id=64658
726
727 Reviewed by Dan Bernstein.
728
729 Implemented a new behavior on GraphicsLayerCA which attempts to keep lay ers pixel
730 aligned as page scale changes.
731
732 This requires denoting which layer has the page scale on it (it is assum ed to be
733 already aligned), via setAppliesPageScale(). We also now pass a scale an d offset
734 down through the GraphicsLayer commits, which are used to map layer boun ds to display
735 coordinates for rounding.
736
737 * platform/graphics/GraphicsLayer.h: New flags and getters/setters for p ixel alignment,
738 and the layer that is the applier of the scale.
739 (WebCore::GraphicsLayer::setMaintainsPixelAlignment):
740 (WebCore::GraphicsLayer::maintainsPixelAlignment):
741 (WebCore::GraphicsLayer::setAppliesPageScale):
742 (WebCore::GraphicsLayer::appliesPageScale):
743
744 * platform/graphics/GraphicsLayer.cpp:
745 (WebCore::GraphicsLayer::GraphicsLayer): Initialize the new flags.
746 (WebCore::GraphicsLayer::backingScaleFactor): Utility method that calls the client if there is one.
747 (WebCore::GraphicsLayer::pageScaleFactor): Ditto.
748
749 * platform/graphics/GraphicsLayerClient.h:
750 (WebCore::GraphicsLayerClient::backingScaleFactor): Provide default impl ementation.
751 (WebCore::GraphicsLayerClient::pageScaleFactor): Ditto.
752
753 * platform/graphics/ca/GraphicsLayerCA.h: Pass scale and base-relative o ffset around
754 to methods that need to update geometry during commit.
755 Some new methods related to pixel alignment.
756
757 * platform/graphics/ca/GraphicsLayerCA.cpp:
758 (WebCore::GraphicsLayerCA::computePositionRelativeToBase): For single-la yer commits,
759 we have to compute the base-relative offset, and whether we're under the layer
760 applying the scale by walking up the tree.
761
762 (WebCore::GraphicsLayerCA::syncCompositingStateForThisLayerOnly): Call
763 computePositionRelativeToBase() to get scaling parameters for the target layer.
764
765 (WebCore::GraphicsLayerCA::recursiveCommitChanges): Pass flags related t o scaling.
766 positionRelativeToBase is an offset relative to the ancestor layer known to be pixel
767 aligned. affectedByPageScale is true for layers which are descendants of the layer
768 which applies the scale.
769
770 (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): Pass scal e and offset.
771 (WebCore::GraphicsLayerCA::updateGeometry): Call computePixelAlignment() to get
772 pixel-aligned geometry. This only needs to be applied to layers which re nder content,
773 so re-organize the code to use the unchanged layer geometry for the stru ctural layer,
774 but to apply the adjusted geometry to the m_layer.
775
776 (WebCore::GraphicsLayerCA::updateStructuralLayer): Pass scale and offset .
777 (WebCore::GraphicsLayerCA::ensureStructuralLayer): Ditto.
778 (WebCore::GraphicsLayerCA::updateLayerDrawsContent): Ditto.
779 (WebCore::GraphicsLayerCA::updateContentsScale): Ditto.
780 (WebCore::GraphicsLayerCA::requiresTiledLayer): Ditto.
781 (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Ditto.
782 (WebCore::GraphicsLayerCA::setKeepPixelAligned): When set, dirties flags
783 for properties that need to be recomputed.
784 (WebCore::GraphicsLayerCA::noteChangesForScaleSensitiveProperties):
785 (WebCore::isIntegral):
786 (WebCore::GraphicsLayerCA::computePixelAlignment): Map our bounds to scr een
787 scale, round out to an integral rect, then map it back, adding a fudge f actor
788 so that CA backing stores don't end up being smaller than we expect beca use
789 of integer truncation.
790
791 * rendering/RenderLayerBacking.cpp:
792 (WebCore::RenderLayerBacking::createGraphicsLayer): Turn on pixel alignm ent if
793 the compositor says so.
794 (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): Set the Rende rView's
795 layer as the one applying the scale, for the main frame.
796
797 * rendering/RenderLayerCompositor.h: New method.
798 * rendering/RenderLayerCompositor.cpp:
799 (WebCore::RenderLayerCompositor::keepLayersPixelAligned): Master switch for
800 pixel alignment. Default to on.
801 (WebCore::RenderLayerCompositor::ensureRootLayer): Give the two root-ish layers
802 a client so they can ask for page scale if necessary.
803
804 2011-07-16 Enrica Casucci <enrica@apple.com>
805
806 REGRESSION: Pressing return in a particular document sends the cursor to the end of the document.
807 https://bugs.webkit.org/show_bug.cgi?id=64140
808 <rdar://problem/9737491>
809
810 Inserting a paragraph separator at a break element, inside an inline, ge nerates redundant markup
811 and moves the selection at the end of the inserted block.
812 The fix consists in detecting that the insertion point is a break elemen t and simply inserting another
813 break element. This solves the problem of the wrong final selection and also produces less redundant
814 markup.
815
816 Reviewed by Simon Fraser.
817
818 Test: editing/inserting/insert-paragraph-separator-at-break.html
819
820 * editing/InsertParagraphSeparatorCommand.cpp:
821 (WebCore::InsertParagraphSeparatorCommand::doApply): Modified logic for insertion at a break
822 element.
823
824 2011-07-16 Pratik Solanki <psolanki@apple.com>
825
826 SubresourceLoader::didReceiveDataArray can crash when calling m_client-> didReceiveData()
827 https://bugs.webkit.org/show_bug.cgi?id=64656
828 <rdar://problem/9754425>
829
830 Reviewed by Alexey Proskuryakov.
831
832 * loader/cf/SubresourceLoaderCF.cpp:
833 (WebCore::SubresourceLoader::didReceiveDataArray): Check for m_client be fore calling
834 m_client->didReceiveData().
835
836 2011-07-16 Dinu Jacob <dinu.jacob@nokia.com>
837
838 [Qt] Compilation fails on disabling TextureMapper
839 https://bugs.webkit.org/show_bug.cgi?id=64408
840
841 Fix compilation error due to API name change in GraphicsLayer
842
843 Reviewed by Noam Rosenthal.
844
845 * platform/graphics/qt/GraphicsLayerQt.cpp:
846 (WebCore::GraphicsLayerQt::setContentsToBackgroundColor):
847 * platform/graphics/qt/GraphicsLayerQt.h:
848
849 2011-07-15 Pratik Solanki <psolanki@apple.com>
850
851 Part of https://bugs.webkit.org/show_bug.cgi?id=63674
852 Get webkit to compile with USE(CFNETWORK) enabled on Mac
853
854 Reviewed by David Kilzer.
855
856 New WebKitSystemInterface functions for CFNetwork-based loader.
857
858 * WebCore.exp.in:
859 * platform/mac/WebCoreSystemInterface.h:
860 * platform/mac/WebCoreSystemInterface.mm:
861
862 2011-07-16 Jessie Berlin <jberlin@apple.com>
863
864 Work towards determining the cause of frequent crashes due to null frame below
865 ApplicationCacheHost::scheduleLoadFallbackResourceFromApplicationCache.
866 https://bugs.webkit.org/show_bug.cgi?id=62764
867
868 Reviewed by Darin Adler.
869
870 No loads should be going on for a DocumentLoader that has been detached from its frame, but
871 that appears to be what is happening in this bug.
872
873 Add assertions with the hope that someone will run into this while debug ging and thereby find
874 a reproducible case.
875
876 * loader/ResourceLoader.cpp:
877 (WebCore::ResourceLoader::willSendRequest):
878 (WebCore::ResourceLoader::didSendData):
879 (WebCore::ResourceLoader::didReceiveResponse):
880 (WebCore::ResourceLoader::didReceiveData):
881 (WebCore::ResourceLoader::didFinishLoading):
882 (WebCore::ResourceLoader::didFail):
883 (WebCore::ResourceLoader::wasBlocked):
884 (WebCore::ResourceLoader::cannotShowURL):
885 (WebCore::ResourceLoader::shouldUseCredentialStorage):
886 (WebCore::ResourceLoader::willCacheResponse):
887
888 2011-07-16 Sergey Glazunov <serg.glazunov@gmail.com>
889
890 DOMWindow::open performs a security check on a wrong window
891 https://bugs.webkit.org/show_bug.cgi?id=64651
892
893 Reviewed by Adam Barth.
894
895 Test: http/tests/security/xss-DENIED-window-open-parent.html
896
897 * page/DOMWindow.cpp:
898 (WebCore::DOMWindow::open):
899
900 2011-07-16 Sam Weinig <sam@webkit.org>
901
902 Attribute selectors don't handle glob namespaces (e.g. *|E)
903 https://bugs.webkit.org/show_bug.cgi?id=64567
904
905 Reviewed by Anders Carlsson.
906
907 Change checking of attribute selectors to match CSS 3 Selectors in
908 the presence of namespaces. This entails changing the algorithm to
909 check each attribute on an element as a match for the attribute selector
910 and taking into account a prefix of *.
911
912 * css/CSSStyleSelector.cpp:
913 (WebCore::attributeQualifiedNameMatches):
914 Checks if the a particular attributes qualified name matches
915 the attribute selector, taking into account a prefix of *.
916
917 (WebCore::attributeValueMatches):
918 Checks if a particular attribute on an element, matches
919 the attribute selector.
920
921 (WebCore::anyAttributeMatches):
922 Top level attribute check. Checks if any of an elements attributes
923 match the attribute selector.
924
925 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
926 Factor out attribute checking code into the above functions.
927
928 2011-07-16 Jon Honeycutt <jhoneycutt@apple.com>
929
930 WinCE build fix. Unreviewed.
931
932 * dom/SelectElement.cpp:
933
934 2011-07-16 Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org>
935
936 Reviewed by Nikolas Zimmermann.
937
938 SVG animation API crashes on SVGAnimateTransform
939 https://bugs.webkit.org/show_bug.cgi?id=64104
940
941 This patch ensures the update in AnimatedTransform list in
942 SVGAnimateTransformElement.cpp is in sync with its wrapper list.
943
944 Test: svg/animations/svgtransform-animation-discrete.html
945
946 * svg/SVGAnimateTransformElement.cpp:
947 (WebCore::animatedTransformListFor):
948 (WebCore::SVGAnimateTransformElement::resetToBaseValue):
949 (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
950 (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
951
952 2011-07-15 Simon Fraser <simon.fraser@apple.com>
953
954 Fix the build.
955
956 * platform/mac/ScrollbarThemeMac.mm:
957 (WebCore::ScrollbarThemeMac::updateEnabledState):
958
959 2011-07-15 Simon Fraser <simon.fraser@apple.com>
960
961 Another Windows build fix; make this method non-pure virtual.
962
963 * platform/graphics/GraphicsLayerClient.h:
964 (WebCore::GraphicsLayerClient::didCommitChangesForLayer):
965
966 2011-07-15 Simon Fraser <simon.fraser@apple.com>
967
968 Fix build error in 32-bit builds.
969
970 * rendering/svg/RenderSVGPath.cpp:
971 (WebCore::RenderSVGPath::zeroLengthSubpathRect):
972
973 2011-07-15 Simon Fraser <simon.fraser@apple.com>
974
975 Fix Windows build.
976
977 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
978 (WebCore::MediaPlayerPrivate::backingScaleFactor):
979 (WebCore::MediaPlayerPrivate::pageScaleFactor):
980
981 2011-07-15 Simon Fraser <simon.fraser@apple.com>
982
983 Have GraphicsLayer pull their contentsScale, rather than pushing it onto them
984 https://bugs.webkit.org/show_bug.cgi?id=64643
985
986 Reviewed by Darin Adler.
987
988 RenderLayerBacking would set the contentsScale on GraphicsLayers
989 on creation, and update it when the pageScaleFactor changed. However,
990 RenderLayerBacking doesn't really know what contentsScale is best
991 for a layer, so instead, have GraphicsLayers call back through the
992 GraphicsLayerClient to get the two relevant scale factors, and do
993 their own computation of contentsScale.
994
995 No testable behavior changes.
996
997 * page/Frame.cpp:
998 (WebCore::Frame::pageScaleFactorChanged): No need to pass the scale.
999
1000 * platform/graphics/GraphicsLayer.cpp:
1001 (WebCore::GraphicsLayer::notePageScaleFactorChangedIncludingDescendants) :
1002 Recurse through the GraphicsLayer tree, calling pageScaleFactorChanged() on
1003 each layer.
1004
1005 * platform/graphics/GraphicsLayer.h:
1006 (WebCore::GraphicsLayer::pageScaleFactorChanged):
1007 Remove contentsScale/setContentsScale
1008
1009 * platform/graphics/GraphicsLayerClient.h:
1010 Add methods to fetch the backingScaleFactor() and pageScaleFactor().
1011
1012 * platform/graphics/ca/GraphicsLayerCA.cpp:
1013 (WebCore::GraphicsLayerCA::GraphicsLayerCA): m_uncommittedChanges
1014 defaults to ContentsScaleChanged so we update contentsScale on
1015 the first flush.
1016
1017 (WebCore::GraphicsLayerCA::setContentsToBackgroundColor):
1018 This was the wrong time to call updateContentsRect() and setupContentsLa yer();
1019 those should be done at commit time, so moved to updateLayerBackgroundCo lor().
1020 (WebCore::GraphicsLayerCA::recursiveCommitChanges): Note whether we
1021 have any changes, and call didCommitChangesForLayer() on the client.
1022 (WebCore::GraphicsLayerCA::updateLayerBackgroundColor): Code moved to he re.
1023 (WebCore::clampedContentsScaleForScale): No longer has any hysteresis
1024 on the scale, and now just clamps.
1025 (WebCore::GraphicsLayerCA::updateContentsScale): Fetch the scales
1026 from the client, and multiply them, then clamp.
1027 (WebCore::GraphicsLayerCA::requiresTiledLayer): This now takes
1028 contentsScale into account when deciding to use tiled layer,
1029 so that zooming in will cause layers to start tiling.
1030 (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Don't call
1031 setContentsScale(), but rather updateContentsScale().
1032 (WebCore::GraphicsLayerCA::pageScaleFactorChanged): Set the bits
1033 for properties that depend on the scale.
1034 (WebCore::GraphicsLayerCA::noteChangesForScaleSensitiveProperties):
1035 Note that contentsScale needs to be updated. At some point we might also
1036 need to dirty other properties.
1037 * platform/graphics/ca/GraphicsLayerCA.h: Moved the m_allowTiledLayer
1038 bool for better packing. No need for a m_contentsScale member now.
1039 * rendering/RenderLayer.cpp: Removed pageScaleFactorChanged().
1040 * rendering/RenderLayer.h: Ditto.
1041 * rendering/RenderLayerBacking.cpp:
1042 (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): No need
1043 to push the contents scale.
1044 (WebCore::RenderLayerBacking::updateForegroundLayer): Ditto.
1045 (WebCore::RenderLayerBacking::updateMaskLayer): Ditto.
1046 (WebCore::RenderLayerBacking::pageScaleFactor): GraphicsLayerClient meth od.
1047 (WebCore::RenderLayerBacking::backingScaleFactor): GraphicsLayerClient m ethod.
1048 (WebCore::RenderLayerBacking::didCommitChangesForLayer): Send through
1049 to the compositor.
1050 * rendering/RenderLayerBacking.h: GraphicsLayerClient methods.
1051 * rendering/RenderLayerCompositor.cpp:
1052 (WebCore::RenderLayerCompositor::didFlushChangesForLayer): We'll use
1053 this later.
1054 (WebCore::RenderLayerCompositor::backingScaleFactor): GraphicsLayerClien t method.
1055 (WebCore::RenderLayerCompositor::pageScaleFactor): Ditto.
1056 (WebCore::RenderLayerCompositor::didCommitChangesForLayer): Ditto.
1057 (WebCore::RenderLayerCompositor::ensureRootLayer): No need to push the c ontents scale.
1058 (WebCore::RenderLayerCompositor::pageScaleFactorChanged): Just call note PageScaleFactorChangedIncludingDescendants()
1059 on the root GraphicsLayer.
1060 * rendering/RenderLayerCompositor.h: Added GraphicsLayerClient methods.
1061
1062 2011-07-15 Jon Honeycutt <jhoneycutt@apple.com>
1063
1064 Build fix. Unreviewed.
1065
1066 * accessibility/AccessibilityMenuListPopup.cpp:
1067 (WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):
1068 Cast size_t to int for comparison.
1069
1070 2011-07-15 Andy Estes <aestes@apple.com>
1071
1072 Rename applicationIsSolarWalk() to applicationIsSolarWalkMac().
1073 https://bugs.webkit.org/show_bug.cgi?id=64641
1074
1075 Reviewed by Brian Weinstein.
1076
1077 * WebCore.exp.in: Update to new symbol.
1078 * platform/RuntimeApplicationChecks.cpp:
1079 (WebCore::applicationIsSolarWalkMac): Renamed from applicationIsSolarWal k.
1080 * platform/RuntimeApplicationChecks.h: Ditto.
1081
1082 2011-07-15 Mark Rowe <mrowe@apple.com>
1083
1084 Fix the build.
1085
1086 * platform/graphics/GraphicsContext.h:
1087 (WebCore::GraphicsContextStateSaver::context): Remove a bogus type quali fier.
1088
1089 2011-07-13 Jon Honeycutt <jhoneycutt@apple.com>
1090
1091 Focus and selection events are not fired when a <select>'s selection
1092 changes
1093 https://bugs.webkit.org/show_bug.cgi?id=64504
1094 <rdar://problem/9319881>
1095
1096 Reviewed by Alice Liu.
1097
1098 Test: platform/win/accessibility/option-element-selection-and-focus-even ts.html
1099
1100 * accessibility/chromium/AXObjectCacheChromium.cpp:
1101 (WebCore::AXObjectCache::postPlatformNotification):
1102 Add new notification type to the section of unhandled notifications.
1103
1104 * accessibility/AXObjectCache.h:
1105 Declare a new notification, AXMenuListItemSelected.
1106
1107 * accessibility/AccessibilityMenuList.cpp:
1108 (WebCore::AccessibilityMenuList::didUpdateActiveOption):
1109 Tell our child popup that the active option changed, and post a
1110 notification that our value changed.
1111
1112 * accessibility/AccessibilityMenuList.h:
1113 Declare didUpdateActiveOption().
1114
1115 * accessibility/AccessibilityMenuListPopup.cpp:
1116 (WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):
1117 Get the child <option> element that is selected, and fire focus and
1118 selection events for it.
1119
1120 * accessibility/AccessibilityMenuListPopup.h:
1121 Declare didUpdateActiveOption().
1122
1123 * accessibility/win/AXObjectCacheWin.cpp:
1124 (WebCore::AXObjectCache::postPlatformNotification):
1125 Map AXMenuListItemSelected -> EVENT_OBJECT_SELECTION.
1126
1127 * dom/SelectElement.cpp:
1128 (WebCore::SelectElement::setSelectedIndex):
1129 Pass the newly-selected index.
1130
1131 * rendering/RenderMenuList.cpp:
1132 (WebCore::RenderMenuList::RenderMenuList):
1133 Update the initialization list for the renamed m_lastActiveIndex.
1134 (WebCore::RenderMenuList::setTextFromOption):
1135 A new selection has been made in the popup; call
1136 didUpdateActiveOption().
1137 (WebCore::RenderMenuList::didSetSelectedIndex):
1138 Call didUpdateActiveOption(), passing the index of the newly-selected
1139 <option>.
1140 (WebCore::RenderMenuList::didUpdateActiveOption):
1141 If accessibility is disabled, or if the active option has not changed,
1142 return early. Check whether the option index is in the range of list
1143 items, and assert that the item at that index is an <option> element.
1144 Tell the AccessibilityMenuList for this element that we updated the
1145 active option.
1146
1147 * rendering/RenderMenuList.h:
1148 Updated the declaration of didSetSelectedIndex() to take the selected
1149 index. Declared didUpdateActiveOption(). Renamed m_lastSelectedIndex to
1150 m_lastActiveIndex.
1151
1152 2011-07-13 Jon Honeycutt <jhoneycutt@apple.com>
1153
1154 ALT + DOWN arrow key does not open select
1155
1156 https://bugs.webkit.org/show_bug.cgi?id=14407
1157 <rdar://problem/5319507>
1158
1159 Reviewed by Alexey Proskuryakov.
1160
1161 No test, because eventSender sends events to the WebView, rather than
1162 the popup menu, so the popup isn't closed.
1163
1164 * WebCore.vcproj/WebCore.vcproj:
1165 Add SelectElementWin.cpp to project.
1166
1167 * dom/SelectElement.cpp:
1168 (WebCore::SelectElement::platformHandleKeydownEvent):
1169 Moved ARROW_KEYS_POP_MENU code here. Updated to return whether the
1170 function has handled the key, or whether the caller needs to process it
1171 further.
1172 (WebCore::SelectElement::menuListDefaultEventHandler):
1173 Allow the platform the first chance at handling the keyboard event.
1174
1175 * dom/SelectElement.h:
1176 Declare platformHandleKeydownEvent().
1177 * dom/SelectElementWin.cpp: Added.
1178 (WebCore::SelectElement::platformHandleKeyboardEvent):
1179 Allow (Shift) F4 and (Ctrl/Shift) Alt/AltGr + Up/Down
1180 arrow to show the popup. After the popup is dismissed, call
1181 setSelectedIndex(), and report that we handled the event.
1182
1183 * platform/win/PopupMenuWin.cpp:
1184 Declare HIGH_BIT_MASK_SHORT.
1185 (WebCore::PopupMenuWin::show):
1186 Forward WM_SYSKEYDOWN to the popup's HWND.
1187 (WebCore::PopupMenuWin::wndProc):
1188 Allow the same shortcuts that show the menu to hide it, matching
1189 Firefox.
1190
1191 2011-07-12 Jon Honeycutt <jhoneycutt@apple.com>
1192
1193 Ensure that a single select element's child option elements are
1194 reported correctly to accessibility clients if the children are
1195 changed.
1196
1197 https://bugs.webkit.org/show_bug.cgi?id=64500
1198 <rdar://problem/9773066>
1199
1200 Reviewed by Beth Dakin.
1201
1202 Test: platform/win/accessibility/single-select-children-changed.html
1203
1204 * accessibility/AccessibilityMenuListPopup.cpp:
1205 (WebCore::AccessibilityMenuListPopup::addChildren):
1206 Remove a comment about WML, which we no longer support.
1207 (WebCore::AccessibilityMenuListPopup::childrenChanged):
1208 Don't just remove children that were detached - this will miss childen
1209 that were dynamically added. Clear the children and re-add them.
1210
1211 2011-07-15 Rob Buis <rbuis@rim.com>
1212
1213 Stroking of zero-length paths in SVG should change according to erratum
1214 https://bugs.webkit.org/show_bug.cgi?id=18356
1215
1216 Reviewed by Nikolas Zimmermann.
1217
1218 Ensure rendering of zero-length paths with stroke-linecap=square works b y
1219 creating the square rectangle manually.
1220
1221 Tests: svg/W3C-SVG-1.1-SE/painting-control-04-f.svg
1222 svg/custom/zero-path-square-cap-rendering.svg
1223
1224 * platform/graphics/GraphicsContext.h:
1225 (WebCore::GraphicsContextStateSaver::context):
1226 * rendering/svg/RenderSVGPath.cpp:
1227 (WebCore::RenderSVGPath::strokeContains):
1228 (WebCore::RenderSVGPath::shouldStrokeZeroLengthSubpath):
1229 (WebCore::RenderSVGPath::zeroLengthSubpathRect):
1230 (WebCore::RenderSVGPath::setupSquareCapPath):
1231 (WebCore::RenderSVGPath::setupNonScalingStrokePath):
1232 (WebCore::RenderSVGPath::fillAndStrokePath):
1233 (WebCore::RenderSVGPath::updateCachedBoundaries):
1234 * rendering/svg/RenderSVGPath.h:
1235
1236 2011-06-27 Adrienne Walker <enne@google.com>
1237
1238 Reviewed by Simon Fraser.
1239
1240 Overlap map for compositing needs to consider clipping
1241 https://bugs.webkit.org/show_bug.cgi?id=63493
1242
1243 Test: compositing/layer-creation/overlap-clipping.html
1244
1245 * rendering/RenderLayerCompositor.cpp:
1246 (WebCore::RenderLayerCompositor::addToOverlapMap):
1247 * rendering/RenderLayerCompositor.h:
1248
1249 2011-07-15 Sheriff Bot <webkit.review.bot@gmail.com>
1250
1251 Unreviewed, rolling out r90592.
1252 http://trac.webkit.org/changeset/90592
1253 https://bugs.webkit.org/show_bug.cgi?id=64627
1254
1255 Causes crashes with the web audio async decoding API
1256 (Requested by jamesr on #webkit).
1257
1258 * html/canvas/ArrayBuffer.cpp:
1259 (WebCore::ArrayBuffer::~ArrayBuffer):
1260 (WebCore::ArrayBuffer::tryAllocate):
1261 * manual-tests/array-buffer-memory.html: Removed.
1262
1263 2011-07-15 Kenneth Russell <kbr@google.com>
1264
1265 Don't restore WebGL context if it was guilty of a graphics reset
1266 https://bugs.webkit.org/show_bug.cgi?id=64497
1267
1268 Reviewed by Stephen White.
1269
1270 Use getGraphicsResetStatusARB already defined in Extensions3D to
1271 determine why the context was lost, and respond to guilty context
1272 notifications by forbidding restoration of the context.
1273
1274 It isn't currently possible to write an automated test for this.
1275 We might consider extending the WEBKIT_lose_context extension to
1276 allow a reason to be provided why the context was lost. It was
1277 tested manually in Chromium on Windows and Linux with some test
1278 cases that provoke actual graphics card resets.
1279
1280 * html/canvas/WebGLRenderingContext.cpp:
1281 (WebCore::WebGLRenderingContext::WebGLRenderingContextRestoreTimer::fire d):
1282 (WebCore::WebGLRenderingContext::forceLostContext):
1283 (WebCore::WebGLRenderingContext::maybeRestoreContext):
1284 * html/canvas/WebGLRenderingContext.h:
1285
1286 2011-07-15 Chris Marrin <cmarrin@apple.com>
1287
1288 Move TransformState to platform/graphics and give it the option to trans form just a FloatQuad
1289 https://bugs.webkit.org/show_bug.cgi?id=64542
1290
1291 Reviewed by Simon Fraser.
1292
1293 This is to make it possible to use TransformState in some GraphicsLayer work. HitTestingTransformState
1294 was split out and left in rendering since it's not needed in the platfor m code. Also added a FIXME
1295 because HitTestingTransformState should eventually be replaced by Transf ormState.
1296
1297 * CMakeLists.txt:
1298 * GNUmakefile.list.am:
1299 * WebCore.gypi:
1300 * WebCore.pro:
1301 * WebCore.vcproj/WebCore.vcproj:
1302 * WebCore.xcodeproj/project.pbxproj:
1303 * platform/graphics/transforms/TransformState.cpp: Copied from Source/We bCore/rendering/TransformState.cpp.
1304 (WebCore::TransformState::move):
1305 (WebCore::TransformState::flattenWithTransform):
1306 * platform/graphics/transforms/TransformState.h: Copied from Source/WebC ore/rendering/TransformState.h.
1307 (WebCore::TransformState::TransformState):
1308 (WebCore::TransformState::setQuad):
1309 * rendering/HitTestingTransformState.cpp: Copied from Source/WebCore/ren dering/TransformState.cpp.
1310 * rendering/HitTestingTransformState.h: Copied from Source/WebCore/rende ring/TransformState.h.
1311 * rendering/RenderLayer.cpp:
1312 * rendering/RenderObject.cpp:
1313 (WebCore::RenderObject::localToContainerQuad):
1314 * rendering/RenderingAllInOne.cpp:
1315 * rendering/TransformState.cpp: Removed.
1316 * rendering/TransformState.h: Removed.
1317
1318 2011-07-15 Pratik Solanki <psolanki@apple.com>
1319
1320 Part of https://bugs.webkit.org/show_bug.cgi?id=63674
1321 Get webkit to compile with USE(CFNETWORK) enabled on Mac
1322
1323 Reviewed by David Kilzer.
1324
1325 Minor changes needed to keep the compiler happy.
1326
1327 No new tests because no change in functionality.
1328
1329 * platform/network/cf/FormDataStreamCFNet.cpp:
1330 * platform/network/cf/ResourceErrorCF.cpp:
1331 (WebCore::ResourceError::platformCopy):
1332 * platform/network/cf/ResourceHandleCFNet.cpp:
1333 (WebCore::WebCoreSynchronousLoaderClient::willSendRequest):
1334 * platform/network/cf/ResourceResponseCFNet.cpp:
1335 (WebCore::toTimeT):
1336
1337 2011-07-15 Dan Bernstein <mitz@apple.com>
1338
1339 REGRESSION: Mouse cursor doesn’t hide when full screen video HUD hides
1340 https://bugs.webkit.org/show_bug.cgi?id=64615
1341
1342 Reviewed by Anders Carlsson.
1343
1344 * html/shadow/MediaControlRootElement.cpp:
1345 (WebCore::MediaControlRootElement::enteredFullscreen): Hide the mouse cu rsor immediately when
1346 entering full screen.
1347 (WebCore::MediaControlRootElement::hideFullscreenControlsTimerFired): Hi de the mouse cursor when
1348 hiding the HUD.
1349 * loader/EmptyClients.h:
1350 (WebCore::EmptyChromeClient::setCursorHiddenUntilMouseMoves): Added empt y implementation.
1351 * page/Chrome.cpp:
1352 (WebCore::Chrome::setCursorHiddenUntilMouseMoves): Added. Calls through to the client.
1353 * page/Chrome.h:
1354 * page/ChromeClient.h:
1355 * platform/HostWindow.h:
1356
1357 2011-07-14 Gavin Barraclough <barraclough@apple.com>
1358
1359 https://bugs.webkit.org/show_bug.cgi?id=64250
1360 Global strict mode function leaking global object as "this".
1361
1362 Reviewed by Oliver Hunt.
1363
1364 * bindings/js/JSMainThreadExecState.h:
1365 (WebCore::JSMainThreadExecState::call):
1366 * bindings/scripts/CodeGeneratorJS.pm:
1367 (GenerateHeader):
1368 - Change call to pass DOM Window shell, instead of the global varaib le object.
1369
1370 2011-07-15 Brian Salomon <bsalomon@google.com>
1371
1372 [SKIA] Must make skia's GL context current before drawing in GraphicsCon text::clearRect
1373 https://bugs.webkit.org/show_bug.cgi?id=64612
1374
1375 Reviewed by Stephen White.
1376
1377 Tested by compositing/shadows/shadow-drawing.html
1378
1379 * platform/graphics/skia/GraphicsContextSkia.cpp:
1380 (WebCore::GraphicsContext::clearRect):
1381
1382 2011-07-15 Ian Henderson <ianh@apple.com>
1383
1384 Avoid rounded rect corner-drawing overhead if no corners are visible
1385 https://bugs.webkit.org/show_bug.cgi?id=64584
1386
1387 Reviewed by Simon Fraser.
1388
1389 No new tests, rendering is visually identical.
1390
1391 * rendering/InlineFlowBox.cpp:
1392 (WebCore::InlineFlowBox::paintBoxDecorations): Pass PaintInfo into
1393 paintBorder.
1394 * rendering/RenderBox.cpp:
1395 (WebCore::RenderBox::paintBoxDecorations): Ditto.
1396 * rendering/RenderBoxModelObject.cpp:
1397 (WebCore::unroundClippedCorners):
1398 (WebCore::RenderBoxModelObject::paintBorder):
1399 Any invisible corner may be replaced with a corner of radius zero, as
1400 long as the stroke style is solid. Change the GraphicsContext
1401 parameter into a PaintInfo parameter so we can get the rect to be
1402 drawn.
1403 * rendering/RenderBoxModelObject.h:
1404 * rendering/RenderFieldset.cpp:
1405 (WebCore::RenderFieldset::paintBoxDecorations): Pass PaintInfo into
1406 paintBorder.
1407 * rendering/RenderTable.cpp:
1408 (WebCore::RenderTable::paintBoxDecorations): Ditto.
1409 * rendering/RenderTableCell.cpp:
1410 (WebCore::RenderTableCell::paintBoxDecorations): Ditto.
1411
1412 2011-07-15 Jeff Miller <jeffm@apple.com>
1413
1414 Add UserAgentStyleSheetsData.cpp to WebCore.vcproj
1415 https://bugs.webkit.org/show_bug.cgi?id=64609
1416
1417 Add UserAgentStyleSheetsData.cpp to WebCore.vcproj for convenient access , but don't compile it.
1418 This matches what we do with other generated DerivedSources.
1419
1420 Reviewed by Brian Weinstein.
1421
1422 No new tests, just adding a file.
1423
1424 * WebCore.vcproj/WebCore.vcproj: Add UserAgentStyleSheetsData.cpp.
1425
1426 2011-07-15 Pratik Solanki <psolanki@apple.com>
1427
1428 Part of https://bugs.webkit.org/show_bug.cgi?id=63674
1429 Get webkit to compile with USE(CFNETWORK) enabled on Mac
1430
1431 Reviewed by David Kilzer.
1432
1433 No new tests because no change in functionality and option is not enable d on Mac.
1434
1435 * platform/network/cf/AuthenticationCF.h: Just use AuthenticationMac.h i nstead of having
1436 Mac-specific declarations here.
1437 * platform/network/cf/CredentialStorageCFNet.cpp:
1438 * platform/network/mac/AuthenticationMac.h:
1439
1440 2011-07-15 Pratik Solanki <psolanki@apple.com>
1441
1442 Part of https://bugs.webkit.org/show_bug.cgi?id=63674
1443 Get webkit to compile with USE(CFNETWORK) enabled on Mac
1444
1445 Reviewed by David Kilzer.
1446
1447 Get LoaderRunLoop to work on Mac when USE(CFNETWORK) is enabled. Althoug h we could use the
1448 main run loop, it's better to have a separate thread handling the loads so that it can work
1449 in parallel to the main thread. This is similar to what NSURLConnection does for us
1450 internally when we use the NS APIs.
1451
1452 No new tests because no change in functionality and option is not enable d on Mac.
1453
1454 * platform/network/cf/LoaderRunLoopCF.cpp:
1455 (WebCore::runLoaderThread): Create an autorelease pool for objc code tha t might be called in
1456 the run loop.
1457 (WebCore::loaderRunLoop):
1458 * platform/network/cf/LoaderRunLoopCF.h:
1459
1460 2011-07-15 Xiaomei Ji <xji@chromium.org>
1461
1462 --webkit-visual-word crash on mixed editability
1463 https://bugs.webkit.org/show_bug.cgi?id=61978
1464
1465 --webkit-visual-word crashes (VisiblePosition.getInlineBoxAndOffset coul d return null box)
1466 https://bugs.webkit.org/show_bug.cgi?id=62814
1467
1468 Reviewed by Ryosuke Niwa.
1469
1470 Replace previousWordPosition/nextWordPosition with previousBoundary/next Boundary which do
1471 not honor editable bounary. Honor editable boundary as the last stage of leftWordPosition
1472 and rightWordPosition.
1473
1474 Check previousBoundary/nextBoundary against NULL. Have a static functio n to encapsulate the
1475 usage of getInlineBoxAndOffset and check the visible position is not NUL L before passing to
1476 getInlineBoxAndOffset. Check the box returned from getInlineBoxAndOffset is not NULL before
1477 accessing.
1478
1479 Test: editing/selection/move-by-word-visually-null-box.html
1480
1481 * editing/visible_units.cpp:
1482 (WebCore::positionIsInBox):
1483 (WebCore::previousWordBreakInBoxInsideBlockWithSameDirectionality):
1484 (WebCore::lastWordBreakInBox):
1485 (WebCore::positionIsVisuallyOrderedInBoxInBlockWithDifferentDirectionali ty):
1486 (WebCore::nextWordBreakInBoxInsideBlockWithDifferentDirectionality):
1487 (WebCore::positionIsInsideBox):
1488 (WebCore::leftWordPositionAcrossBoundary):
1489 (WebCore::rightWordPositionAcrossBoundary):
1490 (WebCore::leftWordPosition):
1491 (WebCore::rightWordPosition):
1492
1493 2011-07-15 Pratik Solanki <psolanki@apple.com>
1494
1495 Remove unncessary creation of connectionProperties dictionary
1496 https://bugs.webkit.org/show_bug.cgi?id=63958
1497
1498 Reviewed by Alexey Proskuryakov.
1499
1500 No new tests because no change in functionality.
1501
1502 * platform/network/cf/ResourceHandleCFNet.cpp:
1503 (WebCore::ResourceHandle::loadResourceSynchronously):
1504
1505 2011-07-15 Pavel Feldman <pfeldman@google.com>
1506
1507 Web Inspector: Focusing on another node while editing CSS property does not update styles
1508 https://bugs.webkit.org/show_bug.cgi?id=64283
1509
1510 Reviewed by Yury Semikhatsky.
1511
1512 Test: inspector/styles/styles-change-node-while-editing.html
1513
1514 * inspector/front-end/CSSStyleModel.js:
1515 (WebInspector.CSSProperty.prototype.setText):
1516 (WebInspector.CSSProperty.prototype.setText.callback):
1517 * inspector/front-end/DOMAgent.js:
1518 (WebInspector.DOMAgent.prototype._inlineStyleInvalidated):
1519 (WebInspector.DOMDispatcher.prototype.inlineStyleInvalidated):
1520 * inspector/front-end/ElementsPanel.js:
1521 (WebInspector.ElementsPanel):
1522 (WebInspector.ElementsPanel.prototype._attributesUpdated):
1523 (WebInspector.ElementsPanel.prototype.updateStyles):
1524 * inspector/front-end/MetricsSidebarPane.js:
1525 (WebInspector.MetricsSidebarPane):
1526 (WebInspector.MetricsSidebarPane.prototype.update):
1527 (WebInspector.MetricsSidebarPane.prototype._innerUpdate.callback):
1528 (WebInspector.MetricsSidebarPane.prototype._innerUpdate.inlineStyleCallb ack):
1529 (WebInspector.MetricsSidebarPane.prototype._innerUpdate):
1530 (WebInspector.MetricsSidebarPane.prototype._styleSheetChanged):
1531 (WebInspector.MetricsSidebarPane.prototype._attributesUpdated):
1532 (WebInspector.MetricsSidebarPane.prototype.startEditing):
1533 (WebInspector.MetricsSidebarPane.prototype.editingEnded):
1534 * inspector/front-end/StylesSidebarPane.js:
1535 (WebInspector.StylesSidebarPane):
1536 (WebInspector.StylesSidebarPane.prototype.update):
1537 (WebInspector.StylesSidebarPane.prototype._innerUpdate.stylesCallback):
1538 (WebInspector.StylesSidebarPane.prototype._innerUpdate.computedStyleCall back):
1539 (WebInspector.StylesSidebarPane.prototype._innerUpdate):
1540 (WebInspector.StylesSidebarPane.prototype._styleSheetChanged):
1541 (WebInspector.StylesSidebarPane.prototype._attributesUpdated):
1542 (WebInspector.StylesSidebarPane.prototype._refreshUpdate):
1543 (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
1544 (WebInspector.StylesSidebarPane.prototype._nodeStylesUpdatedForTest):
1545 (WebInspector.StylesSidebarPane.prototype._toggleElementStatePane):
1546 (WebInspector.StylesSidebarPane.prototype._createElementStatePane.clickL istener):
1547 (WebInspector.StylePropertyTreeElement.prototype):
1548 (WebInspector.StylePropertyTreeElement.prototype.event):
1549 (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previ ousContent.context.moveDirection):
1550 (WebInspector.StylePropertyTreeElement.prototype.styleText.updateInterfa ce.majorChange.isRevert):
1551
1552 2011-07-15 Mike Reed <reed@google.com>
1553
1554 [skia] remove legacy draw-text-as-paths code, as skia now draws all text as text
1555 https://bugs.webkit.org/show_bug.cgi?id=64368
1556
1557 Reviewed by James Robinson.
1558
1559 * platform/graphics/chromium/FontChromiumWin.cpp:
1560 (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::d rawGlyphs):
1561 * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
1562 (WebCore::FontPlatformData::RefCountedHFONT::~RefCountedHFONT):
1563 * platform/graphics/chromium/UniscribeHelper.cpp:
1564 (WebCore::UniscribeHelper::draw):
1565 * platform/graphics/skia/SkiaFontWin.cpp:
1566 (WebCore::skiaDrawText):
1567 (WebCore::setupPaintForFont):
1568 (WebCore::paintSkiaText):
1569 * platform/graphics/skia/SkiaFontWin.h:
1570
1571 2011-07-15 Piroska András <Piroska.Andras@stud.u-szeged.hu>
1572
1573 Pixel difference in FEMorphology effect
1574 https://bugs.webkit.org/show_bug.cgi?id=63930
1575
1576 Reviewed by Zoltan Herczeg.
1577
1578 Using short-circuit evaluation in the setFilterEffectAttribute function
1579 was wrong. We should call both setRadius functions and evaluate the
1580 changes separately.
1581
1582 * svg/SVGFEMorphologyElement.cpp:
1583 (WebCore::SVGFEMorphologyElement::setFilterEffectAttribute):
1584
1585 2011-07-15 Jeff Miller <jeffm@apple.com>
1586
1587 Fullscreen content doesn't use fullscreen controller on Windows
1588 https://bugs.webkit.org/show_bug.cgi?id=64540
1589 <rdar://problem/9510455>
1590
1591 Reviewed by Darin Adler.
1592
1593 RenderThemeWin needs to override extraFullScreenStyleSheet() to return
1594 the fullscreenQuickTime stylesheet.
1595
1596 Test added to fullscreen/video-controls-override.html.
1597
1598 * rendering/RenderThemeWin.cpp:
1599 (WebCore::RenderThemeWin::extraFullScreenStyleSheet): Added.
1600 * rendering/RenderThemeWin.h: Override extraFullScreenStyleSheet().
1601
1602 2011-07-15 Nikolas Zimmermann <nzimmermann@rim.com>
1603
1604 Not reviewed. Fix build failure introduced in r91061.
1605
1606 * page/Console.cpp:
1607 (WebCore::Console::markTimeline): Remove argument name from unused param eter.
1608
1609 2011-07-15 Kenneth Rohde Christiansen <kenneth@webkit.org>
1610
1611 Upstream QtWebKit/N9 changes related to visibleContentRect
1612 https://bugs.webkit.org/show_bug.cgi?id=64589
1613
1614 Reviewed by Simon Hausmann.
1615
1616 Rename setActualVisibleContentRect to setFixedVisibleContentRect
1617 as that makes it more obvious that it is an override. It is also
1618 consistent with the setFixedLayout which is often used in
1619 conjunction with it.
1620
1621 Make visibleContentRect return the fixed value if set, and remove
1622 all calls to actualVisibleContentRect.
1623
1624 Also updated the documentation.
1625
1626 This is similar to what we have on our QtWebKit/N9 branch and is
1627 pretty well tested.
1628
1629 * platform/ScrollView.cpp:
1630 (WebCore::ScrollView::visibleContentRect):
1631 If a fixed visibleContentRect is set, return that.
1632 Remove the code returning the contents size when in
1633 paintsEntireContents mode as that is wrong and already
1634 ifdeffed out for EFL.
1635 (WebCore::ScrollView::setScrollPosition):
1636 Do not try to be smart and update the fixed visibleContentsRect
1637 automatically, as the embedder might ignore the scroll request
1638 for various reasons.
1639 * platform/ScrollView.h:
1640 (WebCore::ScrollView::setFixedVisibleContentRect):
1641 (WebCore::ScrollView::fixedVisibleContentRect):
1642
1643 2011-07-15 Mike West <mkwst@chromium.org>
1644
1645 Web Inspector: Rename console.markTimeline() to console.timeStamp() for Firebug compatibility.
1646 https://bugs.webkit.org/show_bug.cgi?id=63317
1647
1648 Reviewed by Pavel Feldman.
1649
1650 Test: inspector/timeline/timeline-time-stamp.html
1651
1652 * inspector/InspectorConsoleInstrumentation.h:
1653 (WebCore::InspectorInstrumentation::consoleTimeStamp):
1654 * inspector/InspectorInstrumentation.cpp:
1655 (WebCore::InspectorInstrumentation::consoleTimeStampImpl):
1656 * inspector/InspectorInstrumentation.h:
1657 * inspector/InspectorTimelineAgent.cpp:
1658 (WebCore::InspectorTimelineAgent::didTimeStamp):
1659 * inspector/InspectorTimelineAgent.h:
1660 * inspector/TimelineRecordFactory.cpp:
1661 (WebCore::TimelineRecordFactory::createTimeStampData):
1662 * inspector/TimelineRecordFactory.h:
1663 * inspector/front-end/TimelineAgent.js:
1664 * inspector/front-end/TimelineOverviewPane.js:
1665 (WebInspector.TimelineOverviewPane.prototype.update.markPercentagesForRe cord):
1666 (WebInspector.TimelineOverviewPane.prototype.update):
1667 * inspector/front-end/TimelinePanel.js:
1668 (WebInspector.TimelinePanel):
1669 (WebInspector.TimelinePanel.prototype.get _recordStyles):
1670 (WebInspector.TimelinePanel.prototype._updateEventDividers):
1671 (WebInspector.TimelinePanel.prototype._createEventDivider):
1672 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
1673 (WebInspector.TimelinePanel.prototype._clearPanel):
1674 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails) :
1675 * page/Console.cpp:
1676 (WebCore::Console::markTimeline):
1677 (WebCore::Console::timeStamp):
1678 * page/Console.h:
1679 * page/Console.idl:
1680
1681 2011-07-15 Jonathan Dong <jonathan.dong@torchmobile.com.cn>
1682
1683 LocalStorage: Changed the value type of ItemTable from TEXT to BLOB
1684 to avoid string truncation.
1685 This patch will also convert the exsisting ItemTable and perform
1686 the DATA MIGRATION job.
1687 https://bugs.webkit.org/show_bug.cgi?id=58762
1688
1689 Reviewed by Jeremy Orlow.
1690
1691 Tests: manual-tests/localstorage-value-truncation.html
1692
1693 * manual-tests/localstorage-value-truncation.html: Added.
1694 Demostrate the testcase shown in bug 58762.
1695 * platform/sql/SQLiteStatement.cpp:
1696 (WebCore::SQLiteStatement::isColumnDeclearedAsBlob):
1697 Test if the pre-defined type of column is BLOB.
1698 * platform/sql/SQLiteStatement.h:
1699 * storage/StorageAreaSync.cpp:
1700 Change the localStorage value type from Text to BLOB to avoid the
1701 value string truncation at \x00.
1702 (WebCore::StorageAreaSync::openDatabase):
1703 Change the database structure, use BLOB to replace the TEXT type of
1704 value segment in ItemTable.
1705 (WebCore::StorageAreaSync::migrateItemTableIfNeeded):
1706 Migrate the ItemTable if the pre-defined type of value is TEXT.
1707 (WebCore::StorageAreaSync::performImport):
1708 Use getColumnBlobAsString() to import the BLOB value.
1709 (WebCore::StorageAreaSync::sync):
1710 Use bindBlob() to bind value string to the SQLiteStatement for the
1711 database execution.
1712 * storage/StorageAreaSync.h:
1713
1714 2011-07-15 Kentaro Hara <haraken@google.com>
1715
1716 Clear the content of a search input form when 'Escape' is pressed.
1717 https://bugs.webkit.org/show_bug.cgi?id=51897
1718
1719 This change added handleKeydownEvent() to a search input form,
1720 which clears the form and triggers a 'search' event when 'Escape' is pre ssed.
1721
1722 Reviewed by Kent Tamura.
1723
1724 Test: fast/forms/input-search-press-escape-key.html
1725
1726 * html/SearchInputType.cpp:
1727 (WebCore::SearchInputType::handleKeydownEvent):
1728 * html/SearchInputType.h:
1729
1730 2011-07-15 Alexandru Chiculita <achicu@adobe.com>
1731
1732 Move useRepaintBounds from RenderBlock::layoutRunsAndFloats to LineLayou tState
1733 https://bugs.webkit.org/show_bug.cgi?id=64360
1734
1735 Reviewed by Hajime Morita.
1736
1737 No new tests needed because the patch is just a refactor.
1738
1739 * rendering/RenderBlock.h:
1740 * rendering/RenderBlockLineLayout.cpp:
1741 (WebCore::LineLayoutState::LineLayoutState):
1742 (WebCore::LineLayoutState::usesRepaintBounds):
1743 (WebCore::LineLayoutState::setRepaintRange):
1744 (WebCore::LineLayoutState::updateRepaintRangeFromBox):
1745 (WebCore::RenderBlock::layoutRunsAndFloats):
1746 (WebCore::RenderBlock::determineStartPosition):
1747
1748 2011-07-14 MORITA Hajime <morrita@google.com>
1749
1750 ExceptionCodePlaceholder should have its own ExceptionCodePlaceholder.cp p file
1751 https://bugs.webkit.org/show_bug.cgi?id=64503
1752
1753 Reviewed by Darin Adler.
1754
1755 No new tests. Just a file reorg.
1756
1757 * CMakeLists.txt:
1758 * GNUmakefile.list.am:
1759 * WebCore.gypi:
1760 * WebCore.pro:
1761 * WebCore.vcproj/WebCore.vcproj:
1762 * WebCore.xcodeproj/project.pbxproj:
1763 * dom/DOMAllInOne.cpp:
1764 * dom/ExceptionCodePlaceholder.cpp: Added.
1765 (WebCore::NoExceptionAssertionChecker::NoExceptionAssertionChecker):
1766 (WebCore::NoExceptionAssertionChecker::~NoExceptionAssertionChecker):
1767 * dom/ExceptionCodePlaceholder.h: Removed NoExceptionAssertionChecker::m _function, which is loonger used.
1768
1769 2011-07-14 Mark Pilgrim <pilgrim@chromium.org>
1770
1771 Remove LegacyDefaultOptionalArguments flag from WebGL
1772 https://bugs.webkit.org/show_bug.cgi?id=64549
1773
1774 Reviewed by Kenneth Russell.
1775
1776 * html/canvas/WebGLRenderingContext.idl:
1777
1778 2011-07-14 Yuta Kitamura <yutak@chromium.org>
1779
1780 WebSocket: Introduce pywebsocket-0.6b2
1781 https://bugs.webkit.org/show_bug.cgi?id=64534
1782
1783 Reviewed by Kent Tamura.
1784
1785 pywebsocket now accepts "Sec-WebSocket-Version: 8" as required in hybi-1 0 specification.
1786
1787 No new functionality is added, thus no new tests. Existing WebSocket tes ts should keep passing.
1788
1789 * websockets/WebSocketHandshake.cpp:
1790 (WebCore::WebSocketHandshake::clientHandshakeMessage):
1791 (WebCore::WebSocketHandshake::clientHandshakeRequest):
1792
1793 2011-07-14 SravanKumar S <sravan.ken@gmail.com>
1794
1795 Replaced isChecked() with shouldAppearChecked() in HTMLInputElement.cpp along with all the corresponding function calls.
1796 https://bugs.webkit.org/show_bug.cgi?id=54476
1797
1798 Reviewed by Darin Adler.
1799
1800 No new tests, since existing fast/dom/HTMLInputElement/checked-pseudo-se lector.html verifies the patch.
1801
1802 * accessibility/AccessibilityRenderObject.cpp:
1803 (WebCore::AccessibilityRenderObject::isChecked):
1804 * css/CSSStyleSelector.cpp:
1805 (WebCore::CSSStyleSelector::canShareStyleWithControl):
1806 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1807 * dom/CheckedRadioButtons.cpp:
1808 (WebCore::CheckedRadioButtons::removeButton):
1809 * html/HTMLInputElement.cpp:
1810 (WebCore::HTMLInputElement::shouldAppearChecked):
1811 * html/HTMLInputElement.h: Removed virtual declaration from shouldAppear Checked().
1812 * rendering/RenderTheme.cpp:
1813 (WebCore::RenderTheme::isChecked):
1814
1815 2011-07-14 Kenichi Ishibashi <bashi@chromium.org>
1816
1817 <input form="x"> should not associate the input with any forms when ther e is no form with id="x"
1818 https://bugs.webkit.org/show_bug.cgi?id=64509
1819
1820 Don't set form owner when a form associated element has the form attribu te but there is no such form element.
1821
1822 Reviewed by Kent Tamura.
1823
1824 Test: fast/forms/form-attribute-nonexistence-form-id.html
1825
1826 * dom/Document.cpp:
1827 (WebCore::Document::resetFormElementsOwner): Removed the argument which is no longer needed.
1828 * dom/Document.h: Ditto.
1829 * html/FormAssociatedElement.cpp:
1830 (WebCore::FormAssociatedElement::insertedIntoTree): Resets m_form whenev er the element has the form attribute.
1831 (WebCore::FormAssociatedElement::resetFormOwner): Don't set m_form when there is no form element which has the given id.
1832 (WebCore::FormAssociatedElement::formAttributeChanged): Removed the argu ment of resetFormOwner().
1833 * html/FormAssociatedElement.h: Ditto.
1834 * html/HTMLFormElement.cpp: Ditto.
1835 (WebCore::HTMLFormElement::insertedIntoDocument):
1836 (WebCore::HTMLFormElement::removedFromDocument):
1837
1838 2011-07-14 Kent Tamura <tkent@chromium.org>
1839
1840 REGRESSION (r90809): Setting a checkbox's checked property, doesn't rend er as checked until app window loses focus
1841 https://bugs.webkit.org/show_bug.cgi?id=64537
1842
1843 Reviewed by Darin Adler.
1844
1845 We stopped to call updateCheckedRadioButtons() for checkboxes
1846 since r90809, but we need to call RenderTheme::stateChanged(),
1847 which was in updateCheckedRadioButtons(), for checkboxes.
1848
1849 Tests: fast/forms/checkbox-appearance-change-by-checked-expected.html
1850 fast/forms/checkbox-appearance-change-by-checked.html
1851
1852 * html/HTMLInputElement.cpp: Move the RenderTheme::stateChanged() call
1853 from updateCheckedRadioButtons() to setChecked().
1854 (WebCore::HTMLInputElement::updateCheckedRadioButtons):
1855 (WebCore::HTMLInputElement::setChecked):
1856
1857 2011-07-14 Adam Barth <abarth@webkit.org>
1858
1859 The beforeload event allows tracking URI changes in a frame
1860 https://bugs.webkit.org/show_bug.cgi?id=64482
1861
1862 Reviewed by Nate Chapin.
1863
1864 Tests: http/tests/security/beforeload-iframe-client-redirect.html
1865 http/tests/security/beforeload-iframe-server-redirect.html
1866
1867 Only dispatch the beforeload event for a frame if we haven't yet
1868 committed our first real load. The URL that we send to our parent will
1869 be the same URL the parent seens in the src attribute.
1870
1871 * loader/FrameLoader.cpp:
1872 (WebCore::FrameLoader::loadWithDocumentLoader):
1873
1874 2011-07-14 Dan Bernstein <mitz@apple.com>
1875
1876 LLVM Compiler build fix.
1877
1878 * css/CSSStyleApplyProperty.cpp:
1879 (WebCore::ApplyPropertyComputeLength::applyValue):
1880
1881 2011-07-14 Darin Adler <darin@apple.com>
1882
1883 [Mac] Use [NSCursor operationNotAllowedCursor] for CSS no-drop as well a s CSS not-allowed
1884 https://bugs.webkit.org/show_bug.cgi?id=64570
1885
1886 Reviewed by Alexey Proskuryakov.
1887
1888 Mac OS X documentation and usage makes it clear that this cursor is usua lly used for no-drop,
1889 and that it's also reasonable to use it for not-allowed.
1890
1891 * platform/mac/CursorMac.mm:
1892 (WebCore::Cursor::ensurePlatformCursor): Use [NSCursor operationNotAllow edCursor] for
1893 Cursor::NoDrop.
1894
1895 2011-07-14 Luke Macpherson <macpherson@chromium.org>
1896
1897 Reviewed by Dimitri Glazkov.
1898
1899 Introduce templated compute length class in CSSStyleApplyProperty, and u se to handle several CSS properties.
1900 https://bugs.webkit.org/show_bug.cgi?id=62957
1901
1902 No new tests / refactoring only.
1903
1904 * css/CSSPrimitiveValue.cpp:
1905 (WebCore::CSSPrimitiveValue::computeLength):
1906 Add computeLength function that returns unsigned short.
1907 * css/CSSStyleApplyProperty.cpp:
1908 (WebCore::ApplyPropertyComputeLength::ApplyPropertyComputeLength):
1909 Added class to handle computeLength based properties.
1910 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1911 Initialize ApplyPropertyComputeLength for appropriate properties.
1912 * css/CSSStyleSelector.cpp:
1913 (WebCore::CSSStyleSelector::useSVGZoomRules):
1914 Make this a public member function instead of a private static function.
1915 (WebCore::CSSStyleSelector::applyProperty):
1916 Removed code now implemented in CSSStyleApplyProperty.
1917 (WebCore::CSSStyleSelector::setFontSize):
1918 Use new useSVGZoomRules function.
1919 * css/CSSStyleSelector.h:
1920 Add interface for useSVGZoomRules.
1921
1922 2011-07-14 Antti Koivisto <antti@apple.com>
1923
1924 REGRESSION: Should not dispatch didFirstVisuallyNonEmptyLayout for the i nitial empty document
1925 https://bugs.webkit.org/show_bug.cgi?id=64557
1926
1927 Reviewed by Kenneth Rohde Christiansen.
1928
1929 Avoid sending didFirstVisuallyNonEmptyLayout for the initial empty docum ent of the frame. The
1930 clients may not expect it and it doesn't make much sense in any case.
1931
1932 * page/FrameView.cpp:
1933 (WebCore::FrameView::performPostLayoutTasks):
1934
1935 2011-07-14 Jeffrey Pfau <jpfau@apple.com>
1936
1937 Character reference parser for new XML parser
1938 https://bugs.webkit.org/show_bug.cgi?id=64398
1939
1940 Reviewed by Adam Barth.
1941
1942 Refactored out the HTML entity parser and added a common template for pa rsing character references.
1943
1944 * WebCore.xcodeproj/project.pbxproj:
1945 * html/parser/HTMLEntityParser.cpp:
1946 (WebCore::consumeHTMLEntity):
1947 * xml/parser/CharacterReferenceParserInlineMethods.h: Copied from Source /WebCore/html/parser/HTMLEntityParser.cpp.
1948 (WebCore::isHexDigit):
1949 (WebCore::unconsumeCharacters):
1950 (WebCore::consumeCharacterReference):
1951 * xml/parser/XMLCharacterReferenceParser.cpp: Added.
1952 (WebCore::consumeXMLCharacterReference):
1953 * xml/parser/XMLCharacterReferenceParser.h: Added.
1954
1955 2011-07-14 Ilya Tikhonovsky <loislo@chromium.org>
1956
1957 Reviewed by Pavel Feldman.
1958
1959 Web Inspector: panel switching is too slow.
1960 https://bugs.webkit.org/show_bug.cgi?id=60959
1961
1962 * inspector/front-end/inspector.css:
1963 (.panel):
1964 (.panel.visible):
1965
1966 2011-07-14 Andrey Kosyakov <caseq@chromium.org>
1967
1968 Web Inspector: remove more unused CSS from inspector.css
1969 https://bugs.webkit.org/show_bug.cgi?id=64529
1970
1971 Reviewed by Pavel Feldman.
1972
1973 * inspector/front-end/inspector.css:
1974
1975 2011-07-14 Ryosuke Niwa <rniwa@webkit.org>
1976
1977 Move subtreeHasChanged from RenderTextControl to HTMLTextFormControlElem ent
1978 https://bugs.webkit.org/show_bug.cgi?id=64476
1979
1980 Reviewed by Kent Tamura.
1981
1982 Moved subtreeHasChanged from RenderTextControl, RenderTextControlSingleL ine, and
1983 RenderTextControlMultiLine to HTMLTextFormControlElement, HTMLInputEleme nt, and
1984 HTMLTextAreaElement. Also moved m_searchEventTimer and related functions from
1985 RenderTextSingleLine to SearchInputType.
1986
1987 * html/HTMLInputElement.cpp:
1988 (WebCore::HTMLInputElement::subtreeHasChanged): Moved from RenderTextCon trolSingleLine.
1989 (WebCore::HTMLInputElement::onSearch): Calls stopSearchEventTimer.
1990 * html/HTMLInputElement.h:
1991 * html/HTMLTextAreaElement.cpp:
1992 (WebCore::HTMLTextAreaElement::subtreeHasChanged): Moved from RenderText MultiLine.
1993 * html/HTMLTextAreaElement.h:
1994 * html/HTMLTextFormControlElement.cpp:
1995 (WebCore::HTMLTextFormControlElement::defaultEventHandler): Calls subtre eHasChanged.
1996 (WebCore::HTMLTextFormControlElement::subtreeHasChanged): Added; calls r espondToChangeByUser.
1997 * html/HTMLTextFormControlElement.h:
1998 * html/SearchInputType.cpp:
1999 (WebCore::SearchInputType::SearchInputType): Initializes m_searchEventTi mer.
2000 (WebCore::SearchInputType::startSearchEventTimer): Moved from RenderText ControlSingleLine.
2001 (WebCore::SearchInputType::stopSearchEventTimer): Ditto.
2002 (WebCore::SearchInputType::searchEventTimerFired): Ditto.
2003 * html/SearchInputType.h:
2004 * html/TextFieldInputType.cpp:
2005 (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent): Updated co mment.
2006 * rendering/RenderTextControl.cpp:
2007 * rendering/RenderTextControl.h:
2008 (WebCore::RenderTextControl::respondToChangeByUser): Renamed from subtre eHasChanged.
2009 * rendering/RenderTextControlMultiLine.cpp:
2010 * rendering/RenderTextControlMultiLine.h:
2011 * rendering/RenderTextControlSingleLine.cpp:
2012 (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine): No longer initializes
2013 m_searchEventTimer.
2014 * rendering/RenderTextControlSingleLine.h:
2015
2016 2011-07-14 Vsevolod Vlasov <vsevik@chromium.org>
2017
2018 Move XML errors handling out from XMLDocumentParser (refactoring).
2019 https://bugs.webkit.org/show_bug.cgi?id=64305
2020
2021 XML errors handling logic is moved out from XMLDocumentParser to allow u sing it for XSLT error handling as well.
2022
2023 Reviewed by Adam Barth.
2024
2025 No tests needed as there is no new functionality added.
2026
2027 * CMakeLists.txt:
2028 * GNUmakefile.list.am:
2029 * WebCore.gypi:
2030 * WebCore.pro:
2031 * WebCore.vcproj/WebCore.vcproj:
2032 * WebCore.xcodeproj/project.pbxproj:
2033 * xml/XMLErrors.cpp: Added.
2034 (WebCore::XMLErrors::XMLErrors):
2035 (WebCore::XMLErrors::handleError):
2036 (WebCore::XMLErrors::appendErrorMessage):
2037 (WebCore::createXHTMLParserErrorHeader):
2038 (WebCore::XMLErrors::insertErrorMessageBlock):
2039 * xml/XMLErrors.h: Added.
2040 * xml/parser/XMLDocumentParser.cpp:
2041 (WebCore::XMLDocumentParser::pushCurrentNode):
2042 (WebCore::XMLDocumentParser::handleError):
2043 (WebCore::XMLDocumentParser::insertErrorMessageBlock):
2044 * xml/parser/XMLDocumentParser.h:
2045 * xml/parser/XMLDocumentParserLibxml2.cpp:
2046 (WebCore::PendingCallbacks::appendErrorCallback):
2047 (WebCore::XMLDocumentParser::XMLDocumentParser):
2048 (WebCore::XMLDocumentParser::doWrite):
2049 (WebCore::XMLDocumentParser::error):
2050 (WebCore::warningHandler):
2051 (WebCore::fatalErrorHandler):
2052 (WebCore::normalErrorHandler):
2053 * xml/parser/XMLDocumentParserQt.cpp:
2054 (WebCore::XMLDocumentParser::XMLDocumentParser):
2055 (WebCore::XMLDocumentParser::doWrite):
2056 (WebCore::XMLDocumentParser::doEnd):
2057 (WebCore::XMLDocumentParser::parse):
2058 (WebCore::XMLDocumentParser::parseStartElement):
2059 (WebCore::XMLDocumentParser::parseDtd):
2060
2061 2011-07-14 Vsevolod Vlasov <vsevik@chromium.org>
2062
2063 Web Inspector: InspectorResourceAgent should generate unique identifier and save cachedResource for resources from memory cache.
2064 https://bugs.webkit.org/show_bug.cgi?id=64356
2065
2066 Reviewed by Yury Semikhatsky.
2067
2068 * inspector/Inspector.json:
2069 * inspector/InspectorInstrumentation.cpp:
2070 (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
2071 * inspector/InspectorInstrumentation.h:
2072 (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCache):
2073 * inspector/InspectorResourceAgent.cpp:
2074 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
2075 * inspector/InspectorResourceAgent.h:
2076 * inspector/front-end/NetworkManager.js:
2077 (WebInspector.NetworkManager.prototype.requestContent):
2078 (WebInspector.NetworkDispatcher):
2079 (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache) :
2080 (WebInspector.NetworkDispatcher.prototype._appendRedirect):
2081 * inspector/front-end/NetworkPanel.js:
2082 (WebInspector.NetworkLogView.prototype._frameNavigated):
2083 * loader/FrameLoader.cpp:
2084 (WebCore::FrameLoader::loadedResourceFromMemoryCache):
2085 * loader/FrameLoader.h:
2086
2087 2011-07-14 Tim Horton <timothy_horton@apple.com>
2088
2089 Clear SVGElementInstance's children immediately upon detachment
2090 https://bugs.webkit.org/show_bug.cgi?id=63739
2091 <rdar://problem/9705708>
2092
2093 Reviewed by Nikolas Zimmermann.
2094
2095 In addition to clearing the instance's children in the destructor,
2096 clear them when the instance is detached from its <use>. This way,
2097 we won't attempt to use them after we're detached but before the
2098 destructor has been called.
2099
2100 Test: svg/custom/use-crash-using-children-before-destroy.svg
2101
2102 * svg/SVGElementInstance.cpp:
2103 (WebCore::SVGElementInstance::~SVGElementInstance):
2104 (WebCore::SVGElementInstance::clearChildren):
2105 * svg/SVGElementInstance.h:
2106 * svg/SVGUseElement.cpp:
2107 (WebCore::SVGUseElement::detachInstance):
2108
2109 2011-07-14 Nate Chapin <japhet@chromium.org>
2110
2111 Don't skip custom cursors if an Image* is null,
2112 since this can lead to a non-custom Cursor flickering
2113 back in when the custom cursor hasn't finished loading yet.
2114 https://bugs.webkit.org/show_bug.cgi?id=64321
2115
2116 Reviewed by Darin Fisher.
2117
2118 Manual test, since we're testing visual flickering.
2119
2120 * manual-tests/canvas-cursor.html: Added.
2121 * page/EventHandler.cpp:
2122 (WebCore::EventHandler::selectCursor):
2123 * platform/Cursor.cpp:
2124 (WebCore::determineHotSpot):
2125
2126 2011-07-14 Young Han Lee <joybro@company100.net>
2127
2128 Reviewed by Dirk Schulze.
2129
2130 REGRESSION (r89774): svg/W3C-SVG-1.1/animate-elem-82-t.svg hits assertio n failure.
2131 https://bugs.webkit.org/show_bug.cgi?id=63911
2132
2133 Some functions assumed calculateKeyTimesIndex() does not return the last index of
2134 the keyTimes, but it would be right behavior for calculateKeyTimesIndex( ) when it
2135 accepts 1 as the percent argument.
2136
2137 To avoid the assumption, and for more efficiency, this patch allows the functions
2138 using calculateKeyTimesIndex() to return early when it accepts 1 as the percent argument.
2139 These functions have always returned the last element of the correspondi ng vector
2140 in that situation.
2141
2142 * svg/SVGAnimationElement.cpp:
2143 (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints):
2144 (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
2145
2146 2011-07-14 Andrey Kosyakov <caseq@chromium.org>
2147
2148 Web Inspector: remove more dead code
2149 https://bugs.webkit.org/show_bug.cgi?id=64524
2150
2151 Reviewed by Yury Semikhatsky.
2152
2153 * WebCore.gypi:
2154 * inspector/front-end/SummaryBar.js: Removed.
2155 * inspector/front-end/WebKit.qrc:
2156 * inspector/front-end/inspector.css:
2157 * inspector/front-end/inspector.html:
2158
2159 2011-07-14 Peter Varga <pvarga@webkit.org>
2160
2161 [Qt][V8] Build fix after r90830.
2162
2163 Reviewed by Csaba Osztrogonác.
2164
2165 The histogramEnumeration() function isn't available from the Qt port's
2166 PlatformBridge.h because this function is Chromium specific.
2167 Since the http://trac.webkit.org/changeset/90830 change we need to
2168 guard the usage of the histogramEnumeration() function.
2169
2170 No new tests needed.
2171
2172 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
2173 (WebCore::V8InspectorFrontendHost::recordActionTakenCallback):
2174 (WebCore::V8InspectorFrontendHost::recordPanelShownCallback):
2175 (WebCore::V8InspectorFrontendHost::recordSettingChangedCallback):
2176
2177 2011-07-14 Yury Semikhatsky <yurys@chromium.org>
2178
2179 Web Inspector: show only Console and Scripts panels in shared worker ins pector front-end
2180 https://bugs.webkit.org/show_bug.cgi?id=64519
2181
2182 Reviewed by Pavel Feldman.
2183
2184 * inspector/front-end/WorkerManager.js:
2185 (WebInspector.WorkerManager):
2186 (WebInspector.WorkerManager.isWorkerFrontend):
2187 (WebInspector.WorkerManager.isSharedWorkerFrontend):
2188 (WebInspector.WorkerManager.prototype._openInspectorWindow):
2189 (WebInspector.DedicatedWorkerMessageForwarder):
2190
2191 2011-07-14 MORITA Hajime <morrita@google.com>
2192
2193 Unreviewed, rolling out r90976, r90981, and r90985.
2194 http://trac.webkit.org/changeset/90976
2195 http://trac.webkit.org/changeset/90981
2196 http://trac.webkit.org/changeset/90985
2197 https://bugs.webkit.org/show_bug.cgi?id=64251
2198
2199 build break
2200
2201 * WebCore.exp.in:
2202 * dom/NodeRenderingContext.cpp:
2203 (WebCore::NodeRenderingContext::NodeRenderingContext):
2204 (WebCore::NodeRenderingContext::nextRenderer):
2205 (WebCore::NodeRenderingContext::previousRenderer):
2206 * dom/NodeRenderingContext.h:
2207 * dom/ShadowContentElement.cpp:
2208 (WebCore::ShadowContentElement::attach):
2209 (WebCore::ShadowContentElement::detach):
2210 * dom/ShadowContentElement.h:
2211 * dom/ShadowContentSelector.cpp:
2212 (WebCore::ShadowContentSelector::ShadowContentSelector):
2213 (WebCore::ShadowContentSelector::selectInclusion):
2214 (WebCore::ShadowContentSelector::willAttachContentFor):
2215 (WebCore::ShadowContentSelector::didAttachContent):
2216 (WebCore::ShadowContentSelector::activeElement):
2217 * dom/ShadowContentSelector.h:
2218 * dom/ShadowRoot.cpp:
2219 (WebCore::ShadowRoot::~ShadowRoot):
2220 (WebCore::ShadowRoot::activeContentElement):
2221 * dom/ShadowRoot.h:
2222 * testing/Internals.cpp:
2223 * testing/Internals.h:
2224 * testing/Internals.idl:
2225
2226 2011-07-13 Ryosuke Niwa <rniwa@webkit.org>
2227
2228 Move forwardEvent from RenderTextControl to HTMLTextFormControlElement
2229 https://bugs.webkit.org/show_bug.cgi?id=64475
2230
2231 Reviewed by Kent Tamura.
2232
2233 Moved forwardEvent from RenderTextControl, RenderTextControlSingleLine, and RenderTextControlMultiLine
2234 to HTMLTextFormControlElement, HTMLInputElement, and HTMLTextAreaElement .
2235
2236 This removes the last dependency on Event.h and EventNames.h in the cpp files for the above render
2237 objects classes.
2238
2239 * html/HTMLTextAreaElement.cpp:
2240 (WebCore::HTMLTextAreaElement::defaultEventHandler):
2241 * html/HTMLTextFormControlElement.cpp:
2242 (WebCore::HTMLTextFormControlElement::forwardEvent):
2243 * html/HTMLTextFormControlElement.h:
2244 * html/TextFieldInputType.cpp:
2245 (WebCore::TextFieldInputType::forwardEvent):
2246 * rendering/RenderTextControl.cpp:
2247 * rendering/RenderTextControl.h:
2248 * rendering/RenderTextControlMultiLine.cpp:
2249 * rendering/RenderTextControlMultiLine.h:
2250 * rendering/RenderTextControlSingleLine.cpp:
2251 * rendering/RenderTextControlSingleLine.h:
2252
2253 2011-07-13 Ilya Tikhonovsky <loislo@chromium.org>
2254
2255 Web Inspector: if you rename an element into the INPUT element the brows er will crash.
2256 https://bugs.webkit.org/show_bug.cgi?id=64292
2257
2258 Reviewed by Joseph Pecoraro.
2259
2260 * inspector/InspectorDOMAgent.cpp:
2261 (WebCore::InspectorDOMAgent::setNodeName):
2262 Unnecessary function call copyNonAttributeProperties was removed.
2263
2264 2011-07-13 Yuta Kitamura <yutak@chromium.org>
2265
2266 WebSocket: Implement hybi handshake
2267 https://bugs.webkit.org/show_bug.cgi?id=64344
2268
2269 Reviewed by Kent Tamura.
2270
2271 Implement WebSocket handshake which is described at
2272 <http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10#sect ion-5.1>.
2273
2274 Notable differences from hixie-76 protocol are:
2275 - Challenge-response scheme has been changed dramatically.
2276 - Servers do not send Sec-WebSocket-Location and Sec-WebSocket-Origin an ymore.
2277 - The value of "Upgrade" header has been changed to "websocket" (lower-c ase only).
2278 - "Origin" header in client's request is renamed to "Sec-WebSocket-Origi n".
2279
2280 New tests: http/tests/websocket/tests/hybi/handshake-fail-by-extensions- header.html
2281 http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-h eader.html
2282 http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accep t-header.html
2283
2284 Note: Tests under hybi/ directory (including the new ones) are skipped a nd cannot be enabled
2285 yet, because pywebsocket does not accept requests from half-baked client implementation
2286 (i.e. hybi handshake + hixie-76 framing). They will be unskipped when hy bi framing is landed
2287 in WebCore.
2288
2289 * websockets/WebSocketHandshake.cpp:
2290 Functions and members only used for hixie-76 handshake are renamed so th at they are not confused
2291 with hybi-10's ones.
2292 (WebCore::generateHixie76SecWebSocketKey):
2293 (WebCore::generateHixie76Key3):
2294 (WebCore::generateHixie76ExpectedChallengeResponse):
2295 (WebCore::generateSecWebSocketKey):
2296 Generates a value for Sec-WebSocket-Key as stated in hybi-10.
2297 (WebCore::getExpectedWebSocketAccept):
2298 Calculates the expected value of Sec-WebSocket-Accept.
2299 (WebCore::WebSocketHandshake::WebSocketHandshake):
2300 (WebCore::WebSocketHandshake::clientHandshakeMessage):
2301 (WebCore::WebSocketHandshake::clientHandshakeRequest):
2302 (WebCore::WebSocketHandshake::readServerHandshake):
2303 (WebCore::WebSocketHandshake::serverWebSocketAccept):
2304 (WebCore::WebSocketHandshake::serverWebSocketExtensions):
2305 (WebCore::WebSocketHandshake::checkResponseHeaders):
2306 * websockets/WebSocketHandshake.h:
2307
2308 2011-07-13 MORITA Hajime <morrita@google.com>
2309
2310 [ShadowContentElement] forwarded node should be able to access its hosti ng content element.
2311 https://bugs.webkit.org/show_bug.cgi?id=64251
2312
2313 Reviewed by Dimitri Glazkov.
2314
2315 - Introduced ShadowInclusionSet to manage included nodes to its includer content element.
2316 ShadowInclusionSet instance is owned by ShadowRoot.
2317 - Updated the set on inclusion list changes.
2318 - Used the set to retrieve the content element of NodeRenderingContext.
2319
2320 There are also related refactoring and cleanup:
2321 - Renamed NodeRenderingContext::m_contentElement to m_includer
2322 - ShadowContentSelector::m_activeElement is no longer used, thus removed .
2323
2324 Test: fast/dom/shadow/content-element-includer.html
2325
2326 * WebCore.exp.in:
2327 * dom/NodeRenderingContext.cpp:
2328 (WebCore::NodeRenderingContext::NodeRenderingContext):
2329 (WebCore::NodeRenderingContext::nextRenderer):
2330 (WebCore::NodeRenderingContext::previousRenderer):
2331 * dom/NodeRenderingContext.h:
2332 (WebCore::NodeRenderingContext::includer):
2333 * dom/ShadowContentElement.cpp:
2334 (WebCore::removeFromSet): Added
2335 (WebCore::addToSet): Added
2336 (WebCore::ShadowContentElement::attach):
2337 (WebCore::ShadowContentElement::detach):
2338 * dom/ShadowContentElement.h:
2339 (WebCore::ShadowInclusionSet::add):
2340 (WebCore::ShadowInclusionSet::remove):
2341 (WebCore::ShadowInclusionSet::isEmpty):
2342 (WebCore::ShadowInclusionSet::Translator::hash):
2343 (WebCore::ShadowInclusionSet::Translator::equal):
2344 (WebCore::ShadowInclusionSet::Hash::hash):
2345 (WebCore::ShadowInclusionSet::Hash::equal):
2346 (WebCore::ShadowInclusionSet::find):
2347 * dom/ShadowContentSelector.cpp:
2348 (WebCore::ShadowContentSelector::ShadowContentSelector):
2349 (WebCore::ShadowContentSelector::selectInclusion):
2350 * dom/ShadowContentSelector.h:
2351 * dom/ShadowRoot.cpp:
2352 (WebCore::ShadowRoot::~ShadowRoot):
2353 (WebCore::ShadowRoot::includerFor): Replaced activeElement()
2354 (WebCore::ShadowRoot::inclusions): Added
2355 (WebCore::ShadowRoot::ensureInclusions): Added
2356 * dom/ShadowRoot.h:
2357 (WebCore::toShadowRoot):
2358 * testing/Internals.cpp:
2359 (WebCore::Internals::includerFor):
2360 * testing/Internals.h:
2361 * testing/Internals.idl:
2362
2363 2011-07-12 Dominic Cooney <dominicc@chromium.org>
2364
2365 Raise if dispatchEvent dispatches an event that is being dispatched
2366 https://bugs.webkit.org/show_bug.cgi?id=64150
2367
2368 Reviewed by Dimitri Glazkov.
2369
2370 Spec: http://www.w3.org/TR/DOM-Level-3-Events/#events-EventTarget-dispat chEvent
2371
2372 Test: fast/events/dispatch-event-being-dispatched.html
2373
2374 * dom/Event.h:
2375 (WebCore::Event::isBeingDispatched): Added.
2376 * dom/EventException.h:
2377 * dom/EventException.idl: Add DISPATCH_REQUEST_ERR.
2378 * dom/EventTarget.cpp:
2379 (WebCore::EventTarget::dispatchEvent): Raise if being dispatched.
2380 * dom/ExceptionCode.cpp: Add gunk for DISPATCH_REQUEST_ERR.
2381
2382 2011-07-13 Kent Tamura <tkent@chromium.org>
2383
2384 Implement text field placeholders using shadow DOM
2385 https://bugs.webkit.org/show_bug.cgi?id=64253
2386
2387 Reviewed by Dimitri Glazkov.
2388
2389 Represents a placeholder text as a shadow element, and its
2390 visibility is controlled by 'visibility' CSS property.
2391
2392 This patch removes all of existing code about placeholder from
2393 RenderTextControl*. RenderTextControl* have only small code about
2394 placeholder layout.
2395
2396 Also, this patch removes INPUT_PLACEHOLDER legacy pseudo ID, and
2397 the placeholder style uses Element::shadowPseudoId().
2398
2399 This fixes the following regressions:
2400 - https://bugs.webkit.org/show_bug.cgi?id=51290
2401 - https://bugs.webkit.org/show_bug.cgi?id=54797
2402 - https://bugs.webkit.org/show_bug.cgi?id=54814
2403 - https://bugs.webkit.org/show_bug.cgi?id=63367
2404
2405 Test: fast/forms/textarea-placeholder-wrapping.html
2406
2407 * css/CSSSelector.cpp: Remove INPUT_PLACEHOLDER legacy pseudo ID.
2408 (WebCore::CSSSelector::pseudoId):
2409 (WebCore::nameToPseudoTypeMap):
2410 (WebCore::CSSSelector::extractPseudoType):
2411 * css/CSSSelector.h: ditto.
2412 * css/html.css:
2413 (::-webkit-input-placeholder): Added. This contains properties
2414 common in <input> and <textarea>. Some properties have !important
2415 so that a stylesheet specified by a page author won't break
2416 WebKit's assumption.
2417 (input::-webkit-input-placeholder, isindex::-webkit-input-placeholder):
2418 Added the default style for <input> placeholders.
2419 * html/HTMLInputElement.cpp:
2420 (WebCore::HTMLInputElement::placeholderElement): Delegate to an InputTyp e.
2421 (WebCore::HTMLInputElement::updatePlaceholderText): ditto.
2422 * html/HTMLInputElement.h: Declare placeholderElement() and updatePlaceh olderText().
2423 * html/HTMLTextAreaElement.cpp:
2424 (WebCore::HTMLTextAreaElement::createRenderer):
2425 Remove the 'placeholderVisible' argument.
2426 (WebCore::HTMLTextAreaElement::placeholderElement): Added.
2427 (WebCore::HTMLTextAreaElement::updatePlaceholderText):
2428 Added. This creates, deletes, or updates the placeholder element.
2429 * html/HTMLTextAreaElement.h:
2430 - Declare placeholderElement() and updatePlaceholderText().
2431 - Add m_placeholder.
2432 * html/HTMLTextFormControlElement.cpp:
2433 (WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):
2434 Update the placeholder element and 'visibility' CSS property,
2435 instead of delegating the job to a renderer.
2436 * html/HTMLTextFormControlElement.h:
2437 Declare two pure virtual functions: placeholderElement() and updatePlace holderText().
2438 * html/InputType.cpp:
2439 (WebCore::InputType::placeholderElement): Add an empty implementation.
2440 (WebCore::InputType::updatePlaceholderText): Add an empty implementation .
2441 * html/InputType.h: Declare placeholderElement() and updatePlaceholderTe xt().
2442 * html/TextFieldInputType.cpp:
2443 (WebCore::TextFieldInputType::createRenderer):
2444 Remove the 'placeholderVisible' argument.
2445 (WebCore::TextFieldInputType::placeholderElement): Added.
2446 (WebCore::TextFieldInputType::destroyShadowSubtree): Deletes m_placehold er.
2447 (WebCore::TextFieldInputType::updatePlaceholderText):
2448 Added. This creates, deletes, or updates the placeholder element.
2449 * html/TextFieldInputType.h:
2450 - Declare placeholderElement() and updatePlaceholderText().
2451 - Add m_placeholder.
2452 * rendering/RenderTextControl.cpp:
2453 (WebCore::RenderTextControl::RenderTextControl):
2454 Remove the 'placeholderVisible' argument.
2455 (WebCore::RenderTextControl::layoutSpecialExcludedChild):
2456 Excludes the placeholder renderer in order to avoid to secure a box for
2457 the placeholder.
2458 * rendering/RenderTextControl.h:
2459 - Remove declarations of removed functions.
2460 - Update the RenderTextControl signature.
2461 - Add layoutSpecialExcludedChild().
2462 * rendering/RenderTextControlMultiLine.cpp:
2463 (WebCore::RenderTextControlMultiLine::RenderTextControlMultiLine):
2464 Remove the 'placeholderVisible' argument.
2465 (WebCore::RenderTextControlMultiLine::layoutSpecialExcludedChild):
2466 Laying out the placeholder box so that it has correct width and location .
2467 * rendering/RenderTextControlMultiLine.h:
2468 - Remove declarations of removed functions.
2469 - Update the RenderTextControlMultiLine signature.
2470 - Add layoutSpecialExcludedChild().
2471 * rendering/RenderTextControlSingleLine.cpp:
2472 (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
2473 Remove the 'placeholderVisible' argument.
2474 (WebCore::RenderTextControlSingleLine::layout):
2475 Laying out the placeholder box so that it has correct width and location .
2476 * rendering/RenderTextControlSingleLine.h:
2477 - Remove declarations of removed functions.
2478 - Update the RenderTextControlSingleLine signature.
2479 * rendering/style/RenderStyleConstants.h: Remove INPUT_PLACEHOLDER.
2480
2481 2011-07-13 James Simonsen <simonjam@chromium.org>
2482
2483 Remove hack that forcefully prevents scripts from running in shadow SVG
2484 https://bugs.webkit.org/show_bug.cgi?id=64419
2485
2486 This hack was put in to prevent scripts from running in shadow SVG. This should never have
2487 happened, but did because we didn't parse <script> tags in SVG properly. This was fixed in
2488 r88584, so the hack is no longer needed.
2489
2490 No new tests since there is no change in functionality.
2491
2492 Reviewed by Tony Gentilcore.
2493
2494 * dom/ScriptElement.cpp:
2495 (WebCore::ScriptElement::prepareScript):
2496
2497 2011-07-13 Mihnea Ovidenie <mihnea@adobe.com>
2498
2499 [CSSRegions] Parse -webkit-content-order property
2500 https://bugs.webkit.org/show_bug.cgi?id=63897
2501
2502 Reviewed by David Hyatt.
2503
2504 Test: fast/regions/webkit-content-order-parsing.html
2505
2506 * css/CSSComputedStyleDeclaration.cpp:
2507 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2508 * css/CSSParser.cpp:
2509 (WebCore::CSSParser::parseValue):
2510 * css/CSSPropertyNames.in:
2511 * css/CSSStyleSelector.cpp:
2512 (WebCore::CSSStyleSelector::applyProperty):
2513 * rendering/style/RenderStyle.cpp:
2514 (WebCore::RenderStyle::diff):
2515 * rendering/style/RenderStyle.h:
2516 (WebCore::InheritedFlags::regionIndex):
2517 (WebCore::InheritedFlags::setRegionIndex):
2518 (WebCore::InheritedFlags::initialRegionIndex):
2519 * rendering/style/StyleRareNonInheritedData.cpp:
2520 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2521 (WebCore::StyleRareNonInheritedData::operator==):
2522 * rendering/style/StyleRareNonInheritedData.h:
2523
2524 2011-07-13 James Robinson <jamesr@chromium.org>
2525
2526 Reviewed by Kenneth Russell.
2527
2528 [chromium] Move draw implementation for ContentLayerChromium/ImageLayerC hromium to the appropriate CCLayerImpl subclass
2529 https://bugs.webkit.org/show_bug.cgi?id=58833
2530
2531 Adds a TiledLayerChromium class to handle the tiling logic shared by Con tentLayerChromium and ImageLayerChromium
2532 so that they can be siblings in the class hierarchy instead of children. Also adds a CCTiledLayerImpl to handle
2533 the drawing responsibilities for tiled layers.
2534
2535 TiledLayerChromium maintains a tiler, tiling options, and calculates the tiling transform. Subclasses are
2536 responsible for providing an appropriate texture updater implementation. CCTiledLayerImpl takes the tiler,
2537 tiling transform and layer properties and draws the layer. Longer term it'd be better of the CCTiledLayerImpl
2538 owned the tiler and the TiledLayerChromium only owned an updater, but ge tting there will require changing the
2539 way tile eviction works.
2540
2541 * WebCore.gypi:
2542 * platform/graphics/chromium/ContentLayerChromium.cpp:
2543 (WebCore::ContentLayerChromium::ContentLayerChromium):
2544 (WebCore::ContentLayerChromium::paintContentsIfDirty):
2545 (WebCore::ContentLayerChromium::drawsContent):
2546 * platform/graphics/chromium/ContentLayerChromium.h:
2547 (WebCore::ContentLayerChromium::textureUpdater):
2548 * platform/graphics/chromium/ImageLayerChromium.cpp:
2549 (WebCore::ImageLayerChromium::ImageLayerChromium):
2550 (WebCore::ImageLayerChromium::cleanupResources):
2551 (WebCore::ImageLayerChromium::paintContentsIfDirty):
2552 (WebCore::ImageLayerChromium::textureUpdater):
2553 (WebCore::ImageLayerChromium::contentBounds):
2554 (WebCore::ImageLayerChromium::drawsContent):
2555 (WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
2556 * platform/graphics/chromium/ImageLayerChromium.h:
2557 * platform/graphics/chromium/LayerChromium.cpp:
2558 (WebCore::LayerChromium::pushPropertiesTo):
2559 (WebCore::LayerChromium::ccLayerImpl):
2560 * platform/graphics/chromium/LayerChromium.h:
2561 * platform/graphics/chromium/LayerRendererChromium.cpp:
2562 (WebCore::LayerRendererChromium::drawRootLayer):
2563 * platform/graphics/chromium/LayerTilerChromium.cpp:
2564 (WebCore::LayerTilerChromium::updateRect):
2565 (WebCore::LayerTilerChromium::draw):
2566 (WebCore::LayerTilerChromium::drawTiles):
2567 * platform/graphics/chromium/LayerTilerChromium.h:
2568 * platform/graphics/chromium/TiledLayerChromium.cpp: Added.
2569 (WebCore::TiledLayerChromium::TiledLayerChromium):
2570 (WebCore::TiledLayerChromium::~TiledLayerChromium):
2571 (WebCore::TiledLayerChromium::createCCLayerImpl):
2572 (WebCore::TiledLayerChromium::cleanupResources):
2573 (WebCore::TiledLayerChromium::setLayerRenderer):
2574 (WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):
2575 (WebCore::TiledLayerChromium::drawsContent):
2576 (WebCore::TiledLayerChromium::createTilerIfNeeded):
2577 (WebCore::TiledLayerChromium::updateCompositorResources):
2578 (WebCore::TiledLayerChromium::setTilingOption):
2579 (WebCore::TiledLayerChromium::setIsMask):
2580 (WebCore::TiledLayerChromium::tilingTransform):
2581 (WebCore::TiledLayerChromium::pushPropertiesTo):
2582 (WebCore::writeIndent):
2583 (WebCore::TiledLayerChromium::dumpLayerProperties):
2584 * platform/graphics/chromium/TiledLayerChromium.h: Added.
2585 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2586 (WebCore::CCLayerImpl::draw):
2587 * platform/graphics/chromium/cc/CCLayerImpl.h:
2588 (WebCore::CCLayerImpl::setDrawsContent):
2589 (WebCore::CCLayerImpl::drawsContent):
2590 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: Added.
2591 (WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
2592 (WebCore::CCTiledLayerImpl::~CCTiledLayerImpl):
2593 (WebCore::CCTiledLayerImpl::draw):
2594 (WebCore::CCTiledLayerImpl::bindContentsTexture):
2595 (WebCore::CCTiledLayerImpl::dumpLayerProperties):
2596 * platform/graphics/chromium/cc/CCTiledLayerImpl.h: Added.
2597 (WebCore::CCTiledLayerImpl::create):
2598 (WebCore::CCTiledLayerImpl::setTilingTransform):
2599 (WebCore::CCTiledLayerImpl::setTiler):
2600
2601 2011-07-13 Julien Chaffraix <jchaffraix@webkit.org>
2602
2603 Remove an unused bit in RenderObject
2604 https://bugs.webkit.org/show_bug.cgi?id=64485
2605
2606 Reviewed by Darin Adler.
2607
2608 No change in behavior so no new test.
2609
2610 * rendering/RenderObject.h: Removed a bit that was duplicated from Rende rTableCell.
2611 However it was not used in RenderObject and RenderTableCell already pack ed this bit.
2612 We were lying in the number of used bits in RenderObject which was 33. T his change
2613 brings us back to what was advertised.
2614
2615 2011-07-13 Simon Fraser <simon.fraser@apple.com>
2616
2617 Fix non-debug builds.
2618
2619 * rendering/RenderLayerBacking.cpp:
2620 (WebCore::RenderLayerBacking::createGraphicsLayer):
2621
2622 2011-07-13 Vitaly Repeshko <vitalyr@chromium.org>
2623
2624 [chromium] Fix mac build after r90949.
2625
2626 * bindings/v8/V8HiddenPropertyName.cpp:
2627 (WebCore::V8HiddenPropertyName::hiddenReferenceName):
2628 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2629 (WebCore::toV8Object):
2630
2631 2011-07-13 Emil A Eklund <eae@chromium.org>
2632
2633 Switch table rendering to to new layout types
2634 https://bugs.webkit.org/show_bug.cgi?id=64478
2635
2636 Reviewed by Eric Seidel.
2637
2638 No new tests, no new functionality.
2639
2640 * rendering/AutoTableLayout.cpp:
2641 * rendering/AutoTableLayout.h:
2642 * rendering/HitTestResult.cpp:
2643 * rendering/HitTestResult.h:
2644 * rendering/LayoutTypes.h:
2645 * rendering/RenderBlock.h:
2646 * rendering/RenderBoxModelObject.cpp:
2647 * rendering/RenderBoxModelObject.h:
2648 * rendering/RenderObject.h:
2649 * rendering/RenderTable.cpp:
2650 * rendering/RenderTable.h:
2651 * rendering/RenderTableCell.cpp:
2652 * rendering/RenderTableCell.h:
2653
2654 2011-07-13 Simon Fraser <simon.fraser@apple.com>
2655
2656 Factor some GraphicsLayer creation code in RenderLayerBacking
2657 https://bugs.webkit.org/show_bug.cgi?id=64487
2658
2659 Reviewed by Sam Weinig.
2660
2661 Move the GraphicsLayer::create() calls into once place so that we
2662 don't have lots of #ifndef NDEBUG in various places, and can share
2663 more code in future.
2664
2665 No behavior change, so no new tests.
2666
2667 * rendering/RenderLayerBacking.cpp:
2668 (WebCore::RenderLayerBacking::RenderLayerBacking):
2669 (WebCore::RenderLayerBacking::~RenderLayerBacking):
2670 (WebCore::RenderLayerBacking::createGraphicsLayer):
2671 (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
2672 (WebCore::RenderLayerBacking::destroyGraphicsLayers):
2673 (WebCore::RenderLayerBacking::updateLayerTransform):
2674 (WebCore::RenderLayerBacking::updateClippingLayers):
2675 (WebCore::RenderLayerBacking::updateOverflowControlsLayers):
2676 (WebCore::RenderLayerBacking::updateForegroundLayer):
2677 (WebCore::RenderLayerBacking::updateMaskLayer):
2678 * rendering/RenderLayerBacking.h:
2679
2680 2011-07-13 Xan Lopez <xlopez@igalia.com>
2681
2682 [GTK] Fix distcheck.
2683
2684 Reviewed by Martin Robinson.
2685
2686 * GNUmakefile.list.am: add missing files.
2687
2688 2011-07-13 James Robinson <jamesr@chromium.org>
2689
2690 [chromium] No implementation defined for WTF::monotonicallyIncreasingTim e
2691 https://bugs.webkit.org/show_bug.cgi?id=64420
2692
2693 Reviewed by Tony Gentilcore.
2694
2695 Removes some redundant time related code.
2696
2697 * platform/chromium/PlatformBridge.h:
2698 * platform/chromium/SystemTimeChromium.cpp:
2699 (WebCore::userIdleTime):
2700
2701 2011-07-13 Vitaly Repeshko <vitalyr@chromium.org>
2702
2703 [V8] Avoid memory leaks with hidden references.
2704 https://bugs.webkit.org/show_bug.cgi?id=64467
2705
2706 Reviewed by Adam Barth.
2707
2708 We used to have growing arrays of hidden references associated
2709 with objects. The entries in this array had no keys and were never
2710 removed. This patch changes the interface to require a reference
2711 name. This way it's harder to leak an unbounded number of
2712 objects. Also it makes our wrapper objects one machine word
2713 smaller.
2714
2715 * bindings/scripts/CodeGeneratorV8.pm:
2716 (GenerateNormalAttrGetter): Started using new interface.
2717
2718 Interface changes:
2719 * bindings/v8/V8DOMWrapper.cpp:
2720 (WebCore::V8DOMWrapper::setNamedHiddenReference):
2721 (WebCore::V8DOMWrapper::setNamedHiddenWindowReference):
2722 * bindings/v8/V8DOMWrapper.h:
2723
2724 Added a helper to compute hidden reference names as V8 strings:
2725 * bindings/v8/V8HiddenPropertyName.cpp:
2726 (WebCore::V8HiddenPropertyName::hiddenReferenceName):
2727 * bindings/v8/V8HiddenPropertyName.h:
2728
2729 * bindings/v8/WrapperTypeInfo.h: Removed the hidden reference
2730 array internal field.
2731
2732 Update usages of hidden references:
2733 * bindings/v8/custom/V8CSSStyleSheetCustom.cpp:
2734 (WebCore::toV8):
2735 * bindings/v8/custom/V8DOMStringMapCustom.cpp:
2736 (WebCore::toV8):
2737 * bindings/v8/custom/V8DOMTokenListCustom.cpp:
2738 (WebCore::toV8):
2739 * bindings/v8/custom/V8LocationCustom.cpp:
2740 (WebCore::toV8):
2741 * bindings/v8/custom/V8MessageChannelConstructor.cpp:
2742 (WebCore::V8MessageChannel::constructorCallback):
2743 * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
2744 (WebCore::toV8):
2745 * bindings/v8/custom/V8StyleSheetCustom.cpp:
2746 (WebCore::toV8):
2747 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2748 (WebCore::toV8Object):
2749
2750 * bindings/scripts/test/V8/V8TestObj.cpp:
2751 (WebCore::TestObjInternal::readOnlyTestObjAttrAttrGetter): Updated.
2752
2753 2011-07-13 Joseph Pecoraro <joepeck@webkit.org>
2754
2755 Improve names of some ApplicationCacheStorage accessor methods
2756 https://bugs.webkit.org/show_bug.cgi?id=64433
2757
2758 Reviewed by Alexey Proskuryakov.
2759
2760 Some methods returned a bool for success/failure and
2761 actually returned a value as an out parameter so their
2762 name was confusing. Rename these methods to make them
2763 more clear.
2764
2765 (WebCore::ApplicationCache::diskUsageForOrigin):
2766 * loader/appcache/ApplicationCacheGroup.cpp:
2767 (WebCore::ApplicationCacheGroup::recalculateAvailableSpaceInQuota):
2768 * loader/appcache/ApplicationCacheStorage.cpp:
2769 (WebCore::ApplicationCacheStorage::calculateQuotaForOrigin):
2770 (WebCore::ApplicationCacheStorage::calculateUsageForOrigin):
2771 (WebCore::ApplicationCacheStorage::calculateRemainingSizeForOriginExclud ingCache):
2772 (WebCore::ApplicationCacheStorage::checkOriginQuota):
2773 * loader/appcache/ApplicationCacheStorage.h:
2774 * loader/appcache/ApplicationCache.cpp:
2775 Rename the methods.
2776
2777 * WebCore.exp.in:
2778 Replaced old versions. Also, calculateRemaining wasn't needed
2779 outside WebCore, so no longer export it.
2780
2781 2011-07-13 Joseph Pecoraro <joepeck@webkit.org>
2782
2783 Some ApplicationCache Origin Cleanup
2784 https://bugs.webkit.org/show_bug.cgi?id=64431
2785
2786 Reviewed by Alexey Proskuryakov.
2787
2788 - m_loadedSize is inaccurate. This just replaces it with
2789 calls to ApplicationCache::estimatedSizeInStorage.
2790
2791 - m_availableSpaceInQuota can get out of date, so we just
2792 recalculate it at the start of appcache downloads.
2793
2794 * loader/appcache/ApplicationCacheGroup.h:
2795 * loader/appcache/ApplicationCacheGroup.cpp:
2796 (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
2797 (WebCore::ApplicationCacheGroup::didReceiveData):
2798 Remove references to m_loadedSize.
2799
2800 (WebCore::ApplicationCacheGroup::didFinishLoading):
2801 Replace m_loadedSize with estimatedSizeInStorage after we
2802 add the new cached resource to the cache. The calculation
2803 already happened so this check is fast.
2804
2805 (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
2806 When we start the Downloading phase, recalculate the quota
2807 so that we have an up to date quota value so that we can
2808 break early if needed.
2809
2810 2011-07-12 Brent Fulgham <bfulgham@webkit.org>
2811
2812 Standardize WinCairo conditionalized code under PLATFORM macro.
2813 https://bugs.webkit.org/show_bug.cgi?id=64377
2814
2815 Reviewed by Maciej Stachowiak.
2816
2817 Update compile-time conditions that had previously used #ifdef
2818 of WIN_CAIRO to consistently use PLATFORM(WIN_CAIRO).
2819
2820 * WebCore.vcproj/WebCoreCairo.vsprops: Remove redundant declaration
2821 of WIN_CAIRO.
2822 * WebCore.vcproj/WebCoreDebugCairoCFLite.vsprops: Update to use
2823 the existing WinCairo.vsprops file.
2824 * WebCorePrefix.h: Update for new WTF_PLATFORM_WIN_CAIRO define.
2825 * config.h: Update to use PLATFORM(WIN_CAIRO).
2826
2827 2011-07-13 Alexandru Chiculita <achicu@adobe.com>
2828
2829 [CSS Exclusions] Fix for comment #23 on wrap-shape parsing bug 61726
2830 https://bugs.webkit.org/show_bug.cgi?id=64464
2831
2832 Reviewed by Tony Chang.
2833
2834 No new tests needed.
2835
2836 * css/CSSParser.cpp:
2837 (WebCore::CSSParser::parseWrapShapeRect): Removed the "valid" local.
2838 (WebCore::CSSParser::parseWrapShapeCircle): Removed the "valid" local.
2839 (WebCore::CSSParser::parseWrapShapeEllipse): Removed the "valid" local.
2840 * css/CSSPrimitiveValue.cpp:
2841 * css/CSSWrapShapes.h:
2842 (WebCore::CSSWrapShapePolygon::getXAt): Replaced bit shift with multipli cation.
2843 (WebCore::CSSWrapShapePolygon::getYAt): Replaced bit shift with multipli cation.
2844 * rendering/style/RenderStyle.cpp:
2845 * rendering/style/StyleRareNonInheritedData.h:
2846
2847 2011-07-13 Abhishek Arya <inferno@chromium.org>
2848
2849 Reviewed by Adam Barth.
2850
2851 Issue with Frame lifetime due to deletion in beforeload event.
2852 https://bugs.webkit.org/show_bug.cgi?id=64457
2853
2854 Copy the Frame protector higher in the stack from loadWithDocumentLoader
2855 to loadFrameRequest since any of loadPostRequest or loadURL can call
2856 loadWithDocumentLoader, thereby dispatching the beforeload event and
2857 blowing away the frame. This deleted frame will be later accessed in
2858 the loadFrameRequest function causing a crash.
2859
2860 Test: fast/events/form-iframe-target-before-load-crash2.html
2861
2862 * loader/FrameLoader.cpp:
2863 (WebCore::FrameLoader::loadFrameRequest):
2864 (WebCore::FrameLoader::loadWithDocumentLoader):
2865
2866 2011-07-13 Mihnea Ovidenie <mihnea@adobe.com>
2867
2868 [CSSRegions]content:-webkit-from-flow not applied correctly
2869 https://bugs.webkit.org/show_bug.cgi?id=64438
2870
2871 Reviewed by Tony Chang.
2872
2873 Forgot to modify getStringValue(), i was modifying only getStringValue(E xceptionCode&).
2874
2875 Test: fast/regions/content-webkit-from-flow-parsing.html (existing).
2876
2877 * css/CSSPrimitiveValue.cpp:
2878 (WebCore::CSSPrimitiveValue::getStringValue):
2879
2880 2011-07-12 Ryosuke Niwa <rniwa@webkit.org>
2881
2882 Don't reuse the last InsertTextCommand
2883 https://bugs.webkit.org/show_bug.cgi?id=64416
2884
2885 Reviewed by Justin Garcia.
2886
2887 This patch makes the interface of InsertTextCommand less foreign. It now takes arguments in
2888 its constructor and executes the command in doApply like other edit comm ands.
2889
2890 * editing/CompositeEditCommand.cpp:
2891 (WebCore::CompositeEditCommand::applyCommandToComposite): Added.
2892 * editing/CompositeEditCommand.h:
2893 * editing/InsertTextCommand.cpp:
2894 (WebCore::InsertTextCommand::InsertTextCommand): Takes arguments input u sed to take.
2895 (WebCore::InsertTextCommand::doApply): Renamed from input.
2896 * editing/InsertTextCommand.h:
2897 (WebCore::InsertTextCommand::create): Takes arguments input used to take .
2898 * editing/TypingCommand.cpp:
2899 (WebCore::TypingCommand::insertTextRunWithoutNewlines): Creates InsertTe xtCommand.
2900
2901 2011-07-12 Dmitry Lomov <dslomov@google.com>
2902
2903 https://bugs.webkit.org/show_bug.cgi?id=63041
2904 [Chromium][V8] Make DOMDataStore per-isolate
2905 This patch:
2906 - makes DOMData class an utility class with static members only
2907 - adds an isolate-specific DOMDataStore in V8BindingPerIsolateData.
2908 Dromaeo benchmarks are not affected.
2909
2910 Reviewed by Adam Barth.
2911
2912 * bindings/v8/DOMData.cpp:
2913 (WebCore::getDefaultStore):
2914 (WebCore::DOMData::getCurrentStore):
2915 * bindings/v8/DOMData.h:
2916 * bindings/v8/DOMDataStore.cpp:
2917 (WebCore::DOMDataStore::DOMDataStore):
2918 (WebCore::DOMDataStore::allStores):
2919 * bindings/v8/DOMDataStore.h:
2920 * bindings/v8/ScopedDOMDataStore.cpp:
2921 (WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
2922 * bindings/v8/ScopedDOMDataStore.h:
2923 * bindings/v8/StaticDOMDataStore.cpp:
2924 (WebCore::StaticDOMDataStore::StaticDOMDataStore):
2925 * bindings/v8/StaticDOMDataStore.h:
2926 * bindings/v8/V8Binding.h:
2927 (WebCore::V8BindingPerIsolateData::allStores):
2928 (WebCore::V8BindingPerIsolateData::getDOMDataStore):
2929 (WebCore::V8BindingPerIsolateData::setDOMDataStore):
2930 * bindings/v8/V8Binding.cpp:
2931 (WebCore::V8BindingPerIsolateData::V8BindingPerIsolateData):
2932 * bindings/v8/V8DOMMap.cpp:
2933 (WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
2934 (WebCore::getDOMDataStore):
2935 (WebCore::enableFasterDOMStoreAccess):
2936
2937 2011-07-12 Simon Fraser <simon.fraser@apple.com>
2938
2939 Rename compositing-related updateContentsScale() methods
2940 https://bugs.webkit.org/show_bug.cgi?id=64430
2941
2942 Reviewed by Joseph Pecoraro.
2943
2944 Rename updateContentsScale() to something less presumptuous; layers may choose
2945 to do something other than update their contents scale when the page sca le factor
2946 changes. pageScaleFactorChanged() is a better name.
2947
2948 * page/Frame.cpp:
2949 (WebCore::Frame::pageScaleFactorChanged):
2950 (WebCore::Frame::scalePage):
2951 * page/Frame.h:
2952 * rendering/RenderLayer.cpp:
2953 (WebCore::RenderLayer::pageScaleFactorChanged):
2954 * rendering/RenderLayer.h:
2955 * rendering/RenderLayerBacking.cpp:
2956 (WebCore::RenderLayerBacking::pageScaleFactorChanged):
2957 * rendering/RenderLayerBacking.h:
2958 * rendering/RenderLayerCompositor.cpp:
2959 (WebCore::RenderLayerCompositor::pageScaleFactorChanged):
2960 * rendering/RenderLayerCompositor.h:
2961
2962 2011-07-13 Pierre Rossi <pierre.rossi@gmail.com>
2963
2964 Fix compile for QRawFont.
2965
2966 https://bugs.webkit.org/show_bug.cgi?id=64453
2967
2968 Reviewed by Andreas Kling.
2969
2970 * platform/graphics/GraphicsContext.h:
2971 * platform/graphics/qt/FontQt.cpp:
2972 (WebCore::Font::drawGlyphs):
2973
2974 2011-07-13 John Knottenbelt <jknotten@chromium.org>
2975
2976 Reference Geolocation object from GeoNotifier and Geolocation::setIsAllo wed.
2977 https://bugs.webkit.org/show_bug.cgi?id=64363
2978
2979 Reviewed by Tony Gentilcore.
2980
2981 Test: fast/dom/Geolocation/remove-remote-context-in-error-callback-crash .html
2982
2983 * page/Geolocation.cpp:
2984 (WebCore::Geolocation::setIsAllowed):
2985 * page/Geolocation.h:
2986
2987 2011-07-13 Vsevolod Vlasov <vsevik@chromium.org>
2988
2989 Web Inspector: Network panel search needs each resource to have unique i dentifier.
2990 https://bugs.webkit.org/show_bug.cgi?id=64287
2991
2992 Reviewed by Pavel Feldman.
2993
2994 * inspector/front-end/NetworkManager.js:
2995 (WebInspector.NetworkManager.prototype.requestContent):
2996 (WebInspector.NetworkDispatcher):
2997 (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
2998 (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache) :
2999 (WebInspector.NetworkDispatcher.prototype._appendRedirect):
3000 * inspector/front-end/NetworkPanel.js:
3001 (WebInspector.NetworkPanel.prototype._appendResource):
3002 (WebInspector.NetworkPanel.prototype._frameNavigated):
3003 (WebInspector.NetworkPanel.prototype._updateSearchMatchedListAfterResour ceIdentifierChanged):
3004
3005 2011-07-13 Alexandru Chiculita <achicu@adobe.com>
3006
3007 Bridge RenderBoxModelObject::calculateBackgroundImageGeometry parameters into a class
3008 https://bugs.webkit.org/show_bug.cgi?id=63987
3009
3010 Reviewed by Hajime Morita.
3011
3012 Change doesn't add new functionality. No test needed.
3013
3014 * rendering/RenderBox.cpp:
3015 (WebCore::RenderBox::maskClipRect):
3016 (WebCore::RenderBox::repaintLayerRectsForImage):
3017 * rendering/RenderBoxModelObject.cpp:
3018 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3019 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setNoRepeatX):
3020 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setNoRepeatY):
3021 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::useFixedAttachm ent):
3022 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::clip):
3023 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::relativePhase):
3024 (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
3025 * rendering/RenderBoxModelObject.h:
3026 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::destOrigin):
3027 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setDestOrigin):
3028 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::destRect):
3029 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setDestRect):
3030 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::phase):
3031 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhase):
3032 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::tileSize):
3033 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setTileSize):
3034 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhaseX):
3035 (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhaseY):
3036
3037 2011-07-13 MORITA Hajime <morrita@google.com>
3038
3039 Refactoring: Ignored ExceptionCode value should be less annoying.
3040 https://bugs.webkit.org/show_bug.cgi?id=63688
3041
3042 - Introduced ExceptionCodePlaceholder class for the default parameter of ExceptionCode.
3043 - Introduced ASSERT_NO_EXCEPTION to check ExceptionCode not set to non-z ero after the call.
3044 - Adopted ASSERT_NO_EXCEPTION in Range.cpp
3045
3046 No new tests. No behaviour change.
3047
3048 Reviewed by Darin Adler.
3049
3050 * GNUmakefile.list.am:
3051 * WebCore.gypi:
3052 * WebCore.xcodeproj/project.pbxproj:
3053 * dom/ExceptionCodePlaceholder.h: Added.
3054 (WebCore::ExceptionCodePlaceholder::ExceptionCodePlaceholder):
3055 (WebCore::ExceptionCodePlaceholder::operator ExceptionCode& ):
3056 (WebCore::IgnorableExceptionCode::IgnorableExceptionCode):
3057 (WebCore::CheckedExceptionCode::CheckedExceptionCode):
3058 (WebCore::CheckedExceptionCode::~CheckedExceptionCode):
3059 * dom/Range.cpp:
3060 (WebCore::Range::Range):
3061 (WebCore::Range::editingStartPosition):
3062 * dom/Range.h:
3063
3064 2011-07-13 Nikolas Zimmermann <nzimmermann@rim.com>
3065
3066 Regression: OOB read in svg text run
3067 https://bugs.webkit.org/show_bug.cgi?id=63627
3068
3069 Not reviewed.
3070
3071 Fixed last minute typo leading to assertions.
3072
3073 * rendering/InlineTextBox.cpp:
3074 (WebCore::InlineTextBox::paintSelection):
3075
3076 2011-07-12 Andrey Kosyakov <caseq@chromium.org>
3077
3078 Web Inspector: factor NetworkLogView out of Network panel
3079 https://bugs.webkit.org/show_bug.cgi?id=64366
3080
3081 Reviewed by Pavel Feldman.
3082
3083 * inspector/front-end/NetworkPanel.js:
3084 (WebInspector.NetworkLogView):
3085 (WebInspector.NetworkLogView.prototype.get useLargeRows):
3086 (WebInspector.NetworkLogView.prototype.set allowPopover):
3087 (WebInspector.NetworkLogView.prototype.elementsToRestoreScrollPositionsF or):
3088 (WebInspector.NetworkLogView.prototype.resize):
3089 (WebInspector.NetworkLogView.prototype._createTable):
3090 (WebInspector.NetworkLogView.prototype.show):
3091 (WebInspector.NetworkLogView.prototype.hide):
3092 (WebInspector.NetworkLogView.prototype._reset):
3093 (WebInspector.NetworkLogView.prototype.switchToDetailedView):
3094 (WebInspector.NetworkLogView.prototype.switchToBriefView):
3095 (WebInspector.NetworkLogView.prototype.get _setLargerResources):
3096 (WebInspector.NetworkLogView.prototype._getPopoverAnchor):
3097 (WebInspector.NetworkPanel):
3098 (WebInspector.NetworkPanel.prototype.get toolbarItemLabel):
3099 (WebInspector.NetworkPanel.prototype.get statusBarItems):
3100 (WebInspector.NetworkPanel.prototype.elementsToRestoreScrollPositionsFor ):
3101 (WebInspector.NetworkPanel.prototype.resize):
3102 (WebInspector.NetworkPanel.prototype._reset):
3103 (WebInspector.NetworkPanel.prototype.updateSidebarWidth):
3104 (WebInspector.NetworkPanel.prototype.updateMainViewWidth):
3105 (WebInspector.NetworkPanel.prototype.handleShortcut):
3106 (WebInspector.NetworkPanel.prototype.show):
3107 (WebInspector.NetworkPanel.prototype.hide):
3108 (WebInspector.NetworkPanel.prototype.get resources):
3109 (WebInspector.NetworkPanel.prototype.resourceById):
3110 (WebInspector.NetworkPanel.prototype.canShowAnchorLocation):
3111 (WebInspector.NetworkPanel.prototype.showAnchorLocation):
3112 (WebInspector.NetworkPanel.prototype._onViewCleared):
3113 (WebInspector.NetworkPanel.prototype._onRowSizeChanged):
3114 (WebInspector.NetworkPanel.prototype._onResourceSelected):
3115 (WebInspector.NetworkPanel.prototype._showResource):
3116 (WebInspector.NetworkPanel.prototype._closeVisibleResource):
3117 (WebInspector.NetworkPanel.prototype._toggleGridMode):
3118 (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
3119 (WebInspector.NetworkPanel.prototype.performSearch):
3120 (WebInspector.NetworkPanel.prototype.jumpToPreviousSearchResult):
3121 (WebInspector.NetworkPanel.prototype.jumpToNextSearchResult):
3122 (WebInspector.NetworkPanel.prototype.searchCanceled):
3123 (WebInspector.NetworkDataGridNode):
3124 (WebInspector.NetworkDataGridNode.prototype.isFilteredOut):
3125 (WebInspector.NetworkDataGridNode.prototype.select):
3126 (WebInspector.NetworkDataGridNode.prototype.get selectable):
3127
3128 2011-07-13 Sheriff Bot <webkit.review.bot@gmail.com>
3129
3130 Unreviewed, rolling out r90634.
3131 http://trac.webkit.org/changeset/90634
3132 https://bugs.webkit.org/show_bug.cgi?id=64448
3133
3134 Qt HTTP Pipelining is not robust enough to be used in that
3135 generic way. (Requested by benjaminp on #webkit).
3136
3137 * platform/network/qt/ResourceRequestQt.cpp:
3138 (WebCore::ResourceRequest::toNetworkRequest):
3139
3140 2011-07-13 Nikolas Zimmermann <nzimmermann@rim.com>
3141
3142 Regression: OOB read in svg text run
3143 https://bugs.webkit.org/show_bug.cgi?id=63627
3144
3145 Reviewed by Zoltan Herczeg.
3146
3147 A TextRun is constructed for a portion of a string [a,b] whose original length is c (0 < a < b < c).
3148 The TextRun charactersLength variable stores the length of the remaining text from (b..c) in order
3149 to support ligatures in SVG Fonts. Example: <text>ffl</text>. When measu ring the advance from char 0
3150 to char 1 the whole 'ffl' text must be passed to the SVG glyph selection code, as the SVG Font may
3151 define a single glyph for the characters 'ffl' thus leading to a single character long text
3152 pointing to the ffl ligature, not three individual 'f' / 'f' / 'l' chara cters anymore.
3153
3154 constructTextRun(..const UChar*, int length, ..) did not correctly calcu late the maximum length (b..c).
3155 The passed in UChar buffer starts at eg. textRenderer->characters() + st art(), and following condition
3156 holds true for 'length': start() + length <= textRenderer->textLength() (which denotes the maximum length
3157 of the textRenderer->characters() buffer). We have to keep track of the start() offset, so that we
3158 can calculate the charactersLength for the TextRun correctly: textRender er->textLength() - start().
3159
3160 There are also other cases like RenderCombinedText and/or the presence o f hyphens that were incorrectly
3161 tracked. Only InlineTextBox had to be fixed, the other callsites in eg. RenderBlockLineLayout already
3162 computed the maximum length correctly - I assured this by valgrind runs on all SVG Font tests.
3163
3164 * rendering/InlineTextBox.cpp:
3165 (WebCore::InlineTextBox::paint):
3166 (WebCore::InlineTextBox::paintSelection):
3167 (WebCore::InlineTextBox::constructTextRun): Add maximumLength parameter to constructTextRun.
3168 * rendering/InlineTextBox.h: Ditto.
3169
3170 2011-07-12 Antti Koivisto <antti@apple.com>
3171
3172 didFirstVisuallyNonEmptyLayout dispatched too early
3173 https://bugs.webkit.org/show_bug.cgi?id=64412
3174
3175 Reviewed by Darin Adler and Sam Weinig.
3176
3177 Improve the mechanism that dispatches didFirstVisuallyNonEmptyLayout
3178
3179 - Wait until a threshold of characters and pixels has been exceeded befo re dispatching.
3180 - Wait until stylesheets are loaded (painting is disabled in this case).
3181
3182 * page/FrameView.cpp:
3183 (WebCore::FrameView::reset):
3184 (WebCore::FrameView::performPostLayoutTasks):
3185 * page/FrameView.h:
3186 (WebCore::FrameView::incrementVisuallyNonEmptyCharacterCount):
3187 (WebCore::FrameView::incrementVisuallyNonEmptyPixelCount):
3188 * rendering/RenderImage.cpp:
3189 (WebCore::RenderImage::RenderImage):
3190 (WebCore::RenderImage::imageChanged):
3191 * rendering/RenderImage.h:
3192 * rendering/RenderText.cpp:
3193 (WebCore::RenderText::RenderText):
3194
3195 2011-07-12 MORITA Hajime <morrita@google.com>
3196
3197 [Refactoring][ShadowContentElement] Forwarded node list should be a link ed-list.
3198 https://bugs.webkit.org/show_bug.cgi?id=64252
3199
3200 Reviewed by Dimitri Glazkov.
3201
3202 Introduced ShadowInclusionList and ShadowInclusion for maintaining
3203 forwarded content children. ShadowInclusion is doubly-linked list.
3204 ShadowContentElement::m_inclusions is replaced by ShadowInclusionList.
3205
3206 This change is a prepration for bug 64251, which will introduce
3207 forwarded-children to content-element table.
3208
3209 No new tests. No behavioral change.
3210
3211 * dom/NodeRenderingContext.cpp:
3212 (WebCore::nextRendererOf):
3213 (WebCore::previousRendererOf):
3214 (WebCore::firstRendererOf):
3215 (WebCore::lastRendererOf):
3216 * dom/ShadowContentElement.cpp:
3217 (WebCore::ShadowInclusion::append):
3218 (WebCore::ShadowInclusion::unlink):
3219 (WebCore::ShadowInclusionList::ShadowInclusionList):
3220 (WebCore::ShadowInclusionList::~ShadowInclusionList):
3221 (WebCore::ShadowInclusionList::find):
3222 (WebCore::ShadowInclusionList::clear):
3223 (WebCore::ShadowInclusionList::append):
3224 (WebCore::ShadowContentElement::attach):
3225 * dom/ShadowContentElement.h:
3226 (WebCore::ShadowInclusion::includer):
3227 (WebCore::ShadowInclusion::content):
3228 (WebCore::ShadowInclusion::next):
3229 (WebCore::ShadowInclusion::previous):
3230 (WebCore::ShadowInclusion::ShadowInclusion):
3231 (WebCore::ShadowInclusion::create):
3232 (WebCore::ShadowInclusionList::first):
3233 (WebCore::ShadowInclusionList::last):
3234 (WebCore::ShadowInclusionList::isEmpty):
3235 (WebCore::ShadowInclusionList::append):
3236 (WebCore::ShadowContentElement::inclusions):
3237 * dom/ShadowContentSelector.cpp:
3238 (WebCore::ShadowContentSelector::selectInclusion):
3239 * dom/ShadowContentSelector.h:
3240
3241 2011-07-12 David Reveman <reveman@chromium.org>
3242
3243 [Chromium] Use nearest filter method with pixel aligned transforms.
3244 https://bugs.webkit.org/show_bug.cgi?id=64338
3245
3246 Reviewed by James Robinson.
3247
3248 Check for integer translation and use nearest texture filter when
3249 possible to avoid filter precisions problems at the layer edges.
3250
3251 Test: compositing/iframes/nested-iframe-scrolling.html (existing)
3252
3253 * platform/graphics/chromium/LayerTilerChromium.cpp:
3254 (WebCore::LayerTilerChromium::drawTiles):
3255 * platform/graphics/transforms/TransformationMatrix.cpp:
3256 (WebCore::TransformationMatrix::isIntegerTranslation):
3257 * platform/graphics/transforms/TransformationMatrix.h:
3258
3259 2011-07-12 David Reveman <reveman@chromium.org>
3260
3261 Removed unnecessary function parameters from TilingData::textureOffset.
3262 https://bugs.webkit.org/show_bug.cgi?id=64245
3263
3264 Reviewed by Brent Fulgham.
3265
3266 No new tests, no functionality changes.
3267
3268 * platform/graphics/chromium/LayerTilerChromium.cpp:
3269 (WebCore::LayerTilerChromium::drawTiles):
3270 * platform/graphics/gpu/TilingData.cpp:
3271 (WebCore::TilingData::textureOffset):
3272 * platform/graphics/gpu/TilingData.h:
3273
3274 2011-07-12 Ryosuke Niwa <rniwa@webkit.org>
3275
3276 Move RenderTextControl::indexForVisiblePosition to HTMLTextFormControlEl ement
3277 https://bugs.webkit.org/show_bug.cgi?id=64403
3278
3279 Reviewed by Hajime Morita.
3280
3281 Moved indexForVisiblePosition from RenderTextControl to HTMLTextFormCont rolElement.
3282
3283 Also replaced the call to RenderTextControl::isSelectableElement by a ca ll to enclosingTextFormControl
3284 (moved from htmlediting to HTMLTextFormControlElement) because we are on ly interested in checking
3285 whether the given position is inside the current text form control or no t.
3286
3287 In addition, modernized the code in indexForVisiblePosition by calling p arentAnchoredEquivalent on the
3288 given position and replacing calls to deprecateNode and deprecatedEditin gOffset by calls to containerNode
3289 and offsetInContainer.
3290
3291 * accessibility/AccessibilityRenderObject.cpp:
3292 (WebCore::AccessibilityRenderObject::indexForVisiblePosition): Calls ind exForVisiblePosition.
3293 * editing/htmlediting.cpp: Removed enclosingTextFromControl.
3294 * editing/htmlediting.h: Removed enclosingTextFromControl.
3295 * html/HTMLTextFormControlElement.cpp:
3296 (WebCore::HTMLTextFormControlElement::indexForVisiblePosition): Moved fr om RenderTextControl.
3297 (WebCore::HTMLTextFormControlElement::computeSelectionStart): Calls inde xForVisiblePosition.
3298 (WebCore::HTMLTextFormControlElement::computeSelectionEnd): Calls indexF orVisiblePosition.
3299 (WebCore::enclosingTextFormControl): Moved from htmlediting.cpp
3300 * html/HTMLTextFormControlElement.h:
3301 * rendering/RenderTextControl.cpp:
3302 * rendering/RenderTextControl.h:
3303
3304 2011-07-12 Julien Chaffraix <jchaffraix@webkit.org>
3305
3306 Make RenderObject::containingBlock virtual for better speed and clarity
3307 https://bugs.webkit.org/show_bug.cgi?id=64318
3308
3309 Reviewed by Darin Adler.
3310
3311 No new tests, performance refactoring.
3312
3313 On some of my test cases, this method takes between 3 and 5% of the time spend.
3314 The method makes 2 calls to virtual methods which could be moved to thei r overriden
3315 version of containingBlock if we made it virtual.
3316
3317 That's what this patch does. It saves between 1 and 2% on some synthetic test cases
3318 as well as made the current method shorter.
3319
3320 * rendering/RenderObject.cpp:
3321 (WebCore::RenderObject::containingBlock): Removed code for RenderView an d RenderTableCell,
3322 replaced by ASSERTs.
3323
3324 * rendering/RenderObject.h: Made containingBlock virtual.
3325
3326 * rendering/RenderTableCell.h:
3327 (WebCore::RenderTableCell::containingBlock):
3328 * rendering/RenderView.h:
3329 (WebCore::RenderView::containingBlock):
3330 The code moved from RenderObject is inlined in those 2 methods.
3331
3332 2011-07-12 James Robinson <jamesr@chromium.org>
3333
3334 [chromium] Chromium win build fix.
3335
3336 * platform/graphics/chromium/FontChromiumWin.cpp:
3337 (WebCore::drawGlyphsWin):
3338
3339 2011-07-12 Pratik Solanki <psolanki@apple.com>
3340
3341 Get webkit to compile with USE(CFNETWORK) enabled on Mac
3342 https://bugs.webkit.org/show_bug.cgi?id=63674
3343
3344 Reviewed by David Kilzer.
3345
3346 Changes to ResourceHandle class to get it to compile with USE(CFNETWORK) .
3347
3348 No new tests because no change in functionality and option is not enable d on Mac.
3349
3350 * platform/network/ResourceHandle.h:
3351 * platform/network/ResourceHandleInternal.h:
3352 * platform/network/cf/ResourceHandleCFNet.cpp:
3353 (WebCore::didReceiveResponse):
3354 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
3355 (WebCore::ResourceHandle::start):
3356 (WebCore::WebCoreSynchronousLoaderClient::willSendRequest): Call adjustM IMETypeIfNecessary
3357 on Mac. Also port over fix for <rdar://problem/6901522> added in r43993 which forces the
3358 MIME type to text/html if the request is annotated with a "ForceHTMLMIME Type" property.
3359
3360 2011-07-12 James Robinson <jamesr@chromium.org>
3361
3362 [chromium] Delete the unused legacy accelerated canvas 2d code
3363 https://bugs.webkit.org/show_bug.cgi?id=64214
3364
3365 Reviewed by Stephen White.
3366
3367 This removes the legacy accelerated canvas 2d path and support logic sin ce we (chromium) are no longer using
3368 this codepath and it seems clear that no other port is interested.
3369
3370 Refactoring and removing unused code, so no new tests.
3371
3372 * WebCore.gypi:
3373 * WebCore.xcodeproj/project.pbxproj:
3374 * html/canvas/CanvasRenderingContext2D.cpp:
3375 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
3376 (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation):
3377 (WebCore::CanvasRenderingContext2D::didDraw):
3378 * html/canvas/CanvasRenderingContext2D.h:
3379 * loader/EmptyClients.h:
3380 * page/ChromeClient.h:
3381 * page/Page.cpp:
3382 (WebCore::Page::sharedGraphicsContext3D):
3383 * page/Page.h:
3384 * platform/graphics/GraphicsContext.cpp:
3385 (WebCore::GraphicsContext::setSharedGraphicsContext3D):
3386 (WebCore::GraphicsContext::syncSoftwareCanvas):
3387 * platform/graphics/GraphicsContext.h:
3388 * platform/graphics/GraphicsContext3D.h:
3389 * platform/graphics/chromium/DrawingBufferChromium.cpp:
3390 (WebCore::DrawingBuffer::setGrContext):
3391 * platform/graphics/chromium/FontLinux.cpp:
3392 (WebCore::Font::drawGlyphs):
3393 * platform/graphics/chromium/cc/CCLayerSorter.cpp:
3394 (WebCore::pointInTriangle):
3395 * platform/graphics/gpu/BicubicShader.cpp: Removed.
3396 * platform/graphics/gpu/BicubicShader.h: Removed.
3397 * platform/graphics/gpu/ConvolutionShader.cpp: Removed.
3398 * platform/graphics/gpu/ConvolutionShader.h: Removed.
3399 * platform/graphics/gpu/GraphicsContextGPU.cpp: Removed.
3400 * platform/graphics/gpu/GraphicsContextGPU.h: Removed.
3401 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: Removed.
3402 * platform/graphics/gpu/SharedGraphicsContext3D.h: Removed.
3403 * platform/graphics/gpu/SolidFillShader.cpp: Removed.
3404 * platform/graphics/gpu/SolidFillShader.h: Removed.
3405 * platform/graphics/gpu/TexShader.cpp: Removed.
3406 * platform/graphics/gpu/TexShader.h: Removed.
3407 * platform/graphics/skia/GraphicsContextSkia.cpp:
3408 (WebCore::GraphicsContext::savePlatformState):
3409 (WebCore::GraphicsContext::restorePlatformState):
3410 (WebCore::GraphicsContext::addInnerRoundedRectClip):
3411 (WebCore::GraphicsContext::clearRect):
3412 (WebCore::GraphicsContext::clip):
3413 (WebCore::GraphicsContext::canvasClip):
3414 (WebCore::GraphicsContext::clipOut):
3415 (WebCore::GraphicsContext::clipPath):
3416 (WebCore::GraphicsContext::concatCTM):
3417 (WebCore::GraphicsContext::setCTM):
3418 (WebCore::GraphicsContext::drawConvexPolygon):
3419 (WebCore::GraphicsContext::drawEllipse):
3420 (WebCore::GraphicsContext::drawFocusRing):
3421 (WebCore::GraphicsContext::drawLine):
3422 (WebCore::GraphicsContext::drawLineForTextChecking):
3423 (WebCore::GraphicsContext::drawLineForText):
3424 (WebCore::GraphicsContext::drawRect):
3425 (WebCore::GraphicsContext::fillPath):
3426 (WebCore::GraphicsContext::fillRect):
3427 (WebCore::GraphicsContext::fillRoundedRect):
3428 (WebCore::GraphicsContext::scale):
3429 (WebCore::GraphicsContext::setAlpha):
3430 (WebCore::GraphicsContext::setPlatformCompositeOperation):
3431 (WebCore::GraphicsContext::setPlatformFillColor):
3432 (WebCore::GraphicsContext::setPlatformShadow):
3433 (WebCore::GraphicsContext::strokeArc):
3434 (WebCore::GraphicsContext::strokePath):
3435 (WebCore::GraphicsContext::strokeRect):
3436 (WebCore::GraphicsContext::rotate):
3437 (WebCore::GraphicsContext::translate):
3438 (WebCore::GraphicsContext::setSharedGraphicsContext3D):
3439 (WebCore::GraphicsContext::syncSoftwareCanvas):
3440 * platform/graphics/skia/ImageBufferSkia.cpp:
3441 (WebCore::ImageBuffer::copyImage):
3442 (WebCore::ImageBuffer::draw):
3443 (WebCore::ImageBuffer::getUnmultipliedImageData):
3444 (WebCore::ImageBuffer::getPremultipliedImageData):
3445 (WebCore::ImageBuffer::putUnmultipliedImageData):
3446 (WebCore::ImageBuffer::putPremultipliedImageData):
3447 * platform/graphics/skia/ImageSkia.cpp:
3448 (WebCore::BitmapImage::draw):
3449 (WebCore::BitmapImageSingleFrameSkia::draw):
3450 * platform/graphics/skia/NativeImageSkia.cpp:
3451 (WebCore::NativeImageSkia::~NativeImageSkia):
3452 * platform/graphics/skia/PlatformContextSkia.cpp:
3453 (WebCore::PlatformContextSkia::PlatformContextSkia):
3454 (WebCore::PlatformContextSkia::~PlatformContextSkia):
3455 (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
3456 (WebCore::PlatformContextSkia::makeGrContextCurrent):
3457 * platform/graphics/skia/PlatformContextSkia.h:
3458
3459 2011-07-12 Emil A Eklund <eae@chromium.org>
3460
3461 Switch InlineFlowBox to to new layout types
3462 https://bugs.webkit.org/show_bug.cgi?id=64399
3463
3464 Reviewed by Eric Seidel.
3465
3466 First step in moving floats over to the new layout abstraction.
3467
3468 No new tests, no new functionality.
3469
3470 * rendering/InlineBox.cpp:
3471 (WebCore::InlineBox::logicalHeight):
3472 * rendering/InlineBox.h:
3473 (WebCore::InlineBox::logicalTop):
3474 (WebCore::InlineBox::logicalBottom):
3475 (WebCore::InlineBox::setLogicalTop):
3476 * rendering/InlineFlowBox.cpp:
3477 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
3478 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3479 (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
3480 (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
3481 (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
3482 (WebCore::InlineFlowBox::addReplacedChildOverflow):
3483 (WebCore::InlineFlowBox::constrainToLineTopAndBottomIfNeeded):
3484 (WebCore::InlineFlowBox::computeOverAnnotationAdjustment):
3485 (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment):
3486 * rendering/InlineFlowBox.h:
3487 * rendering/RenderBlock.cpp:
3488 (WebCore::RenderBlock::logicalRightSelectionGap):
3489 * rendering/RenderBlock.h:
3490 * rendering/RootInlineBox.cpp:
3491 (WebCore::RootInlineBox::alignBoxesInBlockDirection):
3492 (WebCore::RootInlineBox::lineSelectionGap):
3493 (WebCore::RootInlineBox::ascentAndDescentForBox):
3494 (WebCore::RootInlineBox::verticalPositionForBox):
3495 * rendering/RootInlineBox.h:
3496 * rendering/style/RenderStyle.cpp:
3497 (WebCore::RenderStyle::getShadowExtent):
3498 (WebCore::RenderStyle::getShadowHorizontalExtent):
3499 (WebCore::RenderStyle::getShadowVerticalExtent):
3500 * rendering/style/RenderStyle.h:
3501 (WebCore::InheritedFlags::getTextShadowExtent):
3502 (WebCore::InheritedFlags::getTextShadowHorizontalExtent):
3503 (WebCore::InheritedFlags::getTextShadowVerticalExtent):
3504 (WebCore::InheritedFlags::getTextShadowInlineDirectionExtent):
3505 (WebCore::InheritedFlags::getTextShadowBlockDirectionExtent):
3506 (WebCore::InheritedFlags::getBoxShadowExtent):
3507 (WebCore::InheritedFlags::getBoxShadowHorizontalExtent):
3508 (WebCore::InheritedFlags::getBoxShadowVerticalExtent):
3509 (WebCore::InheritedFlags::getBoxShadowInlineDirectionExtent):
3510 (WebCore::InheritedFlags::getBoxShadowBlockDirectionExtent):
3511 (WebCore::InheritedFlags::getShadowInlineDirectionExtent):
3512 (WebCore::InheritedFlags::getShadowBlockDirectionExtent):
3513 * rendering/style/ShadowData.cpp:
3514 (WebCore::calculateShadowExtent):
3515 (WebCore::ShadowData::adjustRectForShadow):
3516 * rendering/style/ShadowData.h:
3517 (WebCore::ShadowData::ShadowData):
3518 (WebCore::ShadowData::x):
3519 (WebCore::ShadowData::y):
3520
3521 2011-07-12 Kenichi Ishibashi <bashi@chromium.org>
3522
3523 [Chromium] SVG text is not rendered sometimes with geometricPrecision
3524 https://bugs.webkit.org/show_bug.cgi?id=64341
3525
3526 Changing the type of x and y offsets of ComplexTextControllerLinux to ma ke it possible to treat negative offsets.
3527
3528 Reviewed by Tony Chang.
3529
3530 Test: platform/chromium-linux/svg/text/text-with-geometric-precision.svg
3531
3532 * platform/graphics/chromium/ComplexTextControllerLinux.cpp: Changed the type of m_offsetX and m_startingY from unsigned to int.
3533 (WebCore::ComplexTextController::ComplexTextController): Changed the typ e of the argument.
3534 (WebCore::ComplexTextController::reset): Ditto.
3535 * platform/graphics/chromium/ComplexTextControllerLinux.h:
3536
3537 2011-07-12 Alexandru Chiculita <achicu@adobe.com>
3538
3539 Reviewed by David Hyatt.
3540
3541 [CSS Exclusions] Parse wrap-shape property
3542 https://bugs.webkit.org/show_bug.cgi?id=61726
3543
3544 Parsing wrap-shape: rect, circle, ellipse and polygon.
3545 Moved WindRule from Path.h to it's own file.
3546
3547 Test: fast/exclusions/parsing-wrap-shape.html
3548
3549 * WebCore.vcproj/WebCore.vcproj:
3550 * WebCore.xcodeproj/project.pbxproj:
3551 * css/CSSComputedStyleDeclaration.cpp:
3552 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3553 * css/CSSParser.cpp:
3554 (WebCore::CSSParser::parseValue):
3555 (WebCore::CSSParser::parseWrapShapeRect):
3556 (WebCore::CSSParser::parseWrapShapeCircle):
3557 (WebCore::CSSParser::parseWrapShapeEllipse):
3558 (WebCore::CSSParser::parseWrapShapePolygon):
3559 (WebCore::CSSParser::parseWrapShape):
3560 * css/CSSParser.h:
3561 * css/CSSPrimitiveValue.cpp:
3562 (WebCore::CSSPrimitiveValue::init):
3563 (WebCore::CSSPrimitiveValue::cleanup):
3564 (WebCore::CSSPrimitiveValue::cssText):
3565 * css/CSSPrimitiveValue.h:
3566 (WebCore::CSSPrimitiveValue::getShapeValue):
3567 * css/CSSPropertyNames.in:
3568 * css/CSSStyleSelector.cpp:
3569 (WebCore::CSSStyleSelector::applyProperty):
3570 * css/CSSValueKeywords.in:
3571 * css/CSSWrapShapes.cpp: Added.
3572 (WebCore::CSSWrapShapeRect::cssText):
3573 (WebCore::CSSWrapShapeCircle::cssText):
3574 (WebCore::CSSWrapShapeEllipse::cssText):
3575 (WebCore::CSSWrapShapePolygon::cssText):
3576 * css/CSSWrapShapes.h: Added.
3577 (WebCore::CSSWrapShape::~CSSWrapShape):
3578 (WebCore::CSSWrapShape::CSSWrapShape):
3579 (WebCore::CSSWrapShapeRect::create):
3580 (WebCore::CSSWrapShapeRect::left):
3581 (WebCore::CSSWrapShapeRect::top):
3582 (WebCore::CSSWrapShapeRect::width):
3583 (WebCore::CSSWrapShapeRect::height):
3584 (WebCore::CSSWrapShapeRect::radiusX):
3585 (WebCore::CSSWrapShapeRect::radiusY):
3586 (WebCore::CSSWrapShapeRect::setLeft):
3587 (WebCore::CSSWrapShapeRect::setTop):
3588 (WebCore::CSSWrapShapeRect::setWidth):
3589 (WebCore::CSSWrapShapeRect::setHeight):
3590 (WebCore::CSSWrapShapeRect::setRadiusX):
3591 (WebCore::CSSWrapShapeRect::setRadiusY):
3592 (WebCore::CSSWrapShapeRect::type):
3593 (WebCore::CSSWrapShapeRect::CSSWrapShapeRect):
3594 (WebCore::CSSWrapShapeCircle::create):
3595 (WebCore::CSSWrapShapeCircle::left):
3596 (WebCore::CSSWrapShapeCircle::top):
3597 (WebCore::CSSWrapShapeCircle::radius):
3598 (WebCore::CSSWrapShapeCircle::setLeft):
3599 (WebCore::CSSWrapShapeCircle::setTop):
3600 (WebCore::CSSWrapShapeCircle::setRadius):
3601 (WebCore::CSSWrapShapeCircle::type):
3602 (WebCore::CSSWrapShapeCircle::CSSWrapShapeCircle):
3603 (WebCore::CSSWrapShapeEllipse::create):
3604 (WebCore::CSSWrapShapeEllipse::left):
3605 (WebCore::CSSWrapShapeEllipse::top):
3606 (WebCore::CSSWrapShapeEllipse::radiusX):
3607 (WebCore::CSSWrapShapeEllipse::radiusY):
3608 (WebCore::CSSWrapShapeEllipse::setLeft):
3609 (WebCore::CSSWrapShapeEllipse::setTop):
3610 (WebCore::CSSWrapShapeEllipse::setRadiusX):
3611 (WebCore::CSSWrapShapeEllipse::setRadiusY):
3612 (WebCore::CSSWrapShapeEllipse::type):
3613 (WebCore::CSSWrapShapeEllipse::CSSWrapShapeEllipse):
3614 (WebCore::CSSWrapShapePolygon::create):
3615 (WebCore::CSSWrapShapePolygon::appendPoint):
3616 (WebCore::CSSWrapShapePolygon::getXAt):
3617 (WebCore::CSSWrapShapePolygon::getYAt):
3618 (WebCore::CSSWrapShapePolygon::setWindRule):
3619 (WebCore::CSSWrapShapePolygon::windRule):
3620 (WebCore::CSSWrapShapePolygon::type):
3621 (WebCore::CSSWrapShapePolygon::CSSWrapShapePolygon):
3622 * css/SVGCSSValueKeywords.in:
3623 * platform/graphics/Path.h:
3624 * platform/graphics/WindRule.h: Added.
3625 * rendering/style/RenderStyle.cpp:
3626 (WebCore::RenderStyle::diff):
3627 * rendering/style/RenderStyle.h:
3628 (WebCore::InheritedFlags::setWrapShape):
3629 (WebCore::InheritedFlags::wrapShape):
3630 (WebCore::InheritedFlags::initialWrapShape):
3631 * rendering/style/StyleRareNonInheritedData.cpp:
3632 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3633 (WebCore::StyleRareNonInheritedData::operator==):
3634 * rendering/style/StyleRareNonInheritedData.h:
3635
3636 2011-07-12 Simon Fraser <simon.fraser@apple.com>
3637
3638 Clean up some RenderLayerCompositor code relating to scroll and root lay ers
3639 https://bugs.webkit.org/show_bug.cgi?id=64400
3640
3641 Reviewed by James Robinson.
3642
3643 There was no need for FrameView::syncCompositingStateForThisFrame()
3644 to call syncCompositingStateForThisLayerOnly() on the various
3645 scrollbar-related layers, because the subsequent call to
3646 compositor()->flushPendingLayerChanges() starts to flush at
3647 m_overflowControlsHostLayer if one exists, and it's an ancestor
3648 of the scrollbar layers.
3649
3650 Also clean up terminology in RenderLayerCompositor.
3651 m_rootPlatformLayer -> m_rootContentLayer
3652 rootPlatformLayer() -> rootGraphicsLayer()
3653
3654 No behavior change, so no new tests.
3655
3656 * page/FrameView.cpp:
3657 (WebCore::FrameView::syncCompositingStateForThisFrame):
3658 * rendering/RenderLayerCompositor.cpp:
3659 (WebCore::RenderLayerCompositor::enableCompositingMode):
3660 (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
3661 (WebCore::RenderLayerCompositor::updateCompositingLayers):
3662 (WebCore::RenderLayerCompositor::layerTreeAsText):
3663 (WebCore::RenderLayerCompositor::parentFrameContentLayers):
3664 (WebCore::RenderLayerCompositor::rootGraphicsLayer):
3665 (WebCore::RenderLayerCompositor::didMoveOnscreen):
3666 (WebCore::RenderLayerCompositor::willMoveOffscreen):
3667 (WebCore::RenderLayerCompositor::updateRootLayerPosition):
3668 (WebCore::RenderLayerCompositor::ensureRootLayer):
3669 (WebCore::RenderLayerCompositor::destroyRootLayer):
3670 (WebCore::RenderLayerCompositor::attachRootLayer):
3671 (WebCore::RenderLayerCompositor::detachRootLayer):
3672 (WebCore::RenderLayerCompositor::updateRootLayerAttachment):
3673 * rendering/RenderLayerCompositor.h:
3674
3675 2011-07-12 Sheriff Bot <webkit.review.bot@gmail.com>
3676
3677 Unreviewed, rolling out r90842.
3678 http://trac.webkit.org/changeset/90842
3679 https://bugs.webkit.org/show_bug.cgi?id=64401
3680
3681 Causes crash in debug on compositing/overflow/content-gains-
3682 scrollbars.html (Requested by jamesr on #webkit).
3683
3684 * WebCore.gypi:
3685 * platform/graphics/chromium/ContentLayerChromium.cpp:
3686 (WebCore::ContentLayerChromium::ContentLayerChromium):
3687 (WebCore::ContentLayerChromium::paintContentsIfDirty):
3688 (WebCore::ContentLayerChromium::cleanupResources):
3689 (WebCore::ContentLayerChromium::setLayerRenderer):
3690 (WebCore::ContentLayerChromium::tilingTransform):
3691 (WebCore::ContentLayerChromium::contentBounds):
3692 (WebCore::ContentLayerChromium::updateLayerSize):
3693 (WebCore::ContentLayerChromium::draw):
3694 (WebCore::ContentLayerChromium::drawsContent):
3695 (WebCore::ContentLayerChromium::createTilerIfNeeded):
3696 (WebCore::ContentLayerChromium::updateCompositorResources):
3697 (WebCore::ContentLayerChromium::setTilingOption):
3698 (WebCore::ContentLayerChromium::bindContentsTexture):
3699 (WebCore::ContentLayerChromium::setIsMask):
3700 (WebCore::writeIndent):
3701 (WebCore::ContentLayerChromium::dumpLayerProperties):
3702 * platform/graphics/chromium/ContentLayerChromium.h:
3703 * platform/graphics/chromium/ImageLayerChromium.cpp:
3704 (WebCore::ImageLayerChromium::ImageLayerChromium):
3705 (WebCore::ImageLayerChromium::paintContentsIfDirty):
3706 (WebCore::ImageLayerChromium::updateCompositorResources):
3707 (WebCore::ImageLayerChromium::contentBounds):
3708 * platform/graphics/chromium/ImageLayerChromium.h:
3709 (WebCore::ImageLayerChromium::drawsContent):
3710 * platform/graphics/chromium/LayerChromium.cpp:
3711 (WebCore::LayerChromium::pushPropertiesTo):
3712 (WebCore::LayerChromium::ccLayerImpl):
3713 * platform/graphics/chromium/LayerChromium.h:
3714 (WebCore::LayerChromium::draw):
3715 * platform/graphics/chromium/LayerRendererChromium.cpp:
3716 (WebCore::LayerRendererChromium::drawRootLayer):
3717 * platform/graphics/chromium/LayerTilerChromium.cpp:
3718 (WebCore::LayerTilerChromium::updateRect):
3719 (WebCore::LayerTilerChromium::draw):
3720 (WebCore::LayerTilerChromium::drawTiles):
3721 * platform/graphics/chromium/LayerTilerChromium.h:
3722 * platform/graphics/chromium/TiledLayerChromium.cpp: Removed.
3723 * platform/graphics/chromium/TiledLayerChromium.h: Removed.
3724 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
3725 (WebCore::CCLayerImpl::drawsContent):
3726 (WebCore::CCLayerImpl::draw):
3727 * platform/graphics/chromium/cc/CCLayerImpl.h:
3728 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: Removed.
3729 * platform/graphics/chromium/cc/CCTiledLayerImpl.h: Removed.
3730
3731 2011-07-12 Joseph Pecoraro <joepeck@webkit.org>
3732
3733 ApplicationCache update should not immediately fail when reaching per-or igin quota
3734 https://bugs.webkit.org/show_bug.cgi?id=64177
3735
3736 Reviewed by Alexey Proskuryakov.
3737
3738 New behavior of handling ApplicationCache per-origin quotas. Previously,
3739 if the quota was reached while downloading we would fail the download
3740 and then prompt the user for a storage increase. This required a refresh ,
3741 a redownload of resources, and the total storage was not known so the
3742 process could be repeated multiple times before an acceptable quota
3743 was found or the user disallowed an increase.
3744
3745 The new behavior is to complete the download of the entire appcache.
3746 When the cache completes downloading and it is greater than the origin
3747 quota, prompt the user to allow a quota increase with the known space
3748 needed. If the quota is increased, the cache will succeed, otherwise
3749 it will fail with the normal failure steps.
3750
3751 An alternative behavior is prompting while downloading immediately
3752 when the origin quota is reached, however at that point the entire
3753 space needed is unknown and so quota increases might not be enough
3754 and could result in multiple prompts to the user.
3755
3756 Tests: http/tests/appcache/origin-quota-continued-download-multiple-mani fests.html
3757 http/tests/appcache/origin-quota-continued-download.html
3758
3759 * loader/appcache/ApplicationCacheGroup.h:
3760 * loader/appcache/ApplicationCacheGroup.cpp:
3761 (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
3762 Rename instance variable to be more clear on its intent.
3763
3764 (WebCore::ApplicationCacheGroup::didFinishLoading):
3765 Check the quota limit while downloading so we can fail early
3766 if the user already denied a quota increase.
3767
3768 (WebCore::ApplicationCacheGroup::didReachOriginQuota):
3769 Pass the space needed information to the chrome client.
3770
3771 (WebCore::ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota):
3772 Removed. Instead convert the callers to update state and console
3773 log when the per-origin quota is reached. This allows us to follow
3774 the normal failure steps if the quota is reached at the end of a
3775 download, and the alternative short path when we fail during downloading .
3776
3777 (WebCore::ApplicationCacheGroup::recalculateAvailableSpaceInQuota):
3778 Extract to a helper function.
3779
3780 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
3781 Allow for a quota increase at the end of the download now that
3782 we know the space needed. Then proceed to fail or succeed
3783 as we normally would.
3784
3785 * loader/appcache/ApplicationCacheStorage.h:
3786 * loader/appcache/ApplicationCacheStorage.cpp:
3787 (WebCore::ApplicationCacheStorage::checkOriginQuota):
3788 (WebCore::ApplicationCacheStorage::storeNewestCache):
3789 Extract checking the origin quota for when an ApplicationCacheGroup
3790 will be replacing an ApplicationCacheGroup into a helper function.
3791 The helper also provides an out parameter for the space needed
3792 to properly fit the new cache group if it wouldn't fit.
3793
3794 * page/ChromeClient.h:
3795 * loader/EmptyClients.h:
3796 (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
3797 Add a space needed parameter when reaching the per-origin quota.
3798
3799 2011-07-12 Chris Rogers <crogers@google.com>
3800
3801 AudioDevice::Stop can close NULL handle.
3802 https://bugs.webkit.org/show_bug.cgi?id=64157
3803
3804 Reviewed by Kenneth Russell.
3805
3806 No new tests since audio API is not yet implemented.
3807
3808 * bindings/js/JSAudioContextCustom.cpp:
3809 (WebCore::JSAudioContextConstructor::constructJSAudioContext):
3810 * bindings/v8/custom/V8AudioContextCustom.cpp:
3811 (WebCore::V8AudioContext::constructorCallback):
3812 * webaudio/AudioContext.cpp:
3813 (WebCore::AudioContext::create):
3814 (WebCore::AudioContext::uninitialize):
3815 * webaudio/AudioContext.h:
3816
3817 2011-07-12 John Bates <jbates@google.com>
3818
3819 Move call to syncCompositingLayers so that we do not trigger redundant d raws.
3820 https://bugs.webkit.org/show_bug.cgi?id=64224
3821
3822 doComposite was triggering two composites every time a canvas was dirtie d.
3823 By moving syncCompositingLayers call to layout, the client code can draw without triggering
3824 a redundant frame. Also renamed WebViewImpl::updateLayers to
3825 syncCompositingLayers, because it was confusing. CCLayerTreeHostImplProx y::updateLayers was
3826 no longer needed, because animateAndLayout calls WebViewImpl::layout.
3827
3828 Reviewed by James Robinson.
3829
3830 * platform/graphics/chromium/LayerRendererChromium.cpp:
3831 (WebCore::LayerRendererChromium::updateLayers):
3832 * platform/graphics/chromium/LayerRendererChromium.h:
3833 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3834 (WebCore::CCLayerTreeHost::syncCompositingLayers):
3835 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3836 * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp:
3837 (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommit):
3838
3839 2011-07-12 Ryosuke Niwa <rniwa@webkit.org>
3840
3841 Isolate HTMLTextFormControlElement into a separate file
3842 https://bugs.webkit.org/show_bug.cgi?id=64381
3843
3844 Reviewed by Dimitri Glazkov.
3845
3846 Extracted HTMLTextFormControlElement.h and HTMLTextFormControlElement.cp p out of
3847 HTMLFormControlElement.h and HTMLFormControlElement.cpp.
3848
3849 Also moved defaultEventHandler from HTMLFormControlElementWithState to H TMLTextFormControlElement
3850 because it was specific to HTMLTextFormControlElement, and replaced all references to
3851 HTMLFormControlElementWithState in HTMLInputElement and HTMLTextAreaElem ent by ones to
3852 HTMLTextFormControlElement.
3853
3854 * CMakeLists.txt:
3855 * GNUmakefile.list.am:
3856 * WebCore.gypi:
3857 * WebCore.pro:
3858 * WebCore.vcproj/WebCore.vcproj:
3859 * WebCore.xcodeproj/project.pbxproj:
3860 * editing/TextIterator.cpp:
3861 * editing/htmlediting.cpp:
3862 * html/HTMLElementsAllInOne.cpp:
3863 * html/HTMLFormControlElement.cpp:
3864 (WebCore::HTMLFormControlElement::isFocusable):
3865 * html/HTMLFormControlElement.h:
3866 * html/HTMLInputElement.cpp:
3867 (WebCore::HTMLInputElement::isKeyboardFocusable):
3868 (WebCore::HTMLInputElement::isMouseFocusable):
3869 (WebCore::HTMLInputElement::updateFocusAppearance):
3870 (WebCore::HTMLInputElement::canStartSelection):
3871 (WebCore::HTMLInputElement::parseMappedAttribute):
3872 (WebCore::HTMLInputElement::finishParsingChildren):
3873 (WebCore::HTMLInputElement::rendererIsNeeded):
3874 (WebCore::HTMLInputElement::attach):
3875 (WebCore::HTMLInputElement::detach):
3876 (WebCore::HTMLInputElement::copyNonAttributeProperties):
3877 (WebCore::HTMLInputElement::defaultEventHandler):
3878 (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
3879 (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
3880 (WebCore::HTMLInputElement::addSubresourceAttributeURLs):
3881 (WebCore::HTMLInputElement::recalcWillValidate):
3882 * html/HTMLInputElement.h:
3883 * html/HTMLTextAreaElement.cpp:
3884 (WebCore::HTMLTextAreaElement::defaultEventHandler):
3885 * html/HTMLTextAreaElement.h:
3886 * html/HTMLTextFormControlElement.cpp: Copied from Source/WebCore/html/H TMLFormControlElement.cpp.
3887 (WebCore::HTMLTextFormControlElement::defaultEventHandler):
3888 * html/HTMLTextFormControlElement.h: Copied from Source/WebCore/html/HTM LFormControlElement.h.
3889
3890 2011-07-12 Sheriff Bot <webkit.review.bot@gmail.com>
3891
3892 Unreviewed, rolling out r90831.
3893 http://trac.webkit.org/changeset/90831
3894 https://bugs.webkit.org/show_bug.cgi?id=64389
3895
3896 Likely caused fast/canvas/DrawImageSinglePixelStretch.html to
3897 start timing out on the chromium GPU bots (Requested by ojan
3898 on #webkit).
3899
3900 * platform/graphics/skia/ImageBufferSkia.cpp:
3901 (WebCore::getImageData):
3902 (WebCore::putImageData):
3903
3904 2011-07-12 James Robinson <jamesr@chromium.org>
3905
3906 Reviewed by Kenneth Russell.
3907
3908 [chromium] Move draw implementation for ContentLayerChromium/ImageLayerC hromium to the appropriate CCLayerImpl subclass
3909 https://bugs.webkit.org/show_bug.cgi?id=58833
3910
3911 Adds a TiledLayerChromium class to handle the tiling logic shared by Con tentLayerChromium and ImageLayerChromium
3912 so that they can be siblings in the class hierarchy instead of children. Also adds a CCTiledLayerImpl to handle
3913 the drawing responsibilities for tiled layers.
3914
3915 TiledLayerChromium maintains a tiler, tiling options, and calculates the tiling transform. Subclasses are
3916 responsible for providing an appropriate texture updater implementation. CCTiledLayerImpl takes the tiler,
3917 tiling transform and layer properties and draws the layer. Longer term it'd be better of the CCTiledLayerImpl
3918 owned the tiler and the TiledLayerChromium only owned an updater, but ge tting there will require changing the
3919 way tile eviction works.
3920
3921 * WebCore.gypi:
3922 * platform/graphics/chromium/ContentLayerChromium.cpp:
3923 (WebCore::ContentLayerChromium::ContentLayerChromium):
3924 (WebCore::ContentLayerChromium::paintContentsIfDirty):
3925 (WebCore::ContentLayerChromium::drawsContent):
3926 * platform/graphics/chromium/ContentLayerChromium.h:
3927 (WebCore::ContentLayerChromium::textureUpdater):
3928 * platform/graphics/chromium/ImageLayerChromium.cpp:
3929 (WebCore::ImageLayerChromium::ImageLayerChromium):
3930 (WebCore::ImageLayerChromium::cleanupResources):
3931 (WebCore::ImageLayerChromium::paintContentsIfDirty):
3932 (WebCore::ImageLayerChromium::textureUpdater):
3933 (WebCore::ImageLayerChromium::contentBounds):
3934 (WebCore::ImageLayerChromium::drawsContent):
3935 (WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
3936 * platform/graphics/chromium/ImageLayerChromium.h:
3937 * platform/graphics/chromium/LayerChromium.cpp:
3938 (WebCore::LayerChromium::pushPropertiesTo):
3939 (WebCore::LayerChromium::ccLayerImpl):
3940 * platform/graphics/chromium/LayerChromium.h:
3941 (WebCore::LayerChromium::contentBounds):
3942 * platform/graphics/chromium/LayerRendererChromium.cpp:
3943 (WebCore::LayerRendererChromium::drawRootLayer):
3944 (WebCore::visibleLayerRect):
3945 (WebCore::paintLayerContentsIfDirty):
3946 (WebCore::LayerRendererChromium::paintLayerContents):
3947 (WebCore::LayerRendererChromium::drawLayer):
3948 * platform/graphics/chromium/LayerTilerChromium.cpp:
3949 (WebCore::LayerTilerChromium::updateRect):
3950 (WebCore::LayerTilerChromium::draw):
3951 (WebCore::LayerTilerChromium::drawTiles):
3952 * platform/graphics/chromium/LayerTilerChromium.h:
3953 * platform/graphics/chromium/TiledLayerChromium.cpp: Added.
3954 (WebCore::TiledLayerChromium::TiledLayerChromium):
3955 (WebCore::TiledLayerChromium::~TiledLayerChromium):
3956 (WebCore::TiledLayerChromium::createCCLayerImpl):
3957 (WebCore::TiledLayerChromium::cleanupResources):
3958 (WebCore::TiledLayerChromium::setLayerRenderer):
3959 (WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):
3960 (WebCore::TiledLayerChromium::drawsContent):
3961 (WebCore::TiledLayerChromium::createTilerIfNeeded):
3962 (WebCore::TiledLayerChromium::updateCompositorResources):
3963 (WebCore::TiledLayerChromium::setTilingOption):
3964 (WebCore::TiledLayerChromium::setIsMask):
3965 (WebCore::TiledLayerChromium::tilingTransform):
3966 (WebCore::TiledLayerChromium::pushPropertiesTo):
3967 (WebCore::writeIndent):
3968 (WebCore::TiledLayerChromium::dumpLayerProperties):
3969 * platform/graphics/chromium/TiledLayerChromium.h: Copied from Source/We bCore/platform/graphics/chromium/ContentLayerChromium.h.
3970 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
3971 (WebCore::CCLayerImpl::draw):
3972 * platform/graphics/chromium/cc/CCLayerImpl.h:
3973 (WebCore::CCLayerImpl::setDrawsContent):
3974 (WebCore::CCLayerImpl::drawsContent):
3975 (WebCore::CCLayerImpl::contentBounds):
3976 (WebCore::CCLayerImpl::setContentBounds):
3977 (WebCore::CCLayerImpl::doubleSided):
3978 (WebCore::CCLayerImpl::setDoubleSided):
3979 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: Added.
3980 (WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
3981 (WebCore::CCTiledLayerImpl::~CCTiledLayerImpl):
3982 (WebCore::CCTiledLayerImpl::draw):
3983 (WebCore::CCTiledLayerImpl::bindContentsTexture):
3984 (WebCore::CCTiledLayerImpl::dumpLayerProperties):
3985 * platform/graphics/chromium/cc/CCTiledLayerImpl.h: Added.
3986 (WebCore::CCTiledLayerImpl::create):
3987 (WebCore::CCTiledLayerImpl::setTilingTransform):
3988 (WebCore::CCTiledLayerImpl::setTiler):
3989
3990 2011-07-12 Arno Renevier <arno@renevier.net>
3991
3992 [GTK] DOM bindings do not have gir annotations
3993 https://bugs.webkit.org/show_bug.cgi?id=45395
3994
3995 Reviewed by Xan Lopez.
3996
3997 * bindings/scripts/CodeGeneratorGObject.pm: generate introspection annot ations.
3998 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h: update for new output.
3999 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: ditto.
4000 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterf ace.h: ditto.
4001
4002 2011-07-12 Chris Rogers <crogers@google.com>
4003
4004 webkitAudioContext does not do proper sanity checking on its arguments.
4005 https://bugs.webkit.org/show_bug.cgi?id=64076
4006
4007 Reviewed by Kenneth Russell.
4008
4009 No new tests since audio API is not yet implemented.
4010
4011 * bindings/js/JSAudioContextCustom.cpp:
4012 (WebCore::JSAudioContextConstructor::constructJSAudioContext):
4013 (WebCore::JSAudioContext::createBuffer):
4014 * bindings/v8/custom/V8AudioContextCustom.cpp:
4015 (WebCore::V8AudioContext::constructorCallback):
4016 (WebCore::V8AudioContext::createBufferCallback):
4017 * platform/audio/HRTFDatabaseLoader.h:
4018 (WebCore::HRTFDatabaseLoader::databaseSampleRate):
4019 * webaudio/AudioContext.cpp:
4020 (WebCore::AudioContext::create):
4021 (WebCore::AudioContext::createOfflineContext):
4022 (WebCore::AudioContext::createBuffer):
4023 * webaudio/AudioContext.h:
4024
4025 2011-07-12 Pratik Solanki <psolanki@apple.com>
4026
4027 Implement didReceiveDataArray callback for CFNetwork based loader
4028 https://bugs.webkit.org/show_bug.cgi?id=64130
4029
4030 Reviewed by David Kilzer.
4031
4032 Factor out the didReceiveDataArray code from ResourceHandleMac.mm into
4033 a new method ResourceHandle::handleDataArray(). Implement the callback
4034 in the CFNetwork loader code and call handleDataArray() to process
4035 incoming data.
4036
4037 No new tests because the flag is not enabled for any bots.
4038
4039 * platform/network/ResourceHandle.h:
4040 * platform/network/cf/ResourceHandleCFNet.cpp:
4041 (WebCore::didReceiveDataArray):
4042 (WebCore::ResourceHandle::createCFURLConnection):
4043 (WebCore::ResourceHandle::handleDataArray):
4044 * platform/network/mac/ResourceHandleMac.mm:
4045 (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
4046
4047 2011-07-12 Emil A Eklund <eae@chromium.org>
4048
4049 Switch preferred width/height and columns to to new layout types
4050 https://bugs.webkit.org/show_bug.cgi?id=64329
4051
4052 Reviewed by Eric Seidel.
4053
4054 No new tests, no new functionality.
4055
4056 * rendering/LayoutTypes.h:
4057 (WebCore::ceiledLayoutUnit):
4058 Add ceiledLayoutUnit to go with the floored version.
4059
4060 * rendering/RenderBlock.cpp:
4061 (WebCore::RenderBlock::adjustRectForColumns):
4062 (WebCore::RenderBlock::flipForWritingModeIncludingColumns):
4063 (WebCore::RenderBlock::adjustStartEdgeForWritingModeIncludingColumns):
4064 Rename rect version of flipForWritingModeIncludingColumns to
4065 adjustStartEdgeForWritingModeIncludingColumns as it adjust the start edg e
4066 and does not flip the rect.
4067
4068 (WebCore::RenderBlock::adjustForColumns):
4069 (WebCore::updatePreferredWidth):
4070 * rendering/RenderBlock.h:
4071 * rendering/RenderBox.cpp:
4072 (WebCore::RenderBox::minPreferredLogicalWidth):
4073 (WebCore::RenderBox::maxPreferredLogicalWidth):
4074 (WebCore::RenderBox::offsetFromContainer):
4075 (WebCore::RenderBox::computePercentageLogicalHeight):
4076 (WebCore::RenderBox::flipForWritingMode):
4077 (WebCore::RenderBox::flipForWritingModeIncludingColumns):
4078 * rendering/RenderBox.h:
4079 * rendering/RenderListBox.cpp:
4080 (WebCore::RenderListBox::itemBoundingBoxRect):
4081 * rendering/RenderListBox.h:
4082 * rendering/RenderObject.h:
4083 (WebCore::RenderObject::minPreferredLogicalWidth):
4084 (WebCore::RenderObject::maxPreferredLogicalWidth):
4085 (WebCore::RenderObject::adjustForColumns):
4086 * rendering/RenderReplaced.cpp:
4087 (WebCore::RenderReplaced::computeReplacedLogicalWidth):
4088 (WebCore::RenderReplaced::computeReplacedLogicalHeight):
4089 * rendering/TableLayout.h:
4090
4091 2011-07-12 Levi Weintraub <leviw@chromium.org>
4092
4093 Change roundedIntRect to roundedRect
4094 https://bugs.webkit.org/show_bug.cgi?id=64326
4095
4096 Reviewed by Eric Seidel.
4097
4098 Renaming RoundedIntRect to RoundedRect and moving the underlying type to Layout units from
4099 integer-based versions.
4100
4101 No new tests, no new functionality
4102
4103 * WebCore.gypi:
4104 * WebCore.pro:
4105 * WebCore.vcproj/WebCore.vcproj:
4106 * WebCore.xcodeproj/project.pbxproj:
4107 * platform/graphics/GraphicsContext.cpp:
4108 (WebCore::GraphicsContext::addRoundedRectClip):
4109 (WebCore::GraphicsContext::clipOutRoundedRect):
4110 (WebCore::GraphicsContext::fillRoundedRect):
4111 (WebCore::GraphicsContext::fillRectWithRoundedHole):
4112 * platform/graphics/GraphicsContext.h:
4113 * platform/graphics/Path.cpp:
4114 (WebCore::Path::addRoundedRect):
4115 * platform/graphics/Path.h:
4116 * platform/graphics/RoundedIntRect.cpp: Removed.
4117 * platform/graphics/RoundedIntRect.h: Removed.
4118 * platform/graphics/RoundedRect.cpp: Copied from Source/WebCore/platform /graphics/RoundedIntRect.cpp.
4119 (WebCore::RoundedRect::Radii::isZero):
4120 (WebCore::RoundedRect::Radii::scale):
4121 (WebCore::RoundedRect::Radii::expand):
4122 (WebCore::RoundedRect::inflateWithRadii):
4123 (WebCore::RoundedRect::Radii::includeLogicalEdges):
4124 (WebCore::RoundedRect::Radii::excludeLogicalEdges):
4125 (WebCore::RoundedRect::RoundedRect):
4126 (WebCore::RoundedRect::includeLogicalEdges):
4127 (WebCore::RoundedRect::excludeLogicalEdges):
4128 (WebCore::RoundedRect::isRenderable):
4129 * platform/graphics/RoundedRect.h: Copied from Source/WebCore/platform/g raphics/RoundedIntRect.h.
4130 (WebCore::RoundedRect::Radii::Radii):
4131 (WebCore::RoundedRect::Radii::setTopLeft):
4132 (WebCore::RoundedRect::Radii::setTopRight):
4133 (WebCore::RoundedRect::Radii::setBottomLeft):
4134 (WebCore::RoundedRect::Radii::setBottomRight):
4135 (WebCore::RoundedRect::Radii::topLeft):
4136 (WebCore::RoundedRect::Radii::topRight):
4137 (WebCore::RoundedRect::Radii::bottomLeft):
4138 (WebCore::RoundedRect::Radii::bottomRight):
4139 (WebCore::RoundedRect::Radii::expand):
4140 (WebCore::RoundedRect::Radii::shrink):
4141 (WebCore::RoundedRect::rect):
4142 (WebCore::RoundedRect::setRect):
4143 (WebCore::RoundedRect::move):
4144 (WebCore::RoundedRect::inflate):
4145 (WebCore::RoundedRect::expandRadii):
4146 (WebCore::RoundedRect::shrinkRadii):
4147 (WebCore::operator==):
4148 * platform/graphics/ShadowBlur.cpp:
4149 (WebCore::ScratchBuffer::setLastShadowValues):
4150 (WebCore::ScratchBuffer::setLastInsetShadowValues):
4151 (WebCore::ScratchBuffer::matchesLastShadow):
4152 (WebCore::ScratchBuffer::matchesLastInsetShadow):
4153 (WebCore::computeSliceSizesFromRadii):
4154 (WebCore::ShadowBlur::templateSize):
4155 (WebCore::ShadowBlur::drawRectShadow):
4156 (WebCore::ShadowBlur::drawInsetShadow):
4157 (WebCore::ShadowBlur::drawRectShadowWithoutTiling):
4158 (WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
4159 (WebCore::ShadowBlur::drawInsetShadowWithTiling):
4160 (WebCore::ShadowBlur::drawRectShadowWithTiling):
4161 (WebCore::ShadowBlur::drawLayerPieces):
4162 * platform/graphics/ShadowBlur.h:
4163 * platform/graphics/cg/GraphicsContextCG.cpp:
4164 (WebCore::GraphicsContext::fillRect):
4165 (WebCore::GraphicsContext::fillRoundedRect):
4166 (WebCore::GraphicsContext::fillRectWithRoundedHole):
4167 * rendering/RenderBox.cpp:
4168 (WebCore::RenderBox::paintBoxDecorations):
4169 * rendering/RenderBoxModelObject.cpp:
4170 (WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
4171 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
4172 (WebCore::RenderBoxModelObject::paintOneBorderSide):
4173 (WebCore::RenderBoxModelObject::paintBorderSides):
4174 (WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
4175 (WebCore::RenderBoxModelObject::paintBorder):
4176 (WebCore::RenderBoxModelObject::drawBoxSideFromPath):
4177 (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
4178 (WebCore::RenderBoxModelObject::paintBoxShadow):
4179 * rendering/RenderBoxModelObject.h:
4180 * rendering/RenderThemeMac.mm:
4181 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
4182 (WebCore::RenderThemeMac::paintSliderTrack):
4183 * rendering/style/RenderStyle.cpp:
4184 (WebCore::calcRadiiFor):
4185 (WebCore::calcConstraintScaleFor):
4186 (WebCore::RenderStyle::getRoundedBorderFor):
4187 (WebCore::RenderStyle::getRoundedInnerBorderFor):
4188 * rendering/style/RenderStyle.h:
4189
4190 2011-07-12 Mike Reed <reed@google.com>
4191
4192 [skia] optimize getImageData to avoid a copy when not needed. lockPixels () now does the right thing.
4193 https://bugs.webkit.org/show_bug.cgi?id=64302
4194
4195 Reviewed by Stephen White.
4196
4197 No new tests. Just an optimization for getImageData(), existing <canvas> tests apply
4198
4199 * platform/graphics/skia/ImageBufferSkia.cpp:
4200 (WebCore::getImageData):
4201 (WebCore::putImageData):
4202
4203 2011-07-12 Pavel Feldman <pfeldman@google.com>
4204
4205 Web Inspector: introduce UserMetrics for collecting stats in Chromium po rt.
4206 https://bugs.webkit.org/show_bug.cgi?id=64350
4207
4208 Reviewed by Yury Semikhatsky.
4209
4210 Test: inspector/user-metrics.html
4211
4212 * WebCore.gypi:
4213 * WebCore.vcproj/WebCore.vcproj:
4214 * bindings/js/JSInspectorFrontendHostCustom.cpp:
4215 (WebCore::JSInspectorFrontendHost::recordActionTaken):
4216 (WebCore::JSInspectorFrontendHost::recordPanelShown):
4217 (WebCore::JSInspectorFrontendHost::recordSettingChanged):
4218 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
4219 (WebCore::histogramEnumeration):
4220 (WebCore::V8InspectorFrontendHost::recordActionTakenCallback):
4221 (WebCore::V8InspectorFrontendHost::recordPanelShownCallback):
4222 (WebCore::V8InspectorFrontendHost::recordSettingChangedCallback):
4223 * inspector/InspectorFrontendHost.idl:
4224 * inspector/front-end/AuditsPanel.js:
4225 (WebInspector.AuditsPanel.prototype.initiateAudit):
4226 * inspector/front-end/ConsoleView.js:
4227 * inspector/front-end/DebuggerModel.js:
4228 (WebInspector.DebuggerModel.prototype.setBreakpoint):
4229 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
4230 * inspector/front-end/InspectorFrontendHostStub.js:
4231 (.WebInspector.InspectorFrontendHostStub.prototype.loadSessionSetting):
4232 (.WebInspector.InspectorFrontendHostStub.prototype.recordActionTaken):
4233 (.WebInspector.InspectorFrontendHostStub.prototype.recordPanelShown):
4234 (.WebInspector.InspectorFrontendHostStub.prototype.recordSettingChanged) :
4235 * inspector/front-end/ProfilesPanel.js:
4236 (WebInspector.ProfilesPanel.prototype._setRecordingProfile):
4237 (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
4238 * inspector/front-end/TimelinePanel.js:
4239 (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
4240 * inspector/front-end/UserMetrics.js: Added.
4241 (WebInspector.UserMetrics.settingChanged):
4242 (WebInspector.UserMetrics):
4243 (WebInspector.UserMetrics.prototype.panelShown):
4244 (WebInspector.UserMetrics._Recorder):
4245 (WebInspector.UserMetrics._Recorder.prototype.record):
4246 * inspector/front-end/WebKit.qrc:
4247 * inspector/front-end/inspector.html:
4248 * inspector/front-end/inspector.js:
4249 (WebInspector._toggleAttach):
4250
4251 2011-07-12 Pratik Solanki <psolanki@apple.com>
4252
4253 Reviewed by David Kilzer.
4254
4255 Add NSURLResponse wrapper in ResourceResponse when USE(CFNETWORK) is ena bled
4256 https://bugs.webkit.org/show_bug.cgi?id=63286
4257
4258 When USE(CFNETWORK) is enabled on Mac, keep an NSURLResponse object alon g with the
4259 CFURLResponseRef so that WebKit can continue using the NSURLResponse.
4260
4261 No new tests because no change in functionality and option is not enable d on Mac.
4262
4263 * platform/network/cf/ResourceResponse.h:
4264 (WebCore::ResourceResponse::ResourceResponse):
4265 * platform/network/mac/ResourceResponseMac.mm:
4266 (WebCore::ResourceResponse::initNSURLResponse):
4267 (WebCore::ResourceResponse::nsURLResponse):
4268 (WebCore::ResourceResponse::ResourceResponse):
4269
4270 2011-07-12 Pavel Podivilov <podivilov@chromium.org>
4271
4272 Web Inspector: Cancelling an empty edit fails.
4273 https://bugs.webkit.org/show_bug.cgi?id=64351
4274
4275 Reviewed by Pavel Feldman.
4276
4277 * inspector/front-end/ResourceView.js:
4278 (WebInspector.EditableResourceSourceFrame.prototype.cancelEditing):
4279
4280 2011-07-12 Pavel Podivilov <podivilov@chromium.org>
4281
4282 Web Inspector: make TextViewerDelegate methods implementations public in SourceFrame.
4283 https://bugs.webkit.org/show_bug.cgi?id=64353
4284
4285 Reviewed by Pavel Feldman.
4286
4287 * inspector/front-end/SourceFrame.js:
4288 (WebInspector.SourceFrame.prototype.beforeTextChanged):
4289 (WebInspector.SourceFrame.prototype.afterTextChanged):
4290 (WebInspector.SourceFrame.prototype.populateTextAreaContextMenu):
4291 (WebInspector.SourceFrame.prototype.suggestedFileName):
4292 (WebInspector.SourceFrame.prototype.doubleClick):
4293 (WebInspector.SourceFrame.prototype.cancelEditing):
4294 (WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):
4295 (WebInspector.TextViewerDelegateForSourceFrame.prototype.beforeTextChang ed):
4296 (WebInspector.TextViewerDelegateForSourceFrame.prototype.afterTextChange d):
4297 (WebInspector.TextViewerDelegateForSourceFrame.prototype.commitEditing):
4298 (WebInspector.TextViewerDelegateForSourceFrame.prototype.cancelEditing):
4299 (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateLineGut terContextMenu):
4300 (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateTextAre aContextMenu):
4301 (WebInspector.TextViewerDelegateForSourceFrame.prototype.suggestedFileNa me):
4302
4303 2011-07-12 Andrey Kosyakov <caseq@chromium.org>
4304
4305 Web Inspector: remove more dead code from the Network panel
4306 https://bugs.webkit.org/show_bug.cgi?id=64291
4307
4308 Reviewed by Pavel Feldman.
4309
4310 * inspector/front-end/NetworkPanel.js:
4311 (WebInspector.NetworkPanel.prototype._toggleGridMode):
4312 (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
4313 * inspector/front-end/networkPanel.css:
4314
4315 2011-07-12 Adam Roben <aroben@apple.com>
4316
4317 Unreviewed, rolling out r90811.
4318 http://trac.webkit.org/changeset/90811
4319 https://bugs.webkit.org/show_bug.cgi?id=61025
4320
4321 Several svg tests failing assertions beneath
4322 SVGSMILElement::findInstanceTime
4323
4324 * svg/animation/SVGSMILElement.cpp:
4325 (WebCore::SVGSMILElement::findInstanceTime):
4326
4327 2011-07-12 Oliver Varga <Varga.Oliver@stud.u-szeged.hu>
4328
4329 Reviewed by Nikolas Zimmermann.
4330
4331 Speed up SVGSMILElement::findInstanceTime.
4332 https://bugs.webkit.org/show_bug.cgi?id=61025
4333
4334 Replace the linear search to binary search on ordered list because
4335 the previous searches from the beginning was not efficient.
4336 Out of index error fixed by Renata Hodovan.
4337
4338 No new tests this is only a performance tweak.
4339
4340 * svg/animation/SVGSMILElement.cpp:
4341 (WebCore::extractTimeFromVector):
4342 (WebCore::SVGSMILElement::findInstanceTime):
4343
4344 2011-07-11 Zeng Huiqing <huiqing.zeng@intel.com>
4345
4346 Optimize HTMLInputElement::updateCheckedRadioButtons
4347 https://bugs.webkit.org/show_bug.cgi?id=62840
4348
4349 Reviewed by Kent Tamura.
4350
4351 No new tests.
4352
4353 * dom/Document.h:
4354 (WebCore::Document::getFormElements):
4355 * html/HTMLInputElement.cpp:
4356 (WebCore::HTMLInputElement::updateCheckedRadioButtons):
4357 (WebCore::HTMLInputElement::setChecked):
4358
4359 2011-07-11 Pratik Solanki <psolanki@apple.com>
4360
4361 Reviewed by David Kilzer.
4362
4363 Add NSURLRequest wrapper in ResourceRequest when USE(CFNETWORK) is enabl ed
4364 https://bugs.webkit.org/show_bug.cgi?id=63276
4365
4366 When USE(CFNETWORK) is enabled on Mac, keep an NSURLRequest object along with the
4367 CFURLRequestRef so that WebKit can continue using the NSURLRequest.
4368
4369 No new tests because no change in functionality and option is not enable d on Mac.
4370
4371 * platform/network/cf/ResourceRequest.h:
4372 (WebCore::ResourceRequest::updateNSURLRequest):
4373 (WebCore::ResourceRequest::ResourceRequest):
4374 * platform/network/cf/ResourceRequestCFNet.cpp:
4375 (WebCore::findCFURLRequestSetContentDispositionEncodingFallbackArrayFunc tion):
4376 (WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFun ction):
4377 (WebCore::ResourceRequest::doUpdatePlatformRequest):
4378 (WebCore::ResourceRequest::applyWebArchiveHackForMail):
4379 * platform/network/mac/ResourceRequestMac.mm:
4380 (WebCore::ResourceRequest::nsURLRequest):
4381 (WebCore::ResourceRequest::ResourceRequest):
4382 (WebCore::ResourceRequest::updateNSURLRequest):
4383
4384 2011-07-11 Ryosuke Niwa <rniwa@webkit.org>
4385
4386 positionForPoint is broken when a block is positioned relatively inside the parent
4387 https://bugs.webkit.org/show_bug.cgi?id=64298
4388
4389 Reviewed by Simon Fraser.
4390
4391 The bug was caused by positionForPointRespectingEditingBoundaries's not taking relativePositionOffset
4392 into account when computing the point in child coordinates. Fixed the bu g by adding the offset to
4393 childLocation as needed.
4394
4395 Test: fast/block/positioning/hittest-on-relative-positioned-children.htm l
4396
4397 * rendering/RenderBlock.cpp:
4398 (WebCore::positionForPointRespectingEditingBoundaries): Fixed the bug; a lso replaced all instances of
4399 IntPoint by LayoutPoint.
4400
4401 2011-07-11 Dan Bernstein <mitz@apple.com>
4402
4403 Excessive expansion of justified text when rounding hacks are enabled
4404 https://bugs.webkit.org/show_bug.cgi?id=64331
4405
4406 Reviewed by Anders Carlsson.
4407
4408 Test: platform/mac/fast/text/rounding-hacks-expansion.html
4409
4410 When rounding hacks are enabled, the expansion at each expansion opportu nity should be by an
4411 integer. Restored more of the logic that was removed in r78846 in order to ensure this.
4412
4413 * platform/graphics/WidthIterator.cpp:
4414 (WebCore::WidthIterator::advance):
4415 * platform/graphics/mac/ComplexTextController.cpp:
4416 (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
4417
4418 2011-07-11 Jer Noble <jer.noble@apple.com>
4419
4420 HTML5 video controller in fullscreen is partly off-screen (at least on y outube) using ClickToFlash
4421 https://bugs.webkit.org/show_bug.cgi?id=64327
4422
4423 Reviewed by Darin Adler.
4424
4425 No new tests; no change in functionality, so covered by existing tests.
4426
4427 Make the rules from fullscreenQuickTime.css !important so they are not o verridden
4428 by page authors.
4429
4430 * css/fullscreenQuickTime.css:
4431 (video:-webkit-full-screen::-webkit-media-controls-panel):
4432
4433 2011-07-11 Levi Weintraub <leviw@chromium.org>
4434
4435 Switch lineTop and lineBottom to new layout types
4436 https://bugs.webkit.org/show_bug.cgi?id=64317
4437
4438 Reviewed by Eric Seidel.
4439
4440 Changing lineTop and lineBottom to LayoutUnits and preparing all uses
4441 of them for the upcoming conversion.
4442
4443 No new tests, no new functionality.
4444
4445 * rendering/EllipsisBox.cpp:
4446 (WebCore::EllipsisBox::nodeAtPoint):
4447 * rendering/EllipsisBox.h:
4448 * rendering/GapRects.h:
4449 (WebCore::GapRects::left):
4450 (WebCore::GapRects::center):
4451 (WebCore::GapRects::right):
4452 (WebCore::GapRects::uniteLeft):
4453 (WebCore::GapRects::uniteCenter):
4454 (WebCore::GapRects::uniteRight):
4455 (WebCore::GapRects::operator LayoutRect):
4456 * rendering/InlineBox.cpp:
4457 (WebCore::InlineBox::nodeAtPoint):
4458 * rendering/InlineBox.h:
4459 * rendering/InlineFlowBox.cpp:
4460 (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
4461 (WebCore::InlineFlowBox::flipLinesInBlockDirection):
4462 (WebCore::InlineFlowBox::computeOverflow):
4463 (WebCore::InlineFlowBox::setLayoutOverflow):
4464 (WebCore::InlineFlowBox::setVisualOverflow):
4465 (WebCore::InlineFlowBox::setOverflowFromLogicalRects):
4466 (WebCore::InlineFlowBox::nodeAtPoint):
4467 * rendering/InlineFlowBox.h:
4468 (WebCore::InlineFlowBox::layoutOverflowRect):
4469 (WebCore::InlineFlowBox::visualOverflowRect):
4470 * rendering/InlineTextBox.cpp:
4471 (WebCore::InlineTextBox::nodeAtPoint):
4472 * rendering/RenderLineBoxList.cpp:
4473 (WebCore::RenderLineBoxList::anyLineIntersectsRect):
4474 * rendering/RenderLineBoxList.h:
4475 * rendering/RenderListItem.cpp:
4476 (WebCore::RenderListItem::positionListMarker):
4477 * rendering/RenderTextControl.h:
4478 * rendering/RenderTextControlMultiLine.cpp:
4479 (WebCore::RenderTextControlMultiLine::adjustControlHeightBasedOnLineHeig ht):
4480 * rendering/RenderTextControlSingleLine.cpp:
4481 (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHei ght):
4482 * rendering/RenderTextControlSingleLine.h:
4483 * rendering/RootInlineBox.cpp:
4484 (WebCore::RootInlineBox::nodeAtPoint):
4485 * rendering/RootInlineBox.h:
4486 (WebCore::RootInlineBox::lineTop):
4487 (WebCore::RootInlineBox::lineBottom):
4488 (WebCore::RootInlineBox::setLineTopBottomPositions):
4489 (WebCore::RootInlineBox::logicalTopVisualOverflow):
4490 (WebCore::RootInlineBox::logicalBottomVisualOverflow):
4491 (WebCore::RootInlineBox::logicalTopLayoutOverflow):
4492 (WebCore::RootInlineBox::logicalBottomLayoutOverflow):
4493 * rendering/svg/SVGInlineFlowBox.h:
4494 * rendering/svg/SVGInlineTextBox.cpp:
4495 (WebCore::SVGInlineTextBox::nodeAtPoint):
4496 * rendering/svg/SVGInlineTextBox.h:
4497 * rendering/svg/SVGRootInlineBox.h:
4498
4499 2011-07-11 Martin Robinson <mrobinson@igalia.com>
4500
4501 Reviewed by Daniel Bates.
4502
4503 [GTK] Transition to Mozilla named cursors have incorrect hotspot and ren dering
4504 https://bugs.webkit.org/show_bug.cgi?id=62752
4505
4506 Instead of offsetting the cursor blit by the hotspot, just pass the hots pot
4507 arguments to the GdkCursor constructor.
4508
4509 No new tests. This is covered by manual-tests/cursor.html.
4510
4511 * platform/gtk/CursorGtk.cpp:
4512 (WebCore::createNamedCursor):
4513
4514 2011-07-11 Yi Shen <yi.4.shen@nokia.com>
4515
4516 [Qt] Unreviewed rollout 90779 which may fail the layout-test.
4517
4518 * platform/network/qt/QNetworkReplyHandler.cpp:
4519 (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
4520 * platform/network/qt/QNetworkReplyHandler.h:
4521
4522 2011-07-11 Bradley Nelson <bradnelson@chromium.org>
4523
4524 Reviewed by Darin Fisher.
4525
4526 Split webcore_dom off webcore_remaining to reduce its size for
4527 whole program optimization builds.
4528
4529 https://bugs.webkit.org/show_bug.cgi?id=64299
4530
4531 * WebCore.gyp/WebCore.gyp:
4532
4533 2011-07-11 Yi Shen <yi.4.shen@nokia.com>
4534
4535 [Qt] ASSERTION FAILED in ResourceHandle::setDefersLoading causes crash
4536 https://bugs.webkit.org/show_bug.cgi?id=62808
4537
4538 Reviewed by Benjamin Poulain.
4539
4540 The assertion in ResourceHandle::setDefersLoading assumes asynchronous
4541 content delivery -- To resume a page, first, its main resource loader
4542 calls setDefersLoading to resume loading the main content; then all the
4543 sub-resource loaders calls setDefersLoading to resume sub-contents.
4544 However, since QNetworkReplyHandler delivers content synchronously,
4545 some new sub-resource loaders get created as soon as the main resource
4546 loader resumed, and all these new sub-resource loaders set their
4547 defersLoading flag to false. Then, the assertion fails for these new
4548 sub-resource loaders when calling setDefersLoading on them. As a fix,
4549 this path makes QNetworkReplyHandler deliver content asynchronously.
4550
4551 Test: loader/load-defer-resume-crash.html
4552
4553 * platform/network/qt/QNetworkReplyHandler.cpp:
4554 (WebCore::QNetworkReplyHandlerCallQueue::setDeferSignals):
4555 * platform/network/qt/QNetworkReplyHandler.h:
4556
4557 2011-07-08 Ryosuke Niwa <rniwa@webkit.org>
4558
4559 Move innerTextElement() from RenderTextControl to HTMLTextFormControlEle ment
4560 https://bugs.webkit.org/show_bug.cgi?id=64134
4561
4562 Reviewed by Kent Tamura.
4563
4564 Moved innerTextElement from RenderTextControl to HTMLTextFormControlElem ent. It is implemented by
4565 HTMLInputElement and HTMLTextAreaElement instead of RenderTextControlSin gleLine and
4566 RenderTextControlMultiLine.
4567
4568 This refactoring removes the indirection through RenderTextControl and m akes the ownership of
4569 shadow DOM for input and textarea elements clear. Accessing the shadow D OM of input and textarea elements
4570 are now less error prone because it no longer depends on the lifetime of the render tree.
4571
4572 * accessibility/AccessibilityRenderObject.cpp:
4573 (WebCore::AccessibilityRenderObject::indexForVisiblePosition): Access in nerTextElement via
4574 HTMLTextFormControlElement.
4575 * dom/Node.cpp:
4576 (WebCore::traverseTreeAndMark): No longer calls innerTextElement because this was a work-around
4577 needed before making input and textarea elements use the new shadow DOM model.
4578 * editing/TextIterator.cpp:
4579 (WebCore::TextIterator::handleReplacedElement): Access innerTextElement via HTMLTextFormControlElement.
4580 * html/HTMLFormControlElement.cpp:
4581 (WebCore::hasVisibleTextArea): Takes innerTextElement.
4582 (WebCore::HTMLTextFormControlElement::setSelectionRange): Calls innerTex tElement().
4583 (WebCore::HTMLTextFormControlElement::selection): Ditto.
4584 (WebCore::HTMLTextFormControlElement::selectionStart): Ditto; no longer uses a temporary local variable
4585 for innerTextElement because innerTextElement() no longer depends on the lifetime of the render tree.
4586 (WebCore::HTMLTextFormControlElement::selectionEnd): Ditto.
4587 * html/HTMLFormControlElement.h:
4588 * html/HTMLTextAreaElement.cpp:
4589 (WebCore::HTMLTextAreaElement::innerTextElement): Added.
4590 * html/HTMLTextAreaElement.h:
4591 * rendering/RenderTextControl.cpp:
4592 (WebCore::RenderTextControl::textFormControlElement): Made this function a const member.
4593 (WebCore::RenderTextControl::innerTextElement): Added.
4594 * rendering/RenderTextControl.h:
4595 * rendering/RenderTextControlMultiLine.cpp:
4596 * rendering/RenderTextControlMultiLine.h:
4597 * rendering/RenderTextControlSingleLine.cpp:
4598 * rendering/RenderTextControlSingleLine.h:
4599
4600 2011-07-11 Tony Chang <tony@chromium.org>
4601
4602 rename RenderObject::isFlexibleBox to isDeprecatedFlexibleBox
4603 https://bugs.webkit.org/show_bug.cgi?id=64217
4604
4605 Reviewed by Ojan Vafai.
4606
4607 This is to make way for the new flexbox needing a similar method.
4608 RenderObject also has isFlexingChildren() and isStretchingChildren(),
4609 but we may be able to use those for the new flexbox as well so I
4610 didn't rename them.
4611
4612 No new tests, just refactoring.
4613
4614 * rendering/RenderBlock.cpp:
4615 (WebCore::RenderBlock::removeChild):
4616 (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
4617 (WebCore::shouldCheckLines):
4618 * rendering/RenderBox.cpp:
4619 (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
4620 (WebCore::RenderBox::computeLogicalWidth):
4621 (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
4622 (WebCore::RenderBox::computeLogicalHeight):
4623 * rendering/RenderDeprecatedFlexibleBox.cpp:
4624 (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
4625 * rendering/RenderDeprecatedFlexibleBox.h:
4626 (WebCore::RenderDeprecatedFlexibleBox::isDeprecatedFlexibleBox):
4627 * rendering/RenderObject.h:
4628 (WebCore::RenderObject::isDeprecatedFlexibleBox):
4629
4630 2011-07-11 Nate Chapin <japhet@chromium.org>
4631
4632 [Chromium] Ensure we don't crash when an
4633 HTMLSelectElement mouse release event removes
4634 the element from the DOM.
4635 https://bugs.webkit.org/show_bug.cgi?id=64295
4636
4637 Reviewed by Dimitri Glazkov.
4638
4639 Manual test only because the crash requires a
4640 real popup menu, which DRT doesn't provide.
4641
4642 * manual-tests/chromium/popup-menu-crash.html: Added.
4643 * platform/chromium/PopupMenuChromium.cpp:
4644 (WebCore::PopupContainer::handleMouseReleaseEvent):
4645
4646 2011-07-11 Mike Reed <reed@google.com>
4647
4648 [skia] remove platform helpers for gradients and patterns
4649 https://bugs.webkit.org/show_bug.cgi?id=64281
4650
4651 Reviewed by Stephen White.
4652
4653 No new tests. fixes canvas/philip/tests/2d.gradient.object.update.html
4654
4655 Remove (now empty) platform helpers for fill/stroke gradients/patterns. We now pickup the platformGradient
4656 and platformPattern fresh when they're needed, so we can see any edits t hat have occurred to them
4657 2d.gradient.object.update.html sets the fillgradient, and then edits the gradient object. This CL allows
4658 us to see that edit.
4659
4660 * platform/graphics/GraphicsContext.cpp:
4661 (WebCore::GraphicsContext::setStrokePattern):
4662 (WebCore::GraphicsContext::setFillPattern):
4663 (WebCore::GraphicsContext::setStrokeGradient):
4664 (WebCore::GraphicsContext::setFillGradient):
4665 * platform/graphics/GraphicsContext.h:
4666 * platform/graphics/skia/GraphicsContextSkia.cpp:
4667 (WebCore::GraphicsContext::platformInit):
4668 * platform/graphics/skia/PlatformContextSkia.cpp:
4669 (WebCore::PlatformContextSkia::State::State):
4670 (WebCore::PlatformContextSkia::State::~State):
4671 (WebCore::PlatformContextSkia::PlatformContextSkia):
4672 (WebCore::PlatformContextSkia::drawRect):
4673 (WebCore::PlatformContextSkia::setupShader):
4674 (WebCore::PlatformContextSkia::setupPaintForFilling):
4675 (WebCore::PlatformContextSkia::setupPaintForStroking):
4676 (WebCore::PlatformContextSkia::setFillColor):
4677 (WebCore::PlatformContextSkia::setStrokeColor):
4678 (WebCore::PlatformContextSkia::canAccelerate):
4679 * platform/graphics/skia/PlatformContextSkia.h:
4680 (WebCore::PlatformContextSkia::setGraphicsContext):
4681
4682 2011-07-11 Young Han Lee <joybro@company100.net>
4683
4684 Reviewed by Simon Fraser.
4685
4686 Transition LayoutTest using pause API shows wrong result if it tries to pause a transition after its delay time.
4687 https://bugs.webkit.org/show_bug.cgi?id=63859
4688
4689 The existing code to set the m_startTime haven't worked because
4690 the animation is not the right state to accept the start event.
4691 This patch just sets the values directly instead of using event.
4692
4693 Test: transitions/delay.html
4694
4695 * page/animation/AnimationBase.cpp:
4696 (WebCore::AnimationBase::freezeAtTime):
4697
4698 2011-07-11 Ryosuke Niwa <rniwa@webkit.org>
4699
4700 Move selection related code from RenderTextControl to HTMLTextFormContro lElement
4701 https://bugs.webkit.org/show_bug.cgi?id=64133
4702
4703 Reviewed by Dimitri Glazkov.
4704
4705 Moved selectionStart, selectionEnd, hasVisibleTextArea, setSelectionRang e, setContainerAndOffsetForRange
4706 and selection from RenderTextControl.cpp to HTMLFormControlElement.cpp.
4707
4708 This refactoring removes RenderTextControl's dependency on FrameSelectio n.
4709
4710 * accessibility/AccessibilityRenderObject.cpp:
4711 (WebCore::AccessibilityRenderObject::selectedText): Calls HTMLTextFromCo ntrol::selectedText.
4712 (WebCore::AccessibilityRenderObject::selectedTextRange): Calls selection Start and selectionEnd.
4713 (WebCore::AccessibilityRenderObject::setSelectedTextRange): Ditto.
4714 * html/HTMLFormControlElement.cpp:
4715 (WebCore::HTMLTextFormControlElement::selectedText): Extracted from Acce ssibilityRenderObject::selectedText.
4716 (WebCore::hasVisibleTextArea): Added.
4717 (WebCore::HTMLTextFormControlElement::setSelectionRange): Merged with th e function of the same name in RenderTextControl.
4718 (WebCore::HTMLTextFormControlElement::selectionStart): Calls computeSele ctionStart instead of RenderTextControl::selectionStart.
4719 (WebCore::HTMLTextFormControlElement::computeSelectionStart): Moved from RenderTextControl::selectionStart.
4720 (WebCore::HTMLTextFormControlElement::selectionEnd): Calls computeSelect ionEnd instead of RenderText::selectionEnd.
4721 (WebCore::HTMLTextFormControlElement::computeSelectionEnd): Moved from R enderTextControl::selectionStart.
4722 (WebCore::setContainerAndOffsetForRange): Moved from RenderTextControl.c pp.
4723 (WebCore::HTMLTextFormControlElement::selection): Merged with the functi on of the same name in RenderTextControl.
4724 (WebCore::HTMLTextFormControlElement::restoreCachedSelection): Calls com puteSelectionStart and computeSelectionEnd instead of
4725 RenderTextControl::selectionStart and RenderTextControl::selectionEnd.
4726 (WebCore::HTMLTextFormControlElement::selectionChanged): Calls selection Start and selectionEnd.
4727 * html/HTMLFormControlElement.h:
4728 * html/HTMLInputElement.cpp:
4729 (WebCore::HTMLInputElement::setValue): Calls setSelectionRange.
4730 * rendering/RenderTextControl.cpp:
4731 (WebCore::RenderTextControl::textFormControlElement): Added.
4732 * rendering/RenderTextControl.h:
4733
4734 2011-07-11 Andreas Kling <kling@webkit.org>
4735
4736 Reviewed by Oliver Hunt.
4737
4738 Canvas: Use fast, approximate dirty rects for stroke()
4739 https://bugs.webkit.org/show_bug.cgi?id=59764
4740
4741 No new tests, this is an optimization.
4742
4743 * html/canvas/CanvasRenderingContext2D.cpp:
4744 (WebCore::CanvasRenderingContext2D::stroke): Instead of using
4745 Path::strokeBoundingRect() to calculate the exact bounding rect
4746 for a path stroke, get the Path::boundingRect() and inflate it by
4747 miterLimit + lineWidth to get a slightly oversized dirty rect
4748 in a fraction of the time.
4749
4750 2011-07-11 Andrey Kosyakov <caseq@chromium.org>
4751
4752 Reviewed by Pavel Feldman.
4753
4754 Web Inspector: [refactoring] Remove dependencies of components requiring network resource list from network panel
4755 https://bugs.webkit.org/show_bug.cgi?id=62477
4756
4757 * inspector/front-end/AuditsPanel.js:
4758 * inspector/front-end/ExtensionServer.js:
4759 (WebInspector.ExtensionServer):
4760 (WebInspector.ExtensionServer.prototype._inspectedURLChanged):
4761 (WebInspector.ExtensionServer.prototype._onGetHAR):
4762 (WebInspector.ExtensionServer.prototype.initExtensions):
4763 * inspector/front-end/HAREntry.js:
4764 (WebInspector.HARLog):
4765 (WebInspector.HARLog.prototype.build):
4766 * inspector/front-end/NetworkManager.js:
4767 (WebInspector.NetworkLog):
4768 (WebInspector.NetworkLog.prototype.get resources):
4769 (WebInspector.NetworkLog.prototype._onInspectedURLChanged):
4770 (WebInspector.NetworkLog.prototype._onResourceStarted):
4771 * inspector/front-end/NetworkPanel.js:
4772 (WebInspector.NetworkPanel.prototype._reset):
4773 (WebInspector.NetworkPanel.prototype._copyAll):
4774 (WebInspector.NetworkPanel.prototype._exportAll):
4775 * inspector/front-end/inspector.js:
4776 (WebInspector.reset):
4777
4778 2011-07-11 Pavel Podivilov <podivilov@chromium.org>
4779
4780 Web Inspector: make SourceFrame a View.
4781 https://bugs.webkit.org/show_bug.cgi?id=64274
4782
4783 Reviewed by Pavel Feldman.
4784
4785 * inspector/front-end/SourceFrame.js:
4786 (WebInspector.SourceFrame):
4787 (WebInspector.SourceFrame.createSearchRegex):
4788 (WebInspector.SourceFrame.prototype.show):
4789 (WebInspector.SourceFrame.prototype.hide):
4790 (WebInspector.SourceFrame.prototype._beforeTextChanged):
4791 (WebInspector.SourceFrame.prototype._afterTextChanged):
4792 (WebInspector.SourceFrame.prototype._initializeTextViewer):
4793 (WebInspector.SourceFrame.prototype.performSearch.doFindSearchMatches):
4794 (WebInspector.SourceFrame.prototype.performSearch):
4795 (WebInspector.SourceFrame.prototype._populateTextAreaContextMenu):
4796 (WebInspector.SourceFrame.prototype._suggestedFileName):
4797 (WebInspector.SourceFrame.prototype._doubleClick):
4798 (WebInspector.SourceFrame.prototype._cancelEditing):
4799 (WebInspector.TextViewerDelegateForSourceFrame):
4800 (WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):
4801 (WebInspector.TextViewerDelegateForSourceFrame.prototype.beforeTextChang ed):
4802 (WebInspector.TextViewerDelegateForSourceFrame.prototype.afterTextChange d):
4803 (WebInspector.TextViewerDelegateForSourceFrame.prototype.commitEditing):
4804 (WebInspector.TextViewerDelegateForSourceFrame.prototype.cancelEditing):
4805 (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateLineGut terContextMenu):
4806 (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateTextAre aContextMenu):
4807 (WebInspector.TextViewerDelegateForSourceFrame.prototype.suggestedFileNa me):
4808 * inspector/front-end/TextViewer.js:
4809 (WebInspector.TextViewerDelegate.prototype.populateLineGutterContextMenu ):
4810
4811 2011-07-11 Noel Gordon <noel.gordon@gmail.com>
4812
4813 Reviewed by Adam Roben.
4814
4815 Forward focus events to windowless plugins on the windows port.
4816 https://bugs.webkit.org/show_bug.cgi?id=62375
4817
4818 * plugins/win/PluginViewWin.cpp:
4819 (WebCore::PluginView::setFocus): Forward focus events if the plugin is w indowless.
4820
4821 2011-07-11 Shinya Kawanaka <shinyak@google.com>
4822
4823 Added accessibility notification when value is changed.
4824 https://bugs.webkit.org/show_bug.cgi?id=64256
4825
4826 Notifies the value change of range input when accessibility is enabled.
4827
4828 Reviewed by Kent Tamura.
4829
4830 Covered by existing tests.
4831
4832 * html/RangeInputType.cpp:
4833 (WebCore::RangeInputType::handleKeydownEvent):
4834 Added accessibility notification when value is changed.
4835
4836 2011-07-08 Mikhail Naganov <mnaganov@chromium.org>
4837
4838 Web Inspector: Fix resizing of sidebar pane in Timeline and Profile pane ls.
4839 https://bugs.webkit.org/show_bug.cgi?id=64161
4840
4841 Reviewed by Pavel Feldman.
4842
4843 * inspector/front-end/ProfilesPanel.js:
4844 (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
4845 * inspector/front-end/TimelineOverviewPane.js:
4846 (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
4847
4848 2011-07-11 Pavel Feldman <pfeldman@google.com>
4849
4850 Web Inspector: [REGRESSION r89753-89754] highlight does not respect scro ller location.
4851 https://bugs.webkit.org/show_bug.cgi?id=63982
4852
4853 Rolling out 89760, 89756, 89754, 89753 for breaking inspector highlight.
4854
4855 Reviewed by Yury Semikhatsky.
4856
4857 * WebCore.exp.in:
4858 * inspector/DOMNodeHighlighter.cpp:
4859 (WebCore::DOMNodeHighlighter::drawNodeHighlight):
4860 * page/FrameView.cpp:
4861 * page/FrameView.h:
4862 * platform/ScrollView.h:
4863 * platform/Widget.cpp:
4864 * platform/Widget.h:
4865 * rendering/RenderBox.cpp:
4866 (WebCore::RenderBox::mapLocalToContainer):
4867 * rendering/RenderBox.h:
4868 * rendering/RenderInline.cpp:
4869 (WebCore::RenderInline::mapLocalToContainer):
4870 * rendering/RenderInline.h:
4871 * rendering/RenderObject.cpp:
4872 (WebCore::RenderObject::mapLocalToContainer):
4873 (WebCore::RenderObject::localToContainerQuad):
4874 * rendering/RenderObject.h:
4875 (WebCore::RenderObject::localToAbsoluteQuad):
4876 * rendering/RenderView.cpp:
4877 (WebCore::RenderView::mapLocalToContainer):
4878 * rendering/RenderView.h:
4879 * rendering/svg/RenderSVGForeignObject.cpp:
4880 (WebCore::RenderSVGForeignObject::mapLocalToContainer):
4881 * rendering/svg/RenderSVGForeignObject.h:
4882 * rendering/svg/RenderSVGInline.cpp:
4883 (WebCore::RenderSVGInline::mapLocalToContainer):
4884 * rendering/svg/RenderSVGInline.h:
4885 * rendering/svg/RenderSVGModelObject.cpp:
4886 (WebCore::RenderSVGModelObject::mapLocalToContainer):
4887 * rendering/svg/RenderSVGModelObject.h:
4888 * rendering/svg/RenderSVGRoot.cpp:
4889 (WebCore::RenderSVGRoot::mapLocalToContainer):
4890 * rendering/svg/RenderSVGRoot.h:
4891 * rendering/svg/RenderSVGText.cpp:
4892 (WebCore::RenderSVGText::mapLocalToContainer):
4893 * rendering/svg/RenderSVGText.h:
4894 * rendering/svg/SVGRenderSupport.cpp:
4895 (WebCore::SVGRenderSupport::mapLocalToContainer):
4896 * rendering/svg/SVGRenderSupport.h:
4897
4898 2011-07-11 Mustafizur Rahaman <mustaf.here@gmail.com>
4899
4900 Reviewed by James Robinson.
4901
4902 Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.fill.destinat ion-atop.html
4903 https://bugs.webkit.org/show_bug.cgi?id=48292
4904
4905 and
4906
4907 Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.pattern.desti nation-atop.html
4908 https://bugs.webkit.org/show_bug.cgi?id=48302
4909
4910 * html/canvas/CanvasRenderingContext2D.cpp:
4911 (WebCore::CanvasRenderingContext2D::shouldDisplayTransparencyElsewhere): Added CompositeDestinationAtop
4912 to draw transparency elsewhere for destination-atop
4913
4914 2011-07-08 Mikhail Naganov <mnaganov@chromium.org>
4915
4916 Web Inspector: [Chromium] Get rid of flickering "Please wait" message in Heap profiler.
4917 https://bugs.webkit.org/show_bug.cgi?id=61175
4918
4919 The message has been replaced with spinner icons appearing instead of pr ofile's
4920 icon. As each profile owns a worker, they run independently, and there c an be
4921 multiple spinners at the same time.
4922
4923 Reviewed by Pavel Feldman.
4924
4925 * WebCore.gypi:
4926 * WebCore.vcproj/WebCore.vcproj:
4927 * inspector/front-end/DetailedHeapshotGridNodes.js:
4928 (WebInspector.HeapSnapshotGridNode.prototype._populate.sorted):
4929 (WebInspector.HeapSnapshotGridNode.prototype._populate):
4930 (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.childrenRe trieved):
4931 (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
4932 * inspector/front-end/DetailedHeapshotView.js:
4933 (WebInspector.HeapSnapshotSortableDataGrid.prototype.sortingChanged):
4934 (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext):
4935 (WebInspector.HeapSnapshotRetainingPathsList.prototype.searchCancelled):
4936 (WebInspector.DetailedHeapshotView.profileCallback):
4937 (WebInspector.DetailedHeapshotView):
4938 (WebInspector.DetailedHeapshotView.prototype._changeBase.baseProfileLoad ed):
4939 (WebInspector.DetailedHeapshotView.prototype._changeBase):
4940 (WebInspector.DetailedHeapshotView.prototype.processLoadedSnapshot):
4941 (WebInspector.DetailedHeapshotView.prototype._changeView):
4942 * inspector/front-end/HeapSnapshotProxy.js:
4943 (WebInspector.HeapSnapshotWorker):
4944 (WebInspector.HeapSnapshotWorker.prototype.dispose):
4945 (WebInspector.HeapSnapshotWorker.prototype.startCheckingForLongRunningCa lls):
4946 (WebInspector.HeapSnapshotWorker.prototype._checkLongRunningCalls):
4947 (WebInspector.HeapSnapshotProxyObject.prototype.callMethod):
4948 (WebInspector.HeapSnapshotProxyObject.prototype.get worker):
4949 * inspector/front-end/Images/spinnerActive.gif: Added. Generated using a jaxload.info.
4950 * inspector/front-end/Images/spinnerActiveSelected.gif: Added. Generated using ajaxload.info.
4951 * inspector/front-end/Images/spinnerInactive.gif: Added. Generated using ajaxload.info.
4952 * inspector/front-end/Images/spinnerInactiveSelected.gif: Added. Generat ed using ajaxload.info.
4953 * inspector/front-end/PleaseWaitMessage.js: Removed.
4954 * inspector/front-end/ProfilesPanel.js:
4955 (WebInspector.ProfilesPanel.prototype._addProfileHeader):
4956 (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot.setProfileWait):
4957 (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot):
4958 (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.parsed):
4959 (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
4960 (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
4961 * inspector/front-end/SidebarTreeElement.js:
4962 (WebInspector.SidebarTreeElement.prototype.set wait):
4963 * inspector/front-end/WebKit.qrc:
4964 * inspector/front-end/heapProfiler.css:
4965 (.heap-snapshot-sidebar-tree-item.wait .icon):
4966 (.heap-snapshot-sidebar-tree-item.wait.selected .icon):
4967 (body.inactive .heap-snapshot-sidebar-tree-item.wait .icon):
4968 (body.inactive .heap-snapshot-sidebar-tree-item.wait.selected .icon):
4969 * inspector/front-end/inspector.html:
4970
4971 2011-07-10 Patrick Gansterer <paroga@webkit.org>
4972
4973 Generate conditional include statements in CodeGeneratorJS
4974 https://bugs.webkit.org/show_bug.cgi?id=64231
4975
4976 Reviewed by Brent Fulgham.
4977
4978 Suround headers with a correspondig #if ENABLE() line.
4979 This allows us to generate bindings only of required IDL files.
4980
4981 Changing the current preprocessor statements to the Conditional attribut e
4982 in a next step helps in getting rid of calls to the preprocessor,
4983 which causes so much pain on a natvie Windows environment.
4984
4985 * bindings/scripts/CodeGeneratorJS.pm:
4986 (GenerateImplementation):
4987 (WriteData):
4988
4989 2011-07-10 Patrick Gansterer <paroga@webkit.org>
4990
4991 Remove array size from generated JSC binding tables
4992 https://bugs.webkit.org/show_bug.cgi?id=64229
4993
4994 Reviewed by Brent Fulgham.
4995
4996 Because many items in the array are surrounded with #if(ENABLE_XXX) line s,
4997 the array size isn't fix and correct in all cases.
4998 So let the compiler calculate the correct size itself.
4999
5000 * bindings/scripts/CodeGeneratorJS.pm:
5001 (GenerateHashTable):
5002 * bindings/scripts/test/JS/JSTestInterface.cpp:
5003 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
5004 * bindings/scripts/test/JS/JSTestObj.cpp:
5005 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
5006
5007 2011-07-10 Kenichi Ishibashi <bashi@chromium.org>
5008
5009 Let plugins participate in form submission
5010 https://bugs.webkit.org/show_bug.cgi?id=13061
5011
5012 Implements HTMLObjectElement::appendFormData() so that object
5013 elements respond as form associated elements.
5014
5015 Reviewed by Anders Carlsson.
5016
5017 Test: plugins/form-value.html
5018
5019 * html/HTMLObjectElement.cpp:
5020 (WebCore::HTMLObjectElement::appendFormData): Implemented.
5021 * plugins/PluginViewBase.h:
5022 (WebCore::PluginViewBase::getFormValue): Added.
5023
5024 2011-07-10 Anders Carlsson <andersca@apple.com>
5025
5026 WebKit2 is leaking NSCursors created by leakNamedCursor
5027 https://bugs.webkit.org/show_bug.cgi?id=64241
5028 <rdar://problem/9507151>
5029
5030 Reviewed by Oliver Hunt.
5031
5032 * platform/mac/CursorMac.mm:
5033 (WebCore::createNamedCursor):
5034 Rename this from leakNamedCursor to createNamedCursor and make it return a
5035 RetainPtr<NSCursor> instead of a raw pointer.
5036
5037 (WebCore::Cursor::ensurePlatformCursor):
5038 Don't leak cursors here. We still won't deallocate cursors during shutdo wn (which leakNamedCursor
5039 was said to prevent) because the cursor singletons are all allocated fro m the heap and are never destroyed
5040 anyway.
5041
5042 2011-07-10 Yuta Kitamura <yutak@chromium.org>
5043
5044 WebSocket: Add useHixie76Protocol flag to WebSocketChannel and WebSocket Handshake
5045 https://bugs.webkit.org/show_bug.cgi?id=64244
5046
5047 Reviewed by Kent Tamura.
5048
5049 Get the value of Settings::useHixie76WebSocketProtocol() and save it in
5050 WebSocketChannel and WebSocketHandshake instances. Obtained flag value
5051 is not used for now.
5052
5053 No behavior change, thus no new tests.
5054
5055 * websockets/WebSocketChannel.cpp:
5056 (WebCore::WebSocketChannel::WebSocketChannel):
5057 WebSocketChannel is always created in context of Document (see
5058 ThreadableWebSocketChannel::create()).
5059 Because m_useHixie76Protocol must be passed to WebSocketHandshake
5060 constructor, WebSocketHandshake instance is allocated dynamically
5061 and stored in OwnPtr.
5062 (WebCore::WebSocketChannel::connect):
5063 (WebCore::WebSocketChannel::fail):
5064 (WebCore::WebSocketChannel::disconnect):
5065 (WebCore::WebSocketChannel::didOpen):
5066 (WebCore::WebSocketChannel::didFail):
5067 (WebCore::WebSocketChannel::processBuffer):
5068 * websockets/WebSocketChannel.h:
5069 * websockets/WebSocketHandshake.cpp:
5070 (WebCore::WebSocketHandshake::WebSocketHandshake):
5071 * websockets/WebSocketHandshake.h:
5072
5073 2011-07-10 Tom Hudson <tomhudson@google.com>
5074
5075 Reviewed by James Robinson.
5076
5077 GraphicsContextSkia::drawConvexPolygon doesn't pay attention to shouldAn tialias
5078 https://bugs.webkit.org/show_bug.cgi?id=61369
5079
5080 * platform/graphics/skia/GraphicsContextSkia.cpp:
5081 (WebCore::GraphicsContext::drawConvexPolygon): Pass the
5082 shouldAntialias parameter on to Skia.
5083
5084 2011-07-10 Yuzo Fujishima <yuzo@google.com>
5085
5086 Fix for Bug 63968 - Add comment to explain Vector usage in FontCache::pu rgeInactiveFontData
5087 https://bugs.webkit.org/show_bug.cgi?id=63968
5088
5089 Reviewed by Dan Bernstein.
5090
5091 No new tests because this changes comments only.
5092
5093 * platform/graphics/FontCache.cpp:
5094 (WebCore::FontCache::purgeInactiveFontData): Add explanation why SimpleF ontData is not deleted in the iteration loop.
5095
5096 2011-07-10 Emil A Eklund <eae@chromium.org>
5097
5098 Switch updateHitTestResult to to new layout types
5099 https://bugs.webkit.org/show_bug.cgi?id=64209
5100
5101 Reviewed by Eric Seidel.
5102
5103 No new tests, no functionality changes.
5104
5105 * rendering/EllipsisBox.cpp:
5106 (WebCore::EllipsisBox::nodeAtPoint):
5107 * rendering/RenderBlock.cpp:
5108 (WebCore::RenderBlock::hitTestFloats):
5109 (WebCore::RenderBlock::updateHitTestResult):
5110 * rendering/RenderBlock.h:
5111 * rendering/RenderInline.cpp:
5112 (WebCore::RenderInline::updateHitTestResult):
5113 * rendering/RenderInline.h:
5114 * rendering/RenderLineBoxList.cpp:
5115 (WebCore::RenderLineBoxList::hitTest):
5116 * rendering/RenderObject.cpp:
5117 (WebCore::RenderObject::updateHitTestResult):
5118 * rendering/RenderObject.h:
5119 * rendering/RenderView.cpp:
5120 (WebCore::RenderView::updateHitTestResult):
5121 * rendering/RenderView.h:
5122 * rendering/svg/RenderSVGContainer.cpp:
5123 (WebCore::RenderSVGContainer::nodeAtFloatPoint):
5124 * rendering/svg/RenderSVGImage.cpp:
5125 (WebCore::RenderSVGImage::nodeAtFloatPoint):
5126 * rendering/svg/RenderSVGPath.cpp:
5127 (WebCore::RenderSVGPath::nodeAtFloatPoint):
5128 * rendering/svg/RenderSVGRoot.cpp:
5129 (WebCore::RenderSVGRoot::nodeAtPoint):
5130
5131 2011-07-10 Patrick Gansterer <paroga@webkit.org>
5132
5133 Reviewed by Adam Barth.
5134
5135 Fix member variable order of ContextMenuItem
5136 https://bugs.webkit.org/show_bug.cgi?id=59905
5137
5138 Use the same order at decleration and assignment to silence compiler war ning.
5139
5140 * platform/ContextMenuItem.h:
5141
5142 2011-07-10 Dan Bernstein <mitz@apple.com>
5143
5144 <rdar://problem/9750062> REGRESSION: Button text missing in many iTunes Store pages
5145 https://bugs.webkit.org/show_bug.cgi?id=64236
5146
5147 Reviewed by Maciej Stachowiak.
5148
5149 Test: fast/css/empty-display-none.html
5150
5151 When an :empty selector caused an element to not have a renderer, the ch eck for empty style
5152 change when finishing parsing the elemenet did nothing, because it could not check if the
5153 element’s current style was affected by :empty. The fix is to record the fact that the style
5154 was affected by :empty in ElementRareData in the no-renderer case.
5155
5156 * dom/Element.cpp:
5157 (WebCore::Element::recalcStyle): Clear the m_styleAffectedByEmpty flag.
5158 (WebCore::checkForEmptyStyleChange): If the style is null (meaning there is no renderer), check
5159 Element::styleAffectedByEmpty().
5160 (WebCore::Element::setStyleAffectedByEmpty): Added. Sets the flag in rar e data.
5161 (WebCore::Element::styleAffectedByEmpty): Added. Checks for the flag in rare data.
5162 * dom/Element.h:
5163 * dom/ElementRareData.h:
5164 (WebCore::ElementRareData::ElementRareData): Added m_styleAffectedByEmpt y and initialized it
5165 to false.
5166 * dom/NodeRenderingContext.cpp:
5167 (WebCore::NodeRendererFactory::createRendererAndStyle): If an element do esn’t need a renderer
5168 and its style is affected by :empty, record this fact in the element by calling setStyleAffectedByEmpty().
5169
5170 2011-07-10 Mark Rowe <mrowe@apple.com>
5171
5172 Fix the build.
5173
5174 * svg/properties/SVGAttributeToPropertyMap.h: Forward-declare SVGPropert yInfo as a struct
5175 since that's what it is.
5176
5177 2011-07-09 Patrick Gansterer <paroga@webkit.org>
5178
5179 Unreviewed WinCE build fix for r90680.
5180
5181 Repeat the change done in r90681 for all other SVGAnimated*PropertyTearO ff.h files.
5182
5183 * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h: Make create pu blic and remove friendship with SVGAnimatedProperty.
5184 * svg/properties/SVGAnimatedListPropertyTearOff.h: Ditto.
5185 * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Ditto.
5186 * svg/properties/SVGAnimatedPropertyTearOff.h: Ditto.
5187 * svg/properties/SVGAnimatedTransformListPropertyTearOff.h: Ditto.
5188
5189 2011-07-09 Nikolas Zimmermann <nzimmermann@rim.com>
5190
5191 Add a possibility to retrieve the associated SVGAnimatedProperty object for a certain XML attribute
5192 https://bugs.webkit.org/show_bug.cgi?id=63797
5193
5194 Fix WinCE build. Funny none other platform complained.
5195
5196 * svg/properties/SVGAnimatedStaticPropertyTearOff.h: Make create public, SVGAnimatedProperty needs it - remove friendship with it.
5197
5198 2011-07-09 Nikolas Zimmermann <nzimmermann@rim.com>
5199
5200 Add a possibility to retrieve the associated SVGAnimatedProperty object for a certain XML attribute
5201 https://bugs.webkit.org/show_bug.cgi?id=63797
5202
5203 Reviewed by Dirk Schulze.
5204
5205 In order to prepare animVal support we need a way to map a given SVG DOM attribute to a SVGAnimatedProperty.
5206 eg. SVGNames::xAttr -> SVGRectElement::xAnimated(), etc. This will be ne eded to update the animVal of the
5207 SVGAnimatedProperty, if an animation is running. It would required addin g a new method to all SVG* classes
5208 that define animated properties. Unfortunately we already have lots of r epeated code in methods like
5209 synchronizeProperty / fillAttributeToPropertyTypeMap. Look at SVGRectEle ment for example:
5210
5211 void SVGRectElement::synchronizeProperty(const QualifiedName& attrName)
5212 {
5213 if (attrName == anyQName()) {
5214 synchronizeX();
5215 synchronizeY();
5216 ...
5217 }
5218
5219 if (attrName == SVGNames::xAttr) {
5220 synchronizeX();
5221 return;
5222 }
5223
5224 if (attrName == SVGNames::yAttr) {
5225 synchronizeY();
5226 return;
5227 }
5228 ...
5229 }
5230
5231 or
5232
5233 void SVGRectElement::fillAttributeToPropertyTypeMap()
5234 {
5235 AttributeToPropertyTypeMap& attributeToPropertyTypeMap = this->attri buteToPropertyTypeMap();
5236
5237 SVGStyledTransformableElement::fillPassedAttributeToPropertyTypeMap( attributeToPropertyTypeMap);
5238 attributeToPropertyTypeMap.set(SVGNames::xAttr, AnimatedLength);
5239 attributeToPropertyTypeMap.set(SVGNames::yAttr, AnimatedLength);
5240 ...
5241 }
5242
5243 These lookups are all performed dynamically. Each synchronizeProperty() call does a lot of comparisons.
5244 fillAttributeToPropertyTypeMap() isn't that bad as the result is cached in a static HashMap per-SVGRectElement.
5245 There's no reason to do these things dynamically!
5246
5247 Inspired by JSC, I'm adding a "static const SVGPropertyInfo s_fooPropert yInfo" object for each animated SVG property.
5248 For example, for SVGRectElements SVGAnimatedLength x property we're stor ing:
5249 - "AnimatedPropertyType type" (AnimatedLength -- note the enum was named AnimatedAttributeType, I renamed it to AnimatedPropertyType for clarity)
5250 - "const QualifiedName& attributeName" (SVGNames::xAttr)
5251 - "const AtomicString& propertyIdentifier" (SVGNames::xAttr.localName() -- only different if N-wrappers map to a single XML DOM attribute, eg. orientAtt r)
5252 - "SynchronizeProperty synchronizeProperty" (callback to SVGRectElement: :synchronizeX)
5253 - "LookupOrCreateWrapperForAnimatedProperty lookupOrCreateWrapperForAnim atedProperty" (callback to SVGRectElement::xAnimated)
5254
5255 Using this information, we can replace all the various synchronizeProper ty/fillAttributeToPropertyMap implementations, with a single one in SVGElement.
5256 All these are auto-generated, using the standard macros used to define/d eclare SVG animated properties. This required several changes to the macros.
5257 Here's a summary:
5258
5259 #1) In all headers, wrap DECLARE_ANIMATED_* calls, in BEGIN_DECLARE_ANIM ATED_PROPERTIES(ClassName) / END_DECLARE_ANIMATED_PROPERTIES blocks.
5260
5261 Sample change for SVGRectElement:
5262 - DECLARE_ANIMATED_LENGTH(X, x)
5263 - DECLARE_ANIMATED_LENGTH(Y, y)
5264 - ...
5265
5266 + BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGRectElement)
5267 + DECLARE_ANIMATED_LENGTH(X, x)
5268 + DECLARE_ANIMATED_LENGTH(Y, y)
5269 + ...
5270 + END_DECLARE_ANIMATED_PROPERTIES
5271
5272 #2) In all cpp files, add a new section wrapped in BEGIN_REGISTER_ANIMAT ED_PROPERTIES(ClassName / END_REGISTER_ANIMATED_PROPERTIES blocks:
5273
5274 Sample change for SVGRectElement:
5275 +BEGIN_REGISTER_ANIMATED_PROPERTIES(SVGRectElement)
5276 + REGISTER_LOCAL_ANIMATED_PROPERTY(x)
5277 + REGISTER_LOCAL_ANIMATED_PROPERTY(y)
5278 + ...
5279 + REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledTransformableEleme nt)
5280 + REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests)
5281 +END_REGISTER_ANIMATED_PROPERTIES
5282
5283 This is the main piece of the logic that replaces the manual synchro nizeProperty/fillAttributeToPropertyMap implementation. It expands to following:
5284
5285 SVGAttributeToPropertyMap& SVGRectElement::attributeToPropertyMap()
5286 {
5287 DEFINE_STATIC_LOCAL(SVGAttributeToPropertyMap, s_attributeToProp ertyMap, ());
5288 }
5289
5290 static void registerAnimatedPropertiesForSVGRectElement()
5291 {
5292 SVGAttributeToPropertyMap& map = SVGRectElement::attributeToProp ertyMap();
5293 if (!map.isEmpty())
5294 return;
5295 map.addProperty(SVGRectElement::xPropertyInfo());
5296 map.addProperty(SVGRectElement::yPropertyInfo());
5297 ...
5298 map.addProperties(SVGStyledTransformableElement::attributeToProp ertyMap());
5299 map.addProperties(SVGTests::attributeToPropertyMap());
5300 }
5301
5302 A single-instance of SVGAttributeToPropertyMap is created for each S VG*Element. The constructor of SVGRectElement is supposed to call
5303 registerAnimatedPropertiesForSVGRectElement(), which collects all pr operties of SVGRectElement and all its parent classes and stores them
5304 in a Vector<const SVGPropertyInfo*>. This Vector is stored in a Hash Map<QualifiedName, Vector<const SVGPropertyInfo*> > where the key
5305 is the attribute name (eg. SVGNames::xAttr -> SVGRectElement::xPrope rtyInfo). This is only done _once_ per SVGRectElement.
5306
5307 SVGElement contains a "virtual SVGAttributeToPropertyMap& localAttri buteToPropertyMap()" method, and SVGRectElement overrides it
5308 and returns SVGRectElement::attributeToPropertyMap() (which is stati c!) -- this is hidden again in the macros, no need to write any code.
5309
5310 SVGAttributeToPropertyMap provides following API:
5311 - bool synchronizeProperty(SVGElement* contextElement, const Qualifi edName& attributeName)
5312 - void synchronizeProperties(SVGElement* contextElement)
5313
5314 A generic way to synchronize a SVGAnimatedProperty with its XML DOM attribute. Any SVG DOM change to eg. <rect>s x property will now trigger
5315 contextElement->localAttributeToPropertyMap().synchronizePropert y(this, SVGNames::xAttr)
5316 The SVGAttributeToPropertyMap will ask its HashMap for the Vecto r containing the properties for SVGNames::xAttr (in that case, just one xAnimate d()).
5317
5318 - void animatedPropertyTypeForAttribute(const QualifiedName& attribu teName, Vector<AnimatedPropertyType>& propertyTypes)
5319
5320 This method replaces the fillAttributeToPropertyMap implementati ons everywhere.
5321
5322 - void animatedPropertiesForAttribute(SVGElement* contextElement, co nst QualifiedName& attributeName, Vector<RefPtr<SVGAnimatedProperty> >& properti es);
5323
5324 This method is not used yet, but allows us to collect all SVGAni matedProperties for a QualifiedName -- the initial goal for this patch.
5325
5326 #3) In all cpp files, add a call to "registerAnimatedPropertiesForClassN ame()" in the constructor. Forgetting this will result in a compile error.
5327
5328 Doesn't affect any tests.
5329
5330 * CMakeLists.txt:
5331 * GNUmakefile.list.am:
5332 * WebCore.gypi:
5333 * WebCore.pro:
5334 * WebCore.vcproj/WebCore.vcproj:
5335 * WebCore.xcodeproj/project.pbxproj:
5336 * bindings/scripts/CodeGeneratorJS.pm:
5337 (NativeToJSValue):
5338 * bindings/scripts/CodeGeneratorObjC.pm:
5339 (GenerateImplementation):
5340 * bindings/scripts/CodeGeneratorV8.pm:
5341 (GenerateNormalAttrGetter):
5342 * svg/SVGAElement.cpp:
5343 (WebCore::SVGAElement::SVGAElement):
5344 * svg/SVGAElement.h:
5345 (WebCore::SVGAElement::synchronizeRequiredFeatures):
5346 (WebCore::SVGAElement::synchronizeRequiredExtensions):
5347 (WebCore::SVGAElement::synchronizeSystemLanguage):
5348 * svg/SVGAltGlyphElement.cpp:
5349 (WebCore::SVGAltGlyphElement::SVGAltGlyphElement):
5350 * svg/SVGAltGlyphElement.h:
5351 * svg/SVGAnimateElement.cpp:
5352 (WebCore::SVGAnimateElement::SVGAnimateElement):
5353 (WebCore::SVGAnimateElement::hasValidAttributeType):
5354 (WebCore::SVGAnimateElement::determineAnimatedPropertyType):
5355 (WebCore::SVGAnimateElement::determinePropertyValueTypes):
5356 (WebCore::SVGAnimateElement::calculateAnimatedValue):
5357 (WebCore::SVGAnimateElement::calculateFromAndToValues):
5358 (WebCore::SVGAnimateElement::calculateFromAndByValues):
5359 (WebCore::SVGAnimateElement::resetToBaseValue):
5360 (WebCore::SVGAnimateElement::applyResultsToTarget):
5361 (WebCore::SVGAnimateElement::calculateDistance):
5362 (WebCore::SVGAnimateElement::ensureAnimator):
5363 * svg/SVGAnimateElement.h:
5364 * svg/SVGAnimateTransformElement.cpp:
5365 (WebCore::SVGAnimateTransformElement::hasValidAttributeType):
5366 (WebCore::SVGAnimateTransformElement::determineAnimatedPropertyType):
5367 (WebCore::SVGAnimateTransformElement::resetToBaseValue):
5368 (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
5369 (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
5370 * svg/SVGAnimateTransformElement.h:
5371 * svg/SVGAnimatedAngle.h:
5372 * svg/SVGAnimatedBoolean.h:
5373 * svg/SVGAnimatedEnumeration.h:
5374 * svg/SVGAnimatedInteger.h:
5375 * svg/SVGAnimatedLength.h:
5376 * svg/SVGAnimatedLengthList.h:
5377 * svg/SVGAnimatedNumber.h:
5378 * svg/SVGAnimatedNumberList.h:
5379 * svg/SVGAnimatedPreserveAspectRatio.h:
5380 * svg/SVGAnimatedRect.h:
5381 * svg/SVGAnimatedString.h:
5382 * svg/SVGAnimatedTransformList.h:
5383 * svg/SVGAnimatedType.cpp:
5384 (WebCore::SVGAnimatedType::SVGAnimatedType):
5385 * svg/SVGAnimatedType.h:
5386 (WebCore::SVGAnimatedType::type):
5387 * svg/SVGAnimatedTypeAnimator.h:
5388 (WebCore::SVGAnimatedTypeAnimator::SVGAnimatedTypeAnimator):
5389 * svg/SVGAnimationElement.cpp:
5390 (WebCore::SVGAnimationElement::SVGAnimationElement):
5391 (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
5392 * svg/SVGAnimationElement.h:
5393 (WebCore::SVGAnimationElement::synchronizeRequiredFeatures):
5394 (WebCore::SVGAnimationElement::synchronizeRequiredExtensions):
5395 (WebCore::SVGAnimationElement::synchronizeSystemLanguage):
5396 * svg/SVGAnimatorFactory.h:
5397 (WebCore::SVGAnimatorFactory::create):
5398 * svg/SVGCircleElement.cpp:
5399 (WebCore::SVGCircleElement::SVGCircleElement):
5400 * svg/SVGCircleElement.h:
5401 (WebCore::SVGCircleElement::synchronizeRequiredFeatures):
5402 (WebCore::SVGCircleElement::synchronizeRequiredExtensions):
5403 (WebCore::SVGCircleElement::synchronizeSystemLanguage):
5404 * svg/SVGClipPathElement.cpp:
5405 (WebCore::SVGClipPathElement::SVGClipPathElement):
5406 * svg/SVGClipPathElement.h:
5407 (WebCore::SVGClipPathElement::synchronizeRequiredFeatures):
5408 (WebCore::SVGClipPathElement::synchronizeRequiredExtensions):
5409 (WebCore::SVGClipPathElement::synchronizeSystemLanguage):
5410 * svg/SVGComponentTransferFunctionElement.cpp:
5411 (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunct ionElement):
5412 * svg/SVGComponentTransferFunctionElement.h:
5413 * svg/SVGCursorElement.cpp:
5414 (WebCore::SVGCursorElement::SVGCursorElement):
5415 * svg/SVGCursorElement.h:
5416 (WebCore::SVGCursorElement::synchronizeRequiredFeatures):
5417 (WebCore::SVGCursorElement::synchronizeRequiredExtensions):
5418 (WebCore::SVGCursorElement::synchronizeSystemLanguage):
5419 * svg/SVGDefsElement.cpp:
5420 (WebCore::SVGDefsElement::SVGDefsElement):
5421 * svg/SVGDefsElement.h:
5422 (WebCore::SVGDefsElement::synchronizeRequiredFeatures):
5423 (WebCore::SVGDefsElement::synchronizeRequiredExtensions):
5424 (WebCore::SVGDefsElement::synchronizeSystemLanguage):
5425 * svg/SVGElement.cpp:
5426 (WebCore::SVGElement::animatedPropertyTypeForAttribute):
5427 (WebCore::SVGElement::updateAnimatedSVGAttribute):
5428 (WebCore::SVGElement::localAttributeToPropertyMap):
5429 (WebCore::SVGElement::synchronizeRequiredFeatures):
5430 (WebCore::SVGElement::synchronizeRequiredExtensions):
5431 (WebCore::SVGElement::synchronizeSystemLanguage):
5432 * svg/SVGElement.h:
5433 (WebCore::SVGElement::svgAttributeChanged):
5434 (WebCore::SVGElement::synchronizeRequiredFeatures):
5435 (WebCore::SVGElement::synchronizeRequiredExtensions):
5436 (WebCore::SVGElement::synchronizeSystemLanguage):
5437 * svg/SVGEllipseElement.cpp:
5438 (WebCore::SVGEllipseElement::SVGEllipseElement):
5439 * svg/SVGEllipseElement.h:
5440 (WebCore::SVGEllipseElement::synchronizeRequiredFeatures):
5441 (WebCore::SVGEllipseElement::synchronizeRequiredExtensions):
5442 (WebCore::SVGEllipseElement::synchronizeSystemLanguage):
5443 * svg/SVGFEBlendElement.cpp:
5444 (WebCore::SVGFEBlendElement::SVGFEBlendElement):
5445 * svg/SVGFEBlendElement.h:
5446 * svg/SVGFEColorMatrixElement.cpp:
5447 (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
5448 * svg/SVGFEColorMatrixElement.h:
5449 * svg/SVGFEComponentTransferElement.cpp:
5450 (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
5451 * svg/SVGFEComponentTransferElement.h:
5452 * svg/SVGFECompositeElement.cpp:
5453 (WebCore::SVGFECompositeElement::SVGFECompositeElement):
5454 * svg/SVGFECompositeElement.h:
5455 * svg/SVGFEConvolveMatrixElement.cpp:
5456 (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
5457 * svg/SVGFEConvolveMatrixElement.h:
5458 * svg/SVGFEDiffuseLightingElement.cpp:
5459 (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
5460 * svg/SVGFEDiffuseLightingElement.h:
5461 * svg/SVGFEDisplacementMapElement.cpp:
5462 (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
5463 * svg/SVGFEDisplacementMapElement.h:
5464 * svg/SVGFEDropShadowElement.cpp:
5465 (WebCore::SVGFEDropShadowElement::SVGFEDropShadowElement):
5466 * svg/SVGFEDropShadowElement.h:
5467 * svg/SVGFEFloodElement.cpp:
5468 * svg/SVGFEFloodElement.h:
5469 * svg/SVGFEGaussianBlurElement.cpp:
5470 (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
5471 * svg/SVGFEGaussianBlurElement.h:
5472 * svg/SVGFEImageElement.cpp:
5473 (WebCore::SVGFEImageElement::SVGFEImageElement):
5474 * svg/SVGFEImageElement.h:
5475 * svg/SVGFELightElement.cpp:
5476 (WebCore::SVGFELightElement::SVGFELightElement):
5477 * svg/SVGFELightElement.h:
5478 * svg/SVGFEMergeElement.cpp:
5479 * svg/SVGFEMergeElement.h:
5480 * svg/SVGFEMergeNodeElement.cpp:
5481 (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
5482 * svg/SVGFEMergeNodeElement.h:
5483 * svg/SVGFEMorphologyElement.cpp:
5484 (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
5485 * svg/SVGFEMorphologyElement.h:
5486 * svg/SVGFEOffsetElement.cpp:
5487 (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
5488 * svg/SVGFEOffsetElement.h:
5489 * svg/SVGFESpecularLightingElement.cpp:
5490 (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
5491 * svg/SVGFESpecularLightingElement.h:
5492 * svg/SVGFETileElement.cpp:
5493 (WebCore::SVGFETileElement::SVGFETileElement):
5494 * svg/SVGFETileElement.h:
5495 * svg/SVGFETurbulenceElement.cpp:
5496 (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
5497 * svg/SVGFETurbulenceElement.h:
5498 * svg/SVGFilterElement.cpp:
5499 (WebCore::SVGFilterElement::SVGFilterElement):
5500 * svg/SVGFilterElement.h:
5501 * svg/SVGFilterPrimitiveStandardAttributes.cpp:
5502 (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStanda rdAttributes):
5503 * svg/SVGFilterPrimitiveStandardAttributes.h:
5504 * svg/SVGFitToViewBox.cpp:
5505 * svg/SVGFitToViewBox.h:
5506 * svg/SVGFontElement.cpp:
5507 (WebCore::SVGFontElement::SVGFontElement):
5508 * svg/SVGFontElement.h:
5509 (WebCore::SVGFontElement::rendererIsNeeded):
5510 * svg/SVGForeignObjectElement.cpp:
5511 (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
5512 * svg/SVGForeignObjectElement.h:
5513 (WebCore::SVGForeignObjectElement::synchronizeRequiredFeatures):
5514 (WebCore::SVGForeignObjectElement::synchronizeRequiredExtensions):
5515 (WebCore::SVGForeignObjectElement::synchronizeSystemLanguage):
5516 * svg/SVGGElement.cpp:
5517 (WebCore::SVGGElement::SVGGElement):
5518 * svg/SVGGElement.h:
5519 (WebCore::SVGGElement::synchronizeRequiredFeatures):
5520 (WebCore::SVGGElement::synchronizeRequiredExtensions):
5521 (WebCore::SVGGElement::synchronizeSystemLanguage):
5522 * svg/SVGGlyphElement.cpp:
5523 * svg/SVGGlyphElement.h:
5524 * svg/SVGGradientElement.cpp:
5525 (WebCore::SVGGradientElement::SVGGradientElement):
5526 (WebCore::SVGGradientElement::svgAttributeChanged):
5527 * svg/SVGGradientElement.h:
5528 * svg/SVGImageElement.cpp:
5529 (WebCore::SVGImageElement::SVGImageElement):
5530 * svg/SVGImageElement.h:
5531 (WebCore::SVGImageElement::synchronizeRequiredFeatures):
5532 (WebCore::SVGImageElement::synchronizeRequiredExtensions):
5533 (WebCore::SVGImageElement::synchronizeSystemLanguage):
5534 * svg/SVGLineElement.cpp:
5535 (WebCore::SVGLineElement::SVGLineElement):
5536 * svg/SVGLineElement.h:
5537 (WebCore::SVGLineElement::synchronizeRequiredFeatures):
5538 (WebCore::SVGLineElement::synchronizeRequiredExtensions):
5539 (WebCore::SVGLineElement::synchronizeSystemLanguage):
5540 * svg/SVGLinearGradientElement.cpp:
5541 (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
5542 * svg/SVGLinearGradientElement.h:
5543 * svg/SVGMPathElement.cpp:
5544 (WebCore::SVGMPathElement::SVGMPathElement):
5545 * svg/SVGMPathElement.h:
5546 * svg/SVGMarkerElement.cpp:
5547 (WebCore::SVGMarkerElement::orientTypePropertyInfo):
5548 (WebCore::SVGMarkerElement::SVGMarkerElement):
5549 (WebCore::SVGMarkerElement::setOrientToAuto):
5550 (WebCore::SVGMarkerElement::setOrientToAngle):
5551 (WebCore::SVGMarkerElement::synchronizeOrientType):
5552 (WebCore::SVGMarkerElement::lookupOrCreateOrientTypeWrapper):
5553 (WebCore::SVGMarkerElement::orientTypeAnimated):
5554 * svg/SVGMarkerElement.h:
5555 * svg/SVGMaskElement.cpp:
5556 (WebCore::SVGMaskElement::SVGMaskElement):
5557 * svg/SVGMaskElement.h:
5558 (WebCore::SVGMaskElement::synchronizeRequiredFeatures):
5559 (WebCore::SVGMaskElement::synchronizeRequiredExtensions):
5560 (WebCore::SVGMaskElement::synchronizeSystemLanguage):
5561 * svg/SVGMissingGlyphElement.cpp:
5562 * svg/SVGMissingGlyphElement.h:
5563 * svg/SVGPathElement.cpp:
5564 (WebCore::SVGPathElement::dPropertyInfo):
5565 (WebCore::SVGPathElement::SVGPathElement):
5566 (WebCore::SVGPathElement::svgAttributeChanged):
5567 (WebCore::SVGPathElement::lookupOrCreateDWrapper):
5568 (WebCore::SVGPathElement::synchronizeD):
5569 (WebCore::SVGPathElement::pathSegList):
5570 (WebCore::SVGPathElement::animatedPathSegList):
5571 * svg/SVGPathElement.h:
5572 (WebCore::SVGPathElement::pathByteStream):
5573 (WebCore::SVGPathElement::synchronizeRequiredFeatures):
5574 (WebCore::SVGPathElement::synchronizeRequiredExtensions):
5575 (WebCore::SVGPathElement::synchronizeSystemLanguage):
5576 * svg/SVGPathSegWithContext.h:
5577 (WebCore::SVGPathSegWithContext::animatedProperty):
5578 * svg/SVGPatternElement.cpp:
5579 (WebCore::SVGPatternElement::SVGPatternElement):
5580 * svg/SVGPatternElement.h:
5581 (WebCore::SVGPatternElement::synchronizeRequiredFeatures):
5582 (WebCore::SVGPatternElement::synchronizeRequiredExtensions):
5583 (WebCore::SVGPatternElement::synchronizeSystemLanguage):
5584 * svg/SVGPolyElement.cpp:
5585 (WebCore::SVGPolyElement::pointsPropertyInfo):
5586 (WebCore::SVGPolyElement::SVGPolyElement):
5587 (WebCore::SVGPolyElement::parseMappedAttribute):
5588 (WebCore::SVGPolyElement::synchronizePoints):
5589 (WebCore::SVGPolyElement::lookupOrCreatePointsWrapper):
5590 (WebCore::SVGPolyElement::points):
5591 (WebCore::SVGPolyElement::animatedPoints):
5592 * svg/SVGPolyElement.h:
5593 (WebCore::SVGPolyElement::synchronizeRequiredFeatures):
5594 (WebCore::SVGPolyElement::synchronizeRequiredExtensions):
5595 (WebCore::SVGPolyElement::synchronizeSystemLanguage):
5596 * svg/SVGRadialGradientElement.cpp:
5597 (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
5598 * svg/SVGRadialGradientElement.h:
5599 * svg/SVGRectElement.cpp:
5600 (WebCore::SVGRectElement::SVGRectElement):
5601 * svg/SVGRectElement.h:
5602 (WebCore::SVGRectElement::synchronizeRequiredFeatures):
5603 (WebCore::SVGRectElement::synchronizeRequiredExtensions):
5604 (WebCore::SVGRectElement::synchronizeSystemLanguage):
5605 * svg/SVGSVGElement.cpp:
5606 (WebCore::SVGSVGElement::SVGSVGElement):
5607 * svg/SVGSVGElement.h:
5608 (WebCore::SVGSVGElement::synchronizeRequiredFeatures):
5609 (WebCore::SVGSVGElement::synchronizeRequiredExtensions):
5610 (WebCore::SVGSVGElement::synchronizeSystemLanguage):
5611 * svg/SVGScriptElement.cpp:
5612 (WebCore::SVGScriptElement::SVGScriptElement):
5613 * svg/SVGScriptElement.h:
5614 * svg/SVGStopElement.cpp:
5615 (WebCore::SVGStopElement::SVGStopElement):
5616 * svg/SVGStopElement.h:
5617 * svg/SVGStyledElement.cpp:
5618 (WebCore::SVGStyledElement::SVGStyledElement):
5619 (WebCore::cssPropertyToTypeMap):
5620 (WebCore::SVGStyledElement::animatedPropertyTypeForAttribute):
5621 * svg/SVGStyledElement.h:
5622 * svg/SVGStyledTransformableElement.cpp:
5623 (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
5624 * svg/SVGStyledTransformableElement.h:
5625 * svg/SVGSwitchElement.cpp:
5626 (WebCore::SVGSwitchElement::SVGSwitchElement):
5627 * svg/SVGSwitchElement.h:
5628 (WebCore::SVGSwitchElement::synchronizeRequiredFeatures):
5629 (WebCore::SVGSwitchElement::synchronizeRequiredExtensions):
5630 (WebCore::SVGSwitchElement::synchronizeSystemLanguage):
5631 * svg/SVGSymbolElement.cpp:
5632 (WebCore::SVGSymbolElement::SVGSymbolElement):
5633 * svg/SVGSymbolElement.h:
5634 * svg/SVGTRefElement.cpp:
5635 (WebCore::SVGTRefElement::SVGTRefElement):
5636 * svg/SVGTRefElement.h:
5637 * svg/SVGTSpanElement.cpp:
5638 * svg/SVGTSpanElement.h:
5639 * svg/SVGTests.cpp:
5640 (WebCore::SVGTests::requiredFeaturesPropertyInfo):
5641 (WebCore::SVGTests::requiredExtensionsPropertyInfo):
5642 (WebCore::SVGTests::systemLanguagePropertyInfo):
5643 (WebCore::SVGTests::attributeToPropertyMap):
5644 (WebCore::SVGTests::synchronizeRequiredFeatures):
5645 (WebCore::SVGTests::synchronizeRequiredExtensions):
5646 (WebCore::SVGTests::synchronizeSystemLanguage):
5647 * svg/SVGTests.h:
5648 * svg/SVGTextContentElement.cpp:
5649 (WebCore::SVGTextContentElement::textLengthPropertyInfo):
5650 (WebCore::SVGTextContentElement::SVGTextContentElement):
5651 (WebCore::SVGTextContentElement::synchronizeTextLength):
5652 (WebCore::SVGTextContentElement::lookupOrCreateTextLengthWrapper):
5653 (WebCore::SVGTextContentElement::textLengthAnimated):
5654 * svg/SVGTextContentElement.h:
5655 (WebCore::SVGTextContentElement::synchronizeRequiredFeatures):
5656 (WebCore::SVGTextContentElement::synchronizeRequiredExtensions):
5657 (WebCore::SVGTextContentElement::synchronizeSystemLanguage):
5658 * svg/SVGTextElement.cpp:
5659 (WebCore::SVGTextElement::SVGTextElement):
5660 * svg/SVGTextElement.h:
5661 * svg/SVGTextPathElement.cpp:
5662 (WebCore::SVGTextPathElement::SVGTextPathElement):
5663 * svg/SVGTextPathElement.h:
5664 * svg/SVGTextPositioningElement.cpp:
5665 (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
5666 * svg/SVGTextPositioningElement.h:
5667 * svg/SVGTitleElement.cpp:
5668 * svg/SVGTitleElement.h:
5669 (WebCore::SVGTitleElement::rendererIsNeeded):
5670 * svg/SVGUseElement.cpp:
5671 (WebCore::SVGUseElement::SVGUseElement):
5672 * svg/SVGUseElement.h:
5673 (WebCore::SVGUseElement::synchronizeRequiredFeatures):
5674 (WebCore::SVGUseElement::synchronizeRequiredExtensions):
5675 (WebCore::SVGUseElement::synchronizeSystemLanguage):
5676 * svg/SVGViewElement.cpp:
5677 (WebCore::SVGViewElement::SVGViewElement):
5678 * svg/SVGViewElement.h:
5679 * svg/SVGViewSpec.cpp:
5680 (WebCore::SVGViewSpec::SVGViewSpec):
5681 * svg/SVGViewSpec.h:
5682 * svg/properties/SVGAnimatedProperty.h:
5683 (WebCore::SVGAnimatedProperty::lookupOrCreateWrapper):
5684 (WebCore::SVGAnimatedProperty::lookupWrapper):
5685 * svg/properties/SVGAnimatedPropertyMacros.h:
5686 * svg/properties/SVGAnimatedPropertySynchronizer.h:
5687 * svg/properties/SVGAttributeToPropertyMap.cpp: Added.
5688 (WebCore::SVGAttributeToPropertyMap::addProperties):
5689 (WebCore::SVGAttributeToPropertyMap::addProperty):
5690 (WebCore::SVGAttributeToPropertyMap::animatedPropertiesForAttribute):
5691 (WebCore::SVGAttributeToPropertyMap::animatedPropertyTypeForAttribute):
5692 (WebCore::SVGAttributeToPropertyMap::synchronizeProperties):
5693 (WebCore::SVGAttributeToPropertyMap::synchronizeProperty):
5694 (WebCore::SVGAttributeToPropertyMap::animatedProperty):
5695 * svg/properties/SVGAttributeToPropertyMap.h: Added.
5696 (WebCore::SVGAttributeToPropertyMap::SVGAttributeToPropertyMap):
5697 (WebCore::SVGAttributeToPropertyMap::~SVGAttributeToPropertyMap):
5698 (WebCore::SVGAttributeToPropertyMap::isEmpty):
5699 * svg/properties/SVGPropertyInfo.h: Added.
5700 (WebCore::SVGPropertyInfo::SVGPropertyInfo):
5701
5702 2011-07-09 Patrick Gansterer <paroga@webkit.org>
5703
5704 Unreviewed build fix after r90676.
5705
5706 * platform/graphics/ImageBuffer.cpp:
5707
5708 2011-07-08 Dirk Schulze <krit@webkit.org>
5709
5710 Refactoring luminance code in RenderSVGResourceMasker
5711 https://bugs.webkit.org/show_bug.cgi?id=64146
5712
5713 Reviewed by Simon Fraser.
5714
5715 Moved luminance calculcation code to ImageBuffer. The code is doing pixe l manipulations and can now get replaced
5716 by platform specific algorithms in the ImmageBuffer*.cpp files.
5717
5718 No change of functionality. No new tests.
5719
5720 * WebCore.xcodeproj/project.pbxproj:
5721 * platform/graphics/ImageBuffer.cpp:
5722 (WebCore::ImageBuffer::transformColorSpace):
5723 (WebCore::ImageBuffer::genericConvertToLuminanceMask):
5724 (WebCore::ImageBuffer::convertToLuminanceMask):
5725 * platform/graphics/ImageBuffer.h:
5726 * rendering/svg/RenderSVGResourceMasker.cpp:
5727 (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
5728
5729 2011-07-08 Simon Fraser <simon.fraser@apple.com>
5730
5731 Clean up RenderWidget::destroy() to share more code
5732 https://bugs.webkit.org/show_bug.cgi?id=64138
5733
5734 Reviewed by James Robinson.
5735
5736 RenderWidget::destroy() copied code from various other
5737 destroy() methods, which made code maintenance in this
5738 area very risky.
5739
5740 Fix by adding a virtual willBeDestroyed() method, which
5741 replaces most instances of destroy(). Now, only RenderWidget
5742 and RenderObject implement destroy(), and each just calls
5743 willBeDestroyed(). Code duplication is averted.
5744
5745 No behavior change, so no tests.
5746
5747 * rendering/RenderBlock.cpp:
5748 (WebCore::RenderBlock::willBeDestroyed):
5749 * rendering/RenderBlock.h:
5750 * rendering/RenderBox.cpp:
5751 (WebCore::RenderBox::willBeDestroyed):
5752 * rendering/RenderBox.h:
5753 * rendering/RenderBoxModelObject.cpp:
5754 (WebCore::RenderBoxModelObject::willBeDestroyed):
5755 * rendering/RenderBoxModelObject.h:
5756 * rendering/RenderFullScreen.cpp:
5757 (RenderFullScreenPlaceholder::willBeDestroyed):
5758 (RenderFullScreen::willBeDestroyed):
5759 * rendering/RenderFullScreen.h:
5760 * rendering/RenderInline.cpp:
5761 (WebCore::RenderInline::willBeDestroyed):
5762 * rendering/RenderInline.h:
5763 * rendering/RenderListItem.cpp:
5764 (WebCore::RenderListItem::willBeDestroyed):
5765 * rendering/RenderListItem.h:
5766 * rendering/RenderObject.cpp:
5767 (WebCore::RenderObject::willBeDestroyed):
5768 (WebCore::RenderObject::destroy):
5769 * rendering/RenderObject.h:
5770 * rendering/RenderReplaced.cpp:
5771 (WebCore::RenderReplaced::willBeDestroyed):
5772 * rendering/RenderReplaced.h:
5773 * rendering/RenderTableCell.cpp:
5774 (WebCore::RenderTableCell::willBeDestroyed):
5775 * rendering/RenderTableCell.h:
5776 * rendering/RenderTableRow.cpp:
5777 (WebCore::RenderTableRow::willBeDestroyed):
5778 * rendering/RenderTableRow.h:
5779 * rendering/RenderTableSection.cpp:
5780 (WebCore::RenderTableSection::willBeDestroyed):
5781 * rendering/RenderTableSection.h:
5782 * rendering/RenderText.cpp:
5783 (WebCore::RenderText::willBeDestroyed):
5784 * rendering/RenderText.h:
5785 * rendering/RenderTextFragment.cpp:
5786 (WebCore::RenderTextFragment::willBeDestroyed):
5787 * rendering/RenderTextFragment.h:
5788 * rendering/RenderWidget.cpp:
5789 (WebCore::RenderWidget::willBeDestroyed):
5790 (WebCore::RenderWidget::destroy):
5791 * rendering/RenderWidget.h:
5792 * rendering/svg/RenderSVGBlock.cpp:
5793 (WebCore::RenderSVGBlock::willBeDestroyed):
5794 * rendering/svg/RenderSVGBlock.h:
5795 * rendering/svg/RenderSVGInline.cpp:
5796 (WebCore::RenderSVGInline::willBeDestroyed):
5797 * rendering/svg/RenderSVGInline.h:
5798 * rendering/svg/RenderSVGInlineText.cpp:
5799 (WebCore::RenderSVGInlineText::willBeDestroyed):
5800 * rendering/svg/RenderSVGInlineText.h:
5801 * rendering/svg/RenderSVGModelObject.cpp:
5802 (WebCore::RenderSVGModelObject::willBeDestroyed):
5803 * rendering/svg/RenderSVGModelObject.h:
5804 * rendering/svg/RenderSVGResourceContainer.cpp:
5805 (WebCore::RenderSVGResourceContainer::willBeDestroyed):
5806 * rendering/svg/RenderSVGResourceContainer.h:
5807 * rendering/svg/RenderSVGRoot.cpp:
5808 (WebCore::RenderSVGRoot::willBeDestroyed):
5809 * rendering/svg/RenderSVGRoot.h:
5810 * rendering/svg/SVGResourcesCache.h:
5811
5812 2011-07-08 Adam Barth <abarth@webkit.org>
5813
5814 Unreviewed, rolling out r90662.
5815 http://trac.webkit.org/changeset/90662
5816 https://bugs.webkit.org/show_bug.cgi?id=64210
5817
5818 Introduced regressions in Chromium browser tests (Requested by
5819 rniwa on #webkit).
5820
5821 * accessibility/AccessibilityRenderObject.cpp:
5822 (WebCore::AccessibilityRenderObject::selectedText):
5823 (WebCore::AccessibilityRenderObject::selectedTextRange):
5824 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
5825 * html/HTMLFormControlElement.cpp:
5826 (WebCore::HTMLTextFormControlElement::setSelectionRange):
5827 (WebCore::HTMLTextFormControlElement::selectionStart):
5828 (WebCore::HTMLTextFormControlElement::selectionEnd):
5829 (WebCore::HTMLTextFormControlElement::selection):
5830 (WebCore::HTMLTextFormControlElement::restoreCachedSelection):
5831 (WebCore::HTMLTextFormControlElement::selectionChanged):
5832 * html/HTMLFormControlElement.h:
5833 * html/HTMLInputElement.cpp:
5834 (WebCore::HTMLInputElement::setValue):
5835 * rendering/RenderTextControl.cpp:
5836 (WebCore::RenderTextControl::selectionStart):
5837 (WebCore::RenderTextControl::selectionEnd):
5838 (WebCore::RenderTextControl::hasVisibleTextArea):
5839 (WebCore::setSelectionRange):
5840 (WebCore::setContainerAndOffsetForRange):
5841 (WebCore::RenderTextControl::selection):
5842 * rendering/RenderTextControl.h:
5843
5844 2011-07-08 Brian Salomon <bsalomon@google.com>
5845
5846 Make GL context current before updating layer texture using skia-gpu
5847 https://bugs.webkit.org/show_bug.cgi?id=64206
5848
5849 Reviewed by James Robinson.
5850
5851 Covered by existing tests (when accelerated drawing and compositing are on).
5852
5853 * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
5854 (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
5855
5856 2011-07-08 Tony Chang <tony@chromium.org>
5857
5858 Refactor override size to be a size rather than just an int
5859 https://bugs.webkit.org/show_bug.cgi?id=64195
5860
5861 Reviewed by David Hyatt.
5862
5863 Also convert to LayoutSize and LayoutUnit.
5864
5865 Covered by existing tests.
5866
5867 * rendering/RenderBox.cpp:
5868 (WebCore::RenderBox::overrideSize): Pass in a LayoutSize.
5869 (WebCore::RenderBox::setOverrideSize):
5870 (WebCore::RenderBox::clearOverrideSize): New method for clearing the
5871 override size (previous we would pass in -1)
5872 (WebCore::RenderBox::overrideWidth):
5873 (WebCore::RenderBox::overrideHeight):
5874 (WebCore::RenderBox::computeLogicalWidth):
5875 (WebCore::RenderBox::computeLogicalHeight):
5876 (WebCore::RenderBox::computePercentageLogicalHeight):
5877 (WebCore::RenderBox::availableLogicalHeightUsing):
5878 * rendering/RenderBox.h:
5879 * rendering/RenderDeprecatedFlexibleBox.cpp:
5880 (WebCore::gatherFlexChildrenInfo):
5881 (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
5882 (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
5883 (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
5884 * rendering/RenderTableCell.cpp:
5885 (WebCore::RenderTableCell::setOverrideSizeFromRowHeight):
5886 * rendering/RenderTableCell.h: Remove setOverrideSize since it was
5887 only called in one place to clear the override size. Inline this
5888 logic instead.
5889 * rendering/RenderTableSection.cpp:
5890 (WebCore::RenderTableSection::calcRowLogicalHeight):
5891 * rendering/RenderWidget.cpp:
5892 (WebCore::RenderWidget::destroy):
5893
5894 2011-07-08 Emil A Eklund <eae@chromium.org>
5895
5896 Switch pointInContainer and accumulatedOffset to to new layout types
5897 https://bugs.webkit.org/show_bug.cgi?id=64112
5898
5899 Reviewed by Eric Seidel.
5900
5901 Convert remaining IntPoint versions of the pointInContainer and
5902 accumulatedOffset arguments to the new layout abstraction.
5903
5904 No new tests, no functionality changes.
5905
5906 * rendering/HitTestResult.cpp:
5907 (WebCore::HitTestResult::addNodeToRectBasedTestResult):
5908 * rendering/HitTestResult.h:
5909 * rendering/RenderBlock.cpp:
5910 (WebCore::RenderBlock::isPointInOverflowControl):
5911 * rendering/RenderBlock.h:
5912 * rendering/RenderBox.cpp:
5913 (WebCore::RenderBox::pushContentsClip):
5914 (WebCore::RenderBox::popContentsClip):
5915 * rendering/RenderBox.h:
5916 * rendering/RenderEmbeddedObject.cpp:
5917 (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
5918 * rendering/RenderEmbeddedObject.h:
5919 * rendering/RenderLineBoxList.cpp:
5920 (WebCore::RenderLineBoxList::hitTest):
5921 * rendering/RenderLineBoxList.h:
5922 * rendering/RenderListBox.cpp:
5923 (WebCore::RenderListBox::isPointInOverflowControl):
5924 * rendering/RenderListBox.h:
5925 * rendering/RenderObject.cpp:
5926 (WebCore::RenderObject::hitTest):
5927 * rendering/RenderObject.h:
5928 * rendering/RenderTextControl.cpp:
5929 (WebCore::RenderTextControl::hitInnerTextElement):
5930 * rendering/RenderTextControl.h:
5931 * rendering/RenderTextControlSingleLine.cpp:
5932 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
5933
5934 2011-07-07 Ryosuke Niwa <rniwa@webkit.org>
5935
5936 Move selection related code from RenderTextControl to HTMLTextFormContro lElement
5937 https://bugs.webkit.org/show_bug.cgi?id=64133
5938
5939 Reviewed by Dimitri Glazkov.
5940
5941 Moved selectionStart, selectionEnd, hasVisibleTextArea, setSelectionRang e, setContainerAndOffsetForRange
5942 and selection from RenderTextControl.cpp to HTMLFormControlElement.cpp.
5943
5944 This refactoring removes RenderTextControl's dependency on FrameSelectio n.
5945
5946 * accessibility/AccessibilityRenderObject.cpp:
5947 (WebCore::AccessibilityRenderObject::selectedText): Calls HTMLTextFromCo ntrol::selectedText.
5948 (WebCore::AccessibilityRenderObject::selectedTextRange): Calls selection Start and selectionEnd.
5949 (WebCore::AccessibilityRenderObject::setSelectedTextRange): Ditto.
5950 * html/HTMLFormControlElement.cpp:
5951 (WebCore::HTMLTextFormControlElement::selectedText): Extracted from Acce ssibilityRenderObject::selectedText.
5952 (WebCore::hasVisibleTextArea):
5953 (WebCore::HTMLTextFormControlElement::setSelectionRange): Merged with th e function of the same name in
5954 RenderTextControl.
5955 (WebCore::HTMLTextFormControlElement::selectionStart): Ditto.
5956 (WebCore::HTMLTextFormControlElement::selectionEnd): Ditto.
5957 (WebCore::setContainerAndOffsetForRange): Moved from RenderTextControl.c pp
5958 (WebCore::HTMLTextFormControlElement::selection): Merged with the functi on of the same name in RenderTextControl.
5959 (WebCore::HTMLTextFormControlElement::selectionChanged): Calls selection Start and selectionEnd.
5960 * html/HTMLFormControlElement.h:
5961 (WebCore::HTMLTextFormControlElement::restoreCachedSelection): Moved fro m HTMLFormControlElement.cpp now that
5962 all functions are self-contained in HTMLTextFormControlElement.
5963 * html/HTMLInputElement.cpp:
5964 (WebCore::HTMLInputElement::setValue): Calls setSelectionRange.
5965 * rendering/RenderTextControl.cpp:
5966 (WebCore::RenderTextControl::textFormControlElement): Added.
5967 * rendering/RenderTextControl.h:
5968
5969 2011-07-08 Mike Reed <reed@google.com>
5970
5971 remove (empty) indirection between GraphicsContextPlatformPrivate and Pl atformContextSkia
5972 https://bugs.webkit.org/show_bug.cgi?id=64178
5973
5974 Reviewed by Stephen White.
5975
5976 No new tests. no functionality change, other than removing an indirectio n that is not needed
5977
5978 * platform/graphics/GraphicsContext.h:
5979 * platform/graphics/skia/GraphicsContextPlatformPrivate.h: Removed.
5980 * platform/graphics/skia/GraphicsContextSkia.cpp:
5981 (WebCore::GraphicsContext::platformInit):
5982 (WebCore::GraphicsContext::platformDestroy):
5983 (WebCore::GraphicsContext::platformContext):
5984
5985 2011-07-08 Jeffrey Pfau <jpfau@apple.com>
5986
5987 Add framework for a new/dummy XMLDocumentParser
5988 https://bugs.webkit.org/show_bug.cgi?id=63955
5989
5990 Reviewed by Adam Barth.
5991
5992 Added a dummy framework NewXMLDocumentParser
5993
5994 * WebCore.xcodeproj/project.pbxproj:
5995 * dom/Document.cpp:
5996 (WebCore::Document::createParser):
5997 * xml/parser/NewXMLDocumentParser.cpp: Added.
5998 (WebCore::NewXMLDocumentParser::NewXMLDocumentParser):
5999 (WebCore::NewXMLDocumentParser::textPosition):
6000 (WebCore::NewXMLDocumentParser::lineNumber):
6001 (WebCore::NewXMLDocumentParser::insert):
6002 (WebCore::NewXMLDocumentParser::append):
6003 (WebCore::NewXMLDocumentParser::finish):
6004 (WebCore::NewXMLDocumentParser::detach):
6005 (WebCore::NewXMLDocumentParser::hasInsertionPoint):
6006 (WebCore::NewXMLDocumentParser::finishWasCalled):
6007 (WebCore::NewXMLDocumentParser::processingData):
6008 (WebCore::NewXMLDocumentParser::prepareToStopParsing):
6009 (WebCore::NewXMLDocumentParser::stopParsing):
6010 (WebCore::NewXMLDocumentParser::isWaitingForScripts):
6011 (WebCore::NewXMLDocumentParser::isExecutingScript):
6012 (WebCore::NewXMLDocumentParser::executeScriptsWaitingForStylesheets):
6013 * xml/parser/NewXMLDocumentParser.h: Added.
6014 (WebCore::NewXMLDocumentParser::create):
6015
6016 2011-07-08 David Reveman <reveman@chromium.org>
6017
6018 Remove unused function parameters.
6019
6020 Reviewed by Ryosuke Niwa.
6021
6022 * platform/graphics/gpu/TilingData.cpp:
6023 (WebCore::TilingData::textureOffset):
6024
6025 2011-07-08 David Reveman <reveman@chromium.org>
6026
6027 Reviewed by Stephen White.
6028
6029 [Chromium] Edge anti-aliasing for composited layers.
6030 https://bugs.webkit.org/show_bug.cgi?id=61388
6031
6032 Add transparent outer border to tiled layers and adjust vertex
6033 coordinates so that use of a bilinear filter creates a smooth
6034 layer edge.
6035
6036 Tests: platform/chromium/compositing/tiny-layer-rotated.html
6037 platform/chromium/compositing/huge-layer-rotated.html (existing)
6038 TilingDataTest in webkit_unit_tests
6039
6040 * platform/graphics/chromium/ContentLayerChromium.cpp:
6041 Change maxUntiledSize to 510 to ensure that tiles are not greater
6042 than 512 with outer borders.
6043 (WebCore::ContentLayerChromium::updateLayerSize): We can't use the
6044 layer size as tile size when we want to avoid tiling as this will
6045 not be enough space to include possible outer borders. We instead use
6046 an empty size, which allows the tiler to automatically adjust the
6047 tile size to be large enough for the layer to fit in one tile.
6048 (WebCore::ContentLayerChromium::createTilerIfNeeded):
6049 (WebCore::ContentLayerChromium::setIsMask): Don't use border texels
6050 for layer used as mask.
6051
6052 * platform/graphics/chromium/ContentLayerChromium.h:
6053 (WebCore::ContentLayerChromium::m_borderTexels) Added.
6054
6055 * platform/graphics/chromium/LayerTilerChromium.cpp:
6056 (WebCore::LayerTilerChromium::tileTexRect): Added.
6057 (WebCore::LayerTilerChromium::tileLayerRect): m_tileSize is no
6058 longer the correct layer size. Size of bounds with border should
6059 be the correct layer size.
6060 (WebCore::LayerTilerChromium::growLayerToContain): Adjust texture
6061 size to include outer borders and handle empty m_tileSize.
6062 (WebCore::LayerTilerChromium::invalidateRect): Use size of rectangle
6063 returned by tileTexRect instead of m_tileSize for texture size.
6064 (WebCore::LayerTilerChromium::prepareToUpdate): Ditto.
6065 (WebCore::LayerTilerChromium::draw): Compute and intersect tile edges
6066 instead of using tile coordinates directly. Edges are adjusted to
6067 include outer borders and make sure all partially covered pixels are
6068 processed.
6069 (WebCore::LayerTilerChromium::drawTexturedQuad): Pass quad to
6070 shader using point uniform.
6071 (WebCore::LayerTilerChromium::invalidateRect): Invalidate old layer
6072 area to clear any contents left from previous layer size.
6073
6074 * platform/graphics/chromium/LayerTilerChromium.h:
6075 (WebCore::LayerTilerChromium::tileTexRect) Added.
6076 (WebCore::LayerTilerChromium::drawTexturedQuad): Add quad parameter.
6077
6078 * platform/graphics/chromium/ShaderChromium.cpp:
6079 (WebCore::VertexShaderPosTexTransform::getShaderString) Get X/Y vertex
6080 components from point uniform.
6081 (WebCore::VertexShaderPosTexTransform::VertexShaderPosTexTransform)
6082 Added point uniform.
6083 (WebCore::VertexShaderPosTexTransform::init) Ditto.
6084 (WebCore::VertexShaderPosTexTransform::pointLocation) Added.
6085
6086 * platform/graphics/chromium/ShaderChromium.h:
6087 (WebCore::VertexShaderPosTexTransform::pointLocation) Added.
6088
6089 * platform/graphics/gpu/TilingData.cpp:
6090 (WebCore::TilingData::tileBoundsWithOuterBorder): Added.
6091 (WebCore::TilingData::computeNumTiles): Adjust for outer border.
6092 (WebCore::TilingData::tileXIndexFromSrcCoord): Ditto.
6093 (WebCore::TilingData::tileYIndexFromSrcCoord): Ditto.
6094 (WebCore::TilingData::tileSizeX): Ditto.
6095 (WebCore::TilingData::tileSizeY): Ditto.
6096 (WebCore::TilingData::intersectDrawQuad): Ditto.
6097 (WebCore::TilingData::textureOffset): Ditto.
6098
6099 * platform/graphics/gpu/TilingData.h:
6100 (WebCore::TilingData::tileBoundsWithOuterBorder): Added.
6101
6102 2011-07-08 Mike Reed <reed@google.com>
6103
6104 [skia] don't rely on lockPixels failure to detect gpu-backed device (in prep for skia roll)
6105 https://bugs.webkit.org/show_bug.cgi?id=64162
6106
6107 Reviewed by Stephen White.
6108
6109 No new tests. preparing for skia roll, where lockPixels always succeeds (but slowly for gpu-backed)
6110
6111 * platform/graphics/skia/ImageBufferSkia.cpp:
6112 (WebCore::putImageData):
6113
6114 2011-07-08 Chang Shu <cshu@webkit.org>
6115
6116 Update calling sites after function renamed.
6117 https://bugs.webkit.org/show_bug.cgi?id=59114
6118
6119 Reviewed by Alexey Proskuryakov.
6120
6121 No new tests, just refactoring.
6122
6123 * editing/visible_units.cpp:
6124 (WebCore::previousBoundary):
6125 (WebCore::nextBoundary):
6126 * rendering/RenderText.cpp:
6127 (WebCore::RenderText::setTextInternal):
6128
6129 2011-07-08 Mihnea Ovidenie <mihnea@adobe.com>
6130
6131 [CSSRegions]Parse content: -webkit-from-flow
6132 https://bugs.webkit.org/show_bug.cgi?id=63133
6133
6134 Reviewed by David Hyatt.
6135
6136 Test: fast/regions/content-webkit-from-flow-parsing.html
6137
6138 * css/CSSComputedStyleDeclaration.cpp:
6139 (WebCore::contentToCSSValue):
6140 * css/CSSParser.cpp:
6141 (WebCore::CSSParser::parseContent):
6142 (WebCore::CSSParser::parseFromFlowContent):
6143 * css/CSSParser.h:
6144 * css/CSSPrimitiveValue.cpp:
6145 (WebCore::CSSPrimitiveValue::cleanup):
6146 (WebCore::CSSPrimitiveValue::getStringValue):
6147 (WebCore::CSSPrimitiveValue::cssText):
6148 * css/CSSPrimitiveValue.h:
6149 * css/CSSStyleSelector.cpp:
6150 (WebCore::CSSStyleSelector::applyProperty):
6151 * rendering/style/RenderStyle.cpp:
6152 (WebCore::RenderStyle::diff):
6153 * rendering/style/RenderStyle.h:
6154 (WebCore::InheritedFlags::regionThread):
6155 (WebCore::InheritedFlags::setRegionThread):
6156 (WebCore::InheritedFlags::initialRegionThread):
6157 * rendering/style/StyleRareNonInheritedData.cpp:
6158 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
6159 (WebCore::StyleRareNonInheritedData::operator==):
6160 * rendering/style/StyleRareNonInheritedData.h:
6161
6162 2011-07-08 Ilya Tikhonovsky <loislo@chromium.org>
6163
6164 Web Inspector: NetworkPanel search failed if the matched sting is in the query part of url
6165 https://bugs.webkit.org/show_bug.cgi?id=64167
6166
6167 Reviewed by Yury Semikhatsky.
6168
6169 * inspector/front-end/NetworkPanel.js:
6170 (WebInspector.NetworkPanel.prototype._matchResource):
6171 (WebInspector.NetworkPanel.prototype._highlightNthMatchedResource):
6172 (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
6173 * inspector/front-end/Resource.js:
6174 (WebInspector.Resource.prototype.get folder):
6175
6176 2011-07-08 Benjamin Poulain <benjamin@webkit.org>
6177
6178 [Qt] Enable HTTP Pipelining by default
6179 https://bugs.webkit.org/show_bug.cgi?id=64169
6180
6181 Reviewed by Andreas Kling.
6182
6183 QNetworkAccessManager disables HTTP pipelining by default. We enable it by
6184 setting an attribute on the request.
6185
6186 * platform/network/qt/ResourceRequestQt.cpp:
6187 (WebCore::ResourceRequest::toNetworkRequest):
6188
6189 2011-07-08 Alexander Pavlov <apavlov@chromium.org>
6190
6191 Web Inspector: CSS inspector gets confused about specificity of !importa nt properties
6192 https://bugs.webkit.org/show_bug.cgi?id=64074
6193
6194 Reviewed by Yury Semikhatsky.
6195
6196 * inspector/front-end/StylesSidebarPane.js:
6197 (WebInspector.StylesSidebarPane.prototype._markUsedProperties):
6198
6199 2011-07-08 Alexander Pavlov <apavlov@chromium.org>
6200
6201 [Chromium] Unreviewed, clang build fix.
6202
6203 * inspector/InspectorStyleTextEditor.h:
6204
6205 2011-07-08 Pavel Feldman <pfeldman@google.com>
6206
6207 Web Inspector: add support for drag'n'drop of non-elements (comments, te xt, etc.)
6208 https://bugs.webkit.org/show_bug.cgi?id=64163
6209
6210 Reviewed by Yury Semikhatsky.
6211
6212 * inspector/Inspector.json:
6213 * inspector/InspectorDOMAgent.cpp:
6214 (WebCore::InspectorDOMAgent::moveTo):
6215 * inspector/front-end/ElementsTreeOutline.js:
6216 (WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget):
6217
6218 2011-07-08 Andrey Kosyakov <caseq@chromium.org>
6219
6220 Web Inspector: secure access to extensions API
6221 https://bugs.webkit.org/show_bug.cgi?id=64080
6222
6223 Reviewed by Pavel Feldman.
6224
6225 * inspector/front-end/ExtensionAPI.js:
6226 (WebInspector.injectedExtensionAPI.Panels.prototype.create):
6227 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.se tPage):
6228 * inspector/front-end/ExtensionPanel.js:
6229 (WebInspector.ExtensionPanel):
6230 * inspector/front-end/ExtensionServer.js:
6231 (WebInspector.ExtensionServer):
6232 (WebInspector.ExtensionServer.prototype._onCreatePanel):
6233 (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
6234 (WebInspector.ExtensionServer.prototype._addExtensions):
6235 (WebInspector.ExtensionServer.prototype._onWindowMessage):
6236 (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
6237 (WebInspector.ExtensionServer.prototype._expandResourcePath):
6238 (WebInspector.ExtensionServer.prototype._normalizePath):
6239
6240 2011-07-08 Adam Barth <abarth@webkit.org>
6241
6242 Unreviewed, rolling out r90615.
6243 http://trac.webkit.org/changeset/90615
6244 https://bugs.webkit.org/show_bug.cgi?id=64158
6245
6246 broke inspector/extensions/extensions.html (Requested by caseq
6247 on #webkit).
6248
6249 * inspector/front-end/ExtensionAPI.js:
6250 (WebInspector.injectedExtensionAPI.Panels.prototype.create):
6251 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.se tPage):
6252 (WebInspector.injectedExtensionAPI.expandURL):
6253 * inspector/front-end/ExtensionPanel.js:
6254 (WebInspector.ExtensionPanel):
6255 * inspector/front-end/ExtensionServer.js:
6256 (WebInspector.ExtensionServer):
6257 (WebInspector.ExtensionServer.prototype._onCreatePanel):
6258 (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
6259 (WebInspector.ExtensionServer.prototype._addExtensions):
6260 (WebInspector.ExtensionServer.prototype._onWindowMessage):
6261 (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
6262
6263 2011-07-07 Alexander Pavlov <apavlov@chromium.org>
6264
6265 Web Inspector: Adding CSS properties results in messy style rules
6266 https://bugs.webkit.org/show_bug.cgi?id=63622
6267
6268 Reviewed by Pavel Feldman.
6269
6270 Test: inspector/styles/styles-formatting.html
6271
6272 * CMakeLists.txt:
6273 * GNUmakefile.list.am:
6274 * WebCore.gypi:
6275 * WebCore.pro:
6276 * WebCore.vcproj/WebCore.vcproj:
6277 * WebCore.xcodeproj/project.pbxproj:
6278 * css/CSSPropertySourceData.cpp:
6279 (WebCore::SourceRange::length):
6280 * css/CSSPropertySourceData.h:
6281 * inspector/InspectorStyleSheet.cpp:
6282 (WebCore::InspectorStyle::InspectorStyle):
6283 (WebCore::InspectorStyle::setPropertyText):
6284 (WebCore::InspectorStyle::toggleProperty):
6285 (WebCore::InspectorStyle::applyStyleText):
6286 (WebCore::InspectorStyle::newLineAndWhitespaceDelimiters):
6287 * inspector/InspectorStyleSheet.h:
6288 * inspector/InspectorStyleTextEditor.cpp: Added.
6289 (WebCore::InspectorStyleTextEditor::InspectorStyleTextEditor):
6290 (WebCore::InspectorStyleTextEditor::insertProperty):
6291 (WebCore::InspectorStyleTextEditor::replaceProperty):
6292 (WebCore::InspectorStyleTextEditor::removeProperty):
6293 (WebCore::InspectorStyleTextEditor::enableProperty):
6294 (WebCore::InspectorStyleTextEditor::disableProperty):
6295 (WebCore::InspectorStyleTextEditor::disabledIndexByOrdinal):
6296 (WebCore::InspectorStyleTextEditor::shiftDisabledProperties):
6297 (WebCore::InspectorStyleTextEditor::internalReplaceProperty):
6298 * inspector/InspectorStyleTextEditor.h: Added.
6299 (WebCore::InspectorStyleTextEditor::styleText):
6300
6301 2011-07-08 Alexander Pavlov <apavlov@chromium.org>
6302
6303 Web Inspector: Quotes are rendered as &quot; in the DOM tree
6304 https://bugs.webkit.org/show_bug.cgi?id=64154
6305
6306 Reviewed by Yury Semikhatsky.
6307
6308 Since we currently rely on setting textContent rather than innerHTML for the DOM tree elements,
6309 escapeHTML() calls unnecessarily HTML-escape certain characters in the D OM tree contents.
6310
6311 * inspector/front-end/ElementsTreeOutline.js:
6312 (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
6313 ():
6314
6315 2011-07-08 Vsevolod Vlasov <vsevik@chromium.org>
6316
6317 Web Inspector: Remove unused code from InspectorAgent.h.
6318 https://bugs.webkit.org/show_bug.cgi?id=64120
6319
6320 Reviewed by Joseph Pecoraro.
6321
6322 * inspector/InspectorAgent.h:
6323
6324 2011-07-08 Andrey Kosyakov <caseq@chromium.org>
6325
6326 Web Inspector: secure access to extensions API
6327 https://bugs.webkit.org/show_bug.cgi?id=64080
6328
6329 Reviewed by Pavel Feldman.
6330
6331 * inspector/front-end/ExtensionAPI.js:
6332 (WebInspector.injectedExtensionAPI.Panels.prototype.create):
6333 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.se tPage):
6334 * inspector/front-end/ExtensionPanel.js:
6335 (WebInspector.ExtensionPanel):
6336 * inspector/front-end/ExtensionServer.js:
6337 (WebInspector.ExtensionServer):
6338 (WebInspector.ExtensionServer.prototype._onCreatePanel):
6339 (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
6340 (WebInspector.ExtensionServer.prototype._addExtensions):
6341 (WebInspector.ExtensionServer.prototype._onWindowMessage):
6342 (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
6343 (WebInspector.ExtensionServer.prototype._expandResourcePath):
6344 (WebInspector.ExtensionServer.prototype._normalizePath):
6345
6346 2011-07-08 Yury Semikhatsky <yurys@chromium.org>
6347
6348 Web Inspector: typing undefined = 1 in console crashes browser
6349 https://bugs.webkit.org/show_bug.cgi?id=64155
6350
6351 Do not access undefined value directly when producing JSON objects as un defined
6352 may be overriden by the inspected page.
6353
6354 Reviewed by Pavel Feldman.
6355
6356 Test: inspector/console/console-eval-undefined-override.html
6357
6358 * inspector/InjectedScriptSource.js:
6359 (.):
6360 ():
6361
6362 2011-07-07 Emil A Eklund <eae@chromium.org>
6363
6364 Switch HitTestResult to to new layout types
6365 https://bugs.webkit.org/show_bug.cgi?id=64131
6366
6367 Reviewed by Eric Seidel.
6368
6369 No new tests, no functionality changes.
6370
6371 * page/MouseEventWithHitTestResults.cpp:
6372 (WebCore::MouseEventWithHitTestResults::localPoint):
6373 * page/MouseEventWithHitTestResults.h:
6374 * rendering/HitTestResult.cpp:
6375 (WebCore::HitTestResult::HitTestResult):
6376 (WebCore::HitTestResult::addNodeToRectBasedTestResult):
6377 (WebCore::HitTestResult::rectForPoint):
6378 * rendering/HitTestResult.h:
6379 (WebCore::HitTestResult::point):
6380 (WebCore::HitTestResult::localPoint):
6381 (WebCore::HitTestResult::setPoint):
6382 (WebCore::HitTestResult::setLocalPoint):
6383 (WebCore::HitTestResult::rectForPoint):
6384
6385 2011-07-07 Levi Weintraub <leviw@chromium.org>
6386
6387 Switch remaining paint functions to new layout types
6388 https://bugs.webkit.org/show_bug.cgi?id=64116
6389
6390 Reviewed by Eric Seidel.
6391
6392 Switching all functions with IntPoint paintOffsets to the new Layout typ es.
6393
6394 No new tests, no functionality changes.
6395
6396 * rendering/EllipsisBox.cpp:
6397 (WebCore::EllipsisBox::paint):
6398 (WebCore::EllipsisBox::paintSelection):
6399 * rendering/EllipsisBox.h:
6400 * rendering/InlineBox.cpp:
6401 (WebCore::InlineBox::paint):
6402 * rendering/InlineBox.h:
6403 * rendering/InlineFlowBox.cpp:
6404 (WebCore::InlineFlowBox::paint):
6405 * rendering/InlineFlowBox.h:
6406 * rendering/InlineTextBox.cpp:
6407 (WebCore::InlineTextBox::paint):
6408 (WebCore::InlineTextBox::paintCustomHighlight):
6409 * rendering/InlineTextBox.h:
6410 * rendering/LayoutTypes.h:
6411 * rendering/RenderBlock.cpp:
6412 (WebCore::RenderBlock::paintColumnRules):
6413 (WebCore::RenderBlock::paintColumnContents):
6414 (WebCore::RenderBlock::paintContents):
6415 (WebCore::RenderBlock::paintChildren):
6416 (WebCore::RenderBlock::paintCaret):
6417 (WebCore::RenderBlock::paintObject):
6418 (WebCore::RenderBlock::paintFloats):
6419 (WebCore::RenderBlock::paintEllipsisBoxes):
6420 (WebCore::RenderBlock::paintContinuationOutlines):
6421 (WebCore::RenderBlock::paintSelection):
6422 * rendering/RenderBlock.h:
6423 * rendering/RenderBox.cpp:
6424 (WebCore::RenderBox::paintCustomHighlight):
6425 * rendering/RenderBox.h:
6426 * rendering/RenderInline.cpp:
6427 (WebCore::RenderInline::paintOutline):
6428 (WebCore::RenderInline::paintOutlineForLine):
6429 * rendering/RenderInline.h:
6430 * rendering/RenderLayer.cpp:
6431 (WebCore::RenderLayer::paintOverflowControls):
6432 (WebCore::RenderLayer::paintScrollCorner):
6433 (WebCore::RenderLayer::paintResizer):
6434 * rendering/RenderLayer.h:
6435 * rendering/RenderLineBoxList.cpp:
6436 (WebCore::RenderLineBoxList::paint):
6437 * rendering/RenderListBox.cpp:
6438 (WebCore::RenderListBox::paintScrollbar):
6439 (WebCore::RenderListBox::paintItemForeground):
6440 (WebCore::RenderListBox::paintItemBackground):
6441 * rendering/RenderListBox.h:
6442 * rendering/RenderObject.cpp:
6443 (WebCore::RenderObject::paintFocusRing):
6444 (WebCore::RenderObject::paintOutline):
6445 * rendering/RenderObject.h:
6446 * rendering/RenderReplaced.cpp:
6447 (WebCore::RenderReplaced::shouldPaint):
6448 * rendering/RenderReplaced.h:
6449 * rendering/RenderScrollbarPart.cpp:
6450 (WebCore::RenderScrollbarPart::paintIntoRect):
6451 * rendering/RenderScrollbarPart.h:
6452 * rendering/RenderTableCell.cpp:
6453 (WebCore::RenderTableCell::paintBackgroundsBehindCell):
6454 * rendering/RenderTableSection.cpp:
6455 (WebCore::RenderTableSection::paintCell):
6456 * rendering/RenderTableSection.h:
6457 * rendering/RenderTextControl.cpp:
6458 (WebCore::RenderTextControl::paintPlaceholder):
6459 * rendering/RootInlineBox.cpp:
6460 (WebCore::RootInlineBox::paintEllipsisBox):
6461 (WebCore::RootInlineBox::paintCustomHighlight):
6462 (WebCore::RootInlineBox::paint):
6463 * rendering/RootInlineBox.h:
6464 * rendering/mathml/RenderMathMLBlock.cpp:
6465 (WebCore::RenderMathMLBlock::paint):
6466 * rendering/mathml/RenderMathMLFraction.cpp:
6467 (WebCore::RenderMathMLFraction::paint):
6468 * rendering/mathml/RenderMathMLRoot.cpp:
6469 (WebCore::RenderMathMLRoot::paint):
6470 * rendering/mathml/RenderMathMLSquareRoot.cpp:
6471 (WebCore::RenderMathMLSquareRoot::paint):
6472
1 2011-07-07 Steve VanDeBogart <vandebo@chromium.org> 6473 2011-07-07 Steve VanDeBogart <vandebo@chromium.org>
2 6474
3 Work around Skia PDF's lack of inverted path support. 6475 Work around Skia PDF's lack of inverted path support.
4 https://bugs.webkit.org/show_bug.cgi?id=64032 6476 https://bugs.webkit.org/show_bug.cgi?id=64032
5 6477
6 Reviewed by James Robinson. 6478 Reviewed by James Robinson.
7 6479
8 The trick used in http://neugierig.org/software/chromium/notes/2010/07/c lipping.html 6480 The trick used in http://neugierig.org/software/chromium/notes/2010/07/c lipping.html
9 to support antialiased clips doesn't work when printing to Skia's PDF ba ckend because 6481 to support antialiased clips doesn't work when printing to Skia's PDF ba ckend because
10 the backend does not support inverted paths. This manifests as rounded b uttons not being 6482 the backend does not support inverted paths. This manifests as rounded b uttons not being
11 drawn when printing, tracked as Chrome bug 79519. 6483 drawn when printing, tracked as Chrome bug 79519.
12 6484
13 However, when the output is a vector device, like PDF, we don't need ant ialiased clips. 6485 However, when the output is a vector device, like PDF, we don't need ant ialiased clips.
14 It's up to the PDF rendering engine to do that. So we can simply disabl e the antialiased 6486 It's up to the PDF rendering engine to do that. So we can simply disabl e the antialiased
15 clip code if the output is a vector device. 6487 clip code if the output is a vector device.
16 6488
17 I think the fix isn't testable because it requires examining the printed output. 6489 I think the fix isn't testable because it requires examining the printed output.
18 6490
19 * platform/graphics/skia/PlatformContextSkia.cpp: 6491 * platform/graphics/skia/PlatformContextSkia.cpp:
20 (WebCore::PlatformContextSkia::clipPathAntiAliased): 6492 (WebCore::PlatformContextSkia::clipPathAntiAliased):
21 6493
6494 2011-07-07 Emil A Eklund <eae@chromium.org>
6495
6496 Switch rendering tree selection code to to new layout types
6497 https://bugs.webkit.org/show_bug.cgi?id=63762
6498
6499 Reviewed by Eric Seidel.
6500
6501 Switch selection getters and selection gap calculation methods over to
6502 new layout abstraction.
6503
6504 No new tests, no functionality changes.
6505
6506 * rendering/InlineTextBox.cpp:
6507 (WebCore::InlineTextBox::selectionTop):
6508 (WebCore::InlineTextBox::selectionBottom):
6509 (WebCore::InlineTextBox::selectionHeight):
6510 (WebCore::InlineTextBox::isSelected):
6511 * rendering/InlineTextBox.h:
6512 * rendering/RenderBR.h:
6513 (WebCore::RenderBR::selectionRectForRepaint):
6514 * rendering/RenderBlock.cpp:
6515 (WebCore::RenderBlock::selectionGapRectsForRepaint):
6516 (WebCore::RenderBlock::selectionGaps):
6517 (WebCore::RenderBlock::inlineSelectionGaps):
6518 (WebCore::RenderBlock::blockSelectionGaps):
6519 (WebCore::RenderBlock::blockSelectionGap):
6520 (WebCore::RenderBlock::logicalLeftSelectionGap):
6521 (WebCore::RenderBlock::logicalRightSelectionGap):
6522 (WebCore::RenderBlock::logicalLeftSelectionOffset):
6523 (WebCore::RenderBlock::logicalRightSelectionOffset):
6524 (WebCore::RenderBlock::positionForPointWithInlineChildren):
6525 (WebCore::RenderBlock::desiredColumnWidth):
6526 * rendering/RenderBlock.h:
6527 (WebCore::RenderBlock::selectionRectForRepaint):
6528 * rendering/RenderListMarker.cpp:
6529 (WebCore::RenderListMarker::selectionRectForRepaint):
6530 * rendering/RenderListMarker.h:
6531 * rendering/RenderObject.h:
6532 (WebCore::RenderObject::selectionRect):
6533 (WebCore::RenderObject::selectionRectForRepaint):
6534 * rendering/RenderReplaced.cpp:
6535 (WebCore::RenderReplaced::selectionRectForRepaint):
6536 * rendering/RenderReplaced.h:
6537 * rendering/RenderSelectionInfo.h:
6538 (WebCore::RenderSelectionInfo::RenderSelectionInfo):
6539 * rendering/RenderText.cpp:
6540 (WebCore::RenderText::selectionRectForRepaint):
6541 * rendering/RenderText.h:
6542 * rendering/RootInlineBox.cpp:
6543 (WebCore::RootInlineBox::selectionTop):
6544 (WebCore::RootInlineBox::selectionBottom):
6545 * rendering/RootInlineBox.h:
6546 (WebCore::RootInlineBox::selectionHeight):
6547
6548 2011-07-07 Gavin Peters <gavinp@chromium.org>
6549
6550 Reviewed by Alexey Proskuryakov.
6551
6552 fast/dom/HTMLLinkElement/link-and-subresource-test.html is flaky on chro mium debug bots
6553 https://bugs.webkit.org/show_bug.cgi?id=60097
6554
6555 The culprit was that CachedResource:stopLoading() was using *this
6556 after a call to checkNotify(), which isn't kosher. This patch
6557 uses a CachedResourceHandle to keep the CachedResource alive.
6558
6559 The test is a very close copy of the eponymous
6560 link-and-subresource-test.html, only substituting invalid
6561 resources for the valid ones in that test. The reproduction is
6562 timing related, and happens much more consistantly with an invalid
6563 resource for whatever reason.
6564 Test: fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent.htm l
6565
6566 * loader/cache/CachedResource.cpp:
6567 (WebCore::CachedResource::stopLoading):
6568
6569 2011-07-07 James Robinson <jamesr@chromium.org>
6570
6571 Reviewed by Kenneth Russell.
6572
6573 Use v8::AdjustAmountOfExternalAllocatedMemory for ArrayBuffers
6574 https://bugs.webkit.org/show_bug.cgi?id=42912
6575
6576 This calls v8's AdjustAmountOfExternalAllocatedMemory when ArrayBuffers are allocated/deallocated so that V8's
6577 garbage collection heuristics can account for the memory held by these o bjects. On the new test page, this
6578 reduces the peak memory use from 5BG+ (or a crash in 32-bit systems) to <300MB.
6579
6580 Test: WebCore/manual-tests/array-buffer-memory.html
6581
6582 * html/canvas/ArrayBuffer.cpp:
6583 (WebCore::ArrayBuffer::~ArrayBuffer):
6584 (WebCore::ArrayBuffer::tryAllocate):
6585
6586 2011-07-07 Ryosuke Niwa <rniwa@webkit.org>
6587
6588 Move all code related to cachedSelection to HTMLTextFormControlElement
6589 https://bugs.webkit.org/show_bug.cgi?id=64118
6590
6591 Reviewed by Alexey Proskuryakov.
6592
6593 Moved m_cachedSelectionStart and m_cachedSelectionEnd from HTMLInputElem ent
6594 and HTMLTextAreaElement to HTMLTextFormControlElement
6595
6596 Also removed cached selection related functions from RenderTextControl,
6597 RenderTextControlSingleLine, and RenderTextControlMultiLine because they were
6598 merely providing wrapper functions to enable polymorphism between
6599 input and textarea elements and their WML equivalents.
6600
6601 * editing/FrameSelection.cpp:
6602 (WebCore::FrameSelection::notifyRendererOfSelectionChange): Calls HTMLTe xtFormControlElement's
6603 selectionChanged instead of RenderTextControl's.
6604 * html/HTMLFormControlElement.cpp:
6605 (WebCore::HTMLTextFormControlElement::HTMLTextFormControlElement): Initi alize
6606 m_cachedSelectionStart and m_cachedSelectionEnd.
6607 (WebCore::HTMLTextFormControlElement::selectionStart):
6608 (WebCore::HTMLTextFormControlElement::selectionEnd):
6609 (WebCore::HTMLTextFormControlElement::selection):
6610 (WebCore::HTMLTextFormControlElement::restoreCachedSelection): Added.
6611 (WebCore::HTMLTextFormControlElement::selectionChanged): Extracted from
6612 RenderTextControl::selectionChanged.
6613 * html/HTMLFormControlElement.h:
6614 (WebCore::HTMLTextFormControlElement::cacheSelection): Extracted from HT MLInputElement
6615 and HTMLTextAreaElement.
6616 (WebCore::HTMLTextFormControlElement::hasCachedSelectionStart): Added.
6617 (WebCore::HTMLTextFormControlElement::hasCachedSelectionEnd): Added.
6618 * html/HTMLInputElement.cpp:
6619 (WebCore::HTMLInputElement::HTMLInputElement):
6620 (WebCore::HTMLInputElement::updateFocusAppearance):
6621 * html/HTMLInputElement.h:
6622 * html/HTMLTextAreaElement.cpp:
6623 (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
6624 (WebCore::HTMLTextAreaElement::updateFocusAppearance):
6625 * html/HTMLTextAreaElement.h:
6626 (WebCore::HTMLTextAreaElement::isEmptyValue):
6627 * rendering/RenderTextControl.cpp:
6628 (WebCore::setSelectionRange):
6629 * rendering/RenderTextControl.h:
6630 * rendering/RenderTextControlMultiLine.cpp:
6631 * rendering/RenderTextControlMultiLine.h:
6632 * rendering/RenderTextControlSingleLine.cpp:
6633 * rendering/RenderTextControlSingleLine.h:
6634
6635 2011-07-07 Emil A Eklund <eae@chromium.org>
6636
6637 Switch addFocusRingRects to to new layout types
6638 https://bugs.webkit.org/show_bug.cgi?id=64114
6639
6640 Reviewed by Eric Seidel.
6641
6642 No new tests, no functionality changes.
6643
6644 * rendering/LayoutTypes.h:
6645 (WebCore::flooredLayoutPoint):
6646 * rendering/RenderBlock.cpp:
6647 (WebCore::RenderBlock::addFocusRingRects):
6648 * rendering/RenderBlock.h:
6649 * rendering/RenderBox.cpp:
6650 (WebCore::RenderBox::addFocusRingRects):
6651 * rendering/RenderBox.h:
6652 * rendering/RenderInline.cpp:
6653 (WebCore::RenderInline::addFocusRingRects):
6654 * rendering/RenderInline.h:
6655 * rendering/RenderListBox.cpp:
6656 (WebCore::RenderListBox::addFocusRingRects):
6657 * rendering/RenderListBox.h:
6658 * rendering/RenderObject.h:
6659 (WebCore::RenderObject::addFocusRingRects):
6660 * rendering/RenderTextControl.cpp:
6661 (WebCore::RenderTextControl::addFocusRingRects):
6662 * rendering/RenderTextControl.h:
6663 * rendering/svg/RenderSVGContainer.cpp:
6664 (WebCore::RenderSVGContainer::addFocusRingRects):
6665 * rendering/svg/RenderSVGContainer.h:
6666 * rendering/svg/RenderSVGImage.cpp:
6667 (WebCore::RenderSVGImage::addFocusRingRects):
6668 * rendering/svg/RenderSVGImage.h:
6669 * rendering/svg/RenderSVGPath.cpp:
6670 (WebCore::RenderSVGPath::addFocusRingRects):
6671 * rendering/svg/RenderSVGPath.h:
6672
6673 2011-07-06 Adrienne Walker <enne@google.com>
6674
6675 [chromium] Reduce compositor texture memory by skipping layers and clipp ing surfaces
6676 https://bugs.webkit.org/show_bug.cgi?id=64052
6677
6678 Reviewed by James Robinson.
6679
6680 Layers and surfaces that are entirely transparent are now skipped.
6681 Parent scissor rects are now applied to the content rect of surfaces
6682 so that offscreen surfaces can be skipped.
6683
6684 Landing this for vangelis@chromium.org.
6685
6686 Covered by existing tests.
6687
6688 * platform/graphics/chromium/LayerRendererChromium.cpp:
6689 (WebCore::calculateVisibleRect):
6690 (WebCore::calculateVisibleLayerRect):
6691 (WebCore::LayerRendererChromium::paintLayerContents):
6692 (WebCore::LayerRendererChromium::drawLayers):
6693 (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
6694 (WebCore::LayerRendererChromium::updateCompositorResources):
6695 (WebCore::LayerRendererChromium::drawLayer):
6696 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
6697 (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
6698
6699 2011-07-07 Adam Barth <abarth@webkit.org>
6700
6701 Unreviewed, rolling out r90581.
6702 http://trac.webkit.org/changeset/90581
6703 https://bugs.webkit.org/show_bug.cgi?id=64124
6704
6705 Broke a bunch of inspector tests (Requested by ojan on
6706 #webkit).
6707
6708 * inspector/front-end/ExtensionAPI.js:
6709 (WebInspector.injectedExtensionAPI.Panels.prototype.create):
6710 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.se tPage):
6711 (WebInspector.injectedExtensionAPI.expandURL):
6712 * inspector/front-end/ExtensionPanel.js:
6713 (WebInspector.ExtensionPanel):
6714 * inspector/front-end/ExtensionServer.js:
6715 (WebInspector.ExtensionServer):
6716 (WebInspector.ExtensionServer.prototype._onCreatePanel):
6717 (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
6718 (WebInspector.ExtensionServer.prototype._addExtensions):
6719 (WebInspector.ExtensionServer.prototype._onWindowMessage):
6720 (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
6721
6722 2011-07-07 Adrienne Walker <enne@google.com>
6723
6724 [chromium] Fix crash when compositing gets disabled mid-paint
6725 https://bugs.webkit.org/show_bug.cgi?id=64119
6726
6727 Reviewed by James Robinson.
6728
6729 WebKit paint can disable compositing and call setRootLayer(0). Adding
6730 a check for this in drawLayers prevents a null pointer deref.
6731
6732 * platform/graphics/chromium/LayerRendererChromium.cpp:
6733 (WebCore::LayerRendererChromium::drawLayers):
6734
6735 2011-07-07 Dirk Schulze <krit@webkit.org>
6736
6737 SVGAnimateTransform does not support calcMode=discrete
6738 https://bugs.webkit.org/show_bug.cgi?id=63914
6739
6740 Reviewed by Rob Buis.
6741
6742 CalcMode discrete specifies that the animation function will jump from o ne value to the next without any interpolation.
6743 Implemented calcMode discrete by checking current progress of animation. If we are in the first half of the animation,
6744 we use the start value of the aniamtion, end value for the second half o f the animation. The key time at 50% is used on
6745 all other animations as well as on other SVG viewers.
6746
6747 Added a manual test. DRT crashes on an automated test with the SVG anima tion API. Opened a new bug report: 64104.
6748
6749 * manual-tests/svg-animateTransform-calcMode-discrete.svg: Added.
6750 * svg/SVGAnimateTransformElement.cpp:
6751 (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
6752
6753 2011-07-07 Dirk Schulze <krit@webkit.org>
6754
6755 Reviewed by Rob Buis.
6756
6757 SVGAnimatedPath needs fallback for 'by' animation
6758 https://bugs.webkit.org/show_bug.cgi?id=63865
6759
6760 Added fallback to 'to' animation for 'by' animated SVGAnimatedPathAnimat or.
6761
6762 Clenup of SVGAnimateElement. Removed all switches since we support all A nimatedTypes
6763 with the exception of AnimatedEnumeration. AnimatedEnumeration gets anim ated as AnimatedString at the moment.
6764
6765 Test: svg/animations/svgpath-animation-1.html
6766
6767 * svg/SVGAnimateElement.cpp:
6768 (WebCore::getPropertyValue):
6769 (WebCore::inheritsFromProperty):
6770 (WebCore::attributeValueIsCurrentColor):
6771 (WebCore::SVGAnimateElement::adjustForCurrentColor):
6772 (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
6773 (WebCore::SVGAnimateElement::calculateAnimatedValue):
6774 (WebCore::SVGAnimateElement::calculateFromAndToValues):
6775 (WebCore::SVGAnimateElement::calculateFromAndByValues):
6776 (WebCore::SVGAnimateElement::resetToBaseValue):
6777 (WebCore::SVGAnimateElement::applyResultsToTarget):
6778 (WebCore::SVGAnimateElement::calculateDistance):
6779 * svg/SVGAnimatedPath.cpp:
6780 (WebCore::SVGAnimatedPathAnimator::calculateFromAndByValues):
6781
6782 2011-07-07 Andrey Kosyakov <caseq@chromium.org>
6783
6784 Web Inspector: secure access to extensions API
6785 https://bugs.webkit.org/show_bug.cgi?id=64080
6786
6787 Reviewed by Pavel Feldman.
6788
6789 * inspector/front-end/ExtensionAPI.js:
6790 (WebInspector.injectedExtensionAPI.Panels.prototype.create):
6791 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.se tPage):
6792 * inspector/front-end/ExtensionPanel.js:
6793 (WebInspector.ExtensionPanel):
6794 * inspector/front-end/ExtensionServer.js:
6795 (WebInspector.ExtensionServer):
6796 (WebInspector.ExtensionServer.prototype._onCreatePanel):
6797 (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
6798 (WebInspector.ExtensionServer.prototype._addExtensions):
6799 (WebInspector.ExtensionServer.prototype._onWindowMessage):
6800 (WebInspector.ExtensionServer.prototype._registerSubscriptionHandler):
6801 (WebInspector.ExtensionServer.prototype._expandResourcePath):
6802
6803 2011-07-07 Kyusun Kim <maniagoon@company100.net>
6804
6805 The return value of SharedBuffer::createWithContentsOfFile must have val id m_size.
6806 https://bugs.webkit.org/show_bug.cgi?id=63313
6807
6808 Reviewed by Eric Seidel.
6809
6810 * platform/posix/SharedBufferPOSIX.cpp:
6811 (WebCore::SharedBuffer::createWithContentsOfFile):
6812
6813 2011-07-07 Dan Bernstein <mitz@apple.com>
6814
6815 <rdar://problem/9737435> Re-enable -webkit-column-break-inside: avoid
6816 https://bugs.webkit.org/show_bug.cgi?id=64102
6817
6818 Reviewed by Simon Fraser.
6819
6820 -webkit-column-break-inside: avoid was disabled in r62632 along with pag e-break-inside: avoid.
6821 The latter remains disabled.
6822
6823 * rendering/RenderBlock.cpp:
6824 (WebCore::RenderBlock::adjustForUnsplittableChild): Treat the child as u nsplittable if
6825 '-webkit-column-break-inside: avoid' was specified.
6826
6827 2011-07-07 Andrey Kosyakov <caseq@chromium.org>
6828
6829 Web Inspector: visual regressions in network panel
6830 https://bugs.webkit.org/show_bug.cgi?id=64089
6831
6832 Reviewed by Pavel Feldman.
6833
6834 * inspector/front-end/networkPanel.css:
6835 (.data-grid.network-log-grid tr.filler td):
6836 (.network.panel .sidebar):
6837
6838 2011-07-07 Julien Chaffraix <jchaffraix@webkit.org>
6839
6840 Reviewed by David Hyatt.
6841
6842 Partial layout when a flex-box has visibility: collapse
6843 https://bugs.webkit.org/show_bug.cgi?id=63776
6844
6845 Tests: fast/flexbox/crash-button-input-autofocus.html
6846 fast/flexbox/crash-button-keygen.html
6847 fast/flexbox/crash-button-relayout.html
6848
6849 The issue is that FlexBoxIterator would skip any child if it has visibil ity: collapsed.
6850 However if one of the child is anonymous, it may wrap some other child t hat would be skipped.
6851 Now FlexBoxIterator is called during the layout phase and thus some node s would not relayouted
6852 as expected.
6853
6854 * rendering/RenderDeprecatedFlexibleBox.cpp:
6855 (WebCore::FlexBoxIterator::next): When iterating, don't skip anonymous c ontent as there may
6856 be real content hiding below.
6857
6858 2011-07-07 Vsevolod Vlasov <vsevik@chromium.org>
6859
6860 Web Inspector: URL links in styles open new tab instead of showing resou rces panel.
6861 https://bugs.webkit.org/show_bug.cgi?id=64090
6862
6863 Reviewed by Pavel Feldman.
6864
6865 * inspector/front-end/StylesSidebarPane.js:
6866 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL) :
6867
6868 2011-07-07 Andrey Kosyakov <caseq@chromium.org>
6869
6870 Web Inspector: active panel does not receive resize event when drawer is resized
6871 https://bugs.webkit.org/show_bug.cgi?id=64094
6872
6873 Reviewed by Pavel Feldman.
6874
6875 * inspector/front-end/Drawer.js:
6876 (WebInspector.Drawer.prototype._statusBarDragging):
6877
6878 2011-07-07 Pavel Feldman <pfeldman@chromium.org>
6879
6880 Web Inspector: prevent default action during drag'n'drop in the Elements panel.
6881 https://bugs.webkit.org/show_bug.cgi?id=64081
6882
6883 Reviewed by Yury Semikhatsky.
6884
6885 * inspector/front-end/ElementsTreeOutline.js:
6886 (WebInspector.ElementsTreeOutline):
6887 (WebInspector.ElementsTreeOutline.prototype._ondragstart):
6888 (WebInspector.ElementsTreeOutline.prototype._ondragover):
6889 (WebInspector.ElementsTreeOutline.prototype._ondragend):
6890 * inspector/front-end/treeoutline.js:
6891 (TreeOutline.prototype.treeElementFromPoint):
6892
6893 2011-07-07 Nikolas Zimmermann <nzimmermann@rim.com>
6894
6895 Move remaining enums out of SVG*Element classes
6896 https://bugs.webkit.org/show_bug.cgi?id=64075
6897
6898 Reviewed by Dirk Schulze.
6899
6900 Move remaining enums out of SVG*Element classes. This is a preparation p atch for bug 63797.
6901 Also move the SVGPropertyTraits template specializations for enum types before the class
6902 definition in the header, otherwhise we can't use SVGPropertyTraits<FooT ype>::fromString/toString
6903 in the DECLARE_ANIMATED* macros, which is needed soon.
6904
6905 No new tests, just refactoring.
6906
6907 * rendering/svg/RenderSVGResourceGradient.cpp:
6908 (WebCore::RenderSVGResourceGradient::applyResource):
6909 * rendering/svg/RenderSVGResourceGradient.h:
6910 * rendering/svg/RenderSVGResourceMarker.cpp:
6911 (WebCore::RenderSVGResourceMarker::angle):
6912 (WebCore::RenderSVGResourceMarker::markerTransformation):
6913 * rendering/svg/RenderSVGResourceMarker.h:
6914 (WebCore::RenderSVGResourceMarker::markerUnits):
6915 * rendering/svg/RenderSVGTextPath.cpp:
6916 (WebCore::RenderSVGTextPath::RenderSVGTextPath):
6917 (WebCore::RenderSVGTextPath::exactAlignment):
6918 (WebCore::RenderSVGTextPath::stretchMethod):
6919 * rendering/svg/SVGRenderTreeAsText.cpp:
6920 (WebCore::operator<<):
6921 (WebCore::writeCommonGradientProperties):
6922 * rendering/svg/SVGTextChunkBuilder.cpp:
6923 (WebCore::SVGTextChunkBuilder::addTextChunk):
6924 * rendering/svg/SVGTextLayoutEngine.cpp:
6925 (WebCore::SVGTextLayoutEngine::parentDefinesTextLength):
6926 (WebCore::SVGTextLayoutEngine::beginTextPathLayout):
6927 * svg/GradientAttributes.h:
6928 (WebCore::GradientAttributes::GradientAttributes):
6929 (WebCore::GradientAttributes::spreadMethod):
6930 (WebCore::GradientAttributes::setSpreadMethod):
6931 * svg/SVGComponentTransferFunctionElement.h:
6932 * svg/SVGFEBlendElement.h:
6933 * svg/SVGFEColorMatrixElement.h:
6934 * svg/SVGFECompositeElement.h:
6935 * svg/SVGFEConvolveMatrixElement.h:
6936 * svg/SVGFEDisplacementMapElement.h:
6937 * svg/SVGFEMorphologyElement.h:
6938 * svg/SVGFETurbulenceElement.h:
6939 * svg/SVGGradientElement.cpp:
6940 (WebCore::SVGGradientElement::SVGGradientElement):
6941 * svg/SVGGradientElement.h:
6942 * svg/SVGMarkerElement.cpp:
6943 (WebCore::SVGMarkerElement::SVGMarkerElement):
6944 (WebCore::SVGMarkerElement::parseMappedAttribute):
6945 (WebCore::SVGMarkerElement::setOrientToAuto):
6946 (WebCore::SVGMarkerElement::setOrientToAngle):
6947 (WebCore::SVGMarkerElement::synchronizeOrientType):
6948 (WebCore::SVGMarkerElement::orientTypeAnimated):
6949 * svg/SVGMarkerElement.h:
6950 * svg/SVGTextContentElement.cpp:
6951 (WebCore::SVGTextContentElement::SVGTextContentElement):
6952 * svg/SVGTextContentElement.h:
6953 * svg/SVGTextPathElement.cpp:
6954 (WebCore::SVGTextPathElement::SVGTextPathElement):
6955 * svg/SVGTextPathElement.h:
6956
6957 2011-07-07 Ilya Tikhonovsky <loislo@chromium.org>
6958
6959 Web Inspector: Protocol: pointers to optional "in" parameters passing to the
6960 backend methods should be NULL if they are not specified in the message.
6961 https://bugs.webkit.org/show_bug.cgi?id=64083
6962
6963 Reviewed by Pavel Feldman.
6964
6965 * inspector/CodeGeneratorInspector.pm:
6966 (generateBackendFunction):
6967 (generateArgumentGetters):
6968 * inspector/InspectorCSSAgent.cpp:
6969 (WebCore::InspectorCSSAgent::getStylesForNode):
6970
6971 2011-07-07 Ilya Tikhonovsky <loislo@chromium.org>
6972
6973 Web Inspector: Searching on the Network panel doesn't do anything?
6974 https://bugs.webkit.org/show_bug.cgi?id=55489
6975
6976 This is initial implementation of search in Network panel.
6977 It is pretty simple search only for names and paths.
6978
6979 Reviewed by Pavel Feldman.
6980
6981 * inspector/front-end/NetworkPanel.js:
6982 (WebInspector.NetworkPanel.prototype.refresh):
6983 (WebInspector.NetworkPanel.prototype._reset):
6984 (WebInspector.NetworkPanel.prototype._updateOffscreenRows):
6985 (WebInspector.NetworkPanel.prototype._matchResource):
6986 (WebInspector.NetworkPanel.prototype._clearSearchMatchedList):
6987 (WebInspector.NetworkPanel.prototype._highlightNthMatchedResource):
6988 (WebInspector.NetworkPanel.prototype.performSearch):
6989 (WebInspector.NetworkDataGridNode.prototype.createCells):
6990 * inspector/front-end/utilities.js:
6991 (String.prototype.escapeHTML):
6992 ():
6993
6994 2011-07-07 Vsevolod Vlasov <vsevik@chromium.org>
6995
6996 Web Inspector: Resources panel shows only one resource when multiple res ources have the same url.
6997 https://bugs.webkit.org/show_bug.cgi?id=63936
6998
6999 Reviewed by Pavel Feldman.
7000
7001 Test: http/tests/inspector/resource-tree/resource-tree-non-unique-url.ht ml
7002
7003 * inspector/front-end/ResourcesPanel.js:
7004 (WebInspector.FrameTreeElement.prototype.appendResource):
7005
7006 2011-07-07 Vsevolod Vlasov <vsevik@chromium.org>
7007
7008 Web Inspector: Add support for clearing cache and cookies from network p anel.
7009 https://bugs.webkit.org/show_bug.cgi?id=63999
7010
7011 Reviewed by Pavel Feldman.
7012
7013 * English.lproj/localizedStrings.js:
7014 * inspector/Inspector.json:
7015 * inspector/InspectorClient.h:
7016 (WebCore::InspectorClient::clearBrowserCache):
7017 (WebCore::InspectorClient::clearBrowserCookies):
7018 * inspector/InspectorController.cpp:
7019 (WebCore::InspectorController::InspectorController):
7020 * inspector/InspectorResourceAgent.cpp:
7021 (WebCore::InspectorResourceAgent::clearBrowserCache):
7022 (WebCore::InspectorResourceAgent::clearBrowserCookies):
7023 (WebCore::InspectorResourceAgent::InspectorResourceAgent):
7024 * inspector/InspectorResourceAgent.h:
7025 (WebCore::InspectorResourceAgent::create):
7026 * inspector/front-end/NetworkPanel.js:
7027 (WebInspector.NetworkPanel.prototype._contextMenu):
7028 (WebInspector.NetworkPanel.prototype._clearBrowserCache):
7029 (WebInspector.NetworkPanel.prototype._clearBrowserCookies):
7030 * inspector/front-end/Settings.js:
7031
7032 2011-07-07 Shinya Kawanaka <shinyak@google.com>
7033
7034 Added more key bindings for input[type=range].
7035 https://bugs.webkit.org/show_bug.cgi?id=52262
7036
7037 Added PageUp/PageDown/Home/End key bindings for input[type=range].
7038 PageUp/PageDown change value by about 10%.
7039 Home/End change value to minimum/maximum.
7040
7041 Reviewed by Kent Tamura.
7042
7043 * html/RangeInputType.cpp:
7044 (WebCore::RangeInputType::handleKeydownEvent):
7045 Added key bindings.
7046
7047 2011-07-07 Oleg Romashin <romaxa@gmail.com>
7048
7049 Fix InspectorInstrumentation compilation.
7050 https://bugs.webkit.org/show_bug.cgi?id=64033
7051
7052 Reviewed by Yury Semikhatsky.
7053
7054 No new tests. just compile fix.
7055
7056 * inspector/InspectorInstrumentation.cpp:
7057 (WebCore::InspectorInstrumentation::didInvalidateStyleAttrImpl):
7058
7059 2011-07-06 Mihnea Ovidenie <mihnea@adobe.com>
7060
7061 Reviewed by David Hyatt.
7062
7063 [CSSRegions] Parse flow property
7064 https://bugs.webkit.org/show_bug.cgi?id=61730
7065
7066 Test: fast/regions/webkit-flow-parsing.html
7067
7068 * css/CSSComputedStyleDeclaration.cpp:
7069 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
7070 * css/CSSParser.cpp:
7071 (WebCore::CSSParser::parseValue):
7072 (WebCore::CSSParser::parseFlowThread):
7073 * css/CSSParser.h:
7074 * css/CSSPropertyNames.in:
7075 * css/CSSStyleSelector.cpp:
7076 (WebCore::CSSStyleSelector::applyProperty):
7077 * rendering/style/RenderStyle.cpp:
7078 (WebCore::RenderStyle::diff):
7079 * rendering/style/RenderStyle.h:
7080 (WebCore::InheritedFlags::flowThread):
7081 (WebCore::InheritedFlags::setFlowThread):
7082 (WebCore::InheritedFlags::initialFlowThread):
7083 * rendering/style/StyleRareNonInheritedData.cpp:
7084 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
7085 (WebCore::StyleRareNonInheritedData::operator==):
7086 * rendering/style/StyleRareNonInheritedData.h:
7087
7088 2011-07-06 MORITA Hajime <morrita@google.com>
7089
7090 [ShadowContentElement] Redundant RenderText objects are created on the c ontent boundaries.
7091 https://bugs.webkit.org/show_bug.cgi?id=63977
7092
7093 Reviewed by Dimitri Glazkov.
7094
7095 NodeRenderingContext::nextRenderer() and previousRenderer() didn't work well
7096 when it crosses content elements:
7097 - It doesn't step into forwarded children of ShadowContentElement.
7098 - It doesn't step out from traversing forwarded children to
7099 neighbors of the content element of that forwarded chidren.
7100
7101 This change makes it to step into and out from content element.
7102
7103 Test: fast/dom/shadow/content-element-renderers.html
7104
7105 * dom/NodeRenderingContext.cpp:
7106 (WebCore::firstRendererOf): Added
7107 (WebCore::lastRendererOf): Added
7108 (WebCore::NodeRenderingContext::nextRenderer):
7109 (WebCore::NodeRenderingContext::previousRenderer):
7110
7111 2011-07-06 Gyuyoung Kim <gyuyoung.kim@samsung.com>
7112
7113 [EFL] Add Fullscreen API feature
7114 https://bugs.webkit.org/show_bug.cgi?id=63975
7115
7116 Add needed files for enabling ENABLE_FULLSCREEN_API feature.
7117
7118 Reviewed by Adam Barth.
7119
7120 * CMakeLists.txt: Add RenderFullScreen.cpp, fullscreen.css
7121
7122 2011-07-06 Emil A Eklund <eae@chromium.org>
7123
7124 Switch absoluteRects to to new layout types
7125 https://bugs.webkit.org/show_bug.cgi?id=64035
7126
7127 Reviewed by Eric Seidel.
7128
7129 Move absoluteRects over to new layout unit abstraction.
7130 Add flooredLayoutPoint, mapped to flooredIntPoint.
7131
7132 No new tests, no functionality changes.
7133
7134 * rendering/LayoutTypes.h:
7135 (WebCore::flooredLayoutPoint):
7136 * rendering/RenderBlock.cpp:
7137 (WebCore::RenderBlock::absoluteRects):
7138 * rendering/RenderBlock.h:
7139 * rendering/RenderBox.cpp:
7140 (WebCore::RenderBox::absoluteRects):
7141 * rendering/RenderInline.cpp:
7142 (WebCore::RenderInline::absoluteRects):
7143 * rendering/RenderInline.h:
7144 * rendering/RenderObject.cpp:
7145 (WebCore::RenderObject::absoluteBoundingBoxRect):
7146 * rendering/RenderObject.h:
7147 (WebCore::RenderObject::absoluteRects):
7148 * rendering/RenderText.cpp:
7149 (WebCore::RenderText::absoluteRects):
7150 * rendering/RenderText.h:
7151 * rendering/RenderView.cpp:
7152 (WebCore::RenderView::absoluteRects):
7153 * rendering/RenderView.h:
7154 * rendering/svg/RenderSVGBlock.cpp:
7155 (WebCore::RenderSVGBlock::absoluteRects):
7156 * rendering/svg/RenderSVGBlock.h:
7157 * rendering/svg/RenderSVGModelObject.cpp:
7158 (WebCore::RenderSVGModelObject::absoluteRects):
7159 * rendering/svg/RenderSVGModelObject.h:
7160
7161 2011-07-06 Emil A Eklund <eae@chromium.org>
7162
7163 Reviewed by Eric Seidel.
7164
7165 Switch offsetFromContainer and related to to new layout types
7166 https://bugs.webkit.org/show_bug.cgi?id=63659
7167
7168 Switch offsetFromContainer and related mapping methods to new layout uni t
7169 abstraction.
7170
7171 No new tests, no functionality changes.
7172
7173 * rendering/LayoutTypes.h:
7174 (WebCore::enclosingLayoutRect):
7175 (WebCore::roundedLayoutPoint):
7176 (WebCore::roundedLayoutUnit):
7177 Add LayoutUnit versions of enclosingIntRect, roundedIntPoint and lroundf .
7178 For now these map to their int counterpart but once we switch to float o r
7179 fixed point they'll be no-ops and eventually will be removed.
7180
7181 * rendering/RenderBox.cpp:
7182 (WebCore::RenderBox::mapLocalToContainer):
7183 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
7184 (WebCore::RenderBox::offsetFromContainer):
7185 * rendering/RenderBox.h:
7186 * rendering/RenderInline.cpp:
7187 (WebCore::RenderInline::linesBoundingBox):
7188 (WebCore::RenderInline::offsetFromContainer):
7189 (WebCore::RenderInline::mapLocalToContainer):
7190 (WebCore::RenderInline::mapAbsoluteToLocalPoint):
7191 (WebCore::RenderInline::relativePositionedInlineOffset):
7192 * rendering/RenderInline.h:
7193 * rendering/RenderObject.cpp:
7194 (WebCore::RenderObject::offsetFromContainer):
7195 (WebCore::RenderObject::offsetFromAncestorContainer):
7196 * rendering/RenderObject.h:
7197 * rendering/RenderTableCell.cpp:
7198 (WebCore::RenderTableCell::offsetFromContainer):
7199 * rendering/RenderTableCell.h:
7200 * rendering/RenderThemeMac.mm:
7201 (WebCore::RenderThemeMac::convertToPaintingRect):
7202
7203 2011-07-06 Levi Weintraub <leviw@chromium.org>
7204
7205 Switch FrameSelection to new Layout Types
7206 https://bugs.webkit.org/show_bug.cgi?id=64043
7207
7208 Reviewed by Eric Seidel.
7209
7210 Switching the selection classes to the new layout types. Changing
7211 NoXPosForVerticalArrowNavigation to a static inline since as it stood it violated
7212 our global initializer rule when converted to numeric_limits from INT_MI N.
7213
7214 No new tests, no functionality changes.
7215
7216 * editing/FrameSelection.cpp:
7217 (WebCore::FrameSelection::modify):
7218 (WebCore::absoluteCaretY):
7219 (WebCore::FrameSelection::lineDirectionPointForBlockDirectionNavigation) :
7220 (WebCore::CaretBase::clearCaretRect):
7221 (WebCore::CaretBase::updateCaretRect):
7222 (WebCore::FrameSelection::localCaretRect):
7223 (WebCore::CaretBase::absoluteBoundsForLocalRect):
7224 (WebCore::FrameSelection::absoluteCaretBounds):
7225 (WebCore::repaintRectForCaret):
7226 (WebCore::CaretBase::caretRepaintRect):
7227 (WebCore::FrameSelection::recomputeCaretRect):
7228 (WebCore::FrameSelection::paintCaret):
7229 (WebCore::CaretBase::paintCaret):
7230 (WebCore::FrameSelection::contains):
7231 (WebCore::DragCaretController::paintDragCaret):
7232 (WebCore::FrameSelection::bounds):
7233 (WebCore::FrameSelection::revealSelection):
7234 * editing/FrameSelection.h:
7235 (WebCore::CaretBase::localCaretRectWithoutUpdate):
7236
7237 2011-07-06 Levi Weintraub <leviw@chromium.org>
7238
7239 Switch Overflow and FrameRect methods in InlineBox to Layout Units
7240 https://bugs.webkit.org/show_bug.cgi?id=64034
7241
7242 Reviewed by Eric Seidel.
7243
7244 Switching Overflow and FrameRect methods on InlineBox to new Layout Unit abstraction and
7245 cleaning up some compilation errors that crop up when building with floa ting point layout units.
7246
7247 No new tests, no functionality changes.
7248
7249 * css/CSSComputedStyleDeclaration.cpp:
7250 (WebCore::sizingBox):
7251 * dom/Document.h:
7252 * editing/DeleteButtonController.cpp:
7253 (WebCore::isDeletableElement):
7254 * inspector/DOMNodeHighlighter.cpp:
7255 (WebCore::DOMNodeHighlighter::drawNodeHighlight):
7256 * page/animation/AnimationBase.cpp:
7257 (WebCore::blendFunc):
7258 * platform/ScrollView.h:
7259 (WebCore::ScrollView::visibleWidth):
7260 (WebCore::ScrollView::visibleHeight):
7261 * platform/ScrollableArea.h:
7262 (WebCore::ScrollableArea::visibleHeight):
7263 (WebCore::ScrollableArea::visibleWidth):
7264 * platform/graphics/FloatPoint.h: Adding FloatPoint and FloatSize move[B y] functions
7265 (WebCore::FloatPoint::move):
7266 (WebCore::FloatPoint::moveBy):
7267 * rendering/AutoTableLayout.cpp:
7268 (WebCore::AutoTableLayout::computePreferredLogicalWidths):
7269 (WebCore::AutoTableLayout::layout):
7270 * rendering/InlineFlowBox.h:
7271 (WebCore::InlineFlowBox::layoutOverflowRect):
7272 (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
7273 (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
7274 (WebCore::InlineFlowBox::logicalTopLayoutOverflow):
7275 (WebCore::InlineFlowBox::logicalBottomLayoutOverflow):
7276 (WebCore::InlineFlowBox::logicalLayoutOverflowRect):
7277 (WebCore::InlineFlowBox::visualOverflowRect):
7278 (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
7279 (WebCore::InlineFlowBox::logicalRightVisualOverflow):
7280 (WebCore::InlineFlowBox::logicalTopVisualOverflow):
7281 (WebCore::InlineFlowBox::logicalBottomVisualOverflow):
7282 (WebCore::InlineFlowBox::logicalVisualOverflowRect):
7283 (WebCore::InlineFlowBox::frameRectIncludingLineHeight):
7284 (WebCore::InlineFlowBox::logicalFrameRectIncludingLineHeight):
7285 * rendering/RenderBlock.h:
7286 (WebCore::RenderBlock::RenderBlockRareData::positiveMarginBeforeDefault) :
7287 (WebCore::RenderBlock::RenderBlockRareData::negativeMarginBeforeDefault) :
7288 (WebCore::RenderBlock::RenderBlockRareData::positiveMarginAfterDefault):
7289 (WebCore::RenderBlock::RenderBlockRareData::negativeMarginAfterDefault):
7290
7291 2011-07-06 Emil A Eklund <eae@chromium.org>
7292
7293 Reviewed by Eric Seidel.
7294
7295 Switch nodeAtPoint to to new layout types
7296 https://bugs.webkit.org/show_bug.cgi?id=63663
7297
7298 No new tests, no functionality changes.
7299
7300 * rendering/EllipsisBox.cpp:
7301 (WebCore::EllipsisBox::nodeAtPoint):
7302 * rendering/EllipsisBox.h:
7303 * rendering/InlineBox.cpp:
7304 (WebCore::InlineBox::nodeAtPoint):
7305 * rendering/InlineBox.h:
7306 * rendering/InlineFlowBox.cpp:
7307 (WebCore::InlineFlowBox::nodeAtPoint):
7308 * rendering/InlineFlowBox.h:
7309 * rendering/InlineTextBox.cpp:
7310 (WebCore::InlineTextBox::nodeAtPoint):
7311 * rendering/InlineTextBox.h:
7312 * rendering/LayoutTypes.h:
7313 (WebCore::toLayoutSize):
7314 (WebCore::toLayoutPoint):
7315 (WebCore::roundedLayoutPoint):
7316 (WebCore::roundedLayoutUnit):
7317 * rendering/RenderBlock.cpp:
7318 (WebCore::RenderBlock::nodeAtPoint):
7319 * rendering/RenderBlock.h:
7320 * rendering/RenderBox.cpp:
7321 (WebCore::RenderBox::nodeAtPoint):
7322 * rendering/RenderBox.h:
7323 * rendering/RenderFrameSet.cpp:
7324 (WebCore::RenderFrameSet::nodeAtPoint):
7325 * rendering/RenderFrameSet.h:
7326 * rendering/RenderImage.cpp:
7327 (WebCore::RenderImage::nodeAtPoint):
7328 * rendering/RenderImage.h:
7329 * rendering/RenderInline.cpp:
7330 (WebCore::RenderInline::nodeAtPoint):
7331 * rendering/RenderInline.h:
7332 * rendering/RenderListBox.cpp:
7333 (WebCore::RenderListBox::nodeAtPoint):
7334 * rendering/RenderListBox.h:
7335 * rendering/RenderObject.cpp:
7336 (WebCore::RenderObject::nodeAtPoint):
7337 * rendering/RenderObject.h:
7338 * rendering/RenderTable.cpp:
7339 (WebCore::RenderTable::nodeAtPoint):
7340 * rendering/RenderTable.h:
7341 * rendering/RenderTableRow.cpp:
7342 (WebCore::RenderTableRow::nodeAtPoint):
7343 * rendering/RenderTableRow.h:
7344 * rendering/RenderTableSection.cpp:
7345 (WebCore::RenderTableSection::nodeAtPoint):
7346 * rendering/RenderTableSection.h:
7347 * rendering/RenderText.h:
7348 (WebCore::RenderText::nodeAtPoint):
7349 * rendering/RenderTextControlMultiLine.cpp:
7350 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
7351 * rendering/RenderTextControlMultiLine.h:
7352 * rendering/RenderTextControlSingleLine.cpp:
7353 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
7354 * rendering/RenderTextControlSingleLine.h:
7355 * rendering/RenderWidget.cpp:
7356 (WebCore::RenderWidget::nodeAtPoint):
7357 * rendering/RenderWidget.h:
7358 * rendering/RootInlineBox.cpp:
7359 (WebCore::RootInlineBox::nodeAtPoint):
7360 * rendering/RootInlineBox.h:
7361 * rendering/svg/RenderSVGForeignObject.cpp:
7362 (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
7363 (WebCore::RenderSVGForeignObject::nodeAtPoint):
7364 * rendering/svg/RenderSVGForeignObject.h:
7365 * rendering/svg/RenderSVGModelObject.cpp:
7366 (WebCore::RenderSVGModelObject::nodeAtPoint):
7367 * rendering/svg/RenderSVGModelObject.h:
7368 * rendering/svg/RenderSVGRoot.cpp:
7369 (WebCore::RenderSVGRoot::nodeAtPoint):
7370 * rendering/svg/RenderSVGRoot.h:
7371 * rendering/svg/RenderSVGText.cpp:
7372 (WebCore::RenderSVGText::nodeAtPoint):
7373 * rendering/svg/RenderSVGText.h:
7374 * rendering/svg/SVGInlineTextBox.cpp:
7375 (WebCore::SVGInlineTextBox::nodeAtPoint):
7376 * rendering/svg/SVGInlineTextBox.h:
7377
7378 2011-07-06 Adrienne Walker <enne@google.com>
7379
7380 [chromium] Add compositor texture manager soft limits and lost focus rec laiming
7381 https://bugs.webkit.org/show_bug.cgi?id=64009
7382
7383 Reviewed by James Robinson.
7384
7385 Add a soft limit for texture memory. Unprotected textures will get
7386 reclaimed when above this limit. Increase the hard limit for maximum
7387 texture memory as well, now that there is a better heuristic and
7388 textures are reclaimed from tabs without focus.
7389
7390 Landing this for vangelis@chromium.org.
7391
7392 * platform/graphics/chromium/LayerRendererChromium.cpp:
7393 (WebCore::LayerRendererChromium::releaseTextures):
7394 (WebCore::LayerRendererChromium::initializeSharedObjects):
7395 * platform/graphics/chromium/LayerRendererChromium.h:
7396 * platform/graphics/chromium/LayerTilerChromium.cpp:
7397 (WebCore::LayerTilerChromium::protectTileTextures):
7398 * platform/graphics/chromium/LayerTilerChromium.h:
7399 * platform/graphics/chromium/TextureManager.cpp:
7400 (WebCore::TextureManager::TextureManager):
7401 (WebCore::TextureManager::requestTexture):
7402 * platform/graphics/chromium/TextureManager.h:
7403 (WebCore::TextureManager::create):
7404
7405 2011-07-06 Pavel Feldman <pfeldman@chromium.org>
7406
7407 Not reviewed: Web Inspector: fixing typo introduced in the r90397.
7408
7409 * inspector/front-end/StylesSidebarPane.js:
7410
7411 2011-07-06 Mike Reed <reed@google.com>
7412
7413 [skia] don't include deprecated header
7414 https://bugs.webkit.org/show_bug.cgi?id=64025
7415
7416 Reviewed by James Robinson.
7417
7418 No new tests. Just removing #include of an unused header that will be go ne soon
7419
7420 * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
7421 * platform/graphics/skia/PlatformContextSkia.cpp:
7422
7423 2011-06-30 Cris Neckar <cdn@chromium.org>
7424
7425 Reviewed by Darin Fisher.
7426
7427 Add versioning to Chromium clipboard and prevent polling from inside eve nts.
7428 https://bugs.webkit.org/show_bug.cgi?id=63738
7429
7430 * platform/chromium/ChromiumDataObject.cpp:
7431 (WebCore::ChromiumDataObject::getSequenceNumber):
7432 * platform/chromium/ChromiumDataObject.h:
7433 * platform/chromium/ClipboardChromium.cpp:
7434 (WebCore::ClipboardChromium::ClipboardChromium):
7435 (WebCore::ClipboardChromium::getData):
7436 (WebCore::ClipboardChromium::platformClipboardChanged):
7437 * platform/chromium/ClipboardChromium.h:
7438 * platform/chromium/DataTransferItemChromium.cpp:
7439 (WebCore::DataTransferItemChromium::getAsString):
7440 (WebCore::DataTransferItemChromium::getAsFile):
7441 * platform/chromium/PlatformBridge.h:
7442 * svg/SVGAnimationElement.cpp:
7443 (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
7444
7445 2011-07-01 James Robinson <jamesr@chromium.org>
7446
7447 Reviewed by Stephen White.
7448
7449 [chromium] Externalize layer visibility calculation
7450 https://bugs.webkit.org/show_bug.cgi?id=63847
7451
7452 This moves the layer visibility calculation from the layer itself out to LayerRendererChromium, like the other
7453 calculated properties. Previously, we were doing this calculating at pa int time and again at draw time and
7454 relying on the fact that this produced the same value. This avoids the redundant calculation.
7455
7456 Covered by existing compositing/ layout tests.
7457
7458 * platform/graphics/chromium/ContentLayerChromium.cpp:
7459 (WebCore::ContentLayerChromium::ContentLayerChromium):
7460 (WebCore::ContentLayerChromium::paintContentsIfDirty):
7461 (WebCore::ContentLayerChromium::tilingTransform):
7462 (WebCore::ContentLayerChromium::contentBounds):
7463 (WebCore::ContentLayerChromium::updateLayerSize):
7464 (WebCore::ContentLayerChromium::draw):
7465 (WebCore::ContentLayerChromium::setTilingOption):
7466 (WebCore::ContentLayerChromium::setIsMask):
7467 * platform/graphics/chromium/ContentLayerChromium.h:
7468 * platform/graphics/chromium/ImageLayerChromium.cpp:
7469 (WebCore::ImageLayerChromium::paintContentsIfDirty):
7470 (WebCore::ImageLayerChromium::contentBounds):
7471 * platform/graphics/chromium/ImageLayerChromium.h:
7472 * platform/graphics/chromium/LayerChromium.cpp:
7473 (WebCore::LayerChromium::pushPropertiesTo):
7474 * platform/graphics/chromium/LayerChromium.h:
7475 (WebCore::LayerChromium::contentBounds):
7476 (WebCore::LayerChromium::visibleLayerRect):
7477 (WebCore::LayerChromium::setVisibleLayerRect):
7478 (WebCore::LayerChromium::draw):
7479 * platform/graphics/chromium/LayerRendererChromium.cpp:
7480 (WebCore::calculateVisibleLayerRect):
7481 (WebCore::LayerRendererChromium::paintLayerContents):
7482 (WebCore::LayerRendererChromium::drawLayer):
7483 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
7484 (WebCore::RenderSurfaceChromium::draw):
7485 * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
7486 (WebCore::CCCanvasLayerImpl::draw):
7487 * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
7488 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
7489 (WebCore::CCLayerImpl::draw):
7490 * platform/graphics/chromium/cc/CCLayerImpl.h:
7491 (WebCore::CCLayerImpl::contentBounds):
7492 (WebCore::CCLayerImpl::setContentBounds):
7493 (WebCore::CCLayerImpl::visibleLayerRect):
7494 (WebCore::CCLayerImpl::setVisibleLayerRect):
7495 (WebCore::CCLayerImpl::doubleSided):
7496 (WebCore::CCLayerImpl::setDoubleSided):
7497 * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
7498 (WebCore::CCPluginLayerImpl::draw):
7499 * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
7500 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
7501 (WebCore::CCVideoLayerImpl::draw):
7502 * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
7503
7504 2011-07-06 John Sullivan <sullivan@apple.com>
7505
7506 IconDatabase::synchronousIconForPageURL() has inconsistent API when no c ustom icon is available
7507 <https://bugs.webkit.org/show_bug.cgi?id=64015>
7508 <rdar://problem/9706277>
7509
7510 For some URLs it would return a particular size of default icon; for oth er
7511 URLs it would return 0.
7512
7513 Reviewed by Ada Chan.
7514
7515 * loader/icon/IconDatabase.cpp:
7516 (WebCore::IconDatabase::synchronousIconForPageURL):
7517 Return 0 in all cases where there is no custom icon.
7518
7519 2011-07-06 Emil A Eklund <eae@chromium.org>
7520
7521 Reviewed by Eric Seidel.
7522
7523 Switch RenderLayer::hitTest* to to new layout types
7524 https://bugs.webkit.org/show_bug.cgi?id=63640
7525
7526 Switch hit testing and supporting methods for RenderLayer over to the ne w
7527 layout unit abstraction.
7528
7529 No new tests, no functionality changes.
7530
7531 * rendering/LayoutTypes.h:
7532 (WebCore::roundedLayoutPoint):
7533 Add roundedLayoutPoint abstraction, calls roundedIntPoint now but will b e a
7534 no-op (and eventually go away) once we switch to float or fixed point.
7535
7536 * rendering/RenderLayer.cpp:
7537 (WebCore::RenderLayer::createLocalTransformState):
7538 (WebCore::RenderLayer::hitTestLayer):
7539 (WebCore::RenderLayer::hitTestList):
7540 (WebCore::RenderLayer::hitTestPaginatedChildLayer):
7541 (WebCore::RenderLayer::hitTestChildLayerColumns):
7542 (WebCore::RenderLayer::calculateRects):
7543 * rendering/RenderLayer.h:
7544
7545 2011-07-06 Simon Fraser <simon.fraser@apple.com>
7546
7547 Have RenderLayerCompositor take care of clearing backing store when ente ring the page cache
7548 https://bugs.webkit.org/show_bug.cgi?id=64018
7549
7550 Reviewed by Joseph Pecoraro.
7551
7552 Move responsibility for tearing down all RenderLayer backing stores from
7553 RenderLayer itself to RenderLayerCompositor, since RenderLayerCompositor
7554 manages backing store creation and destruction in general.
7555
7556 * page/FrameView.cpp:
7557 (WebCore::FrameView::clearBackingStores):
7558 * rendering/RenderLayer.cpp:
7559 * rendering/RenderLayer.h:
7560 * rendering/RenderLayerCompositor.cpp:
7561 (WebCore::RenderLayerCompositor::clearBackingForLayerIncludingDescendant s):
7562 (WebCore::RenderLayerCompositor::clearBackingForAllLayers):
7563 * rendering/RenderLayerCompositor.h:
7564
7565 2011-07-06 Ryuan Choi <ryuan.choi@samsung.com>
7566
7567 [Performance] Only call sendContentResizeNotification when the scrollbar actually did change
7568 https://bugs.webkit.org/show_bug.cgi?id=47320
7569
7570 Reviewed by Eric Seidel.
7571
7572 Move avoidScrollbarCreation checking code from setHasHorizontalScrollbar
7573 and setHasVerticalScrollbar to their caller in order to keep sendContent ResizedNotification
7574 false in case scrollbar is not really changed.
7575 As a result, it will remove unnecessary relayout in the above case.
7576
7577 No new tests as this is very hard to write tests for. The bug only
7578 occured when scrolling the sites which contain frame in browser with
7579 frameFlattening. This should not change functionality in other case.
7580
7581 * platform/ScrollView.cpp:
7582 (WebCore::ScrollView::setHasHorizontalScrollbar):
7583 (WebCore::ScrollView::setHasVerticalScrollbar):
7584 (WebCore::ScrollView::updateScrollbars):
7585
7586 2011-07-06 Nate Chapin <japhet@chromium.org>
7587
7588 Don't let all subresources keep isLoadingInAPISense() from
7589 returning false, only requests that affect
7590 CachedResourceRequest::requestCount().
7591 https://bugs.webkit.org/show_bug.cgi?id=62066
7592
7593 Reviewed by Adam Barth.
7594
7595 * dom/Document.cpp:
7596 (WebCore::Document::Document):
7597 (WebCore::Document::dispatchWindowLoadEvent):
7598 * dom/Document.h:
7599 (WebCore::Document::loadEventFinished):
7600 * loader/DocumentLoader.cpp:
7601 (WebCore::DocumentLoader::isLoadingInAPISense):
7602
7603 2011-07-06 Pavel Feldman <pfeldman@google.com>
7604
7605 Web Inspector: implement drag'n'drop in the elements panel for reorderin g nodes.
7606 https://bugs.webkit.org/show_bug.cgi?id=63990
7607
7608 Reviewed by Yury Semikhatsky.
7609
7610 * inspector/Inspector.json:
7611 * inspector/InspectorDOMAgent.cpp:
7612 (WebCore::InspectorDOMAgent::moveTo):
7613 * inspector/InspectorDOMAgent.h:
7614 * inspector/front-end/DOMAgent.js:
7615 (WebInspector.DOMNode.prototype._removeChild):
7616 (WebInspector.DOMNode.prototype.ownerDocumentElement):
7617 (WebInspector.DOMNode.prototype.moveTo):
7618 (WebInspector.DOMAgent.prototype._childNodeRemoved):
7619 * inspector/front-end/ElementsTreeOutline.js:
7620 (WebInspector.ElementsTreeOutline):
7621 (WebInspector.ElementsTreeOutline.prototype._ondragstart):
7622 (WebInspector.ElementsTreeOutline.prototype._ondragover):
7623 (WebInspector.ElementsTreeOutline.prototype._ondragleave):
7624 (WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget):
7625 (WebInspector.ElementsTreeOutline.prototype._ondragend.callback):
7626 (WebInspector.ElementsTreeOutline.prototype._ondragend):
7627 (WebInspector.ElementsTreeOutline.prototype._clearDragOverTreeElementMar ker):
7628 (WebInspector.ElementsTreeOutline.prototype.populateContextMenu.focusEle ment):
7629 (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
7630 (WebInspector.ElementsTreeElement.prototype.onattach):
7631 * inspector/front-end/inspector.css:
7632 (.outline-disclosure li.elements-drag-over .selection):
7633 * inspector/front-end/treeoutline.js:
7634 (TreeOutline.prototype.treeElementFromEvent):
7635
7636 2011-07-06 Andras Becsi <abecsi@webkit.org>
7637
7638 Fix "warning: a `;' might be needed at the end of action code"
7639
7640 Unreviewed gardening.
7641
7642 No new tests needed.
7643
7644 * css/CSSGrammar.y: Future versions of Bison will not add the ';' so add it.
7645
7646 2011-07-06 Andras Becsi <abecsi@webkit.org>
7647
7648 [Qt] Revome unused but set shadowBlur variable after r90406.
7649
7650 Unreviewed build fix.
7651
7652 No new tests needed.
7653
7654 * platform/graphics/qt/GraphicsContextQt.cpp:
7655 (WebCore::GraphicsContext::fillPath): Use the GraphicsContext brush.
7656
7657 2011-07-06 Andras Becsi <abecsi@webkit.org>
7658
7659 [Qt] Remove duplicate entries of ShadowBlur sources from project file.
7660
7661 Rubber-stamped by Csaba Osztrogonác.
7662
7663 No new tests needed.
7664
7665 * WebCore.pro: These files were already added in r84410.
7666
7667 2011-07-05 Kentaro Hara <haraken@google.com>
7668
7669 Trigger a 'change' event whenever selected files are changed
7670 https://bugs.webkit.org/show_bug.cgi?id=63929
7671
7672 Reviewed by Kent Tamura.
7673
7674 Record previously selected files and then compare them with newly select ed files.
7675 If the previously selected files and their order are not equal to those of
7676 the newly selected files, we trigger the 'change' event.
7677
7678 Test: fast/forms/file-input-change-event.html
7679
7680 * html/FileInputType.cpp:
7681 (WebCore::FileInputType::filesChosen): Calls dispathChangeEvent() only w hen the previously selected files are different from the newly selected files
7682
7683 2011-06-29 Kent Tamura <tkent@chromium.org>
7684
7685 Reviewed by Alexey Proskuryakov.
7686
7687 [Mac] REGRESSION (r88415): Range slider doesn't have focus appearance.
7688 https://bugs.webkit.org/show_bug.cgi?id=63573
7689
7690 * rendering/RenderThemeMac.mm:
7691 (WebCore::RenderThemeMac::paintSliderThumb):
7692 Need to pass the RenderObject of the owner <input> because
7693 updateFocusedState() checks the outline style of the specified
7694 renderer, and we'd like to make a slider thumb reflect the owner
7695 focus style.
7696
7697 2011-07-05 Hans Wennborg <hans@chromium.org>
7698
7699 [V8][Chromium] Remove use of OwnHandle from V8LocalContext
7700 https://bugs.webkit.org/show_bug.cgi?id=63925
7701
7702 Reviewed by Adam Barth.
7703
7704 Replace the OwnHandle<> member in V8LocalContext with
7705 v8::Persistent<v8::Context>.
7706 The code that used OwnHandle<> would not correctly Dispose
7707 of the Context, which would cause the memory to fill up when creating
7708 and destructing many V8LocalContext objects, such as in the case
7709 of IndexedDB.
7710
7711 * bindings/v8/V8Utilities.cpp:
7712 (WebCore::V8LocalContext::V8LocalContext):
7713 (WebCore::V8LocalContext::~V8LocalContext):
7714 * bindings/v8/V8Utilities.h:
7715
7716 2011-07-05 Igor Oliveira <igor.oliveira@openbossa.org>
7717
7718 [Qt] Add ShadowBlur support
7719 https://bugs.webkit.org/show_bug.cgi?id=62997
7720
7721 Use ShadowBlur instead of ContextShadow to handle canvas and css shadows . ShadowBlur is
7722 a newer and platform independent shadow implementation.
7723 Qt QPainter does not have support for shadows so is necessary to create a layer support
7724 to draw complex shapes and fonts. The beginShadowLayer creates a tempora ry shadow buffer
7725 where the canvas can draw onto and endShadowLayer applies the blur filte r, colors the
7726 shadow buffer and draw the final shadow to the graphics context.
7727
7728 Reviewed by Andreas Kling.
7729
7730 * WebCore.pro:
7731 * platform/graphics/GraphicsContext.cpp:
7732 * platform/graphics/GraphicsContext.h:
7733 * platform/graphics/ShadowBlur.cpp:
7734 (WebCore::ShadowBlur::ShadowBlur):
7735 (WebCore::ShadowBlur::setShadowValues):
7736 (WebCore::ShadowBlur::updateShadowBlurValues):
7737 (WebCore::ShadowBlur::clear):
7738 (WebCore::ShadowBlur::blurAndColorShadowBuffer):
7739 (WebCore::ShadowBlur::beginShadowLayer):
7740 (WebCore::ShadowBlur::endShadowLayer):
7741 * platform/graphics/ShadowBlur.h:
7742 (WebCore::ShadowBlur::type):
7743 * platform/graphics/qt/ContextShadowQt.cpp: Removed.
7744 * platform/graphics/qt/FontQt.cpp:
7745 (WebCore::drawTextCommon):
7746 (WebCore::Font::drawGlyphs):
7747 * platform/graphics/qt/GraphicsContextQt.cpp:
7748 (WebCore::GraphicsContextPlatformPrivate::mustUseShadowBlur):
7749 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate ):
7750 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivat e):
7751 (WebCore::GraphicsContext::savePlatformState):
7752 (WebCore::GraphicsContext::restorePlatformState):
7753 (WebCore::GraphicsContext::fillPath):
7754 (WebCore::GraphicsContext::strokePath):
7755 (WebCore::GraphicsContext::fillRect):
7756 (WebCore::GraphicsContext::fillRoundedRect):
7757 (WebCore::GraphicsContext::shadowBlur):
7758 (WebCore::GraphicsContext::clipBounds):
7759 (WebCore::GraphicsContext::setPlatformShadow):
7760 (WebCore::GraphicsContext::clearPlatformShadow):
7761 * platform/graphics/qt/ImageQt.cpp:
7762 (WebCore::BitmapImage::draw):
7763 * platform/graphics/qt/StillImageQt.cpp:
7764 (WebCore::StillImage::draw):
7765
7766 2011-07-05 Sam Weinig <sam@webkit.org>
7767
7768 Null deref accessing CustomEvent.detail
7769 <rdar://problem/9724577>
7770 https://bugs.webkit.org/show_bug.cgi?id=63885
7771
7772 Reviewed by Anders Carlsson.
7773
7774 Test: fast/events/custom-event-uninitialized.html
7775
7776 * bindings/scripts/CodeGeneratorJS.pm:
7777 Guard against uninitialized script value.
7778
7779 2011-07-05 Pratik Solanki <psolanki@apple.com>
7780
7781 Reviewed by Dan Bernstein.
7782
7783 Coalesce data array into one NSData before calling didReceiveData
7784 https://bugs.webkit.org/show_bug.cgi?id=63916
7785 <rdar://problem/9715181>
7786
7787 Instead of calling didReceiveData multiple times with smaller chunks of data, we merge the
7788 data buffers into one and call it once.
7789
7790 No new tests because the flag isn't enabled yet.
7791
7792 * platform/network/mac/ResourceHandleMac.mm:
7793 (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
7794
7795 2011-07-05 Tamas Czene <Czene.Tamas@stud.u-szeged.hu>
7796
7797 Reviewed by Simon Fraser.
7798
7799 Remove virtual functions from StyleImage.
7800 https://bugs.webkit.org/show_bug.cgi?id=63909
7801
7802 We can remove the virtual "isChachedImage, isPendingImage, isGeneratedIm age" functions to speed up the StyleImage.
7803 Some profile data shows this part is significant, especially in small CS S-based sites.
7804 Removing the virtual functions - removing the calls - makes a small perf ormance progression on this part.
7805
7806 * rendering/style/StyleCachedImage.h:
7807 (WebCore::StyleCachedImage::StyleCachedImage):
7808 * rendering/style/StyleGeneratedImage.h:
7809 (WebCore::StyleGeneratedImage::StyleGeneratedImage):
7810 * rendering/style/StyleImage.h:
7811 (WebCore::StyleImage::isCachedImage):
7812 (WebCore::StyleImage::isPendingImage):
7813 (WebCore::StyleImage::isGeneratedImage):
7814 (WebCore::StyleImage::StyleImage):
7815 * rendering/style/StylePendingImage.h:
7816 (WebCore::StylePendingImage::StylePendingImage):
7817
7818 2011-07-05 Pavel Feldman <pfeldman@google.com>
7819
7820 Web Inspector: add "element state" setting to the styles section title.
7821 https://bugs.webkit.org/show_bug.cgi?id=63932
7822
7823 Reviewed by Yury Semikhatsky.
7824
7825 * English.lproj/localizedStrings.js:
7826 * WebCore.gypi:
7827 * inspector/front-end/Images/paneElementStateButtons.png: Added.
7828 * inspector/front-end/StylesSidebarPane.js:
7829 (WebInspector.StylesSidebarPane.muteEventListener):
7830 (WebInspector.StylesSidebarPane):
7831 (WebInspector.StylesSidebarPane.prototype.update):
7832 (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
7833 (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules) :
7834 (WebInspector.StylesSidebarPane.prototype.addBlankSection):
7835 (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
7836 (WebInspector.StylesSidebarPane.prototype._toggleElementStatePane):
7837 (WebInspector.StylesSidebarPane.prototype._createElementStatePane.clickL istener):
7838 (WebInspector.StylesSidebarPane.prototype._createElementStatePane.create Checkbox):
7839 (WebInspector.StylesSidebarPane.prototype._createElementStatePane):
7840 * inspector/front-end/WebKit.qrc:
7841 * inspector/front-end/inspector.css:
7842 (.pane > .title > .pane-title-button:active, .pane > .title > .pane-titl e-button.toggled):
7843 (.pane > .title > .pane-title-button.element-state):
7844 (.styles-element-state-pane):
7845 (.styles-element-state-pane.expanded):
7846 (.styles-element-state-pane > table):
7847 (.styles-element-state-pane input):
7848
7849 2011-06-22 Pavel Podivilov <podivilov@chromium.org>
7850
7851 Reviewed by Yury Semikhatsky.
7852
7853 Web Inspector: extract duplicated code that deals with source mappings.
7854 https://bugs.webkit.org/show_bug.cgi?id=63139
7855
7856 * inspector/front-end/ConsoleView.js:
7857 (WebInspector.ConsoleMessage.prototype.isEqual):
7858 (WebInspector.ConsoleMessage.prototype.get stackTrace):
7859 * inspector/front-end/DebuggerPresentationModel.js:
7860 (WebInspector.DebuggerPresentationModel.prototype._uiLocationToScriptLoc ation):
7861 (WebInspector.DebuggerPresentationModel.prototype._updateAnchor):
7862 (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage.did GetUILocation):
7863 (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage):
7864 (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
7865 (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugg er.didGetScriptLocation):
7866 (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugg er):
7867 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.updat eSourceFileBreakpointsAndDispatchEvent):
7868 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didGe tUILocation):
7869 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
7870 (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
7871 (WebInspector.DebuggerPresentationModel.prototype._sourceFileForScript):
7872 (WebInspector.PresenationCallFrame):
7873 (WebInspector.PresenationCallFrame.prototype.sourceLine):
7874
7875 2011-07-05 Ilya Tikhonovsky <loislo@chromium.org>
7876
7877 Web Inspector: WebInspector frontend reports a protocol error in remote debugging mode.
7878 https://bugs.webkit.org/show_bug.cgi?id=63935
7879
7880 it was error generated for obsolete message "loaded" which was sent from frontend to backend.
7881
7882 Reviewed by Yury Semikhatsky.
7883
7884 * inspector/CodeGeneratorInspector.pm:
7885 * inspector/front-end/inspector.js:
7886 (WebInspector.loaded.WebInspector.socket.onopen):
7887 (WebInspector.loaded):
7888
7889 2011-07-05 Andrey Kosyakov <caseq@chromium.org>
7890
7891 Web Inspector: [refactoring] remove network-sidebar style, add network-l og-grid
7892 https://bugs.webkit.org/show_bug.cgi?id=63913
7893
7894 Reviewed by Yury Semikhatsky.
7895
7896 * inspector/front-end/NetworkPanel.js:
7897 (WebInspector.NetworkPanel):
7898 (WebInspector.NetworkPanel.prototype._createTable):
7899 * inspector/front-end/networkPanel.css:
7900 (.network-log-grid):
7901 (.network-log-grid table.data):
7902 (.network-log-grid.small table.data):
7903 (.network-log-grid td):
7904 (.network-log-grid.small td):
7905 (.network-log-grid th):
7906 (.network-log-grid.small th):
7907 (.network-log-grid th, .network.panel .data-grid th.sort-descending, .ne twork.panel .data-grid th.sort-ascending):
7908 (.network-log-grid .data-container):
7909 (.network-log-grid.small .data-container):
7910 (.network-log-grid select):
7911 (.network-log-grid.small tr.offscreen):
7912 (.network-log-grid tr.offscreen):
7913 (.network-log-grid tr.offscreen td):
7914 (.network-log-grid tr.filler):
7915 (.network-log-grid tr:not(.filler) td.name-column):
7916 (.network.panel:not(.viewing-resource) .network-log-grid td.name-column: hover):
7917 (.network-log-grid td.time-column):
7918 (.network-log-grid.small .network-graph-side):
7919 (.network-log-grid th.sortable:active):
7920 (.network-log-grid tr.selected .network-cell-subtitle):
7921 (.network-log-grid .icon):
7922 (.network-log-grid.small .icon):
7923 (.network-log-grid .network-category-scripts .icon):
7924 (.network-log-grid.small .network-category-scripts .icon):
7925 (.network-log-grid .network-category-documents .icon):
7926 (.network-log-grid.small .network-category-documents .icon):
7927 (.network-log-grid .network-category-stylesheets .icon):
7928 (.network-log-grid.small .network-category-stylesheets .icon):
7929 (.network-log-grid .network-category-images .icon):
7930 (.network-log-grid.small .network-category-images .icon):
7931 (.network-log-grid .image-network-icon-preview):
7932 (.network-log-grid.small .image-network-icon-preview):
7933 (.network-timeline-grid.small .network-event-divider):
7934 (.network-log-grid .resources-dividers):
7935 (.network-log-grid .resources-dividers-label-bar):
7936 (.network-timeline-grid.small .resources-dividers-label-bar):
7937 (.network-timeline-grid .resources-divider-label):
7938 (.network-timeline-grid .resources-dividers-label-bar .resources-divider ):
7939 (.network-timeline-grid.small .resources-dividers-label-bar .resources-d ivider):
7940 (.network-timeline-grid .resources-divider.first .resources-divider-labe l):
7941 (.network-timeline-grid .resources-dividers-label-bar .resources-divider .first):
7942 (.network-timeline-grid tr.filler td):
7943 (.network-summary-bar td):
7944 (.network.panel.viewing-resource .network-log-grid th):
7945 (.network-log-grid.full-grid-mode .viewer-column):
7946 (.network-log-grid.brief-grid-mode .time-column):
7947 (.network-log-grid.viewing-resource-mode .timeline-column):
7948 (.network.panel .sidebar):
7949 (.network.panel.viewing-resource .network-log-grid .data-grid-resizer):
7950
7951 2011-07-05 Alexandru Chiculita <achicu@adobe.com>
7952
7953 Reviewed by Simon Hausmann.
7954
7955 [Qt] "cat" is not available when building.
7956 https://bugs.webkit.org/show_bug.cgi?id=63924
7957
7958 Changed 'cat' to 'perl -ne \"print $1\"' because 'cat' is not available on Windows with
7959 MSVC toolchain. It passed the Qt buildbots, because they run with cygwin .
7960
7961 Project file change. No tests needed.
7962
7963 * CodeGenerators.pri:
7964 2011-07-05 Vsevolod Vlasov <vsevik@chromium.org>
7965
7966 Unreviewed; Qt Linux Release minimal compile fix.
7967
7968 * testing/Internals.h:
7969 (WebCore::Internals::setInspectorResourcesDataSizeLimits):
7970 * testing/Internals.idl:
7971
7972 2011-07-05 Vsevolod Vlasov <vsevik@chromium.org>
7973
7974 Web Inspector: Show content for plugin requests in network panel.
7975 https://bugs.webkit.org/show_bug.cgi?id=30080
7976
7977 Now the data from didReceiveData callback is passed to inspector.
7978 It is then saved in NetworkResourcesData structure for plugin requests.
7979 Added window.internals.setInspectorResourcesDataSizeLimits() method
7980 for testing replacement logic.
7981
7982 Reviewed by Pavel Feldman.
7983
7984 Tests: http/tests/inspector/network/network-content-replacement-embed.ht ml
7985 http/tests/inspector/network/network-content-replacement-xhr.html
7986 http/tests/inspector/network/network-embed.html
7987
7988 * WebCore.exp.in:
7989 * inspector/InspectorController.cpp:
7990 (WebCore::InspectorController::setResourcesDataSizeLimitsFromInternals):
7991 * inspector/InspectorController.h:
7992 * inspector/InspectorInstrumentation.cpp:
7993 (WebCore::InspectorInstrumentation::didReceiveDataImpl):
7994 * inspector/InspectorInstrumentation.h:
7995 (WebCore::InspectorInstrumentation::didReceiveData):
7996 * inspector/InspectorResourceAgent.cpp:
7997 (WebCore::InspectorResourceAgent::didReceiveResponse):
7998 (WebCore::InspectorResourceAgent::didReceiveData):
7999 (WebCore::InspectorResourceAgent::didFinishLoading):
8000 (WebCore::InspectorResourceAgent::setInitialXHRContent):
8001 (WebCore::InspectorResourceAgent::setResourcesDataSizeLimitsFromInternal s):
8002 (WebCore::InspectorResourceAgent::getResourceContent):
8003 * inspector/InspectorResourceAgent.h:
8004 * inspector/NetworkResourcesData.cpp:
8005 (WebCore::NetworkResourcesData::ResourceData::ResourceData):
8006 (WebCore::NetworkResourcesData::ResourceData::setContent):
8007 (WebCore::NetworkResourcesData::ResourceData::purgeContent):
8008 (WebCore::NetworkResourcesData::ResourceData::createDecoder):
8009 (WebCore::NetworkResourcesData::ResourceData::dataLength):
8010 (WebCore::NetworkResourcesData::ResourceData::appendData):
8011 (WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
8012 (WebCore::NetworkResourcesData::NetworkResourcesData):
8013 (WebCore::NetworkResourcesData::responseReceived):
8014 (WebCore::NetworkResourcesData::setResourceContent):
8015 (WebCore::NetworkResourcesData::maybeAddResourceData):
8016 (WebCore::NetworkResourcesData::maybeDecodeDataToContent):
8017 (WebCore::NetworkResourcesData::data):
8018 (WebCore::NetworkResourcesData::clear):
8019 (WebCore::NetworkResourcesData::setResourcesDataSizeLimits):
8020 (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
8021 (WebCore::NetworkResourcesData::ensureFreeSpace):
8022 * inspector/NetworkResourcesData.h:
8023 (WebCore::NetworkResourcesData::ResourceData::hasContent):
8024 (WebCore::NetworkResourcesData::ResourceData::content):
8025 (WebCore::NetworkResourcesData::ResourceData::decoder):
8026 (WebCore::NetworkResourcesData::ResourceData::buffer):
8027 (WebCore::NetworkResourcesData::ResourceData::setBuffer):
8028 (WebCore::NetworkResourcesData::ResourceData::hasData):
8029 * inspector/front-end/Resource.js:
8030 (WebInspector.Resource.prototype.get contentEncoded):
8031 * inspector/front-end/ResourcePreviewView.js:
8032 (WebInspector.ResourcePreviewView.prototype.contentLoaded):
8033 (WebInspector.ResourcePreviewView.prototype._createEmptyView):
8034 (WebInspector.ResourcePreviewView.prototype._createPreviewView):
8035 * inspector/front-end/ResourceView.js:
8036 (WebInspector.ResourceView.hasTextContent):
8037 * loader/DocumentThreadableLoader.cpp:
8038 (WebCore::DocumentThreadableLoader::didReceiveData):
8039 * loader/FrameLoader.cpp:
8040 (WebCore::FrameLoader::willLoadMediaElementURL):
8041 (WebCore::FrameLoader::commitProvisionalLoad):
8042 (WebCore::FrameLoader::loadResourceSynchronously):
8043 (WebCore::FrameLoader::loadedResourceFromMemoryCache):
8044 * loader/ResourceLoadNotifier.cpp:
8045 (WebCore::ResourceLoadNotifier::didReceiveData):
8046 (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
8047 (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
8048 * loader/ResourceLoadNotifier.h:
8049 * loader/appcache/ApplicationCacheGroup.cpp:
8050 (WebCore::ApplicationCacheGroup::didReceiveData):
8051 * testing/Internals.cpp:
8052 (WebCore::Internals::setInspectorResourcesDataSizeLimits):
8053 * testing/Internals.h:
8054 * testing/Internals.idl:
8055
8056 2011-07-05 Kent Tamura <tkent@chromium.org>
8057
8058 Add an assertion that percent height box is unregistered correctly.
8059 https://bugs.webkit.org/show_bug.cgi?id=62792
8060
8061 Reviewed by Hajime Morita.
8062
8063 No new tests. This won't change behavior.
8064
8065 * rendering/RenderBlock.cpp:
8066 (WebCore::RenderBlock::hasPercentHeightDescendant): Added.
8067 * rendering/RenderBlock.h: Declare hasPercentHeightDescendant().
8068 * rendering/RenderBox.cpp:
8069 (WebCore::RenderBox::destroy): Assert !hasPercentHeightDescendant().
8070
8071 2011-07-04 Pavel Feldman <pfeldman@google.com>
8072
8073 Web Inspector: Enable settings screen with settings for console and elem ents panels.
8074 https://bugs.webkit.org/show_bug.cgi?id=62853
8075
8076 Reviewed by Yury Semikhatsky.
8077
8078 * English.lproj/localizedStrings.js:
8079 * inspector/front-end/HelpScreen.js:
8080 (WebInspector.HelpScreen.prototype.hide):
8081 * inspector/front-end/SettingsScreen.js:
8082 (WebInspector.SettingsScreen):
8083 (WebInspector.SettingsScreen.prototype._createRadioSetting.clickListener ):
8084 (WebInspector.SettingsScreen.prototype._createRadioSetting.get for):
8085 * inspector/front-end/ShortcutsScreen.js:
8086 (WebInspector.ShortcutsScreen.prototype.hide):
8087 * inspector/front-end/StylesSidebarPane.js:
8088 (WebInspector.StylesSidebarPane.prototype._colorFormatSettingChanged):
8089 (WebInspector.StylesSidebarPane.prototype._updateColorFormatFilter.get v ar):
8090 (WebInspector.StylesSidebarPane.prototype._updateColorFormatFilter):
8091 (WebInspector.StylesSidebarPane.prototype._changeSetting):
8092 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
8093 * inspector/front-end/inspector.css:
8094 (#counters):
8095 * inspector/front-end/inspector.js:
8096 (WebInspector._createGlobalStatusBarItems):
8097 (WebInspector._toggleSettings):
8098 (WebInspector._showShortcutsScreen):
8099 (WebInspector._hideShortcutsScreen):
8100 (WebInspector._showSettingsScreen.onhide):
8101 (WebInspector._showSettingsScreen):
8102 (WebInspector._hideSettingsScreen):
8103 (WebInspector.documentKeyDown):
8104
8105 2011-07-05 Shinya Kawanaka <shinyak@google.com>
8106
8107 Reviewed by Kent Tamura.
8108
8109 The default step is used when attribute step of input[type='number'] is "any".
8110 https://bugs.webkit.org/show_bug.cgi?id=57723
8111
8112 When step is "any", 0 was chosen as step, but this is not intuitive.
8113 So changed to use the default step.
8114
8115 * html/HTMLInputElement.cpp:
8116 (WebCore::HTMLInputElement::getAllowedValueStep):
8117 Calls getAllowedValueStepWithDecimalPlaces with RejectAny.
8118 (WebCore::HTMLInputElement::getAllowedValueStepWithDecimalPlaces):
8119 Takes a new arugument AnyStepHandling. If it is AnyIsDefaultStep, this method
8120 allows "step" attribute to take a value "any" to use the default step as step value.
8121 Otherwise, INVALID_STATE_ERR will be returned if "step" is "any".
8122 (WebCore::HTMLInputElement::applyStep): ditto.
8123 (WebCore::HTMLInputElement::stepUp):
8124 Calls applyStep with RejectAny.
8125 (WebCore::HTMLInputElement::stepDown): ditto.
8126 (WebCore::HTMLInputElement::stepUpFromRenderer):
8127 Removes a check that step is "any". It is checked in getAllowedValueSt epWithDecimalPlaces.
8128 * html/HTMLInputElement.h:
8129
8130 2011-07-04 Dominic Cooney <dominicc@chromium.org>
8131
8132 Simplify <progress> element's isDeterminate logic.
8133 https://bugs.webkit.org/show_bug.cgi?id=63889
8134
8135 Reviewed by Hajime Morita.
8136
8137 Covered by existing tests
8138 fast/dom/HTMLProgressElement/indeterminate-progress-*.html
8139
8140 * html/HTMLProgressElement.cpp:
8141 (WebCore::HTMLProgressElement::position): don't duplicate isDeterminate
8142 (WebCore::HTMLProgressElement::isDeterminate): remove redundant tests
8143 (WebCore::HTMLProgressElement::didElementStateChange): fix formatting
8144 * html/HTMLProgressElement.h:
8145
8146 2011-07-04 Gyuyoung Kim <gyuyoung.kim@samsung.com>
8147
8148 Reviewed by Kent Tamura.
8149
8150 [EFL] Add hasOwnDisabledStateHandlingFor() to RenderThemeEfl
8151 https://bugs.webkit.org/show_bug.cgi?id=63884
8152
8153 As MediaControlRootElement decides whether it will display timeline
8154 according to the return value of RenderTheme's hasOwnDisabledStateHandli ngFor(),
8155 RenderThemeEfl has to implement this function.
8156
8157 Existing tests cover the visibility of the controls.
8158
8159 * platform/efl/RenderThemeEfl.h:
8160 (WebCore::RenderThemeEfl::hasOwnDisabledStateHandlingFor):
8161
8162 2011-07-04 Kent Tamura <tkent@chromium.org>
8163
8164 REGRESSION (r87067): Text overflows from short height text field.
8165 https://bugs.webkit.org/show_bug.cgi?id=61768
8166
8167 Reviewed by Dimitri Glazkov.
8168
8169 Since r87067, the RenderStyle for the inner text element is reset
8170 by the value update, but the renderer for the inner text element
8171 keeps to have metrics calculated by the previous style. So
8172 RenderTextControlSingleLine::layout() didn't set a desired height
8173 to the renderer for the inner text element.
8174
8175 This patch changes the style creation code so that it has the
8176 desired height initially.
8177
8178 Test: fast/forms/textfield-overflow-by-value-update.html
8179
8180 * rendering/RenderTextControlSingleLine.cpp:
8181 (WebCore::RenderTextControlSingleLine::RenderTextControlSingleLine):
8182 Initialize m_desiredInnerTextHeight.
8183 (WebCore::RenderTextControlSingleLine::layout):
8184 Update m_desiredInnerTextHeight.
8185 (WebCore::RenderTextControlSingleLine::styleDidChange):
8186 Reset m_desiredInnerTextHeight.
8187 (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
8188 Sets the height if m_desiredInnerTextHeight has a concrete value.
8189 * rendering/RenderTextControlSingleLine.h:
8190 Declare m_desiredInnerTextHeight.
8191
8192 2011-07-04 MORITA Hajime <morrita@google.com>
8193
8194 Accessing ShadowRoot.nodeList causes an assertion failure.
8195 http://webkit.org/b/63798
8196
8197 The TreeScope destructor did clear the reference to TreeScope,
8198 then the Node destructor accessing treeScope(), which results
8199 an inconsistent state during the NodeList cache cleanup.
8200
8201 This change clears NodeList cache during the TreeScope destructor.
8202 The Node destructor no longer does problematic NodeList cache
8203 manipulation.
8204
8205 Test: fast/dom/shadow/shadow-root-node-list.html
8206
8207 Reviewed by Dimitri Glazkov.
8208
8209 * dom/Node.cpp:
8210 (WebCore::Node::~Node):
8211 (WebCore::Node::clearRareData):
8212 * dom/Node.h:
8213 * dom/TreeScope.cpp:
8214 (WebCore::TreeScope::~TreeScope):
8215
8216 2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
8217
8218 ResourceLoadNotifier::dispatchWillSendRequest should not compare StringI mpl directly
8219 https://bugs.webkit.org/show_bug.cgi?id=63873
8220
8221 Reviewed by Alexey Proskuryakov.
8222
8223 * loader/ResourceLoadNotifier.cpp:
8224 (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
8225
8226 2011-07-04 Sheriff Bot <webkit.review.bot@gmail.com>
8227
8228 Unreviewed, rolling out r90373.
8229 http://trac.webkit.org/changeset/90373
8230 https://bugs.webkit.org/show_bug.cgi?id=63917
8231
8232 Breaks Qt Linux Release minimal (Requested by vsevik on
8233 #webkit).
8234
8235 * WebCore.exp.in:
8236 * inspector/InspectorController.cpp:
8237 * inspector/InspectorController.h:
8238 * inspector/InspectorInstrumentation.cpp:
8239 (WebCore::InspectorInstrumentation::didReceiveContentLengthImpl):
8240 * inspector/InspectorInstrumentation.h:
8241 (WebCore::InspectorInstrumentation::didReceiveContentLength):
8242 * inspector/InspectorResourceAgent.cpp:
8243 (WebCore::InspectorResourceAgent::didReceiveResponse):
8244 (WebCore::InspectorResourceAgent::didReceiveContentLength):
8245 (WebCore::InspectorResourceAgent::didFinishLoading):
8246 (WebCore::InspectorResourceAgent::setInitialXHRContent):
8247 (WebCore::InspectorResourceAgent::getResourceContent):
8248 * inspector/InspectorResourceAgent.h:
8249 * inspector/NetworkResourcesData.cpp:
8250 (WebCore::NetworkResourcesData::ResourceData::ResourceData):
8251 (WebCore::NetworkResourcesData::ResourceData::content):
8252 (WebCore::NetworkResourcesData::ResourceData::appendContent):
8253 (WebCore::NetworkResourcesData::ResourceData::purgeContent):
8254 (WebCore::NetworkResourcesData::NetworkResourcesData):
8255 (WebCore::NetworkResourcesData::responseReceived):
8256 (WebCore::NetworkResourcesData::addResourceContent):
8257 (WebCore::NetworkResourcesData::data):
8258 (WebCore::NetworkResourcesData::clear):
8259 (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
8260 (WebCore::NetworkResourcesData::ensureFreeSpace):
8261 * inspector/NetworkResourcesData.h:
8262 (WebCore::NetworkResourcesData::ResourceData::hasContent):
8263 (WebCore::NetworkResourcesData::ResourceData::setIsContentPurged):
8264 (WebCore::NetworkResourcesData::ResourceData::textEncodingName):
8265 (WebCore::NetworkResourcesData::ResourceData::setTextEncodingName):
8266 * inspector/front-end/Resource.js:
8267 * inspector/front-end/ResourcePreviewView.js:
8268 (WebInspector.ResourcePreviewView.prototype.contentLoaded):
8269 (WebInspector.ResourcePreviewView.prototype._createInnerView):
8270 * inspector/front-end/ResourceView.js:
8271 (WebInspector.ResourceView.hasTextContent):
8272 * loader/DocumentThreadableLoader.cpp:
8273 (WebCore::DocumentThreadableLoader::didReceiveData):
8274 * loader/FrameLoader.cpp:
8275 (WebCore::FrameLoader::willLoadMediaElementURL):
8276 (WebCore::FrameLoader::commitProvisionalLoad):
8277 (WebCore::FrameLoader::loadResourceSynchronously):
8278 (WebCore::FrameLoader::loadedResourceFromMemoryCache):
8279 * loader/ResourceLoadNotifier.cpp:
8280 (WebCore::ResourceLoadNotifier::didReceiveData):
8281 (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
8282 (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
8283 * loader/ResourceLoadNotifier.h:
8284 * loader/appcache/ApplicationCacheGroup.cpp:
8285 (WebCore::ApplicationCacheGroup::didReceiveData):
8286 * testing/Internals.cpp:
8287 * testing/Internals.h:
8288 * testing/Internals.idl:
8289
8290 2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
8291
8292 Web Inspector: Show content for plugin requests in network panel.
8293 https://bugs.webkit.org/show_bug.cgi?id=30080
8294
8295 Reviewed by Pavel Feldman.
8296
8297 Tests: http/tests/inspector/network/network-content-replacement-embed.ht ml
8298 http/tests/inspector/network/network-content-replacement-xhr.html
8299 http/tests/inspector/network/network-embed.html
8300
8301 * WebCore.exp.in:
8302 * inspector/InspectorController.cpp:
8303 (WebCore::InspectorController::setResourcesDataSizeLimitsFromInternals):
8304 * inspector/InspectorController.h:
8305 * inspector/InspectorInstrumentation.cpp:
8306 (WebCore::InspectorInstrumentation::didReceiveDataImpl):
8307 * inspector/InspectorInstrumentation.h:
8308 (WebCore::InspectorInstrumentation::didReceiveData):
8309 * inspector/InspectorResourceAgent.cpp:
8310 (WebCore::InspectorResourceAgent::didReceiveResponse):
8311 (WebCore::InspectorResourceAgent::didReceiveData):
8312 (WebCore::InspectorResourceAgent::didFinishLoading):
8313 (WebCore::InspectorResourceAgent::setInitialXHRContent):
8314 (WebCore::InspectorResourceAgent::setResourcesDataSizeLimitsFromInternal s):
8315 (WebCore::InspectorResourceAgent::getResourceContent):
8316 * inspector/InspectorResourceAgent.h:
8317 * inspector/NetworkResourcesData.cpp:
8318 (WebCore::NetworkResourcesData::ResourceData::ResourceData):
8319 (WebCore::NetworkResourcesData::ResourceData::setContent):
8320 (WebCore::NetworkResourcesData::ResourceData::purgeContent):
8321 (WebCore::NetworkResourcesData::ResourceData::createDecoder):
8322 (WebCore::NetworkResourcesData::ResourceData::dataLength):
8323 (WebCore::NetworkResourcesData::ResourceData::appendData):
8324 (WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
8325 (WebCore::NetworkResourcesData::NetworkResourcesData):
8326 (WebCore::NetworkResourcesData::responseReceived):
8327 (WebCore::NetworkResourcesData::setResourceContent):
8328 (WebCore::NetworkResourcesData::maybeAddResourceData):
8329 (WebCore::NetworkResourcesData::maybeDecodeDataToContent):
8330 (WebCore::NetworkResourcesData::data):
8331 (WebCore::NetworkResourcesData::clear):
8332 (WebCore::NetworkResourcesData::setResourcesDataSizeLimits):
8333 (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
8334 (WebCore::NetworkResourcesData::ensureFreeSpace):
8335 * inspector/NetworkResourcesData.h:
8336 (WebCore::NetworkResourcesData::ResourceData::hasContent):
8337 (WebCore::NetworkResourcesData::ResourceData::content):
8338 (WebCore::NetworkResourcesData::ResourceData::decoder):
8339 (WebCore::NetworkResourcesData::ResourceData::buffer):
8340 (WebCore::NetworkResourcesData::ResourceData::setBuffer):
8341 (WebCore::NetworkResourcesData::ResourceData::hasData):
8342 * inspector/front-end/Resource.js:
8343 (WebInspector.Resource.prototype.get contentEncoded):
8344 * inspector/front-end/ResourcePreviewView.js:
8345 (WebInspector.ResourcePreviewView.prototype.contentLoaded):
8346 (WebInspector.ResourcePreviewView.prototype._createEmptyView):
8347 (WebInspector.ResourcePreviewView.prototype._createPreviewView):
8348 * inspector/front-end/ResourceView.js:
8349 (WebInspector.ResourceView.hasTextContent):
8350 * loader/DocumentThreadableLoader.cpp:
8351 (WebCore::DocumentThreadableLoader::didReceiveData):
8352 * loader/FrameLoader.cpp:
8353 (WebCore::FrameLoader::willLoadMediaElementURL):
8354 (WebCore::FrameLoader::commitProvisionalLoad):
8355 (WebCore::FrameLoader::loadResourceSynchronously):
8356 (WebCore::FrameLoader::loadedResourceFromMemoryCache):
8357 * loader/ResourceLoadNotifier.cpp:
8358 (WebCore::ResourceLoadNotifier::didReceiveData):
8359 (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
8360 (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
8361 * loader/ResourceLoadNotifier.h:
8362 * loader/appcache/ApplicationCacheGroup.cpp:
8363 (WebCore::ApplicationCacheGroup::didReceiveData):
8364 * testing/Internals.cpp:
8365 (WebCore::Internals::setInspectorResourcesDataSizeLimits):
8366 * testing/Internals.h:
8367 * testing/Internals.idl:
8368
8369 2011-07-04 Jeff Timanus <twiz@chromium.org>
8370
8371 Reviewed by Stephen White.
8372
8373 Prevent calls to GrapicsContext3D::deleteTexture with id 0 in DrawingBuf fer::clear().
8374 https://bugs.webkit.org/show_bug.cgi?id=63756
8375
8376 * platform/graphics/gpu/DrawingBuffer.cpp:
8377 (WebCore::DrawingBuffer::clear):
8378
8379 2011-07-04 Martin Robinson <mrobinson@igalia.com>
8380
8381 Reviewed by Andreas Kling.
8382
8383 [GTK] r90148 did not apply to X11 platforms in WebKit1
8384 https://bugs.webkit.org/show_bug.cgi?id=63862
8385
8386 Correct the guard for an X11 specific piece of code. TARGET(X11) not
8387 defined for the GTK+ port.
8388
8389 No new tests. This is covered by an existing test.
8390
8391 * plugins/npapi.cpp: Correct the X11 guard.
8392 (NPN_InvalidateRect):
8393
8394 2011-07-04 Pavel Feldman <pfeldman@google.com>
8395
8396 Web Inspector: implement settings panel.
8397 https://bugs.webkit.org/show_bug.cgi?id=63907
8398
8399 Reviewed by Yury Semikhatsky.
8400
8401 * English.lproj/localizedStrings.js:
8402 * WebCore.gypi:
8403 * WebCore.vcproj/WebCore.vcproj:
8404 * inspector/front-end/BreakpointsSidebarPane.js:
8405 (WebInspector.XHRBreakpointsSidebarPane.prototype._saveBreakpoints):
8406 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._saveBreakpo ints):
8407 * inspector/front-end/ConsoleView.js:
8408 (WebInspector.ConsoleView):
8409 (WebInspector.ConsoleView.prototype._handleContextMenuEvent.monitoringXH RItemAction):
8410 (WebInspector.ConsoleView.prototype._handleContextMenuEvent.get preserve LogItemAction):
8411 (WebInspector.ConsoleView.prototype._monitoringXHREnabledSettingChanged) :
8412 (WebInspector.ConsoleView.prototype._registerShortcuts):
8413 * inspector/front-end/DOMBreakpointsSidebarPane.js:
8414 (WebInspector.DOMBreakpointsSidebarPane.prototype._saveBreakpoints):
8415 * inspector/front-end/DebuggerPresentationModel.js:
8416 (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
8417 * inspector/front-end/ElementsPanel.js:
8418 (WebInspector.ElementsPanel.prototype._contextMenuEventFired):
8419 (WebInspector.ElementsPanel.prototype._domWordWrapSettingChanged):
8420 (WebInspector.ElementsPanel.prototype._registerShortcuts):
8421 * inspector/front-end/EventListenersSidebarPane.js:
8422 (WebInspector.EventListenersSidebarPane.prototype):
8423 ():
8424 * inspector/front-end/HelpScreen.js:
8425 (WebInspector.HelpScreen):
8426 (WebInspector.HelpScreen.prototype.show):
8427 (WebInspector.HelpScreen.prototype.hide):
8428 (WebInspector.HelpScreen.prototype._onKeyDown):
8429 * inspector/front-end/NetworkItemView.js:
8430 * inspector/front-end/NetworkPanel.js:
8431 * inspector/front-end/Panel.js:
8432 (WebInspector.Panel.prototype.saveSidebarWidth):
8433 * inspector/front-end/ProfilesPanel.js:
8434 * inspector/front-end/ResourcesPanel.js:
8435 (WebInspector.BaseStorageTreeElement.prototype.onselect):
8436 (WebInspector.StorageCategoryTreeElement.prototype.onexpand):
8437 (WebInspector.StorageCategoryTreeElement.prototype.set oncollapse):
8438 * inspector/front-end/ScriptsPanel.js:
8439 (WebInspector.ScriptsPanel.prototype._sourceFileAdded.get if):
8440 (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions.callback):
8441 (WebInspector.ScriptsPanel.prototype._createSidebarButtonAndRegisterShor tcuts):
8442 * inspector/front-end/Settings.js:
8443 (WebInspector.Settings):
8444 (WebInspector.Settings.prototype.installApplicationSetting):
8445 (WebInspector.Setting):
8446 (WebInspector.Setting.prototype.addChangeListener):
8447 (WebInspector.Setting.prototype.removeChangeListener):
8448 (WebInspector.Setting.prototype.get var):
8449 (WebInspector.Setting.prototype):
8450 (WebInspector.Setting.prototype.set if):
8451 * inspector/front-end/SettingsScreen.js: Added.
8452 (WebInspector.SettingsScreen):
8453 (WebInspector.SettingsScreen.prototype._appendSection):
8454 (WebInspector.SettingsScreen.prototype._columnElement):
8455 (WebInspector.SettingsScreen.prototype._createCheckboxSetting.get listen er):
8456 (WebInspector.SettingsScreen.prototype._createRadioSetting):
8457 * inspector/front-end/ShortcutsScreen.js: Renamed from Source/WebCore/in spector/front-end/ShortcutsHelp.js.
8458 (WebInspector.ShortcutsScreen):
8459 * inspector/front-end/StylesSidebarPane.js:
8460 (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
8461 * inspector/front-end/WatchExpressionsSidebarPane.js:
8462 * inspector/front-end/WebKit.qrc:
8463 * inspector/front-end/helpScreen.css:
8464 (.help-window-main):
8465 (body.attached .help-window-main):
8466 (.help-window-caption):
8467 (body.attached .help-window-caption):
8468 (.help-content):
8469 (.help-close-button):
8470 (body.attached .help-close-button):
8471 (body.attached .help-content):
8472 (.help-table):
8473 (body.platform-mac .help-key):
8474 (.help-combine-keys):
8475 (.help-content p):
8476 (.help-content fieldset):
8477 (.help-content fieldset p):
8478 (.help-content p.help-section):
8479 (.help-section-title):
8480 (.help-content input[type=checkbox]):
8481 * inspector/front-end/inspector.css:
8482 (button.settings-status-bar-item):
8483 (.settings-status-bar-item .glyph):
8484 * inspector/front-end/inspector.html:
8485 * inspector/front-end/inspector.js:
8486 (WebInspector._createGlobalStatusBarItems):
8487 (WebInspector._toggleAttach):
8488 (WebInspector._toggleSettings):
8489 (WebInspector._registerShortcuts):
8490 (WebInspector.documentKeyDown):
8491
8492 2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
8493
8494 Web Inspector: Resources loaded to Resources Panel from InspectorPageAge nt do not have mime type set.
8495 https://bugs.webkit.org/show_bug.cgi?id=63701
8496
8497 Pass cachedResource/documentLoader mimeType from InspectorPageAgent to f rontend.
8498
8499 Reviewed by Yury Semikhatsky.
8500
8501 Test: http/tests/inspector/resource-tree/resource-tree-mimetype.html
8502
8503 * inspector/Inspector.json:
8504 * inspector/InspectorPageAgent.cpp:
8505 (WebCore::InspectorPageAgent::buildObjectForFrame):
8506 (WebCore::InspectorPageAgent::buildObjectForFrameTree):
8507 * inspector/front-end/ResourceTreeModel.js:
8508 (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
8509 (WebInspector.ResourceTreeModel.prototype._createResource):
8510
8511 2011-07-04 Yury Semikhatsky <yurys@chromium.org>
8512
8513 Web Inspector: repeated message counter should be aligned with other mes sage icons
8514 https://bugs.webkit.org/show_bug.cgi?id=63901
8515
8516 Reviewed by Pavel Feldman.
8517
8518 * inspector/front-end/inspector.css:
8519 (.console-message .bubble):
8520
8521 2011-07-04 Alexander Pavlov <apavlov@chromium.org>
8522
8523 Reviewed by Pavel Feldman.
8524
8525 Web Inspector: Adding new CSS rules should be more discoverable in the U I
8526 https://bugs.webkit.org/show_bug.cgi?id=63803
8527
8528 * inspector/front-end/StylesSidebarPane.js:
8529 (WebInspector.StylesSidebarPane.prototype._createNewRule):
8530
8531 2011-07-04 Danilo Cesar Lemes de Paula <danilo.cesar@collabora.co.uk>
8532
8533 [Qt] Fixing build with --media-stream flag enabled
8534 https://bugs.webkit.org/show_bug.cgi?id=63831
8535
8536 Reviewed by Benjamin Poulain.
8537
8538 * features.pri: Adding support to ENABLE_MEDIA_STREAM flag.
8539
8540 2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
8541
8542 Reviewed by Yury Semikhatsky.
8543
8544 Web Inspector: Update network resource url from response data.
8545 https://bugs.webkit.org/show_bug.cgi?id=63736
8546
8547 * inspector/Inspector.json:
8548 * inspector/InspectorResourceAgent.cpp:
8549 (WebCore::buildObjectForResourceResponse):
8550 * inspector/front-end/NetworkManager.js:
8551 (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
8552
8553 2011-07-04 Andrey Kosyakov <caseq@chromium.org>
8554
8555 Reviewed by Yury Semikhatsky.
8556
8557 Web Inspector: [Extensions API] audit formatter names should begin with create
8558 https://bugs.webkit.org/show_bug.cgi?id=63802
8559
8560 * inspector/front-end/ExtensionAPI.js:
8561 (WebInspector.injectedExtensionAPI.AuditResultImpl):
8562
8563 2011-07-03 Dominic Cooney <dominicc@chromium.org>
8564
8565 The value property of an indeterminate progress element should be zero
8566 https://bugs.webkit.org/show_bug.cgi?id=63861
8567
8568 Reviewed by Kent Tamura.
8569
8570 Test: fast/dom/HTMLProgressElement/set-progress-properties.html
8571
8572 * html/HTMLProgressElement.cpp:
8573 (WebCore::HTMLProgressElement::value):
8574
8575 2011-07-03 Robert Hogan <robert@webkit.org>
8576
8577 Restore scroll position on page reloads scheduled by <meta http-equiv="r efresh" content="XX"/>
8578 https://bugs.webkit.org/show_bug.cgi?id=62482
8579
8580 If a <meta http-equiv="refresh"> directive schedules a page reload rathe r than
8581 a redirect restore the scroll position after the reload. Do the same on location.reload().
8582
8583 Reviewed by Adam Barth.
8584
8585 Tests: http/tests/navigation/scrollstate-after-http-equiv-refresh-fragme nt-identifier-2.html
8586 http/tests/navigation/scrollstate-after-http-equiv-refresh-fragme nt-identifier.html
8587 http/tests/navigation/scrollstate-after-http-equiv-refresh.html
8588 http/tests/navigation/scrollstate-after-location-reload.html
8589
8590 * loader/FrameLoader.cpp:
8591 (WebCore::FrameLoader::loadURL):
8592 Only make the load FrameLoadTypeSame if it has not already been set as F rameLoadTypeReload*.
8593 FrameLoadTypeReload* loads are set through http-equiv refreshes, manual reloads, or location.reload()
8594 and honour the user's scroll position in the frame. A FrameLoadTypeSame is for when the frame is loading
8595 the same page again, e.g. by clicking a link.
8596
8597 * loader/NavigationScheduler.cpp:
8598 (WebCore::ScheduledRedirect::fire): Tell FrameLoader::changeLocation() i f this is a reload.
8599
8600 2011-07-03 Dirk Schulze <krit@webkit.org>
8601
8602 SVGAnimateTransform accumulate=sum restarts on every repeat
8603 https://bugs.webkit.org/show_bug.cgi?id=63876
8604
8605 Reviewed by Nikolas Zimmermann.
8606
8607 We applied transforms from previous animation repeats to a transform lis t. The problem is, that we calculated the current
8608 transform based on the percentage of the current repeat count. This caus es an animation starting from scale level 0
8609 on every repeat. Now I add the repeat count to the current percentage, s o that the distance calculation starts from 100% on
8610 the first repeat, from 200% on the second and so on.
8611
8612 Test: svg/animations/svgtransform-animation-1.html
8613
8614 * svg/SVGAnimateTransformElement.cpp:
8615 (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
8616
8617 2011-07-03 Sheriff Bot <webkit.review.bot@gmail.com>
8618
8619 Unreviewed, rolling out r90342.
8620 http://trac.webkit.org/changeset/90342
8621 https://bugs.webkit.org/show_bug.cgi?id=63875
8622
8623 Newly added tests fail on Mac, GTK, and Win7 (Requested by
8624 abarth on #webkit).
8625
8626 * loader/FrameLoader.cpp:
8627 (WebCore::FrameLoader::loadURL):
8628 * loader/NavigationScheduler.cpp:
8629
8630 2011-07-03 Robert Hogan <robert@webkit.org>
8631
8632 Restore scroll position on page reloads scheduled by <meta http-equiv="r efresh" content="XX"/>
8633 https://bugs.webkit.org/show_bug.cgi?id=62482
8634
8635 If a <meta http-equiv="refresh"> directive schedules a page reload rathe r than
8636 a redirect restore the scroll position after the reload. Do the same on location.reload().
8637
8638 Reviewed by Adam Barth.
8639
8640 Tests: http/tests/navigation/scrollstate-after-http-equiv-refresh-fragme nt-identifier-2.html
8641 http/tests/navigation/scrollstate-after-http-equiv-refresh-fragme nt-identifier.html
8642 http/tests/navigation/scrollstate-after-http-equiv-refresh.html
8643 http/tests/navigation/scrollstate-after-location-reload.html
8644
8645 * loader/FrameLoader.cpp:
8646 (WebCore::FrameLoader::loadURL):
8647 Only make the load FrameLoadTypeSame if it has not already been set as F rameLoadTypeReload*.
8648 FrameLoadTypeReload* loads are set through http-equiv refreshes, manual reloads, or location.reload()
8649 and honour the user's scroll position in the frame. A FrameLoadTypeSame is for when the frame is loading
8650 the same page again, e.g. by clicking a link.
8651
8652 * loader/NavigationScheduler.cpp:
8653 (WebCore::ScheduledRedirect::fire): Tell FrameLoader::changeLocation() i f this is a reload.
8654
8655 2011-04-02 Robert Hogan <robert@webkit.org>
8656
8657 Reviewed by Benjamin Poulain.
8658
8659 [Qt] Support third-party cookie policy for Qt clients
8660 https://bugs.webkit.org/show_bug.cgi?id=45455
8661
8662 Identifying third-party cookies is facilitated by API new to QUrl from
8663 Qt 4.8: QUrl::topLevelDomain(). This API uses the Mozilla public suffix
8664 list to determine the top-level registry-controlled domain of the Url.
8665
8666 See also: http://gitorious.org/qt/qt/merge_requests/1205
8667 (commit 154402f56dcf8303a6ce601a52215226af8d31ba)
8668 http://bugreports.qt.nokia.com/browse/QTBUG-13601
8669
8670 Test: http/tests/cookies/strict-third-party-cookie-blocking.html
8671
8672 * WebCore.pro:
8673 * platform/network/qt/ResourceRequestQt.cpp:
8674 (WebCore::ResourceRequest::toNetworkRequest):
8675 * platform/qt/CookieJarQt.cpp:
8676 (WebCore::setCookies):
8677 (WebCore::cookies):
8678 * platform/qt/ThirdPartyCookiesQt.cpp: Added.
8679 (WebCore::cookieJar):
8680 (WebCore::isFirstPartyCookie):
8681 (WebCore::cookieAllowed):
8682 (WebCore::allowThirdPartyCookies):
8683 * platform/qt/ThirdPartyCookiesQt.h: Added.
8684
8685 2011-07-03 Vsevolod Vlasov <vsevik@chromium.org>
8686
8687 Reviewed by Alexey Proskuryakov.
8688
8689 Web Inspector: Preflight OPTIONS requests are not shown on network panel for asynchronous XHRs.
8690 https://bugs.webkit.org/show_bug.cgi?id=63712
8691
8692 Added InspectorInstrumentation calls to preflight OPTIONS requests callb acks in DocumentThreadableLoader.
8693
8694 * loader/DocumentThreadableLoader.cpp:
8695 (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
8696 (WebCore::DocumentThreadableLoader::didReceiveResponse):
8697 (WebCore::DocumentThreadableLoader::didReceiveData):
8698 (WebCore::DocumentThreadableLoader::didFinishLoading):
8699 (WebCore::DocumentThreadableLoader::didFail):
8700 (WebCore::DocumentThreadableLoader::loadRequest):
8701 * loader/DocumentThreadableLoader.h:
8702
8703 2011-06-23 Robert Hogan <robert@webkit.org>
8704
8705 Reviewed by Simon Hausmann.
8706
8707 [Qt] Windowless Plugins : <input> cursor blinks even after transferring focus to plugin
8708 https://bugs.webkit.org/show_bug.cgi?id=30355
8709
8710 Test: plugins/mouse-click-plugin-clears-selection.html
8711
8712 PluginView needs to use page->focusController()->setFocusedNode() when f ocusing a plugin
8713 in order to clear the FrameSelection in the currently focused node. In i ts platform-specific
8714 code Chromium already does this (WebPluginContainerImpl.cpp).
8715
8716 * WebCore.exp.in: Add symbol for FocusController::setFocusedNode
8717 * plugins/PluginView.cpp:
8718 (WebCore::PluginView::focusPluginElement): Using FocusController::setFoc usedNode() makes
8719 the call to FocusController:s etFocusedFrame() and Document::setFocusedNode()
8720 redundant, since it calls bot h.
8721
8722 2011-07-01 Michael Nordman <michaeln@google.com>
8723
8724 Reviewed by Darin Fisher.
8725
8726 [Chromium] FileSystem API can be used to learn about installed software on the user's computer.
8727 Added a new MIMETypeRegistry method to return a type based on a well kno wn set of mappings
8728 without consulting the OS/registry.
8729 https://bugs.webkit.org/show_bug.cgi?id=63220
8730
8731 No new tests, existing layout tests that invoke file.type apply.
8732
8733 * fileapi/File.cpp: Refactored the factory methods.
8734 (WebCore::createBlobDataForFileWithType):
8735 (WebCore::createBlobDataForFile):
8736 (WebCore::createBlobDataForFileSystemFile):
8737 (WebCore::File::File):
8738 * platform/MIMETypeRegistry.cpp: Added getWellKnownMIMETypeForExtension( ) method.
8739 (WebCore::mediaMIMETypeMap):
8740 (WebCore::findMimeType):
8741 (WebCore::MIMETypeRegistry::getWellKnownMIMETypeForExtension):
8742 * platform/MIMETypeRegistry.h:
8743 * platform/chromium/MIMETypeRegistryChromium.cpp: Added getWellKnownMIME TypeForExtension() method.
8744 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
8745 (WebCore::MIMETypeRegistry::getWellKnownMIMETypeForExtension):
8746 (WebCore::findMimeType):
8747 * platform/chromium/PlatformBridge.h:
8748
8749 2011-07-01 Tim Horton <timothy_horton@apple.com>
8750
8751 Reviewed by Darin Adler.
8752
8753 SVG data:image/svg+xml;base64 URLs inside CSS throw mime type warning
8754 https://bugs.webkit.org/show_bug.cgi?id=54325
8755
8756 Add image/svg+xml to the list of acceptable MIME types for the Image typ e.
8757
8758 * inspector/front-end/inspector.js:
8759 (WebInspector):
8760
8761 2011-07-01 Tim Horton <timothy_horton@apple.com>
8762
8763 Reviewed by Darin Adler.
8764
8765 Errors encountered within SVG documents should be reported to the consol e
8766 https://bugs.webkit.org/show_bug.cgi?id=62599
8767
8768 Add SVGElement::reportAttributeParsingError, which will
8769 write a Web Inspector console message if passed an SVGParsingError
8770 and the attribute which was being applied, only in the case where
8771 there is actually an error.
8772
8773 Include the SVG document's URI when writing to the Web Inspector
8774 console, so that the UI displays both the filename and the line number.
8775
8776 * svg/SVGDocumentExtensions.cpp:
8777 (WebCore::reportMessage):
8778 * svg/SVGElement.cpp:
8779 (WebCore::SVGElement::reportAttributeParsingError):
8780 * svg/SVGElement.h:
8781
8782 2011-07-01 Scott Byer <scottbyer@chromium.org>
8783
8784 Reviewed by Adam Barth.
8785
8786 Smooth scrolling fixes
8787 https://bugs.webkit.org/show_bug.cgi?id=63770
8788
8789 Tests: Chromium webkit_unit_tests ScrollAnimatorNoneTest.ScrollWheelTrac e and .LinuxTrackPadTrace
8790
8791 Fix issues found in manual testing; distill the traces into unit tests. Fix the issues the tests exposed in the
8792 scroll animation code.
8793
8794 * platform/ScrollAnimatorNone.cpp:
8795 (WebCore::ScrollAnimatorNone::PerAxisData::updateDataFromParameters):
8796 (WebCore::ScrollAnimatorNone::scroll):
8797
8798 2011-07-01 Levi Weintraub <leviw@chromium.org>
8799
8800 Switch primary virtual layout functions to new layout types
8801 https://bugs.webkit.org/show_bug.cgi?id=63852
8802
8803 Reviewed by Eric Seidel.
8804
8805 Switching the primary overloaded layout functions over to the new layout unit abstraction.
8806
8807 No new tests, no functionality changes.
8808
8809 * html/shadow/MediaControlElements.cpp:
8810 (WebCore::RenderMediaVolumeSliderContainer::layout):
8811 * page/FrameView.cpp:
8812 (WebCore::FrameView::layout):
8813 * rendering/AutoTableLayout.cpp:
8814 (WebCore::AutoTableLayout::layout):
8815 * rendering/FixedTableLayout.cpp:
8816 (WebCore::FixedTableLayout::layout):
8817 * rendering/RenderBox.cpp:
8818 (WebCore::RenderBox::layout):
8819 * rendering/RenderFrameSet.cpp:
8820 (WebCore::RenderFrameSet::layout):
8821 * rendering/RenderMedia.cpp:
8822 (WebCore::RenderMedia::layout):
8823 * rendering/RenderRubyRun.cpp:
8824 (WebCore::RenderRubyRun::layout):
8825 * rendering/RenderScrollbarPart.cpp:
8826 (WebCore::RenderScrollbarPart::layout):
8827 * rendering/RenderSlider.cpp:
8828 (WebCore::RenderSlider::layout):
8829 * rendering/RenderTable.cpp:
8830 (WebCore::RenderTable::layout):
8831 * rendering/RenderTableRow.cpp:
8832 (WebCore::RenderTableRow::layout):
8833 * rendering/RenderTableSection.cpp:
8834 (WebCore::RenderTableSection::layout):
8835 * rendering/RenderTextControlSingleLine.cpp:
8836 (WebCore::RenderTextControlSingleLine::layout):
8837 * rendering/RenderView.cpp:
8838 (WebCore::RenderView::layout):
8839 * rendering/RenderView.h:
8840 (WebCore::RenderView::layoutDelta):
8841 (WebCore::RenderView::addLayoutDelta):
8842 * rendering/mathml/RenderMathMLRoot.cpp:
8843 (WebCore::RenderMathMLRoot::layout):
8844 * rendering/mathml/RenderMathMLRow.cpp:
8845 (WebCore::RenderMathMLRow::layout):
8846 * rendering/mathml/RenderMathMLSquareRoot.cpp:
8847 (WebCore::RenderMathMLSquareRoot::layout):
8848 * rendering/mathml/RenderMathMLSubSup.cpp:
8849 (WebCore::RenderMathMLSubSup::layout):
8850 * rendering/mathml/RenderMathMLUnderOver.cpp:
8851 (WebCore::RenderMathMLUnderOver::layout):
8852
8853 2011-07-01 Sam Weinig <sam@webkit.org>
8854
8855 Reduce parser nesting cap to 512
8856 https://bugs.webkit.org/show_bug.cgi?id=63856
8857
8858 Reviewed by Dan Bernstein.
8859
8860 Given Firefox's cap of 200, our cap of 2048 seemed a little excessive. L ower
8861 the nesting cap to 512 to cover more cases where rending recursion was b iting us.
8862
8863 * page/Settings.h:
8864 Reduce the nesting cap to 512.
8865
8866 2011-07-01 Darin Adler <darin@apple.com>
8867
8868 Add change accidentally left out of last commit.
8869
8870 * rendering/RenderLayerBacking.cpp:
8871 (WebCore::RenderLayerBacking::updateContentsScale): Multiply in the
8872 backing scale.
8873
8874 2011-07-01 Darin Adler <darin@apple.com>
8875
8876 Consider backing scale when setting up graphics layers
8877 https://bugs.webkit.org/show_bug.cgi?id=63848
8878
8879 Reviewed by Simon Fraser.
8880
8881 * platform/graphics/ca/GraphicsLayerCA.cpp:
8882 (WebCore::GraphicsLayerCA::clampedContentsScaleForScale):
8883 Increased the maximum scale since scale factor can now include
8884 both page contents scale and backing scale.
8885
8886 * rendering/RenderLayerBacking.cpp:
8887 (WebCore::RenderLayerBacking::createGraphicsLayer): Multiply in the
8888 backing scale as well as the page contents scale.
8889 (WebCore::RenderLayerBacking::updateForegroundLayer): Ditto.
8890 (WebCore::RenderLayerBacking::updateMaskLayer): Ditto.
8891 (WebCore::RenderLayerBacking::pageContentsScale): Added.
8892 (WebCore::RenderLayerBacking::backingScale): Added.
8893 * rendering/RenderLayerBacking.h: Added new private functions.
8894
8895 2011-07-01 Adele Peterson <adele@apple.com>
8896
8897 Reviewed by Darin Adler.
8898
8899 WebCore part of fix for https://bugs.webkit.org/show_bug.cgi?id=63851
8900 <rdar://problem/8981062> Crash when loading a document in an editable We bView that has a subframe with an unstyled body
8901
8902 No new tests. I tried to make a test in DumpRenderTree with an editable WebView,
8903 but was unsuccessful in getting the crash to happen in that instance.
8904
8905 * editing/Editor.cpp: (WebCore::Editor::applyEditingStyleToElement): Add a nil check that exits early, in addition to the ASSERT.
8906
8907 2011-07-01 Levi Weintraub <leviw@chromium.org>
8908
8909 Switch overflow and collapsedMargins to new layout types
8910 https://bugs.webkit.org/show_bug.cgi?id=63840
8911
8912 Reviewed by Eric Seidel.
8913
8914 Switching overflow and collapsedMargins over to the new layout unit abst raction.
8915
8916 Also removing an unused function: blockDirectionOverflow
8917
8918 No new tests, no functionality changes.
8919
8920 * rendering/RenderBlock.cpp:
8921 (WebCore::RenderBlock::collapsedMarginBeforeForChild):
8922 (WebCore::RenderBlock::collapsedMarginAfterForChild):
8923 * rendering/RenderBlock.h:
8924 (WebCore::RenderBlock::collapsedMarginBefore):
8925 (WebCore::RenderBlock::collapsedMarginAfter):
8926 * rendering/RenderBox.cpp:
8927 (WebCore::RenderBox::addOverflowFromChild):
8928 (WebCore::RenderBox::addLayoutOverflow):
8929 (WebCore::RenderBox::addVisualOverflow):
8930 * rendering/RenderBox.h:
8931 (WebCore::RenderBox::layoutOverflowRect):
8932 (WebCore::RenderBox::minYLayoutOverflow):
8933 (WebCore::RenderBox::maxYLayoutOverflow):
8934 (WebCore::RenderBox::minXLayoutOverflow):
8935 (WebCore::RenderBox::maxXLayoutOverflow):
8936 (WebCore::RenderBox::maxLayoutOverflow):
8937 (WebCore::RenderBox::logicalLeftLayoutOverflow):
8938 (WebCore::RenderBox::logicalRightLayoutOverflow):
8939 (WebCore::RenderBox::visualOverflowRect):
8940 (WebCore::RenderBox::minYVisualOverflow):
8941 (WebCore::RenderBox::maxYVisualOverflow):
8942 (WebCore::RenderBox::minXVisualOverflow):
8943 (WebCore::RenderBox::maxXVisualOverflow):
8944 (WebCore::RenderBox::logicalLeftVisualOverflow):
8945 (WebCore::RenderBox::logicalRightVisualOverflow):
8946 (WebCore::RenderBox::addOverflowFromChild):
8947 (WebCore::RenderBox::collapsedMarginBefore):
8948 (WebCore::RenderBox::collapsedMarginAfter):
8949 * rendering/RenderOverflow.h:
8950 (WebCore::RenderOverflow::RenderOverflow):
8951 (WebCore::RenderOverflow::minYLayoutOverflow):
8952 (WebCore::RenderOverflow::maxYLayoutOverflow):
8953 (WebCore::RenderOverflow::minXLayoutOverflow):
8954 (WebCore::RenderOverflow::maxXLayoutOverflow):
8955 (WebCore::RenderOverflow::minYVisualOverflow):
8956 (WebCore::RenderOverflow::maxYVisualOverflow):
8957 (WebCore::RenderOverflow::minXVisualOverflow):
8958 (WebCore::RenderOverflow::maxXVisualOverflow):
8959 (WebCore::RenderOverflow::setMinYLayoutOverflow):
8960 (WebCore::RenderOverflow::setMaxYLayoutOverflow):
8961 (WebCore::RenderOverflow::setMinXLayoutOverflow):
8962 (WebCore::RenderOverflow::setMaxXLayoutOverflow):
8963 (WebCore::RenderOverflow::setMinYVisualOverflow):
8964 (WebCore::RenderOverflow::setMaxYVisualOverflow):
8965 (WebCore::RenderOverflow::setMinXVisualOverflow):
8966 (WebCore::RenderOverflow::setMaxXVisualOverflow):
8967 (WebCore::RenderOverflow::layoutOverflowRect):
8968 (WebCore::RenderOverflow::visualOverflowRect):
8969 (WebCore::RenderOverflow::move):
8970 (WebCore::RenderOverflow::addLayoutOverflow):
8971 (WebCore::RenderOverflow::addVisualOverflow):
8972 (WebCore::RenderOverflow::setLayoutOverflow):
8973 (WebCore::RenderOverflow::setVisualOverflow):
8974 (WebCore::RenderOverflow::resetLayoutOverflow):
8975
8976 2011-07-01 Nate Chapin <japhet@chromium.org>
8977
8978 Ensure WorkerScriptLoader::notifyFinished() doesn't re-enter.
8979 https://bugs.webkit.org/show_bug.cgi?id=63835
8980
8981 Reviewed by Dmitry Titov.
8982
8983 Test: fast/workers/worker-finish-crash.html
8984
8985 * workers/WorkerScriptLoader.cpp:
8986 (WebCore::WorkerScriptLoader::WorkerScriptLoader):
8987 (WebCore::WorkerScriptLoader::notifyFinished):
8988 * workers/WorkerScriptLoader.h:
8989
8990 2011-07-01 Adrienne Walker <enne@google.com>
8991
8992 [chromium] Upload root layer textures first so that it is less likely to be skipped
8993 https://bugs.webkit.org/show_bug.cgi?id=63850
8994
8995 Reviewed by James Robinson.
8996
8997 This is a tiny follow-on patch to bug 63760. If the root layer is not
8998 uploaded first, then it may not have enough space to fit into texture
8999 memory and might be skipped, leaving a blue background.
9000
9001 * platform/graphics/chromium/LayerRendererChromium.cpp:
9002 (WebCore::LayerRendererChromium::updateLayers):
9003
9004 2011-07-01 Mihai Parparita <mihaip@chromium.org>
9005
9006 Reviewed by Darin Fisher.
9007
9008 location.replace with a hash change does not update the history entry
9009 https://bugs.webkit.org/show_bug.cgi?id=63777
9010
9011 location.replace('#foo') would not update the HistoryItem with the
9012 new URL, thus navigating back to the page would use the previous
9013 URL, even though it had been replaced. Make
9014 HistoryController::updateForSameDocumentNavigation mirror
9015 HistoryController::replaceState.
9016
9017 Test: fast/history/location-replace-hash.html
9018
9019 * loader/HistoryController.cpp:
9020 (WebCore::HistoryController::updateForSameDocumentNavigation):
9021
9022 2011-07-01 Ryosuke Niwa <rniwa@webkit.org>
9023
9024 Reviewed by Ojan Vafai.
9025
9026 Move m_isDirectional from FrameSelection to VisibleSelection
9027 https://bugs.webkit.org/show_bug.cgi?id=63473
9028
9029 Move m_isDirectional from FrameSelection to VisibleSelection.
9030
9031 Also fixed a bug that WebKit does not preserve non-directional selection after undo.
9032
9033 Test: editing/selection/directionality-after-undo-replace.html
9034
9035 * WebCore.exp.in: Updated the signature of setSelection.
9036 * editing/FrameSelection.cpp:
9037 (WebCore::FrameSelection::FrameSelection): Removed the call to setIsDire ctional.
9038 (WebCore::shouldAlwaysUseDirectionalSelection): Added.
9039 (WebCore::FrameSelection::setSelection): No longer takes DirectionalityP olicy.
9040 Calls setIsDirectional(true) when the platform doesn't support non-direc tional selection.
9041 Passes align and granularity to setSelection of the base end point as ex pected.
9042 No longer updates granularity when updating the selection of a different frame.
9043 (WebCore::FrameSelection::willBeModified): Calls VisibleSelection::isDir ectional().
9044 (WebCore::FrameSelection::modify): No longer calls trialFrameSelection.s etIsDirectional
9045 because the directionality is passed from m_selection automatically.
9046 Also calls shouldAlwaysUseDirectionalSelection.
9047 * editing/FrameSelection.h: Remove m_isDirectional. Make all boolean bit fields.
9048 (WebCore::FrameSelection::setSelection): No longer takes DirectionalityP olicy.
9049 * editing/VisibleSelection.cpp:
9050 (WebCore::VisibleSelection::VisibleSelection): Initializes m_isDirection al to true.
9051 This should be changed to false to fix the bug 60529.
9052 * editing/VisibleSelection.h:
9053 (WebCore::VisibleSelection::isDirectional): Added.
9054 (WebCore::VisibleSelection::setIsDirectional): Added.
9055 * page/EventHandler.cpp:
9056 (WebCore::setNonDirectionalSelectionIfNeeded): Creates a non-directional selection instead of
9057 calling setSelection with MakeNonDirectionalSelection.
9058 (WebCore::EventHandler::handleMousePressEventSingleClick): Remove the ca ll to setIsDirectional
9059 because it already calls setNonDirectionalSelectionIfNeeded.
9060
9061 2011-07-01 Tony Chang <tony@chromium.org>
9062
9063 cleanup of flexbox and marquee data naming in StyleRareNonInheritedData
9064 https://bugs.webkit.org/show_bug.cgi?id=63827
9065
9066 Reviewed by Ojan Vafai.
9067
9068 * rendering/style/RenderStyle.cpp:
9069 (WebCore::RenderStyle::RenderStyle):
9070 (WebCore::RenderStyle::diff):
9071 * rendering/style/RenderStyle.h:
9072 (WebCore::InheritedFlags::boxAlign):
9073 (WebCore::InheritedFlags::boxFlex):
9074 (WebCore::InheritedFlags::boxFlexGroup):
9075 (WebCore::InheritedFlags::boxLines):
9076 (WebCore::InheritedFlags::boxOrdinalGroup):
9077 (WebCore::InheritedFlags::boxOrient):
9078 (WebCore::InheritedFlags::boxPack):
9079 (WebCore::InheritedFlags::marqueeIncrement):
9080 (WebCore::InheritedFlags::marqueeSpeed):
9081 (WebCore::InheritedFlags::marqueeLoopCount):
9082 (WebCore::InheritedFlags::marqueeBehavior):
9083 (WebCore::InheritedFlags::marqueeDirection):
9084 (WebCore::InheritedFlags::setBoxAlign):
9085 (WebCore::InheritedFlags::setBoxFlex):
9086 (WebCore::InheritedFlags::setBoxFlexGroup):
9087 (WebCore::InheritedFlags::setBoxLines):
9088 (WebCore::InheritedFlags::setBoxOrdinalGroup):
9089 (WebCore::InheritedFlags::setBoxOrient):
9090 (WebCore::InheritedFlags::setBoxPack):
9091 (WebCore::InheritedFlags::setMarqueeIncrement):
9092 (WebCore::InheritedFlags::setMarqueeSpeed):
9093 (WebCore::InheritedFlags::setMarqueeDirection):
9094 (WebCore::InheritedFlags::setMarqueeBehavior):
9095 (WebCore::InheritedFlags::setMarqueeLoopCount):
9096 * rendering/style/StyleRareNonInheritedData.cpp:
9097 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
9098 (WebCore::StyleRareNonInheritedData::operator==):
9099 * rendering/style/StyleRareNonInheritedData.h:
9100 flexibleBox -> m_deprecatedFlexibleBox and marquee to m_marquee
9101
9102 2011-07-01 Mike Reed <reed@google.com>
9103
9104 Stop using deprecated SkDeviceFactory API
9105 https://bugs.webkit.org/show_bug.cgi?id=63488
9106
9107 Reviewed by James Robinson.
9108
9109 No new tests. Check-point for removing Factory API from Skia
9110
9111 * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
9112 (WebCore::LayerTextureUpdaterSkPicture::createFrameBuffer):
9113 * platform/graphics/skia/PlatformContextSkia.cpp:
9114 (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
9115
9116 2011-07-01 Jeffrey Pfau <jpfau@apple.com>
9117
9118 Reviewed by Adam Barth.
9119
9120 Move XMLDocumentParser to new folder xml/parser/
9121 https://bugs.webkit.org/show_bug.cgi?id=63666
9122
9123 * CMakeLists.txt:
9124 * GNUmakefile.am:
9125 * GNUmakefile.list.am:
9126 * WebCore.gyp/WebCore.gyp:
9127 * WebCore.gypi:
9128 * WebCore.pri:
9129 * WebCore.pro:
9130 * WebCore.vcproj/WebCore.vcproj:
9131 * WebCore.vcproj/WebCoreCommon.vsprops:
9132 * WebCore.vcproj/copyForwardingHeaders.cmd:
9133 * WebCore.xcodeproj/project.pbxproj:
9134 * xml/parser/XMLDocumentParser.cpp:
9135 (WebCore::XMLDocumentParser::pushCurrentNode):
9136 (WebCore::XMLDocumentParser::popCurrentNode):
9137 (WebCore::XMLDocumentParser::clearCurrentNodeStack):
9138 (WebCore::XMLDocumentParser::insert):
9139 (WebCore::XMLDocumentParser::append):
9140 (WebCore::XMLDocumentParser::handleError):
9141 (WebCore::XMLDocumentParser::enterText):
9142 (WebCore::toString):
9143 (WebCore::XMLDocumentParser::exitText):
9144 (WebCore::XMLDocumentParser::detach):
9145 (WebCore::XMLDocumentParser::end):
9146 (WebCore::XMLDocumentParser::finish):
9147 (WebCore::XMLDocumentParser::finishWasCalled):
9148 (WebCore::createXHTMLParserErrorHeader):
9149 (WebCore::XMLDocumentParser::insertErrorMessageBlock):
9150 (WebCore::XMLDocumentParser::notifyFinished):
9151 (WebCore::XMLDocumentParser::isWaitingForScripts):
9152 (WebCore::XMLDocumentParser::pauseParsing):
9153 (WebCore::XMLDocumentParser::parseDocumentFragment):
9154 * xml/parser/XMLDocumentParser.h:
9155 (WebCore::XMLParserContext::context):
9156 (WebCore::XMLParserContext::XMLParserContext):
9157 (WebCore::XMLDocumentParser::create):
9158 (WebCore::XMLDocumentParser::setIsXHTMLDocument):
9159 (WebCore::XMLDocumentParser::isXHTMLDocument):
9160 (WebCore::XMLDocumentParser::setIsXHTMLMPDocument):
9161 (WebCore::XMLDocumentParser::isXHTMLMPDocument):
9162 (WebCore::XMLDocumentParser::wellFormed):
9163 (WebCore::XMLDocumentParser::context):
9164 * xml/parser/XMLDocumentParserLibxml2.cpp:
9165 (WebCore::PendingCallbacks::~PendingCallbacks):
9166 (WebCore::PendingCallbacks::create):
9167 (WebCore::PendingCallbacks::appendStartElementNSCallback):
9168 (WebCore::PendingCallbacks::appendEndElementNSCallback):
9169 (WebCore::PendingCallbacks::appendCharactersCallback):
9170 (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
9171 (WebCore::PendingCallbacks::appendCDATABlockCallback):
9172 (WebCore::PendingCallbacks::appendCommentCallback):
9173 (WebCore::PendingCallbacks::appendInternalSubsetCallback):
9174 (WebCore::PendingCallbacks::appendErrorCallback):
9175 (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
9176 (WebCore::PendingCallbacks::isEmpty):
9177 (WebCore::PendingCallbacks::PendingCallbacks):
9178 (WebCore::PendingCallbacks::PendingCallback::~PendingCallback):
9179 (WebCore::PendingCallbacks::PendingStartElementNSCallback::~PendingStart ElementNSCallback):
9180 (WebCore::PendingCallbacks::PendingStartElementNSCallback::call):
9181 (WebCore::PendingCallbacks::PendingEndElementNSCallback::call):
9182 (WebCore::PendingCallbacks::PendingCharactersCallback::~PendingCharacter sCallback):
9183 (WebCore::PendingCallbacks::PendingCharactersCallback::call):
9184 (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::~Pendi ngProcessingInstructionCallback):
9185 (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call):
9186 (WebCore::PendingCallbacks::PendingCDATABlockCallback::~PendingCDATABloc kCallback):
9187 (WebCore::PendingCallbacks::PendingCDATABlockCallback::call):
9188 (WebCore::PendingCallbacks::PendingCommentCallback::~PendingCommentCallb ack):
9189 (WebCore::PendingCallbacks::PendingCommentCallback::call):
9190 (WebCore::PendingCallbacks::PendingInternalSubsetCallback::~PendingInter nalSubsetCallback):
9191 (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call):
9192 (WebCore::matchFunc):
9193 (WebCore::OffsetBuffer::OffsetBuffer):
9194 (WebCore::OffsetBuffer::readOutBytes):
9195 (WebCore::switchToUTF16):
9196 (WebCore::shouldAllowExternalLoad):
9197 (WebCore::openFunc):
9198 (WebCore::readFunc):
9199 (WebCore::writeFunc):
9200 (WebCore::closeFunc):
9201 (WebCore::errorFunc):
9202 (WebCore::XMLParserContext::createStringParser):
9203 (WebCore::XMLParserContext::createMemoryParser):
9204 (WebCore::XMLDocumentParser::supportsXMLVersion):
9205 (WebCore::XMLDocumentParser::XMLDocumentParser):
9206 (WebCore::XMLParserContext::~XMLParserContext):
9207 (WebCore::XMLDocumentParser::~XMLDocumentParser):
9208 (WebCore::XMLDocumentParser::doWrite):
9209 (WebCore::toString):
9210 (WebCore::toAtomicString):
9211 (WebCore::handleElementNamespaces):
9212 (WebCore::handleElementAttributes):
9213 (WebCore::XMLDocumentParser::startElementNs):
9214 (WebCore::XMLDocumentParser::endElementNs):
9215 (WebCore::XMLDocumentParser::characters):
9216 (WebCore::XMLDocumentParser::error):
9217 (WebCore::XMLDocumentParser::processingInstruction):
9218 (WebCore::XMLDocumentParser::cdataBlock):
9219 (WebCore::XMLDocumentParser::comment):
9220 (WebCore::XMLDocumentParser::startDocument):
9221 (WebCore::XMLDocumentParser::endDocument):
9222 (WebCore::XMLDocumentParser::internalSubset):
9223 (WebCore::getParser):
9224 (WebCore::hackAroundLibXMLEntityBug):
9225 (WebCore::startElementNsHandler):
9226 (WebCore::endElementNsHandler):
9227 (WebCore::charactersHandler):
9228 (WebCore::processingInstructionHandler):
9229 (WebCore::cdataBlockHandler):
9230 (WebCore::commentHandler):
9231 (WebCore::warningHandler):
9232 (WebCore::fatalErrorHandler):
9233 (WebCore::normalErrorHandler):
9234 (WebCore::sharedXHTMLEntity):
9235 (WebCore::getXHTMLEntity):
9236 (WebCore::getEntityHandler):
9237 (WebCore::startDocumentHandler):
9238 (WebCore::endDocumentHandler):
9239 (WebCore::internalSubsetHandler):
9240 (WebCore::externalSubsetHandler):
9241 (WebCore::ignorableWhitespaceHandler):
9242 (WebCore::XMLDocumentParser::initializeParserContext):
9243 (WebCore::XMLDocumentParser::doEnd):
9244 (WebCore::xmlDocPtrForString):
9245 (WebCore::XMLDocumentParser::lineNumber):
9246 (WebCore::XMLDocumentParser::columnNumber):
9247 (WebCore::XMLDocumentParser::textPosition):
9248 (WebCore::XMLDocumentParser::textPositionOneBased):
9249 (WebCore::XMLDocumentParser::stopParsing):
9250 (WebCore::XMLDocumentParser::resumeParsing):
9251 (WebCore::XMLDocumentParser::appendFragmentSource):
9252 (WebCore::attributesStartElementNsHandler):
9253 (WebCore::parseAttributes):
9254 * xml/parser/XMLDocumentParserQt.cpp:
9255 (WebCore::EntityResolver::resolveUndeclaredEntity):
9256 (WebCore::XMLDocumentParser::supportsXMLVersion):
9257 (WebCore::XMLDocumentParser::XMLDocumentParser):
9258 (WebCore::XMLDocumentParser::~XMLDocumentParser):
9259 (WebCore::XMLDocumentParser::doWrite):
9260 (WebCore::XMLDocumentParser::initializeParserContext):
9261 (WebCore::XMLDocumentParser::doEnd):
9262 (WebCore::XMLDocumentParser::lineNumber):
9263 (WebCore::XMLDocumentParser::columnNumber):
9264 (WebCore::XMLDocumentParser::textPosition):
9265 (WebCore::XMLDocumentParser::textPositionOneBased):
9266 (WebCore::XMLDocumentParser::stopParsing):
9267 (WebCore::XMLDocumentParser::resumeParsing):
9268 (WebCore::XMLDocumentParser::appendFragmentSource):
9269 (WebCore::attributesStartElementNsHandler):
9270 (WebCore::parseAttributes):
9271 (WebCore::prefixFromQName):
9272 (WebCore::handleElementNamespaces):
9273 (WebCore::handleElementAttributes):
9274 (WebCore::XMLDocumentParser::parse):
9275 (WebCore::XMLDocumentParser::startDocument):
9276 (WebCore::XMLDocumentParser::parseStartElement):
9277 (WebCore::XMLDocumentParser::parseEndElement):
9278 (WebCore::XMLDocumentParser::parseCharacters):
9279 (WebCore::XMLDocumentParser::parseProcessingInstruction):
9280 (WebCore::XMLDocumentParser::parseCdata):
9281 (WebCore::XMLDocumentParser::parseComment):
9282 (WebCore::XMLDocumentParser::endDocument):
9283 (WebCore::XMLDocumentParser::hasError):
9284 (WebCore::XMLDocumentParser::parseDtd):
9285 * xml/parser/XMLDocumentParserScope.cpp:
9286 (WebCore::XMLDocumentParserScope::XMLDocumentParserScope):
9287 (WebCore::XMLDocumentParserScope::~XMLDocumentParserScope):
9288
9289 2011-07-01 Vangelis Kokkevis <vangelis@chromium.org>
9290
9291 Reviewed by James Robinson.
9292
9293 [chromium] Reserve all tile textures at layer update time to guarantee
9294 that they will be available at draw time.
9295 https://bugs.webkit.org/show_bug.cgi?id=63760
9296
9297 In addition, this patch unreserves textures used by RenderSurface's
9298 right after the RenderSurface has been used to free up memory for
9299 subsequent RenderSurfaces.
9300
9301 This patch also "fixes" the pages that display a blue background when
9302 running out of texture memory as the root layer tiles get reserved first
9303 and are guaranteed to get textures.
9304
9305 * platform/graphics/chromium/ContentLayerChromium.cpp:
9306 (WebCore::ContentLayerChromium::ContentLayerChromium):
9307 (WebCore::ContentLayerChromium::visibleLayerRect):
9308 (WebCore::ContentLayerChromium::setIsMask):
9309 * platform/graphics/chromium/ContentLayerChromium.h:
9310 * platform/graphics/chromium/ImageLayerChromium.cpp:
9311 (WebCore::ImageLayerChromium::paintContentsIfDirty):
9312 * platform/graphics/chromium/LayerRendererChromium.cpp:
9313 (WebCore::LayerRendererChromium::paintLayerContents):
9314 (WebCore::LayerRendererChromium::drawLayer):
9315 (WebCore::LayerRendererChromium::initializeSharedObjects):
9316 * platform/graphics/chromium/LayerTexture.cpp:
9317 (WebCore::LayerTexture::unreserve):
9318 * platform/graphics/chromium/LayerTexture.h:
9319 * platform/graphics/chromium/LayerTilerChromium.cpp:
9320 (WebCore::LayerTilerChromium::prepareToUpdate):
9321 (WebCore::LayerTilerChromium::updateRect):
9322 (WebCore::LayerTilerChromium::drawTiles):
9323 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
9324 (WebCore::RenderSurfaceChromium::releaseContentsTexture):
9325 * platform/graphics/chromium/RenderSurfaceChromium.h:
9326 * platform/graphics/chromium/TextureManager.cpp:
9327 (WebCore::TextureManager::unprotectTexture):
9328 * platform/graphics/chromium/TextureManager.h:
9329
9330 2011-07-01 Jungshik Shin <jshin@chromium.org>
9331
9332 Reviewed by Alexey Proskuryakov.
9333
9334 Allow generic font family settings per script code.
9335 https://bugs.webkit.org/show_bug.cgi?id=20797
9336
9337 Make generic font family getters/setters accept an additional
9338 argument (script code). It has a default value so that if an embedder
9339 does not have/want a per-script font family setting, call-sites
9340 don't have to be changed.
9341 This is to prepare for fixing bug 10874 (font selection is not
9342 language-dependent) and bug 18085.
9343
9344 uscript.h has been updated to that of ICU 3.6 (the version of ICU on
9345 Mac OS 10.5)
9346
9347 There should be no change in layout and no new layout test
9348 is added.
9349
9350 * WebCore.exp.in:
9351 * icu/unicode/uscript.h: updated to ICU 4.6
9352 * page/Settings.cpp:
9353 (WebCore::setGenericFontFamilyMap): helper to set generic family per scr ipt
9354 (WebCore::getGenericFontFamilyForScript): helper function used by getter s for fooFontFamily.
9355 (WebCore::Settings::standardFontFamily):
9356 (WebCore::Settings::setStandardFontFamily):
9357 (WebCore::Settings::fixedFontFamily):
9358 (WebCore::Settings::setFixedFontFamily):
9359 (WebCore::Settings::serifFontFamily):
9360 (WebCore::Settings::setSerifFontFamily):
9361 (WebCore::Settings::sansSerifFontFamily):
9362 (WebCore::Settings::setSansSerifFontFamily):
9363 (WebCore::Settings::cursiveFontFamily):
9364 (WebCore::Settings::setCursiveFontFamily):
9365 (WebCore::Settings::fantasyFontFamily):
9366 (WebCore::Settings::setFantasyFontFamily):
9367 * page/Settings.h: setter and getter for FooFontFamily have a new option al argument, scriptCode.
9368
9369 2011-07-01 Tony Chang <tony@chromium.org>
9370
9371 Reviewed by Ojan Vafai.
9372
9373 rename StyleFlexibleBoxData to StyleDeprecatedFlexibleBoxData
9374 https://bugs.webkit.org/show_bug.cgi?id=63773
9375
9376 We will have a similar struct to hold CSS3 flexible box data, so
9377 this makes way for the new class.
9378 I will rename the member variable in RenderStyle.h in a follow up
9379 change.
9380
9381 * CMakeLists.txt:
9382 * GNUmakefile.list.am:
9383 * WebCore.gypi:
9384 * WebCore.order:
9385 * WebCore.pro:
9386 * WebCore.vcproj/WebCore.vcproj:
9387 * WebCore.xcodeproj/project.pbxproj:
9388 * rendering/style/RenderStyle.h:
9389 * rendering/style/StyleAllInOne.cpp:
9390 * rendering/style/StyleDeprecatedFlexibleBoxData.cpp:
9391 (WebCore::StyleDeprecatedFlexibleBoxData::StyleDeprecatedFlexibleBoxData ):
9392 (WebCore::StyleDeprecatedFlexibleBoxData::operator==):
9393 * rendering/style/StyleDeprecatedFlexibleBoxData.h:
9394 (WebCore::StyleDeprecatedFlexibleBoxData::create):
9395 (WebCore::StyleDeprecatedFlexibleBoxData::copy):
9396 (WebCore::StyleDeprecatedFlexibleBoxData::operator!=):
9397 * rendering/style/StyleRareNonInheritedData.h:
9398
9399 2011-07-01 Hans Wennborg <hans@chromium.org>
9400
9401 Reviewed by Tony Chang.
9402
9403 IndexedDB: Fix constants for webkitIDBTransaction.READ_WRITE/READ_ONLY
9404 https://bugs.webkit.org/show_bug.cgi?id=63754
9405
9406 Fix values for the webkitIDBTransaction.READ_WRITE/READ_ONLY
9407 constants. Douglas Stockwell pointed out that these were reverse
9408 of what the spec says.
9409
9410 * storage/IDBTransaction.h:
9411 * storage/IDBTransaction.idl:
9412
9413 2011-07-01 Levi Weintraub <leviw@chromium.org>
9414
9415 Reviewed by Eric Seidel.
9416
9417 Switch positionForPoint to new layout types
9418 https://bugs.webkit.org/show_bug.cgi?id=63774
9419
9420 Switching positionForPoint functions to new layout unit abstraction.
9421
9422 No new tests, no functionality changes.
9423
9424 * rendering/RenderBR.cpp:
9425 (WebCore::RenderBR::positionForPoint):
9426 * rendering/RenderBR.h:
9427 * rendering/RenderBlock.cpp:
9428 (WebCore::RenderBlock::positionForPoint):
9429 * rendering/RenderBlock.h:
9430 * rendering/RenderBox.cpp:
9431 (WebCore::RenderBox::positionForPoint):
9432 * rendering/RenderBox.h:
9433 * rendering/RenderFileUploadControl.cpp:
9434 (WebCore::RenderFileUploadControl::positionForPoint):
9435 * rendering/RenderFileUploadControl.h:
9436 * rendering/RenderInline.cpp:
9437 (WebCore::RenderInline::positionForPoint):
9438 * rendering/RenderInline.h:
9439 * rendering/RenderObject.cpp:
9440 (WebCore::RenderObject::positionForPoint):
9441 * rendering/RenderReplaced.cpp:
9442 (WebCore::RenderReplaced::positionForPoint):
9443 * rendering/RenderReplaced.h:
9444 * rendering/RenderText.cpp:
9445 (WebCore::RenderText::positionForPoint):
9446 * rendering/RenderText.h:
9447 * rendering/RenderTextControlSingleLine.cpp:
9448 (WebCore::RenderTextControlInnerBlock::positionForPoint):
9449 * rendering/RenderTextControlSingleLine.h:
9450 * rendering/svg/RenderSVGInlineText.cpp:
9451 (WebCore::RenderSVGInlineText::positionForPoint):
9452 * rendering/svg/RenderSVGInlineText.h:
9453 * rendering/svg/RenderSVGText.cpp:
9454 (WebCore::RenderSVGText::positionForPoint):
9455 * rendering/svg/RenderSVGText.h:
9456
9457 2011-07-01 Andrew Scherkus <scherkus@chromium.org>
9458
9459 Reviewed by Darin Fisher.
9460
9461 Re-enable WTF_USE_WEBAUDIO_FFMPEG for Chromium
9462 https://bugs.webkit.org/show_bug.cgi?id=63783
9463
9464 * WebCore.gyp/WebCore.gyp:
9465
9466 2011-07-01 Patrick Gansterer <paroga@webkit.org>
9467
9468 Reviewed by Daniel Bates.
9469
9470 [CMake] Don't compile unused bindings
9471 https://bugs.webkit.org/show_bug.cgi?id=63741
9472
9473 * UseJSC.cmake: Added IF (ENABLE_XXX) around files.
9474
9475 2011-07-01 Joone Hur <joone.hur@collabora.co.uk>
9476
9477 Reviewed by Martin Robinson.
9478
9479 [GTK] Add DeviceOrientation feature
9480 https://bugs.webkit.org/show_bug.cgi?id=63720
9481
9482 Add DeviceMotionClientGtk.cpp and DeviceOrientationClientGtk.cpp to WebK itGtk+ build.
9483
9484 * GNUmakefile.am: Add DeviceMotionClientGtk.cpp, DeviceOrientationClient Gtk.cpp.
9485
9486 2011-07-01 Kentaro Hara <haraken@google.com>
9487
9488 Reviewed by Kent Tamura.
9489
9490 Disallow clicking an [X] button in 'search' input forms when 'disabled' attribute or 'readonly' attribute is set.
9491 https://bugs.webkit.org/show_bug.cgi?id=63709
9492
9493 Ignore a cancel button event on a 'search' input form if 'disabled' attr ibute or
9494 'readonly' attribute is set to the input form.
9495
9496 Test: fast/forms/search-disabled-readonly.html
9497
9498 * html/shadow/TextControlInnerElements.cpp:
9499 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
9500
9501 2011-06-30 Mikhail Naganov <mnaganov@chromium.org>
9502
9503 Reviewed by Yury Semikhatsky.
9504
9505 Web Inspector: [Chromium] Fix heap snapshots in a remote debugging sessi on from Safari.
9506 https://bugs.webkit.org/show_bug.cgi?id=63703
9507
9508 * inspector/front-end/HeapSnapshotWorker.js:
9509 (.Function.prototype.bind.return.bound):
9510 (.Function.prototype.bind):
9511
9512 2011-07-01 Dirk Schulze <krit@webkit.org>
9513
9514 Reviewed by Nikolas Zimmermann.
9515
9516 SVGAnimatedLengthListAnimator does not take additive="sum" into accout
9517 https://bugs.webkit.org/show_bug.cgi?id=63705
9518
9519 Added support for additive animations to SVGAnimatedLengthListAnimator. Don't clear the animatedList if not
9520 necessary.
9521
9522 SVGLength unit gets animated as well now. We used to take the unit of 'f rom' all the time.
9523
9524 Tests: svg/animations/svglength-animation-unitType.html
9525 svg/animations/svglengthlist-animation-5.html
9526
9527 * svg/SVGAnimatedLength.cpp:
9528 (WebCore::SVGAnimatedLengthAnimator::calculateAnimatedValue): Code clean -up and support for unit animation.
9529 * svg/SVGAnimatedLengthList.cpp: Add support for additive animations.
9530 (WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
9531 * svg/SVGLength.cpp:
9532 (WebCore::SVGLength::SVGLength):
9533 (WebCore::SVGLength::setValue): New setValue that gets the LengthType an d UnitType as argument for supporting animations of units as well.
9534 * svg/SVGLength.h:
9535
9536 2011-07-01 Dirk Schulze <krit@webkit.org>
9537
9538 Reviewed by Nikolas Zimmermann.
9539
9540 SVGAnimatedType should support SVGAnimatedInteger animation
9541 https://bugs.webkit.org/show_bug.cgi?id=63789
9542
9543 Follow up of "SVGAnimation should use direct unit animation for SVGLengt h": https://bugs.webkit.org/show_bug.cgi?id=61368
9544 This patch continues the conversion to the new concept of SVGAnimatorFac tory with SVGAnimatedInteger.
9545
9546 SVGAnimatedInteger is used for some attributes of SVG filter effects. Th e animation of those attributes work after this patch.
9547
9548 Test: svg/animations/svginteger-animation-1.html
9549
9550 * CMakeLists.txt: Added file to build system.
9551 * GNUmakefile.list.am: Ditto.
9552 * WebCore.gypi: Ditto.
9553 * WebCore.pro: Ditto.
9554 * WebCore.xcodeproj/project.pbxproj: Ditto.
9555 * svg/SVGAllInOne.cpp: Ditto.
9556 * svg/SVGAnimateElement.cpp: Make use of AnimatedInteger.
9557 (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
9558 (WebCore::SVGAnimateElement::calculateAnimatedValue):
9559 (WebCore::SVGAnimateElement::calculateFromAndToValues):
9560 (WebCore::SVGAnimateElement::calculateFromAndByValues):
9561 (WebCore::SVGAnimateElement::resetToBaseValue):
9562 (WebCore::SVGAnimateElement::applyResultsToTarget):
9563 (WebCore::SVGAnimateElement::calculateDistance):
9564 * svg/SVGAnimatedInteger.cpp: Added. The new animator for SVGAnimatedInt eger.
9565 (WebCore::SVGAnimatedIntegerAnimator::SVGAnimatedIntegerAnimator):
9566 (WebCore::SVGAnimatedIntegerAnimator::constructFromString):
9567 (WebCore::SVGAnimatedIntegerAnimator::calculateFromAndToValues):
9568 (WebCore::SVGAnimatedIntegerAnimator::calculateFromAndByValues):
9569 (WebCore::SVGAnimatedIntegerAnimator::calculateAnimatedValue):
9570 (WebCore::SVGAnimatedIntegerAnimator::calculateDistance):
9571 * svg/SVGAnimatedInteger.h:
9572 (WebCore::SVGAnimatedIntegerAnimator::~SVGAnimatedIntegerAnimator):
9573 * svg/SVGAnimatedType.cpp: Added handler for AnimatedInteger.
9574 (WebCore::SVGAnimatedType::~SVGAnimatedType):
9575 (WebCore::SVGAnimatedType::createInteger):
9576 (WebCore::SVGAnimatedType::integer):
9577 (WebCore::SVGAnimatedType::valueAsString):
9578 (WebCore::SVGAnimatedType::setValueAsString):
9579 * svg/SVGAnimatedType.h:
9580 * svg/SVGAnimatorFactory.h:
9581 (WebCore::SVGAnimatorFactory::create):
9582
9583 2011-06-30 Eugene Klyuchnikov <eustas.bug@gmail.com>
9584
9585 Reviewed by Pavel Feldman.
9586
9587 WebInspector: Performance / memory allocation issue in WebInspector.Text EditorModel.prototype._replaceTabsIfNeeded
9588 https://bugs.webkit.org/show_bug.cgi?id=40447
9589
9590 Test: inspector/editor/text-editor-model-replace-tabs.html
9591
9592 * inspector/front-end/TextEditorModel.js:
9593 (WebInspector.TextEditorModel.prototype._replaceTabsIfNeeded): avoid loo ped production of tail substrings
9594
9595 2011-06-30 Kent Tamura <tkent@chromium.org>
9596
9597 Reviewed by Tony Chang.
9598
9599 [Chromium] Input type="range" slider thumb is rendered upside down on Ma c OS X.
9600 https://bugs.webkit.org/show_bug.cgi?id=63697
9601
9602 http://trac.webkit.org/changeset/86261 added a thumb flipping code
9603 for Mac-WebKit2. Chromium also needs it.
9604
9605 * rendering/RenderThemeMac.mm:
9606 (WebCore::RenderThemeMac::paintSliderThumb): Always flip vertically on C hromium.
9607
9608 2011-06-30 Kenichi Ishibashi <bashi@chromium.org>
9609
9610 Reviewed by Simon Fraser.
9611
9612 [Chromium] -webkit-text-stroke doesn't affect with non-zero width border property
9613 https://bugs.webkit.org/show_bug.cgi?id=63698
9614
9615 Restore the stroke style when it is modified in RenderObject::drawLineFo rBoxSide() to show text stroke correctly.
9616
9617 Test: platform/chromium/fast/text/text-stroke-with-border.html
9618
9619 * rendering/RenderObject.cpp:
9620 (WebCore::RenderObject::drawLineForBoxSide): Save/restore the stroke sty le.
9621
9622 2011-06-30 Gwang Yoon Hwang <ryumiel@company100.net>
9623
9624 Reviewed by Nate Chapin.
9625
9626 [V8] Add ENABLE(INSPECTOR) guards around v8 custom bindings.
9627 https://bugs.webkit.org/show_bug.cgi?id=63442
9628
9629 No new tests needed.
9630
9631 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
9632 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
9633
9634 2011-06-30 Levi Weintraub <leviw@chromium.org>
9635
9636 Reviewed by Eric Seidel.
9637
9638 Remove positionForCoordinates
9639 https://bugs.webkit.org/show_bug.cgi?id=63765
9640
9641 Removing positionForCoordinate. We should always use positionForPoint. A lso cleaning up
9642 RenderBox's implementation of positionForPoint.
9643
9644 No new tests, there should be no functionality changes.
9645
9646 * accessibility/AccessibilityRenderObject.cpp:
9647 (WebCore::AccessibilityRenderObject::stringValue): Removing dead, or at least untested, code and
9648 adding an ASSERT_NOT_REACHED.
9649 (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
9650 * rendering/RenderBox.cpp:
9651 (WebCore::RenderBox::positionForPoint): cleaning up some ugly code.
9652 * rendering/RenderInline.cpp:
9653 (WebCore::RenderInline::positionForPoint):
9654 * rendering/RenderObject.cpp:
9655 * rendering/RenderObject.h:
9656
9657 2011-06-30 Zhenyao Mo <zmo@google.com>
9658
9659 Reviewed by Kenneth Russell.
9660
9661 Improve WebGL object lifetime management in WebGLRenderingContext
9662 https://bugs.webkit.org/show_bug.cgi?id=63635
9663
9664 * html/canvas/WebGLRenderingContext.cpp:
9665 (WebCore::WebGLRenderingContext::getAttachedShaders): Use cached objects instead of querying the underlying GL.
9666 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): Dit to.
9667 (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects): Multiple lo op because objects might be removed from the table within an iteration.
9668 * html/canvas/WebGLRenderingContext.h:
9669
9670 2011-06-30 Rafael Brandao <rafael.lobo@openbossa.org>
9671
9672 Reviewed by Andreas Kling.
9673
9674 [Qt] build-webkit warning: cannot find file ElementShadowPseudoId.h
9675 https://bugs.webkit.org/show_bug.cgi?id=63747
9676
9677 Removed reference to ElementShadowPseudoId.h that no longer exists.
9678
9679 * WebCore.pro:
9680
9681 2011-06-30 Anders Carlsson <andersca@apple.com>
9682
9683 Fix clang build.
9684
9685 Remove the complete Widget constructor from the .exp.in file; since Widg et is an abstract class,
9686 its complete constructor can never be called and clang has stopped emitt ing it altogether.
9687
9688 * WebCore.exp.in:
9689
9690 2011-06-30 Levi Weintraub <leviw@chromium.org>
9691
9692 Reviewed by Eric Seidel.
9693
9694 Switch paintingRootRect and RenderObject repaint methods to new layout t ypes
9695 https://bugs.webkit.org/show_bug.cgi?id=63746
9696
9697 Switching paintingRootRect and RenderObject repaint functions over to th e
9698 new layout unit abstraction.
9699
9700 No new tests, no functionality changes.
9701
9702 * rendering/RenderBox.cpp:
9703 (WebCore::RenderBox::repaintDuringLayoutIfMoved):
9704 * rendering/RenderBox.h:
9705 * rendering/RenderObject.cpp:
9706 (WebCore::RenderObject::paintingRootRect):
9707 (WebCore::RenderObject::paint):
9708 (WebCore::RenderObject::repaintUsingContainer):
9709 (WebCore::RenderObject::repaintRectangle):
9710 (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
9711 (WebCore::RenderObject::repaintDuringLayoutIfMoved):
9712 * rendering/RenderObject.h:
9713
9714 2011-06-30 Cary Clark <caryclark@google.com>
9715
9716 Reviewed by James Robinson.
9717
9718 Use Skia if Skia on Mac Chrome is enabled
9719 https://bugs.webkit.org/show_bug.cgi?id=62999
9720
9721 No new tests. This does not affect existing
9722 functionality.
9723
9724 * WebCore.gyp/WebCore.gyp:
9725 Include Skia and related files and exclude CG
9726 and related files when building Chromium for Skia
9727 on the Mac.
9728
9729 * loader/cache/CachedFont.cpp:
9730 Rename CHROME to CHROMIUM.
9731
9732 * platform/chromium/DragImageRef.h:
9733 * platform/graphics/FloatPoint.h:
9734 * platform/graphics/FloatRect.h:
9735 * platform/graphics/FloatSize.h:
9736 * platform/graphics/FontPlatformData.h:
9737 (WebCore::FontPlatformData::hash):
9738 * platform/graphics/GlyphBuffer.h:
9739 (WebCore::GlyphBuffer::advanceAt):
9740 (WebCore::GlyphBuffer::add):
9741 (WebCore::GlyphBuffer::expandLastAdvance):
9742 * platform/graphics/IntPoint.h:
9743 * platform/graphics/IntRect.h:
9744 * platform/graphics/IntSize.h:
9745 * platform/graphics/SimpleFontData.h:
9746 * platform/graphics/cg/FloatPointCG.cpp:
9747 * platform/graphics/cg/FloatRectCG.cpp:
9748 * platform/graphics/cg/FloatSizeCG.cpp:
9749 * platform/graphics/cg/IntPointCG.cpp:
9750 * platform/graphics/cg/IntRectCG.cpp:
9751 * platform/graphics/cg/IntSizeCG.cpp:
9752 * platform/graphics/mac/FontCustomPlatformData.cpp:
9753 (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
9754 (WebCore::createFontCustomPlatformData):
9755 * platform/graphics/mac/FontCustomPlatformData.h:
9756 (WebCore::FontCustomPlatformData::FontCustomPlatformData):
9757 Ditto.
9758
9759 2011-06-30 Julien Chaffraix <jchaffraix@webkit.org>
9760
9761 Reviewed by Nikolas Zimmermann.
9762
9763 Update SVG position values on SVG DOM updates
9764 https://bugs.webkit.org/show_bug.cgi?id=62439
9765
9766 Test: svg/custom/crash-textPath-attributes.html
9767
9768 * rendering/svg/RenderSVGInline.cpp:
9769 (WebCore::RenderSVGInline::destroy): Notify our containing RenderSVGText that it needs
9770 to update its positioning information.
9771
9772 * rendering/svg/SVGInlineFlowBox.cpp:
9773 (WebCore::SVGInlineFlowBox::calculateBoundaries): Check the type of the InlineBox
9774 like the rest of the code (fixes an ASSERT_NOT_REACHED in InlineBox::cal culateBoudaries).
9775
9776 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
9777 (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSu btree): Clear
9778 our cached layout attributes every time we invalidate them. This avoids keeping stale
9779 attribute that have a backpointer to a RenderObject.
9780
9781 2011-06-30 Sreeram Ramachandran <sreeram@chromium.org>
9782
9783 Reviewed by Adam Barth.
9784
9785 Suppress modal JavaScript/HTML dialogs during unload events
9786 https://bugs.webkit.org/show_bug.cgi?id=56397
9787
9788 Allows clients to specify whether to show alerts during unload handlers.
9789 When checking for whether a page dismissal event is being dispatched,
9790 it's important to check all frames on the page (otherwise it becomes a
9791 loophole easily exploited).
9792
9793 Test: fast/loader/page-dismissal-modal-dialogs.html
9794
9795 * loader/FrameLoader.cpp:
9796 (WebCore::FrameLoader::FrameLoader):
9797 (WebCore::FrameLoader::stopLoading):
9798 (WebCore::FrameLoader::loadURL):
9799 (WebCore::FrameLoader::loadWithDocumentLoader):
9800 (WebCore::FrameLoader::stopAllLoaders):
9801 (WebCore::FrameLoader::fireBeforeUnloadEvent):
9802 * loader/FrameLoader.h:
9803 (WebCore::FrameLoader::pageDismissalEventBeingDispatched):
9804 * loader/cache/CachedResourceLoader.cpp:
9805 (WebCore::CachedResourceLoader::requestImage):
9806 * page/Chrome.cpp:
9807 (WebCore::canRunModalIfDuringPageDismissal):
9808 (WebCore::Chrome::canRunModalNow):
9809 (WebCore::Chrome::runJavaScriptAlert):
9810 (WebCore::Chrome::runJavaScriptConfirm):
9811 (WebCore::Chrome::runJavaScriptPrompt):
9812 * page/Chrome.h:
9813 * page/ChromeClient.h:
9814 (WebCore::ChromeClient::shouldRunModalDialogDuringPageDismissal):
9815 * page/DOMWindow.cpp:
9816 (WebCore::DOMWindow::showModalDialog):
9817
9818 2011-06-30 Julien Chaffraix <jchaffraix@webkit.org>
9819
9820 Reviewed by Nikolas Zimmermann.
9821
9822 Assertion failure in RenderSVGInlineText::characterStartsNewTextChunk
9823 https://bugs.webkit.org/show_bug.cgi?id=63076
9824
9825 Tests: svg/custom/crash-text-in-textpath.svg
9826 svg/custom/text-node-in-text-invalidated.svg
9827
9828 The problem was that we did not call setNeedsPositionUpdate on RenderSVG Text. When
9829 doing our layout, we would not update the attributes on our SVGRenderInl ineText as
9830 we would not lay it out.
9831
9832 This was caused by childrenChanged being overridden on SVGTextPositionin gElement but
9833 not on SVGTextPathElement.
9834
9835 As both classes shared the same mother class, it made sense to move the logic here.
9836 There should be no other side effects as SVGTextPathElement and SVGTextP ositioningElement
9837 are the only classes deriving from SVGTextContentElement.
9838
9839 * svg/SVGTextContentElement.cpp:
9840 (WebCore::SVGTextContentElement::childrenChanged): Moved this method fro m SVGTextPositioningElement.
9841 * svg/SVGTextContentElement.h:
9842 * svg/SVGTextPositioningElement.cpp:
9843 (WebCore::SVGTextPositioningElement::svgAttributeChanged): Updated after updatePositioningValuesInRenderer
9844 removal, replaced by RenderSVGText::locateRenderSVGTextAncestor.
9845 * svg/SVGTextPositioningElement.h:
9846
9847 2011-06-30 Patrick Gansterer <paroga@webkit.org>
9848
9849 Unreviewed build fix for !ENABLE(DATABASE) after r84789.
9850
9851 * bindings/js/JSDOMBinding.cpp:
9852
9853 2011-06-30 Anders Carlsson <andersca@apple.com>
9854
9855 Reviewed by Dan Bernstein.
9856
9857 More ScrollableArea scaffolding
9858 https://bugs.webkit.org/show_bug.cgi?id=63678
9859
9860 Add a way to get the enclosing scrollable area for a given scrollable ar ea.
9861 Also, add ScrollableArea::isPinnedInDirectionOfScrollDelta.
9862
9863 * page/FrameView.cpp:
9864 (WebCore::FrameView::enclosingScrollableArea):
9865 Return 0 for now.
9866
9867 * page/FrameView.h:
9868 Add FrameView::enclosingScrollableArea.
9869
9870 * platform/ScrollableArea.cpp:
9871 (WebCore::ScrollableArea::isPinnedInDirectionOfScrollDelta):
9872 Return whether the area is pinned in the direction of the scroll delta.
9873
9874 * platform/ScrollableArea.h:
9875 Add new member functions.
9876
9877 * platform/chromium/FramelessScrollView.cpp:
9878 (WebCore::FramelessScrollView::enclosingScrollableArea):
9879 * platform/chromium/FramelessScrollView.h:
9880 Add stub.
9881
9882 * platform/win/PopupMenuWin.h:
9883 (WebCore::PopupMenuWin::enclosingScrollableArea):
9884 Always return 0.
9885
9886 * rendering/RenderLayer.cpp:
9887 (WebCore::RenderLayer::enclosingScrollableLayer):
9888 Add helper function.
9889
9890 (WebCore::RenderLayer::scrollByRecursively):
9891 Use the new enclosingScrollableLayer helper function.
9892
9893 (WebCore::RenderLayer::enclosingScrollableArea):
9894 Return the enclosing scrollable area.
9895
9896 * rendering/RenderLayer.h:
9897 Add new member function.
9898
9899 * rendering/RenderListBox.cpp:
9900 (WebCore::RenderListBox::enclosingScrollableArea):
9901 Return 0 for now.
9902
9903 * rendering/RenderListBox.h:
9904 Add new member function.
9905
9906 2011-06-30 Martin Robinson <mrobinson@igalia.com>
9907
9908 Reviewed by Anders Carlsson.
9909
9910 [GTK] Crash observed with nspluginwrapper and flash
9911 https://bugs.webkit.org/show_bug.cgi?id=62249
9912
9913 Test: plugins/invalidate-rect-with-null-npp-argument.html
9914
9915 * plugins/npapi.cpp:
9916 (NPN_InvalidateRect): Guard against null instances here.
9917
9918 2011-06-30 Levi Weintraub <leviw@chromium.org>
9919
9920 Reviewed by Eric Seidel.
9921
9922 Switch availableWidth/Height, logicalLeft/RightOffsetForLine to new layo ut types
9923 https://bugs.webkit.org/show_bug.cgi?id=63671
9924
9925 Switch availableWidth/Height, logicalLeft/RightOffsetForLine functions o ver to the
9926 new layout unit abstraction.
9927
9928 No new tests, no functionality changes.
9929
9930 * rendering/RenderBlock.cpp:
9931 (WebCore::RenderBlock::logicalLeftOffsetForLine):
9932 (WebCore::RenderBlock::logicalRightOffsetForLine):
9933 (WebCore::RenderBlock::availableLogicalWidthForLine):
9934 (WebCore::RenderBlock::availableLogicalWidth):
9935 * rendering/RenderBlock.h:
9936 (WebCore::RenderBlock::logicalRightOffsetForLine):
9937 (WebCore::RenderBlock::logicalLeftOffsetForLine):
9938 (WebCore::RenderBlock::startOffsetForLine):
9939 * rendering/RenderBox.cpp:
9940 (WebCore::RenderBox::availableLogicalHeight):
9941 (WebCore::RenderBox::availableLogicalHeightUsing):
9942 * rendering/RenderBox.h:
9943 (WebCore::RenderBox::availableLogicalWidth):
9944 (WebCore::RenderBox::availableWidth):
9945 (WebCore::RenderBox::availableHeight):
9946
9947 2011-06-30 Adam Barth <abarth@webkit.org>
9948
9949 Remove useless ASSERT that breaks the build.
9950
9951 * dom/StyledElement.cpp:
9952 (WebCore::parseColorStringWithCrazyLegacyRules):
9953
9954 2011-06-30 Tab Atkins <jackalmage@gmail.com>
9955
9956 Reviewed by Adam Barth.
9957
9958 Fix legacy color attribute parsing to match HTML spec
9959 https://bugs.webkit.org/show_bug.cgi?id=63029
9960
9961 Relevant spec link: http://www.whatwg.org/specs/web-apps/current-work/co mplete/common-microsyntaxes.html#rules-for-parsing-a-legacy-color-value
9962 Fix legacy color attribute parsing (<body bgcolor>, <font color>, etc.) to match the HTML spec and more closely match other browsers.
9963
9964 Test: fast/dom/attribute-legacy-colors.html
9965
9966 * dom/StyledElement.cpp:
9967 (WebCore::StyledElement::addCSSColor):
9968
9969 2011-06-28 Hans Wennborg <hans@chromium.org>
9970
9971 Reviewed by Tony Chang.
9972
9973 IndexedDB: Prepare for running layout tests with LevelDB
9974 https://bugs.webkit.org/show_bug.cgi?id=63593
9975
9976 Migration of data from SQLite to LevelDB must be done before the
9977 m_backingStore map is checked for an open LevelDB, because if a
9978 previous layout test has used LevelDB, it will be in the
9979 m_backingStore map.
9980
9981 Covered by existing layout tests.
9982
9983 * storage/IDBFactoryBackendImpl.cpp:
9984 (WebCore::IDBFactoryBackendImpl::open):
9985
9986 2011-06-30 Pavel Feldman <pfeldman@chromium.org>
9987
9988 Reviewed by Yury Semikhatsky.
9989
9990 Web Inspector: introduce "filter" icons for timeline panel and elements sidebar.
9991 https://bugs.webkit.org/show_bug.cgi?id=63731
9992
9993 * inspector/front-end/EventListenersSidebarPane.js:
9994 * inspector/front-end/Images/paneFilterButtons.png: Added.
9995 * inspector/front-end/Images/statusbarButtonGlyphs.png:
9996 * inspector/front-end/StylesSidebarPane.js:
9997 * inspector/front-end/inspector.css:
9998 (.pane > .title > select):
9999 (.pane > .title > select.select-settings):
10000 (.pane > .title > select.select-filter):
10001 (.timeline-filter-status-bar-item .glyph):
10002
10003 2011-06-28 Hans Wennborg <hans@chromium.org>
10004
10005 Reviewed by Tony Chang.
10006
10007 IndexedDB: Support for deleteIndex with LevelDB backing store
10008 https://bugs.webkit.org/show_bug.cgi?id=63539
10009
10010 Covered by storage/indexeddb/mozilla/remove-index.html.
10011
10012 * storage/IDBLevelDBBackingStore.cpp:
10013 (WebCore::IDBLevelDBBackingStore::deleteIndex):
10014
10015 2011-06-30 Abhishek Arya <inferno@chromium.org>
10016
10017 Reviewed by Ryosuke Niwa.
10018
10019 Crash when calling DOMSubtreeModified event when extracting range
10020 contents.
10021 https://bugs.webkit.org/show_bug.cgi?id=63650
10022
10023 Convert a few nodes to RefPtrs and add commonRoot verification checks
10024 for Range::processContents.
10025
10026 Tests: fast/dom/Range/range-extract-contents-event-fire-crash.html
10027 fast/dom/Range/range-extract-contents-event-fire-crash2.html
10028
10029 * dom/Range.cpp:
10030 (WebCore::childOfCommonRootBeforeOffset):
10031 (WebCore::Range::processContents):
10032 (WebCore::Range::processContentsBetweenOffsets):
10033 (WebCore::Range::processAncestorsAndTheirSiblings):
10034
10035 2011-06-30 Dan Bernstein <mitz@apple.com>
10036
10037 Reviewed by Adele Peterson.
10038
10039 Add +[WebView _allowsRoundingHacks]
10040 https://bugs.webkit.org/show_bug.cgi?id=63734
10041
10042 * WebCore.exp.in: Export TextRun::allowsRoundingHacks().
10043 * platform/graphics/TextRun.cpp:
10044 (WebCore::TextRun::allowsRoundingHacks): Added this accessor.
10045 * platform/graphics/TextRun.h:
10046
10047 2011-06-30 Patrick Gansterer <paroga@webkit.org>
10048
10049 Reviewed by Adam Roben.
10050
10051 [WIN] Don't redefine the keyboard codes
10052 https://bugs.webkit.org/show_bug.cgi?id=63726
10053
10054 Only define the codes when undefined.
10055 r64957 fixed this problem for COMPILER(MINGW) but not for OS(WINCE).
10056
10057 * platform/WindowsKeyboardCodes.h:
10058
10059 2011-06-30 Yury Semikhatsky <yurys@chromium.org>
10060
10061 Reviewed by Pavel Feldman.
10062
10063 Web Inspector: hide "Enabled background events collection" option in con text menu until the setting is persisted
10064 https://bugs.webkit.org/show_bug.cgi?id=63708
10065
10066 The option has no much sense if it is not preserved between browser rest arts.
10067
10068 * inspector/front-end/NetworkPanel.js:
10069 (WebInspector.NetworkPanel.prototype._contextMenu):
10070
10071 2011-06-30 Patrick Gansterer <paroga@webkit.org>
10072
10073 Reviewed by Darin Adler.
10074
10075 Remove dependnecy on IDL generation for disabled features in JSC binding s
10076 https://bugs.webkit.org/show_bug.cgi?id=63718
10077
10078 Move the #if ENABLE() line directly after #include "config.h".
10079 This enables us to compile all files even when we don't generate the IDL output.
10080
10081 * bindings/js/IDBBindingUtilities.cpp:
10082 * bindings/js/JSConsoleCustom.cpp:
10083 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
10084 * bindings/js/JSCustomXPathNSResolver.cpp:
10085 * bindings/js/JSDOMApplicationCacheCustom.cpp:
10086 * bindings/js/JSDeviceMotionEventCustom.cpp:
10087 * bindings/js/JSDeviceOrientationEventCustom.cpp:
10088 * bindings/js/JSInjectedScriptHostCustom.cpp:
10089 * bindings/js/JSInjectedScriptManager.cpp:
10090 * bindings/js/JSInspectorFrontendHostCustom.cpp:
10091 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
10092 * bindings/js/JSSQLResultSetRowListCustom.cpp:
10093 * bindings/js/JSSQLTransactionCustom.cpp:
10094 * bindings/js/JSSQLTransactionSyncCustom.cpp:
10095 * bindings/js/JSSVGElementInstanceCustom.cpp:
10096 * bindings/js/JSStorageCustom.cpp:
10097 * bindings/js/JSTouchCustom.cpp:
10098 * bindings/js/JSTouchListCustom.cpp:
10099 * bindings/js/JSXPathResultCustom.cpp:
10100 * bindings/js/JavaScriptCallFrame.cpp:
10101 * bindings/js/PageScriptDebugServer.cpp:
10102 * bindings/js/ScriptDebugServer.cpp:
10103 * bindings/js/ScriptGCEvent.cpp:
10104 * bindings/js/ScriptProfile.cpp:
10105 * bindings/js/WorkerScriptDebugServer.cpp:
10106
10107 2011-06-30 Alexander Pavlov <apavlov@chromium.org>
10108
10109 Reviewed by Kent Tamura.
10110
10111 [Chromium] Autofill suggestions appear in upper left corner after input change
10112 https://bugs.webkit.org/show_bug.cgi?id=63702
10113
10114 This change fixes a few popup layout issues, some of which have existed for quite a while:
10115 - the absence of the ChromeClientImpl::screenToWindow() implementation ( the method used to always return (0, 0));
10116 - the confusion of window and screen coordinates passed into the autofil l popup client's setWindowRect() method;
10117 - the use of the current frameRect() width as the target element's width (which was wrong when refreshing
10118 a popup resized during the initial layout (e.g. made wider than the ta rget element)).
10119
10120 No new tests, as this is a change to platform-specific widget code. The test case is provided in the bug description.
10121
10122 * platform/chromium/PopupMenuChromium.cpp:
10123 (WebCore::PopupContainer::layoutAndGetRTLOffset): Use original target el ement width, not frameRect().width(),
10124 since the latter gets updated if the popup is not the same width as the target element.
10125 (WebCore::PopupContainer::refresh): Restore only the popup bounds rather than its original rectangle,
10126 since it sometimes breaks the invalidation region and layout.
10127
10128 2011-06-30 Sheriff Bot <webkit.review.bot@gmail.com>
10129
10130 Unreviewed, rolling out r90102.
10131 http://trac.webkit.org/changeset/90102
10132 https://bugs.webkit.org/show_bug.cgi?id=63714
10133
10134 Lots of tests asserting beneath
10135 SVGSMILElement::findInstanceTime (Requested by aroben on
10136 #webkit).
10137
10138 * svg/animation/SVGSMILElement.cpp:
10139 (WebCore::SVGSMILElement::findInstanceTime):
10140
10141 2011-06-30 Andrey Kosyakov <caseq@chromium.org>
10142
10143 Reviewed by Yury Semikhatsky.
10144
10145 Web Inspector: remove ExtensionAPISchema.json
10146 https://bugs.webkit.org/show_bug.cgi?id=63687
10147
10148 * inspector/front-end/ExtensionAPISchema.json: Removed.
10149
10150 2011-06-30 Ilya Tikhonovsky <loislo@chromium.org>
10151
10152 Unreviewed build fix for chromium.
10153
10154 * inspector/CodeGeneratorInspector.pm:
10155
10156 2011-06-30 Ilya Tikhonovsky <loislo@chromium.org>
10157
10158 Unreviewed build fix for mac.
10159
10160 * inspector/CodeGeneratorInspector.pm:
10161
10162 2011-06-30 Ilya Tikhonovsky <loislo@chromium.org>
10163
10164 Reviewed by Pavel Feldman.
10165
10166 Web Inspector: Protocol: error object needs some improvement.
10167 https://bugs.webkit.org/show_bug.cgi?id=63707
10168
10169 Current implementation is not useful in the code.
10170 We need to have toString implementation with nice formatting
10171 I'd like to use error.message property as the main place for the error's text.
10172
10173 * inspector/CodeGeneratorInspector.pm:
10174
10175 2011-06-30 Mikhail Naganov <mnaganov@chromium.org>
10176
10177 Reviewed by Yury Semikhatsky.
10178
10179 Web Inspector: [Chromium] Support annotations for arrays in heap profile r.
10180 https://bugs.webkit.org/show_bug.cgi?id=63690
10181
10182 * inspector/front-end/DetailedHeapshotGridNodes.js:
10183 (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
10184
10185
10186 2011-06-30 Patrick Gansterer <paroga@webkit.org>
10187
10188 Unreviewed build fix for !ENABLE(SVG_ANIMATION) after r88663, r89187, r8 9220, r89431 and r89661.
10189
10190 * svg/SVGAnimatedAngle.h:
10191 * svg/SVGAnimatedLength.h:
10192 * svg/SVGAnimatedNumber.h:
10193 * svg/SVGAnimatedRect.h:
10194 * svg/SVGAnimatedString.h:
10195
10196 2011-06-30 Gabor Loki <loki@webkit.org>
10197
10198 Reviewed by Csaba Osztrogonác.
10199
10200 Fixed several style and typo issues after r90091.
10201 https://bugs.webkit.org/show_bug.cgi?id=63692
10202
10203 Rename yStart to extremaStartY during computing extremas
10204
10205 * platform/graphics/filters/FEMorphology.cpp:
10206 (WebCore::FEMorphology::platformApplyGeneric):
10207 * platform/graphics/filters/FEMorphology.h:
10208
10209 2011-06-30 Oliver Varga <Varga.Oliver@stud.u-szeged.hu>
10210
10211 Reviewed by Nikolas Zimmermann.
10212
10213 Speed up SVGSMILElement::findInstanceTime.
10214 https://bugs.webkit.org/show_bug.cgi?id=61025
10215
10216 Replace the linear search to binary search on ordered list because
10217 the previous searches from the beginning was not efficient.
10218
10219 No new tests this is only a performance tweak.
10220
10221 * svg/animation/SVGSMILElement.cpp:
10222 (WebCore::extractTimeFromVector):
10223 (WebCore::SVGSMILElement::findInstanceTime):
10224
10225 2011-06-30 Kentaro Hara <haraken@google.com>
10226
10227 Reviewed by Kent Tamura.
10228
10229 Change the label of an HTML5 file chooser button to "Choose Files"
10230 https://bugs.webkit.org/show_bug.cgi?id=49245
10231
10232 We should notify capability of multiple files to users.
10233
10234 Test: fast/forms/input-file-label.html
10235
10236 * English.lproj/Localizable.strings:
10237 * html/FileInputType.cpp:
10238 (WebCore::UploadButtonElement::createForMultiple): Constructs a multiple file chooser button.
10239 (WebCore::FileInputType::createShadowSubtree): Constructs a single/multi ple file chooser button depending on 'multiple' attribute.
10240 (WebCore::FileInputType::multipleAttributeChanged): Updates the label of the file chooser button.
10241 * html/FileInputType.h:
10242 * html/HTMLInputElement.cpp:
10243 (WebCore::HTMLInputElement::parseMappedAttribute): Updates the shadow tr ee of the file chooser button when 'multiple' attribute is set or unset.
10244 * html/InputType.cpp:
10245 (WebCore::InputType::multipleAttributeChanged): Virtual method to be ove rridden by FileInputType.
10246 * html/InputType.h:
10247 * platform/DefaultLocalizationStrategy.cpp:
10248 (WebCore::DefaultLocalizationStrategy::fileButtonChooseFileLabel): Updat ed the description for "Choose File".
10249 (WebCore::DefaultLocalizationStrategy::fileButtonChooseMultipleFilesLabe l): Returns a string "Choose Files".
10250 * platform/DefaultLocalizationStrategy.h:
10251 * platform/LocalizationStrategy.h:
10252 * platform/LocalizedStrings.cpp:
10253 (WebCore::fileButtonChooseMultipleFilesLabel): Wrapper method for gettin g the "Choose Files" label.
10254 * platform/LocalizedStrings.h:
10255 * platform/brew/LocalizedStringsBrew.cpp:
10256 (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
10257 * platform/efl/LocalizedStringsEfl.cpp:
10258 (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
10259 * platform/gtk/LocalizedStringsGtk.cpp:
10260 (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
10261 * platform/haiku/LocalizedStringsHaiku.cpp:
10262 (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
10263 * platform/wx/LocalizedStringsWx.cpp:
10264 (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
10265
10266 2011-06-30 Ryosuke Niwa <rniwa@webkit.org>
10267
10268 Reviewed by Kent Tamura.
10269
10270 Replace isNodeInTextFormControl(Node*) by enclosingTextFormControl(const Position&)
10271 https://bugs.webkit.org/show_bug.cgi?id=63672
10272
10273 Replaced isNodeInTextFormControl(Node*) by enclosingTextFormControl(cons t Position&).
10274 Also added a safe toTextFormControl to HTMLFormControlElement.h.
10275
10276 * editing/DeleteSelectionCommand.cpp:
10277 (WebCore::DeleteSelectionCommand::doApply): Calls enclosingTextFormContr ol instead of manually
10278 checking the tag name of shadowAncestorNode.
10279 * editing/Editor.cpp:
10280 (WebCore::Editor::selectionForCommand): Rewritten using enclosingTextFor mControl and toTextFormControl.
10281 (WebCore::Editor::cut): Calls enclosingTextFormControl instead of isNode InTextFormControl.
10282 (WebCore::Editor::copy): Ditto.
10283 (WebCore::Editor::setBaseWritingDirection): Calls toTextFormControl inst ead of manually checking tag name.
10284 * editing/FrameSelection.cpp:
10285 (WebCore::FrameSelection::isInPasswordField): Calls enclosingTextFormCon trol.
10286 * editing/ReplaceSelectionCommand.cpp:
10287 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
10288 * editing/htmlediting.cpp:
10289 (WebCore::enclosingTextFormControl): Added.
10290 * editing/htmlediting.h:
10291 * html/HTMLFormControlElement.h:
10292 (WebCore::toTextFormControl): Added.
10293 * page/DragController.cpp:
10294 (WebCore::DragController::startDrag): Calls enclosingTextFormControl ins tead of isNodeInTextFormControl.
10295
10296 2011-06-27 Pavel Podivilov <podivilov@chromium.org>
10297
10298 Reviewed by Pavel Feldman.
10299
10300 Web Inspector: source code is not highlighted after drawer height animat ions.
10301 https://bugs.webkit.org/show_bug.cgi?id=62860
10302
10303 * inspector/front-end/Drawer.js:
10304 (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
10305 (WebInspector.Drawer.prototype._animateDrawerHeight):
10306
10307 2011-06-30 MORITA Hajime <morrita@google.com>
10308
10309 Reviewed by Dimitri Glazkov.
10310
10311 Crash if ShadowRoot has a text node.
10312 https://bugs.webkit.org/show_bug.cgi?id=63607
10313
10314 Node::styleForRenderer() for Text node wasn't shadow-aware.
10315 This change allow styleForRenderer() to know its visual parent by
10316 passing NodeRenderingContext.
10317
10318 Changes other than NodeRenderingContext and Element is just a
10319 follow up for change above.
10320
10321 * dom/Element.cpp: use NodeRenderingContext to resolve parent node.
10322 (WebCore::Element::recalcStyle):
10323 * dom/Node.cpp:
10324 (WebCore::Node::styleForRenderer): Added NodeRenderingContext as a param eter.
10325 * dom/Node.h:
10326 * dom/NodeRenderingContext.cpp:
10327 (WebCore::NodeRendererFactory::createRendererAndStyle):
10328 * html/HTMLOptGroupElement.cpp:
10329 (WebCore::HTMLOptGroupElement::attach):
10330 * html/HTMLOptionElement.cpp:
10331 (WebCore::HTMLOptionElement::attach):
10332 * html/HTMLTitleElement.cpp:
10333 (WebCore::HTMLTitleElement::textWithDirection):
10334 * html/shadow/TextControlInnerElements.cpp:
10335 (WebCore::TextControlInnerElement::styleForRenderer):
10336 (WebCore::TextControlInnerTextElement::styleForRenderer):
10337 * html/shadow/TextControlInnerElements.h:
10338
10339 Test: fast/dom/shadow/shadow-root-text-child.html
10340
10341 2011-06-30 Piroska András <Piroska.Andras@stud.u-szeged.hu>
10342
10343 Reviewed by Dirk Schulze.
10344
10345 Apply the ParallelJobs support to FEMorphology
10346 https://bugs.webkit.org/show_bug.cgi?id=63064
10347
10348 The FEMorphology filter of SVG can consume lots of resources if it is
10349 applied to a large area. The computation can be distributed to multiple
10350 cores if the architecture supports.
10351 The average performance progression is 20-25% on dual-core machines.
10352
10353 * platform/graphics/filters/FEMorphology.cpp:
10354 (WebCore::FEMorphology::platformApplyGeneric): Apply the filter between yStart and yEnd interval
10355 (WebCore::FEMorphology::platformApplyWorker): Call the generic apply fro m a parallel worker
10356 (WebCore::FEMorphology::platformApply):
10357 (WebCore::FEMorphology::apply): Move the functionality into platformAppl y
10358 (WebCore::FEMorphology::externalRepresentation): Remove whitespaces
10359 * platform/graphics/filters/FEMorphology.h:
10360
10361 2011-06-29 Kent Tamura <tkent@chromium.org>
10362
10363 Reviewed by Dimitri Glazkov.
10364
10365 Avoid custom layout code of RenderTextControlSingleLine
10366 https://bugs.webkit.org/show_bug.cgi?id=61415
10367
10368 If a text field has a search results button, a search cancel
10369 button, a speech button, or a spin button, the editable inner text
10370 element and the buttons are wrapped by a flexible box container,
10371 and the editable inner text element has flexibility. As the result
10372 of applying the flexible box, we don't need any horizontal layout
10373 code in RenderTextControlSingleLine except the inner spin button.
10374
10375 Also, we remove custom hit-testing code in nodeAtPoint(). If a
10376 user clicks on a position left of the inner editable text but not
10377 on the search results button, the search results button doesn't
10378 work though it worked.
10379
10380 * css/html.css:
10381 (input::-webkit-textfield-decoration-container):
10382 New style definition for the "container" element.
10383 (input[type="search"]::-webkit-search-cancel-button):
10384 It should be a block element because it's a child of the flexible box.
10385 Also, this doesn't have flexibility.
10386 (input[type="search"]::-webkit-search-decoration): ditto.
10387 (input[type="search"]::-webkit-search-results-decoration): ditto.
10388 (input[type="search"]::-webkit-search-results-button): ditto.
10389 (input::-webkit-inner-spin-button): ditto.
10390 (input::-webkit-input-speech-button): ditto.
10391 * html/HTMLInputElement.cpp:
10392 (WebCore::HTMLInputElement::containerElement):
10393 Add an accessor of the flexible box container.
10394 It just calls InputType::containerElement().
10395 * html/HTMLInputElement.h: Declare it.
10396 * html/InputType.h:
10397 (WebCore::InputType::containerElement): New accessor for a shadow elemen t.
10398 * html/SearchInputType.cpp:
10399 (WebCore::SearchInputType::SearchInputType):
10400 m_innerBlock is moved to TextFieldInputType.
10401 (WebCore::SearchInputType::needsContainer):
10402 A search field always needs the flexible box container because
10403 of the results button and the cancel button.
10404 (WebCore::SearchInputType::createShadowSubtree):
10405 Use TextFieldInputType::createShadowSubtree(), then modify the tree.
10406 (WebCore::SearchInputType::destroyShadowSubtree):
10407 m_innerBlock is moved to TextFieldInputType.
10408 * html/SearchInputType.h:
10409 * html/TextFieldInputType.cpp:
10410 (WebCore::TextFieldInputType::TextFieldInputType):
10411 Initialize the new members.
10412 (WebCore::TextFieldInputType::needsContainer):
10413 Returns true if x-webkit-speech. We check a spin button separately.
10414 (WebCore::TextFieldInputType::createShadowSubtree):
10415 Wrap everything with the flexible box container if needsContainer() or we need a spin button.
10416 (WebCore::TextFieldInputType::containerElement): Added an accessor.
10417 (WebCore::TextFieldInputType::innerBlockElement): ditto.
10418 (WebCore::TextFieldInputType::innerTextElement): ditto.
10419 (WebCore::TextFieldInputType::innerSpinButtonElement): ditto.
10420 (WebCore::TextFieldInputType::speechButtonElement): ditto.
10421 (WebCore::TextFieldInputType::destroyShadowSubtree):
10422 Clear references to new shadow nodes.
10423 * html/TextFieldInputType.h:
10424 * rendering/RenderTextControlSingleLine.cpp:
10425 (WebCore::RenderTextControlSingleLine::containerElement): Added an acces sor.
10426 (WebCore::RenderTextControlSingleLine::innerTextElement):
10427 (WebCore::RenderTextControlSingleLine::layout):
10428 - Correct heights check
10429 Comparing with height(), not contentHeigth(), was incorrect.
10430 - Adjust the container height like the editable inner text.
10431 - Remove width adjustment
10432 - Remove the speech button layout code
10433 The flexible box layout is enough.
10434 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
10435 Remove custom code for results/cancel/speech buttons, and
10436 Simplify comments.
10437 (WebCore::RenderTextControlSingleLine::forwardEvent):
10438 Remove custom forwarding code for results/cancel buttons.
10439 (WebCore::RenderTextControlSingleLine::styleDidChange):
10440 Clear the style of the container because we update it in layout().
10441 (WebCore::RenderTextControlSingleLine::hasControlClip):
10442 Decoration buttons should be clipped by the container.
10443 (WebCore::RenderTextControlSingleLine::controlClipRect): ditto.
10444 (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
10445 We don't need to use display:inline-block any more.
10446 (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
10447 The text wrapper element should have flexibility.
10448 (WebCore::RenderTextControlSingleLine::textBlockInsetTop):
10449 Updated for the tree structure change.
10450 * rendering/RenderTextControlSingleLine.h:
10451
10452 2011-06-29 Kent Tamura <tkent@chromium.org>
10453
10454 [Mac] Attempt to fix Leopard build.
10455
10456 * platform/mac/CursorMac.mm:
10457 (WebCore::Cursor::ensurePlatformCursor):
10458
10459 2011-06-29 Darin Adler <darin@apple.com>
10460
10461 Reviewed by Dan Bernstein.
10462
10463 [Mac] Use system cursors instead of custom bitmaps where possible
10464 https://bugs.webkit.org/show_bug.cgi?id=63679
10465
10466 * Resources/crossHairCursor.png: Removed.
10467 * Resources/notAllowedCursor.png: Removed.
10468 * WebCore.exp.in: Added wkCursor.
10469 * WebCore/WebCore.gyp/WebCore.gyp: Removed the two now-unused PNG files.
10470 * WebCore.xcodeproj/project.pbxproj: Ditto.
10471
10472 * platform/mac/CursorMac.mm:
10473 (WebCore::Cursor::ensurePlatformCursor): Use NSCursor API for Cross, Han d,
10474 VerticalText, ContextMenu, Copy, and NotAllowed. Use wkCursor for Move,
10475 Alias, Progress, and the resize and panning cursors.
10476
10477 * platform/mac/WebCoreSystemInterface.h: Added wkCursor.
10478 * platform/mac/WebCoreSystemInterface.mm: Ditto.
10479
10480 2011-06-29 Keishi Hattori <keishi@webkit.org>
10481
10482 Reviewed by Adam Barth.
10483
10484 Remove extra space at EOL in view source mode
10485 https://bugs.webkit.org/show_bug.cgi?id=63620
10486
10487 Test: fast/frames/viewsource-linebreak.html
10488
10489 * css/view-source.css:
10490 (tbody:last-child .webkit-line-content:empty:before): If we don't do thi s
10491 the last line will be empty and the height will be shorter than the rest .
10492 * html/HTMLViewSourceDocument.cpp:
10493 (WebCore::HTMLViewSourceDocument::addSource): If source file is empty, a dd an empty line.
10494 (WebCore::HTMLViewSourceDocument::finishLine): Call when you are done wi th the current line.
10495 Adds a BR element if the line is empty and sets current to tbody.
10496 (WebCore::HTMLViewSourceDocument::addText):
10497 * html/HTMLViewSourceDocument.h:
10498
10499 2011-06-29 Brent Fulgham <bfulgham@webkit.org>
10500
10501 [WinCE] Correct logical state of WINCE test.
10502
10503 * platform/win/ScrollbarThemeWin.cpp: The #if OS(WINCE)
10504 should have been #if !OS(WINCE)
10505 (WebCore::ScrollbarThemeWin::paintTrackPiece):
10506 (WebCore::ScrollbarThemeWin::paintButton):
10507 (WebCore::ScrollbarThemeWin::paintThumb):
10508 * rendering/RenderThemeWin.cpp: ditto.
10509 (WebCore::drawControl):
10510
10511 2011-06-29 Justin Garcia <justin.garcia@apple.com>
10512
10513 Reviewed by Enrica Casucci.
10514
10515 I forgot to include these (reviewed) style fix-ups in my previous check- in.
10516
10517 * editing/htmlediting.cpp:
10518 (WebCore::indexForVisiblePosition):
10519 (WebCore::visiblePositionForIndex):
10520
10521 2011-06-29 Justin Garcia <justin.garcia@apple.com>
10522
10523 Reviewed by Enrica Casucci.
10524
10525 https://bugs.webkit.org/show_bug.cgi?id=62922
10526 indexForVisiblePosition(const VisiblePosition& visiblePosition) does not consider shadow content
10527
10528 VisiblePositions can be inside web form text regions, which use shadow t rees. Made indexForVisiblePosition
10529 aware of this, and added a new parameter to obtain the scope for a Visib lePosition, in addition to its index.
10530
10531 Added visiblePositionForIndex to go in the opposite direction, taking in to account the scope
10532 used to compute the index.
10533
10534 These two functions use TextIterators to convert between VisiblePosition s and indices. But
10535 TextIterator iteration using TextIteratorEmitsCharactersBetweenAllVisibl ePositions does not
10536 exactly match VisiblePosition iteration, so using them to preserve a sel ection during an
10537 editing operation is unreliable. This can be seen in the expected result s for:
10538
10539 editing/execCommand/indent-pre-list.html
10540 editing/execCommand/crash-indenting-list-item.html
10541
10542 TextIterator's TextIteratorEmitsCharactersBetweenAllVisiblePositions mod e needs to be fixed, or
10543 these functions need to be changed to iterate using actual VisiblePositi ons. See:
10544
10545 https://bugs.webkit.org/show_bug.cgi?id=63590
10546 TextIterators in TextIteratorEmitsCharactersBetweenAllVisiblePositions d o not exactly match VisiblePositions
10547
10548 Also:
10549
10550 https://bugs.webkit.org/show_bug.cgi?id=63592
10551 Use visiblePositionForIndex and indexForVisiblePosition everywhere that TextIterators are used to convert between VisiblePositions and indices
10552
10553 No new tests added because indexForVisiblePosition is currently only use d for editing operations
10554 that cannot be performed inside web form fields.
10555
10556 * editing/ApplyBlockElementCommand.cpp:
10557 (WebCore::ApplyBlockElementCommand::doApply):
10558 * editing/InsertListCommand.cpp:
10559 (WebCore::InsertListCommand::doApply):
10560 * editing/htmlediting.cpp:
10561 (WebCore::indexForVisiblePosition):
10562 (WebCore::visiblePositionForIndex):
10563 * editing/htmlediting.h:
10564
10565 2011-06-29 Dimitri Glazkov <dglazkov@chromium.org>
10566
10567 Reviewed by Kent Tamura.
10568
10569 Remove ElementWithPseudoId, since now an Element can store it all by its elf.
10570 https://bugs.webkit.org/show_bug.cgi?id=63657
10571
10572 Refactoring, covered by existing tests.
10573
10574 * CMakeLists.txt: Removed ElementWithPseudoId from build.
10575 * GNUmakefile.list.am: Ditto.
10576 * WebCore.gypi: Ditto.
10577 * WebCore.order: Ditto.
10578 * WebCore.pro: Ditto.
10579 * WebCore.vcproj/WebCore.vcproj: Ditto.
10580 * WebCore.xcodeproj/project.pbxproj: Ditto.
10581 * html/ColorInputType.cpp:
10582 (WebCore::ColorInputType::createShadowSubtree): Changed to use plain-old HTMLDivElement.
10583 * html/RangeInputType.cpp:
10584 (WebCore::RangeInputType::createShadowSubtree): Ditto.
10585 * html/ValidationMessage.cpp:
10586 (WebCore::ValidationMessage::buildBubbleTree): Ditto.
10587 * html/shadow/ElementWithPseudoId.cpp: Removed.
10588 * html/shadow/ElementWithPseudoId.h: Removed.
10589
10590 2011-06-29 Levi Weintraub <leviw@chromium.org>
10591
10592 Reviewed by Eric Seidel.
10593
10594 Switch computeWidth and computeHeight functions to new layout types
10595 https://bugs.webkit.org/show_bug.cgi?id=63655
10596
10597 Switch computeWidth and computeHeight functions over to the new layout u nit abstraction.
10598
10599 Making a point to mark rounding that should eventually be removed by lin king to a new
10600 tracking bug: 63645.
10601
10602 No new tests, no functionality changes.
10603
10604 * rendering/AutoTableLayout.cpp:
10605 (WebCore::AutoTableLayout::computePreferredLogicalWidths):
10606 * rendering/AutoTableLayout.h:
10607 * rendering/FixedTableLayout.cpp:
10608 (WebCore::FixedTableLayout::computePreferredLogicalWidths):
10609 * rendering/FixedTableLayout.h:
10610 * rendering/LayoutTypes.h:
10611 * rendering/RenderBlock.cpp:
10612 (WebCore::RenderBlock::computePreferredLogicalWidths):
10613 (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
10614 (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
10615 * rendering/RenderBox.cpp:
10616 (WebCore::RenderBox::computeLogicalWidthUsing):
10617 (WebCore::RenderBox::computeLogicalHeight):
10618 (WebCore::RenderBox::computeLogicalHeightUsing):
10619 (WebCore::RenderBox::computePercentageLogicalHeight):
10620 (WebCore::RenderBox::computeReplacedLogicalWidth):
10621 (WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
10622 (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
10623 (WebCore::RenderBox::computeReplacedLogicalHeight):
10624 (WebCore::RenderBox::computeReplacedLogicalHeightRespectingMinMaxHeight) :
10625 (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
10626 * rendering/RenderBox.h:
10627 * rendering/RenderIFrame.cpp:
10628 (WebCore::RenderIFrame::computeLogicalWidth):
10629 * rendering/RenderImage.cpp:
10630 (WebCore::RenderImage::computeReplacedLogicalWidth):
10631 (WebCore::RenderImage::computeReplacedLogicalHeight):
10632 * rendering/RenderImage.h:
10633 * rendering/RenderListBox.cpp:
10634 (WebCore::RenderListBox::computePreferredLogicalWidths):
10635 * rendering/RenderListMarker.cpp:
10636 (WebCore::RenderListMarker::computePreferredLogicalWidths):
10637 * rendering/RenderMenuList.cpp:
10638 (WebCore::RenderMenuList::computePreferredLogicalWidths):
10639 * rendering/RenderReplaced.cpp:
10640 (WebCore::RenderReplaced::computeReplacedLogicalWidth):
10641 (WebCore::RenderReplaced::computeReplacedLogicalHeight):
10642 (WebCore::RenderReplaced::computePreferredLogicalWidths):
10643 * rendering/RenderReplaced.h:
10644 * rendering/RenderSlider.cpp:
10645 (WebCore::RenderSlider::computePreferredLogicalWidths):
10646 * rendering/RenderTable.cpp:
10647 (WebCore::RenderTable::computeLogicalWidth):
10648 * rendering/RenderTextControl.cpp:
10649 (WebCore::RenderTextControl::computePreferredLogicalWidths):
10650 * rendering/RenderVideo.cpp:
10651 (WebCore::RenderVideo::computeReplacedLogicalWidth):
10652 (WebCore::RenderVideo::computeReplacedLogicalHeight):
10653 * rendering/RenderVideo.h:
10654 * rendering/svg/RenderSVGForeignObject.cpp:
10655 (WebCore::RenderSVGForeignObject::computeLogicalWidth):
10656 (WebCore::RenderSVGForeignObject::computeLogicalHeight):
10657 * rendering/svg/RenderSVGRoot.cpp:
10658 (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
10659 (WebCore::RenderSVGRoot::computeIntrinsicWidth):
10660 (WebCore::RenderSVGRoot::computeIntrinsicHeight):
10661 (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
10662 (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
10663 (WebCore::RenderSVGRoot::layout):
10664 * rendering/svg/RenderSVGRoot.h:
10665
10666 2011-06-23 Abhishek Arya <inferno@chromium.org>
10667
10668 Reviewed by James Robinson.
10669
10670 In RenderBlock, RenderWidget and RenderReplaced destroy functions,
10671 call dirtyLinesFromChangedChild to tell our parent that we are going awa y.
10672 https://bugs.webkit.org/show_bug.cgi?id=60307
10673
10674 Test: fast/block/child-not-removed-from-parent-lineboxes-crash.html
10675 fast/block/block-not-removed-from-parent-lineboxes-crash.html
10676
10677 * rendering/RenderBlock.cpp:
10678 (WebCore::RenderBlock::destroy):
10679 * rendering/RenderReplaced.cpp:
10680 (WebCore::RenderReplaced::destroy):
10681 * rendering/RenderReplaced.h:
10682 * rendering/RenderWidget.cpp:
10683 (WebCore::RenderWidget::destroy):
10684
10685 2011-06-29 Brent Fulgham <bfulgham@webkit.org>
10686
10687 Speculative WinCE build correction.
10688
10689 * rendering/RenderThemeWin.cpp:
10690 (WebCore::drawControl): Don't call setRGBABitmapAlpha
10691 for WinCE case.
10692
10693 2011-06-29 Ryosuke Niwa <rniwa@webkit.org>
10694
10695 Reviewed by Darin Adler.
10696
10697 REGRESSION(r89952): r89952 added a wrong assertion in visible_units.cpp
10698 https://bugs.webkit.org/show_bug.cgi?id=63668
10699
10700 We need to assert the offset to be zero only when the position is NOT of fset in node.
10701
10702 * editing/visible_units.cpp:
10703 (WebCore::startOfParagraph):
10704
10705 2011-06-29 Brent Fulgham <bfulgham@webkit.org>
10706
10707 Speculative WinCE build correction after r90057.
10708
10709 * CMakeListsWinCE.txt: Roll back r90061, since GetWorldTransform
10710 is not available in WinCE.
10711 * platform/win/ScrollbarThemeWin.cpp: Conditionally exclude calls
10712 to DIBPixelData::setRGBABitmapAlpha for WinCE.
10713 (WebCore::ScrollbarThemeWin::paintTrackPiece):
10714 (WebCore::ScrollbarThemeWin::paintButton):
10715 (WebCore::ScrollbarThemeWin::paintThumb):
10716
10717 2011-06-29 Brent Fulgham <bfulgham@webkit.org>
10718
10719 Speculative WinCE build correction after r90057.
10720
10721 * CMakeListsWinCE.txt: Add missing DIBPixelData.cpp to
10722 WinCE build to support setting bitmap image alpha value.
10723
10724 2011-06-29 Simon Fraser <simon.fraser@apple.com>
10725
10726 Reviewed by Beth Dakin.
10727
10728 Lay some groundwork for rubber-banding in overflow:scroll divs
10729 https://bugs.webkit.org/show_bug.cgi?id=63654
10730
10731 Make it possible for scrollTop and scrollLeft on a RenderLayer to be
10732 set to negative values, which we will do during rubber-banding in
10733 future. Continue to clamp programmatic scrolls, and scroll positions
10734 set by layout between 0 and the max value.
10735
10736 Test: fast/layers/negative-scroll-positions.html
10737
10738 * rendering/RenderBox.cpp:
10739 (WebCore::RenderBox::setScrollLeft):
10740 (WebCore::RenderBox::setScrollTop):
10741 * rendering/RenderLayer.cpp:
10742 (WebCore::RenderLayer::scrollToOffset):
10743 (WebCore::RenderLayer::scrollTo):
10744 * rendering/RenderLayer.h:
10745 (WebCore::RenderLayer::scrollToXOffset):
10746 (WebCore::RenderLayer::scrollToYOffset):
10747 * rendering/RenderTextControlSingleLine.cpp:
10748 (WebCore::RenderTextControlSingleLine::forwardEvent):
10749
10750 2011-06-29 Anders Carlsson <andersca@apple.com>
10751
10752 Reviewed by Simon Fraser.
10753
10754 RenderLayer::maximumScrollPosition() is wrong
10755 https://bugs.webkit.org/show_bug.cgi?id=62667
10756
10757 * platform/ScrollableArea.h:
10758 (WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition):
10759 (WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition):
10760 Add these for good measure; they will be needed in an upcoming patch.
10761
10762 * rendering/RenderLayer.cpp:
10763 (WebCore::RenderLayer::maximumScrollPosition):
10764 Subtract the visible content rect, including the scroll bars.
10765
10766 2011-06-29 Brent Fulgham <bfulgham@webkit.org>
10767
10768 Speculative WinCE build correction after r90053.
10769
10770 * platform/graphics/GraphicsContext.h:
10771 (WebCore::GraphicsContext::inTransparencyLayer): Provide
10772 stub implementation for 'inTransparencyLayer'.
10773
10774 2011-06-29 Xu Fan <qifuren1985@gmail.com>
10775
10776 Reviewed by Brent Fulgham.
10777
10778 Fix Scrollbars Transparent in Windows XP if WebKit is using Layered Wind ow
10779 https://bugs.webkit.org/show_bug.cgi?id=61136
10780
10781 * platform/graphics/win/DIBPixelData.h: add a static method setRGBABitma pAlpha
10782 * platform/graphics/win/DIBPixelData.cpp: add implementation
10783 * platform/win/ScrollbarThemeWin.cpp: fix scroolbar transparent
10784 * rendering/RenderThemeWin.cpp: fix textbox and button transparent
10785
10786 2011-06-29 Emil A Eklund <eae@chromium.org>
10787
10788 Reviewed by Eric Seidel.
10789
10790 Switch RenderBoxModelObject::margin* and setMargin* to to new layout typ es
10791 https://bugs.webkit.org/show_bug.cgi?id=63652
10792
10793 Switch margin methods for render tree over to the new layout unit abstra ction.
10794
10795 No new tests, no functionality changes.
10796
10797 * rendering/InlineFlowBox.h:
10798 * rendering/RenderBlock.cpp:
10799 * rendering/RenderBlock.h:
10800 * rendering/RenderBox.cpp:
10801 * rendering/RenderBox.h:
10802 * rendering/RenderBoxModelObject.h:
10803 * rendering/RenderInline.cpp:
10804 * rendering/RenderInline.h:
10805 * rendering/RenderText.h:
10806
10807 2011-06-29 Levi Weintraub <leviw@chromium.org>
10808
10809 Reviewed by Eric Seidel.
10810
10811 Switch paint to new layout types
10812 https://bugs.webkit.org/show_bug.cgi?id=63645
10813
10814 Switch vanilla paint function over to the new layout unit abstraction.
10815
10816 No new tests, no functionality changes.
10817
10818 * rendering/RenderBlock.cpp:
10819 (WebCore::RenderBlock::paint):
10820 * rendering/RenderBlock.h:
10821 * rendering/RenderBox.cpp:
10822 (WebCore::RenderBox::paint):
10823 * rendering/RenderBox.h:
10824 * rendering/RenderDetailsMarker.cpp:
10825 (WebCore::RenderDetailsMarker::paint):
10826 * rendering/RenderDetailsMarker.h:
10827 * rendering/RenderEmbeddedObject.cpp:
10828 (WebCore::RenderEmbeddedObject::paint):
10829 * rendering/RenderEmbeddedObject.h:
10830 * rendering/RenderFrameSet.cpp:
10831 (WebCore::RenderFrameSet::paint):
10832 * rendering/RenderFrameSet.h:
10833 * rendering/RenderImage.cpp:
10834 (WebCore::RenderImage::paint):
10835 * rendering/RenderImage.h:
10836 * rendering/RenderInline.cpp:
10837 (WebCore::RenderInline::paint):
10838 * rendering/RenderInline.h:
10839 * rendering/RenderLineBoxList.h:
10840 * rendering/RenderListItem.cpp:
10841 (WebCore::RenderListItem::paint):
10842 * rendering/RenderListItem.h:
10843 * rendering/RenderListMarker.cpp:
10844 (WebCore::RenderListMarker::paint):
10845 * rendering/RenderListMarker.h:
10846 * rendering/RenderObject.h:
10847 * rendering/RenderReplaced.cpp:
10848 (WebCore::RenderReplaced::paint):
10849 * rendering/RenderReplaced.h:
10850 * rendering/RenderReplica.cpp:
10851 (WebCore::RenderReplica::paint):
10852 * rendering/RenderReplica.h:
10853 * rendering/RenderTable.cpp:
10854 (WebCore::RenderTable::paint):
10855 * rendering/RenderTable.h:
10856 * rendering/RenderTableCell.cpp:
10857 (WebCore::RenderTableCell::paint):
10858 * rendering/RenderTableCell.h:
10859 * rendering/RenderTableRow.cpp:
10860 (WebCore::RenderTableRow::paint):
10861 * rendering/RenderTableRow.h:
10862 * rendering/RenderTableSection.cpp:
10863 (WebCore::RenderTableSection::paint):
10864 * rendering/RenderTableSection.h:
10865 * rendering/RenderTextControlSingleLine.cpp:
10866 (WebCore::RenderTextControlSingleLine::paint):
10867 * rendering/RenderTextControlSingleLine.h:
10868 * rendering/RenderTheme.h:
10869 * rendering/RenderView.cpp:
10870 (WebCore::RenderView::paint):
10871 * rendering/RenderView.h:
10872 * rendering/RenderWidget.cpp:
10873 (WebCore::RenderWidget::paint):
10874 * rendering/RenderWidget.h:
10875 * rendering/mathml/RenderMathMLBlock.h:
10876 * rendering/mathml/RenderMathMLFraction.h:
10877 * rendering/mathml/RenderMathMLRoot.h:
10878 * rendering/mathml/RenderMathMLSquareRoot.h:
10879 * rendering/svg/RenderSVGContainer.h:
10880 * rendering/svg/RenderSVGForeignObject.h:
10881 * rendering/svg/RenderSVGHiddenContainer.h:
10882 * rendering/svg/RenderSVGImage.h:
10883 * rendering/svg/RenderSVGPath.h:
10884 * rendering/svg/RenderSVGRoot.cpp:
10885 (WebCore::RenderSVGRoot::paint):
10886 * rendering/svg/RenderSVGRoot.h:
10887 * rendering/svg/RenderSVGText.h:
10888
10889 2011-06-29 Jian Li <jianli@chromium.org>
10890
10891 Reviewed by Kenneth Russell.
10892
10893 WebGL test failing on SL bots: fast/canvas/webgl/data-view-test.html
10894 https://bugs.webkit.org/show_bug.cgi?id=63151
10895
10896 The fix is to change to throw TypeError in custom JS/V8 bindings.
10897
10898 * bindings/js/JSDataViewCustom.cpp:
10899 (WebCore::getDataViewMember):
10900 (WebCore::setDataViewMember):
10901 * bindings/v8/custom/V8DataViewCustom.cpp:
10902 (WebCore::V8DataView::constructorCallback):
10903 (WebCore::V8DataView::getInt8Callback):
10904
10905 2011-06-29 Luke Macpherson <macpherson@chromium.org>
10906
10907 Reviewed by Darin Adler.
10908
10909 Convert uses of computeLengthIntForLength() to computeLength<Length>()
10910 https://bugs.webkit.org/show_bug.cgi?id=63641
10911
10912 No new tests / refactoring only.
10913
10914 * css/CSSStyleSelector.cpp:
10915 (WebCore::convertToLength):
10916 (WebCore::CSSStyleSelector::applyProperty):
10917 (WebCore::CSSStyleSelector::applyPageSizeProperty):
10918 (WebCore::CSSStyleSelector::mmLength):
10919 (WebCore::CSSStyleSelector::inchLength):
10920 (WebCore::CSSStyleSelector::mapFillSize):
10921 (WebCore::CSSStyleSelector::mapFillXPosition):
10922 (WebCore::CSSStyleSelector::mapFillYPosition):
10923
10924 2011-06-29 Chris Rogers <crogers@google.com>
10925
10926 Reviewed by Kenneth Russell.
10927
10928 Simplify AudioBufferSourceNode rendering
10929 https://bugs.webkit.org/show_bug.cgi?id=63586
10930
10931 No new tests since this doesn't change API.
10932
10933 * webaudio/AudioBufferSourceNode.cpp:
10934 (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
10935 (WebCore::AudioBufferSourceNode::process):
10936 (WebCore::AudioBufferSourceNode::renderFromBuffer):
10937 (WebCore::AudioBufferSourceNode::reset):
10938 (WebCore::AudioBufferSourceNode::setBuffer):
10939 (WebCore::AudioBufferSourceNode::noteOn):
10940 (WebCore::AudioBufferSourceNode::noteGrainOn):
10941 (WebCore::AudioBufferSourceNode::totalPitchRate):
10942 * webaudio/AudioBufferSourceNode.h:
10943
10944 2011-06-29 Martin Robinson <mrobinson@igalia.com>
10945
10946 Reviewed by Xan Lopez.
10947
10948 [Freetype] Many tests report ERROR: Failed to get glyph page zero.
10949 https://bugs.webkit.org/show_bug.cgi?id=63498
10950
10951 Instead of conditionally instantiating the m_scaledFont member of FontPl atformData,
10952 always instantiate it. For times when the size is 0 and the instantiatio n would lead
10953 to a Cairo error, we use size 1 and just make operations which would fai l conditional
10954 on the m_size > 0.
10955
10956 No new tests. This change is covered by existing tests. We should
10957 observe no errors on the bots after landing.
10958
10959 * platform/graphics/cairo/FontCairo.cpp:
10960 (WebCore::Font::drawGlyphs): Instead of looking at whether or not there is
10961 a scaled font to determine whether to draw, just look at the size.
10962 * platform/graphics/freetype/FontPlatformData.h: Remove the m_font membe r.
10963 * platform/graphics/freetype/FontPlatformDataFreeType.cpp: Always instan tiate
10964 a scaled font member and remove references to m_font. If we are instanti ating
10965 a scaled font for a 0 size font, instantiate a size 1 font, so that we c an
10966 still use Cairo to query font properties.
10967 * platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp:
10968 (WebCore::GlyphPage::fill): We can assume there is always a scaled font now.
10969 * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
10970 (WebCore::SimpleFontData::platformInit): Ditto.
10971 (WebCore::SimpleFontData::createScaledFontData): Ditto.
10972 (WebCore::SimpleFontData::containsCharacters): Ditto.
10973 (WebCore::SimpleFontData::platformWidthForGlyph): Ditto.
10974
10975 2011-06-29 Eric Carlson <eric.carlson@apple.com>
10976
10977 Reviewed by Darin Adler.
10978
10979 Media element loads blocked by a resource load delegate do not generate an error event
10980 https://bugs.webkit.org/show_bug.cgi?id=63558
10981
10982 Tests: media/media-blocked-by-beforeload.html
10983 media/media-blocked-by-willsendrequest.html
10984
10985 * html/HTMLMediaElement.cpp:
10986 (WebCore::HTMLMediaElement::selectMediaResource): Call mediaLoadingFaile d instead of noneSupported
10987 so all failures follow the same code path.
10988 (WebCore::HTMLMediaElement::loadResource): Call mediaLoadingFailed when there is no frame, when
10989 the loader delegate rejects the url, or when MediaPlayer doesn't fin d a media engine that
10990 supports the type.
10991 (WebCore::HTMLMediaElement::selectNextSourceChild): Fix incorrect loggin g.
10992 (WebCore::HTMLMediaElement::mediaLoadingFailed): Change name of paramete r from "state" to
10993 "error" to make its purpose obvious.
10994
10995 * platform/graphics/MediaPlayer.cpp:
10996 (WebCore::MediaPlayer::load): Return a bool indicating whether or not th e url was given to
10997 a media engine.
10998 (WebCore::MediaPlayer::loadWithNextMediaEngine): Add some logging.
10999 * platform/graphics/MediaPlayer.h:
11000
11001 2011-06-29 Darin Adler <darin@apple.com>
11002
11003 Reviewed by Anders Carlsson.
11004
11005 [WebKit2] Crash loading page that adds/removes frame in DOMContentLoaded /loaded
11006 https://bugs.webkit.org/show_bug.cgi?id=63483
11007
11008 Test: fast/loader/create-frame-in-DOMContentLoaded.html
11009
11010 * loader/FrameLoader.cpp:
11011 (WebCore::FrameLoader::init): Added an assertion.
11012 (WebCore::FrameLoader::finishedLoadingDocument): Removed a non-helpful # if
11013 statement. The rule that we do not call the client when creating the ini tial
11014 empty document was nominally specific to Windows and Chromium but is nee ded
11015 for all platforms.
11016
11017 2011-06-29 Emil A Eklund <eae@chromium.org>
11018
11019 Reviewed by Darin Adler.
11020
11021 Switch hitTestColumns/Contents/Floats to to new layout types
11022 https://bugs.webkit.org/show_bug.cgi?id=63589
11023
11024 Switch location and size methods for RenderBox over to the new layout un it abstraction.
11025
11026 No new tests, no functionality changes.
11027
11028 * rendering/ColumnInfo.h:
11029 (WebCore::ColumnInfo::desiredColumnWidth):
11030 (WebCore::ColumnInfo::setDesiredColumnWidth):
11031 (WebCore::ColumnInfo::columnHeight):
11032 (WebCore::ColumnInfo::setColumnCountAndHeight):
11033 (WebCore::ColumnInfo::setColumnHeight):
11034 (WebCore::ColumnInfo::updateMinimumColumnHeight):
11035 (WebCore::ColumnInfo::minimumColumnHeight):
11036 * rendering/RenderBlock.cpp:
11037 (WebCore::RenderBlock::addOverflowFromChildren):
11038 (WebCore::RenderBlock::paintColumnRules):
11039 (WebCore::RenderBlock::paintColumnContents):
11040 (WebCore::RenderBlock::hitTestFloats):
11041 (WebCore::RenderBlock::hitTestColumns):
11042 (WebCore::RenderBlock::hitTestContents):
11043 (WebCore::RenderBlock::columnRectAt):
11044 * rendering/RenderBlock.h:
11045 (WebCore::RenderBlock::xPositionForFloatIncludingMargin):
11046 (WebCore::RenderBlock::yPositionForFloatIncludingMargin):
11047 * rendering/RenderLayer.cpp:
11048 (WebCore::RenderLayer::hitTestContents):
11049 * rendering/RenderLayer.h:
11050
11051 2011-06-29 Adrienne Walker <enne@google.com>
11052
11053 Reviewed by James Robinson.
11054
11055 [chromium] Divide by zero in TilingData
11056 https://bugs.webkit.org/show_bug.cgi?id=63305
11057
11058 Add safety checks for empty layers.
11059
11060 * platform/graphics/chromium/LayerTilerChromium.cpp:
11061 (WebCore::LayerTilerChromium::prepareToUpdate):
11062 (WebCore::LayerTilerChromium::reset):
11063 (WebCore::LayerTilerChromium::updateRect):
11064
11065 2011-06-29 Dimitri Glazkov <dglazkov@chromium.org>
11066
11067 Reviewed by Adam Barth.
11068
11069 Extract setShadowRoot function, harden it in preparation to be exposed t o script.
11070 https://bugs.webkit.org/show_bug.cgi?id=63596
11071
11072 Refactoring, covered by existing tests.
11073
11074 * dom/Element.cpp:
11075 (WebCore::validateShadowRoot): Added.
11076 (WebCore::Element::setShadowRoot): Extracted from ensureShadowRoot.
11077 (WebCore::Element::ensureShadowRoot): Changed to use setShadowRoot.
11078 * dom/Element.h: Added decl.
11079
11080 2011-06-29 Vsevolod Vlasov <vsevik@chromium.org>
11081
11082 Reviewed by Pavel Feldman.
11083
11084 Web Inspector: REGRESSION Resource revision fails to request content if it was not yet loaded for resource.
11085 https://bugs.webkit.org/show_bug.cgi?id=63631
11086
11087 Test: http/tests/inspector/network/network-request-revision-content.html
11088
11089 * inspector/front-end/Resource.js:
11090 (WebInspector.ResourceRevision.prototype.requestContent):
11091
11092 2011-06-29 Igor Oliveira <igor.oliveira@openbossa.org>
11093
11094 Reviewed by Andreas Kling.
11095
11096 [Qt] GraphicsContext::clipToImageBuffer does not support scale transform ation
11097 https://bugs.webkit.org/show_bug.cgi?id=63555
11098
11099 Scale alphaMask if GraphicsContext is scaled
11100
11101 * platform/graphics/qt/GraphicsContextQt.cpp:
11102 (WebCore::GraphicsContext::pushTransparencyLayerInternal):
11103 * platform/graphics/qt/ImageBufferQt.cpp:
11104 (WebCore::ImageBuffer::clip):
11105
11106 2011-06-29 Andrey Kosyakov <caseq@chromium.org>
11107
11108 Reviewed by Pavel Feldman.
11109
11110 Web Inspector: backend needs to provide system-unique object ids, so the se remain unique across navigation
11111 https://bugs.webkit.org/show_bug.cgi?id=62894
11112
11113 * inspector/InspectorController.cpp:
11114 (WebCore::InspectorController::setAgentProcessIdentifier):
11115 * inspector/InspectorController.h:
11116 * inspector/InspectorPageAgent.cpp:
11117 (WebCore::InspectorPageAgent::setAgentIdentifier):
11118 (WebCore::InspectorPageAgent::createIdentifier):
11119 (WebCore::InspectorPageAgent::frameForId):
11120 (WebCore::InspectorPageAgent::frameId):
11121 (WebCore::InspectorPageAgent::frameDestroyed):
11122 * inspector/InspectorPageAgent.h:
11123
11124 2011-06-29 Pavel Feldman <pfeldman@google.com>
11125
11126 Reviewed by Yury Semikhatsky.
11127
11128 Web Inspector: create status bar buttons programmatically. Add "Inspect" button to all panels.
11129 https://bugs.webkit.org/show_bug.cgi?id=63450
11130
11131 Buttons should be created in code, not in HTML. Also making Inspect Elem ent
11132 action available on all panels (as an experiment).
11133
11134 * inspector/front-end/ConsoleView.js:
11135 (WebInspector.ConsoleView.prototype.show):
11136 (WebInspector.ConsoleView.prototype.hide):
11137 * inspector/front-end/ElementsPanel.js:
11138 (WebInspector.ElementsPanel):
11139 (WebInspector.ElementsPanel.prototype.get statusBarItems):
11140 (WebInspector.ElementsPanel.prototype.updateFocusedNode):
11141 (WebInspector.ElementsPanel.prototype._setSearchingForNode):
11142 (WebInspector.ElementsPanel.prototype.toggleSearchingForNode):
11143 * inspector/front-end/inspector.css:
11144 (button.dock-status-bar-item.status-bar-item .glyph):
11145 (button.dock-status-bar-item.status-bar-item.toggled-on .glyph):
11146 (.console-status-bar-item .glyph):
11147 * inspector/front-end/inspector.html:
11148 * inspector/front-end/inspector.js:
11149 (WebInspector._createGlobalStatusBarItems):
11150 (WebInspector.set attached):
11151
11152 2011-06-29 Pavel Feldman <pfeldman@google.com>
11153
11154 Reviewed by Yury Semikhatsky.
11155
11156 Web Inspector: tab crash after deleting trailing quote when editing attr ibute
11157 https://bugs.webkit.org/show_bug.cgi?id=63544
11158
11159 * inspector/InspectorDOMAgent.cpp:
11160 (WebCore::InspectorDOMAgent::setAttributesText):
11161 * inspector/front-end/ElementsTreeOutline.js:
11162 (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted.m oveToNextAttributeIfNeeded):
11163 (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
11164
11165 2011-06-29 Vsevolod Vlasov <vsevik@chromium.org>
11166
11167 Reviewed by Pavel Feldman.
11168
11169 Web Inspector: REGRESSION Inspector failing to load resource content aft er navigation. Safari.
11170 https://bugs.webkit.org/show_bug.cgi?id=63480
11171
11172 * inspector/front-end/NetworkManager.js:
11173 (WebInspector.NetworkDispatcher):
11174 (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache) :
11175
11176 2011-06-29 Mike West <mkwst@chromium.org>
11177
11178 Reviewed by Pavel Feldman.
11179
11180 Web Inspector: Missing fields in HAR
11181 https://bugs.webkit.org/show_bug.cgi?id=58127
11182
11183 Specifically, this patch adds:
11184 - entry.request.httpVersion
11185 - entry.request.headersSize
11186 - entry.request.bodySize
11187 - entry.response.httpVersion
11188 - entry.response.headersSize
11189 - entry.response.bodySize
11190 - entry.response.content.compression
11191
11192 Tests: http/tests/inspector/resource-har-conversion.html
11193 http/tests/inspector/resource-har-headers.html
11194 http/tests/inspector/resource-parameters.html
11195 http/tests/inspector/network/network-size.html
11196
11197 * inspector/front-end/HAREntry.js:
11198 (WebInspector.HAREntry.prototype.build):
11199 (WebInspector.HAREntry.prototype._buildRequest):
11200 (WebInspector.HAREntry.prototype._buildResponse):
11201 (WebInspector.HAREntry.prototype._buildContent):
11202 (WebInspector.HAREntry.prototype._buildCookie):
11203 (WebInspector.HAREntry.prototype._interval):
11204 (WebInspector.HAREntry.prototype.get requestBodySize):
11205 (WebInspector.HAREntry.prototype.get responseBodySize):
11206 (WebInspector.HAREntry.prototype.get responseCompression):
11207 (WebInspector.HARLog.prototype.build):
11208 * inspector/front-end/Resource.js:
11209 (WebInspector.Resource.prototype.set requestHeaders):
11210 (WebInspector.Resource.prototype.get requestHeadersText):
11211 (WebInspector.Resource.prototype.set requestHeadersText):
11212 (WebInspector.Resource.prototype.get requestHeadersSize):
11213 (WebInspector.Resource.prototype.get requestHttpVersion):
11214 (WebInspector.Resource.prototype.set responseHeaders):
11215 (WebInspector.Resource.prototype.get responseHeadersText):
11216 (WebInspector.Resource.prototype.set responseHeadersText):
11217 (WebInspector.Resource.prototype.get responseHeadersSize):
11218 (WebInspector.Resource.prototype.get responseHttpVersion):
11219
11220 2011-06-29 Hayato Ito <hayato@chromium.org>
11221
11222 Reviewed by Hajime Morita.
11223
11224 Make a shadow host transfer a focus to the first focusable element in th e shadow root when its focus() is called.
11225 https://bugs.webkit.org/show_bug.cgi?id=62358.
11226
11227 This patch doesn't take an effect on the following elements to keep a co mpatibility.
11228 - <input>, <textarea>, <video> and <audio> elements
11229 We'll address these elements separately after re-targeting focus events
11230 (bug 61421) is implemented.
11231
11232 A shadow root's <content> is not considered in this patch.
11233 That should be addressed in another patch. See bug 63522.
11234
11235 Test: fast/dom/shadow/shadow-host-transfer-focus.html
11236
11237 * dom/Element.cpp:
11238 (WebCore::Element::focus):
11239 * page/FocusController.cpp:
11240 (WebCore::shadowRoot):
11241 (WebCore::isTreeScopeOwner):
11242 (WebCore::FocusController::transferFocusToElementInShadowRoot):
11243 (WebCore::hasCustomFocusLogic):
11244 (WebCore::FocusController::findFocusableNodeDecendingDownIntoFrameDocume ntOrShadowRoot):
11245 (WebCore::FocusController::advanceFocusInDocumentOrder):
11246 (WebCore::ownerOfTreeScope):
11247 (WebCore::FocusController::findFocusableNodeAcrossTreeScope):
11248 * page/FocusController.h:
11249
11250 2011-06-29 Ryan Sleevi <rsleevi@chromium.org>
11251
11252 Reviewed by Dirk Schulze.
11253
11254 SVGRadialGradientElement::selfHasRelativeLengths() doesn't consider if c x() is relative
11255 https://bugs.webkit.org/show_bug.cgi?id=61600
11256
11257 Correct the logic for checking for relative lengths in a SVGRadialGradie ntElement to consider cx() in addition to cy()
11258
11259 No new tests, as there is no way to currently test this. With the bug pr esent, a side-effect is causing the
11260 expected/correct image to be rendered. This is because the cached SVG re source is getting invalided through a
11261 different path, forcing a repaint. The repaint takes into consideration the proper dimensions, hiding the bug.
11262
11263 * svg/SVGRadialGradientElement.cpp:
11264 (WebCore::SVGRadialGradientElement::selfHasRelativeLengths):
11265
11266 2011-06-28 Dirk Schulze <krit@webkit.org>
11267
11268 Reviewed by Nikolas Zimmermann.
11269
11270 SVGAnimatedType should support SVGBoolean animation
11271 https://bugs.webkit.org/show_bug.cgi?id=63529
11272
11273 Follow up of "SVGAnimation should use direct unit animation for SVGLengt h": https://bugs.webkit.org/show_bug.cgi?id=61368
11274 This patch continues the conversion to the new concept of SVGAnimatorFac tory with SVGBoolean.
11275
11276 The new animator does not affect any behavior, since it was animated wit h SVGAnimatedString before. The new animator is still needed
11277 to support animVal and baseVal later.
11278
11279 Test: svg/animations/svgboolean-animation-1.html
11280
11281 * CMakeLists.txt: Add new file to build system.
11282 * GNUmakefile.list.am: Ditto.
11283 * WebCore.gypi: Ditto.
11284 * WebCore.pro: Ditto.
11285 * WebCore.xcodeproj/project.pbxproj: Ditto.
11286 * svg/SVGAllInOne.cpp: Ditto.
11287 * svg/SVGAnimateElement.cpp: Make use of AnimatedBoolean.
11288 (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
11289 (WebCore::SVGAnimateElement::calculateAnimatedValue):
11290 (WebCore::SVGAnimateElement::calculateFromAndToValues):
11291 (WebCore::SVGAnimateElement::calculateFromAndByValues):
11292 (WebCore::SVGAnimateElement::resetToBaseValue):
11293 (WebCore::SVGAnimateElement::applyResultsToTarget):
11294 (WebCore::SVGAnimateElement::calculateDistance):
11295 * svg/SVGAnimatedBoolean.cpp: Added. New animator for SVGBoolean.
11296 (WebCore::SVGAnimatedBooleanAnimator::SVGAnimatedBooleanAnimator):
11297 (WebCore::SVGAnimatedBooleanAnimator::constructFromString):
11298 (WebCore::SVGAnimatedBooleanAnimator::calculateFromAndToValues):
11299 (WebCore::SVGAnimatedBooleanAnimator::calculateFromAndByValues):
11300 (WebCore::SVGAnimatedBooleanAnimator::calculateAnimatedValue):
11301 (WebCore::SVGAnimatedBooleanAnimator::calculateDistance):
11302 * svg/SVGAnimatedBoolean.h:
11303 (WebCore::SVGAnimatedBooleanAnimator::~SVGAnimatedBooleanAnimator):
11304 * svg/SVGAnimatedType.cpp: Use bool for SVGBoolean.
11305 (WebCore::SVGAnimatedType::~SVGAnimatedType):
11306 (WebCore::SVGAnimatedType::createBoolean):
11307 (WebCore::SVGAnimatedType::boolean):
11308 (WebCore::SVGAnimatedType::valueAsString):
11309 (WebCore::SVGAnimatedType::setValueAsString):
11310 * svg/SVGAnimatedType.h:
11311 * svg/SVGAnimatorFactory.h: New crate function for SVGAnimatedSVGBoolean Animator.
11312 (WebCore::SVGAnimatorFactory::create):
11313
11314 2011-06-28 Dimitri Glazkov <dglazkov@chromium.org>
11315
11316 Reviewed by Adam Barth.
11317
11318 Make applyAuthorSheets settable on ShadowRoot.
11319 https://bugs.webkit.org/show_bug.cgi?id=63599
11320
11321 Refactoring and adding not-yet used function, tests to follow when API l ands.
11322
11323 * dom/ShadowRoot.cpp:
11324 (WebCore::ShadowRoot::ShadowRoot): Added initializer.
11325 (WebCore::ShadowRoot::applyAuthorSheets): Made to use member variable.
11326 (WebCore::ShadowRoot::setApplyAuthorSheets): Added.
11327 * dom/ShadowRoot.h: Tweaked, added decls.
11328
11329 2011-06-28 Ilya Sherman <isherman@chromium.org>
11330
11331 Reviewed by Adam Barth.
11332
11333 form.autocomplete="off" does not work
11334 Rename the autoComplete() method for HTMLFormElement, HTMLFormControlEle mentWithState, and HTMLInputElement to shouldAutocomplete()
11335 Add the autocomplete attribute to HTMLFormElement.idl and HTMLInputEleme nt.idl
11336 https://bugs.webkit.org/show_bug.cgi?id=35823
11337
11338 Test: fast/forms/autocomplete.html
11339
11340 * html/HTMLFormControlElement.cpp:
11341 (WebCore::HTMLFormControlElementWithState::shouldAutocomplete): Renamed from ::autoComplete()
11342 (WebCore::HTMLFormControlElementWithState::shouldSaveAndRestoreFormContr olState): Update callsite.
11343 * html/HTMLFormControlElement.h:
11344 * html/HTMLFormElement.cpp:
11345 (WebCore::HTMLFormElement::~HTMLFormElement): Update callsite.
11346 (WebCore::HTMLFormElement::parseMappedAttribute): Update callsite.
11347 (WebCore::HTMLFormElement::documentDidBecomeActive): Update callsite.
11348 (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Update callsite.
11349 (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Update callsite.
11350 (WebCore::HTMLFormElement::shouldAutocomplete): Renamed from ::autoCompl ete()
11351 * html/HTMLFormElement.h:
11352 * html/HTMLFormElement.idl: Bind the autocomplete attribute to a JavaScr ipt property.
11353 * html/HTMLInputElement.cpp:
11354 (WebCore::HTMLInputElement::shouldAutocomplete): Renamed from ::autoComp lete()
11355 * html/HTMLInputElement.h:
11356 * html/HTMLInputElement.idl: Bind the autocomplete attribute to a JavaSc ript property.
11357 * WebCore.exp.in: Updated autoComplete() -> shouldAutocomplete()
11358
11359 2011-06-28 Dimitri Glazkov <dglazkov@chromium.org>
11360
11361 Reviewed by Kent Tamura.
11362
11363 Store shadowPseudoId in ElementRareData.
11364 https://bugs.webkit.org/show_bug.cgi?id=63604
11365
11366 No new tests, because the code isn't yet used.
11367
11368 * css/CSSSelector.cpp:
11369 (WebCore::CSSSelector::isUnknownPseudoType): Added convenience helper.
11370 * css/CSSSelector.h: Added decl.
11371 * dom/Element.cpp:
11372 (WebCore::Element::shadowPseudoId): Changed to use ElementRareData.
11373 (WebCore::Element::setShadowPseudoId): Ditto.
11374 * dom/Element.h: Added decls.
11375 * dom/ElementRareData.h: Added a member to keep shadowPseudoId.
11376
11377 2011-06-28 Kenichi Ishibashi <bashi@chromium.org>
11378
11379 Reviewed by Tony Chang.
11380
11381 [Chromium] Remove dependencies on harfbuzz from FontPlatformDataLinux an d FontLinux
11382 https://bugs.webkit.org/show_bug.cgi?id=62530
11383
11384 - Moved codes of FontLinux which depend on harfbuzz APIs to ComplexTextC ontroller. Removed Some methods of ComplexTextController(advances() and logClus ters()) since they are no longer needed.
11385 - Moved RefCountedHarfbuzzFace from FontPlatformDataLinux to HarfbuzzSki a and renamed it to HarfbuzzFace.
11386
11387 No new tests because there is no behavior change (The existing tests sho uld cover the changes).
11388
11389 * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
11390 (WebCore::ComplexTextController::ComplexTextController): Added arguments so eliminating setter invocations.
11391 (WebCore::ComplexTextController::setupForRTL): Added.
11392 (WebCore::ComplexTextController::setupFontForScriptRun): Adopt the chang e of HarfbuzzFace class.
11393 (WebCore::ComplexTextController::setGlyphPositions): Use m_item.log_clus ters instead of removed method.
11394 (WebCore::ComplexTextController::glyphIndexForXPositionInScriptRun): Add ed.
11395 (WebCore::ComplexTextController::offsetForPosition): Ditto.
11396 (WebCore::ComplexTextController::selectionRect): Ditto.
11397 * platform/graphics/chromium/ComplexTextControllerLinux.h:
11398 (WebCore::ComplexTextController::width):
11399 * platform/graphics/chromium/FontLinux.cpp: Removed truncateFixedPointTo Integer().
11400 (WebCore::Font::drawComplexText): Removed setter invocations of ComplexT extController.
11401 (WebCore::Font::floatWidthForComplexText): Ditto.
11402 (WebCore::Font::offsetForPositionForComplexText): Moved harfbuzz depende nt code to ComplexTextController.
11403 (WebCore::Font::selectionRectForComplexText): Ditto.
11404 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
11405 (WebCore::FontPlatformData::harfbuzzFace): Wrapped up HB_FaceRec in Harf buzzFace class.
11406 * platform/graphics/chromium/FontPlatformDataLinux.h: Moved RefCountedHa rfbuzzFace class and renamed to HarfbuzzFace.
11407 * platform/graphics/chromium/HarfbuzzSkia.cpp:
11408 (WebCore::allocHarfbuzzFont): Moved from ComplexTextControllerLinux.cpp.
11409 (WebCore::HarfbuzzFace::HarfbuzzFace): Added.
11410 (WebCore::HarfbuzzFace::~HarfbuzzFace): Added.
11411 * platform/graphics/chromium/HarfbuzzSkia.h:
11412 (WebCore::HarfbuzzFace::create): Added.
11413 (WebCore::HarfbuzzFace::face): Added.
11414 * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
11415 (WebCore::substituteWithVerticalGlyphs): Adopt the change of HarfbuzzFa ce class.
11416
11417 2011-06-28 Roland Steiner <rolandsteiner@chromium.org>
11418
11419 Reviewed by Eric Seidel.
11420
11421 Bug 55930 - (CVE-2011-1440) Incorrect handling of 'display:' property wi thin nested <ruby> tags
11422 https://bugs.webkit.org/show_bug.cgi?id=55930
11423
11424 Don't set style type BEFORE/AFTER on anonymous wrapper block.
11425 Rather, check style type on generated wrapped child.
11426
11427 Tests: fast/ruby/generated-after-counter-doesnt-crash.html
11428 fast/ruby/generated-before-and-after-counter-doesnt-crash.html
11429 fast/ruby/generated-before-counter-doesnt-crash.html
11430
11431 * rendering/RenderRuby.cpp:
11432 (WebCore::isAnonymousRubyInlineBlock):
11433 (WebCore::isRubyBeforeBlock):
11434 (WebCore::isRubyAfterBlock):
11435 (WebCore::rubyBeforeBlock):
11436 (WebCore::rubyAfterBlock):
11437 (WebCore::createAnonymousRubyInlineBlock):
11438 (WebCore::RenderRubyAsInline::addChild):
11439 (WebCore::RenderRubyAsBlock::addChild):
11440
11441 2011-06-28 Emil A Eklund <eae@chromium.org>
11442
11443 Reviewed by Eric Seidel.
11444
11445 Switch RenderLayer position/size to to new layout types
11446 https://bugs.webkit.org/show_bug.cgi?id=63578
11447
11448 Switch location and size methods for RenderLayer over to the new layout unit abstraction.
11449
11450 No new tests, no functionality changes.
11451
11452 * rendering/RenderLayer.cpp:
11453 (WebCore::RenderLayer::resize):
11454 (WebCore::RenderLayer::visibleHeight):
11455 (WebCore::RenderLayer::visibleWidth):
11456 (WebCore::RenderLayer::offsetFromResizeCorner):
11457 * rendering/RenderLayer.h:
11458 (WebCore::RenderLayer::location):
11459 (WebCore::RenderLayer::setLocation):
11460 (WebCore::RenderLayer::size):
11461 (WebCore::RenderLayer::setSize):
11462 (WebCore::RenderLayer::rect):
11463 (WebCore::RenderLayer::renderBoxLocation):
11464 (WebCore::RenderLayer::renderBoxX):
11465 (WebCore::RenderLayer::renderBoxY):
11466 * rendering/RenderListBox.cpp:
11467 (WebCore::RenderListBox::visibleHeight):
11468 (WebCore::RenderListBox::visibleWidth):
11469 * rendering/RenderListBox.h:
11470
11471 2011-06-28 Levi Weintraub <leviw@chromium.org>
11472
11473 Reviewed by Eric Seidel.
11474
11475 Switch paintObject and paintReplaced to new layout types
11476 https://bugs.webkit.org/show_bug.cgi?id=63585
11477
11478 Switching paintObject and paintReplaced to layout type abstractions from more integral types.
11479
11480 No new tests as this is just moving to an abstraction.
11481
11482 * rendering/RenderBlock.cpp:
11483 (WebCore::RenderBlock::paintObject):
11484 * rendering/RenderBlock.h:
11485 * rendering/RenderBox.h:
11486 (WebCore::RenderBox::paintObject):
11487 * rendering/RenderEmbeddedObject.cpp:
11488 (WebCore::RenderEmbeddedObject::paintReplaced):
11489 * rendering/RenderEmbeddedObject.h:
11490 * rendering/RenderFileUploadControl.cpp:
11491 (WebCore::RenderFileUploadControl::paintObject):
11492 * rendering/RenderFileUploadControl.h:
11493 * rendering/RenderHTMLCanvas.cpp:
11494 (WebCore::RenderHTMLCanvas::paintReplaced):
11495 * rendering/RenderHTMLCanvas.h:
11496 * rendering/RenderImage.cpp:
11497 (WebCore::RenderImage::paintReplaced):
11498 * rendering/RenderImage.h:
11499 * rendering/RenderListBox.cpp:
11500 (WebCore::RenderListBox::paintObject):
11501 * rendering/RenderListBox.h:
11502 * rendering/RenderReplaced.h:
11503 (WebCore::RenderReplaced::paintReplaced):
11504 * rendering/RenderTable.cpp:
11505 (WebCore::RenderTable::paintObject):
11506 * rendering/RenderTable.h:
11507 * rendering/RenderTableSection.cpp:
11508 (WebCore::RenderTableSection::paintObject):
11509 * rendering/RenderTableSection.h:
11510 * rendering/RenderTextControl.cpp:
11511 (WebCore::RenderTextControl::paintObject):
11512 * rendering/RenderTextControl.h:
11513 * rendering/RenderVideo.cpp:
11514 (WebCore::RenderVideo::paintReplaced):
11515 * rendering/RenderVideo.h:
11516
11517 2011-06-28 Adam Langley <agl@chromium.org>
11518
11519 Reviewed by Adam Barth.
11520
11521 Skip cache validation on back with HTTPS.
11522 https://bugs.webkit.org/show_bug.cgi?id=63537
11523
11524 For back navigations over HTTP, WebKit sets a flag to use cached data
11525 irrespective of whether it has expired. However, this isn't currently
11526 done for HTTPS.
11527
11528 The logic in question was added in
11529 https://bugs.webkit.org/show_bug.cgi?id=33993 and appears to have been
11530 precautionary. However, both Firefox and IE will use this back
11531 navigation trick for HTTPS as well and so we should probably behave
11532 likewise.
11533
11534 Test: http/tests/cache/history-only-cached-subresource-loads-max-age-htt ps.html
11535
11536 * loader/FrameLoader.cpp:
11537 (WebCore::FrameLoader::addExtraFieldsToRequest):
11538
11539 2011-06-28 Dimitri Glazkov <dglazkov@chromium.org>
11540
11541 Reviewed by Adam Barth.
11542
11543 Remove errant isShadowBoundary on ShadowRoot.
11544 https://bugs.webkit.org/show_bug.cgi?id=63588
11545
11546 Removing dead code, no tests for that.
11547
11548 * dom/ShadowRoot.h: Removed a function that's no longer used.
11549
11550 2011-06-28 Zeng Huiqing <huiqing.zeng@intel.com>
11551
11552 Reviewed by Kenneth Russell.
11553
11554 [chromium]Optimize GraphicsLayerChromium::setChildren()
11555 https://bugs.webkit.org/show_bug.cgi?id=62837
11556
11557 No new tests.
11558
11559 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
11560 (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
11561 (WebCore::GraphicsLayerChromium::setChildren):
11562 (WebCore::GraphicsLayerChromium::addChild):
11563 * platform/graphics/chromium/GraphicsLayerChromium.h:
11564
11565 2011-06-28 Levi Weintraub <leviw@chromium.org>
11566
11567 Reviewed by Eric Seidel.
11568
11569 Switch paintBoxShadow and paintBoxDecorations to new layout types
11570 https://bugs.webkit.org/show_bug.cgi?id=63577
11571
11572 Switching paintBoxShadow and paintBoxDecorations to layout type abstract ion
11573 from more integral types.
11574
11575 No new tests as this is just moving to an abstraction.
11576
11577 * rendering/InlineFlowBox.cpp:
11578 (WebCore::InlineFlowBox::paintBoxShadow):
11579 (WebCore::InlineFlowBox::paintBoxDecorations):
11580 * rendering/InlineFlowBox.h:
11581 * rendering/RenderBox.cpp:
11582 (WebCore::RenderBox::paintBoxDecorations):
11583 * rendering/RenderBox.h:
11584 * rendering/RenderBoxModelObject.cpp:
11585 (WebCore::RenderBoxModelObject::paintBoxShadow):
11586 * rendering/RenderBoxModelObject.h:
11587 * rendering/RenderFieldset.cpp:
11588 (WebCore::RenderFieldset::paintBoxDecorations):
11589 * rendering/RenderFieldset.h:
11590 * rendering/RenderTable.cpp:
11591 (WebCore::RenderTable::paintBoxDecorations):
11592 * rendering/RenderTable.h:
11593 * rendering/RenderTableCell.cpp:
11594 (WebCore::RenderTableCell::paintBoxDecorations):
11595 * rendering/RenderTableCell.h:
11596 * rendering/RenderView.cpp:
11597 (WebCore::RenderView::paintBoxDecorations):
11598 * rendering/RenderView.h:
11599
11600 2011-06-28 Emil A Eklund <eae@chromium.org>
11601
11602 Reviewed by Eric Seidel.
11603
11604 Switch RenderBox position/size to to new layout types
11605 https://bugs.webkit.org/show_bug.cgi?id=63571
11606
11607 Switch location and size methods for RenderBox over to the new layout un it abstraction.
11608
11609 No new tests, no functionality changes.
11610
11611 * rendering/RenderBox.cpp:
11612 * rendering/RenderBox.h:
11613 * rendering/RenderBoxModelObject.cpp:
11614 * rendering/RenderBoxModelObject.h:
11615 * rendering/RenderInline.cpp:
11616 * rendering/RenderInline.h:
11617 * rendering/RenderVideo.cpp:
11618 * rendering/RenderVideo.h:
11619
11620 2011-06-28 Sheriff Bot <webkit.review.bot@gmail.com>
11621
11622 Unreviewed, rolling out r89968.
11623 http://trac.webkit.org/changeset/89968
11624 https://bugs.webkit.org/show_bug.cgi?id=63581
11625
11626 Broke chromium windows compile (Requested by jamesr on
11627 #webkit).
11628
11629 * WebCore.gyp/WebCore.gyp:
11630 * loader/cache/CachedFont.cpp:
11631 * platform/chromium/DragImageRef.h:
11632 * platform/graphics/FloatPoint.h:
11633 * platform/graphics/FloatRect.h:
11634 * platform/graphics/FloatSize.h:
11635 * platform/graphics/FontPlatformData.h:
11636 (WebCore::FontPlatformData::hash):
11637 * platform/graphics/GlyphBuffer.h:
11638 (WebCore::GlyphBuffer::advanceAt):
11639 (WebCore::GlyphBuffer::add):
11640 (WebCore::GlyphBuffer::expandLastAdvance):
11641 * platform/graphics/IntPoint.h:
11642 * platform/graphics/IntRect.h:
11643 * platform/graphics/IntSize.h:
11644 * platform/graphics/SimpleFontData.h:
11645 * platform/graphics/cg/FloatPointCG.cpp:
11646 * platform/graphics/cg/FloatRectCG.cpp:
11647 * platform/graphics/cg/FloatSizeCG.cpp:
11648 * platform/graphics/cg/IntPointCG.cpp:
11649 * platform/graphics/cg/IntRectCG.cpp:
11650 * platform/graphics/cg/IntSizeCG.cpp:
11651 * platform/graphics/mac/FontCustomPlatformData.cpp:
11652 (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
11653 (WebCore::createFontCustomPlatformData):
11654 * platform/graphics/mac/FontCustomPlatformData.h:
11655 (WebCore::FontCustomPlatformData::FontCustomPlatformData):
11656
11657 2011-06-28 Levi Weintraub <leviw@chromium.org>
11658
11659 Reviewed by Eric Seidel.
11660
11661 Switch PaintMask* to new layout types
11662 https://bugs.webkit.org/show_bug.cgi?id=63576
11663
11664 Switching paintMask* to layout type abstraction from more integral types .
11665
11666 No new tests as this is just moving to an abstraction.
11667
11668 * rendering/InlineFlowBox.cpp:
11669 (WebCore::InlineFlowBox::paintMask):
11670 * rendering/InlineFlowBox.h:
11671 * rendering/RenderBox.cpp:
11672 (WebCore::RenderBox::paintMask):
11673 (WebCore::RenderBox::paintMaskImages):
11674 * rendering/RenderBox.h:
11675 * rendering/RenderFieldset.cpp:
11676 (WebCore::RenderFieldset::paintMask):
11677 * rendering/RenderFieldset.h:
11678 * rendering/RenderTable.cpp:
11679 (WebCore::RenderTable::paintMask):
11680 * rendering/RenderTable.h:
11681 * rendering/RenderTableCell.cpp:
11682 (WebCore::RenderTableCell::paintMask):
11683 * rendering/RenderTableCell.h:
11684
11685 2011-06-28 Levi Weintraub <leviw@chromium.org>
11686
11687 Reviewed by Eric Seidel.
11688
11689 Switch paintFillLayer* to new layout types
11690 https://bugs.webkit.org/show_bug.cgi?id=63570
11691
11692 Switching painFillLayer* to layout type abstraction from more integral t ypes.
11693
11694 No new tests as this is just moving to an abstraction.
11695
11696 * rendering/InlineFlowBox.cpp:
11697 (WebCore::InlineFlowBox::paintFillLayers):
11698 (WebCore::InlineFlowBox::paintFillLayer):
11699 * rendering/InlineFlowBox.h:
11700 * rendering/RenderBox.cpp:
11701 (WebCore::RenderBox::paintFillLayers):
11702 (WebCore::RenderBox::paintFillLayer):
11703 * rendering/RenderBox.h:
11704 * rendering/RenderBoxModelObject.cpp:
11705 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
11706 * rendering/RenderBoxModelObject.h:
11707 * rendering/RenderObject.h:
11708
11709 2011-06-28 Luke Macpherson <macpherson@chromium.org>
11710
11711 Reviewed by Eric Seidel.
11712
11713 Use appropriate macro for CSSPropertyWebkitAppearance in CSSStyleSelecto r::applyProperty()
11714 https://bugs.webkit.org/show_bug.cgi?id=63197
11715
11716 No new tests / no functionality changed.
11717
11718 * css/CSSStyleSelector.cpp:
11719 (WebCore::CSSStyleSelector::applyProperty):
11720 Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro and delete duplicate code.
11721
11722 2011-06-28 Cary Clark <caryclark@google.com>
11723
11724 Reviewed by James Robinson.
11725
11726 Use Skia if Skia on Mac Chrome is enabled
11727 https://bugs.webkit.org/show_bug.cgi?id=62999
11728
11729 No new tests. This does not affect existing
11730 functionality.
11731
11732 * WebCore.gyp/WebCore.gyp:
11733 Include Skia and related files and exclude CG
11734 and related files when building Chromium for Skia
11735 on the Mac.
11736
11737 * loader/cache/CachedFont.cpp:
11738 Rename CHROME to CHROMIUM.
11739
11740 * platform/chromium/DragImageRef.h:
11741 * platform/graphics/FloatPoint.h:
11742 * platform/graphics/FloatRect.h:
11743 * platform/graphics/FloatSize.h:
11744 * platform/graphics/FontPlatformData.h:
11745 (WebCore::FontPlatformData::hash):
11746 * platform/graphics/GlyphBuffer.h:
11747 (WebCore::GlyphBuffer::advanceAt):
11748 (WebCore::GlyphBuffer::add):
11749 (WebCore::GlyphBuffer::expandLastAdvance):
11750 * platform/graphics/IntPoint.h:
11751 * platform/graphics/IntRect.h:
11752 * platform/graphics/IntSize.h:
11753 * platform/graphics/SimpleFontData.h:
11754 * platform/graphics/cg/FloatPointCG.cpp:
11755 * platform/graphics/cg/FloatRectCG.cpp:
11756 * platform/graphics/cg/FloatSizeCG.cpp:
11757 * platform/graphics/cg/IntPointCG.cpp:
11758 * platform/graphics/cg/IntRectCG.cpp:
11759 * platform/graphics/cg/IntSizeCG.cpp:
11760 * platform/graphics/mac/FontCustomPlatformData.cpp:
11761 (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
11762 (WebCore::createFontCustomPlatformData):
11763 * platform/graphics/mac/FontCustomPlatformData.h:
11764 (WebCore::FontCustomPlatformData::FontCustomPlatformData):
11765 Ditto.
11766
11767 2011-06-28 Ryosuke Niwa <rniwa@webkit.org>
11768
11769 Reviewed by Darin Adler.
11770
11771 Stop instantiating Position with PositionIsOffsetInAnchor in various fil es
11772 https://bugs.webkit.org/show_bug.cgi?id=63384
11773
11774 Refactoring.
11775
11776 Removed many if conditions that compared the anchor type to Position::Po sitionIsOffsetInAnchor
11777 because there were also checking that containerNode is a text node.
11778
11779 Also added Position::containerText() to avoid manually casting container Node().
11780
11781 * dom/Position.cpp:
11782 (WebCore::Position::Position): Added an assertion to ensure BeforeChildr en/AfterChildren
11783 anchor type won't be used for a node whose contents is ignored by editin g.
11784 (WebCore::Position::containerText): Added.
11785 * dom/Position.h:
11786 * editing/ApplyBlockElementCommand.cpp:
11787 (WebCore::isNewLineAtPosition): Removed a redundant comparison of anchor type.
11788 (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesI fNeeded): Since containerNode
11789 is always a text node when renderStyleOfEnclosingTextNode returns a rend er style, use new Position
11790 constructor that takes Text* and offset.
11791 (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesI fNeeded): Removed redundant
11792 comparison of anchor type and use new Position constructor that takes Te xt* and offset.
11793 * editing/ApplyStyleCommand.cpp:
11794 (WebCore::ApplyStyleCommand::splitTextAtStart): Replaced an assertion th at compared anchor type by
11795 an assertion that the container node is a text node; use new constructor .
11796 (WebCore::ApplyStyleCommand::splitTextAtEnd): Ditto; also added early ex its in the case script
11797 modified DOM.
11798 (WebCore::ApplyStyleCommand::splitTextElementAtStart): Ditto.
11799 (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Ditto.
11800 (WebCore::ApplyStyleCommand::joinChildTextNodes): Use new constructor.
11801 * editing/CompositeEditCommand.cpp:
11802 (WebCore::Editor::replaceSelectedTextInNode): Calls containerText instea d of manually casting containerNode.
11803 * editing/Editor.cpp:
11804 (WebCore::Editor::canDeleteRange): Call Range::startPosition instead of manually instantiating Position
11805 by calling startContainer and startOffset.
11806 * editing/FrameSelection.cpp:
11807 (WebCore::FrameSelection::setSelectedRange): Ditto.
11808 * editing/InsertTextCommand.cpp:
11809 (WebCore::InsertTextCommand::input): Calls containerText instead of manu ally casting containerNode.
11810 * editing/ReplaceSelectionCommand.cpp:
11811 (WebCore::ReplaceSelectionCommand::doApply): Calls containerText instead of manually casting containerNode.
11812 * editing/VisiblePosition.cpp:
11813 (WebCore::VisiblePosition::characterAfter): Removed a redundant anchor t ype comparison.
11814 (WebCore::startVisiblePosition): Call Range::startPosition instead of st artContainer and startOffset.
11815 (WebCore::endVisiblePosition): Call Range::endPosition instead of endCon tainer and endOffset.
11816 * editing/htmlediting.cpp:
11817 (WebCore::firstInSpecialElement): Call containerNode() to address <rdar: //problem/5027702>.
11818 (WebCore::lastInSpecialElement): Ditto; use new constructor.
11819 * editing/visible_units.cpp:
11820 (WebCore::endPositionForLine): Use new constructor.
11821 (WebCore::startOfParagraph): Ditto.
11822 (WebCore::endOfParagraph): Ditto.
11823
11824 2011-06-28 Rob Buis <rbuis@rim.com>
11825
11826 Reviewed by Nikolas Zimmermann.
11827
11828 SVG1.1SE test text-tref-03-b.svg fails
11829 https://bugs.webkit.org/show_bug.cgi?id=63390
11830
11831 Support tref on forward referenced content by listening to DOMSubtreeMod ified events. This also
11832 allows updating after modifications in the referenced content subtree.
11833
11834 Tests: svg/W3C-SVG-1.1-SE/text-tref-03-b.svg
11835 svg/custom/text-tref-03-b-change-href-dom.svg
11836 svg/custom/text-tref-03-b-change-href.svg
11837 svg/custom/text-tref-03-b-dynamic.svg
11838 svg/custom/text-tref-03-b-dynamic2.svg
11839 svg/custom/text-tref-03-b-referenced-element-removal.svg
11840 svg/custom/text-tref-03-b-tref-removal.svg
11841
11842 * svg/SVGTRefElement.cpp:
11843 (WebCore::SubtreeModificationEventListener::create):
11844 (WebCore::SubtreeModificationEventListener::cast):
11845 (WebCore::SubtreeModificationEventListener::removeFromTarget):
11846 (WebCore::SubtreeModificationEventListener::SubtreeModificationEventList ener):
11847 (WebCore::SubtreeModificationEventListener::operator==):
11848 (WebCore::SubtreeModificationEventListener::handleEvent):
11849 (WebCore::SVGTRefElement::updateReferencedText):
11850 (WebCore::SVGTRefElement::parseMappedAttribute):
11851 (WebCore::SVGTRefElement::svgAttributeChanged):
11852 (WebCore::SVGTRefElement::buildPendingResource):
11853 (WebCore::SVGTRefElement::removedFromDocument):
11854 * svg/SVGTRefElement.h:
11855
11856 2011-06-28 Abhishek Arya <inferno@chromium.org>
11857
11858 Reviewed by Anders Carlsson.
11859
11860 Split the string creation into a local (while creating text runs)
11861 so that it is not destroyed prematurely.
11862 https://bugs.webkit.org/show_bug.cgi?id=63543
11863
11864 Run fast/forms/text-control-intrinsic-widths.html under valgrind/ASAN.
11865 * rendering/RenderFileUploadControl.cpp:
11866 (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
11867 this one is just done for caution, in case, we don't do the same
11868 mistake when adding legacy rounding hacks option.
11869 * rendering/RenderTextControl.cpp:
11870 (WebCore::RenderTextControl::getAvgCharWidth):
11871
11872 2011-06-28 Greg Simon <gregsimon@chromium.org>
11873
11874 Reviewed by Dimitri Glazkov.
11875
11876 Migrate SQLite backing store to LevelDB backing store for Indexeddb.
11877 https://bugs.webkit.org/show_bug.cgi?id=62780
11878
11879 * storage/IDBFactoryBackendImpl.cpp:
11880 (WebCore::computeFileIdentifier):
11881 (WebCore::computeUniqueIdentifier):
11882 (WebCore::IDBFactoryBackendImpl::open):
11883 (WebCore::migrateObjectStores):
11884 (WebCore::IDBFactoryBackendImpl::migrateFromSQLiteToLevelDB):
11885 * storage/IDBLevelDBBackingStore.cpp:
11886 (WebCore::IDBLevelDBBackingStore::backingStoreExists):
11887 * storage/IDBLevelDBBackingStore.h:
11888 * storage/IDBObjectStoreBackendImpl.cpp:
11889 (WebCore::IDBObjectStoreBackendImpl::populateIndex):
11890 * storage/IDBObjectStoreBackendImpl.h:
11891 * storage/IDBSQLiteBackingStore.cpp:
11892 (WebCore::IDBSQLiteBackingStore::backingStoreExists):
11893 * storage/IDBSQLiteBackingStore.h:
11894
11895 2011-06-28 Levi Weintraub <leviw@chromium.org>
11896
11897 Reviewed by Darin Adler.
11898
11899 Create intermediate classes as a path towards getting off of pixel offse ts
11900 https://bugs.webkit.org/show_bug.cgi?id=61896
11901
11902 Creating three intermediate typedefs to aid in moving layout and hit tes ting from integers
11903 to floats. We'll transition the render tree over to these intermediate t ypes and add
11904 infrastructure to support the new types behind USE(FLOAT_LAYOUT_OFFSETS) . This allows the ultimate
11905 changeover to be easier.
11906
11907 Switching LayoutState over to this abstraction to verify it works correc tly.
11908
11909 No new tests since this is creating a new abstraction, not changing curr ent behavior.
11910
11911 * GNUmakefile.list.am:
11912 * WebCore.gypi:
11913 * WebCore.pro:
11914 * WebCore.vcproj/WebCore.vcproj:
11915 * WebCore.xcodeproj/project.pbxproj:
11916 * rendering/LayoutState.cpp:
11917 (WebCore::LayoutState::LayoutState):
11918 (WebCore::LayoutState::pageLogicalOffset):
11919 (WebCore::LayoutState::addForcedColumnBreak):
11920 * rendering/LayoutState.h:
11921 * rendering/LayoutTypes.h: Added.
11922
11923 2011-06-28 Jeff Miller <jeffm@apple.com>
11924
11925 Add fullscreen.css and fullscreenQuickTime.css to the WebCore Visual Stu dio project for convenience.
11926 Looks like Visual Studio also re-sorted one more file since my last chec kin.
11927
11928 * WebCore.vcproj/WebCore.vcproj:
11929
11930 2011-06-28 Jeff Miller <jeffm@apple.com>
11931
11932 Re-sort the WebCore project with Visual Studio after recent changes that I assume were done by manually editing the XML.
11933
11934 * WebCore.vcproj/WebCore.vcproj:
11935
11936 2011-06-28 Joone Hur <joone.hur@collabora.co.uk>
11937
11938 Reviewed by Martin Robinson.
11939
11940 [GTK] Rename 3D transforms to 3D rendering
11941 https://bugs.webkit.org/show_bug.cgi?id=63508
11942
11943 This patch allows to include ENABLE_3D_RENDERING to build WebKitGtk+.
11944
11945 * GNUmakefile.am: Add ENABLE_3D_RENDERING
11946
11947 2011-06-22 Pavel Podivilov <podivilov@chromium.org>
11948
11949 Reviewed by Yury Semikhatsky.
11950
11951 Web Inspector: use column numbers when linking to script location in tim eline and console.
11952 https://bugs.webkit.org/show_bug.cgi?id=63126
11953
11954 * inspector/front-end/ConsoleView.js:
11955 (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
11956 * inspector/front-end/TimelinePanel.js:
11957 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails) :
11958 (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTra ce):
11959
11960 2011-06-28 Joone Hur <joone.hur@collabora.co.uk>
11961
11962 Reviewed by Martin Robinson.
11963
11964 [GTK] Allow to build WebKitGtk+ with accelerated compositing
11965 https://bugs.webkit.org/show_bug.cgi?id=63404
11966
11967 WebKitGtk+ needs to implement accelerated compositing for running CSS3 3 D transforms
11968 and animation through GPU acceleration. We could implement GraphicsLayer using Clutter.
11969
11970 * GNUmakefile.list.am:
11971 * platform/graphics/clutter/GraphicsLayerClutter.cpp: Added.
11972 (WebCore::GraphicsLayer::create): Not implemented yet.
11973 (WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
11974 (WebCore::GraphicsLayerClutter::~GraphicsLayerClutter):
11975 (WebCore::GraphicsLayerClutter::setNeedsDisplay): Ditto.
11976 (WebCore::GraphicsLayerClutter::setNeedsDisplayInRect): Ditto.
11977 * platform/graphics/clutter/GraphicsLayerClutter.h: Added.
11978
11979 2011-06-28 Dan Bernstein <mitz@apple.com>
11980
11981 Reviewed by Darin Adler.
11982
11983 REGRESSION (r89733): fast/text/zero-font-size.html is failing on Leopard
11984 https://bugs.webkit.org/show_bug.cgi?id=63512
11985
11986 * platform/graphics/mac/SimpleFontDataMac.mm:
11987 (WebCore::SimpleFontData::platformWidthForGlyph): Initialize the advance local variable, because
11988 on Leopard wkGetGlyphTransformedAdvances can return successfully yet not update the variable when
11989 the font size is 0. Presumably, r89733 exposed this by changing the valu es put on the stack just
11990 before this function is called.
11991
11992 2011-06-27 Alexander Pavlov <apavlov@chromium.org>
11993
11994 Reviewed by Pavel Feldman.
11995
11996 Web Inspector: Change the inspector model API and backend to allow CSS p seudoclass inspection
11997 https://bugs.webkit.org/show_bug.cgi?id=63446
11998
11999 * inspector/Inspector.json:
12000 * inspector/InspectorCSSAgent.cpp:
12001 (WebCore::computePseudoClassMask):
12002 (WebCore::InspectorCSSAgent::getStylesForNode):
12003 * inspector/InspectorCSSAgent.h:
12004 * inspector/front-end/AuditRules.js:
12005 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
12006 * inspector/front-end/CSSStyleModel.js:
12007 (WebInspector.CSSStyleModel.prototype.getStylesAsync):
12008 * inspector/front-end/StylesSidebarPane.js:
12009 (WebInspector.StylesSidebarPane.prototype.update):
12010
12011 2011-06-28 Kent Tamura <tkent@chromium.org>
12012
12013 Fix a build error on Mac by r89907.
12014
12015 * svg/animation/SVGSMILElement.cpp:
12016 (WebCore::SVGSMILElement::endListChanged):
12017
12018 2011-06-27 Alexander Pavlov <apavlov@chromium.org>
12019
12020 Reviewed by Kent Tamura.
12021
12022 [Chromium] SELECT or autofill popup is trimmed by screen edge on Windows
12023 https://bugs.webkit.org/show_bug.cgi?id=63438
12024
12025 If the popup is calculated to be trimmed by a screen edge, an attempt is made
12026 to alter its vertical edge alignment (set to the right edge for LTR or t o the left edge for RTL)
12027 to see if the trimmed portion becomes smaller than that with the origina l layout.
12028 The change involves remembering the original frameRect for the popup and restoring it in refresh().
12029 This is due to the fact that the frameRect originally set in showInRect( ) is overwritten
12030 by layoutAndGetRTLOffset(), which breaks the originally requested popup container layout metrics.
12031 The max width is reset on every layoutAndCalculateWidgetRect(), as it ca n be constrained by the screen edge,
12032 and thus should be re-checked every time the popup is displayed, in case the browser window has been moved.
12033
12034 Tests: manual-tests/popup-width-restriction-within-screen.html partly co vers the fix (should not regress).
12035 Other than that, there is no way to unit-test the platform-specific nati ve code.
12036
12037 * platform/chromium/PopupMenuChromium.cpp:
12038 (WebCore::PopupListBox::setMaxWidth): Added. Avoid duplicate popup conte nt layouts (in contrast with setMaxWidthAndLayout()).
12039 (WebCore::PopupListBox::PopupListBox):
12040 (WebCore::PopupContainer::layoutAndCalculateWidgetRect): Attempt a left- right popup alignment inversion
12041 to minimize the trimmed content. Also restore a default max popup width.
12042 (WebCore::PopupContainer::layoutAndGetRTLOffset): Always return the popu p listbox offset for the RTL (right alignment) case.
12043 The method rename is due to the return value semantics change.
12044 (WebCore::PopupContainer::showInRect): Store the originally requested fr ameRect for the popup.
12045 (WebCore::PopupContainer::refresh): Restore the original popup frameRect to avoid layout artifacts on refresh.
12046 (WebCore::PopupContainer::isRTL): This check should be made by the layou tAndGetRTLOffset() clients.
12047 * platform/chromium/PopupMenuChromium.h:
12048
12049 2011-06-28 Kentaro Hara <haraken@google.com>
12050
12051 Reviewed by Kent Tamura.
12052
12053 Allow spaces between e-mail addresses in 'email' input type.
12054 https://bugs.webkit.org/show_bug.cgi?id=55987
12055
12056 Allowed spaces between e-mail addresses in 'email' input type,
12057 e.g. ' a@p.com , b@p.com ' is a valid value. Implemented the
12058 value sanitization algorithm for an e-mail value. Added more unit
12059 tests that check the e-mail value parser.
12060
12061 Test: fast/forms/ValidityState-typeMismatch-email.html
12062
12063 * html/EmailInputType.cpp:
12064 (WebCore::EmailInputType::typeMismatchFor):
12065 (WebCore::EmailInputType::sanitizeValue):
12066 * html/EmailInputType.h:
12067 * html/parser/HTMLParserIdioms.cpp:
12068 (WebCore::stripHTMLLineBreaks):
12069 * html/parser/HTMLParserIdioms.h:
12070 (WebCore::isHTMLLineBreak):
12071
12072 2011-06-28 Kent Tamura <tkent@chromium.org>
12073
12074 Reviewed by Hajime Morita.
12075
12076 Refactor RenderTextControl::text().
12077 https://bugs.webkit.org/show_bug.cgi?id=63519
12078
12079 No new tests because this is just a refactoring.
12080
12081 * rendering/RenderTextControl.cpp:
12082 (WebCore::RenderTextControl::setInnerTextValue):
12083 Resuce the number of text() calls.
12084 (WebCore::finishText):
12085 - Use StringBuilder.
12086 - Make this a static function.
12087 This function doesn't access anything of RenderTextControl.
12088 (WebCore::RenderTextControl::text):
12089 Use emptyString() and StringBuilder.
12090 (WebCore::RenderTextControl::textWithHardLineBreaks): ditto.
12091 * rendering/RenderTextControl.h: Remove finishText().
12092
12093 2011-06-28 Yury Semikhatsky <yurys@chromium.org>
12094
12095 Reviewed by Pavel Feldman.
12096
12097 Web Inspector: console.group messages should never be coalesced
12098 https://bugs.webkit.org/show_bug.cgi?id=63521
12099
12100 * inspector/InspectorConsoleAgent.cpp:
12101 (WebCore::isGroupMessage):
12102 (WebCore::InspectorConsoleAgent::addConsoleMessage):
12103
12104 2011-06-28 Yury Semikhatsky <yurys@chromium.org>
12105
12106 Reviewed by Pavel Feldman.
12107
12108 Web Inspector: console group boundaries should be more distinct in UI
12109 https://bugs.webkit.org/show_bug.cgi?id=63455
12110
12111 Show grey bracket to on the left side of a console group message to high light
12112 the group extent.
12113
12114 * inspector/front-end/ConsoleView.js:
12115 (WebInspector.ConsoleGroup):
12116 * inspector/front-end/inspector.css:
12117 (#console-prompt):
12118 (.console-message, .console-user-command):
12119 (.console-message::before, .console-user-command::before, #console-promp t::before, .console-group-title::before):
12120 (.console-group-title::before):
12121 (.console-group):
12122 (.console-group-bracket):
12123 (.console-group.collapsed > .console-group-bracket):
12124
12125 2011-06-28 Kent Tamura <tkent@chromium.org>
12126
12127 Reviewed by Hajime Morita.
12128
12129 Use RefPtr for the HTMLElement data members of TextFieldInptType
12130 and SearchInputType.
12131 https://bugs.webkit.org/show_bug.cgi?id=63511
12132
12133 No new tests because of no behavior change.
12134
12135 * html/SearchInputType.cpp:
12136 (WebCore::SearchInputType::SearchInputType):
12137 No need to initialize the element members explicitly because
12138 RefPtr constructor works well.
12139 (WebCore::SearchInputType::createShadowSubtree):
12140 Substitute an element to a data member, and don't call RefPtr<>::release ().
12141 (WebCore::SearchInputType::innerBlockElement):
12142 Moved from the header file, and adjustment for RefPtr<>.
12143 (WebCore::SearchInputType::resultsButtonElement): ditto.
12144 (WebCore::SearchInputType::cancelButtonElement): ditto.
12145 (WebCore::SearchInputType::destroyShadowSubtree):
12146 Adjustment for RefPtr<>.
12147 * html/SearchInputType.h:
12148 - Move accessor functions to the cpp file because they are virtual.
12149 - Change element data member types: HTMLElement* -> RefPtr<HTMLElement> .
12150 * html/TextFieldInputType.cpp:
12151 (WebCore::TextFieldInputType::TextFieldInputType):
12152 No need to initialize the element members explicitly because
12153 RefPtr constructor works well.
12154 (WebCore::TextFieldInputType::~TextFieldInputType):
12155 Explicityly defines the destructor in the cpp file to avoid to
12156 make it implicitly in the header file. If the destructor was made
12157 in the header file, we would need to include HTMLElement.h in the
12158 header file.
12159 (WebCore::TextFieldInputType::createShadowSubtree):
12160 - Don't call RenderTheme::themeForPage().
12161 - Substitute an element to a data member, and don't call RefPtr<>::relea se().
12162 (WebCore::TextFieldInputType::setInnerTextElement):
12163 Moved from the header file to avoid to include HTMLElement.h.
12164 (WebCore::TextFieldInputType::setSpeechButtonElement): ditto.
12165 (WebCore::TextFieldInputType::innerTextElement):
12166 Moved from the header file, and adjustment for RefPtr<>.
12167 (WebCore::TextFieldInputType::innerSpinButtonElement): ditto.
12168 (WebCore::TextFieldInputType::speechButtonElement): ditto.
12169 (WebCore::TextFieldInputType::destroyShadowSubtree):
12170 Adjustment for RefPtr<>.
12171 * html/TextFieldInputType.h:
12172 - Move accessor functions to the cpp file because they are virtual.
12173 - Change element data member types: HTMLElement* -> RefPtr<HTMLElement> .
12174
12175 2011-06-28 Felician Marton <marton.felician.zoltan@stud.u-szeged.hu>
12176
12177 Reviewed by Nikolas Zimmermann.
12178
12179 SVG animation flickers when restarting
12180 https://bugs.webkit.org/show_bug.cgi?id=18450
12181
12182 Add new parameter to the following methods. The new parameter is the tim e of adding a "begin" or "end" time to the SVG animation.
12183 - WebCore::SVGSMILElement::addBeginTime
12184 - WebCore::SVGSMILElement::beginListChanged
12185 - WebCore::SVGSMILElement::addEndTime
12186 - WebCore::SVGSMILElement::endListChanged
12187 In case of beginTime and beginListChanged it's necessary, because the de lay between the event of adding a new begin time
12188 (in WebCore::SVGAnimationElement::beginElementAt) and the actual process ing (in WebCore::SVGSMILElement::endListChanged)
12189 is significant. In lack of event time we can't decide that we should con sider the new time or not.
12190 If the new begin time is smaller than the event time, we musn't begin th e animation, else we shoud do further calculations.
12191
12192 The following methods just modified for consistency:
12193 - WebCore::SVGSMILElement::addEndTime
12194 - WebCore::SVGSMILElement::endListChanged
12195
12196 No new tests, because currently there is no way to test SVG flickering a t zero time.
12197
12198 * svg/SVGAnimationElement.cpp:
12199 (WebCore::SVGAnimationElement::beginElementAt):
12200 (WebCore::SVGAnimationElement::endElementAt):
12201 * svg/animation/SVGSMILElement.cpp:
12202 (WebCore::SVGSMILElement::attributeChanged):
12203 (WebCore::SVGSMILElement::addBeginTime):
12204 (WebCore::SVGSMILElement::addEndTime):
12205 (WebCore::SVGSMILElement::beginListChanged):
12206 (WebCore::SVGSMILElement::endListChanged):
12207 The body changed:
12208 - Use new parameter, the time of adding the new begin time.
12209 - Cancel some incorrect optimalization. We should also do further cal culations when elapsed >= m_intervalBegin.
12210 (WebCore::SVGSMILElement::createInstanceTimesFromSyncbase):
12211 (WebCore::SVGSMILElement::handleConditionEvent):
12212 (WebCore::SVGSMILElement::beginByLinkActivation):
12213 * svg/animation/SVGSMILElement.h:
12214
12215 2011-06-28 Csaba Osztrogonác <ossy@webkit.org>
12216
12217 Reviewed by Andreas Kling.
12218
12219 Adding MHTML reading support.
12220 https://bugs.webkit.org/show_bug.cgi?id=7168
12221
12222 * features.pri: Disable MHTML on Qt by default in a proper way.
12223
12224 2011-06-28 Csaba Osztrogonác <ossy@webkit.org>
12225
12226 Reviewed by Andreas Kling.
12227
12228 [Qt] Remove ENABLE_XBL, because there aren't ENABLE(XBL) macros anymore.
12229
12230 * features.pri:
12231
12232 2011-06-27 Gyuyoung Kim <gyuyoung.kim@samsung.com>
12233
12234 Unreviewed. Fix style error related to wrong include order.
12235
12236 * platform/graphics/efl/ImageEfl.cpp:
12237
12238 2011-06-27 Brian Weinstein <bweinstein@apple.com>
12239
12240 Fix the WebCore vcproj file after r89851.
12241
12242 * WebCore.vcproj/WebCore.vcproj:
12243
12244 2011-06-27 Joe Wild <joseph.wild@nokia.com>
12245
12246 Reviewed by Simon Fraser.
12247
12248 Crash on www.crave.cnet.com in FrameView::windowClipRect()
12249 https://bugs.webkit.org/show_bug.cgi?id=56393
12250
12251 Check for a null renderer to fix a crash. This situation can
12252 arise when external content/plugins is referenced from html
12253 elements with style="display:none".
12254
12255 Test: plugins/hidden-iframe-with-swf-plugin.html
12256
12257 * page/FrameView.cpp:
12258 (WebCore::FrameView::windowClipRect):
12259
12260 2011-06-27 Raymes Khoury <raymes@chromium.org>
12261
12262 Reviewed by Tony Chang.
12263
12264 WebCore fails to compile in thumb mode when neon instructions are
12265 enabled.
12266
12267 There are two files (FELightingNEON.cpp and FEGaussianBlur.cpp)
12268 which fail to build when -mthumb is passed to gcc. These contain inline
12269 assembly for neon instructions on arm. This patch forces the -marm flag
12270 to be passed when compiling these files to work around this.
12271
12272 https://bugs.webkit.org/show_bug.cgi?id=62916
12273
12274 Built WebKit in Chromium and checked that -marm is passed
12275 only when building these files.
12276
12277 https://bugs.webkit.org/show_bug.cgi?id=62916
12278
12279 * WebCore.gyp/WebCore.gyp:
12280
12281 2011-06-27 Jay Civelli <jcivelli@chromium.org>
12282
12283 Reviewed by Darin Fisher.
12284
12285 Adding binary part support to MHTML.
12286 https://bugs.webkit.org/show_bug.cgi?id=63310
12287
12288 * loader/archive/mhtml/MHTMLArchive.cpp:
12289 (WebCore::MHTMLArchive::generateMHTMLData):
12290 (WebCore::MHTMLArchive::generateMHTMLDataUsingBinaryEncoding):
12291 * loader/archive/mhtml/MHTMLArchive.h:
12292 * loader/archive/mhtml/MHTMLParser.cpp:
12293 (WebCore::MHTMLParser::parseNextPart):
12294 * platform/SharedBuffer.cpp:
12295 (WebCore::SharedBuffer::append):
12296 * platform/SharedBuffer.h:
12297 * platform/network/MIMEHeader.cpp:
12298 (WebCore::MIMEHeader::parseContentTransferEncoding):
12299 * platform/network/MIMEHeader.h:
12300
12301 2011-06-27 Levi Weintraub <leviw@chromium.org>
12302
12303 Reviewed by Eric Seidel.
12304
12305 Add support for unicode-bidi:plaintext CSS property
12306 https://bugs.webkit.org/show_bug.cgi?id=50949
12307
12308 Adding support for unicode-bidi: plaintext. This involves invoking P2 an d P3
12309 of the Unicode BiDi algorithm on each paragraph of a block with that sty le.
12310 This is similar to dir=auto but done per-paragraph instead of per elemen t.
12311
12312 Test: fast/text/international/unicode-bidi-plaintext.html
12313
12314 * css/CSSParser.cpp:
12315 (WebCore::CSSParser::parseValue): Added plaintext.
12316 * css/CSSPrimitiveValueMappings.h:
12317 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Ditto.
12318 (WebCore::CSSPrimitiveValue::operator EUnicodeBidi): Ditto.
12319 * css/CSSValueKeywords.in: Ditto.
12320 * html/HTMLElement.cpp:
12321 (WebCore::unicodeBidiAttributeForDirAuto): Helper to map elements with d ir=auto
12322 to their proper unicode-bidi attribute.
12323 (WebCore::HTMLElement::parseMappedAttribute): Assign plaintext to pre an d textarea
12324 when dir=auto.
12325 * platform/text/UnicodeBidi.h: Added plaintext.
12326 * rendering/RenderBlockLineLayout.cpp:
12327 (WebCore::determineParagraphDirection): Determines the direction of a pa ragraph
12328 based on the first strong character. Stops at first paragraph separator.
12329 (WebCore::RenderBlock::layoutInlineChildren): Uses determineParagraphDir ection
12330 when in unicode-bidi: plaintext mode (and operating at the block's BidiC ontext)
12331 to set each paragraph to the proper base BidiContext.
12332 (WebCore::RenderBlock::determineStartPosition): Ditto.
12333 * rendering/style/RenderStyle.h: Gave _unicodebidi another bit to accomo date
12334 for plaintext.
12335
12336 2011-06-27 Alexis Menard <alexis.menard@openbossa.org>
12337
12338 Reviewed by Darin Adler.
12339
12340 Use specific headers includes rather than full system headers.
12341 https://bugs.webkit.org/show_bug.cgi?id=63475
12342
12343 Use only needed headers rather than system headers.
12344
12345 No new tests, it's just a little cosmetic change.
12346
12347 * platform/mac/WebVideoFullscreenController.h:
12348 * platform/mac/WebVideoFullscreenHUDWindowController.h:
12349
12350 2011-06-27 Joseph Pecoraro <joepeck@webkit.org>
12351
12352 Reviewed by Darin Adler.
12353
12354 Allow non-main thread text drawing in ICU ports
12355 https://bugs.webkit.org/show_bug.cgi?id=63482
12356
12357 Some ports allow multiple threads to draw strings.
12358 LineBreakIteratorPool is not thread safe and the existing
12359 ASSERT caught cases where multiple threads were trying
12360 to access the shared pool. This makes the pool a lazily
12361 created per-thread pool to allow for thread safe pool use.
12362
12363 * platform/ThreadGlobalData.h:
12364 * platform/ThreadGlobalData.cpp:
12365 (WebCore::ThreadGlobalData::ThreadGlobalData): start with null.
12366 (WebCore::ThreadGlobalData::lineBreakIteratorPool): lazily create.
12367 (WebCore::ThreadGlobalData::destroy): delete.
12368 Manage the lifetime of the per-thread pool instance.
12369
12370 * platform/text/LineBreakIteratorPoolICU.h:
12371 (WebCore::LineBreakIteratorPool::sharedPool):
12372 Use the per-thread pool instance and remove the ASSERT that
12373 this needs to be on the main thread.
12374
12375 (WebCore::LineBreakIteratorPool::create):
12376 Create a PassOwnPtr so we can use OwnPtr on pools.
12377
12378 (WebCore::LineBreakIteratorPool::LineBreakIteratorPool):
12379 Private now that there is a public create function.
12380
12381 2011-06-27 Joseph Pecoraro <joepeck@webkit.org>
12382
12383 Reviewed by Darin Adler.
12384
12385 Extract LineBreakIteratorPool class into its own file
12386 https://bugs.webkit.org/show_bug.cgi?id=63471
12387
12388 * GNUmakefile.list.am:
12389 * WebCore.gypi:
12390 * WebCore.vcproj/WebCore.vcproj:
12391 * WebCore.xcodeproj/project.pbxproj:
12392 Add the new file to builds that used TextBreakIteratorPoolICU.h.
12393
12394 * platform/text/LineBreakIteratorPoolICU.h: Added.
12395 (WebCore::LineBreakIteratorPool::sharedPool):
12396 (WebCore::LineBreakIteratorPool::LineBreakIteratorPool):
12397 Expose the constructor so it can be used by others.
12398
12399 * platform/text/TextBreakIteratorICU.cpp:
12400 Remove the old LineBreakIteratorPool implementation.
12401
12402 2011-06-27 Justin Garcia <justin.garcia@apple.com>
12403
12404 Reviewed by Ryosuke Niwa.
12405
12406 CompositeEditCommand::inputText(const String& text, bool selectedInsertT ext) is unused
12407 https://bugs.webkit.org/show_bug.cgi?id=62921
12408
12409 * editing/CompositeEditCommand.cpp:
12410 * editing/CompositeEditCommand.h:
12411 * editing/InsertTextCommand.cpp:
12412 (WebCore::InsertTextCommand::input):
12413
12414 2011-05-17 Nat Duca <nduca@chromium.org>
12415
12416 Reviewed by James Robinson.
12417
12418 [chromium] Implement CCLayerTreeHost and CCLayerTreeHostImpl portions of threaded compositor
12419 https://bugs.webkit.org/show_bug.cgi?id=58408
12420
12421 Create CCLayerTreeHost and CCLayerTreeHostImpl, which are the main
12422 thread and compositor thread halves of a composited view. Communication
12423 between the two is based on the design used in FileStreamProxy.
12424
12425 * WebCore.gypi:
12426 * platform/chromium/TraceEvent.h:
12427 * platform/graphics/chromium/LayerRendererChromium.cpp:
12428 (WebCore::LayerRendererChromium::create):
12429 (WebCore::LayerRendererChromium::LayerRendererChromium):
12430 (WebCore::LayerRendererChromium::setViewport):
12431 (WebCore::LayerRendererChromium::updateLayers):
12432 (WebCore::LayerRendererChromium::drawLayers):
12433 (WebCore::LayerRendererChromiumImpl::create):
12434 (WebCore::LayerRendererChromiumImpl::drawLayersAndPresent):
12435 (WebCore::LayerRendererChromiumImpl::LayerRendererChromiumImpl):
12436 (WebCore::LayerRendererChromiumImpl::drawLayersOnMainThread):
12437 (WebCore::LayerRendererChromiumImplProxy::create):
12438 (WebCore::LayerRendererChromiumImplProxy::createLayerTreeHostImpl):
12439 (WebCore::LayerRendererChromiumImplProxy::LayerRendererChromiumImplProxy ):
12440 (WebCore::LayerRendererChromium::createLayerTreeHostImplProxy):
12441 * platform/graphics/chromium/LayerRendererChromium.h:
12442 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
12443 (WebCore::CCHeadsUpDisplay::setShowFPSCounter):
12444 (WebCore::CCHeadsUpDisplay::setShowPlatformLayerTree):
12445 * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
12446 (WebCore::CCHeadsUpDisplay::currentFrameNumber):
12447 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp: Copied from Source/ WebCore/platform/graphics/chromium/cc/CCThread.cpp.
12448 (WebCore::CCLayerTreeHost::CCLayerTreeHost):
12449 (WebCore::CCLayerTreeHost::init):
12450 (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
12451 (WebCore::CCLayerTreeHost::beginCommit):
12452 (WebCore::CCLayerTreeHost::commitComplete):
12453 (WebCore::CCLayerTreeHost::animateAndLayout):
12454 (WebCore::CCLayerTreeHost::createLayerTreeHostCommitter):
12455 (WebCore::CCLayerTreeHost::setNeedsCommitAndRedraw):
12456 (WebCore::CCLayerTreeHost::setNeedsRedraw):
12457 (WebCore::CCLayerTreeHost::updateLayers):
12458 * platform/graphics/chromium/cc/CCLayerTreeHost.h: Copied from Source/We bCore/platform/graphics/chromium/cc/CCThread.cpp.
12459 (WebCore::CCLayerTreeHost::frameNumber):
12460 * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.cpp: Copied fro m Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
12461 (WebCore::CCLayerTreeHostCommitter::create):
12462 (WebCore::CCLayerTreeHostCommitter::commit):
12463 * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
12464 (WebCore::CCLayerTreeHostCommitter::CCLayerTreeHostCommitter):
12465 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: Added.
12466 (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
12467 (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
12468 (WebCore::CCLayerTreeHostImpl::beginCommit):
12469 (WebCore::CCLayerTreeHostImpl::commitComplete):
12470 (WebCore::CCLayerTreeHostImpl::drawLayers):
12471 (WebCore::CCLayerTreeHostImpl::setNeedsCommitAndRedraw):
12472 (WebCore::CCLayerTreeHostImpl::setNeedsRedraw):
12473 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h: Copied from Sourc e/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
12474 (WebCore::CCLayerTreeHostImplClient::~CCLayerTreeHostImplClient):
12475 (WebCore::CCLayerTreeHostImpl::frameNumber):
12476 (WebCore::CCLayerTreeHostImpl::sourceFrameNumber):
12477 (WebCore::CCLayerTreeHostImpl::setSourceFrameNumber):
12478 * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp: Added.
12479 (WebCore::CCLayerTreeHostImplProxy::CCLayerTreeHostImplProxy):
12480 (WebCore::CCLayerTreeHostImplProxy::start):
12481 (WebCore::CCLayerTreeHostImplProxy::~CCLayerTreeHostImplProxy):
12482 (WebCore::CCLayerTreeHostImplProxy::isStarted):
12483 (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedraw):
12484 (WebCore::CCLayerTreeHostImplProxy::setNeedsRedraw):
12485 (WebCore::CCLayerTreeHostImplProxy::stop):
12486 (WebCore::CCLayerTreeHostImplProxy::postDrawLayersTaskOnCCThread):
12487 (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommitOnCCThread):
12488 (WebCore::CCLayerTreeHostImplProxy::isMainThread):
12489 (WebCore::CCLayerTreeHostImplProxy::isCCThread):
12490 (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommit):
12491 (WebCore::CCLayerTreeHostImplProxy::commitOnCCThread):
12492 (WebCore::CCLayerTreeHostImplProxy::drawLayersOnCCThread):
12493 (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedrawOnCCThread):
12494 (WebCore::CCLayerTreeHostImplProxy::setNeedsRedrawOnCCThread):
12495 (WebCore::CCLayerTreeHostImplProxy::initImplOnCCThread):
12496 (WebCore::CCLayerTreeHostImplProxy::layerTreeHostClosedOnCCThread):
12497 * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h: Added.
12498 (WebCore::CCLayerTreeHostImplProxy::host):
12499 * platform/graphics/chromium/cc/CCMainThreadTask.h:
12500 * platform/graphics/chromium/cc/CCThread.cpp:
12501 (WebCore::CCThread::runLoop):
12502 * platform/graphics/chromium/cc/CCThreadTask.h:
12503
12504 2011-06-27 Abhishek Arya <inferno@chromium.org>
12505
12506 Reviewed by Simon Fraser.
12507
12508 Fix removal of overhanging floats on style changes to absolute/fixed pos ition.
12509 https://bugs.webkit.org/show_bug.cgi?id=63355
12510
12511 1. If we are not currently positioned.
12512 2. And we are not floating. (If we are floating, then this will be autom atically
12513 done in RenderBox::styleWillChange as part of removeFloatingOrPositio nedChildFromBlockLists)
12514 3. And we have overhanging floats from previous sibling blocks.
12515 4. And our new new style tells that we will have absolute or fixed posit ion.
12516
12517 Then, we mark all our descendants with floats for layout. This will make sure that
12518 overhanging floats are removed. Also, it is important to do that since i f that previous
12519 sibling block goes away, it is not able to tell us that to remove those floats thinking
12520 that being a positioned block, we should have removed them already.
12521
12522 Tests: fast/block/float/intruding-float-add-in-sibling-block-on-static-p osition.html
12523 fast/block/float/intruding-float-add-in-sibling-block-on-static-p osition2.html
12524 fast/block/float/intruding-float-remove-from-sibling-block-on-abs olute-position.html
12525 fast/block/float/intruding-float-remove-from-sibling-block-on-abs olute-position2.html
12526 fast/block/float/intruding-float-remove-from-sibling-block-on-fix ed-position.html
12527 fast/block/float/intruding-float-remove-from-sibling-block-on-fix ed-position2.html
12528 fast/block/float/overhanging-float-add-in-static-position-block.h tml
12529 fast/block/float/overhanging-float-add-in-static-position-block2. html
12530 fast/block/float/overhanging-float-remove-from-absolute-position- block.html
12531 fast/block/float/overhanging-float-remove-from-absolute-position- block2.html
12532 fast/block/float/overhanging-float-remove-from-fixed-position-blo ck.html
12533 fast/block/float/overhanging-float-remove-from-fixed-position-blo ck2.html
12534
12535 * rendering/RenderBlock.cpp:
12536 (WebCore::RenderBlock::styleWillChange):
12537
12538 2011-06-27 Dirk Schulze <krit@webkit.org>
12539
12540 Reviewed by Nikolas Zimmermann.
12541
12542 SVGAnimatedType should support SVGPreserveAspectRatio animation
12543 https://bugs.webkit.org/show_bug.cgi?id=63456
12544
12545 Follow up of "SVGAnimation should use direct unit animation for SVGLengt h": https://bugs.webkit.org/show_bug.cgi?id=61368
12546 This patch continues the conversion to the new concept of SVGAnimatorFac tory with SVGAnimatedPreserveAspectRatio.
12547
12548 The new animator does not affect any behavior, since it was animated wit h SVGAnimatedString before. The new animator is still needed
12549 to support animVal and baseVal later.
12550
12551 Test: svg/animations/svgPreserveAspectRatio-animation-1.html
12552
12553 * CMakeLists.txt: Added new file.
12554 * GNUmakefile.list.am: Ditto.
12555 * WebCore.gypi: Ditto.
12556 * WebCore.pro: Ditto.
12557 * WebCore.xcodeproj/project.pbxproj: Ditto.
12558 * svg/SVGAllInOne.cpp: Ditto.
12559 * svg/SVGAnimateElement.cpp: Handle AnimatedPreserveAspectRatio.
12560 (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
12561 (WebCore::SVGAnimateElement::calculateAnimatedValue):
12562 (WebCore::SVGAnimateElement::calculateFromAndToValues):
12563 (WebCore::SVGAnimateElement::calculateFromAndByValues):
12564 (WebCore::SVGAnimateElement::resetToBaseValue):
12565 (WebCore::SVGAnimateElement::applyResultsToTarget):
12566 (WebCore::SVGAnimateElement::calculateDistance):
12567 * svg/SVGAnimatedPreserveAspectRatio.cpp: Added. New animator for SVGAni matedPreserveAspectRatio.
12568 (WebCore::SVGAnimatedPreserveAspectRatioAnimator::SVGAnimatedPreserveAsp ectRatioAnimator):
12569 (WebCore::SVGAnimatedPreserveAspectRatioAnimator::constructFromString):
12570 (WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateFromAndToValu es):
12571 (WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateFromAndByValu es):
12572 (WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateAnimatedValue ):
12573 (WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateDistance):
12574 * svg/SVGAnimatedPreserveAspectRatio.h:
12575 (WebCore::SVGAnimatedPreserveAspectRatioAnimator::~SVGAnimatedPreserveAs pectRatioAnimator):
12576 * svg/SVGAnimatedType.cpp: Support for SVGPreserveAspectRatio.
12577 (WebCore::SVGAnimatedType::~SVGAnimatedType):
12578 (WebCore::SVGAnimatedType::createPreserveAspectRatio):
12579 (WebCore::SVGAnimatedType::preserveAspectRatio):
12580 (WebCore::SVGAnimatedType::valueAsString):
12581 (WebCore::SVGAnimatedType::setValueAsString):
12582 (WebCore::SVGAnimatedType::setPreserveAspectRatioBaseValue):
12583 * svg/SVGAnimatedType.h:
12584 * svg/SVGAnimatorFactory.h:
12585 (WebCore::SVGAnimatorFactory::create):
12586
12587 2011-06-27 Alexis Menard <alexis.menard@openbossa.org>
12588
12589 Reviewed by Kenneth Rohde Christiansen.
12590
12591 [Qt] Remove Phonon MediaPlayer from the tree.
12592 https://bugs.webkit.org/show_bug.cgi?id=63448
12593
12594 Remove Phonon mediaplayer as it is unused, not finished and
12595 unmaintained.
12596
12597 * WebCore.gypi:
12598 * WebCore.pri:
12599 * WebCore.pro:
12600 * features.pri:
12601 * platform/graphics/MediaPlayer.cpp:
12602 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: Removed.
12603 * platform/graphics/qt/MediaPlayerPrivatePhonon.h: Removed.
12604
12605 2011-06-27 Ryosuke Niwa <rniwa@webkit.org>
12606
12607 Reviewed by Kent Tamura.
12608
12609 Crash in TextIterator
12610 https://bugs.webkit.org/show_bug.cgi?id=63334
12611
12612 Fix a crash in TextIterator. Keep m_sortedTextBoxes and renderer consist ent
12613 and check !m_offset when handling first letter.
12614
12615 Also add more assertions to help detecting similar bugs.
12616
12617 Test: editing/text-iterator/first-letter-rtl-crash.html
12618
12619 * editing/TextIterator.cpp:
12620 (WebCore::TextIterator::handleTextNode):
12621 (WebCore::TextIterator::emitText):
12622
12623 2011-06-27 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
12624
12625 Reviewed by Andreas Kling.
12626
12627 [Qt] tst_QWebFrame::overloadedSlots() fails
12628 https://bugs.webkit.org/show_bug.cgi?id=37319
12629
12630 This patch is based on Noam Rosenthal original patch in the same bug.
12631
12632 When hinted with QWebElement metatype, we qualify the conversion
12633 from JSElement as a "perfect match".
12634
12635 The test was failing because the wrong slot was called, since the QWebEl ement
12636 match was taken as equal to the others and not chosen when the metacall happened.
12637
12638 * bridge/qt/qt_runtime.cpp:
12639 (JSC::Bindings::convertValueToQVariant): Identify the conversion between JSElement
12640 to QWebElement as a "perfect match" (dist = 0). Add comments to explain the reason
12641 why we have the implicit conversion.
12642
12643 2011-06-27 ChangSeok Oh <shivamidow@gmail.com>
12644
12645 Reviewed by Martin Robinson.
12646
12647 [GTK] Fix build break to support webgl
12648 https://bugs.webkit.org/show_bug.cgi?id=63425
12649
12650 Some missing files in ANGLE are just added to fix build-break.
12651
12652 No test reqired
12653
12654 * GNUmakefile.list.am:
12655
12656 2011-06-27 Hyowon Kim <hw1008.kim@samsung.com>
12657
12658 Reviewed by Martin Robinson.
12659
12660 [EFL] Add some PLATFORM(EFL) ifdefs to GraphicsContext3D.h
12661 https://bugs.webkit.org/show_bug.cgi?id=62959
12662
12663 Add PLATFORM(EFL) ifdefs to use GraphicsContextInternal.
12664
12665 * platform/graphics/GraphicsContext3D.h:
12666
12667 2011-06-27 Alexandru Chiculita <achicu@adobe.com>
12668
12669 Reviewed by Ojan Vafai.
12670
12671 css combinator "+" in combination with NAV tag is buggy
12672 https://bugs.webkit.org/show_bug.cgi?id=47971
12673
12674 Added a new state in css/tokenizer.flex for the "nth" rule. The state be gins
12675 at nth-*( functions and ends at the first ")". It avoids parsing selecto rs
12676 like "#div+nav" as: "#div" "+n" "av".
12677
12678 Test: fast/css/div_plus_nav_bug47971.html
12679
12680 * css/maketokenizer:
12681 * css/tokenizer.flex:
12682
12683 2011-06-27 Sheriff Bot <webkit.review.bot@gmail.com>
12684
12685 Unreviewed, rolling out r89822.
12686 http://trac.webkit.org/changeset/89822
12687 https://bugs.webkit.org/show_bug.cgi?id=63461
12688
12689 Broken builds (Requested by apavlov on #webkit).
12690
12691 * inspector/Inspector.json:
12692 * inspector/InspectorCSSAgent.cpp:
12693 (WebCore::InspectorCSSAgent::getStylesForNode):
12694 * inspector/InspectorCSSAgent.h:
12695 * inspector/front-end/AuditRules.js:
12696 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
12697 * inspector/front-end/CSSStyleModel.js:
12698 (WebInspector.CSSStyleModel.prototype.getStylesAsync):
12699 * inspector/front-end/StylesSidebarPane.js:
12700 (WebInspector.StylesSidebarPane.prototype.update):
12701
12702 2011-06-27 Noel Gordon <noel.gordon@gmail.com>
12703
12704 Reviewed by Adam Roben.
12705
12706 Send keypress events to windowless plugins on the windows port.
12707 https://bugs.webkit.org/show_bug.cgi?id=63144
12708
12709 No new tests. Covered by existing windowless plugin tests plugins/mouse -events.html
12710 and plugins/keyboard-events.html. Both are not yet working as desired b ecause focus
12711 events are not being fowarded to windowed plugins on the win port (bug 6 2375). Test
12712 plugin logging on the win port was added in bug 61721. New failing expe ctations for
12713 plugins/keyboard-events.html were subsequently added in bug 33973 so the re's no need
12714 to update test expectations in this patch.
12715
12716 * plugins/win/PluginViewWin.cpp:
12717 (WebCore::PluginView::handleKeyboardEvent): Add an ASSERT(m_plugin && !m _isWindowed)
12718 to indicate that the routine is for windowless plugins. Remove trailing whitespace.
12719 Add handling for keyPress events (map to WM_CHAR).
12720 (WebCore::PluginView::handleMouseEvent): Add the ASSERT to indicate that the routine
12721 is for windowless plugins. Add FIXME note. Remove trailing whitespace.
12722
12723 2011-06-27 Alexander Pavlov <apavlov@chromium.org>
12724
12725 Reviewed by Pavel Feldman.
12726
12727 Web Inspector: Change the inspector model API and backend to allow CSS p seudoclass inspection
12728 https://bugs.webkit.org/show_bug.cgi?id=63446
12729
12730 * inspector/Inspector.json:
12731 * inspector/InspectorCSSAgent.cpp:
12732 (WebCore::computePseudoClassMask):
12733 (WebCore::InspectorCSSAgent::getStylesForNode):
12734 * inspector/InspectorCSSAgent.h:
12735 * inspector/front-end/AuditRules.js:
12736 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
12737 * inspector/front-end/CSSStyleModel.js:
12738 (WebInspector.CSSStyleModel.prototype.getStylesAsync):
12739 * inspector/front-end/StylesSidebarPane.js:
12740 (WebInspector.StylesSidebarPane.prototype.update):
12741
12742 2011-06-27 Pavel Feldman <pfeldman@google.com>
12743
12744 Reviewed by Yury Semikhatsky.
12745
12746 Web Inspector: [REGRESSION r84481] updateLayout called from DrawNodeHigh light
12747 https://bugs.webkit.org/show_bug.cgi?id=63405
12748
12749 We should not call layout from paint.
12750
12751 * inspector/DOMNodeHighlighter.cpp:
12752 (WebCore::DOMNodeHighlighter::drawNodeHighlight):
12753 * inspector/DOMNodeHighlighter.h:
12754 * inspector/InspectorDOMAgent.cpp:
12755 (WebCore::InspectorDOMAgent::drawNodeHighlight):
12756
12757 2011-06-27 Gyuyoung Kim <gyuyoung.kim@samsung.com>
12758
12759 Unreviewed. Fix style error in EFL port.
12760
12761 * platform/efl/PlatformKeyboardEventEfl.cpp:
12762 * platform/efl/PlatformScreenEfl.cpp:
12763 * platform/efl/SharedBufferEfl.cpp:
12764
12765 2011-06-27 Pavel Feldman <pfeldman@google.com>
12766
12767 Reviewed by Yury Semikhatsky.
12768
12769 Web Inspector: node selection is slow in the Elements panel.
12770 https://bugs.webkit.org/show_bug.cgi?id=60813
12771
12772 * inspector/front-end/StylesSidebarPane.js:
12773 (WebInspector.StylesSidebarPane.prototype.update.stylesCallback):
12774 (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback):
12775 (WebInspector.StylesSidebarPane.prototype.update):
12776
12777 2011-06-26 Pavel Feldman <pfeldman@chromium.org>
12778
12779 Reviewed by Yury Semikhatsky.
12780
12781 Web Inspector: roll out r88337 for making tests flaky.
12782 https://bugs.webkit.org/show_bug.cgi?id=63422
12783
12784 * inspector/front-end/ElementsPanel.js:
12785 (WebInspector.ElementsPanel):
12786 (WebInspector.ElementsPanel.prototype.updateStyles):
12787 (WebInspector.ElementsPanel.prototype._stylesUpdated):
12788 * inspector/front-end/StylesSidebarPane.js:
12789 (WebInspector.StylesSidebarPane.prototype.update.stylesCallback):
12790 (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback):
12791 (WebInspector.StylesSidebarPane.prototype.update):
12792
12793 2011-06-27 Huang Dongsung <luxtella@company100.net>
12794
12795 Reviewed by Kenneth Rohde Christiansen.
12796
12797 TiledBackingStore endlessly creates and destroys tiles due to an off-by- one
12798 error.
12799 https://bugs.webkit.org/show_bug.cgi?id=62422
12800
12801 REGRESSION(r77286): Remove bottomRight().
12802 REGRESSION(r77312): Change the logic to get the bottom right point.
12803 REGRESSION(r77928): Cause off-by-one error in TiledBackingStore.
12804 REGRESSION(r78783): Cause off-by-one error in TiledDrawingAreaProxy.
12805 REGRESSION(r78785): Cause off-by-one error in TiledDrawingAreaProxy.
12806
12807 If the viewport width equals the contents width, especially in the mobil e
12808 device, TiledBackingStore endlessly creates and deletes the rightmost
12809 column and bottom row of tiles.
12810 In the detail, dropTilesOutsideRect() in TiledBackingStore::createTiles( )
12811 deletes tiles and setTile(coordinate, Tile::create(this, coordinate)) cr eates
12812 tiles infinitely.
12813 Modified TiledDrawingAreaProxy also.
12814
12815 * platform/graphics/TiledBackingStore.cpp:
12816 (WebCore::innerBottomRight):
12817 (WebCore::TiledBackingStore::invalidate):
12818 (WebCore::TiledBackingStore::paint):
12819 (WebCore::TiledBackingStore::createTiles):
12820
12821 2011-06-26 Adam Barth <abarth@webkit.org>
12822
12823 Reviewed by Eric Seidel.
12824
12825 Remove LegacyDefaultOptionalArguments from WebAudio IDL files
12826 https://bugs.webkit.org/show_bug.cgi?id=63416
12827
12828 WebAudio isn't that widely used, so it's seems somewhat safe to remove
12829 legacy code generation hacks. I'm not an expert on WebAudio, but the
12830 API doesn't appear to need many optional arguments.
12831
12832 There are a bunch of APIs that have custom bindings that look like they
12833 could be autogenerated. I've added FIXME comments where appropriate.
12834
12835 * webaudio/AudioBuffer.idl:
12836 * webaudio/AudioContext.idl:
12837 * webaudio/AudioListener.idl:
12838 * webaudio/AudioNode.idl:
12839 * webaudio/AudioPannerNode.idl:
12840 * webaudio/AudioParam.idl:
12841 * webaudio/RealtimeAnalyserNode.idl:
12842
12843 2011-06-26 Yury Semikhatsky <yurys@chromium.org>
12844
12845 Reviewed by Pavel Feldman.
12846
12847 Web Inspector: REGRESSION Scripts panel sidebar pane context menu has no "Remove breakpoint" item
12848 https://bugs.webkit.org/show_bug.cgi?id=63421
12849
12850 Show generic sidebar menu only if no pane-specific menu has been shown.
12851
12852 * inspector/front-end/ScriptsPanel.js:
12853 (WebInspector.ScriptsPanel):
12854
12855 2011-06-26 Adam Barth <abarth@webkit.org>
12856
12857 Build fix for clang. Apparently clang doesn't want us to use the std
12858 namespace in headers, which makes sense.
12859
12860 * svg/SVGAnimatedType.h:
12861
12862 2011-06-26 Adam Barth <abarth@webkit.org>
12863
12864 Reviewed by Eric Seidel.
12865
12866 Remove LegacyDefaultOptionalArguments from XMLHttpRequest.idl and XMLHtt pRequestUpload.idl
12867 https://bugs.webkit.org/show_bug.cgi?id=63418
12868
12869 The XMLHttpRequest.idl interface used to implement the new behavior
12870 manually using the RequiresAllArguments attribute. Now that we have
12871 that behavior by default, we can simply remove the
12872 LegacyDefaultOptionalArguments attribute.
12873
12874 * xml/XMLHttpRequest.idl:
12875 * xml/XMLHttpRequestUpload.idl:
12876
12877 2011-06-26 Dirk Schulze <krit@webkit.org>
12878
12879 Reviewed by Nikolas Zimmermann.
12880
12881 SVGAnimatedType should support SVGLengthList animation
12882 https://bugs.webkit.org/show_bug.cgi?id=63399
12883
12884 Follow up of "SVGAnimation should use direct unit animation for SVGLengt h": https://bugs.webkit.org/show_bug.cgi?id=61368
12885 This patch continues the conversion to the new concept of SVGAnimatorFac tory with SVGAnimatedLengthList.
12886
12887 Interpolated animations of glyph positions are possible now.
12888
12889 Tests: svg/animations/svglengthlist-animation-1.html
12890 svg/animations/svglengthlist-animation-2.html
12891 svg/animations/svglengthlist-animation-3.html
12892 svg/animations/svglengthlist-animation-4.html
12893
12894 * CMakeLists.txt: Add new file to build system.
12895 * GNUmakefile.list.am: Ditto.
12896 * WebCore.gypi: Ditto.
12897 * WebCore.pro: Ditto.
12898 * WebCore.xcodeproj/project.pbxproj: Ditto.
12899 * svg/SVGAllInOne.cpp: Ditto.
12900 * svg/SVGAnimateElement.cpp: Make use of AnimatedLengthList.
12901 (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
12902 (WebCore::SVGAnimateElement::calculateAnimatedValue):
12903 (WebCore::SVGAnimateElement::calculateFromAndToValues):
12904 (WebCore::SVGAnimateElement::calculateFromAndByValues):
12905 (WebCore::SVGAnimateElement::resetToBaseValue):
12906 (WebCore::SVGAnimateElement::applyResultsToTarget):
12907 (WebCore::SVGAnimateElement::calculateDistance):
12908 * svg/SVGAnimatedLengthList.cpp: Added. New animator for SVGLengthList.
12909 (WebCore::SVGAnimatedLengthListAnimator::SVGAnimatedLengthListAnimator):
12910 (WebCore::SVGAnimatedLengthListAnimator::constructFromString):
12911 (WebCore::SVGAnimatedLengthListAnimator::calculateFromAndToValues):
12912 (WebCore::SVGAnimatedLengthListAnimator::calculateFromAndByValues):
12913 (WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
12914 (WebCore::SVGAnimatedLengthListAnimator::calculateDistance):
12915 * svg/SVGAnimatedLengthList.h:
12916 (WebCore::SVGAnimatedLengthListAnimator::~SVGAnimatedLengthListAnimator) :
12917 * svg/SVGAnimatedType.cpp: Add SVGLengthList.
12918 (WebCore::SVGAnimatedType::~SVGAnimatedType):
12919 (WebCore::SVGAnimatedType::createLengthList):
12920 (WebCore::SVGAnimatedType::lengthList):
12921 (WebCore::SVGAnimatedType::valueAsString):
12922 (WebCore::SVGAnimatedType::setValueAsString):
12923 * svg/SVGAnimatedType.h:
12924 * svg/SVGAnimatorFactory.h:
12925 (WebCore::SVGAnimatorFactory::create):
12926 * svg/SVGLength.cpp: Add new constructor with LengthType, LengthMode and value.
12927 (WebCore::SVGLength::SVGLength):
12928 * svg/SVGLength.h:
12929
12930 2011-06-26 Adam Barth <abarth@webkit.org>
12931
12932 Reviewed by Eric Seidel.
12933
12934 window.location should use the holder's prototype chain
12935 https://bugs.webkit.org/show_bug.cgi?id=63411
12936
12937 This patch corrects the prototype chain for Location, but we really
12938 should do a complete cleanup of the prototype chain generation, like we
12939 did for JavaScriptCore.
12940
12941 Test: http/tests/security/location-prototype.html
12942
12943 * bindings/scripts/CodeGeneratorV8.pm:
12944
12945 2011-06-26 Adam Barth <abarth@webkit.org>
12946
12947 Reviewed by Eric Seidel.
12948
12949 Add [Optional] attributes where appropriate for addEventListener and rem oveEventListener
12950 https://bugs.webkit.org/show_bug.cgi?id=63417
12951
12952 This patch doesn't actually change behavior because these interfaces
12953 have the LegacyDefaultOptionalArguments attribute. This patch paves
12954 the way to removing LegacyDefaultOptionalArguments from some of these
12955 interfaces as well as making the project safer for copy-and-pasting
12956 these methods into new IDL files that don't have the
12957 LegacyDefaultOptionalArguments attribute.
12958
12959 * bindings/scripts/test/TestObj.idl:
12960 * dom/EventTarget.idl:
12961 * dom/MediaStream.idl:
12962 * dom/MessagePort.idl:
12963 * dom/Node.idl:
12964 * loader/appcache/DOMApplicationCache.idl:
12965 * notifications/Notification.idl:
12966 * page/DOMWindow.idl:
12967 * page/EventSource.idl:
12968 * storage/IDBRequest.idl:
12969 * storage/IDBTransaction.idl:
12970 * svg/SVGElementInstance.idl:
12971 * websockets/WebSocket.idl:
12972 * workers/AbstractWorker.idl:
12973 * workers/WorkerContext.idl:
12974 * xml/XMLHttpRequest.idl:
12975 * xml/XMLHttpRequestUpload.idl:
12976
12977 2011-06-26 Adam Barth <abarth@webkit.org>
12978
12979 Reviewed by Kent Tamura.
12980
12981 m_formElementsWithFormAttribute doesn't ref the objects it holds
12982 https://bugs.webkit.org/show_bug.cgi?id=62956
12983
12984 Test: fast/forms/form-associated-element-crash3.html
12985
12986 * dom/Document.h:
12987
12988 2011-06-26 Dimitri Glazkov <dglazkov@chromium.org>
12989
12990 Reviewed by Adam Barth.
12991
12992 FileList::filenames should be FileList::paths, because it's more accurat e.
12993 https://bugs.webkit.org/show_bug.cgi?id=63414
12994
12995 Refactoring, no change in behavior.
12996
12997 * fileapi/FileList.cpp:
12998 (WebCore::FileList::paths): Renamed from filenames.
12999 * fileapi/FileList.h:
13000 * html/FileInputType.cpp:
13001 (WebCore::FileInputType::handleDOMActivateEvent): Changed to use filenam es, also fixed a reach-unto-thyself whoopsie.
13002 (WebCore::FileInputType::requestIcon): Ditto.
13003 (WebCore::FileInputType::filesChosen): Ditto.
13004 * rendering/RenderFileUploadControl.cpp:
13005 (WebCore::RenderFileUploadControl::fileTextValue): Ditto.
13006
13007 2011-06-26 Young Han Lee <joybro@company100.net>
13008
13009 Reviewed by Dirk Schulze.
13010
13011 SVGAnimation - keyTime value 1 never get animated
13012 https://bugs.webkit.org/show_bug.cgi?id=63230
13013
13014 According to the SMIL 3.0 specification, the index of the keyTimes shoul d be
13015 determined under the end-point-exclusive rule (e.g. Given keyTimes(0;0.5 ;1)
13016 and t=0.5, the current index of the keyTimes have to be 1 not 0).
13017 http://www.w3.org/TR/SMIL3/smil-animation.html#animationNS-Interpolation ExamplesAdvanced
13018
13019 Test: svg/animations/animate-number-calcMode-discrete-keyTimes.html
13020
13021 * svg/SVGAnimationElement.cpp:
13022 (WebCore::SVGAnimationElement::calculateKeyTimesIndex):
13023
13024 2011-06-26 Dan Bernstein <mitz@apple.com>
13025
13026 Reviewed by Darin Adler.
13027
13028 With word-break: break-all, words do not break correctly before a surrog ate pair
13029 https://bugs.webkit.org/show_bug.cgi?id=63401
13030
13031 The code to check for mid-word breaks accumulates width one character at a time. It was actually
13032 measuring the two parts of the surrogate pair individually, so they appe ared to have zero width.
13033 Fixed by checking for surrogate pairs and measuring the pair as one unit .
13034
13035 Test: fast/text/midword-break-before-surrogate-pair.html
13036
13037 * rendering/RenderBlockLineLayout.cpp:
13038 (WebCore::RenderBlock::LineBreaker::nextLineBreak):
13039
13040 2011-06-26 Dirk Schulze <krit@webkit.org>
13041
13042 Reviewed by Nikolas Zimmermann.
13043
13044 SVGAnimatedType should support SVGNumberOptionalNumber animation
13045 https://bugs.webkit.org/show_bug.cgi?id=63397
13046
13047 Follow up of "SVGAnimation should use direct unit animation for SVGLengt h": https://bugs.webkit.org/show_bug.cgi?id=61368
13048 This patch continues the conversion to the new concept of SVGAnimatorFac tory with SVGAnimatedNumberOptionalNumber.
13049
13050 Animations of attributes with type SVGAnimatedNumberOptionalNumber can b e interpolated now. This can be used for smooth
13051 growing shadows with feGaussianBlur, feDropShadow or other filter effect s.
13052
13053 Tests: svg/animations/svgnumberoptionalnumber-animation-1.html
13054 svg/animations/svgnumberoptionalnumber-animation-2.html
13055 svg/animations/svgnumberoptionalnumber-animation-3.html
13056 svg/animations/svgnumberoptionalnumber-animation-4.html
13057
13058 * CMakeLists.txt: Added new files to build system.
13059 * GNUmakefile.list.am: Ditto.
13060 * WebCore.gypi: Ditto.
13061 * WebCore.pro: Ditto.
13062 * WebCore.vcproj/WebCore.vcproj: Ditto.
13063 * WebCore.xcodeproj/project.pbxproj: Ditto.
13064 * svg/SVGAllInOne.cpp: Ditto.
13065 * svg/SVGAnimateElement.cpp: Make use of attribute type AnimatedNumberOp tionalNumber.
13066 (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
13067 (WebCore::SVGAnimateElement::calculateAnimatedValue):
13068 (WebCore::SVGAnimateElement::calculateFromAndToValues):
13069 (WebCore::SVGAnimateElement::calculateFromAndByValues):
13070 (WebCore::SVGAnimateElement::resetToBaseValue):
13071 (WebCore::SVGAnimateElement::applyResultsToTarget):
13072 (WebCore::SVGAnimateElement::calculateDistance):
13073 * svg/SVGAnimatedNumberOptionalNumber.cpp: Added. New animator for SVGAn imatedNumberOptionalNumber.
13074 (WebCore::SVGAnimatedNumberOptionalNumberAnimator::SVGAnimatedNumberOpti onalNumberAnimator):
13075 (WebCore::SVGAnimatedNumberOptionalNumberAnimator::constructFromString):
13076 (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateFromAndToVal ues):
13077 (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateFromAndByVal ues):
13078 (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateAnimatedValu e):
13079 (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateDistance):
13080 * svg/SVGAnimatedNumberOptionalNumber.h: Added.
13081 (WebCore::SVGAnimatedNumberOptionalNumberAnimator::~SVGAnimatedNumberOpt ionalNumberAnimator):
13082 * svg/SVGAnimatedType.cpp: Added new type: pair<float, float>.
13083 (WebCore::SVGAnimatedType::~SVGAnimatedType):
13084 (WebCore::SVGAnimatedType::createNumberOptionalNumber):
13085 (WebCore::SVGAnimatedType::numberOptionalNumber):
13086 (WebCore::SVGAnimatedType::valueAsString):
13087 (WebCore::SVGAnimatedType::setValueAsString):
13088 * svg/SVGAnimatedType.h:
13089 * svg/SVGAnimatorFactory.h: Add new animator to factory.
13090 (WebCore::SVGAnimatorFactory::create):
13091
13092 2011-06-25 Dimitri Glazkov <dglazkov@chromium.org>
13093
13094 Reviewed by Adam Barth.
13095
13096 Crash in frameless document with media element.
13097 https://bugs.webkit.org/show_bug.cgi?id=63393
13098
13099 Since MediaControls::create can return 0 (and does for frameless documen ts), we must anticipate it
13100 in the calling code.
13101
13102 Test: fast/dom/shadow/frameless-media-element-crash.html
13103
13104 * html/HTMLMediaElement.cpp:
13105 (WebCore::HTMLMediaElement::attributeChanged): Changed to bail out if co ntrols weren't successfully created.
13106 (WebCore::HTMLMediaElement::createMediaControls): Renamed to better refl ect the purpose, changed to handle failure of creation.
13107 (WebCore::HTMLMediaElement::preDispatchEventHandler): Changed to bail ou t if controls weren't successfully created.
13108 * html/HTMLMediaElement.h: Adjusted def.
13109
13110 2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
13111
13112 Reviewed by Darin Adler.
13113
13114 Fix some minor style issues
13115 https://bugs.webkit.org/show_bug.cgi?id=63391
13116
13117 * inspector/DOMNodeHighlighter.cpp:
13118 (WebCore::DOMNodeHighlighter::DrawNodeHighlight):
13119 The explicit WebCore namespace usage can be dropped.
13120
13121 * rendering/RenderView.cpp:
13122 (WebCore::RenderView::mapLocalToContainer):
13123 Use ASSERT_UNUSED for a parameter that we want to ASSERT
13124 on for a debug build, but is UNUSED in a release build.
13125
13126 2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
13127
13128 Unreviewed build fix.
13129
13130 Use UNUSED_PARAM on the correct param!
13131
13132 * rendering/RenderView.cpp:
13133 (WebCore::RenderView::mapLocalToContainer):
13134
13135 2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
13136
13137 Reviewed by Simon Fraser.
13138
13139 Inspector highlight rect is wrong for contents of transformed iframes
13140 https://bugs.webkit.org/show_bug.cgi?id=53627
13141
13142 Part 2: Only adjust for the FrameView's scroll position when
13143 the localToAbsolute mapping did not end with fixed content.
13144 Content that is inside of a fixed position container is already
13145 adjusted for the FrameView's scrollPosition when RenderView
13146 maps local to container.
13147
13148 This patch uses a "wasFixed" out parameter to determine if
13149 the localToAbsolute transformation ended inside a fixed block,
13150 and if so does not apply the scroll position.
13151
13152 * page/FrameView.cpp:
13153 (WebCore::FrameView::convertFromRenderer):
13154 Respect wasFixed as described above.
13155
13156 * rendering/RenderBox.h:
13157 * rendering/RenderBox.cpp:
13158 (WebCore::RenderBox::mapLocalToContainer):
13159 This is the only time that "fixed" ever changed. So when
13160 fixed changes, update the optional wasFixed out parameter.
13161
13162 * rendering/RenderObject.cpp:
13163 (WebCore::RenderObject::localToAbsolute):
13164 (WebCore::RenderObject::mapLocalToContainer):
13165 (WebCore::RenderObject::localToContainerQuad):
13166 * rendering/RenderObject.h:
13167 (WebCore::RenderObject::localToAbsoluteQuad):
13168 Ignore wasFixed by default, but pipe it though where needed.
13169
13170 * rendering/RenderView.h:
13171 * rendering/RenderView.cpp:
13172 (WebCore::RenderView::mapLocalToContainer):
13173 This is the final recursive call, so wasFixed goes no
13174 further. We sanity check its value in debug builds.
13175
13176 * rendering/RenderBlock.cpp:
13177 (WebCore::RenderBlock::selectionGapRectsForRepaint):
13178 * rendering/RenderInline.cpp:
13179 (WebCore::RenderInline::mapLocalToContainer):
13180 * rendering/RenderInline.h:
13181 * rendering/svg/RenderSVGForeignObject.cpp:
13182 (WebCore::RenderSVGForeignObject::mapLocalToContainer):
13183 * rendering/svg/RenderSVGForeignObject.h:
13184 * rendering/svg/RenderSVGInline.cpp:
13185 (WebCore::RenderSVGInline::mapLocalToContainer):
13186 * rendering/svg/RenderSVGInline.h:
13187 * rendering/svg/RenderSVGModelObject.cpp:
13188 (WebCore::RenderSVGModelObject::mapLocalToContainer):
13189 * rendering/svg/RenderSVGModelObject.h:
13190 * rendering/svg/RenderSVGRoot.cpp:
13191 (WebCore::RenderSVGRoot::mapLocalToContainer):
13192 * rendering/svg/RenderSVGRoot.h:
13193 * rendering/svg/RenderSVGText.cpp:
13194 (WebCore::RenderSVGText::mapLocalToContainer):
13195 * rendering/svg/RenderSVGText.h:
13196 * rendering/svg/SVGRenderSupport.cpp:
13197 (WebCore::SVGRenderSupport::mapLocalToContainer):
13198 * rendering/svg/SVGRenderSupport.h:
13199 Pipe wasFixed through where needed.
13200
13201 2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
13202
13203 Reviewed by Simon Fraser.
13204
13205 Inspector highlight rect is wrong for contents of transformed iframes
13206 https://bugs.webkit.org/show_bug.cgi?id=53627
13207
13208 Part 1: Provide FloatQuad versions of convertFromRenderer,
13209 convertToContainingView, and convertChildToSelf, so that we
13210 can get the fully transformed quad of a renderer all the
13211 way up to the root widget.
13212
13213 * page/FrameView.cpp:
13214 (WebCore::FrameView::convertFromRenderer):
13215 (WebCore::FrameView::convertToContainingView):
13216 * page/FrameView.h:
13217 * platform/ScrollView.h:
13218 (WebCore::ScrollView::convertChildToSelf):
13219 * platform/Widget.h:
13220 * platform/Widget.cpp:
13221 (WebCore::Widget::convertToContainingView):
13222 Provide FloatQuad versions of these already existing functions.
13223
13224 (WebCore::Widget::convertToRootContainingView):
13225 Provide a helper conversion function to recursively
13226 convert a given FloatQuad up to the root widget.
13227
13228 * inspector/DOMNodeHighlighter.cpp:
13229 (WebCore::DOMNodeHighlighter::DrawNodeHighlight):
13230 Use the new methods to convert the FloatQuad for the highlighted
13231 node to the root container, without losing transformation
13232 information. Add a FIXME for SVG, which is still broken.
13233
13234 * WebCore.exp.in:
13235 Export the new Widget functions so WebKit can link properly.
13236
13237 2011-06-25 Dirk Schulze <krit@webkit.org>
13238
13239 Unreviewed build fix.
13240
13241 SVGAnimatedType should support SVGNumberList animation
13242 https://bugs.webkit.org/show_bug.cgi?id=63387
13243
13244 * svg/SVGAnimatedNumberList.cpp:
13245 (WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):
13246
13247 2011-06-25 Dirk Schulze <krit@webkit.org>
13248
13249 Reviewed by Nikolas Zimmermann.
13250
13251 SVGAnimatedType should support SVGNumberList animation
13252 https://bugs.webkit.org/show_bug.cgi?id=63387
13253
13254 Follow up of "SVGAnimation should use direct unit animation for SVGLengt h": https://bugs.webkit.org/show_bug.cgi?id=61368
13255 This patch continues the conversion to the new concept of SVGAnimatorFac tory with SVGNumberList.
13256
13257 Animations of attributes with type SVGNumberList can be interpolated now .
13258
13259 Tests: svg/animations/svgnumberlist-animation-1.html
13260 svg/animations/svgnumberlist-animation-2.html
13261
13262 * CMakeLists.txt: Added new file to build system.
13263 * GNUmakefile.list.am: Ditto.
13264 * WebCore.gypi: Ditto.
13265 * WebCore.pro: Ditto.
13266 * WebCore.xcodeproj/project.pbxproj: Ditto.
13267 * svg/SVGAllInOne.cpp: Ditto.
13268 * svg/SVGAnimateElement.cpp: Make use of attribute type AnimatedNumberLi st.
13269 (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
13270 (WebCore::SVGAnimateElement::calculateAnimatedValue):
13271 (WebCore::SVGAnimateElement::calculateFromAndToValues):
13272 (WebCore::SVGAnimateElement::calculateFromAndByValues):
13273 (WebCore::SVGAnimateElement::resetToBaseValue):
13274 (WebCore::SVGAnimateElement::applyResultsToTarget):
13275 (WebCore::SVGAnimateElement::calculateDistance):
13276 * svg/SVGAnimatedNumber.cpp:
13277 (WebCore::SVGAnimatedNumberAnimator::calculateAnimatedNumber): Made meth od static for reuse in SVGAnimatedNumberList (and SVGAnimatedNumberOptionalNumbe r later).
13278 (WebCore::SVGAnimatedNumberAnimator::calculateAnimatedValue): Use new st atic function.
13279 * svg/SVGAnimatedNumber.h:
13280 * svg/SVGAnimatedNumberList.cpp: Added. New animator for SVGNumberList.
13281 (WebCore::SVGAnimatedNumberListAnimator::SVGAnimatedNumberListAnimator):
13282 (WebCore::SVGAnimatedNumberListAnimator::constructFromString):
13283 (WebCore::SVGAnimatedNumberListAnimator::calculateFromAndToValues):
13284 (WebCore::SVGAnimatedNumberListAnimator::calculateFromAndByValues):
13285 (WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):
13286 (WebCore::SVGAnimatedNumberListAnimator::calculateDistance):
13287 * svg/SVGAnimatedNumberList.h:
13288 (WebCore::SVGAnimatedNumberListAnimator::~SVGAnimatedNumberListAnimator) :
13289 * svg/SVGAnimatedType.cpp: Use new Animator.
13290 (WebCore::SVGAnimatedType::~SVGAnimatedType):
13291 (WebCore::SVGAnimatedType::createNumberList):
13292 (WebCore::SVGAnimatedType::numberList):
13293 (WebCore::SVGAnimatedType::valueAsString):
13294 (WebCore::SVGAnimatedType::setValueAsString):
13295 * svg/SVGAnimatedType.h:
13296 * svg/SVGAnimatorFactory.h:
13297 (WebCore::SVGAnimatorFactory::create):
13298
13299 2011-06-25 Nikolas Zimmermann <nzimmermann@rim.com>
13300
13301 Reviewed by Dirk Schulze.
13302
13303 Convert SVGPath to SVGAnimatorFactory concept
13304 https://bugs.webkit.org/show_bug.cgi?id=63336
13305
13306 Convert <animate attributeName="d"> parsing to the new SVGAnimatorFactor y concept, removing
13307 the last special data types from SVGAnimateElement: SVGPathByteStream m_ fromPath/m_toPath/m_animatedPath.
13308 All existing non-string primitives have been converted to the new concep t.
13309
13310 Doesn't change any functionality.
13311
13312 * CMakeLists.txt: Added SVGAnimatedPath.*.
13313 * GNUmakefile.list.am: Ditto.
13314 * WebCore.gypi: Ditto.
13315 * WebCore.pro: Ditto.
13316 * WebCore.vcproj/WebCore.vcproj: Ditto.
13317 * WebCore.xcodeproj/project.pbxproj: Ditto.
13318 * svg/SVGAllInOne.cpp: Ditto.
13319 * svg/SVGAnimateElement.cpp:
13320 (WebCore::SVGAnimateElement::SVGAnimateElement):
13321 (WebCore::SVGAnimateElement::calculateAnimatedValue):
13322 (WebCore::SVGAnimateElement::calculateFromAndToValues):
13323 (WebCore::SVGAnimateElement::calculateFromAndByValues):
13324 (WebCore::SVGAnimateElement::resetToBaseValue):
13325 (WebCore::SVGAnimateElement::applyResultsToTarget):
13326 * svg/SVGAnimateElement.h:
13327 * svg/SVGAnimatedPath.cpp: Added.
13328 (WebCore::SVGAnimatedPathAnimator::SVGAnimatedPathAnimator):
13329 (WebCore::SVGAnimatedPathAnimator::constructFromString):
13330 (WebCore::SVGAnimatedPathAnimator::calculateFromAndToValues):
13331 (WebCore::SVGAnimatedPathAnimator::calculateFromAndByValues):
13332 (WebCore::SVGAnimatedPathAnimator::calculateAnimatedValue):
13333 (WebCore::SVGAnimatedPathAnimator::calculateDistance):
13334 * svg/SVGAnimatedPath.h: Added.
13335 (WebCore::SVGAnimatedPathAnimator::~SVGAnimatedPathAnimator):
13336 * svg/SVGAnimatedType.cpp:
13337 (WebCore::SVGAnimatedType::~SVGAnimatedType):
13338 (WebCore::SVGAnimatedType::createPath):
13339 (WebCore::SVGAnimatedType::path):
13340 (WebCore::SVGAnimatedType::valueAsString):
13341 (WebCore::SVGAnimatedType::setValueAsString):
13342 * svg/SVGAnimatedType.h:
13343 * svg/SVGAnimatorFactory.h:
13344 (WebCore::SVGAnimatorFactory::create):
13345 * svg/SVGPathByteStream.h:
13346 (WebCore::SVGPathByteStream::initializeFrom):
13347 * svg/SVGPathParserFactory.cpp:
13348 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromSVGPathSegList ):
13349 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
13350 (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
13351
13352 2011-06-25 Jer Noble <jer.noble@apple.com>
13353
13354 Reviewed by Maciej Stachowiak.
13355
13356 SOFT_LINK_POINTER_OPTIONAL isn't optional.
13357 https://bugs.webkit.org/show_bug.cgi?id=63378
13358
13359 Continuation of r89718. SOFT_LINK_POINTER_OPTIONAL should check the val ue returned by dlsym before dereferencing it.
13360
13361 * platform/mac/SoftLinking.h:
13362
13363 2011-06-25 Rob Buis <rbuis@rim.com>
13364
13365 Reviewed by Nikolas Zimmermann.
13366
13367 SVG1.1SE test linking-uri-01-b.svg fails
13368 https://bugs.webkit.org/show_bug.cgi?id=63322
13369
13370 Allow navigating to internal <view> targets. When choosing Back ensure
13371 the <svg> current view is initialized correctly.
13372
13373 Tests: svg/W3C-SVG-1.1-SE/linking-uri-01-b.svg
13374 svg/custom/linking-uri-01-b.svg
13375
13376 * page/FrameView.cpp: Delegate to setupInitialView.
13377 (WebCore::FrameView::scrollToAnchor):
13378 * svg/SVGAElement.cpp: Allow navigating to internal <view> targets.
13379 (WebCore::SVGAElement::defaultEventHandler):
13380 * svg/SVGSVGElement.cpp:
13381 (WebCore::SVGSVGElement::setupInitialView): Initialize current view depe nding on fragment identifier.
13382 (WebCore::SVGSVGElement::inheritViewAttributes):
13383 * svg/SVGSVGElement.h:
13384
13385 2011-06-24 Dimitri Glazkov <dglazkov@chromium.org>
13386
13387 Reviewed by Darin Adler.
13388
13389 REGRESSION (r77740): Shadow DOM pseudo elements aren't matching when com bined with descendant selectors
13390 https://bugs.webkit.org/show_bug.cgi?id=63373
13391
13392 * css/CSSStyleSelector.cpp:
13393 (WebCore::CSSStyleSelector::pushParentStackFrame): Changed to use parent OrHostElement.
13394 (WebCore::CSSStyleSelector::pushParent): Ditto.
13395 * dom/Node.cpp:
13396 (WebCore::Node::parentOrHostElement): Added.
13397 * dom/Node.h:
13398
13399 2011-06-24 Dan Bernstein <mitz@apple.com>
13400
13401 Reviewed by Anders Carlsson.
13402
13403 Add an option to enable legacy rounding hacks
13404 https://bugs.webkit.org/show_bug.cgi?id=63363
13405
13406 Restored most of text rounding hacks which were removed in r78846, with a global flag to control
13407 whether rounding hacks are allowed, which defaults to false.
13408
13409 Test: platform/mac/fast/text/rounding-hacks.html
13410
13411 * CMakeLists.txt: Added TextRun.cpp.
13412 * GNUmakefile.list.am: Ditto.
13413 * WebCore.exp.in: Export new TextRun function and global and updated Str ingTruncator functions.
13414 * WebCore.gypi: Added TextRun.cpp.
13415 * WebCore.pro: Ditto.
13416 * WebCore.vcproj/WebCore.vcproj: Ditto.
13417 * WebCore.xcodeproj/project.pbxproj: Ditto.
13418 * html/canvas/CanvasRenderingContext2D.cpp:
13419 (WebCore::CanvasRenderingContext2D::drawTextInternal): Disable rounding hacks in the one place
13420 they used to be disabled.
13421 * platform/graphics/Font.cpp: Re-added the rounding character table.
13422 * platform/graphics/Font.h:
13423 (WebCore::Font::isRoundingHackCharacter): Re-added.
13424 * platform/graphics/FontFastPath.cpp:
13425 (WebCore::Font::getGlyphsAndAdvancesForSimpleText): Account for final ro unding width.
13426 * platform/graphics/SimpleFontData.cpp:
13427 (WebCore::SimpleFontData::platformGlyphInit): Initialize m_adjustedSpace Width.
13428 * platform/graphics/SimpleFontData.h:
13429 (WebCore::SimpleFontData::adjustedSpaceWidth): Re-added.
13430 * platform/graphics/StringTruncator.cpp:
13431 (WebCore::stringWidth): Re-added disableRoundingHacks parameter.
13432 (WebCore::truncateString): Ditto.
13433 (WebCore::StringTruncator::centerTruncate): Added EnableRoundingHacksOrN ot parameter.
13434 (WebCore::StringTruncator::rightTruncate): Ditto.
13435 (WebCore::StringTruncator::width): Ditto.
13436 * platform/graphics/StringTruncator.h:
13437 * platform/graphics/TextRun.cpp: Added.
13438 (WebCore::TextRun::setAllowsRoundingHacks): Added.
13439 * platform/graphics/TextRun.h:
13440 (WebCore::TextRun::TextRun): Added RoundingHacks parameter to the constr uctors, used to initialize
13441 the m_applyRunRounding and m_applyWordRounding member variables, subject to rounding hacks being allowed.
13442 (WebCore::TextRun::applyRunRounding): Re-added this accessor.
13443 (WebCore::TextRun::applyWordRounding): Ditto.
13444 (WebCore::TextRun::disableRoundingHacks): Re-added.
13445 * platform/graphics/WidthIterator.cpp:
13446 (WebCore::WidthIterator::WidthIterator): Re-added code to apply rounding hacks.
13447 (WebCore::WidthIterator::advance): Ditto.
13448 * platform/graphics/WidthIterator.h:
13449 * platform/graphics/mac/ComplexTextController.cpp:
13450 (WebCore::ceilCGFloat): Re-added.
13451 (WebCore::ComplexTextController::ComplexTextController): Re-added code t o apply rounding hacks.
13452 (WebCore::ComplexTextController::advance): Ditto.
13453 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Ditto.
13454 * platform/graphics/mac/ComplexTextController.h:
13455 (WebCore::ComplexTextController::finalRoundingWidth): Re-added this acce ssor.
13456 * platform/graphics/mac/FontComplexTextMac.cpp:
13457 (WebCore::Font::getGlyphsAndAdvancesForComplexText): Accound for final r ounding width.
13458 * platform/graphics/qt/SimpleFontDataQt.cpp:
13459 (WebCore::SimpleFontData::platformGlyphInit): Initialize m_adjustedSpace Width.
13460 * platform/gtk/RenderThemeGtk.cpp:
13461 (WebCore::RenderThemeGtk::fileListNameForWidth): Enabled rounding hacks in the string truncator.
13462 * platform/mac/DragImageMac.mm:
13463 (WebCore::widthWithFont): Disable rounding hacks when measuring.
13464 (WebCore::drawAtPoint): Disable rounding hacks when drawing.
13465 * platform/win/DragImageWin.cpp:
13466 (WebCore::createDragImageForLink): Enable rounding hacks in the string t runcator.
13467 * platform/win/WebCoreTextRenderer.cpp:
13468 (WebCore::WebCoreTextFloatWidth): Ditto.
13469 * rendering/RenderFileUploadControl.cpp:
13470 (WebCore::RenderFileUploadControl::paintObject): Disable rounding hacks.
13471 * rendering/RenderListBox.cpp:
13472 (WebCore::RenderListBox::updateFromElement): Ditto.
13473 (WebCore::RenderListBox::paintItemForeground): Ditto.
13474 * rendering/RenderTextControl.cpp:
13475 (WebCore::RenderTextControl::getAvgCharWidth): Ditto.
13476 * rendering/RenderTheme.cpp:
13477 (WebCore::RenderTheme::fileListNameForWidth): Enabled rounding hacks in the string truncator.
13478 * rendering/RenderThemeMac.mm:
13479 (WebCore::RenderThemeMac::fileListNameForWidth): Ditto.
13480 * rendering/svg/SVGInlineTextBox.cpp:
13481 (WebCore::SVGInlineTextBox::constructTextRun): Disabled rounding hacks.
13482 * rendering/svg/SVGTextMetrics.cpp:
13483 (WebCore::constructTextRun): Ditto.
13484
13485 2011-06-24 Nikolas Zimmermann <nzimmermann@rim.com>
13486
13487 Reviewed by Rob Buis.
13488
13489 Integrate SVG Fonts within GlyphPage concept, removing the special SVG c ode paths from Font, making it possible to reuse the simple text code path for S VG Fonts
13490 https://bugs.webkit.org/show_bug.cgi?id=59085
13491
13492 font substitution doesn't work for HTML text using SVG fonts
13493 https://bugs.webkit.org/show_bug.cgi?id=17608
13494
13495 Selection rects are wrong for text with SVG fonts
13496 https://bugs.webkit.org/show_bug.cgi?id=25460
13497
13498 With @font-face, SVG fonts only work as primary, non-segmented
13499 https://bugs.webkit.org/show_bug.cgi?id=32227
13500
13501 When using SVG fonts with @font-face word-spacing and text-align: justif y are not being honored
13502 https://bugs.webkit.org/show_bug.cgi?id=34236
13503
13504 SVG @font-face breaks text-overflow: ellipsis
13505 https://bugs.webkit.org/show_bug.cgi?id=36840
13506
13507 REGRESSION: SVG Font selection problems
13508 https://bugs.webkit.org/show_bug.cgi?id=41934
13509
13510 Tests: svg/custom/svg-fonts-fallback.xhtml (for bug 17608, extended the original test from Mark Ambachtsheer)
13511 svg/custom/svg-fonts-segmented.xhtml (for bug 32227)
13512 svg/custom/svg-fonts-word-spacing.html (for bug 34236, from Micha el Lewis)
13513 svg/text/select-text-svgfont.html (for bug 25460/41934, from Emil Schutte)
13514 svg/text/text-overflow-ellipsis-svgfont.html (for 36840, from Emi l Schutte)
13515
13516 Rewrite the SVG Fonts support to fully integrate within the GlyphPage co ncept and the "simple" code path used to render platform fonts.
13517 That means the special logic for measuring text using SVG Fonts, calcula ting offset for positions, computing selection rects etc. is all gone now.
13518 There's no difference anymore between using a native font or a SVG Font, in terms of these operations.
13519
13520 This makes text selection using SVG Fonts possible again.
13521
13522 * features.pri: Temporarily turn of SVG Fonts for Qt, as long as QRawFon t support is not available and the fast path is disabled.
13523 * page/DOMWindow.idl: Touched file to force Qt regenerating the bindings .
13524 * platform/graphics/Font.cpp: Remove SVG Font special cases, the simple code path now handles SVG Fonts as well.
13525 (WebCore::Font::drawText):
13526 (WebCore::Font::drawEmphasisMarks):
13527 (WebCore::Font::width):
13528 (WebCore::Font::selectionRectForText):
13529 (WebCore::Font::offsetForPosition):
13530 (WebCore::Font::codePath):
13531 * platform/graphics/Font.h: Pass TextRun to drawGlyphBuffer/drawEmphasis Marks. Add new glyphDataAndPageForCharacter() method which returns a pair
13532 std::pair<GlyphData, GlyphPage*>, so we know the associated GlyphPage for a certain GlyphData object, which is needed to pro perly
13533 handle font fallback glyph matching for SVG Fonts..
13534 (WebCore::Font::fontList): Add FontFallbackList accessor.
13535 * platform/graphics/FontFallbackList.h: Add getters/setters for glyphPag eZero -- SVG Fonts support needs access to these objects from SVGTextRunRenderin gContext.
13536 (WebCore::FontFallbackList::glyphPageZero):
13537 (WebCore::FontFallbackList::glyphPages):
13538 (WebCore::FontFallbackList::setGlyphPageZero):
13539 (WebCore::FontFallbackList::setGlyphPages):
13540 * platform/graphics/FontFastPath.cpp:
13541 (WebCore::Font::glyphDataForCharacter): Move implementation to glyphData AndPageForCharacter(), and use that method from here.
13542 (WebCore::Font::glyphDataAndPageForCharacter): Does the same as before, just returns an additional GlyphPage* pointer.
13543 (WebCore::Font::getEmphasisMarkGlyphData): Remove SVG Fonts special case .
13544 (WebCore::Font::drawGlyphBuffer): Ditto.
13545 * platform/graphics/FontMetrics.h:
13546 (WebCore::scaleEmToUnits): Refactored scaleEmToUnits free function from SimpleFontDataMac/CGWin to share with SVGFontData/SVGTextRunRenderingContext.
13547 * platform/graphics/GlyphPageTreeNode.cpp:
13548 (WebCore::fill): Stop skipping SVG Fonts, they now also fill the GlyphPa ge using the glyphs defined in the SVG Font.
13549 * platform/graphics/SVGGlyph.h: s/isValid/isPartOfLigature/. Its usage h as been changed.
13550 (WebCore::SVGGlyph::SVGGlyph):
13551 (WebCore::SVGGlyph::operator==):
13552 * platform/graphics/SimpleFontData.cpp: Change font size to be a float, not an int.
13553 (WebCore::SimpleFontData::SimpleFontData):
13554 * platform/graphics/SimpleFontData.h: Add new pure virtual methods to th e AdditionalFontData interface, to be implemented in SVGFontData.
13555 (WebCore::SimpleFontData::widthForGlyph): Call widthForSVGGlyph, if we e ncounter a SVG glyph.
13556 * platform/graphics/TextRun.h:
13557 * platform/graphics/WidthIterator.cpp:
13558 (WebCore::WidthIterator::glyphDataForCharacter):
13559 (WebCore::WidthIterator::advance):
13560 * platform/graphics/WidthIterator.h: Store several new members needed fo r SVG Fonts support (last processed glyph name used for kerning pair lookup)
13561 and a map mapping each character of a text to its arabic-form (if needed, to perform SVG glyph selection for Arabic text).
13562 (WebCore::WidthIterator::run):
13563 (WebCore::WidthIterator::runWidthSoFar):
13564 (WebCore::WidthIterator::lastGlyphName):
13565 (WebCore::WidthIterator::setLastGlyphName):
13566 (WebCore::WidthIterator::arabicForms):
13567 * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: Use new scal eEmToUnits free function from FontMetrics.h.
13568 * platform/graphics/mac/SimpleFontDataMac.mm: Ditto.
13569 * platform/graphics/win/SimpleFontDataCGWin.cpp: Ditto.
13570 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
13571 (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes): Ha ndle UTF-16 surrogate pairs correctly, fixes the previous Acid3 regression.
13572 * rendering/svg/SVGTextMetrics.cpp:
13573 (WebCore::SVGTextMetrics::SVGTextMetrics):
13574 (WebCore::constructTextRun):
13575 (WebCore::SVGTextMetrics::measureCharacterRange):
13576 * rendering/svg/SVGTextMetrics.h:
13577 * rendering/svg/SVGTextRunRenderingContext.cpp: Remove drawTextUsingSVGF ont/floatWidthUsingSVGFont/selectionRectForTextUsingSVGFont/offsetForPositionFor TextUsingSVGFont.
13578 (WebCore::firstParentRendererForNonTextNode): Don't assert node() exists , doesn't hold true for generated render objects.
13579 (WebCore::renderObjectFromRun): Renamed from referencingRenderObjectFrom Run.
13580 (WebCore::SVGTextRunRenderingContext::floatWidthUsingSVGFont): Remove ex tra "extraCharsAvailable" parameter, now solves via TextRun::charactersLength().
13581 (WebCore::calculateEmUnitToPixelScaleFactor): Add helper method.
13582 (WebCore::SVGTextRunRenderingContext::drawSVGGlyphs): Main drawing metho d, this actually creates/renders Paths.
13583 (WebCore::SVGTextRunRenderingContext::glyphDataForCharacter): Part 1/2 o f SVG Glyph selection code.
13584 * rendering/svg/SVGTextRunRenderingContext.h:
13585 * svg/SVGAltGlyphElement.cpp:
13586 (WebCore::SVGAltGlyphElement::hasValidGlyphElement):
13587 * svg/SVGAltGlyphElement.h:
13588 * svg/SVGFontData.cpp:
13589 (WebCore::SVGFontData::initializeFontData): Changed font size from int t o float.
13590 (WebCore::SVGFontData::widthForSVGGlyph): Lookup a SVGGlyph from a Glyph using the glyph table in SVGFontElement and calculate its width.
13591 (WebCore::SVGFontData::applySVGGlyphSelection): Part 2/2 of SVG Glyph se lection code.
13592 (WebCore::SVGFontData::fillSVGGlyphPage): Fill GlyphPage using glyphs de fined in the SVG Font.
13593 (WebCore::SVGFontData::fillBMPGlyphs): Moved from the previous fillSVGGl yphPage implementation.
13594 (WebCore::SVGFontData::fillNonBMPGlyphs): Add non-bmp glyph handling, fi xing the Acid3 regression (support using SVGGlyphs for UTF-16 surrogate pairs).
13595 * svg/SVGFontData.h:
13596 * svg/SVGFontElement.cpp:
13597 (WebCore::SVGFontElement::registerLigaturesInGlyphCache): Enable ligatur e registration for the use within GlyphPage.
13598 (WebCore::SVGFontElement::ensureGlyphCache):
13599 * svg/SVGGlyphMap.h: Switch to use SurrogatePairTextIterator, and switch glyph table from UChar to UChar32, just like GlyphPage, to handle glyphs from n on-BMP correctly.
13600 (WebCore::SVGGlyphMap::addGlyph): Remove setting isValid, it's not neede d anymore and gone.
13601 (WebCore::SVGGlyphMap::collectGlyphsForString):
13602 * svg/svgtags.in: Surround vkern in ENABLE_SVG_FONTS block.
13603
13604 2011-06-24 Gyuyoung Kim <gyuyoung.kim@samsung.com>
13605
13606 Reviewed by Antonio Gomes.
13607
13608 [CMAKE] Replace ";" with space in FEATURE_DEFINES macro
13609 https://bugs.webkit.org/show_bug.cgi?id=62211
13610
13611 html.css file doesn't recognize ENABLE_XXX macro because FEATURE_DEFINES macro has ";"
13612 as separator. So, let the html.css to use new feature macro with space s eparator.
13613
13614 * CMakeLists.txt:
13615
13616 2011-06-24 Gavin Peters <gavinp@chromium.org>
13617
13618 Reviewed by Darin Adler.
13619
13620 fix possible race in LinkLoader
13621 https://bugs.webkit.org/show_bug.cgi?id=63360
13622
13623 In chromium bug 80729
13624 http://code.google.com/p/chromium/issues/detail?id=80729 I am
13625 seeing some kind of double triggering of the timer; I am concerned
13626 that it is possible that a Link element errors out or succeeds,
13627 sets a timer, and shortly before the timer is triggered it is
13628 editted, launches another request. After that, the first timer
13629 triggers, zeroing out m_cachedResource. Then, the second load
13630 finishes, and *crash*. If this is the case, this fix should stop
13631 it.
13632
13633 No new tests; I haven't reproduced this. I hope chrome's crash
13634 telemetry will give good feedback; this crash is occuring many times a
13635 day so the difference should be obvious.
13636
13637 * loader/LinkLoader.cpp:
13638 (WebCore::LinkLoader::LinkLoader):
13639 (WebCore::LinkLoader::linkLoadTimerFired):
13640 (WebCore::LinkLoader::linkLoadingErrorTimerFired):
13641 (WebCore::LinkLoader::notifyFinished):
13642 * loader/LinkLoader.h:
13643
13644 2011-06-24 Jer Noble <jer.noble@apple.com>
13645
13646 Reviewed by Eric Carlson.
13647
13648 Safari will quit unexpectedly when launching Safari in the first time (c rash in initQTSecurityPolicyNoLocalToRemoteSiteAttribute)
13649 https://bugs.webkit.org/show_bug.cgi?id=63332
13650 <rdar://problem/9661650>
13651
13652 No new tests; Only affects machines with QTKit < 7.6.3 installed.
13653
13654 Check to see if QTSecurityPolicyNoRemoteToLocalSiteAttribute is non-NULL before passing it into -[QTMovie initWithAttributes:],
13655 as it is only defined in QTKit >= 7.6.3. If it is NULL, pass QTSecurity PolicyNoCrossSiteAttribute=YES instead, which has
13656 the same effect in earlier versions of QTKit as the NoLocalToRemote and NoRemoteToLocal keys. To avoid ASSERTs when running
13657 debug builds with earlier versions of QTKit, add a SOFT_LINK_POINTER_OPT IONAL macro to SoftLinking.h and make these keys optional.
13658
13659 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
13660 (WebCore::MediaPlayerPrivateQTKit::commonMovieAttributes):
13661 * platform/mac/SoftLinking.h: Add SOFT_LINK_POINTER_OPTIONAL macro.
13662
13663 2011-06-24 Darin Adler <darin@apple.com>
13664
13665 Try to fix Windows build failure.
13666
13667 * platform/win/ClipboardUtilitiesWin.cpp:
13668 (WebCore::setFileDescriptorData): Copy string into a local so we
13669 can call charactersWithNullTermination on it.
13670
13671 2011-06-23 Darin Adler <darin@apple.com>
13672
13673 Reviewed by Adam Barth.
13674
13675 Remove some unneeded functions from FrameLoader
13676 https://bugs.webkit.org/show_bug.cgi?id=63295
13677
13678 Removing 7 of the functions in FrameLoader.h is probably a step
13679 in the right direction.
13680
13681 * loader/DocumentLoader.cpp:
13682 (WebCore::DocumentLoader::handledOnloadEvents):
13683 Moved the call to stopDeferringEvents in here from FrameLoader.
13684 * loader/DocumentLoader.h: Ditto.
13685
13686 * loader/DocumentWriter.h: Fixed a typo.
13687
13688 * loader/FrameLoader.cpp:
13689 (WebCore::FrameLoader::setFirstPartyForCookies): Changed this to
13690 use a non-recursive tree walk instead of recursion.
13691 (WebCore::FrameLoader::stopAllLoaders): Moved the code from
13692 stopLoadingSubframes inline, since it's only two lines of code.
13693 (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Moved
13694 the code from markLoadComplete inline, since it's only one line.
13695 (WebCore::FrameLoader::checkLoadComplete): Changed this to use a
13696 non-recursive tree walk instead of recursion, eliminating the
13697 recursiveCheckLoadComplete function completely.
13698 (WebCore::FrameLoader::handledOnloadEvents): Moved the call to
13699 stopDeferringEvents into DocumentLoader.
13700
13701 * loader/FrameLoader.h: Removed unneeded forward declarations,
13702 and now-unneeded functions setupForReplaceByMIMEType,
13703 isStopping, isLoadingFromCachedPage, stopLoadingSubframes,
13704 markLoadComplete, mainReceivedError, and recursiveCheckLoadComplete.
13705 Also made allChildrenAreComplete private.
13706
13707 * loader/MainResourceLoader.cpp:
13708 (WebCore::MainResourceLoader::continueAfterContentPolicy):
13709 Call DocumentLoader::isStopping so we can remove the function
13710 from FrameLoader that just calls through. Other call sites were
13711 using DocumentLoader::isStopping directly.
13712 (WebCore::MainResourceLoader::didReceiveResponse): Call
13713 DocumentLoader::setupForReplaceByMIMEType so we can remove the
13714 function from FrameLoader that just calls through. This was
13715 the only call site.
13716
13717 * loader/ResourceLoader.cpp:
13718 (WebCore::ResourceLoader::init): Call the
13719 ResourceLoader::cancelledError function instead of calling
13720 directly to FrameLoader.
13721
13722 * loader/ResourceLoader.h: Made response an inline function.
13723
13724 2011-06-24 Alexey Proskuryakov <ap@apple.com>
13725
13726 Rubber-stamped by Maciej Stachowiak.
13727
13728 REGRESSION (r88984): Infinite recursion in DocumentLoader::detachFromFra me/stopLoading
13729
13730 No new tests, as there is no known way to reproduce this (but we'll keep investigating, as
13731 the rollout will re-introduce the older less frequent crash).
13732
13733 * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::detachFromFrame): Rollout the fix
13734 for bug 62764.
13735
13736 2011-06-24 Tony Chang <tony@chromium.org>
13737
13738 Reviewed by Ojan Vafai.
13739
13740 add flexbox and inline-flexbox as possible CSS display values
13741 https://bugs.webkit.org/show_bug.cgi?id=63361
13742
13743 Test: css3/flexbox/display-property.html
13744
13745 * css/CSSParser.cpp:
13746 (WebCore::CSSParser::parseValue):
13747 * css/CSSValueKeywords.in:
13748
13749 2011-06-24 Anna Cavender <annacc@chromium.org>
13750
13751 Reviewed by Eric Carlson.
13752
13753 Loading out-of-band text track files from <track>.
13754 https://bugs.webkit.org/show_bug.cgi?id=62881
13755
13756 Uses the src attribute of <track> urls to load out-of-band text track
13757 files using ThreadableLoader. Also removes TextTrackPrivateInterface
13758 (as well as LoadableTextTrackImpl and MutableTextTrackImpl) classes.
13759
13760 No new tests because feature is hidden behind VIDEO_TRACK feature
13761 define, which is turned off.
13762
13763 * CMakeLists.txt:
13764 * GNUmakefile.am:
13765 * GNUmakefile.list.am:
13766 * WebCore.gypi:
13767 * WebCore.pro:
13768 * WebCore.xcodeproj/project.pbxproj:
13769 * html/HTMLMediaElement.cpp:
13770 * html/HTMLMediaElement.h:
13771 * html/HTMLTrackElement.cpp:
13772 * html/HTMLTrackElement.h:
13773 * html/LoadableTextTrack.cpp:
13774 * html/LoadableTextTrack.h:
13775 * html/LoadableTextTrackImpl.cpp: Removed.
13776 * html/LoadableTextTrackImpl.h: Removed.
13777 * html/MutableTextTrack.cpp:
13778 * html/MutableTextTrack.h:
13779 * html/MutableTextTrackImpl.cpp: Removed.
13780 * html/MutableTextTrackImpl.h: Removed.
13781 * html/TextTrack.cpp:
13782 * html/TextTrack.h:
13783 * html/TextTrackPrivate.h: Removed.
13784 * platform/track/CueParser.cpp:
13785 * platform/track/CueParser.h:
13786
13787 2011-06-24 Rob Buis <rbuis@rim.com>
13788
13789 Rubber-stamped by Nikolas Zimmermann.
13790
13791 All pointer-events fail if text has visibility="hidden"
13792 https://bugs.webkit.org/show_bug.cgi?id=62209
13793
13794 Do not use writing mode aware code for SVG Text.
13795
13796 No new tests needed.
13797
13798 * rendering/svg/SVGInlineTextBox.cpp:
13799 (WebCore::SVGInlineTextBox::nodeAtPoint):
13800
13801 2011-06-24 Lukasz Slachciak <l.slachciak@samsung.com>
13802
13803 Reviewed by Darin Adler.
13804
13805 Change NDEBUG to !LOG_DISABLED macro in databases for logging.
13806 https://bugs.webkit.org/show_bug.cgi?id=63346
13807
13808 Changed NDEBUG to !LOG_DISABLED in databases code which involves logging .
13809 This change resolves also build break in Release build when logging enab led.
13810
13811 No new tests because there is no new behavior or feature exposed.
13812
13813 * loader/icon/IconDatabase.cpp: Macro fixes.
13814 (WebCore::IconDatabase::iconDatabaseSyncThread):
13815 (WebCore::IconDatabase::syncThreadMainLoop):
13816 (WebCore::IconDatabase::readFromDatabase):
13817 (WebCore::IconDatabase::writeToDatabase):
13818 (WebCore::IconDatabase::cleanupSyncThread):
13819 * storage/AbstractDatabase.h: Macro fixes.
13820 * storage/DatabaseTask.cpp: Macro fixes.
13821 * storage/DatabaseTask.h: Macro fixes.
13822 * storage/SQLTransaction.cpp: Macro fixes.
13823 * storage/SQLTransaction.h: Macro fixes.
13824
13825 2011-06-24 Tony Chang <tony@chromium.org>
13826
13827 Reviewed by Adam Barth.
13828
13829 Pass Strings by const reference to functions
13830 https://bugs.webkit.org/show_bug.cgi?id=63341
13831
13832 Note that since Strings hold a RefPtr to StringImpl, passing Strings
13833 by value isn't horrible, but it does cause ref count churn and using
13834 const references is more consistent with the rest of the code base.
13835
13836 * loader/FrameLoader.cpp:
13837 (WebCore::FrameLoader::addHTTPOriginIfNeeded): Rework the code to not
13838 change the value of the passed in String.
13839 * loader/FrameLoader.h:
13840 * platform/win/ClipboardUtilitiesWin.cpp:
13841 (WebCore::setFileDescriptorData):
13842 * platform/win/ClipboardUtilitiesWin.h:
13843 * storage/DatabaseTracker.h:
13844 * storage/IDBLevelDBBackingStore.cpp:
13845 (WebCore::IDBLevelDBBackingStore::IDBLevelDBBackingStore):
13846 * storage/IDBLevelDBBackingStore.h:
13847 * storage/IDBSQLiteBackingStore.cpp:
13848 (WebCore::IDBSQLiteBackingStore::IDBSQLiteBackingStore):
13849 * storage/IDBSQLiteBackingStore.h:
13850 * storage/chromium/DatabaseTrackerChromium.cpp:
13851 (WebCore::DatabaseTracker::getOpenDatabases):
13852 * svg/SVGPaint.cpp:
13853 (WebCore::SVGPaint::SVGPaint):
13854 * svg/SVGPaint.h:
13855 * svg/animation/SMILTimeContainer.cpp:
13856 (WebCore::SMILTimeContainer::updateAnimations):
13857 * svg/animation/SMILTimeContainer.h:
13858 * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
13859 (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageCall back):
13860 * websockets/ThreadableWebSocketChannelClientWrapper.h:
13861
13862 2011-06-24 Abhishek Arya <inferno@chromium.org>
13863
13864 Reviewed by Darin Adler.
13865
13866 Add clamping for CSSPrimitiveValues and SVGInlineText font size.
13867 https://bugs.webkit.org/show_bug.cgi?id=53449
13868
13869 Test: svg/text/svg-zoom-large-value.xhtml
13870
13871 * css/CSSPrimitiveValue.cpp:
13872 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): add asserts to detect i f the
13873 number created is valid.
13874 * css/CSSPrimitiveValue.h: add clamping checks to prevent overflows.
13875 (WebCore::CSSPrimitiveValue::getFloatValue):
13876 (WebCore::CSSPrimitiveValue::getIntValue):
13877 * css/CSSStyleSelector.cpp:
13878 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): split int o two
13879 static functions, one specific to CSSStyleSelector and other generic to help
13880 in clamping font size for other callers like svg text, etc.
13881 * css/CSSStyleSelector.h:
13882 * platform/graphics/FontDescription.h: add asserts to detect if the new font
13883 size is valid.
13884 (WebCore::FontDescription::setComputedSize):
13885 (WebCore::FontDescription::setSpecifiedSize):
13886 * rendering/svg/RenderSVGInlineText.cpp:
13887 (WebCore::RenderSVGInlineText::computeNewScaledFontForStyle): use the ne w helper
13888 from CSSStyleSelector to help in clamping new scaled font size. do not u se
13889 "smart minimum" since svg allows really small unreadable fonts (tested b y existing
13890 layout tests). Document's minimum font size clamp (0 in my case) and har mless epsilon
13891 check in CSSStyleSelector function should still hold for svg.
13892
13893 2011-06-24 Julien Chaffraix <jchaffraix@webkit.org>
13894
13895 Reviewed by Darin Adler.
13896
13897 Remove unsafe static_cast inside the InlineBox hierarchy
13898 https://bugs.webkit.org/show_bug.cgi?id=63077
13899
13900 Refactoring only, no new test.
13901
13902 * rendering/InlineFlowBox.h:
13903 (WebCore::toInlineFlowBox):
13904 * rendering/InlineTextBox.h:
13905 (WebCore::toInlineTextBox):
13906 Added the proper cast methods to those 2 classes from an InlineBox.
13907
13908 * rendering/InlineBox.cpp:
13909 (WebCore::InlineBox::nextLeafChild):
13910 (WebCore::InlineBox::prevLeafChild):
13911 * rendering/InlineFlowBox.cpp:
13912 (WebCore::InlineFlowBox::getFlowSpacingLogicalWidth):
13913 (WebCore::InlineFlowBox::addToLine):
13914 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
13915 (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
13916 (WebCore::InlineFlowBox::requiresIdeographicBaseline):
13917 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
13918 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
13919 (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
13920 (WebCore::InlineFlowBox::flipLinesInBlockDirection):
13921 (WebCore::InlineFlowBox::computeOverflow):
13922 (WebCore::InlineFlowBox::firstLeafChild):
13923 (WebCore::InlineFlowBox::lastLeafChild):
13924 (WebCore::InlineFlowBox::computeOverAnnotationAdjustment):
13925 (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment):
13926 * rendering/RenderBlock.cpp:
13927 (WebCore::RenderBlock::positionForBox):
13928 * rendering/RenderBlockLineLayout.cpp:
13929 (WebCore::RenderBlock::createLineBoxes):
13930 (WebCore::RenderBlock::constructLine):
13931 (WebCore::setLogicalWidthForTextRun):
13932 (WebCore::computeExpansionForJustifiedText):
13933 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
13934 * rendering/RenderText.cpp:
13935 (WebCore::RenderText::localCaretRect):
13936 (WebCore::RenderText::positionLineBox):
13937 * rendering/RootInlineBox.cpp:
13938 (WebCore::RootInlineBox::ascentAndDescentForBox):
13939 (WebCore::RootInlineBox::includeFontForBox):
13940 (WebCore::RootInlineBox::includeGlyphsForBox):
13941 Replaced the static_cast in those previous call sites with the new cast methods.
13942
13943 2011-06-24 Alexis Menard <alexis.menard@openbossa.org>
13944
13945 Unreviewed build fix.
13946
13947 Build fix on Linux when using the GStreamer backend.
13948
13949 No new tests, just a build fix.
13950
13951 * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp:
13952 (FullScreenVideoWindow::keyPressEvent):
13953
13954 2011-06-24 Nat Duca <nduca@chromium.org>
13955
13956 Unreviewed, rolling out r89694.
13957 http://trac.webkit.org/changeset/89694
13958 https://bugs.webkit.org/show_bug.cgi?id=58408
13959
13960 Test shell still not ready for animate changes.
13961
13962 * WebCore.gypi:
13963 * platform/graphics/chromium/LayerRendererChromium.cpp:
13964 (WebCore::LayerRendererChromium::create):
13965 (WebCore::LayerRendererChromium::LayerRendererChromium):
13966 (WebCore::LayerRendererChromium::setViewport):
13967 (WebCore::LayerRendererChromium::updateAndDrawLayers):
13968 * platform/graphics/chromium/LayerRendererChromium.h:
13969 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
13970 * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
13971 (WebCore::CCHeadsUpDisplay::setShowFPSCounter):
13972 (WebCore::CCHeadsUpDisplay::setShowPlatformLayerTree):
13973 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp: Removed.
13974 * platform/graphics/chromium/cc/CCLayerTreeHost.h: Removed.
13975 * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.cpp: Removed.
13976 * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.h: Removed.
13977 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: Removed.
13978 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h: Removed.
13979 * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp: Removed.
13980 * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h: Removed.
13981 * platform/graphics/chromium/cc/CCMainThreadTask.h:
13982 * platform/graphics/chromium/cc/CCThread.cpp:
13983 (WebCore::CCThread::runLoop):
13984 * platform/graphics/chromium/cc/CCThreadTask.h:
13985
13986 2011-06-24 Chris Rogers <crogers@google.com>
13987
13988 Unreviewed build fix.
13989
13990 Fix Chromium Linux Build
13991 https://bugs.webkit.org/show_bug.cgi?id=63349
13992
13993 * WebCore.gyp/WebCore.gyp:
13994
13995 2011-06-24 Henry Song <hsong@sisa.samsung.com>
13996
13997 Reviewed by Martin Robinson.
13998
13999 Correct _sharedTimer value in SharedTimerEfl.cpp
14000 https://bugs.webkit.org/show_bug.cgi?id=62380
14001
14002 SharedTimerEfl.cpp set _sharedTimer = 0 is incorrect in
14003 timerEvent(), we have observed addNewTimer() can be triggered
14004 by either inside timerFunction() or others that are not within
14005 timerFunction(). We have observed the following case:
14006 1. add a new Timer within timerFunction()
14007 2. timerFunction returns, set _sharedTimer = 0
14008 3. addNewTimer() is triggered again within webkit, don't know
14009 it triggers this.
14010 4. because at this moment, _sharedTimer == 0, the previous
14011 registered timer (in step 1) did not get removed.
14012 5. Now in ecore_timer, there are two timers with same callbacks
14013 6. From now on, timerFunction() will be called twice back-to-back
14014 in each ecore_timer loop.
14015 To correct this, we should set _sharedTimer = 0 before
14016 timerFunction() so that when addNewTimer() triggered within,
14017 we have a valid timer object.
14018
14019 * platform/efl/SharedTimerEfl.cpp:
14020 (WebCore::timerEvent):
14021
14022 2011-05-17 Nat Duca <nduca@chromium.org>
14023
14024 Reviewed by James Robinson.
14025
14026 [chromium] Implement CCLayerTreeHost and CCLayerTreeHostImpl portions of threaded compositor
14027 https://bugs.webkit.org/show_bug.cgi?id=58408
14028
14029 Create CCLayerTreeHost and CCLayerTreeHostImpl, which are the main
14030 thread and compositor thread halves of a composited view. Communication
14031 between the two is based on the design used in FileStreamProxy.
14032
14033 * WebCore.gypi:
14034 * platform/chromium/TraceEvent.h:
14035 * platform/graphics/chromium/LayerRendererChromium.cpp:
14036 (WebCore::LayerRendererChromium::create):
14037 (WebCore::LayerRendererChromium::LayerRendererChromium):
14038 (WebCore::LayerRendererChromium::setViewport):
14039 (WebCore::LayerRendererChromium::updateLayers):
14040 (WebCore::LayerRendererChromium::drawLayers):
14041 (WebCore::LayerRendererChromiumImpl::create):
14042 (WebCore::LayerRendererChromiumImpl::drawLayersAndPresent):
14043 (WebCore::LayerRendererChromiumImpl::LayerRendererChromiumImpl):
14044 (WebCore::LayerRendererChromiumImpl::drawLayersOnMainThread):
14045 (WebCore::LayerRendererChromiumImplProxy::create):
14046 (WebCore::LayerRendererChromiumImplProxy::createLayerTreeHostImpl):
14047 (WebCore::LayerRendererChromiumImplProxy::LayerRendererChromiumImplProxy ):
14048 (WebCore::LayerRendererChromium::createLayerTreeHostImplProxy):
14049 * platform/graphics/chromium/LayerRendererChromium.h:
14050 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
14051 (WebCore::CCHeadsUpDisplay::setShowFPSCounter):
14052 (WebCore::CCHeadsUpDisplay::setShowPlatformLayerTree):
14053 * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
14054 (WebCore::CCHeadsUpDisplay::currentFrameNumber):
14055 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp: Copied from Source/ WebCore/platform/graphics/chromium/cc/CCThread.cpp.
14056 (WebCore::CCLayerTreeHost::CCLayerTreeHost):
14057 (WebCore::CCLayerTreeHost::init):
14058 (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
14059 (WebCore::CCLayerTreeHost::beginCommit):
14060 (WebCore::CCLayerTreeHost::commitComplete):
14061 (WebCore::CCLayerTreeHost::animateAndLayout):
14062 (WebCore::CCLayerTreeHost::createLayerTreeHostCommitter):
14063 (WebCore::CCLayerTreeHost::setNeedsCommitAndRedraw):
14064 (WebCore::CCLayerTreeHost::setNeedsRedraw):
14065 (WebCore::CCLayerTreeHost::updateLayers):
14066 * platform/graphics/chromium/cc/CCLayerTreeHost.h: Copied from Source/We bCore/platform/graphics/chromium/cc/CCThread.cpp.
14067 (WebCore::CCLayerTreeHost::frameNumber):
14068 * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.cpp: Copied fro m Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
14069 (WebCore::CCLayerTreeHostCommitter::create):
14070 (WebCore::CCLayerTreeHostCommitter::commit):
14071 * platform/graphics/chromium/cc/CCLayerTreeHostCommitter.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
14072 (WebCore::CCLayerTreeHostCommitter::CCLayerTreeHostCommitter):
14073 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: Added.
14074 (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
14075 (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
14076 (WebCore::CCLayerTreeHostImpl::beginCommit):
14077 (WebCore::CCLayerTreeHostImpl::commitComplete):
14078 (WebCore::CCLayerTreeHostImpl::drawLayers):
14079 (WebCore::CCLayerTreeHostImpl::setNeedsCommitAndRedraw):
14080 (WebCore::CCLayerTreeHostImpl::setNeedsRedraw):
14081 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h: Copied from Sourc e/WebCore/platform/graphics/chromium/cc/CCThread.cpp.
14082 (WebCore::CCLayerTreeHostImplClient::~CCLayerTreeHostImplClient):
14083 (WebCore::CCLayerTreeHostImpl::frameNumber):
14084 (WebCore::CCLayerTreeHostImpl::sourceFrameNumber):
14085 (WebCore::CCLayerTreeHostImpl::setSourceFrameNumber):
14086 * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp: Added.
14087 (WebCore::CCLayerTreeHostImplProxy::CCLayerTreeHostImplProxy):
14088 (WebCore::CCLayerTreeHostImplProxy::start):
14089 (WebCore::CCLayerTreeHostImplProxy::~CCLayerTreeHostImplProxy):
14090 (WebCore::CCLayerTreeHostImplProxy::isStarted):
14091 (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedraw):
14092 (WebCore::CCLayerTreeHostImplProxy::setNeedsRedraw):
14093 (WebCore::CCLayerTreeHostImplProxy::stop):
14094 (WebCore::CCLayerTreeHostImplProxy::postDrawLayersTaskOnCCThread):
14095 (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommitOnCCThread):
14096 (WebCore::CCLayerTreeHostImplProxy::isMainThread):
14097 (WebCore::CCLayerTreeHostImplProxy::isCCThread):
14098 (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommit):
14099 (WebCore::CCLayerTreeHostImplProxy::commitOnCCThread):
14100 (WebCore::CCLayerTreeHostImplProxy::drawLayersOnCCThread):
14101 (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedrawOnCCThread):
14102 (WebCore::CCLayerTreeHostImplProxy::setNeedsRedrawOnCCThread):
14103 (WebCore::CCLayerTreeHostImplProxy::initImplOnCCThread):
14104 (WebCore::CCLayerTreeHostImplProxy::layerTreeHostClosedOnCCThread):
14105 * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h: Added.
14106 (WebCore::CCLayerTreeHostImplProxy::host):
14107 * platform/graphics/chromium/cc/CCMainThreadTask.h:
14108 * platform/graphics/chromium/cc/CCThread.cpp:
14109 (WebCore::CCThread::runLoop):
14110 * platform/graphics/chromium/cc/CCThreadTask.h:
14111
14112 2011-06-24 Adrienne Walker <enne@google.com>
14113
14114 Unreviewed, remove assertion about root layers in RenderLayerBacking.
14115 https://bugs.webkit.org/show_bug.cgi?id=60741
14116
14117 This was added in r89687, but somehow is not true on Safari Leopard.
14118 However, as the tests that were added with that revision are passing
14119 correctly, the assertion is most likely not correct.
14120
14121 * rendering/RenderLayerBacking.cpp:
14122 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
14123
14124 2011-06-24 Nikolas Zimmermann <nzimmermann@rim.com>
14125
14126 Reviewed by Dirk Schulze.
14127
14128 Refactor text iterator code respecting surrogate pairs from WidthIterato r
14129 https://bugs.webkit.org/show_bug.cgi?id=63319
14130
14131 WidthIterator contains a surrogate pair aware text iterator that is need ed in other parts of WebCore.
14132 Refactor the code into its own SurrogatePairAwareTextIterator class. It can be used like this:
14133
14134 UChar32 character = 0;
14135 unsigned clusterLength = 0;
14136
14137 SurrogatePairAwareTextIterator textIterator(myString.characters(), 0, my String.length(), myString.length());
14138 while (textIterator.consume(character, clusterLength)) {
14139 // Either clusterLength is 1 and UChar32 fits into a single UChar.
14140 // Or clusterLength is 2 and the UChar32 has been computed by co mbining the high & low surrogate pairs
14141 ...
14142
14143 textIterator.advance(clusterLength);
14144 }
14145
14146 SVGGlyphMap is the next candidate that wants to make use of SurrogatePai rAwareTextIterator.
14147 Doesn't affect any tests, just refactoring.
14148
14149 * CMakeLists.txt: Add SurrogatePairAwareTextIterator.* to build.
14150 * GNUmakefile.list.am: Ditto.
14151 * WebCore.gypi: Ditto.
14152 * WebCore.pro: Ditto.
14153 * WebCore.vcproj/WebCore.vcproj: Ditto.
14154 * WebCore.xcodeproj/project.pbxproj: Ditto.
14155 * platform/graphics/SurrogatePairAwareTextIterator.cpp: Copied from plat form/graphics/WidthIterator.cpp.
14156 * platform/graphics/SurrogatePairAwareTextIterator.h: Added.
14157 (WebCore::SurrogatePairAwareTextIterator::currentCharacter):
14158 * platform/graphics/WidthIterator.cpp:
14159 (WebCore::WidthIterator::advance):
14160 * platform/graphics/WidthIterator.h:
14161
14162 2011-06-24 Adrienne Walker <enne@google.com>
14163
14164 Reviewed by Simon Fraser.
14165
14166 Incorrect RenderLayer transforms on overflow RTL pages
14167 https://bugs.webkit.org/show_bug.cgi?id=60741
14168
14169 Fix positioning of the root graphics layer for RTL pages. The fact
14170 that the left side of the page is negative for pages with overflow is
14171 not taken into account when calculating the position. This negative
14172 value ends up being double-counted for the root graphics layer (once
14173 in the position and once in the offset) and it shifts child layers
14174 into the wrong place.
14175
14176 Tests: compositing/rtl/rtl-absolute-overflow-scrolled.html
14177 compositing/rtl/rtl-absolute-overflow.html
14178 compositing/rtl/rtl-absolute.html
14179 compositing/rtl/rtl-fixed-overflow-scrolled.html
14180 compositing/rtl/rtl-fixed-overflow.html
14181 compositing/rtl/rtl-fixed.html
14182 compositing/rtl/rtl-iframe-absolute-overflow-scrolled.html
14183 compositing/rtl/rtl-iframe-absolute-overflow.html
14184 compositing/rtl/rtl-iframe-absolute.html
14185 compositing/rtl/rtl-iframe-fixed-overflow-scrolled.html
14186 compositing/rtl/rtl-iframe-fixed-overflow.html
14187 compositing/rtl/rtl-iframe-fixed.html
14188 compositing/rtl/rtl-iframe-relative.html
14189 compositing/rtl/rtl-relative.html
14190
14191 * rendering/RenderLayerBacking.cpp:
14192 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
14193
14194 2011-06-24 Ryosuke Niwa <rniwa@webkit.org>
14195
14196 Reviewed by Enrica Casucci.
14197
14198 Add BeforeChildren and AfterChildren to the Position's anchor types
14199 https://bugs.webkit.org/show_bug.cgi?id=63100
14200
14201 Added PositionIsBeforeChildren and PositionIsAfterChildren to Position:: AnchorType and deployed them in
14202 firstPositionInNode and lastPositionInNode.
14203
14204 These new types of positions will let us express the first and the last positions in a non-text node in O(1).
14205
14206 No new tests because there is no new behavior or feature exposed.
14207
14208 * dom/Position.cpp:
14209 (WebCore::Position::Position): Assert that the anchor type is not Before Children and AfterChildren for text nodes.
14210 (WebCore::Position::containerNode): For BeforeChildren and AfterChildren , the anchor node is the container node.
14211 (WebCore::Position::computeOffsetInContainerNode): The offset in the con tainer node is 0 for BeforeChildren and
14212 the offset in the anchor node for AfterChildren.
14213 (WebCore::Position::offsetForPositionAfterAnchor): Called by deprecatedN ode; the anchor type could be AfterChildren.
14214 (WebCore::Position::parentAnchoredEquivalent): If the anchor node is bef ore or after children, then do the trick
14215 for table and ignored contents like before or after anchor.
14216 (WebCore::Position::computeNodeBeforePosition): Returns null for BeforeC hildren and returns the last child of
14217 the anchor node for AfterChildren.
14218 (WebCore::Position::computeNodeAfterPosition): Returns the first child o f the anchor node for BeforeChildren
14219 (WebCore::Position::atFirstEditingPositionForNode): A position is at the last editing position if the anchor type
14220 is BeforeChildren, or the anchor type is AfterChildren or AfterAnchor an d the anchor doesn't have any children.
14221 (WebCore::Position::atLastEditingPositionForNode): A position is at the last editing position if the anchor type
14222 is AfterChildren.
14223 (WebCore::Position::showAnchorTypeAndOffset): Supports BeforeChildren an d AfterChildren.
14224 * dom/Position.h:
14225 (WebCore::Position::deprecatedEditingOffset): Returns m_offset if the an chor type is BeforeChildren.
14226 (WebCore::firstPositionInNode): Returns a position in offset for a text node. Otherwise returns BeforeChildren.
14227 (WebCore::lastPositionInNode): Returns a position in offset for a text n ode. Otherwise returns AfterChildren.
14228 * editing/CompositeEditCommand.cpp:
14229 (WebCore::CompositeEditCommand::positionOutsideTabSpan): Since the ancho r node was a text node,
14230 the anchor type shouldn't be BeforeChildren or AfterChildren.
14231 * editing/DeleteSelectionCommand.cpp:
14232 (WebCore::updatePositionForNodeRemoval): Supports BeforeChildren and Aft erChildren.
14233 (WebCore::DeleteSelectionCommand::handleGeneralDelete): Calls updatePosi tionForNodeRemoval on m_downstremEnd
14234 when its anchor node is removed instead of manually updating the offset; also avoid calling moveToOffset
14235 on BeforeChildren or AfterChildren position.
14236 * editing/FormatBlockCommand.cpp:
14237 (WebCore::FormatBlockCommand::formatRange): Since lastParagraphInBlockNo de is used to insert a placeholder
14238 after paragraphs below the block is moved into, it needs to be the posit ion after the current last child in
14239 the block instead of after children in the block; otherwise the position will move to the end of block.
14240 * editing/VisiblePosition.cpp:
14241 (WebCore::VisiblePosition::characterAfter): Since the container node is never a text for position before/after
14242 children or before/after anchor, just return null for these anchor types .
14243
14244 2011-06-24 Dominic Cooney <dominicc@chromium.org>
14245
14246 Reviewed by Dimitri Glazkov.
14247
14248 Convert shadow DOM-related tests to use window.internals
14249 https://bugs.webkit.org/show_bug.cgi?id=61671
14250
14251 * WebCore.exp.in: Exports for symbols used by WebCoreTestSupport.
14252 * testing/Internals.cpp: The new home of shadowRoot and friends.
14253 (WebCore::Internals::ensureShadowRoot):
14254 (WebCore::Internals::shadowRoot):
14255 (WebCore::Internals::removeShadowRoot):
14256 (WebCore::Internals::shadowPseudoId):
14257 * testing/Internals.h:
14258 * testing/Internals.idl:
14259
14260 2011-06-24 Tony Chang <tony@chromium.org>
14261
14262 Reviewed by Darin Adler.
14263
14264 Refactor creation of primitive values in CSSParser
14265 https://bugs.webkit.org/show_bug.cgi?id=63270
14266
14267 Covered by existing tests.
14268
14269 * css/CSSParser.cpp:
14270 (WebCore::CSSParser::createPrimitiveNumericValue): Helper method for cre ating numeric values
14271 to keep the cast in one place.
14272 (WebCore::CSSParser::createPrimitiveStringValue): Helper method for crea ting string values.
14273 (WebCore::CSSParser::parseValidPrimitive):
14274 (WebCore::CSSParser::parseValue):
14275 (WebCore::CSSParser::parseWCSSInputProperty):
14276 (WebCore::CSSParser::parsePage):
14277 (WebCore::CSSParser::parseSizeParameter):
14278 (WebCore::CSSParser::parseContent):
14279 (WebCore::CSSParser::parseFillPositionX):
14280 (WebCore::CSSParser::parseFillPositionY):
14281 (WebCore::CSSParser::parseFillPositionComponent):
14282 (WebCore::CSSParser::parseFillSize):
14283 (WebCore::CSSParser::parseAnimationDelay):
14284 (WebCore::CSSParser::parseAnimationDuration):
14285 (WebCore::CSSParser::parseAnimationIterationCount):
14286 (WebCore::CSSParser::parseAnimationName):
14287 (WebCore::CSSParser::parseTransformOriginShorthand):
14288 (WebCore::CSSParser::parseDashboardRegions):
14289 (WebCore::CSSParser::parseCounterContent):
14290 (WebCore::CSSParser::parseShape):
14291 (WebCore::CSSParser::parseFont):
14292 (WebCore::CSSParser::parseReflect):
14293 (WebCore::CSSParser::parseBorderRadius):
14294 (WebCore::CSSParser::parseCounter):
14295 (WebCore::CSSParser::parseDeprecatedGradient):
14296 (WebCore::CSSParser::parseLinearGradient):
14297 (WebCore::CSSParser::parseRadialGradient):
14298 (WebCore::CSSParser::parseGradientColorStops):
14299 (WebCore::CSSParser::parseTransform):
14300 (WebCore::CSSParser::parseTransformOrigin):
14301 (WebCore::CSSParser::parseTextEmphasisStyle):
14302 * css/CSSParser.h:
14303 * css/CSSPrimitiveValueCache.h:
14304 (WebCore::CSSPrimitiveValueCache::createValue): pass String by const ref erence
14305
14306 2011-06-24 Carlos Garcia Campos <cgarcia@igalia.com>
14307
14308 Reviewed by Martin Robinson.
14309
14310 [GTK] Fix runtime critical warnings in WebKit2
14311 https://bugs.webkit.org/show_bug.cgi?id=63256
14312
14313 Check whether there's a view widget before trying to use it in
14314 PlatformScreenGtk. If there isn't a view widget, which is the case
14315 in WebKit2, try to use the default GdkScreen and monitor.
14316
14317 * platform/gtk/PlatformScreenGtk.cpp:
14318 (WebCore::getToplevel): Helper function to get the toplevel
14319 widget.
14320 (WebCore::getVisual): Use getToplevel().
14321 (WebCore::getScreen): Helper funtion to get the screen of a
14322 widget.
14323 (WebCore::screenRect): Use getToplevel() and getScreen().
14324
14325 2011-06-24 Yuta Kitamura <yutak@chromium.org>
14326
14327 Reviewed by Adam Barth.
14328
14329 WebSocket: Add run-time flag for new HyBi protocol
14330 https://bugs.webkit.org/show_bug.cgi?id=60348
14331
14332 Add a flag in Setting so that WebSocket protocols can be switched
14333 dynamically. The protocol we have implemented so far is based on
14334 older Hixie-76 specification. A new protocol is being discussed in
14335 IETF HyBi working group, and I'm planning to implement the new protocol
14336 behind this Settings flag.
14337
14338 I will add a method to LayoutTestController which flips this flag in
14339 a later patch. In this way, we can put tests for both protocols in
14340 the same place and test implementation for both protocols at the same ti me.
14341
14342 This patch only adds a flag. The flag is not used yet, thus there is
14343 no change in functionality. Therefore, no tests were added.
14344
14345 * page/Settings.cpp:
14346 (WebCore::Settings::Settings):
14347 * page/Settings.h:
14348 (WebCore::Settings::setUseHixie76WebSocketProtocol):
14349 (WebCore::Settings::useHixie76WebSocketProtocol):
14350
14351 2011-06-23 Mikhail Naganov <mnaganov@chromium.org>
14352
14353 Reviewed by Pavel Feldman.
14354
14355 Web Inspector: [Chromium] Shorten DOMWindow URLs in heap profiles.
14356 https://bugs.webkit.org/show_bug.cgi?id=63238
14357
14358 * inspector/front-end/DetailedHeapshotGridNodes.js:
14359 (WebInspector.HeapSnapshotGridNode.prototype.hasHoverMessage.false.hover Message):
14360 (WebInspector.HeapSnapshotGenericObjectNode):
14361 (WebInspector.HeapSnapshotGenericObjectNode.prototype.hoverMessage):
14362 (WebInspector.HeapSnapshotGenericObjectNode.prototype._updateHasChildren ):
14363 (WebInspector.HeapSnapshotGenericObjectNode.prototype.isDOMWindow):
14364 (WebInspector.HeapSnapshotGenericObjectNode.prototype.shortenWindowURL):
14365 * inspector/front-end/DetailedHeapshotView.js:
14366 (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext.pathFoun d):
14367 (WebInspector.DetailedHeapshotView.prototype._getHoverAnchor):
14368 (WebInspector.DetailedHeapshotView.prototype._showStringContentPopup.dis playString):
14369 (WebInspector.DetailedHeapshotView.prototype._showStringContentPopup):
14370 * inspector/front-end/utilities.js:
14371 ():
14372
14373 2011-06-24 Vsevolod Vlasov <vsevik@chromium.org>
14374
14375 Reviewed by Pavel Feldman.
14376
14377 Web Inspector: HTML preview should delete old iframe on show().
14378 https://bugs.webkit.org/show_bug.cgi?id=63170
14379
14380 * inspector/front-end/ResourceHTMLView.js:
14381 (WebInspector.ResourceHTMLView.prototype._createIFrame):
14382 * inspector/front-end/ResourcePreviewView.js:
14383 (WebInspector.ResourcePreviewView.prototype.contentLoaded):
14384
14385 2011-06-24 Dirk Schulze <krit@webkit.org>
14386
14387 Reviewed by Nikolas Zimmermann.
14388
14389 Convert AnimatedString to SVGAnimatorFactory concept
14390 https://bugs.webkit.org/show_bug.cgi?id=63296
14391
14392 Follow up of "SVGAnimation should use direct unit animation for SVGLengt h": https://bugs.webkit.org/show_bug.cgi?id=61368
14393 This patch continues the conversion to the new concept of SVGAnimatorFac tory with SVGString.
14394
14395 No new tests added. No change of functionality.
14396
14397 * CMakeLists.txt: Added new file to build system.
14398 * GNUmakefile.list.am: Ditto.
14399 * WebCore.gypi: Ditto.
14400 * WebCore.pro: Ditto.
14401 * WebCore.xcodeproj/project.pbxproj: Ditto.
14402 * svg/SVGAllInOne.cpp: Ditto.
14403 * svg/SVGAnimateElement.cpp:
14404 (WebCore::SVGAnimateElement::calculateAnimatedValue):
14405 (WebCore::SVGAnimateElement::calculateFromAndToValues):
14406 (WebCore::SVGAnimateElement::calculateFromAndByValues):
14407 (WebCore::SVGAnimateElement::resetToBaseValue):
14408 (WebCore::SVGAnimateElement::applyResultsToTarget):
14409 (WebCore::SVGAnimateElement::calculateDistance):
14410 * svg/SVGAnimateElement.h:
14411 * svg/SVGAnimatedString.cpp: Added. Animator for SVGString.
14412 (WebCore::SVGAnimatedStringAnimator::SVGAnimatedStringAnimator):
14413 (WebCore::SVGAnimatedStringAnimator::constructFromString):
14414 (WebCore::SVGAnimatedStringAnimator::calculateFromAndToValues):
14415 (WebCore::SVGAnimatedStringAnimator::calculateFromAndByValues):
14416 (WebCore::SVGAnimatedStringAnimator::calculateAnimatedValue):
14417 (WebCore::SVGAnimatedStringAnimator::calculateDistance):
14418 * svg/SVGAnimatedString.h:
14419 (WebCore::SVGAnimatedStringAnimator::~SVGAnimatedStringAnimator):
14420 * svg/SVGAnimatedType.cpp:
14421 (WebCore::SVGAnimatedType::~SVGAnimatedType):
14422 (WebCore::SVGAnimatedType::createString):
14423 (WebCore::SVGAnimatedType::string):
14424 (WebCore::SVGAnimatedType::valueAsString):
14425 (WebCore::SVGAnimatedType::setValueAsString):
14426 * svg/SVGAnimatedType.h:
14427 * svg/SVGAnimatorFactory.h:
14428 (WebCore::SVGAnimatorFactory::create):
14429
14430 2011-06-24 Mario Sanchez Prada <msanchez@igalia.com>
14431
14432 Reviewed by Chris Fleizach.
14433
14434 [GTK] Consider rows being ignored when adding children to tables
14435 https://bugs.webkit.org/show_bug.cgi?id=62718
14436
14437 Hide row objects in tables in GTK's accessibility wrapper.
14438
14439 This is a different approach in the way WebCore's accessible
14440 rows are exposed to assistive technologies in the GTK port,
14441 since from now on those objects are kept in WebCore (they do not
14442 declare to ignore accessibility) and just bypassed in the mapping
14443 to ATK, allowing to hide them in the ATK hierarchy while, at the
14444 same time, keeping them internally to be able to provide enough
14445 information to determine tables related information, such as rows
14446 counting or finding an cell for specific coordinates.
14447
14448 * accessibility/gtk/AccessibilityObjectAtk.cpp:
14449 (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
14450 Do not ignore accessibility for table rows here.
14451
14452 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
14453 (webkit_accessible_get_parent): Bypass rows when needed.
14454 (getNChildrenForTable): New, find the number of children for a
14455 table, which will be the addition of all cells for its rows.
14456 (webkit_accessible_get_n_children): Call to getNChildrenForTable
14457 for accessibility tables if needed.
14458 (getChildForTable): New, bypass rows when needed, retrieving
14459 cells as if they were direct children for tables.
14460 (webkit_accessible_ref_child): Call to refChildForTable if needed.
14461 (getIndexInParentForCellInRow): New, get the index for a given
14462 cell in its parent table, considering other rows' cells.
14463 (webkit_accessible_get_index_in_parent): Call to
14464 getIndexInParentForCellInRow if needed.
14465
14466 2011-06-24 Andrey Kosyakov <caseq@chromium.org>
14467
14468 Reviewed by Yury Semikhatsky.
14469
14470 Web Inspector: extension panel iframes do not span entire panel client a rea
14471 https://bugs.webkit.org/show_bug.cgi?id=63165
14472
14473 * inspector/front-end/ExtensionServer.js:
14474 (WebInspector.ExtensionServer.prototype._onCreatePanel):
14475 (WebInspector.ExtensionServer.prototype.createClientIframe):
14476 * inspector/front-end/inspector.css:
14477 (iframe.extension):
14478 (iframe.panel.extension):
14479
14480 2011-06-24 David Grogan <dgrogan@chromium.org>
14481
14482 Reviewed by Pavel Feldman.
14483
14484 Web Inspector: [REGRESSION r86838] line numbers do not scroll when scrip t paused
14485 https://bugs.webkit.org/show_bug.cgi?id=61653
14486
14487 roll out r86838
14488
14489 No new tests - refactoring.
14490
14491 * dom/Document.h:
14492 * dom/EventQueue.cpp:
14493 (WebCore::EventQueueTimer::EventQueueTimer):
14494 (WebCore::EventQueueTimer::fired):
14495 (WebCore::EventQueue::create):
14496 (WebCore::EventQueue::EventQueue):
14497 (WebCore::EventQueue::~EventQueue):
14498 (WebCore::EventQueue::enqueueEvent):
14499 (WebCore::EventQueue::cancelEvent):
14500 (WebCore::EventQueue::cancelQueuedEvents):
14501 (WebCore::EventQueue::pendingEventTimerFired):
14502 (WebCore::EventQueue::dispatchEvent):
14503 * dom/EventQueue.h:
14504
14505 2011-06-24 Sheriff Bot <webkit.review.bot@gmail.com>
14506
14507 Unreviewed, rolling out r89594.
14508 http://trac.webkit.org/changeset/89594
14509 https://bugs.webkit.org/show_bug.cgi?id=63316
14510
14511 It broke 5 tests on the Qt bot (Requested by Ossy_DC on
14512 #webkit).
14513
14514 * WebCore.exp.in:
14515 * icu/unicode/uscript.h:
14516 * page/Settings.cpp:
14517 (WebCore::Settings::setStandardFontFamily):
14518 (WebCore::Settings::setFixedFontFamily):
14519 (WebCore::Settings::setSerifFontFamily):
14520 (WebCore::Settings::setSansSerifFontFamily):
14521 (WebCore::Settings::setCursiveFontFamily):
14522 (WebCore::Settings::setFantasyFontFamily):
14523 * page/Settings.h:
14524 (WebCore::Settings::standardFontFamily):
14525 (WebCore::Settings::fixedFontFamily):
14526 (WebCore::Settings::serifFontFamily):
14527 (WebCore::Settings::sansSerifFontFamily):
14528 (WebCore::Settings::cursiveFontFamily):
14529 (WebCore::Settings::fantasyFontFamily):
14530
14531 2011-06-23 Tony Chang <tony@chromium.org>
14532
14533 Reviewed by Kent Tamura.
14534
14535 Pass Strings by const reference in bindings code
14536 https://bugs.webkit.org/show_bug.cgi?id=63302
14537
14538 Note that since Strings hold a RefPtr to StringImpl, passing Strings
14539 by value isn't horrible, but it does cause ref count churn and using
14540 const references is more consistent with the rest of the code base.
14541
14542 * bindings/generic/BindingSecurity.h:
14543 (WebCore::::allowSettingFrameSrcToJavascriptUrl):
14544 (WebCore::::allowSettingSrcToJavascriptURL):
14545 * bindings/js/SerializedScriptValue.cpp:
14546 (WebCore::CloneSerializer::serialize):
14547 (WebCore::SerializedScriptValue::create):
14548 * bindings/js/SerializedScriptValue.h:
14549 * bindings/v8/SerializedScriptValue.cpp:
14550 (WebCore::SerializedScriptValue::createFromWire):
14551 (WebCore::SerializedScriptValue::create):
14552 (WebCore::SerializedScriptValue::SerializedScriptValue):
14553 * bindings/v8/SerializedScriptValue.h:
14554 * bindings/v8/V8Binding.h:
14555 (WebCore::V8ParameterBase::setString):
14556
14557 2011-06-23 Yury Semikhatsky <yurys@chromium.org>
14558
14559 Reviewed by Pavel Feldman.
14560
14561 [Chromium] Web Inspector: provide context menu item for enabling native worker inspection
14562 https://bugs.webkit.org/show_bug.cgi?id=63258
14563
14564 Added context menu checkbox item that allows to enable inspection of
14565 native workers. The value will be persisted as other inspector settings
14566 and will be restored after frontend/breowser reopening.
14567
14568 * inspector/Inspector.json:
14569 * inspector/InspectorController.cpp:
14570 (WebCore::InspectorController::restoreInspectorStateFromCookie):
14571 * inspector/InspectorInstrumentation.h:
14572 (WebCore::InspectorInstrumentation::didStartWorkerContext):
14573 * inspector/InspectorWorkerAgent.cpp:
14574 (WebCore::InspectorWorkerAgent::setFrontend):
14575 (WebCore::InspectorWorkerAgent::restore):
14576 (WebCore::InspectorWorkerAgent::setWorkerInspectionEnabled):
14577 * inspector/InspectorWorkerAgent.h:
14578 * inspector/front-end/ScriptsPanel.js:
14579 (WebInspector.ScriptsPanel):
14580 (WebInspector.ScriptsPanel.prototype.reset):
14581 (WebInspector.ScriptsPanel.prototype._toggleFormatSourceFiles):
14582 (WebInspector.ScriptsPanel.prototype._contextMenu.enableWorkerInspection ):
14583 (WebInspector.ScriptsPanel.prototype._contextMenu):
14584 * inspector/front-end/Settings.js:
14585 (WebInspector.Settings):
14586 * inspector/front-end/inspector.js:
14587 (WebInspector.didCreateWorker):
14588 (WebInspector.didDestroyWorker):
14589 * workers/Worker.cpp:
14590 (WebCore::Worker::notifyFinished):
14591
14592 2011-06-23 Simon Fraser <simon.fraser@apple.com>
14593
14594 Reviewed by Dan Bernstein.
14595
14596 Need to turn off default animations for anchorPointZ in PlatformCALayer
14597 https://bugs.webkit.org/show_bug.cgi?id=63159
14598
14599 When the z-component of transform-origin changed, we ran an implicit
14600 animation of anchorPointZ on the CALayer. Turn this off.
14601
14602 Test: transforms/3d/general/transform-origin-z-change.html
14603
14604 * platform/graphics/ca/mac/PlatformCALayerMac.mm:
14605 (nullActionsDictionary):
14606
14607 2011-06-23 Zhenyao Mo <zmo@google.com>
14608
14609 Reviewed by Kenneth Russell.
14610
14611 Limit WebGL internal drawingBuffer size to 4k x 4k
14612 https://bugs.webkit.org/show_bug.cgi?id=63304
14613
14614 * html/canvas/WebGLRenderingContext.cpp:
14615 (WebCore::WebGLRenderingContext::reshape): Limit drawing buffer size to 4k x 4k.
14616
14617 2011-06-20 MORITA Hajime <morrita@google.com>
14618
14619 Reviewed by Dimitri Glazkov.
14620
14621 [ShadowContentElement] should layout child whitespace between span.
14622 https://bugs.webkit.org/show_bug.cgi?id=62202
14623
14624 NodeRenderingContext::nextRenderer() and previousRenderer()
14625 ignored forwarded content tree hierarchies and used render-object
14626 hierarchies instead, that caused some wrong Text node rendering.
14627
14628 This change uses ShadowContentElement::m_inclusions for the lookup.
14629 In this way, these methods can reflect hierarchies of forward light tree .
14630
14631 * dom/NodeRenderingContext.cpp:
14632 (WebCore::NodeRenderingContext::NodeRenderingContext):
14633 (WebCore::nextRendererOf): Added. This traverses content element's child ren for searching neighboring renderer.
14634 (WebCore::previousRendererOf): Added. This traverses content element's c hildren for searching neighboring renderer.
14635 (WebCore::NodeRenderingContext::nextRenderer):
14636 (WebCore::NodeRenderingContext::previousRenderer):
14637 * dom/NodeRenderingContext.h:
14638 * dom/ShadowContentElement.h:
14639 (ShadowContentElement::inclusionIndexOf): Added.
14640 * dom/ShadowContentSelector.cpp:
14641 (WebCore::ShadowContentSelector::activeElement):
14642 * dom/ShadowContentSelector.h:
14643 * dom/ShadowRoot.cpp:
14644 (WebCore::ShadowRoot::activeContentElement):
14645 * dom/ShadowRoot.h:
14646 * rendering/RenderTreeAsText.cpp:
14647 (WebCore::externalRepresentation): Fixed an apparent bug introduced at r 89230.
14648
14649 2011-05-25 James Robinson <jamesr@chromium.org>
14650
14651 Reviewed by Kenneth Russell.
14652
14653 [chromium] Fix ownership of PlatformImage for ImageLayerChromiums
14654 https://bugs.webkit.org/show_bug.cgi?id=61099
14655
14656 For a composited image, both the ImageLayerChromium and its associated L ayerTilerChromium need access to a
14657 PlatformImage - the ImageLayerChromium has to update the PlatformImage's contents and the LayerTilerChromium has
14658 to upload pixels from it. This patch makes the ImageLayerTextureUpdater have exclusive ownership of the
14659 PlatformImage and moves ownership of the LayerTextureUpdater from the La yerTilerChromium to the owner of the
14660 tiler. The updater is passed in as a parameter to the relevant tiler ca lls.
14661
14662 Patch also fixes a number of minor style issues (missing explicit keywor d on constructor, etc).
14663
14664 Refactor only, no new tests.
14665
14666 * platform/graphics/chromium/ContentLayerChromium.cpp:
14667 (WebCore::ContentLayerPainter::create):
14668 (WebCore::ContentLayerPainter::ContentLayerPainter):
14669 (WebCore::ContentLayerChromium::paintContentsIfDirty):
14670 (WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):
14671 (WebCore::ContentLayerChromium::draw):
14672 (WebCore::ContentLayerChromium::createTilerIfNeeded):
14673 (WebCore::ContentLayerChromium::updateCompositorResources):
14674 * platform/graphics/chromium/ContentLayerChromium.h:
14675 * platform/graphics/chromium/ImageLayerChromium.cpp:
14676 (WebCore::ImageLayerTextureUpdater::create):
14677 (WebCore::ImageLayerTextureUpdater::updateFromImage):
14678 (WebCore::ImageLayerTextureUpdater::imageSize):
14679 (WebCore::ImageLayerTextureUpdater::ImageLayerTextureUpdater):
14680 (WebCore::ImageLayerChromium::~ImageLayerChromium):
14681 (WebCore::ImageLayerChromium::paintContentsIfDirty):
14682 (WebCore::ImageLayerChromium::updateCompositorResources):
14683 (WebCore::ImageLayerChromium::setLayerRenderer):
14684 (WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
14685 (WebCore::ImageLayerChromium::layerBounds):
14686 * platform/graphics/chromium/ImageLayerChromium.h:
14687 * platform/graphics/chromium/LayerRendererChromium.cpp:
14688 (WebCore::LayerRendererChromium::LayerRendererChromium):
14689 (WebCore::LayerRendererChromium::updateRootLayerContents):
14690 (WebCore::LayerRendererChromium::drawRootLayer):
14691 (WebCore::LayerRendererChromium::updateLayers):
14692 * platform/graphics/chromium/LayerRendererChromium.h:
14693 * platform/graphics/chromium/LayerTextureUpdater.h:
14694 (WebCore::LayerTextureUpdater::LayerTextureUpdater):
14695 * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
14696 (WebCore::LayerTextureUpdaterBitmap::create):
14697 (WebCore::LayerTextureUpdaterSkPicture::create):
14698 * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
14699 * platform/graphics/chromium/LayerTilerChromium.cpp:
14700 (WebCore::LayerTilerChromium::create):
14701 (WebCore::LayerTilerChromium::LayerTilerChromium):
14702 (WebCore::LayerTilerChromium::prepareToUpdate):
14703 (WebCore::LayerTilerChromium::updateRect):
14704 (WebCore::LayerTilerChromium::draw):
14705 * platform/graphics/chromium/LayerTilerChromium.h:
14706
14707 2011-06-23 Adrienne Walker <enne@google.com>
14708
14709 Unreviewed, rolling out r89632 and r89640.
14710 http://trac.webkit.org/changeset/89632
14711 http://trac.webkit.org/changeset/89640
14712 https://bugs.webkit.org/show_bug.cgi?id=60741
14713
14714 Breaks ancestor-overflow-change unexpectedly
14715
14716 * rendering/RenderLayerBacking.cpp:
14717 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
14718
22 2011-06-23 John Bates <jbates@google.com> 14719 2011-06-23 John Bates <jbates@google.com>
23 14720
24 Reviewed by James Robinson. 14721 Reviewed by James Robinson.
25 14722
26 Fix latch deadlock when GPU process crashes or context is lost. 14723 Fix latch deadlock when GPU process crashes or context is lost.
27 https://bugs.webkit.org/show_bug.cgi?id=63189 14724 https://bugs.webkit.org/show_bug.cgi?id=63189
28 The main bug fix is to only set/wait latches if the child context has no errors. 14725 The main bug fix is to only set/wait latches if the child context has no errors.
29 Additionally, the LayerChromium classes needed to be modified to not con tinue drawing when 14726 Additionally, the LayerChromium classes needed to be modified to not con tinue drawing when
30 their corresponding contexts have errors. Otherwise, they would draw wit h invalid texture ids. 14727 their corresponding contexts have errors. Otherwise, they would draw wit h invalid texture ids.
31 14728
(...skipping 14725 matching lines...) Expand 10 before | Expand all | Expand 10 after
14757 fast/viewport/viewport-45.html fails in GTK+/Qt 29454 fast/viewport/viewport-45.html fails in GTK+/Qt
14758 https://bugs.webkit.org/show_bug.cgi?id=47481 29455 https://bugs.webkit.org/show_bug.cgi?id=47481
14759 29456
14760 computeViewportAttributes does many math operations with float point ari thmetic 29457 computeViewportAttributes does many math operations with float point ari thmetic
14761 and in some cases there is loss of precision making tests have incorrect values. 29458 and in some cases there is loss of precision making tests have incorrect values.
14762 29459
14763 * dom/ViewportArguments.cpp: 29460 * dom/ViewportArguments.cpp:
14764 (WebCore::computeViewportAttributes): 29461 (WebCore::computeViewportAttributes):
14765 29462
14766 == Rolled over to ChangeLog-2011-06-04 == 29463 == Rolled over to ChangeLog-2011-06-04 ==
OLDNEW
« no previous file with comments | « LayoutTests/platform/chromium/test_expectations.txt ('k') | Source/WebCore/css/html.css » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698