1 2006-11-13 Justin Garcia <justin.garcia@apple.com>
5 <rdar://problem/4828264>
6 In Mail, a crash occurs at WebCore::Selection::toRange() when selecting this web content (http://www.cnet.com/)
8 The start of the selection is in an editable area, and the end is in an
9 input field inside that editable area. The code that should pull the end
10 of such a selection outside the input field didn't escape shadow nodes,
11 it would leave a dangling end, causing the crash in toRange.
13 * editing/Selection.cpp:
14 (WebCore::Selection::adjustForEditableContent): Added an ASSERT and a fixup
15 to prevent crashes like this in future Release builds.
16 * editing/htmlediting.cpp:
17 (WebCore::firstEditablePositionAfterPositionInRoot): Let this function
18 escape shadow nodes. We might eventually push this code down into
19 next/previous{VisuallyDistinct}Canditate.
20 (WebCore::lastEditablePositionBeforePositionInRoot): Ditto.
22 2006-11-13 Justin Garcia <justin.garcia@apple.com>
26 * editing/DeleteSelectionCommand.cpp:
27 (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor):
29 (WebCore::Editor::appliedEditing):
31 (WebCore::Editor::setRemovedAnchor): Pass a PassRefPtr.
33 2006-11-10 Justin Garcia <justin.garcia@apple.com>
37 <rdar://problem/4820026>
38 copy/paste of news.google.com yields text from hidden select element options
40 We were adding descendants of unrendered select elements.
43 (WebCore::createMarkup): Don't traverse into nodes without renderers, unless
44 they are grandfathered in by a rendered select element.
46 2006-11-12 Simon Hausmann <hausmann@kde.org>
48 Reviewed by Sam Weinig.
50 Fix Qt build. Missing AbstractShared implementation.
51 http://bugs.webkit.org/show_bug.cgi?id=11581
53 * loader/qt/FrameLoaderClientQt.cpp:
54 (WebCore::FrameLoaderClientQt::ref):
55 (WebCore::FrameLoaderClientQt::deref):
56 * loader/qt/FrameLoaderClientQt.h:
57 * platform/qt/ChromeClientQt.cpp:
58 (WebCore::ChromeClientQt::ref):
59 (WebCore::ChromeClientQt::deref):
60 * platform/qt/ChromeClientQt.h:
61 * platform/qt/EditorClientQt.cpp:
62 (WebCore::EditorClientQt::ref):
63 (WebCore::EditorClientQt::deref):
64 * platform/qt/EditorClientQt.h:
66 2006-11-13 Mark Rowe <bdash@webkit.org>
70 Fix some Linux/Gdk build issues noted by Alp Toker.
72 * Projects/gdk/webcore-gdk.bkl:
74 * platform/graphics/gdk/ImageGdk.cpp:
75 (WebCore::Image::loadPlatformResource):
77 2006-11-12 Brady Eidson <beidson@apple.com>
81 Logging channel plumbing for future work
83 * platform/Logging.cpp:
86 * platform/mac/LoggingMac.mm:
87 (WebCore::InitializeLoggingChannelsIfNecessary):
89 2006-11-12 Mark Rowe <bdash@webkit.org>
93 Linux/Gdk compilation fixes, and bakefile cleanups. Based on patches by
96 * Projects/gdk/webcore-gdk.bkl:
99 * platform/gdk/ChromeClientGdk.h:
100 (WebCore::ChromeClientGdk::ref):
101 (WebCore::ChromeClientGdk::deref):
102 * platform/gdk/FrameGdk.cpp:
103 (WebCore::FrameGdkClientDefault::openURL):
104 (WebCore::FrameGdkClientDefault::didReceiveData):
105 (WebCore::FrameGdkClientDefault::receivedAllData):
106 (WebCore::FrameGdk::FrameGdk):
107 (WebCore::FrameGdk::~FrameGdk):
108 * platform/gdk/FrameGdk.h:
109 * platform/gdk/KeyEventGdk.cpp:
110 (WebCore::keyIdentifierForGdkKeyCode):
111 * platform/gdk/ScreenClientGdk.h: Removed.
112 * platform/gdk/TemporaryLinkStubs.cpp:
113 (FrameGdk::canPaste):
114 (FrameGdk::originalRequestURL):
115 (TextField::TextField):
116 * platform/network/gdk/ResourceHandleManager.cpp:
117 (WebCore::ResourceHandleManager::downloadTimerCallback):
118 (WebCore::ResourceHandleManager::add):
119 (WebCore::ResourceHandleManager::cancel):
122 2006-11-11 Geoffrey Garen <ggaren@apple.com>
124 Reviewed by Maciej Stachowiak.
126 - Fixed loader crash by clarifying ownership of WebKit client objects.
127 WebCore objects own their WebKit clients, and ref and deref through
128 virtual methods, leaving WebKit free to use whatever client / reference-counting
129 implementation it likes.
132 * WebCore.xcodeproj/project.pbxproj:
133 * bridge/EditorClient.h: Fixed up function prototypes for style.
134 * loader/FrameLoader.cpp: Removed detachFrameLoader, since its real purpose
135 was to implement an alternative ownership model.
136 (WebCore::FrameLoader::~FrameLoader): Removed empty destructor.
137 (WebCore::FrameLoader::setClient): This function now takes ownership
138 (WebCore::FrameLoader::client):
139 * loader/FrameLoader.h:
140 * loader/FrameLoaderClient.h:
141 * page/ChromeClient.h:
142 * platform/AbstractShared.h: Added. This is the virtual function-based refcounting
143 complement to Shared.
144 (WebCore::AbstractShared::~AbstractShared):
146 2006-11-11 George Staikos <staikos@kde.org>
150 Fix uninitialized variable.
152 * rendering/RenderStyle.h:
154 2006-11-11 Nikolas Zimmermann <zimmermann@kde.org>
156 Reviewed/landed by Adam.
158 Complete cleanup of the CMakeLists.txt.
159 Now all files to be built are sorted in alphabetic order.
161 General style cleanup, remove all tabs etc.
165 2006-11-11 Geoffrey Garen <ggaren@apple.com>
167 Reviewed by Maciej Stachowiak.
169 Added missing initializer to ResourceRequest -- fixes some loader crashes
170 due to assuming a request always has a non-null httpMethod.
172 * platform/network/ResourceRequest.h:
173 (WebCore::ResourceRequest::ResourceRequest):
175 2006-11-11 Brady Eidson <beidson@apple.com>
181 * loader/FrameLoaderClient.h:
183 2006-11-11 Darin Adler <darin@apple.com>
185 - attempt to fix Qt build
187 * platform/qt/CursorQt.cpp:
188 (WebCore::verticalTextCursor): Added. Just returns pointer cursor.
189 (WebCore::cellCursor): Ditto.
190 (WebCore::contextMenuCursor): Ditto.
192 2006-11-11 Rob Buis <buis@kde.org>
196 http://bugs.webkit.org/show_bug.cgi?id=10893
197 InsertRule can not handle @import statements
199 Allow @import as part of a css rule.
202 * css/CSSImportRule.cpp:
203 (WebCore::CSSImportRule::insertedIntoParent):
204 * css/CSSStyleSheet.cpp:
205 (WebCore::CSSStyleSheet::CSSStyleSheet):
206 (WebCore::CSSStyleSheet::checkLoaded):
207 * css/CSSStyleSheet.h:
208 (WebCore::CSSStyleSheet::loadCompleted):
210 2006-11-11 Alexey Proskuryakov <ap@webkit.org>
212 Attempt to fix Qt build.
214 * CMakeLists.txt: PathQt.cpp is in graphics/qt now.
216 2006-11-11 Lars Naesbye Christensen <larsnaesbye@stud.ku.dk>
218 Tortured by Sam Weinig, Tim H., Maciej, Mitz and Alexey :-)
220 [CSS 3] support for vertical-text, cell and context-menu cursors
221 http://bugs.webkit.org/show_bug.cgi?id=11494
223 * Resources/cellCursor.png: Added.
224 * Resources/contextMenuCursor.png: Added.
225 * Resources/verticalTextCursor.png: Added.
226 * WebCore.xcodeproj/project.pbxproj:
227 * css/CSSComputedStyleDeclaration.cpp:
228 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
229 * css/CSSValueKeywords.in:
230 * manual-tests/cursor.html:
231 * page/FrameView.cpp:
232 (WebCore::selectCursor):
234 * platform/mac/CursorMac.mm:
235 (WebCore::verticalTextCursor):
236 (WebCore::cellCursor):
237 (WebCore::contextMenuCursor):
238 * rendering/RenderStyle.h:
241 2006-11-11 Nikolas Zimmermann <zimmermann@kde.org>
243 Reviewed by aroben and ap, landed by ap.
245 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11468
247 Group graphics related files in platform/graphics.
248 Move certain files from certain subdirectories
249 into platform/graphics/{win,mac,cg,gdk,qt}
252 * WebCore.xcodeproj/project.pbxproj:
253 * platform/AffineTransform.cpp: Removed.
254 * platform/AffineTransform.h: Removed.
255 * platform/Color.cpp: Removed.
256 * platform/Color.h: Removed.
257 * platform/FloatPoint.cpp: Removed.
258 * platform/FloatPoint.h: Removed.
259 * platform/FloatRect.cpp: Removed.
260 * platform/FloatRect.h: Removed.
261 * platform/FloatSize.cpp: Removed.
262 * platform/FloatSize.h: Removed.
263 * platform/Icon.h: Removed.
264 * platform/Image.cpp: Removed.
265 * platform/Image.h: Removed.
266 * platform/ImageSource.h: Removed.
267 * platform/IntPoint.h: Removed.
268 * platform/IntRect.cpp: Removed.
269 * platform/IntRect.h: Removed.
270 * platform/IntSize.h: Removed.
271 * platform/IntSizeHash.h: Removed.
272 * platform/Path.cpp: Removed.
273 * platform/Path.h: Removed.
274 * platform/Pen.cpp: Removed.
275 * platform/Pen.h: Removed.
276 * platform/cairo/AffineTransformCairo.cpp: Removed.
277 * platform/cairo/GraphicsContextCairo.cpp: Removed.
278 * platform/cairo/ImageCairo.cpp: Removed.
279 * platform/cairo/ImageSourceCairo.cpp: Removed.
280 * platform/cairo/cairo/AUTHORS: Removed.
281 * platform/cairo/cairo/COPYING: Removed.
282 * platform/cairo/cairo/COPYING-LGPL-2.1: Removed.
283 * platform/cairo/cairo/COPYING-MPL-1.1: Removed.
284 * platform/cairo/cairo/INSTALL: Removed.
285 * platform/cairo/cairo/NEWS: Removed.
286 * platform/cairo/cairo/README: Removed.
287 * platform/cairo/cairo/TODO: Removed.
288 * platform/cairo/cairo/src/Makefile.in: Removed.
289 * platform/cairo/cairo/src/cairo-arc-private.h: Removed.
290 * platform/cairo/cairo/src/cairo-arc.c: Removed.
291 * platform/cairo/cairo/src/cairo-array.c: Removed.
292 * platform/cairo/cairo/src/cairo-atsui-font.c: Removed.
293 * platform/cairo/cairo/src/cairo-atsui.h: Removed.
294 * platform/cairo/cairo/src/cairo-beos-surface.cpp: Removed.
295 * platform/cairo/cairo/src/cairo-beos.h: Removed.
296 * platform/cairo/cairo/src/cairo-cache-private.h: Removed.
297 * platform/cairo/cairo/src/cairo-cache.c: Removed.
298 * platform/cairo/cairo/src/cairo-clip-private.h: Removed.
299 * platform/cairo/cairo/src/cairo-clip.c: Removed.
300 * platform/cairo/cairo/src/cairo-color.c: Removed.
301 * platform/cairo/cairo/src/cairo-debug.c: Removed.
302 * platform/cairo/cairo/src/cairo-debug.h: Removed.
303 * platform/cairo/cairo/src/cairo-directfb-surface.c: Removed.
304 * platform/cairo/cairo/src/cairo-directfb.h: Removed.
305 * platform/cairo/cairo/src/cairo-features.h: Removed.
306 * platform/cairo/cairo/src/cairo-features.h.in: Removed.
307 * platform/cairo/cairo/src/cairo-fixed.c: Removed.
308 * platform/cairo/cairo/src/cairo-font-options.c: Removed.
309 * platform/cairo/cairo/src/cairo-font-subset-private.h: Removed.
310 * platform/cairo/cairo/src/cairo-font-subset.c: Removed.
311 * platform/cairo/cairo/src/cairo-font.c: Removed.
312 * platform/cairo/cairo/src/cairo-ft-font.c: Removed.
313 * platform/cairo/cairo/src/cairo-ft-private.h: Removed.
314 * platform/cairo/cairo/src/cairo-ft.h: Removed.
315 * platform/cairo/cairo/src/cairo-glitz-surface.c: Removed.
316 * platform/cairo/cairo/src/cairo-glitz.h: Removed.
317 * platform/cairo/cairo/src/cairo-gstate-private.h: Removed.
318 * platform/cairo/cairo/src/cairo-gstate.c: Removed.
319 * platform/cairo/cairo/src/cairo-hash-private.h: Removed.
320 * platform/cairo/cairo/src/cairo-hash.c: Removed.
321 * platform/cairo/cairo/src/cairo-hull.c: Removed.
322 * platform/cairo/cairo/src/cairo-image-surface.c: Removed.
323 * platform/cairo/cairo/src/cairo-matrix.c: Removed.
324 * platform/cairo/cairo/src/cairo-meta-surface-private.h: Removed.
325 * platform/cairo/cairo/src/cairo-meta-surface.c: Removed.
326 * platform/cairo/cairo/src/cairo-output-stream.c: Removed.
327 * platform/cairo/cairo/src/cairo-paginated-surface-private.h: Removed.
328 * platform/cairo/cairo/src/cairo-paginated-surface.c: Removed.
329 * platform/cairo/cairo/src/cairo-path-bounds.c: Removed.
330 * platform/cairo/cairo/src/cairo-path-data-private.h: Removed.
331 * platform/cairo/cairo/src/cairo-path-data.c: Removed.
332 * platform/cairo/cairo/src/cairo-path-fill.c: Removed.
333 * platform/cairo/cairo/src/cairo-path-fixed-private.h: Removed.
334 * platform/cairo/cairo/src/cairo-path-stroke.c: Removed.
335 * platform/cairo/cairo/src/cairo-path.c: Removed.
336 * platform/cairo/cairo/src/cairo-pattern.c: Removed.
337 * platform/cairo/cairo/src/cairo-pdf-surface.c: Removed.
338 * platform/cairo/cairo/src/cairo-pdf.h: Removed.
339 * platform/cairo/cairo/src/cairo-pen.c: Removed.
340 * platform/cairo/cairo/src/cairo-platform.h: Removed.
341 * platform/cairo/cairo/src/cairo-png.c: Removed.
342 * platform/cairo/cairo/src/cairo-polygon.c: Removed.
343 * platform/cairo/cairo/src/cairo-private.h: Removed.
344 * platform/cairo/cairo/src/cairo-ps-surface.c: Removed.
345 * platform/cairo/cairo/src/cairo-ps.h: Removed.
346 * platform/cairo/cairo/src/cairo-quartz-private.h: Removed.
347 * platform/cairo/cairo/src/cairo-quartz-surface.c: Removed.
348 * platform/cairo/cairo/src/cairo-quartz.h: Removed.
349 * platform/cairo/cairo/src/cairo-quartz2-surface.c: Removed.
350 * platform/cairo/cairo/src/cairo-quartz2.h: Removed.
351 * platform/cairo/cairo/src/cairo-region.c: Removed.
352 * platform/cairo/cairo/src/cairo-scaled-font.c: Removed.
353 * platform/cairo/cairo/src/cairo-slope.c: Removed.
354 * platform/cairo/cairo/src/cairo-spline.c: Removed.
355 * platform/cairo/cairo/src/cairo-stroke-style.c: Removed.
356 * platform/cairo/cairo/src/cairo-surface-fallback-private.h: Removed.
357 * platform/cairo/cairo/src/cairo-surface-fallback.c: Removed.
358 * platform/cairo/cairo/src/cairo-surface.c: Removed.
359 * platform/cairo/cairo/src/cairo-svg-surface.c: Removed.
360 * platform/cairo/cairo/src/cairo-svg.h: Removed.
361 * platform/cairo/cairo/src/cairo-traps.c: Removed.
362 * platform/cairo/cairo/src/cairo-unicode.c: Removed.
363 * platform/cairo/cairo/src/cairo-wideint.c: Removed.
364 * platform/cairo/cairo/src/cairo-wideint.h: Removed.
365 * platform/cairo/cairo/src/cairo-win32-font.c: Removed.
366 * platform/cairo/cairo/src/cairo-win32-private.h: Removed.
367 * platform/cairo/cairo/src/cairo-win32-surface.c: Removed.
368 * platform/cairo/cairo/src/cairo-win32.h: Removed.
369 * platform/cairo/cairo/src/cairo-xcb-surface.c: Removed.
370 * platform/cairo/cairo/src/cairo-xcb-xrender.h: Removed.
371 * platform/cairo/cairo/src/cairo-xcb.h: Removed.
372 * platform/cairo/cairo/src/cairo-xlib-private.h: Removed.
373 * platform/cairo/cairo/src/cairo-xlib-screen.c: Removed.
374 * platform/cairo/cairo/src/cairo-xlib-surface.c: Removed.
375 * platform/cairo/cairo/src/cairo-xlib-test.h: Removed.
376 * platform/cairo/cairo/src/cairo-xlib-xrender.h: Removed.
377 * platform/cairo/cairo/src/cairo-xlib.h: Removed.
378 * platform/cairo/cairo/src/cairo.c: Removed.
379 * platform/cairo/cairo/src/cairo.h: Removed.
380 * platform/cairo/cairo/src/cairoint.h: Removed.
381 * platform/cairo/cairo/src/test-fallback-surface.c: Removed.
382 * platform/cairo/cairo/src/test-fallback-surface.h: Removed.
383 * platform/cairo/cairo/src/test-meta-surface.c: Removed.
384 * platform/cairo/cairo/src/test-meta-surface.h: Removed.
385 * platform/cairo/cairo/src/test-paginated-surface.c: Removed.
386 * platform/cairo/cairo/src/test-paginated-surface.h: Removed.
387 * platform/cairo/pixman/AUTHORS: Removed.
388 * platform/cairo/pixman/COPYING: Removed.
389 * platform/cairo/pixman/README: Removed.
390 * platform/cairo/pixman/src/Makefile.in: Removed.
391 * platform/cairo/pixman/src/fbcompose.c: Removed.
392 * platform/cairo/pixman/src/fbedge.c: Removed.
393 * platform/cairo/pixman/src/fbedgeimp.h: Removed.
394 * platform/cairo/pixman/src/fbmmx.c: Removed.
395 * platform/cairo/pixman/src/fbmmx.h: Removed.
396 * platform/cairo/pixman/src/fbpict.c: Removed.
397 * platform/cairo/pixman/src/fbpict.h: Removed.
398 * platform/cairo/pixman/src/fbtrap.c: Removed.
399 * platform/cairo/pixman/src/icblt.c: Removed.
400 * platform/cairo/pixman/src/icbltone.c: Removed.
401 * platform/cairo/pixman/src/iccolor.c: Removed.
402 * platform/cairo/pixman/src/icformat.c: Removed.
403 * platform/cairo/pixman/src/icimage.c: Removed.
404 * platform/cairo/pixman/src/icimage.h: Removed.
405 * platform/cairo/pixman/src/icint.h: Removed.
406 * platform/cairo/pixman/src/icpixels.c: Removed.
407 * platform/cairo/pixman/src/icrect.c: Removed.
408 * platform/cairo/pixman/src/icrop.h: Removed.
409 * platform/cairo/pixman/src/icstipple.c: Removed.
410 * platform/cairo/pixman/src/ictransform.c: Removed.
411 * platform/cairo/pixman/src/ictrap.c: Removed.
412 * platform/cairo/pixman/src/ictri.c: Removed.
413 * platform/cairo/pixman/src/icutil.c: Removed.
414 * platform/cairo/pixman/src/pixman-remap.h: Removed.
415 * platform/cairo/pixman/src/pixman-xserver-compat.h: Removed.
416 * platform/cairo/pixman/src/pixman.h: Removed.
417 * platform/cairo/pixman/src/pixregion.c: Removed.
418 * platform/cairo/pixman/src/pixregionint.h: Removed.
419 * platform/cairo/pixman/src/renderedge.c: Removed.
420 * platform/cairo/pixman/src/renderedge.h: Removed.
421 * platform/cairo/pixman/src/slim_internal.h: Removed.
422 * platform/cairo/rgb24-hacks.txt: Removed.
423 * platform/cairo/scale-removal.txt: Removed.
424 * platform/cg/AffineTransformCG.cpp: Removed.
425 * platform/cg/FloatPointCG.cpp: Removed.
426 * platform/cg/FloatRectCG.cpp: Removed.
427 * platform/cg/FloatSizeCG.cpp: Removed.
428 * platform/cg/GraphicsContextCG.cpp: Removed.
429 * platform/cg/GraphicsContextPlatformPrivate.h: Removed.
430 * platform/cg/ImageCG.cpp: Removed.
431 * platform/cg/ImageSourceCG.cpp: Removed.
432 * platform/cg/IntPointCG.cpp: Removed.
433 * platform/cg/IntRectCG.cpp: Removed.
434 * platform/cg/IntSizeCG.cpp: Removed.
435 * platform/cg/PDFDocumentImage.cpp: Removed.
436 * platform/cg/PDFDocumentImage.h: Removed.
437 * platform/cg/PathCG.cpp: Removed.
438 * platform/gdk/ImageGdk.cpp: Removed.
439 * platform/mac/ColorMac.mm: Removed.
440 * platform/mac/FloatPointMac.mm: Removed.
441 * platform/mac/FloatRectMac.mm: Removed.
442 * platform/mac/FloatSizeMac.mm: Removed.
443 * platform/mac/GraphicsContextMac.mm:
444 * platform/mac/IconMac.mm: Removed.
445 * platform/mac/ImageMac.mm: Removed.
446 * platform/mac/IntPointMac.mm: Removed.
447 * platform/mac/IntRectMac.mm: Removed.
448 * platform/mac/IntSizeMac.mm: Removed.
449 * platform/qt/AffineTransformQt.cpp: Removed.
450 * platform/qt/ColorQt.cpp: Removed.
451 * platform/qt/FloatPointQt.cpp: Removed.
452 * platform/qt/FloatRectQt.cpp: Removed.
453 * platform/qt/IconQt.cpp: Removed.
454 * platform/qt/ImageQt.cpp: Removed.
455 * platform/qt/ImageSourceQt.cpp: Removed.
456 * platform/qt/IntPointQt.cpp: Removed.
457 * platform/qt/IntRectQt.cpp: Removed.
458 * platform/qt/IntSizeQt.cpp: Removed.
459 * platform/qt/PathQt.cpp: Removed.
460 * platform/win/ImageWin.cpp: Removed.
461 * platform/win/IntPointWin.cpp: Removed.
462 * platform/win/IntRectWin.cpp: Removed.
463 * platform/win/IntSizeWin.cpp: Removed.
465 2006-11-11 Graham Dennis <graham.dennis@gmail.com>
469 A layout test was added when this bug was fixed, so none needed now.
472 REGRESSION (r16122): min/max widths incorrectly calculated for contentEditable text
473 http://bugs.webkit.org/show_bug.cgi?id=11570
475 * rendering/RenderStyle.h:
476 (WebCore::RenderStyle::isSpace): Removed.
477 * rendering/RenderText.cpp:
478 (WebCore::isSpace): Added.
479 (WebCore::RenderText::calcMinMaxWidth): Use inline function instead of polluting RenderStyle.
481 2006-11-11 Graham Dennis <graham.dennis@gmail.com>
485 REGRESSION (r16122): min/max widths incorrectly calculated for contentEditable text
486 http://bugs.webkit.org/show_bug.cgi?id=11570
488 * rendering/RenderStyle.h:
489 (WebCore::RenderStyle::isSpace): Added.
490 * rendering/RenderText.cpp:
491 (WebCore::RenderText::calcMinMaxWidth): For the purposes of calculating the line widths,
492 treat non-breaking spaces the same as normal spaces if -webkit-nbsp-mode is 'space'
494 2006-11-10 Zalan Bujtas <zalan.bujtas@nokia.com>
498 Added basic types for symbian platform.
499 http://bugs.webkit.org/show_bug.cgi?id=11540
502 * platform/AtomicString.h:
503 (WebCore::AtomicString::AtomicString):
504 (WebCore::AtomicString::operator TPtrC):
505 * platform/DeprecatedString.cpp:
506 (WebCore::initializeHandleNodeBlock):
507 * platform/DeprecatedString.h: char _internalBuffer has to be in front of
508 the bitfields as Codewarrior (3.2.5 build 461) compiler cannot cope with
509 bitfields and breaks byte aligment
510 * platform/FloatPoint.h:
511 * platform/FloatRect.h:
512 * platform/IntPoint.h:
513 * platform/IntRect.h:
514 * platform/IntSize.h:
515 * platform/PlatformString.h:
516 (WebCore::String::operator TPtrC):
517 (WebCore::String::des):
518 * platform/StringImpl.h:
519 * platform/symbian/DeprecatedStringSymbian.cpp: Added.
520 (WebCore::DeprecatedString::setBufferFromDes):
521 (WebCore::DeprecatedString::fromDes):
522 (WebCore::DeprecatedString::des):
523 (WebCore::DeprecatedString::des8):
524 * platform/symbian/FloatPointSymbian.cpp: Added.
525 (WebCore::FloatPoint::FloatPoint):
526 (WebCore::FloatPoint::operator TPoint):
527 * platform/symbian/FloatRectSymbian.cpp: Added.
528 (WebCore::FloatRect::FloatRect):
529 (WebCore::FloatRect::operator TRect):
530 (WebCore::FloatRect::rect):
531 * platform/symbian/IntPointSymbian.cpp: Added.
532 (WebCore::IntPoint::IntPoint):
533 (WebCore::IntPoint::operator TPoint):
534 * platform/symbian/IntRectSymbian.cpp: Added.
535 (WebCore::IntRect::IntRect):
536 (WebCore::IntRect::operator TRect):
537 (WebCore::IntRect::Rect):
538 * platform/symbian/IntSizeSymbian.cpp: Added.
539 (WebCore::IntSize::IntSize):
540 (WebCore::IntSize::operator TSize):
541 * platform/symbian/StringImplSymbian.cpp: Added.
542 (WebCore::StringImpl::StringImpl):
543 (WebCore::StringImpl::des):
544 * platform/symbian/StringSymbian.cpp: Added.
545 (WebCore::String::String):
547 2006-11-10 Zack Rusin <zack@kde.org>
551 Adjust to the changes Brady made in the Qt code.
553 * loader/qt/FrameLoaderClientQt.cpp:
554 (WebCore::FrameLoaderClientQt::dispatchDidReceiveIcon):
555 * loader/qt/FrameLoaderClientQt.h:
557 2006-11-10 Justin Garcia <justin.garcia@apple.com>
561 <rdar://problem/4069359>
562 Deleting hyperlink text, then typing uses link typing style but loses the link itself
564 The removed anchor element needs to stick around temporarily, in the same way
565 that the typing style hangs off the caret until the user moves it. Also text
566 insertion around anchors didn't match TextEdit.
568 * editing/DeleteSelectionCommand.cpp:
569 (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor): Added.
570 (WebCore::DeleteSelectionCommand::doApply): Call saveFullySelectedAnchor.
571 * editing/DeleteSelectionCommand.h:
572 * editing/EditCommand.cpp:
573 (WebCore::EditCommand::apply): Clear the removed anchor after any top level
574 editing command that doesn't preserve the typing style (matches TextEdit).
575 * editing/Editor.cpp:
576 (WebCore::Editor::appliedEditing): Added a fixme: we shouldn't call
577 setSelection with a message telling it to clear the typing style
578 (and the saved anchor) here. Save/restore the saved anchor because of this.
580 (WebCore::Editor::removedAnchor): Getter.
581 (WebCore::Editor::setRemovedAnchor): Setter.
582 * editing/InsertTextCommand.cpp:
583 (WebCore::InsertTextCommand::prepareForTextInsertion): Insert the saved anchor
585 * editing/SelectionController.cpp:
586 (WebCore::SelectionController::setSelection): Clear the removed anchor whenever
587 we make a selection change that clears the typing style.
588 (WebCore::SelectionController::nodeWillBeRemoved): Removed an old outdated FIXME.
589 * editing/htmlediting.cpp:
590 (WebCore::positionAvoidingSpecialElementBoundary): Cleaned up and
591 made some changes to match TextEdit's behavior. First, insert content
592 inside the anchor when the caret is after it, unless the caret is at the
593 end of the document, or if the caret is before it and at the start of a
596 === Safari-521.30 ===
598 2006-11-10 Timothy Hatcher <timothy@apple.com>
602 Check for BHIDDEN in isVisible() also.
604 * rendering/RenderStyle.h:
605 (WebCore::BorderValue::isVisible):
607 2006-11-10 Timothy Hatcher <timothy@apple.com>
611 <rdar://problem/4821423> element deletion UI appears for Mail blockquote and others with less than three visible borders
613 Added a new function to BorderValue called isVisible(). This checks nonZero() and !isTransparent().
615 * editing/DeleteButtonController.cpp:
616 (WebCore::isDeletableElement):
617 * rendering/RenderStyle.h:
618 (WebCore::BorderValue::isVisible):
620 2006-11-10 Adam Roben <aroben@apple.com>
622 Rubberstamped by Anders.
624 Back out some accidentally-committed changes from r17711.
627 (WebCore::Frame::command):
628 (WebCore::FramePrivate::FramePrivate):
630 * page/FramePrivate.h:
632 2006-11-10 Anders Carlsson <acarlsson@apple.com>
636 Add more commands, make toggleBold and toggleItalic executable commands.
639 * editing/Editor.cpp:
642 (WebCore::execDelete):
643 (WebCore::execForwardDelete):
644 (WebCore::execPaste):
645 (WebCore::execSelectAll):
646 (WebCore::execToggleBold):
647 (WebCore::execToggleItalic):
650 (WebCore::hasEditableSelection):
651 (WebCore::hasEditableRangeSelection):
652 (WebCore::hasRangeSelection):
653 (WebCore::hasRichlyEditableSelection):
654 (WebCore::CommandEntry::):
657 2006-11-10 Anders Carlsson <acarlsson@apple.com>
659 Reviewed by Maciej, Geoff.
661 Added an execCommand method to Editor. The idea is that this should replace the CommandByName object. Get rid of
662 the alterCurrentSelection method in the bridge. WebKit can just call execCommand directly.
665 * bridge/mac/WebCoreFrameBridge.h:
666 * bridge/mac/WebCoreFrameBridge.mm:
667 * editing/Editor.cpp:
668 (WebCore::execMoveBackward):
669 (WebCore::execMoveBackwardAndModifySelection):
670 (WebCore::execMoveDown):
671 (WebCore::execMoveDownAndModifySelection):
672 (WebCore::execMoveForward):
673 (WebCore::execMoveForwardAndModifySelection):
674 (WebCore::execMoveLeft):
675 (WebCore::execMoveLeftAndModifySelection):
676 (WebCore::execMoveRight):
677 (WebCore::execMoveRightAndModifySelection):
678 (WebCore::execMoveToBeginningOfDocument):
679 (WebCore::execMoveToBeginningOfDocumentAndModifySelection):
680 (WebCore::execMoveToBeginningOfSentence):
681 (WebCore::execMoveToBeginningOfSentenceAndModifySelection):
682 (WebCore::execMoveToBeginningOfLine):
683 (WebCore::execMoveToBeginningOfLineAndModifySelection):
684 (WebCore::execMoveToBeginningOfParagraph):
685 (WebCore::execMoveToBeginningOfParagraphAndModifySelection):
686 (WebCore::execMoveToEndOfDocument):
687 (WebCore::execMoveToEndOfDocumentAndModifySelection):
688 (WebCore::execMoveToEndOfSentence):
689 (WebCore::execMoveToEndOfSentenceAndModifySelection):
690 (WebCore::execMoveToEndOfLine):
691 (WebCore::execMoveToEndOfLineAndModifySelection):
692 (WebCore::execMoveToEndOfParagraph):
693 (WebCore::execMoveToEndOfParagraphAndModifySelection):
694 (WebCore::execMoveParagraphBackwardAndModifySelection):
695 (WebCore::execMoveParagraphForwardAndModifySelection):
696 (WebCore::execMoveUp):
697 (WebCore::execMoveUpAndModifySelection):
698 (WebCore::execMoveWordBackward):
699 (WebCore::execMoveWordBackwardAndModifySelection):
700 (WebCore::execMoveWordForward):
701 (WebCore::execMoveWordForwardAndModifySelection):
702 (WebCore::execMoveWordLeft):
703 (WebCore::execMoveWordLeftAndModifySelection):
704 (WebCore::execMoveWordRight):
705 (WebCore::execMoveWordRightAndModifySelection):
706 (WebCore::enabledAnySelection):
707 (WebCore::createCommandMap):
708 (WebCore::CommandEntry::):
709 (WebCore::Editor::execCommand):
712 2006-11-10 Brady Eidson <beidson@apple.com>
716 Took out WebIconDatabaseBridge and made WebKit call IconDatabase directly
719 * WebCore.xcodeproj/project.pbxproj:
720 * bridge/mac/WebCoreIconDatabaseBridge.h: Removed.
721 * bridge/mac/WebCoreIconDatabaseBridge.mm: Removed.
722 * loader/FrameLoaderClient.h:
723 * loader/icon/IconDatabase.cpp:
724 (WebCore::IconDatabase::sharedIconDatabase):
725 (WebCore::IconDatabase::~IconDatabase):
726 * loader/icon/IconDatabase.h:
727 (WebCore::IconDatabase::isPrivateBrowsingEnabled):
728 (WebCore::IconDatabase::enabled):
729 * loader/icon/IconLoader.cpp:
730 (WebCore::IconLoader::finishLoading):
731 * loader/mac/FrameLoaderMac.mm:
733 2006-11-10 Zack Rusin <zack@kde.org>
735 Reviewed and landed by Anders.
737 Adjust platform Qt/KDE code to the recent loader
741 * loader/DocumentLoader.h:
742 * loader/FrameLoader.cpp:
743 (WebCore::FrameLoader::createEmptyDocument):
744 * loader/FrameLoader.h:
745 * loader/FrameLoaderClient.h:
746 * loader/qt/DocumentLoaderQt.cpp: Added.
747 (WebCore::canonicalizedTitle):
748 (WebCore::DocumentLoader::DocumentLoader):
749 (WebCore::DocumentLoader::frameLoader):
750 (WebCore::DocumentLoader::~DocumentLoader):
751 (WebCore::DocumentLoader::URL):
752 (WebCore::DocumentLoader::unreachableURL):
753 (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
754 (WebCore::DocumentLoader::isStopping):
755 (WebCore::DocumentLoader::clearErrors):
756 (WebCore::DocumentLoader::stopLoading):
757 (WebCore::DocumentLoader::setupForReplace):
758 (WebCore::DocumentLoader::commitIfReady):
759 (WebCore::DocumentLoader::finishedLoading):
760 (WebCore::DocumentLoader::setCommitted):
761 (WebCore::DocumentLoader::isCommitted):
762 (WebCore::DocumentLoader::setLoading):
763 (WebCore::DocumentLoader::isLoading):
764 (WebCore::DocumentLoader::doesProgressiveLoad):
765 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
766 (WebCore::DocumentLoader::updateLoading):
767 (WebCore::DocumentLoader::setFrame):
768 (WebCore::DocumentLoader::attachToFrame):
769 (WebCore::DocumentLoader::detachFromFrame):
770 (WebCore::DocumentLoader::prepareForLoadStart):
771 (WebCore::DocumentLoader::loadingStartedTime):
772 (WebCore::DocumentLoader::setIsClientRedirect):
773 (WebCore::DocumentLoader::isClientRedirect):
774 (WebCore::DocumentLoader::setPrimaryLoadComplete):
775 (WebCore::DocumentLoader::isLoadingInAPISense):
776 (WebCore::DocumentLoader::stopRecordingResponses):
777 (WebCore::DocumentLoader::title):
778 (WebCore::DocumentLoader::triggeringAction):
779 (WebCore::DocumentLoader::setTriggeringAction):
780 (WebCore::DocumentLoader::setOverrideEncoding):
781 (WebCore::DocumentLoader::overrideEncoding):
782 (WebCore::DocumentLoader::setTitle):
783 (WebCore::DocumentLoader::URLForHistory):
784 * loader/qt/FrameLoaderClientQt.cpp: Added.
785 (WebCore::FrameLoaderClientQt::FrameLoaderClientQt):
786 (WebCore::FrameLoaderClientQt::~FrameLoaderClientQt):
787 (WebCore::FrameLoaderClientQt::detachFrameLoader):
788 (WebCore::FrameLoaderClientQt::hasWebView):
789 (WebCore::FrameLoaderClientQt::hasFrameView):
790 (WebCore::FrameLoaderClientQt::hasBackForwardList):
791 (WebCore::FrameLoaderClientQt::resetBackForwardList):
792 (WebCore::FrameLoaderClientQt::provisionalItemIsTarget):
793 (WebCore::FrameLoaderClientQt::loadProvisionalItemFromPageCache):
794 (WebCore::FrameLoaderClientQt::invalidateCurrentItemPageCache):
795 (WebCore::FrameLoaderClientQt::privateBrowsingEnabled):
796 (WebCore::FrameLoaderClientQt::makeDocumentView):
797 (WebCore::FrameLoaderClientQt::makeRepresentation):
798 (WebCore::FrameLoaderClientQt::forceLayout):
799 (WebCore::FrameLoaderClientQt::forceLayoutForNonHTML):
800 (WebCore::FrameLoaderClientQt::updateHistoryForCommit):
801 (WebCore::FrameLoaderClientQt::updateHistoryForBackForwardNavigation):
802 (WebCore::FrameLoaderClientQt::updateHistoryForReload):
803 (WebCore::FrameLoaderClientQt::updateHistoryForStandardLoad):
804 (WebCore::FrameLoaderClientQt::updateHistoryForInternalLoad):
805 (WebCore::FrameLoaderClientQt::updateHistoryAfterClientRedirect):
806 (WebCore::FrameLoaderClientQt::setCopiesOnScroll):
807 (WebCore::FrameLoaderClientQt::tokenForLoadErrorReset):
808 (WebCore::FrameLoaderClientQt::resetAfterLoadError):
809 (WebCore::FrameLoaderClientQt::doNotResetAfterLoadError):
810 (WebCore::FrameLoaderClientQt::willCloseDocument):
811 (WebCore::FrameLoaderClientQt::detachedFromParent1):
812 (WebCore::FrameLoaderClientQt::detachedFromParent2):
813 (WebCore::FrameLoaderClientQt::detachedFromParent3):
814 (WebCore::FrameLoaderClientQt::detachedFromParent4):
815 (WebCore::FrameLoaderClientQt::loadedFromPageCache):
816 (WebCore::FrameLoaderClientQt::dispatchDidHandleOnloadEvents):
817 (WebCore::FrameLoaderClientQt::dispatchDidReceiveServerRedirectForProvisionalLoad):
818 (WebCore::FrameLoaderClientQt::dispatchDidCancelClientRedirect):
819 (WebCore::FrameLoaderClientQt::dispatchWillPerformClientRedirect):
820 (WebCore::FrameLoaderClientQt::dispatchDidChangeLocationWithinPage):
821 (WebCore::FrameLoaderClientQt::dispatchWillClose):
822 (WebCore::FrameLoaderClientQt::dispatchDidStartProvisionalLoad):
823 (WebCore::FrameLoaderClientQt::dispatchDidReceiveTitle):
824 (WebCore::FrameLoaderClientQt::dispatchDidCommitLoad):
825 (WebCore::FrameLoaderClientQt::dispatchDidFinishLoad):
826 (WebCore::FrameLoaderClientQt::dispatchDidFirstLayout):
827 (WebCore::FrameLoaderClientQt::dispatchShow):
828 (WebCore::FrameLoaderClientQt::cancelPolicyCheck):
829 (WebCore::FrameLoaderClientQt::dispatchWillSubmitForm):
830 (WebCore::FrameLoaderClientQt::dispatchDidLoadMainResource):
831 (WebCore::FrameLoaderClientQt::clearLoadingFromPageCache):
832 (WebCore::FrameLoaderClientQt::isLoadingFromPageCache):
833 (WebCore::FrameLoaderClientQt::revertToProvisionalState):
834 (WebCore::FrameLoaderClientQt::clearUnarchivingState):
835 (WebCore::FrameLoaderClientQt::progressStarted):
836 (WebCore::FrameLoaderClientQt::progressCompleted):
837 (WebCore::FrameLoaderClientQt::setMainFrameDocumentReady):
838 (WebCore::FrameLoaderClientQt::willChangeTitle):
839 (WebCore::FrameLoaderClientQt::didChangeTitle):
840 (WebCore::FrameLoaderClientQt::finishedLoading):
841 (WebCore::FrameLoaderClientQt::finalSetupForReplace):
842 (WebCore::FrameLoaderClientQt::setDefersLoading):
843 (WebCore::FrameLoaderClientQt::isArchiveLoadPending):
844 (WebCore::FrameLoaderClientQt::cancelPendingArchiveLoad):
845 (WebCore::FrameLoaderClientQt::clearArchivedResources):
846 (WebCore::FrameLoaderClientQt::canShowMIMEType):
847 (WebCore::FrameLoaderClientQt::representationExistsForURLScheme):
848 (WebCore::FrameLoaderClientQt::generatedMIMETypeForURLScheme):
849 (WebCore::FrameLoaderClientQt::frameLoadCompleted):
850 (WebCore::FrameLoaderClientQt::restoreScrollPositionAndViewState):
851 (WebCore::FrameLoaderClientQt::provisionalLoadStarted):
852 (WebCore::FrameLoaderClientQt::shouldTreatURLAsSameAsCurrent):
853 (WebCore::FrameLoaderClientQt::addHistoryItemForFragmentScroll):
854 (WebCore::FrameLoaderClientQt::didFinishLoad):
855 (WebCore::FrameLoaderClientQt::prepareForDataSourceReplacement):
856 (WebCore::FrameLoaderClientQt::setTitle):
857 (WebCore::FrameLoaderClientQt::userAgent):
858 * loader/qt/FrameLoaderClientQt.h: Added.
859 * loader/qt/FrameLoaderQt.cpp:
860 (WebCore::FrameLoader::submitForm):
861 (WebCore::FrameLoader::overrideMediaType):
862 (WebCore::FrameLoader::getHistoryLength):
863 (WebCore::FrameLoader::referrer):
864 (WebCore::FrameLoader::detachFromParent):
865 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
866 (WebCore::FrameLoader::goBackOrForward):
867 (WebCore::FrameLoader::historyURL):
868 (WebCore::FrameLoader::didFirstLayout):
869 (WebCore::FrameLoader::canGoBackOrForward):
870 (WebCore::FrameLoader::partClearedInBegin):
871 (WebCore::FrameLoader::saveDocumentState):
872 (WebCore::FrameLoader::restoreDocumentState):
873 (WebCore::FrameLoader::didChangeTitle):
874 (WebCore::FrameLoader::redirectDataToPlugin):
875 (WebCore::PolicyCheck::PolicyCheck):
876 (WebCore::PolicyCheck::clear):
877 (WebCore::PolicyCheck::set):
878 (WebCore::PolicyCheck::call):
879 (WebCore::PolicyCheck::clearRequest):
880 * loader/qt/NavigationActionQt.cpp: Added.
881 (WebCore::navigationType):
882 (WebCore::NavigationAction::NavigationAction):
883 * loader/qt/ResourceLoaderQt.cpp: Added.
884 (WebCore::ResourceLoader::ResourceLoader):
885 (WebCore::ResourceLoader::~ResourceLoader):
886 (WebCore::ResourceLoader::setDefersLoading):
887 (WebCore::ResourceLoader::cancel):
888 (WebCore::ResourceLoader::loadsBlocked):
889 * platform/MimeTypeRegistry.cpp:
890 (WebCore::initialiseSupportedImageMIMETypes):
891 * platform/network/qt/ResourceHandleManager.cpp:
892 (WebCore::ResourceHandleManager::slotResult):
893 (WebCore::ResourceHandleManager::cancel):
894 * platform/qt/ChromeClientQt.cpp: Added.
895 (WebCore::rootWindowForFrame):
896 (WebCore::ChromeClientQt::ChromeClientQt):
897 (WebCore::ChromeClientQt::~ChromeClientQt):
898 (WebCore::ChromeClientQt::setWindowRect):
899 (WebCore::ChromeClientQt::windowRect):
900 (WebCore::ChromeClientQt::pageRect):
901 (WebCore::ChromeClientQt::scaleFactor):
902 (WebCore::ChromeClientQt::focus):
903 (WebCore::ChromeClientQt::unfocus):
904 (WebCore::ChromeClientQt::createWindow):
905 (WebCore::ChromeClientQt::createModalDialog):
906 (WebCore::ChromeClientQt::show):
907 (WebCore::ChromeClientQt::canRunModal):
908 (WebCore::ChromeClientQt::runModal):
909 (WebCore::ChromeClientQt::setToolbarsVisible):
910 (WebCore::ChromeClientQt::toolbarsVisible):
911 (WebCore::ChromeClientQt::setStatusbarVisible):
912 (WebCore::ChromeClientQt::statusbarVisible):
913 (WebCore::ChromeClientQt::setScrollbarsVisible):
914 (WebCore::ChromeClientQt::scrollbarsVisible):
915 (WebCore::ChromeClientQt::setMenubarVisible):
916 (WebCore::ChromeClientQt::menubarVisible):
917 (WebCore::ChromeClientQt::setResizable):
918 * platform/qt/ChromeClientQt.h: Added.
919 * platform/qt/EditorClientQt.cpp:
920 (WebCore::EditorClientQt::shouldBeginEditing):
921 (WebCore::EditorClientQt::shouldEndEditing):
922 (WebCore::EditorClientQt::shouldApplyStyle):
923 (WebCore::EditorClientQt::didBeginEditing):
924 (WebCore::EditorClientQt::respondToChangedContents):
925 (WebCore::EditorClientQt::didEndEditing):
926 * platform/qt/EditorClientQt.h:
927 * platform/qt/FrameQt.cpp:
928 (WebCore::FrameQt::FrameQt):
929 (WebCore::FrameQt::~FrameQt):
930 (WebCore::FrameQt::keyEvent):
931 * platform/qt/FrameQt.h:
932 * platform/qt/FrameQtClient.cpp:
933 (WebCore::FrameQtClientDefault::openURL):
934 (WebCore::FrameQtClientDefault::didReceiveData):
935 (WebCore::FrameQtClientDefault::receivedAllData):
936 * platform/qt/ImageQt.cpp:
937 * platform/qt/MimeTypeRegistryQt.cpp: Added.
938 (WebCore::getMIMETypeForUTI):
939 (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
940 * platform/qt/PageQt.cpp:
941 * platform/qt/PlatformKeyboardEventQt.cpp:
942 (WebCore::keyIdentifierForQtKeyCode):
943 * platform/qt/ScreenQt.cpp:
944 * platform/qt/TemporaryLinkStubs.cpp:
945 (WebCore::TextField::TextField):
946 (WebCore::screenDepth):
947 (WebCore::screenDepthPerComponent):
948 (WebCore::screenIsMonochrome):
949 (WebCore::screenRect):
950 (WebCore::screenAvailableRect):
952 2006-11-10 Brady Eidson <beidson@apple.com>
956 http://bugs.webkit.org/show_bug.cgi?id=11554
957 Fix the above bug (in didFinishLoading) and also another potential bug in didFailWithError
958 in case the icon load fails after some data has been received.
960 * loader/icon/IconLoader.cpp:
961 (WebCore::IconLoader::didFailWithError): Clear the buffer so half-an-image isn't commited to the DB
962 on error. Also, as a loader re-factoring sanity check, added an assertion
963 (WebCore::IconLoader::didFinishLoading): If an icon loader resulted in an error-response, the icon
964 is already committed to the DB. Skip doing that step twice.
966 2006-11-09 Oliver Hunt <oliver@apple.com>
970 Pulled MIME type handling out of WebFrameBridge and added
971 a general C++ class to store/query MIME info
972 Added an Obj-C bridge to provide WebKit with access to the
973 MimeTypeRegistry for non-Obj-C++ classes.
976 * WebCore.xcodeproj/project.pbxproj:
977 * bridge/mac/WebCoreFrameBridge.h:
978 * bridge/mac/WebCoreFrameBridge.mm:
979 * bridge/mac/WebMimeTypeRegistryBridge.h: Added.
980 * bridge/mac/WebMimeTypeRegistryBridge.mm: Added.
981 (+[WebMimeTypeRegistryBridge supportsImageWithMIMEType:]):
982 (+[WebMimeTypeRegistryBridge supportsNonImageWithMIMEType:]):
983 (+[WebMimeTypeRegistryBridge supportedNonImageMIMETypes]):
984 (+[WebMimeTypeRegistryBridge supportedImageMIMETypes]):
985 (+[WebMimeTypeRegistryBridge supportedImageResourceMIMETypes]):
986 * platform/Image.cpp:
987 (WebCore::Image::supportsType):
989 * platform/MimeTypeRegistry.cpp: Added.
990 (WebCore::initialiseSupportedImageMIMETypes):
991 (WebCore::initialiseSupportedNonImageMimeTypes):
992 (WebCore::initialiseMimeTypeRegistry):
993 (WebCore::MimeTypeRegistry::isSupportedImageMIMEType):
994 (WebCore::MimeTypeRegistry::isSupportedImageResourceMIMEType):
995 (WebCore::MimeTypeRegistry::isSupportedNonImageMIMEType):
996 (WebCore::MimeTypeRegistry::getSupportedImageMIMETypes):
997 (WebCore::MimeTypeRegistry::getSupportedImageResourceMIMETypes):
998 (WebCore::MimeTypeRegistry::getSupportedNonImageMIMETypes):
999 * platform/MimeTypeRegistry.h: Added.
1000 * platform/mac/ImageMac.mm:
1001 * platform/mac/MimeTypeRegistryMac.mm: Added.
1002 (WebCore::getMIMETypeForUTI):
1003 (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
1005 2006-11-09 Maciej Stachowiak <mjs@apple.com>
1009 - rename String::sprintf and DeprecatedString::sprintf to ...::format to avoid needlessly tweaking a search
1010 for insecure functions. Neither of these has risk of buffer overruns since they calculate the buffer size
1011 for you and use vsnprintf.
1013 * bindings/js/kjs_window.cpp:
1014 (KJS::Window::isSafeScript):
1015 * css/cssparser.cpp:
1016 (WebCore::CSSParser::parseColorFromValue):
1017 * dom/StyledElement.cpp:
1018 (WebCore::StyledElement::addCSSColor):
1019 * dom/XMLTokenizer.cpp:
1020 (WebCore::XMLTokenizer::handleError):
1021 * ksvg2/css/SVGCSSParser.cpp:
1022 (WebCore::CSSParser::parseSVGPaint):
1023 (WebCore::CSSParser::parseSVGColor):
1024 * ksvg2/svg/SVGPathSegArc.h:
1025 (WebCore::SVGPathSegArcAbs::toString):
1026 (WebCore::SVGPathSegArcRel::toString):
1027 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
1028 (WebCore::SVGPathSegCurvetoCubicAbs::toString):
1029 (WebCore::SVGPathSegCurvetoCubicRel::toString):
1030 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
1031 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::toString):
1032 (WebCore::SVGPathSegCurvetoCubicSmoothRel::toString):
1033 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
1034 (WebCore::SVGPathSegCurvetoQuadraticAbs::toString):
1035 (WebCore::SVGPathSegCurvetoQuadraticRel::toString):
1036 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
1037 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::toString):
1038 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::toString):
1039 * ksvg2/svg/SVGPathSegLineto.h:
1040 (WebCore::SVGPathSegLinetoAbs::toString):
1041 (WebCore::SVGPathSegLinetoRel::toString):
1042 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
1043 (WebCore::SVGPathSegLinetoHorizontalAbs::toString):
1044 (WebCore::SVGPathSegLinetoHorizontalRel::toString):
1045 * ksvg2/svg/SVGPathSegLinetoVertical.h:
1046 (WebCore::SVGPathSegLinetoVerticalAbs::toString):
1047 (WebCore::SVGPathSegLinetoVerticalRel::toString):
1048 * ksvg2/svg/SVGPathSegMoveto.h:
1049 (WebCore::SVGPathSegMovetoAbs::toString):
1050 (WebCore::SVGPathSegMovetoRel::toString):
1051 * ksvg2/svg/SVGPolyElement.cpp:
1052 (WebCore::SVGPolyElement::notifyAttributeChange):
1053 * ksvg2/svg/SVGUseElement.cpp:
1054 (WebCore::SVGUseElement::closeRenderer):
1055 * loader/icon/IconDatabase.cpp:
1056 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
1057 * loader/icon/SQLDatabase.cpp:
1058 (WebCore::SQLDatabase::setSynchronous):
1059 * platform/Color.cpp:
1060 (WebCore::Color::name):
1061 * platform/DeprecatedString.cpp:
1062 (WebCore::DeprecatedString::setNum):
1063 (WebCore::DeprecatedString::format):
1064 * platform/DeprecatedString.h:
1065 * platform/PlatformString.h:
1066 * platform/String.cpp:
1067 (WebCore::String::format):
1068 (WebCore::String::number):
1069 * platform/mac/KeyEventMac.mm:
1070 (WebCore::keyIdentifierForKeyEvent):
1071 * platform/win/KeyEventWin.cpp:
1072 (WebCore::keyIdentifierForWindowsKeyCode):
1073 * rendering/RenderListMarker.cpp:
1074 (WebCore::RenderListMarker::calcMinMaxWidth):
1076 2006-11-09 Maciej Stachowiak <mjs@apple.com>
1080 - fixed "Regression: Can't log into gmail.com"
1081 - fixed "iBench doesn't report results - tests run but no number is recorded"
1083 * platform/network/cf/FormDataStreamCFNet.cpp:
1084 (WebCore::setHTTPBody): Removed extra ! character.
1086 2006-11-09 Beth Dakin <bdakin@apple.com>
1090 Fix for <rdar://problem/4805409> REGRESSION: Reproducible crash in
1091 WebCore::RenderBlock::skipWhitespace
1093 Note that this will still crash on Debug builds because it will hit
1094 an assertion failure in editing. (One of the reasons there is no
1095 layout test along with this fix.) There is definitely some editing
1096 wackiness happening. See http://bugs.webkit.org/show_bug.cgi?
1097 id=10144 for updates on the assertion failure bug.
1099 * rendering/RootInlineBox.cpp:
1100 (WebCore::RootInlineBox::childRemoved): It is possible for a
1101 prevRootBox and its prevRootBox to share a lineBreakObj. So instead
1102 of just clearing the lineBreakObj of the prevRootBox, cycle through
1103 all prevRootBoxs with the same lineBreakObj.
1105 2006-11-09 Adam Roben <aroben@apple.com>
1109 Fix the change in behavior I caused in r17680 with my build fix.
1111 * rendering/RenderObject.cpp:
1112 (WebCore::RenderObject::maxTopMargin):
1113 (WebCore::RenderObject::maxBottomMargin):
1115 2006-11-09 Anders Carlsson <acarlsson@apple.com>
1117 Reviewed by Adam, Oliver.
1119 Move more functions to Editor.
1121 * bridge/EditorClient.h:
1122 * bridge/mac/FrameMac.h:
1123 * bridge/mac/FrameMac.mm:
1124 * bridge/mac/WebCoreFrameBridge.h:
1125 * editing/EditCommand.cpp:
1126 (WebCore::EditCommand::apply):
1127 (WebCore::EditCommand::unapply):
1128 (WebCore::EditCommand::reapply):
1129 * editing/Editor.cpp:
1130 (WebCore::Editor::respondToChangedContents):
1131 (WebCore::dispatchEditableContentChangedEvents):
1132 (WebCore::Editor::appliedEditing):
1133 (WebCore::Editor::unappliedEditing):
1134 (WebCore::Editor::reappliedEditing):
1136 * editing/TypingCommand.cpp:
1137 (WebCore::TypingCommand::typingAddedToOpenCommand):
1141 2006-11-09 Darin Adler <darin@apple.com>
1143 * rendering/RenderObject.h: Oops! Fixed accidentally checked-in ifdef.
1145 2006-11-09 Alice Liu <alice.liu@apple.com>
1147 Reviewed by Beth Dakin.
1149 Fixed <rdar://problem/4808720> Hamachi test tool crashes Safari in WebCore::HTMLTableSectionElement::deleteRow
1150 All existing layout tests pass
1152 * html/HTMLTableElement.cpp:
1153 (WebCore::HTMLTableElement::deleteRow):
1154 check lastSection before deleting row
1156 2006-11-09 Darin Adler <darin@apple.com>
1158 - improved version of last night's build fix (should not do using namespace in a header)
1160 * rendering/RenderObject.h:
1161 * rendering/RenderObject.cpp:
1162 (WebCore::RenderObject::maxTopMargin):
1163 (WebCore::RenderObject::maxBottomMargin):
1165 2006-11-08 Maciej Stachowiak <mjs@apple.com>
1169 - added ResourceError class and didFailWithError client method
1171 * WebCore.xcodeproj/project.pbxproj:
1172 * loader/icon/IconLoader.cpp:
1173 (WebCore::IconLoader::didFailWithError):
1174 (WebCore::IconLoader::didFinishLoading):
1175 * loader/icon/IconLoader.h:
1176 * loader/loader.cpp:
1177 (WebCore::Loader::receivedAllData):
1178 (WebCore::Loader::didFailWithError):
1180 * loader/mac/SubresourceLoaderMac.mm:
1181 (WebCore::SubresourceLoader::didFail):
1182 (WebCore::SubresourceLoader::didCancel):
1183 * platform/cf/RetainPtr.h:
1185 (WebCore::adoptCFReference):
1186 (WebCore::RetainPtr::RetainPtr):
1188 * platform/network/ResourceError.cpp: Added.
1189 * platform/network/ResourceError.h: Added.
1190 (WebCore::ResourceError::ResourceError):
1191 (WebCore::ResourceError::domain):
1192 (WebCore::ResourceError::errorCode):
1193 (WebCore::ResourceError::failingURL):
1194 (WebCore::ResourceError::localizedDescription):
1195 (WebCore::ResourceError::unpackPlatformErrorIfNeeded):
1196 * platform/network/ResourceHandle.cpp:
1197 * platform/network/ResourceHandle.h:
1198 * platform/network/ResourceHandleClient.h:
1199 (WebCore::ResourceHandleClient::didFailWithError):
1200 * platform/network/cf/ResourceHandleCFNet.cpp:
1202 (WebCore::ResourceHandle::cancel):
1203 * platform/network/mac/ResourceErrorMac.mm: Added.
1204 (-[NSError WebCore]):
1205 * platform/network/mac/ResourceHandleMac.mm:
1206 (WebCore::ResourceHandle::reportError):
1207 * xml/xmlhttprequest.cpp:
1208 (WebCore::XMLHttpRequest::didFailWithError):
1209 (WebCore::XMLHttpRequest::didFinishLoading):
1210 * xml/xmlhttprequest.h:
1212 2006-11-08 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
1218 * platform/gdk/ChromeClientGdk.h:
1219 (WebCore::ChromeClientGdk::~ChromeClientGdk):
1220 * platform/gdk/CursorGdk.cpp:
1221 (WebCore::Cursor::Cursor):
1222 (WebCore::moveCursor):
1223 * platform/gdk/FrameGdk.cpp:
1224 (WebCore::FrameGdk::FrameGdk):
1225 (WebCore::FrameGdk::submitForm):
1226 (WebCore::FrameGdk::urlSelected):
1227 * platform/gdk/PageGdk.cpp:
1228 * platform/gdk/ScreenClientGdk.h: Added.
1229 (WebCore::ScreenClientGdk::~ScreenClientGdk):
1230 * platform/gdk/ScreenGdk.cpp:
1231 (WebCore::ScreenClientGdk::depth):
1232 (WebCore::ScreenClientGdk::depthPerComponent):
1233 (WebCore::ScreenClientGdk::isMonochrome):
1234 (WebCore::ScreenClientGdk::rect):
1235 (WebCore::ScreenClientGdk::usableRect):
1236 * platform/gdk/TemporaryLinkStubs.cpp:
1237 (FrameGdk::historyURL):
1238 (ChromeClientGdk::windowRect):
1239 (ChromeClientGdk::setWindowRect):
1240 (ChromeClientGdk::pageRect):
1241 (ChromeClientGdk::scaleFactor):
1242 (ChromeClientGdk::focus):
1243 (ChromeClientGdk::unfocus):
1244 (ChromeClientGdk::createWindow):
1245 (ChromeClientGdk::createModalDialog):
1246 (ChromeClientGdk::show):
1247 (ChromeClientGdk::canRunModal):
1248 (ChromeClientGdk::runModal):
1249 (ChromeClientGdk::setToolbarsVisible):
1250 (ChromeClientGdk::toolbarsVisible):
1251 (ChromeClientGdk::setStatusbarVisible):
1252 (ChromeClientGdk::statusbarVisible):
1253 (ChromeClientGdk::setScrollbarsVisible):
1254 (ChromeClientGdk::scrollbarsVisible):
1255 (ChromeClientGdk::setMenubarVisible):
1256 (ChromeClientGdk::menubarVisible):
1257 (ChromeClientGdk::setResizable):
1258 * platform/network/ResourceHandleInternal.h:
1259 (WebCore::ResourceHandleInternal::client):
1260 * platform/network/gdk/ResourceHandleManager.cpp:
1261 (WebCore::writeCallback):
1262 (WebCore::ResourceHandleManager::downloadTimerCallback):
1263 (WebCore::ResourceHandleManager::remove):
1265 2006-11-08 Adam Roben <aroben@apple.com>
1269 * rendering/RenderObject.h:
1270 (WebCore::RenderObject::maxTopMargin):
1271 (WebCore::RenderObject::maxBottomMargin):
1273 2006-11-08 Geoffrey Garen <ggaren@apple.com>
1275 Reviewed by Anders Carlsson.
1277 Made Screen a good platform citizen by removing its reference to Page. This
1278 made a class unnecessary, so all screen fuctions are stand-alone now.
1280 * bindings/js/kjs_window.cpp: Removed unnecessary subtractions
1281 when computing the screen's available dimensions.
1283 2006-11-08 Sam Weinig <sam.weinig@gmail.com>
1287 Fix for http://bugs.webkit.org/show_bug.cgi?id=11506
1288 Cleanup RenderObject
1290 * rendering/RenderObject.cpp:
1291 (WebCore::RenderObject::operator delete):
1292 (WebCore::RenderObject::createObject):
1293 (WebCore::RenderObjectCounter::~RenderObjectCounter):
1294 (WebCore::RenderObject::RenderObject):
1295 (WebCore::RenderObject::isDescendantOf):
1296 (WebCore::RenderObject::isRoot):
1297 (WebCore::RenderObject::addChild):
1298 (WebCore::RenderObject::removeChildNode):
1299 (WebCore::RenderObject::removeChild):
1300 (WebCore::RenderObject::appendChildNode):
1301 (WebCore::RenderObject::insertChildNode):
1302 (WebCore::RenderObject::nextInPreOrder):
1303 (WebCore::RenderObject::nextInPreOrderAfterChildren):
1304 (WebCore::RenderObject::previousInPreOrder):
1305 (WebCore::RenderObject::isEditable):
1306 (WebCore::RenderObject::nextEditable):
1307 (WebCore::RenderObject::previousEditable):
1308 (WebCore::RenderObject::firstLeafChild):
1309 (WebCore::RenderObject::lastLeafChild):
1310 (WebCore::RenderObject::addLayers):
1311 (WebCore::RenderObject::removeLayers):
1312 (WebCore::RenderObject::moveLayers):
1313 (WebCore::RenderObject::findNextLayer):
1314 (WebCore::RenderObject::enclosingLayer):
1315 (WebCore::RenderObject::updateFirstLetter):
1316 (WebCore::RenderObject::offsetParent):
1317 (WebCore::RenderObject::scroll):
1318 (WebCore::RenderObject::hasStaticX):
1319 (WebCore::RenderObject::setNeedsLayout):
1320 (WebCore::RenderObject::setChildNeedsLayout):
1321 (WebCore::RenderObject::markContainingBlocksForLayout):
1322 (WebCore::RenderObject::containingBlock):
1323 (WebCore::RenderObject::containingBlockWidth):
1324 (WebCore::RenderObject::containingBlockHeight):
1325 (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
1326 (WebCore::RenderObject::drawBorderArc):
1327 (WebCore::RenderObject::drawBorder):
1328 (WebCore::RenderObject::paintBorderImage):
1329 (WebCore::RenderObject::paintBorder):
1330 (WebCore::RenderObject::absoluteRects):
1331 (WebCore::RenderObject::addPDFURLRect):
1332 (WebCore::RenderObject::addFocusRingRects):
1333 (WebCore::RenderObject::paintOutline):
1334 (WebCore::RenderObject::repaint):
1335 (WebCore::RenderObject::repaintRectangle):
1336 (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
1337 (WebCore::RenderObject::repaintObjectsBeforeLayout):
1338 (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
1339 (WebCore::RenderObject::information):
1340 (WebCore::RenderObject::dump):
1341 (WebCore::selectStartNode):
1342 (WebCore::RenderObject::shouldSelect):
1343 (WebCore::RenderObject::draggableNode):
1344 (WebCore::RenderObject::createAnonymousBlock):
1345 (WebCore::RenderObject::handleDynamicFloatPositionChange):
1346 (WebCore::RenderObject::setStyle):
1347 (WebCore::RenderObject::setStyleInternal):
1348 (WebCore::RenderObject::updateBackgroundImages):
1349 (WebCore::RenderObject::absolutePosition):
1350 (WebCore::RenderObject::caretRect):
1351 (WebCore::RenderObject::paddingTop):
1352 (WebCore::RenderObject::paddingBottom):
1353 (WebCore::RenderObject::paddingLeft):
1354 (WebCore::RenderObject::paddingRight):
1355 (WebCore::RenderObject::tabWidth):
1356 (WebCore::RenderObject::container):
1357 (WebCore::RenderObject::removeFromObjectLists):
1358 (WebCore::RenderObject::destroy):
1359 (WebCore::RenderObject::arenaDelete):
1360 (WebCore::RenderObject::hitTest):
1361 (WebCore::RenderObject::setInnerNode):
1362 (WebCore::RenderObject::nodeAtPoint):
1363 (WebCore::RenderObject::verticalPositionHint):
1364 (WebCore::RenderObject::getVerticalPosition):
1365 (WebCore::RenderObject::lineHeight):
1366 (WebCore::RenderObject::invalidateVerticalPositions):
1367 (WebCore::RenderObject::recalcMinMaxWidths):
1368 (WebCore::RenderObject::scheduleRelayout):
1369 (WebCore::RenderObject::setInlineBoxWrapper):
1370 (WebCore::RenderObject::firstLineStyle):
1371 (WebCore::RenderObject::getPseudoStyle):
1372 (WebCore::RenderObject::getTextDecorationColors):
1373 (WebCore::RenderObject::addDashboardRegions):
1374 (WebCore::RenderObject::collectDashboardRegions):
1375 (WebCore::RenderObject::avoidsFloats):
1376 (WebCore::RenderObject::findCounter):
1377 (WebCore::RenderObject::backslashAsCurrencySymbol):
1378 (WebCore::RenderObject::imageChanged):
1379 (WebCore::RenderObject::previousOffset):
1380 (WebCore::RenderObject::nextOffset):
1381 (WebCore::RenderObject::inlineBox):
1382 * rendering/RenderObject.h:
1384 (WebCore::RenderObject::renderName):
1385 (WebCore::RenderObject::parent):
1386 (WebCore::RenderObject::previousSibling):
1387 (WebCore::RenderObject::nextSibling):
1388 (WebCore::RenderObject::firstChild):
1389 (WebCore::RenderObject::lastChild):
1390 (WebCore::RenderObject::getOverflowClipRect):
1391 (WebCore::RenderObject::getClipRect):
1392 (WebCore::RenderObject::getBaselineOfFirstLineBox):
1393 (WebCore::RenderObject::setEdited):
1394 (WebCore::RenderObject::setStaticX):
1395 (WebCore::RenderObject::setStaticY):
1396 (WebCore::RenderObject::setPreviousSibling):
1397 (WebCore::RenderObject::setNextSibling):
1398 (WebCore::RenderObject::setParent):
1399 (WebCore::RenderObject::isInlineBlockOrInlineTable):
1400 (WebCore::RenderObject::isRenderView):
1401 (WebCore::RenderObject::childrenInline):
1402 (WebCore::RenderObject::setChildrenInline):
1403 (WebCore::RenderObject::isAnonymousBlock):
1404 (WebCore::RenderObject::isDragging):
1405 (WebCore::RenderObject::needsLayout):
1406 (WebCore::RenderObject::setMinMaxKnown):
1407 (WebCore::RenderObject::setNeedsLayoutAndMinMaxRecalc):
1408 (WebCore::RenderObject::setPositioned):
1409 (WebCore::RenderObject::setRelPositioned):
1410 (WebCore::RenderObject::setFloating):
1411 (WebCore::RenderObject::setInline):
1412 (WebCore::RenderObject::setShouldPaintBackgroundOrBorder):
1413 (WebCore::RenderObject::setReplaced):
1414 (WebCore::RenderObject::PaintInfo::PaintInfo):
1415 (WebCore::RenderObject::paintBackgroundExtended):
1416 (WebCore::RenderObject::calcWidth):
1417 (WebCore::RenderObject::updateFromElement):
1418 (WebCore::RenderObject::RepaintInfo::RepaintInfo):
1419 (WebCore::RenderObject::setOverrideSize):
1420 (WebCore::RenderObject::setPos):
1421 (WebCore::RenderObject::setWidth):
1422 (WebCore::RenderObject::setHeight):
1423 (WebCore::RenderObject::absolutePositionForContent):
1424 (WebCore::RenderObject::overflowHeight):
1425 (WebCore::RenderObject::overflowWidth):
1426 (WebCore::RenderObject::setOverflowHeight):
1427 (WebCore::RenderObject::setOverflowWidth):
1428 (WebCore::RenderObject::overflowLeft):
1429 (WebCore::RenderObject::overflowTop):
1430 (WebCore::RenderObject::overflowRect):
1431 (WebCore::RenderObject::stopAutoscroll):
1432 (WebCore::RenderObject::collapsedMarginTop):
1433 (WebCore::RenderObject::collapsedMarginBottom):
1434 (WebCore::RenderObject::maxTopMargin):
1435 (WebCore::RenderObject::maxBottomMargin):
1436 (WebCore::RenderObject::):
1437 (WebCore::RenderObject::setTable):
1438 (WebCore::RenderObject::isFloatingOrPositioned):
1439 (WebCore::RenderObject::containsFloat):
1440 (WebCore::RenderObject::setSelectionState):
1441 (WebCore::RenderObject::SelectionInfo::SelectionInfo):
1442 (WebCore::RenderObject::lowestPosition):
1443 (WebCore::RenderObject::rightmostPosition):
1444 (WebCore::RenderObject::leftmostPosition):
1445 (WebCore::RenderObject::calcVerticalMargins):
1446 (WebCore::RenderObject::font):
1448 2006-11-08 Darin Adler <darin@apple.com>
1452 - added event parameters to focus-related functions so we can
1453 implement the "option-tab to all links" behavior without relying
1454 on a global "current event" -- also makes it work with DOM events
1456 * page/Frame.h: Removed unneeded includes. Moved some functions
1457 that were misplaced into the appropriate sections.
1459 (WebCore::Frame::doTextFieldCommandFromEvent): Changed parameter from
1460 PlatformKeyboardEvent to the DOM keyboard event class.
1461 (WebCore::Frame::tabsToLinks): Added event parameter.
1462 (WebCore::Frame::tabsToAllControls): Ditto.
1463 (WebCore::scanForForm): Fixed code that incorrectly assumes
1464 that an iframe is an HTMLFrameElement (no longer true since Geoff
1465 changed the class hierarchy a bit).
1466 (WebCore::Frame::hitTestResultAtPoint): Ditto.
1468 * bridge/mac/FrameMac.h: Removed unneeded includes. Moved some functions
1469 that were misplaced into the appropriate sections.
1470 * bridge/mac/FrameMac.mm:
1471 (WebCore::selectorForKeyEvent): Changed to use a DOM event instead of
1472 a PlatformKeyboardEvent.
1473 (WebCore::FrameMac::nextKeyViewInFrame): Changed to use currentKeyboardEvent()
1474 and pass event into next/previousFocusNode.
1475 (WebCore::FrameMac::currentKeyboardEvent): Added. Creates a DOM event from
1476 the AppKit current event, if it's a keyboard event. Really just a hack that's
1477 needed to preserve some code we can remove once we deal with the last NSView-
1479 (WebCore::isKeyboardOptionTab): Added.
1480 (WebCore::FrameMac::tabsToLinks): Added event parameter, used to check if the
1481 option (alt) key is down.
1482 (WebCore::FrameMac::tabsToAllControls): Ditto.
1483 (WebCore::FrameMac::keyEvent): Changed call to prepareForUserAction() to just
1484 call resetMultipleFormSubmissionProtection() explicitly instead.
1485 (WebCore::FrameMac::mouseDown): Ditto.
1487 * bridge/mac/WebCoreAXObject.mm:
1488 (-[WebCoreAXObject accessibilityDescription]): Fixed code that incorrectly
1489 assumes that an iframe is an HTMLFrameElement (no longer true since Geoff
1490 changed the class hierarchy a bit).
1491 (-[WebCoreAXObject accessibilityPerformAction:]): Changed call to
1492 prepareForUserAction() to call resetMultipleFormSubmissionProtection()
1496 * page/FrameView.cpp:
1497 (WebCore::FrameView::advanceFocus): Changed function to take an
1498 event parameter, and decide the direction based on the shift key
1499 modifier instead of a passed-in boolean.
1503 (WebCore::Document::nextFocusNode): Added event parameter.
1504 (WebCore::Document::previousFocusNode): Ditto.
1507 (WebCore::Node::isKeyboardFocusable): Ditto.
1508 * html/HTMLAnchorElement.h:
1509 * html/HTMLAnchorElement.cpp:
1510 (WebCore::HTMLAnchorElement::isKeyboardFocusable): Ditto.
1511 * html/HTMLGenericFormElement.h:
1512 * html/HTMLGenericFormElement.cpp:
1513 (WebCore::HTMLGenericFormElement::isKeyboardFocusable): Ditto.
1514 * html/HTMLInputElement.h:
1515 * html/HTMLInputElement.cpp:
1516 (WebCore::HTMLInputElement::isKeyboardFocusable): Ditto.
1517 (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
1518 * html/HTMLSelectElement.h:
1519 * html/HTMLSelectElement.cpp:
1520 (WebCore::HTMLSelectElement::isKeyboardFocusable): Ditto.
1521 * html/HTMLTextAreaElement.h:
1522 * html/HTMLTextAreaElement.cpp:
1523 (WebCore::HTMLTextAreaElement::isKeyboardFocusable): Ditto.
1525 * dom/EventTargetNode.cpp:
1526 (WebCore::EventTargetNode::defaultEventHandler): Pass event to the
1527 advanceFocus function.
1529 * platform/TextField.h:
1530 * platform/mac/TextFieldMac.mm: Removed the non-search field code.
1532 * platform/mac/WebCoreTextField.h:
1533 * platform/mac/WebCoreTextField.mm: Removed the non-search field code.
1534 (-[WebCoreTextFieldController controlTextDidChange:]): Removed the
1535 call to FrameMac::handleKeyboardOptionTabInView, which is no longer
1536 needed since the default handler in HTMLInputElement takes care of
1539 * platform/mac/SliderMac.mm:
1540 (-[WebCoreSlider canBecomeKeyView]): Changed to use currentKeyboardEvent()
1541 and pass event into tabsToAllControls.
1542 (Slider::focusPolicy): Ditto.
1544 * rendering/RenderLineEdit.cpp:
1545 (WebCore::RenderLineEdit::RenderLineEdit): Removed the non-search field code.
1546 (WebCore::RenderLineEdit::updateFromElement): Ditto.
1548 2006-11-08 Brady Eidson <beidson@apple.com>
1550 Reviewed by Dave Harrison, Oliver, and Darin
1551 (oh my! where was superkevin on this one?)
1553 <rdar://problem/4816196> "Xcode Help" crashes in WebCore::DocumentLoader::setPrimaryLoadComplete(bool)
1555 More "free nil checking" we lost in the transition from ObjC to C++
1557 * loader/mac/FrameLoaderMac.mm:
1558 (WebCore::FrameLoader::startLoading): Null check m_provisionalDocumentLoader and bail early.
1559 (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Ditto
1561 2006-11-08 Anders Carlsson <acarlsson@apple.com>
1565 Move more code into editor.
1568 * bridge/EditorClient.h:
1569 * bridge/mac/FrameMac.h:
1570 * bridge/mac/FrameMac.mm:
1571 * bridge/mac/WebCoreFrameBridge.h:
1573 (WebCore::Document::relinquishesEditingFocus):
1574 (WebCore::Document::acceptsEditingFocus):
1575 (WebCore::Document::didBeginEditing):
1576 (WebCore::Document::didEndEditing):
1577 * editing/Editor.cpp:
1578 (WebCore::Editor::indent):
1579 (WebCore::Editor::outdent):
1584 2006-11-08 Beth Dakin <bdakin@apple.com>
1588 Add ability to HitTestResult to ask if the inner non-shared node is
1591 * WebCore.exp: Export HitTestResult::isContentEditable()
1592 * rendering/HitTestResult.cpp:
1593 (WebCore::HitTestResult::isContentEditable):
1594 * rendering/HitTestResult.h:
1596 2006-11-08 Anders Carlsson <acarlsson@apple.com>
1600 * WebCore.xcodeproj/project.pbxproj:
1601 Add DOMCSSStyleDeclarationInternal.h to the "Copy Generated Headers" build phase.
1603 2006-11-08 Timothy Hatcher <timothy@apple.com>
1607 <rdar://problem/4713280> Would like to get an array of bounding rects rather than just the union of them for a DOMRange
1608 <rdar://problem/4804317> Would like SPI to get bounding box for a DOM range without having to change the selection
1610 Added lineBoxRects and boundingBox to Range and DOMRange. These methods correspond to the DOMNode methods.
1612 * bindings/objc/DOM.mm:
1614 (-[DOMNode lineBoxRects]):
1615 (-[DOMRange boundingBox]):
1616 (-[DOMRange lineBoxRects]):
1617 * bindings/objc/DOMPrivate.h:
1619 (WebCore::Range::boundingBox):
1620 (WebCore::Range::addLineBoxRects):
1622 * rendering/RenderContainer.cpp:
1623 (WebCore::RenderContainer::addLineBoxRects):
1624 * rendering/RenderContainer.h:
1625 * rendering/RenderObject.cpp:
1626 (WebCore::RenderObject::addLineBoxRects):
1627 * rendering/RenderObject.h:
1628 * rendering/RenderText.cpp:
1629 (WebCore::RenderText::addLineBoxRects):
1630 * rendering/RenderText.h:
1632 2006-11-08 Anders Carlsson <acarlsson@apple.com>
1636 Move methods from the bridge and frame into editor.
1639 * bridge/EditorClient.h:
1640 * bridge/mac/WebCoreFrameBridge.h:
1641 * bridge/mac/WebCoreFrameBridge.mm:
1642 * editing/Editor.cpp:
1643 (WebCore::Editor::removeFormattingAndStyle):
1644 (WebCore::Editor::applyStyle):
1645 (WebCore::Editor::applyParagraphStyle):
1646 (WebCore::Editor::applyStyleToSelection):
1647 (WebCore::Editor::applyParagraphStyleToSelection):
1648 (WebCore::Editor::toggleBold):
1649 (WebCore::Editor::toggleItalic):
1650 (WebCore::Editor::selectionStartHasStyle):
1652 * editing/JSEditor.cpp:
1656 2006-11-08 Geoffrey Garen <ggaren@apple.com>
1660 Fixed regression in fast/events/objc-event-api. DumpRenderTree expects to
1661 be able to dispatch user events even when off-screen, so we have to support
1662 off-screen windows when handling mouse events.
1664 * platform/Screen.h:
1665 * platform/mac/PlatformMouseEventMac.mm:
1666 (WebCore::globalPoint): Grab the best screen instead of the screen you're
1667 on, since you might be off-screen.
1668 * platform/mac/ScreenMac.mm:
1669 (WebCore::screenForWindow):
1671 2006-11-08 Darin Adler <darin@apple.com>
1673 - fix bug caused by last-minute change to my check-in last night
1674 that is causing layout tests to hang
1676 * dom/Document.cpp: (WebCore::Document::completeURL): Added comments.
1677 * loader/FrameLoader.cpp: (WebCore::FrameLoader::submitForm): Turn
1678 a null string into an empty string before calling completeURL.
1680 2006-11-08 Brady Eidson <beidson@apple.com>
1684 If the request has already been aborted, bail out of didFinishLoading()
1685 immediately. This prevents state change notifications that aren't
1688 * xml/xmlhttprequest.cpp:
1689 (WebCore::XMLHttpRequest::didFinishLoading):
1691 2006-11-08 Darin Adler <darin@apple.com>
1693 - another attempt to fix Qt build
1695 * loader/qt/FrameLoaderQt.cpp: Added missing include of FrameLoader.h.
1697 2006-11-08 Darin Adler <darin@apple.com>
1701 - stray bits of my FrameLoader patch that I left out by accident
1703 * loader/FrameLoader.cpp:
1704 (WebCore::FrameLoader::createWindow): Use m_outgoingReferrer instead of outgoingReferrer()
1705 inside the FrameLoader class.
1706 (WebCore::FrameLoader::requestFrame): Use less DeprecatedString.
1707 (WebCore::FrameLoader::clear): Stop the redirection timer.
1708 (WebCore::FrameLoader::receivedFirstData): Added an early return instead of nesting the
1709 entire function in an if statement. Use less DeprecatedString.
1710 (WebCore::FrameLoader::scheduleLocationChange): Fix backwards ? : operator.
1711 (WebCore::FrameLoader::scheduleRefresh): Ditto.
1712 (WebCore::FrameLoader::urlSelected): Use m_outgoingReferrer instead of outgoingReferrer()
1713 inside the FrameLoader class.
1714 * loader/mac/FrameLoaderMac.mm:
1715 (WebCore::FrameLoader::load): Ditto.
1716 (WebCore::FrameLoader::loadResourceSynchronously): Ditto.
1718 2006-11-07 Beth Dakin <bdakin@apple.com>
1722 Another go at fix for <rdar://problem/4820814> A crash occurs at
1723 WebCore::HitTestResult::spellingToolTip() when mousing down on
1724 iframe at www.macsurfer.com
1726 The fix from yesterday caused a layout test regression which
1727 exposed an existing bug. The existing bug was that we allowed text
1728 nodes to stay in the head tag, but other browsers move them to the
1729 body. The previous fix also caused a performance regression, which
1730 was seemingly easy to fix by moving the new clause in
1731 HTMLParser::handleError() to be below the HTMLElement case.
1733 * html/HTMLDocument.cpp:
1734 (WebCore::HTMLDocument::childAllowed): Don't allow comment nodes to
1735 be the child of the document.
1736 * html/HTMLHeadElement.cpp:
1737 (WebCore::HTMLHeadElement::childAllowed): Do not allow non-
1738 whitespace text nodes to be children of the head.
1739 * html/HTMLHeadElement.h:
1740 * html/HTMLParser.cpp:
1741 (WebCore::HTMLParser::handleError): Error case for comment nodes.
1742 * page/FrameView.cpp:
1743 (WebCore::FrameView::handleMousePressEvent): Safety-net null check
1744 for the original crash.
1746 2006-11-07 Darin Adler <darin@apple.com>
1748 - another attempt to fix Qt build
1750 * loader/icon/IconLoader.h: Added missing include.
1752 2006-11-06 Geoffrey Garen <ggaren@apple.com>
1754 Reviewed by Tim Hatcher.
1756 Removed ScreenClient. It was highly unpopular, risking my midterm re-election.
1758 None of Screen's responsibilities require up-calls to WebKit or delegates,
1759 so WebCore can handle it all.
1761 Moved Screen back from page/ to platform/ because it's a platform
1764 Merged scaling and flipping functions into 'toUserSpace' and 'toDeviceSpace',
1765 since the two were always used together.
1767 Changed pixel depth queries to query the deepest screen. Darin mentioned
1768 that it might have been a feature, not a bug, to use the main/menubar screen
1769 regardless of the screen you were on. For scaling and flipping that's not
1770 the case, but for querying pixel depth I think it is. You want to know
1771 about the highest pixel depth your content may display on.
1776 * WebCore.xcodeproj/project.pbxproj:
1778 (WebCore::Page::Page):
1780 * page/Screen.cpp: Removed.
1781 * page/Screen.h: Removed.
1782 * page/ScreenClient.h: Removed.
1783 * platform/mac/PlatformMouseEventMac.mm:
1784 (WebCore::globalPoint):
1785 * platform/mac/ScreenMac.mm:
1787 (WebCore::bestScreen):
1788 (WebCore::Screen::depth):
1789 (WebCore::Screen::depthPerComponent):
1790 (WebCore::Screen::isMonochrome):
1791 (WebCore::Screen::rect):
1792 (WebCore::Screen::usableRect):
1793 (WebCore::toUserSpace):
1794 (WebCore::toDeviceSpace):
1796 2006-11-07 Darin Adler <darin@apple.com>
1798 - try to fix Qt build
1800 * CMakeLists.txt: Updated for some file changes.
1801 * WebCoreSources.bkl: Ditto.
1803 2006-11-07 Darin Adler <darin@apple.com>
1807 - moved loader code from Frame/FrameMac to FrameLoader
1810 * WebCore.xcodeproj/project.pbxproj:
1811 * bindings/js/JSXSLTProcessor.h:
1812 * bindings/js/kjs_events.cpp:
1813 (KJS::JSLazyEventListener::parseCode):
1814 * bindings/js/kjs_html.cpp:
1815 (KJS::JSHTMLDocument::putValueProperty):
1816 * bindings/js/kjs_navigator.cpp:
1817 (KJS::Navigator::getValueProperty):
1818 * bindings/js/kjs_proxy.cpp:
1819 (WebCore::KJSProxy::initScriptIfNeeded):
1820 * bindings/js/kjs_window.cpp:
1821 (KJS::Screen::Screen):
1822 (KJS::createNewWindow):
1823 (KJS::Window::getValueProperty):
1825 (KJS::Window::isSafeScript):
1826 (KJS::WindowFunc::callAsFunction):
1827 (KJS::ScheduledAction::execute):
1828 (KJS::Location::getValueProperty):
1829 (KJS::Location::put):
1830 (KJS::Location::toString):
1831 (KJS::LocationFunc::callAsFunction):
1832 (KJS::History::getValueProperty):
1833 (KJS::HistoryFunc::callAsFunction):
1834 * bindings/objc/DOM.mm:
1835 (+[DOMNode _nodeWith:WebCore::]):
1836 * bridge/mac/FrameMac.h:
1837 * bridge/mac/FrameMac.mm:
1838 (WebCore::FrameMac::~FrameMac):
1839 (WebCore::FrameMac::setView):
1840 (WebCore::FrameMac::setStatusBarText):
1841 * bridge/mac/WebCoreFrameBridge.h:
1842 * bridge/mac/WebCoreFrameBridge.mm:
1843 (-[WebCoreFrameBridge close]):
1844 (-[WebCoreFrameBridge addData:]):
1845 (-[WebCoreFrameBridge createFrameViewWithNSView:marginWidth:marginHeight:]):
1846 (-[WebCoreFrameBridge reapplyStylesForDeviceType:]):
1847 (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1848 (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
1849 (-[WebCoreFrameBridge baseURL]):
1850 (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
1851 (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]):
1852 (-[WebCoreFrameBridge canProvideDocumentSource]):
1853 (-[WebCoreFrameBridge receivedData:textEncodingName:]):
1854 * css/cssparser.cpp:
1855 (WebCore::CSSParser::parseContent):
1856 * dom/DOMImplementation.cpp:
1857 (WebCore::DOMImplementation::createDocument):
1858 (WebCore::DOMImplementation::createHTMLDocument):
1859 * dom/DOMImplementation.h:
1861 (WebCore::Document::readyState):
1862 (WebCore::Document::updateTitle):
1863 (WebCore::Document::open):
1864 (WebCore::Document::close):
1865 (WebCore::Document::implicitClose):
1866 (WebCore::Document::processHttpEquiv):
1867 (WebCore::Document::referrer):
1868 (WebCore::Document::finishedParsing):
1869 * dom/ProcessingInstruction.cpp:
1870 (WebCore::ProcessingInstruction::checkStyleSheet):
1871 * dom/XMLTokenizer.cpp:
1872 (WebCore::XMLTokenizer::endElementNs):
1873 (WebCore::ignorableWhitespaceHandler):
1874 (WebCore::XMLTokenizer::notifyFinished):
1875 * editing/TextIterator.cpp:
1876 (WebCore::TextIterator::rangeFromLocationAndLength):
1877 * html/HTMLAnchorElement.cpp:
1878 (WebCore::HTMLAnchorElement::defaultEventHandler):
1879 * html/HTMLBaseElement.cpp:
1880 (WebCore::HTMLBaseElement::process):
1881 * html/HTMLDocument.cpp:
1882 (WebCore::HTMLDocument::lastModified):
1883 * html/HTMLFormElement.cpp:
1884 (WebCore::HTMLFormElement::formData):
1885 (WebCore::HTMLFormElement::submit):
1886 * html/HTMLFrameElementBase.cpp:
1887 (WebCore::HTMLFrameElementBase::isURLAllowed):
1888 (WebCore::HTMLFrameElementBase::openURL):
1889 (WebCore::HTMLFrameElementBase::willRemove):
1890 * html/HTMLInputElement.cpp:
1891 (WebCore::HTMLInputElement::setValueFromRenderer):
1892 * html/HTMLLinkElement.cpp:
1893 (WebCore::HTMLLinkElement::process):
1894 * html/HTMLParser.cpp:
1895 (WebCore::HTMLParser::handleError):
1896 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
1897 * html/HTMLPreElement.idl:
1898 * html/HTMLScriptElement.cpp:
1899 (WebCore::HTMLScriptElement::parseMappedAttribute):
1900 (WebCore::HTMLScriptElement::insertedIntoDocument):
1901 * html/HTMLTokenizer.cpp:
1902 (WebCore::HTMLTokenizer::scriptExecution):
1903 (WebCore::HTMLTokenizer::parseTag):
1904 (WebCore::HTMLTokenizer::write):
1905 (WebCore::HTMLTokenizer::stopParsing):
1906 (WebCore::HTMLTokenizer::timerFired):
1907 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1908 (WebCore::KCanvasFilterQuartz::prepareFilter):
1909 * ksvg2/svg/SVGAElement.cpp:
1910 (WebCore::SVGAElement::defaultEventHandler):
1911 * ksvg2/svg/SVGElement.cpp:
1912 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
1913 * loader/DocLoader.cpp:
1914 (WebCore::DocLoader::setLoadInProgress):
1915 * loader/FrameLoader.cpp:
1916 (WebCore::FormSubmission::FormSubmission):
1917 (WebCore::ScheduledRedirection::):
1918 (WebCore::ScheduledRedirection::ScheduledRedirection):
1919 (WebCore::cancelAll):
1920 (WebCore::getString):
1921 (WebCore::isBackForwardLoadType):
1922 (WebCore::numRequests):
1923 (WebCore::FrameLoader::FrameLoader):
1924 (WebCore::FrameLoader::~FrameLoader):
1925 (WebCore::FrameLoader::createWindow):
1926 (WebCore::FrameLoader::changeLocation):
1927 (WebCore::FrameLoader::urlSelected):
1928 (WebCore::FrameLoader::requestFrame):
1929 (WebCore::FrameLoader::loadSubframe):
1930 (WebCore::FrameLoader::submitFormAgain):
1931 (WebCore::FrameLoader::submitForm):
1932 (WebCore::FrameLoader::stopLoading):
1933 (WebCore::FrameLoader::stop):
1934 (WebCore::FrameLoader::closeURL):
1935 (WebCore::FrameLoader::cancelRedirection):
1936 (WebCore::FrameLoader::iconURL):
1937 (WebCore::FrameLoader::didOpenURL):
1938 (WebCore::FrameLoader::didExplicitOpen):
1939 (WebCore::FrameLoader::replaceContentsWithScriptResult):
1940 (WebCore::FrameLoader::executeScript):
1941 (WebCore::FrameLoader::cancelAndClear):
1942 (WebCore::FrameLoader::clear):
1943 (WebCore::FrameLoader::receivedFirstData):
1944 (WebCore::FrameLoader::responseMIMEType):
1945 (WebCore::FrameLoader::setResponseMIMEType):
1946 (WebCore::FrameLoader::begin):
1947 (WebCore::FrameLoader::write):
1948 (WebCore::FrameLoader::end):
1949 (WebCore::FrameLoader::endIfNotLoading):
1950 (WebCore::FrameLoader::startIconLoader):
1951 (WebCore::FrameLoader::commitIconURLToIconDatabase):
1952 (WebCore::FrameLoader::gotoAnchor):
1953 (WebCore::FrameLoader::finishedParsing):
1954 (WebCore::FrameLoader::loadDone):
1955 (WebCore::FrameLoader::checkCompleted):
1956 (WebCore::FrameLoader::checkEmitLoadEvent):
1957 (WebCore::FrameLoader::baseURL):
1958 (WebCore::FrameLoader::baseTarget):
1959 (WebCore::FrameLoader::completeURL):
1960 (WebCore::FrameLoader::scheduleRedirection):
1961 (WebCore::FrameLoader::scheduleLocationChange):
1962 (WebCore::FrameLoader::scheduleRefresh):
1963 (WebCore::FrameLoader::isScheduledLocationChangePending):
1964 (WebCore::FrameLoader::scheduleHistoryNavigation):
1965 (WebCore::FrameLoader::redirectionTimerFired):
1966 (WebCore::FrameLoader::encoding):
1967 (WebCore::FrameLoader::requestObject):
1968 (WebCore::FrameLoader::shouldUsePlugin):
1969 (WebCore::FrameLoader::loadPlugin):
1970 (WebCore::FrameLoader::clearRecordedFormValues):
1971 (WebCore::FrameLoader::recordFormValue):
1972 (WebCore::FrameLoader::parentCompleted):
1973 (WebCore::FrameLoader::outgoingReferrer):
1974 (WebCore::FrameLoader::lastModified):
1975 (WebCore::FrameLoader::opener):
1976 (WebCore::FrameLoader::setOpener):
1977 (WebCore::FrameLoader::openedByJavaScript):
1978 (WebCore::FrameLoader::setOpenedByJavaScript):
1979 (WebCore::FrameLoader::handleFallbackContent):
1980 (WebCore::FrameLoader::provisionalLoadStarted):
1981 (WebCore::FrameLoader::userGestureHint):
1982 (WebCore::FrameLoader::didNotOpenURL):
1983 (WebCore::FrameLoader::resetMultipleFormSubmissionProtection):
1984 (WebCore::FrameLoader::setEncoding):
1985 (WebCore::FrameLoader::addData):
1986 (WebCore::FrameLoader::canCachePage):
1987 (WebCore::FrameLoader::updatePolicyBaseURL):
1988 (WebCore::FrameLoader::setPolicyBaseURL):
1989 (WebCore::FrameLoader::scrollToAnchor):
1990 (WebCore::FrameLoader::isComplete):
1991 (WebCore::FrameLoader::isLoadingMainResource):
1992 (WebCore::FrameLoader::url):
1993 (WebCore::FrameLoader::startRedirectionTimer):
1994 (WebCore::FrameLoader::stopRedirectionTimer):
1995 (WebCore::FrameLoader::updateBaseURLForEmptyDocument):
1996 (WebCore::FrameLoader::completed):
1997 (WebCore::FrameLoader::started):
1998 (WebCore::FrameLoader::containsPlugins):
1999 (WebCore::FrameLoader::prepareForLoadStart):
2000 (WebCore::FrameLoader::setupForReplace):
2001 (WebCore::FrameLoader::setupForReplaceByMIMEType):
2002 (WebCore::FrameLoader::finalSetupForReplace):
2003 (WebCore::FrameLoader::load):
2004 (WebCore::FrameLoader::canTarget):
2005 (WebCore::FrameLoader::stopLoadingPlugIns):
2006 (WebCore::FrameLoader::stopLoadingSubresources):
2007 (WebCore::FrameLoader::stopLoadingSubframes):
2008 (WebCore::FrameLoader::stopAllLoaders):
2009 (WebCore::FrameLoader::cancelMainResourceLoad):
2010 (WebCore::FrameLoader::cancelPendingArchiveLoad):
2011 (WebCore::FrameLoader::activeDocumentLoader):
2012 (WebCore::FrameLoader::addPlugInStreamLoader):
2013 (WebCore::FrameLoader::removePlugInStreamLoader):
2014 (WebCore::FrameLoader::hasMainResourceLoader):
2015 (WebCore::FrameLoader::isLoadingSubresources):
2016 (WebCore::FrameLoader::isLoadingPlugIns):
2017 (WebCore::FrameLoader::isLoading):
2018 (WebCore::FrameLoader::addSubresourceLoader):
2019 (WebCore::FrameLoader::removeSubresourceLoader):
2020 (WebCore::FrameLoader::releaseMainResourceLoader):
2021 (WebCore::FrameLoader::setDocumentLoader):
2022 (WebCore::FrameLoader::documentLoader):
2023 (WebCore::FrameLoader::setPolicyDocumentLoader):
2024 (WebCore::FrameLoader::provisionalDocumentLoader):
2025 (WebCore::FrameLoader::setProvisionalDocumentLoader):
2026 (WebCore::FrameLoader::state):
2027 (WebCore::FrameLoader::timeOfLastCompletedLoad):
2028 (WebCore::FrameLoader::setState):
2029 (WebCore::FrameLoader::clearProvisionalLoad):
2030 (WebCore::FrameLoader::markLoadComplete):
2031 (WebCore::FrameLoader::commitProvisionalLoad):
2032 (WebCore::FrameLoader::privateBrowsingEnabled):
2033 (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
2034 (WebCore::FrameLoader::clientRedirected):
2035 (WebCore::FrameLoader::shouldReload):
2036 (WebCore::FrameLoader::closeOldDataSources):
2037 (WebCore::FrameLoader::open):
2038 (WebCore::FrameLoader::isStopping):
2039 (WebCore::FrameLoader::finishedLoading):
2040 (WebCore::FrameLoader::URL):
2041 (WebCore::FrameLoader::isArchiveLoadPending):
2042 (WebCore::FrameLoader::isHostedByObjectElement):
2043 (WebCore::FrameLoader::isLoadingMainFrame):
2044 (WebCore::FrameLoader::canShowMIMEType):
2045 (WebCore::FrameLoader::representationExistsForURLScheme):
2046 (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
2047 (WebCore::FrameLoader::cancelContentPolicyCheck):
2048 (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
2049 (WebCore::FrameLoader::finishedLoadingDocument):
2050 (WebCore::FrameLoader::isReplacing):
2051 (WebCore::FrameLoader::setReplacing):
2052 (WebCore::FrameLoader::revertToProvisional):
2053 (WebCore::FrameLoader::subframeIsLoading):
2054 (WebCore::FrameLoader::willChangeTitle):
2055 (WebCore::FrameLoader::loadType):
2056 (WebCore::FrameLoader::stopPolicyCheck):
2057 (WebCore::FrameLoader::continueAfterContentPolicy):
2058 (WebCore::FrameLoader::continueAfterWillSubmitForm):
2059 (WebCore::FrameLoader::didFirstLayout):
2060 (WebCore::FrameLoader::frameLoadCompleted):
2061 (WebCore::FrameLoader::firstLayoutDone):
2062 (WebCore::FrameLoader::isQuickRedirectComing):
2063 (WebCore::FrameLoader::closeDocument):
2064 (WebCore::FrameLoader::detachChildren):
2065 (WebCore::FrameLoader::checkLoadComplete):
2066 (WebCore::FrameLoader::numPendingOrLoadingRequests):
2067 (WebCore::FrameLoader::setClient):
2068 (WebCore::FrameLoader::client):
2069 (WebCore::FrameLoader::userAgent):
2070 (WebCore::FrameLoader::createEmptyDocument):
2071 (WebCore::FrameLoader::tokenizerProcessedData):
2072 (WebCore::FrameLoader::didTellBridgeAboutLoad):
2073 (WebCore::FrameLoader::haveToldBridgeAboutLoad):
2074 (WebCore::FrameLoader::handledOnloadEvents):
2075 (WebCore::FrameLoader::frameDetached):
2076 (WebCore::FrameLoader::setTitle):
2077 (WebCore::FrameLoaderClient::~FrameLoaderClient):
2078 * loader/FrameLoader.h:
2080 * loader/FrameLoaderClient.h:
2081 * loader/PluginDocument.cpp:
2082 (WebCore::PluginTokenizer::createDocumentStructure):
2083 (WebCore::PluginTokenizer::writeRawData):
2084 * loader/ResourceLoader.h:
2085 * loader/TextResourceDecoder.cpp:
2086 (WebCore::TextResourceDecoder::checkForHeadCharset):
2087 * loader/icon/IconLoader.cpp:
2088 (WebCore::IconLoader::startLoading):
2089 (WebCore::IconLoader::finishLoading):
2090 * loader/loader.cpp:
2091 (WebCore::Loader::didReceiveResponse):
2092 * loader/mac/DocumentLoaderMac.mm:
2093 (WebCore::DocumentLoader::~DocumentLoader):
2094 (WebCore::DocumentLoader::stopLoading):
2095 (WebCore::DocumentLoader::finishedLoading):
2096 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
2097 (WebCore::DocumentLoader::setPrimaryLoadComplete):
2098 * loader/mac/FrameLoaderMac.mm:
2099 (WebCore::FrameLoader::load):
2100 (WebCore::FrameLoader::startLoading):
2101 (WebCore::FrameLoader::cancelMainResourceLoad):
2102 (WebCore::FrameLoader::receivedMainResourceError):
2103 (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
2104 (WebCore::FrameLoader::commitProvisionalLoad):
2105 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2106 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2107 (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
2108 (WebCore::FrameLoader::detachFromParent):
2109 (WebCore::FrameLoader::addExtraFieldsToRequest):
2110 (WebCore::FrameLoader::loadResourceSynchronously):
2111 (WebCore::FrameLoader::createFrame):
2112 (WebCore::FrameLoader::objectContentType):
2114 (WebCore::FrameLoader::createPlugin):
2115 (WebCore::FrameLoader::redirectDataToPlugin):
2116 (WebCore::FrameLoader::createJavaAppletWidget):
2117 (WebCore::FrameLoader::partClearedInBegin):
2118 (WebCore::FrameLoader::saveDocumentState):
2119 (WebCore::FrameLoader::restoreDocumentState):
2120 (WebCore::FrameLoader::overrideMediaType):
2121 (WebCore::FrameLoader::mainResourceData):
2122 (WebCore::FrameLoader::canGoBackOrForward):
2123 (WebCore::FrameLoader::originalRequestURL):
2124 (WebCore::FrameLoader::getHistoryLength):
2125 (WebCore::FrameLoader::goBackOrForward):
2126 (WebCore::FrameLoader::historyURL):
2127 (WebCore::FrameLoader::didFinishLoad):
2128 * loader/mac/LoaderFunctionsMac.mm:
2129 (WebCore::ServeSynchronousRequest):
2130 (WebCore::CheckCacheObjectStatus):
2131 * loader/mac/ResourceLoaderMac.mm:
2132 (WebCore::ResourceLoader::cancel):
2133 * loader/mac/SubresourceLoaderMac.mm:
2134 (WebCore::SubresourceLoader::create):
2135 * loader/qt/FrameLoaderQt.cpp: Added.
2136 (WebCore::FrameLoader::submitForm):
2137 (WebCore::FrameLoader::urlSelected):
2138 (WebCore::FrameLoader::setTitle):
2139 (WebCore::FrameLoader::createFrame):
2140 (WebCore::FrameLoader::objectContentType):
2141 (WebCore::FrameLoader::createPlugin):
2142 (WebCore::FrameLoader::createJavaAppletWidget):
2143 (WebCore::FrameLoader::originalRequestURL):
2144 * page/DOMWindow.cpp:
2145 (WebCore::DOMWindow::document):
2147 (WebCore::Frame::~Frame):
2148 (WebCore::Frame::reparseConfiguration):
2149 (WebCore::Frame::shouldDragAutoNode):
2150 (WebCore::Frame::prepareForUserAction):
2151 (WebCore::FramePrivate::FramePrivate):
2152 (WebCore::FramePrivate::~FramePrivate):
2154 * page/FramePrivate.h:
2155 * page/FrameView.cpp:
2156 (WebCore::FrameView::layout):
2157 (WebCore::FrameView::mediaType):
2159 * page/PageState.cpp:
2160 (WebCore::PageState::PageState):
2161 (WebCore::PageState::restoreJavaScriptState):
2162 * platform/mac/CookieJar.mm:
2163 (WebCore::setCookies):
2164 * platform/mac/TextCodecMac.cpp:
2165 * platform/mac/WebFontCache.mm:
2166 (+[WebFontCache fontWithFamily:traits:size:]):
2167 * platform/network/cf/ResourceHandleCFNet.cpp:
2168 (WebCore::ResourceHandle::start):
2169 * platform/network/mac/ResourceHandleMac.mm:
2170 (WebCore::ResourceHandle::start):
2171 * platform/qt/FrameQt.cpp:
2172 * platform/qt/FrameQt.h:
2173 * rendering/RenderApplet.cpp:
2174 (WebCore::RenderApplet::createWidgetIfNecessary):
2175 * rendering/RenderBlock.h:
2176 * rendering/RenderPartObject.cpp:
2177 (WebCore::isURLAllowed):
2178 (WebCore::RenderPartObject::updateWidget):
2179 * xml/DOMParser.cpp:
2180 (WebCore::DOMParser::parseFromString):
2181 * xml/XSLTProcessor.cpp:
2182 (WebCore::XSLTProcessor::createDocumentFromSource):
2183 * xml/xmlhttprequest.cpp:
2184 (WebCore::XMLHttpRequest::getResponseXML):
2186 2006-11-07 Anders Carlsson <acarlsson@apple.com>
2190 Get rid of some duplicate editing enums. Also rename EAlter to EAlteration.
2192 * bridge/mac/FrameMac.mm:
2193 (WebCore::FrameMac::registerCommandForUndoOrRedo):
2194 * bridge/mac/WebCoreFrameBridge.h:
2195 * bridge/mac/WebCoreFrameBridge.mm:
2196 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
2197 (-[WebCoreFrameBridge alterCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
2198 (-[WebCoreFrameBridge alterCurrentSelection:SelectionController::verticalDistance:]):
2199 (-[WebCoreFrameBridge selectionGranularity]):
2200 (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
2201 (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
2202 (-[WebCoreFrameBridge setTypingStyle:withUndoAction:]):
2203 (-[WebCoreFrameBridge applyStyle:withUndoAction:]):
2204 (-[WebCoreFrameBridge applyParagraphStyle:withUndoAction:]):
2205 * editing/SelectionController.cpp:
2206 (WebCore::SelectionController::setModifyBias):
2207 (WebCore::SelectionController::modify):
2208 * editing/SelectionController.h:
2209 (WebCore::SelectionController::):
2210 * editing/TextGranularity.h:
2212 2006-11-07 Brady Eidson <beidson@apple.com>
2216 Changed the check for "top level frame" to something much more valid
2219 (WebCore::Frame::endIfNotLoading):
2221 2006-11-07 Beth Dakin <bdakin@apple.com>
2223 Reviewed by Hyatt (yesterday).
2225 Here is part of my patch from yesterday that is safe to roll back
2226 in. It will make the BuildBot happy.
2228 * rendering/HitTestResult.cpp:
2229 (WebCore::HitTestResult::spellingToolTip): Null-check
2230 m_innerNonSharedNode.
2232 2006-11-07 Darin Adler <darin@apple.com>
2234 * loader/icon/IconLoader.cpp: (WebCore::IconLoader::didReceiveResponse):
2235 Comment grammar fix.
2237 2006-11-07 Darin Adler <darin@apple.com>
2239 Rolled out change for <rdar://problem/4820814>.
2241 Beth's planning on landing a new change for it soon, but in the mean time
2242 we need layout tests succeeding again.
2244 2006-11-07 Darin Adler <darin@apple.com>
2248 - fix <rdar://problem/4752069> 9A274: World of Warcraft Launcher
2249 crashes on launch in WebCore::ResourceLoader::start
2251 No layout test, because this depends on cached icons, although there's
2252 perhaps a way to write a test for it with some further ingenuity.
2254 * loader/icon/IconLoader.h: Make IconLoader inherit from Noncopyable
2255 to make explicit the fact that it can't be successfully copied.
2256 Remove notifyIconChanged function and put the contents in the caller.
2257 This eliminates the need for IconLoaderMac.mm. Added finishedLoading
2258 and clearLoadingState functions to share code. Removed m_url, since the
2259 resource handle already stores the URL. Renamed m_resourceLoader to
2260 m_handle to reflect the class's name change. Removed the 4096-byte
2261 inline buffer from m_data, since the malloc savings is not sufficient
2262 to offset the additional memory use. Removed m_httpStatusCode because
2263 we can instead cancel the load when we get a status code that reflects
2264 failure. Added m_loadIsInProgress boolean because we need to detect
2265 loads that complete during the ResourceHandle::create function call.
2267 * loader/icon/IconLoader.cpp:
2268 (WebCore::IconLoader::IconLoader): Initialize m_loadIsInProgress.
2269 Don't initialize m_httpStatusCode.
2270 (WebCore::IconLoader::~IconLoader): Updated for name change.
2271 (WebCore::IconLoader::startLoading): Added code to use the
2272 m_loadIsInProgress flag to detect if the load completed while inside
2273 the ResourceHandle::create function. Removed code to set m_url.
2274 (WebCore::IconLoader::stopLoading): Call clearLoadingState to share
2276 (WebCore::IconLoader::didReceiveResponse): Kill the ResourceHandle
2277 and finish loading if the HTTP status code indicates failure.
2278 (WebCore::IconLoader::didReceiveData): Removed assertion that checks
2279 the ResourceHandle, since we can't do that any more.
2280 (WebCore::IconLoader::didFinishLoading): Changed to call finishLoading
2281 so we can share code with the new didReceiveResponse code path.
2282 (WebCore::IconLoader::finishLoading): Moved code here from the
2283 didFinishLoading callback. Pass a URL when calling
2284 commitIconURLToIconDatabase. Call notifyIconChanged directly here
2285 instead of using a separate function. Call clearLoadingState to
2286 share more code with stopLoading.
2287 (WebCore::IconLoader::clearLoadingState): Added.
2289 * loader/mac/IconLoaderMac.mm: Removed.
2290 * WebCore.xcodeproj/project.pbxproj: Removed IconLoaderMac.mm.
2292 2006-11-06 David Harrison <harrison@apple.com>
2296 <rdar://problem/4714993> REGRESSION: After replacing a misspelled word in a sentence, the selected word wraps down to next line (10428)
2298 * editing/pasteboard/3976872-expected.txt:
2299 * editing/pasteboard/4076267-2-expected.txt:
2300 * editing/pasteboard/4076267-3-expected.txt:
2301 * editing/pasteboard/4076267-expected.txt:
2302 * editing/pasteboard/8145-1-expected.txt:
2303 * editing/pasteboard/paste-empty-startcontainer-expected.txt: Removed.
2304 * editing/pasteboard/paste-match-style-001-expected.txt:
2305 * editing/pasteboard/paste-match-style-002-expected.txt:
2306 * editing/pasteboard/paste-text-019-expected.txt:
2307 * editing/pasteboard/pasting-tabs-expected.txt:
2308 Updated because pasting text with no newlines does not use intermediate div.
2310 * editing/markup.cpp:
2311 (WebCore::fillContainerFromString):
2312 First parameter is now a Container so a fragment can be passed.
2314 (WebCore::createFragmentFromText):
2315 A string with no newlines gets added inline, rather than being put into a paragraph.
2317 2006-11-06 Beth Dakin <bdakin@apple.com>
2321 Fix for <rdar://problem/4820814> A crash occurs at
2322 WebCore::HitTestResult::spellingToolTip() when mousing down on
2323 iframe at www.macsurfer.com
2325 The bug here is that the source of the iframe is only a comment,
2326 and we were not properly constructing the frame because it was
2327 sort-of empty but not.
2329 * html/HTMLDocument.cpp:
2330 (WebCore::HTMLDocument::childAllowed): newChild is NOT allowed if
2331 it is a comment node.
2332 * html/HTMLParser.cpp:
2333 (WebCore::HTMLParser::handleError): if n is a comment node and
2334 there is no head, we create a head, insert in the document, and add
2335 the comment node as a child. This is what Firefox does too.
2336 * page/FrameView.cpp:
2337 (WebCore::FrameView::handleMousePressEvent): Safe-guard for the
2338 fix. It is possible to get a mouse event without a target node, so
2339 we null check it. (Of course, in the case of this bug, it should
2340 not have been null, but it is a good thing to check for anyway.
2341 * rendering/HitTestResult.cpp:
2342 (WebCore::HitTestResult::spellingToolTip): Null-check
2343 m_innerNonSharedNode.
2345 2006-11-06 Justin Garcia <justin.garcia@apple.com>
2347 Reviewed by harrison
2349 <rdar://problem/4641880>
2350 Setting bullets to existing text grabs subsequent paragraph
2352 When a selection ends at the start of a paragraph, we rarely paint
2353 the selection gap before that paragraph, because there often is no gap.
2354 In a case like this, it's not obvious to the user that the selection
2355 ends "inside" that paragraph, so it would be confusing if
2356 InsertUn{Ordered}List and Indent/Outdent operated on that paragraph.
2358 * editing/FormatBlockCommand.cpp:
2359 (WebCore::FormatBlockCommand::doApply): Moved the check for editability of
2360 the selection to a more appropriate place. Change the endingSelection
2361 if it ends at the start of a paragraph.
2362 * editing/IndentOutdentCommand.cpp:
2363 (WebCore::IndentOutdentCommand::doApply): Ditto.
2364 * editing/InsertListCommand.cpp:
2365 (WebCore::InsertListCommand::doApply): Ditto.
2367 2006-11-06 Brady Eidson <beidson@apple.com>
2371 <rdar://problem/4822911> - ASSERTION was a little overzealous.
2372 Toned it down a bit.
2374 * xml/xmlhttprequest.cpp:
2375 (WebCore::XMLHttpRequest::didFinishLoading): Toned down assertion
2377 2006-11-06 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
2381 Linux\Gdk build fixes.
2383 * loader/icon/IconDatabase.cpp:
2384 * loader/icon/SQLStatement.h:
2385 * platform/gdk/ChromeClientGdk.h: Added.
2386 (WebCore::ChromeClientGdk::~ChromeClientGdk):
2387 * platform/gdk/CursorGdk.cpp:
2388 (WebCore::pointerCursor):
2389 * platform/gdk/FrameGdk.cpp:
2390 (WebCore::doScroll):
2391 (WebCore::FrameGdk::FrameGdk):
2392 (WebCore::FrameGdk::submitForm):
2393 (WebCore::FrameGdk::urlSelected):
2394 (WebCore::FrameGdk::openURL):
2395 (WebCore::FrameGdk::handleGdkEvent):
2396 * platform/gdk/FrameGdk.h:
2397 (WebCore::FrameGdk::client):
2398 * platform/gdk/RenderPopupMenuGdk.cpp:
2399 (WebCore::PopupMenu::updateFromElement):
2400 * platform/gdk/ScreenGdk.cpp:
2401 * platform/gdk/TemporaryLinkStubs.cpp:
2402 (Slider::focusPolicy):
2403 (WebCore::ServeSynchronousRequest):
2404 (FrameGdk::goBackOrForward):
2405 (FrameGdk::getHistoryLength):
2406 (FrameGdk::historyURL):
2407 (ChromeClientGdk::canRunModal):
2408 (ChromeClientGdk::runModal):
2409 (WebCore::systemBeep):
2410 (WebCore::CachedResource::setPlatformResponse):
2412 (ResourceLoader::loadsBlocked):
2413 (IconLoader::notifyIconChanged):
2414 * platform/network/gdk/ResourceHandleManager.cpp:
2415 (WebCore::writeCallback):
2416 (WebCore::ResourceHandleManager::downloadTimerCallback):
2417 (WebCore::ResourceHandleManager::remove):
2418 (WebCore::ResourceHandleManager::add):
2420 2006-11-06 Geoffrey Garen <ggaren@apple.com>
2424 * WebCore.xcodeproj/project.pbxproj:
2426 2006-11-06 Geoffrey Garen <ggaren@apple.com>
2428 Reviewed by Maciej, Anders, Darin.
2430 Removed the Page bridge. Beefed up Chrome. Added Screen and ScreenClient.
2431 Fixed a minor where WebCore would always assume it was displayed on the
2432 monitor containing the menubar. window.open and window.showModalDialog
2433 are now cross-platform.
2435 Layout tests, manual-tests/show-modal-dialog, and manual-tests/
2436 window-open-features-parsing all pass. I verified the new screen functionality
2437 by running in DRT, and checking whether WebCore knew it was off-screen.
2439 Some refactoring remains, as all were not pleased by this design. I see
2440 in my future another patch.
2442 * bindings/js/kjs_window.cpp: Screen is now a stand-alone object with a
2443 client, to encapsulate asking the platform questions about the screen occupied by
2444 the page. (Previously, we always assumed we were on screen 0, which was a bug.)
2445 * bridge/mac/WebCoreFrameBridge.mm:
2446 (createMouseEventFromDraggingInfo): Reversed argument order, to match other
2448 (-[WebCoreFrameBridge dragSourceMovedTo:]): ditto
2449 (-[WebCoreFrameBridge dragSourceEndedAt:operation:]): ditto
2450 * bridge/mac/WebCoreFrameNamespaces.h: Removed. Dead Code.
2451 * bridge/mac/WebCoreFrameNamespaces.mm: Removed. Dead Code.
2452 * bridge/mac/WebCorePageBridge.h: Removed. Dead Code.
2453 * bridge/mac/WebCorePageBridge.mm: Removed. Dead Code.
2454 * manual-tests/window-open-features-parsing.html: Updated for accuracy.
2455 (In this case, neither size nor position is specified, so you should
2456 get the default window size and position.)
2457 * page/Screen.cpp: Added. Includes screen-related helper functions used
2458 in WebCore and WebKit.
2459 * platform/PlatformMouseEvent.h: Exported common code so it doesn't have
2460 to be duplicated. Renamed "position" to "point" since both were used,
2461 and "point" seemed clearer.
2462 * platform/Screen.h: Removed. Dead Code.
2463 * platform/mac/LoggingMac.mm: Added. Moved code here from WebCorePageBridge
2466 2006-11-06 Graham Dennis <graham.dennis@gmail.com>
2468 Reviewed by Tim Hatcher.
2470 Part of patch for http://bugs.webkit.org/show_bug.cgi?id=11323
2471 Link dragging behaviour does not obey WebKitEditableLinkBehavior WebPref
2473 No layout tests added as this must be tested manually by the test
2474 WebCore/manual-tests/contenteditable-link.html
2476 * WebCore.exp: Exported HitTestResult::isLiveLink().
2477 * html/HTMLAnchorElement.cpp:
2478 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
2479 (WebCore::HTMLAnchorElement::defaultEventHandler):
2480 (WebCore::HTMLAnchorElement::isLiveLink):
2481 * html/HTMLAnchorElement.h: added m_wasShiftKeyDownOnMouseDown variable
2482 to track shift key status.
2483 * manual-tests/contenteditable-link.html: Added description about link
2485 * rendering/HitTestResult.cpp:
2486 (WebCore::HitTestResult::isLiveLink): Added.
2487 * rendering/HitTestResult.h:
2489 2006-11-06 Brady Eidson <beidson@apple.com>
2493 Fixes <rdar://problem/4812674> and http://bugs.webkit.org/show_bug.cgi?id=11530
2494 For now, we have to not load favicons when we have no Document - linking directly
2495 to PDFs being the common case
2497 * loader/icon/IconLoader.cpp:
2498 (WebCore::IconLoader::startLoading): Check for the document and return if none
2500 2006-11-06 Brady Eidson <beidson@apple.com>
2502 Reviewed by Dave Harrison
2504 <rdar://problem/4801066>
2505 Added a critical null frameLoader() check
2507 * loader/mac/MainResourceLoaderMac.mm:
2508 (WebCore::MainResourceLoader::loadNow):
2510 2006-11-06 David Harrison <harrison@apple.com>
2514 <rdar://problem/4813973> Pressing delete key to remove empty quoted line leaves cursor mis-positioned
2517 * editing/deleting/delete-br-012.html
2519 * editing/DeleteSelectionCommand.cpp:
2520 (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):
2521 Update m_endingPosition when preventing merge.
2522 Also removed setting of m_mergeBlocksAfterDelete when this function returns true, because is is not checked in this case.
2524 2006-11-06 Mark Rowe <bdash@webkit.org>
2528 http://bugs.webkit.org/show_bug.cgi?id=11526
2529 Bug 11526: REGRESSION(r17610): Layout test failure in svg/custom/create-metadata-element.svg
2531 Update DOMNode::toString to always use className rather than preferring nodeName.
2533 * bindings/js/kjs_dom.cpp:
2534 (KJS::DOMNode::toString): Match the format returned by valueOf.
2536 2006-11-06 Oliver Hunt <oliver@apple.com>
2540 Fix RTL text in SVG to have correct positioning
2542 * rendering/SVGRootInlineBox.cpp:
2543 (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
2545 2006-11-06 Alexey Proskuryakov <ap@webkit.org>
2549 http://bugs.webkit.org/show_bug.cgi?id=11517
2550 REGRESSION: Flash clicks/interactivity not working properly
2552 * bridge/mac/FrameMac.mm:
2553 (WebCore::FrameMac::handleMouseMoveEvent):
2554 (WebCore::FrameMac::handleMouseReleaseEvent):
2555 Restore parts of event dispatching that were removed when fixing
2556 bug 7323 - just bypass those for subframes.
2558 2006-11-05 Darin Adler <darin@apple.com>
2560 - quick attempt to fix the no-SVG build
2562 * platform/graphics/svg/SVGResource.cpp:
2563 * platform/graphics/svg/SVGResource.h:
2564 * platform/graphics/svg/SVGResourceClipper.cpp:
2565 * platform/graphics/svg/SVGResourceClipper.h:
2566 * platform/graphics/svg/SVGResourceImage.h:
2567 * platform/graphics/svg/SVGResourceMarker.cpp:
2568 * platform/graphics/svg/SVGResourceMarker.h:
2569 * platform/graphics/svg/SVGResourceMasker.cpp:
2570 * platform/graphics/svg/SVGResourceMasker.h:
2571 * platform/graphics/svg/cg/SVGResourceMaskerCg.h:
2572 * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
2573 * platform/graphics/svg/qt/SVGResourceImageQt.cpp:
2574 * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
2575 Added #ifdef SVG_SUPPORT to these files.
2577 2006-11-05 MorganL <morganl.webkit@yahoo.com>
2579 Reviewed & landed by Maciej.
2581 Fixes http://bugs.webkit.org/show_bug.cgi?id=11265
2583 * platform/win/ResourceLoaderWin.cpp:
2584 (WebCore::transferJobStatusCallback):
2585 (WebCore::ResourceLoader::start):
2587 2006-11-04 Maciej Stachowiak <mjs@apple.com>
2591 - moved FormData and FormDataStream to platform/network directory
2593 * WebCore.xcodeproj/project.pbxproj:
2594 * bridge/mac/WebCoreFrameBridge.mm:
2595 * loader/FormData.cpp: Removed.
2596 * loader/FormData.h: Removed.
2597 * loader/mac/FormDataStream.h: Removed.
2598 * loader/mac/FormDataStream.m: Removed.
2599 * loader/mac/FrameLoaderMac.mm:
2600 * loader/mac/SubresourceLoaderMac.mm:
2601 * platform/network/mac/FormDataStreamMac.h: Added.
2602 * platform/network/mac/FormDataStreamMac.mm: Added.
2603 * platform/network/mac/ResourceRequestMac.mm:
2605 2006-11-05 Steve Falkenburg <sfalken@apple.com>
2609 * loader/DocumentLoader.h:
2610 * platform/win/ScreenWin.cpp:
2612 2006-11-05 Darin Adler <darin@apple.com>
2616 - more preparation for splitting up Frame into sub-pieces
2617 - removed unnecessary includes from Frame.h
2619 * page/Frame.h: Removed unneeded includes and forward declarations.
2620 Added additional forward declarations. Removed the constant
2621 NoXPosForVerticalArrowNavigation, now moved inside SelectionController.
2622 Created sections of functions to be moved into Chrome, Editor,
2623 EventHandler, FrameLoader, SelectionController, and the Platform
2624 directory, as well as marking one function for deletion.
2626 * page/FramePrivate.h: Removed the definition of the constructor and
2627 destructor and removed unnecessary includes.
2629 * page/FrameView.h: Removed unneeded forward declarations and friend
2630 declarations. Created a section of functions and data to be moved into
2633 * bridge/mac/FrameMac.h: Removed unneeded forward declarations.
2634 Created sections of functions and data to be moved into Chrome,
2635 Editor, EventHandler, FrameLoader, and the Platform directory.
2637 * bridge/mac/WebCoreFrameBridge.h: Removed obsolete comment.
2638 Removed unused methods areScrollbarsVisible,
2639 nextValidKeyViewOutsideWebFrameViews, and fileWrapperForURL:.
2642 (WebCore::Frame::begin): Added an overload, so Frame.h doesn't have
2643 to include KURL.h just for the KURL default constructor.
2644 (WebCore::FramePrivate::FramePrivate): Moved here from FramePrivate.h.
2645 (WebCore::FramePrivate::~FramePrivate): Ditto.
2647 * page/FrameView.cpp: Removed unused scrollbarMoved and scrollingSelf
2648 booleans, scrollbarMoved and cleared funcitons.
2649 (WebCore::FrameView::clear): Moved the code from the cleared
2651 (WebCore::FrameView::scrollTo): Removed code to set scrollingSelf.
2653 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac): Updated
2654 for changes to header.
2656 * editing/SelectionController.cpp:
2657 (WebCore::SelectionController::setSelection):
2658 (WebCore::SelectionController::xPosForVerticalArrowNavigation):
2659 Moved NoXPosForVerticalArrowNavigation into this file.
2661 * bindings/js/kjs_events.cpp:
2662 * bindings/js/kjs_html.cpp:
2663 * bindings/js/kjs_window.cpp:
2664 * bridge/mac/WebCoreAXObject.mm:
2665 * bridge/mac/WebCoreFrameBridge.mm:
2666 * css/cssstyleselector.cpp:
2669 * dom/EventTargetNode.cpp:
2670 * dom/MouseRelatedEvent.cpp:
2671 * dom/XMLTokenizer.cpp:
2672 * html/HTMLBaseElement.cpp:
2673 * html/HTMLDocument.cpp:
2674 * html/HTMLEmbedElement.cpp:
2675 * html/HTMLFrameElementBase.cpp:
2676 * html/HTMLGenericFormElement.cpp:
2677 * html/HTMLObjectElement.cpp:
2678 * html/HTMLTokenizer.cpp:
2679 * loader/mac/FrameLoaderMac.mm:
2680 * page/PageState.cpp:
2681 * rendering/RenderApplet.cpp:
2682 * rendering/RenderBlock.cpp:
2683 * rendering/RenderLayer.cpp:
2684 * rendering/RenderObject.cpp:
2685 * rendering/RenderPartObject.cpp:
2686 * rendering/RenderTreeAsText.cpp:
2687 * xml/XSLTProcessor.cpp:
2688 Added includes as needed to keep compiling, since there are fewer
2689 includes in Frame.h.
2691 2006-11-05 Alexey Proskuryakov <ap@nypop.com>
2693 Reviewed by Dave Harrison.
2695 http://bugs.webkit.org/show_bug.cgi?id=11402
2696 REGRESSION: onChange does not work anymore for 1st item in popup
2698 * html/HTMLSelectElement.cpp:
2699 (WebCore::HTMLSelectElement::HTMLSelectElement):
2700 (WebCore::HTMLSelectElement::reset):
2701 Set m_lastOnChangeIndex to -1.
2703 2006-11-04 Darin Adler <darin@apple.com>
2707 - fix http://bugs.webkit.org/show_bug.cgi?id=11453
2708 REGRESSION: Status bar always shows cancelled opening the page
2710 * platform/network/mac/ResourceHandleMac.mm:
2711 (WebCore::ResourceHandle::~ResourceHandle): Removed call to cancel.
2712 Since the subresource owns the resource handle, there's no need to cancel.
2713 This arrangement is only temporary, anyway, since Maciej will soon change
2714 things so that the subresource loader uses the resource handle and the
2715 resource handle doesn't know anything about the subresource loader.
2717 2006-11-04 Darin Adler <darin@apple.com>
2721 - converted more of the loader machinery to work with cross-platform
2722 data structures instead of Macintosh-specific ones
2724 converted most uses of NSURL to KURL and NSEvent to DOM Event in
2727 moved download function out of FrameLoader.h to avoid reference to
2730 added DOM Event parameters to various functions so that the handlers
2731 can use the DOM Event instead of the global "current NSEvent";
2732 includes Frame::submitForm, HTMLFormElement::prepareSubmit,
2733 HTMLFormElement::submit, FrameLoader::load
2735 moved the setMainFrame call that hands ownership to the Page
2736 into one of the Frame constructors, and removed it from all
2739 removed const from Event parameter to the urlSelected function
2740 (we rarely use const with DOM elements)
2742 removed some redundant includes and declarations from various
2745 removed NSURL parameter from userAgent function -- if we need it we
2746 can add it back, but converting from NSURL to KURL and back is
2747 inefficient enough that it's best to have it out for now (since it's
2748 been unused for years) -- if we add it back, we can choose an
2749 appropriate parameter type that's always inexpensive to pass
2751 did some basic cleanup in the IconLoader class, including removing
2752 an unnecessary loop that added icon data a byte at a time
2754 renamed safeLoad to load, since it's no different from the other
2755 FrameLoader load functions, safety-wise
2757 fixed some code that was trying to distinguish null frame name from
2758 empty string frame name -- both should be handled the same, but callers
2759 were doing it by checking for empty and turning it into null (in a way
2760 that was causing extra round trips between NSString and WebCore::String)
2762 corrected all uses of "get" and "post" to be uppercase "GET" and "POST"
2763 and got rid of case-insensitive compares of methods
2766 * WebCore.xcodeproj/project.pbxproj:
2767 * bindings/js/kjs_navigator.cpp:
2768 (KJS::Navigator::getValueProperty):
2769 * bridge/mac/FrameMac.h:
2770 * bridge/mac/FrameMac.mm:
2771 (WebCore::FrameMac::submitForm):
2772 (WebCore::FrameMac::urlSelected):
2773 (WebCore::FrameMac::userAgent):
2774 * bridge/mac/FrameViewMac.mm:
2775 * bridge/mac/WebCoreAXObject.mm:
2776 (-[WebCoreAXObject rendererForView:]):
2777 * bridge/mac/WebCorePageBridge.h:
2778 * bridge/mac/WebCorePageBridge.mm:
2779 * bridge/mac/WebCoreSettings.mm:
2780 * bridge/win/FrameWin.cpp:
2781 (WebCore::FrameWin::urlSelected):
2782 (WebCore::FrameWin::submitForm):
2783 * bridge/win/FrameWin.h:
2784 * dom/MouseRelatedEvent.cpp:
2785 * dom/MouseRelatedEvent.h:
2787 (WebCore::UIEvent::~UIEvent):
2789 * dom/UIEventWithKeyState.h:
2790 * dom/XMLTokenizer.cpp:
2791 (WebCore::openFunc):
2792 * html/HTMLAnchorElement.cpp:
2793 (WebCore::HTMLAnchorElement::defaultEventHandler):
2794 * html/HTMLButtonElement.cpp:
2795 (WebCore::HTMLButtonElement::defaultEventHandler):
2796 * html/HTMLFormElement.cpp:
2797 (WebCore::HTMLFormElement::submitClick):
2798 (WebCore::HTMLFormElement::prepareSubmit):
2799 (WebCore::HTMLFormElement::submit):
2800 * html/HTMLFormElement.h:
2801 * html/HTMLInputElement.cpp:
2802 (WebCore::HTMLInputElement::defaultEventHandler):
2803 * html/HTMLSelectElement.cpp:
2804 (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
2805 * loader/DocumentLoader.h:
2806 * loader/FrameLoader.h:
2807 * loader/FrameLoaderClient.h:
2808 * loader/NavigationAction.h:
2809 (WebCore::NavigationAction::event):
2810 * loader/icon/IconLoader.cpp:
2811 (WebCore::IconLoader::create):
2812 (WebCore::IconLoader::startLoading):
2813 (WebCore::IconLoader::didReceiveData):
2814 (WebCore::IconLoader::didFinishLoading):
2815 * loader/icon/IconLoader.h:
2816 * loader/loader.cpp:
2817 * loader/mac/DocumentLoaderMac.mm:
2818 (WebCore::DocumentLoader::URL):
2819 (WebCore::DocumentLoader::unreachableURL):
2820 (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
2821 (WebCore::DocumentLoader::URLForHistory):
2822 * loader/mac/FrameLoaderMac.mm:
2823 (WebCore::FrameLoader::load):
2824 (WebCore::FrameLoader::willSendRequest):
2825 (WebCore::FrameLoader::clientRedirected):
2826 (WebCore::FrameLoader::shouldReload):
2827 (WebCore::FrameLoader::notifyIconChanged):
2828 (WebCore::FrameLoader::URL):
2829 (WebCore::FrameLoader::reloadAllowingStaleData):
2830 (WebCore::FrameLoader::reload):
2831 (WebCore::FrameLoader::didChangeTitle):
2832 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2833 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2834 (WebCore::FrameLoader::post):
2835 (WebCore::FrameLoader::addExtraFieldsToRequest):
2836 (WebCore::FrameLoader::loadResourceSynchronously):
2837 * loader/mac/IconLoaderMac.mm:
2838 (WebCore::IconLoader::notifyIconChanged):
2839 * loader/mac/LoaderFunctionsMac.mm:
2840 * loader/mac/MainResourceLoaderMac.mm:
2841 (WebCore::shouldLoadAsEmptyDocument):
2842 (WebCore::MainResourceLoader::continueAfterContentPolicy):
2843 * loader/mac/NavigationActionMac.mm:
2844 (WebCore::navigationType):
2845 (WebCore::NavigationAction::NavigationAction):
2846 * loader/mac/ResourceLoaderMac.mm:
2847 * loader/mac/SubresourceLoaderMac.mm:
2849 (WebCore::Frame::Frame):
2850 (WebCore::Frame::urlSelected):
2851 (WebCore::Frame::submitFormAgain):
2852 (WebCore::Frame::submitForm):
2853 (WebCore::Frame::endIfNotLoading):
2854 (WebCore::Frame::hitTestResultAtPoint):
2856 * page/FramePrivate.h:
2857 * platform/gdk/FrameGdk.cpp:
2858 (WebCore::FrameGdk::FrameGdk):
2859 (WebCore::FrameGdk::submitForm):
2860 (WebCore::FrameGdk::urlSelected):
2861 * platform/gdk/FrameGdk.h:
2862 * platform/mac/TextFieldMac.mm:
2863 * platform/network/HTTPHeaderMap.h:
2864 * platform/network/ResourceHandle.h:
2865 * platform/network/ResourceHandleClient.h:
2866 * platform/network/ResourceHandleInternal.h:
2867 * platform/network/mac/ResourceHandleMac.mm:
2868 * platform/network/mac/ResourceResponseMac.h:
2869 * platform/network/mac/ResourceResponseMac.mm:
2870 (-[NSURLResponse WebCore]):
2871 * platform/network/win/ResourceHandleWin.cpp:
2872 * platform/qt/FrameQt.cpp:
2873 (WebCore::FrameQt::submitForm):
2874 (WebCore::FrameQt::urlSelected):
2875 * platform/qt/FrameQt.h:
2876 * rendering/RenderLineEdit.cpp:
2877 (WebCore::RenderLineEdit::returnPressed):
2878 * xml/XSLTProcessor.cpp:
2879 (WebCore::docLoaderFunc):
2880 * xml/xmlhttprequest.cpp:
2882 2006-11-03 Maciej Stachowiak <mjs@apple.com>
2886 - replaced receivedRedirect with new willSendRequest delegate
2887 - removed most mac-specific loader functions
2888 - use ResourceResponse more in loader code
2890 * WebCore.xcodeproj/project.pbxproj: Add new files.
2891 * bridge/mac/WebCoreFrameBridge.mm:
2892 (-[WebCoreFrameBridge getData:andResponse:forURL:]): Adapted
2893 for CachedResource method renames.
2894 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
2896 * loader/CachedCSSStyleSheet.cpp:
2897 (WebCore::CachedCSSStyleSheet::checkNotify): simplified
2898 based on ResourceResponse
2899 * loader/CachedImage.cpp:
2900 (WebCore::CachedImage::createImage): adapt for ResourceResponse
2901 * loader/CachedResource.cpp:
2902 (WebCore::CachedResource::CachedResource): store a ResourceResponse;
2903 platform response is now called platformResponse and expiration date
2905 (WebCore::CachedResource::~CachedResource): ditto
2906 (WebCore::CachedResource::isExpired): ditto
2907 * loader/CachedResource.h:
2908 (WebCore::CachedResource::platformResponse): ditto
2909 (WebCore::CachedResource::setResponse): ditto
2910 (WebCore::CachedResource::canDelete): ditto
2911 * loader/LoaderFunctions.h:
2912 * loader/loader.cpp:
2913 (WebCore::Loader::receivedResponse): Adjusted for renames.
2914 (WebCore::Loader::didReceiveResponse): Store whole ResourceResponse
2915 in the CachedResource.
2917 * loader/mac/FormDataStream.h:
2918 * loader/mac/FormDataStream.m:
2919 (WebCore::getStreamFormDatas): Rearranged things so it's
2920 possible to get a FormData back out of a form data stream.
2921 (WebCore::formCreate): ditto
2922 (WebCore::formFinalize): ditto
2923 (WebCore::httpBodyFromStream): ditto
2924 * loader/mac/ImageDocumentMac.mm:
2925 (WebCore::finishImageLoad): s/response/platformResponse/
2926 * loader/mac/LoaderFunctionsMac.mm:
2927 (WebCore::CheckCacheObjectStatus): ditto
2928 (WebCore::CachedResource::setPlatformResponse): ditto
2929 * loader/mac/SubresourceLoaderMac.mm:
2930 (WebCore::SubresourceLoader::willSendRequest): send redirect
2931 to client appropriately
2932 * platform/network/ResourceHandle.h:
2933 * platform/network/ResourceHandleClient.h:
2934 (WebCore::ResourceHandleClient::willSendRequest): new entry
2935 point for SubresourceLoader, dispatch to client.
2936 * platform/network/ResourceRequest.h:
2937 (WebCore::ResourceRequest::allowHTTPCookies): implemented
2938 (WebCore::ResourceRequest::setAllowHTTPCookies): ditto
2939 * platform/network/ResourceResponse.h:
2940 (WebCore::ResourceResponse::ResourceResponse): initialize expiration
2942 * platform/network/cf/FormDataStreamCFNet.cpp: Added.
2943 (WebCore::getStreamFormDatas): Added this, ported from NSURL version.
2944 (WebCore::openNextStream): ditto
2945 (WebCore::formCreate): ditto
2946 (WebCore::formFinalize): ditto
2947 (WebCore::formCanRead): ditto
2948 (WebCore::formEventCallback): ditto
2949 (WebCore::setHTTPBody): ditto
2950 (WebCore::httpBodyFromStream): ditto
2951 * platform/network/cf/FormDataStreamCFNet.h: Added.
2952 * platform/network/cf/ResourceHandleCFNet.cpp:
2953 (WebCore::willSendRequest): implemented
2954 (WebCore::ResourceHandle::start): use new ResourceRequest stuff
2955 * platform/network/cf/ResourceResponseCFNet.cpp:
2956 (WebCore::getResourceResponse): do nothing for a null response
2957 * platform/network/mac/ResourceHandleMac.mm:
2958 (WebCore::ResourceHandle::willSendRequest): Implemented; dispatch to client.
2959 * platform/network/mac/ResourceRequestMac.h: Added.
2960 * platform/network/mac/ResourceRequestMac.mm: Added.
2961 (WebCore::getResourceRequest): Added way to convert an NSURLRequest
2962 to a ResourceRequest.
2963 (WebCore::nsURLRequest): Opposite of the above.
2964 * platform/network/cf/ResourceRequestCFNet.h: Added.
2965 * platform/network/cf/ResourceRequestCFNet.cpp: Added.
2966 (WebCore::getResourceRequest): Added way to convert an CFURLRequest
2967 to a ResourceRequest.
2968 (WebCore::cfURLRequest): Opposite of the above.
2969 * xml/xmlhttprequest.cpp:
2970 (WebCore::XMLHttpRequest::willSendRequest): Renamed from receivedRedirect,
2972 * xml/xmlhttprequest.h:
2974 2006-11-04 Darin Adler <darin@apple.com>
2976 Change suggested by Mitz.
2978 - fix http://bugs.webkit.org/show_bug.cgi?id=11514
2979 REGRESSION (r17438): Repro crash when opening a web archive
2981 * bridge/mac/WebCorePageState.mm:
2982 (-[WebCorePageState dealloc]): Add null check.
2983 (-[WebCorePageState finalize]): Ditto.
2985 2006-11-04 Bertrand Guiheneuf <guiheneuf@gmail.com>
2987 Reviewed by Maciej, tweaked and landed by Alexey (using a patch by Don Gibson).
2989 http://bugs.webkit.org/show_bug.cgi?id=11433
2990 Fixes to get WebKit to run on Windows; implemented AffineTransformCairo.
2992 * WebCore.vcproj/WebCore/WebCore.vcproj:
2993 Added platform/graphics platform/network and platform/network/win to headers search paths
2994 Created platform/graphics and platform/network filters in hierarchy
2995 Moved GraphicsContext and GraphicsTypes to their respective filters
2996 Added EditorClient.h
2997 Added FrameLoader* files in loader/
2998 Added HitTest* files in rendering/
2999 Added Editor.* files in editing/
3000 Added DeleteButton.* and DeleteButtonController.* in editing/
3002 * bridge/win/ChromeClientWin.h: Added.
3003 (WebCore::ChromeClientWin::~ChromeClientWin):
3004 * bridge/win/EditorClientWin.h: Added.
3005 (WebCore::EditorClientWin::~EditorClientWin):
3007 * bridge/win/FrameWin.cpp:
3008 (WebCore::FrameWin::FrameWin):
3009 (WebCore::FrameWin::urlSelected):
3010 (WebCore::FrameWin::submitForm):
3011 (WebCore::FrameWin::createNewWindow):
3012 * bridge/win/FrameWin.h:
3013 Added EditorClient parameter to constructor
3014 Replace usage of FrameLoadRequest::m_request with FrameLoadRequest::resourceRequest()
3015 Removed openURL() and openURLRequest from class definition
3017 * bridge/win/PageWin.cpp:
3018 * platform/AffineTransform.h:
3019 * platform/cairo/AffineTransformCairo.cpp: Added.
3020 (WebCore::AffineTransform::AffineTransform):
3021 (WebCore::AffineTransform::setMatrix):
3022 (WebCore::AffineTransform::map):
3023 (WebCore::AffineTransform::mapRect):
3024 (WebCore::AffineTransform::isIdentity):
3025 (WebCore::AffineTransform::m11):
3026 (WebCore::AffineTransform::m12):
3027 (WebCore::AffineTransform::m21):
3028 (WebCore::AffineTransform::m22):
3029 (WebCore::AffineTransform::dx):
3030 (WebCore::AffineTransform::dy):
3031 (WebCore::AffineTransform::reset):
3032 (WebCore::AffineTransform::scale):
3033 (WebCore::AffineTransform::rotate):
3034 (WebCore::AffineTransform::translate):
3035 (WebCore::AffineTransform::shear):
3036 (WebCore::AffineTransform::det):
3037 (WebCore::AffineTransform::invert):
3038 (WebCore::AffineTransform::operator cairo_matrix_t):
3039 (WebCore::AffineTransform::operator== ):
3040 (WebCore::AffineTransform::operator*= ):
3041 (WebCore::AffineTransform::operator* ):
3042 * platform/cairo/GraphicsContextCairo.cpp:
3043 (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
3044 * platform/network/win/ResourceHandleWin.cpp:
3045 (WebCore::ResourceHandle::onHandleCreated):
3046 (WebCore::ResourceHandle::start):
3047 (WebCore::ResourceHandle::fileLoadTimer):
3048 (WebCore::ResourceHandle::cancel):
3049 * platform/win/TemporaryLinkStubs.cpp:
3050 (WebCore::FrameWin::goBackOrForward):
3051 (WebCore::FrameWin::getHistoryLength):
3052 (WebCore::FrameWin::historyURL):
3053 (WebCore::ServeSynchronousRequest):
3054 (WebCore::ChromeClientWin::canRunModal):
3055 (WebCore::ChromeClientWin::runModal):
3056 (WebCore::EditorClientWin::shouldDeleteRange):
3057 (WebCore::EditorClientWin::shouldShowDeleteInterface):
3058 (WebCore::EditorClientWin::isContinuousSpellCheckingEnabled):
3059 (WebCore::EditorClientWin::isGrammarCheckingEnabled):
3060 (WebCore::EditorClientWin::spellCheckerDocumentTag):
3061 (WebCore::Path::transform):
3062 (WebCore::PopupMenu::updateFromElement):
3063 (WebCore::ResourceLoader::loadsBlocked):
3064 (WebCore::systemBeep):
3065 * rendering/RenderThemeWin.cpp:
3066 (WebCore::RenderThemeWin::paintButton):
3067 (WebCore::RenderThemeWin::paintTextField):
3069 2006-11-04 Alexey Proskuryakov <ap@nypop.com>
3073 http://bugs.webkit.org/show_bug.cgi?id=11448
3074 ⟨ and ⟩ entities are mapped to the incorrect Unicode codepoint
3076 * html/HTMLEntityNames.gperf: Use canonical Unicode equivalents for these characters.
3078 2006-11-03 Mark Rowe <bdash@webkit.org>
3082 Update Windows and Qt project files for file removals in r17585.
3085 * WebCore.vcproj/WebCore/WebCore.vcproj:
3087 2006-11-03 Zack Rusin <zack@kde.org>
3091 The patch fixes text field drawing on the Qt platform.
3093 * platform/qt/RenderThemeQt.cpp:
3094 (WebCore::RenderThemeQt::paintTextField): Use the style to correctly
3095 render the text field
3097 2006-11-03 Oliver Hunt <oliver@apple.com>
3101 Correct incorrect call to SetCursor
3103 * rendering/RenderFrameSet.cpp:
3104 (WebCore::RenderFrameSet::userResize):
3106 2006-11-03 Adele Peterson <adele@apple.com>
3110 Removed DeprecatedRenderSelect and ListBox classes.
3112 * WebCore.xcodeproj/project.pbxproj:
3114 * html/HTMLOptionElement.h:
3115 * html/HTMLSelectElement.cpp:
3116 (WebCore::HTMLSelectElement::recalcStyle):
3117 (WebCore::HTMLSelectElement::isKeyboardFocusable):
3118 (WebCore::HTMLSelectElement::isMouseFocusable):
3119 (WebCore::HTMLSelectElement::createRenderer):
3120 (WebCore::HTMLSelectElement::setRecalcListItems):
3121 (WebCore::HTMLSelectElement::notifyOptionSelected):
3122 (WebCore::HTMLSelectElement::defaultEventHandler):
3123 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
3124 (WebCore::HTMLSelectElement::updateListBoxSelection):
3125 * html/HTMLSelectElement.h:
3126 * platform/ListBox.h: Removed.
3127 * platform/mac/FontCacheMac.mm:
3128 * platform/mac/ListBoxMac.mm: Removed.
3129 * platform/win/TemporaryLinkStubs.cpp:
3130 * rendering/DeprecatedRenderSelect.cpp: Removed.
3131 * rendering/DeprecatedRenderSelect.h: Removed.
3133 2006-11-03 Maciej Stachowiak <mjs@apple.com>
3135 Not reviewed, fix for accidental commit.
3137 - rolled back more of the accidentall commit that I forgot.
3139 * platform/network/mac/ResourceRequestMac.h: Removed.
3140 * platform/network/mac/ResourceRequestMac.mm: Removed.
3142 2006-11-03 Maciej Stachowiak <mjs@apple.com>
3144 Not reviewed, fix for accidental commit.
3146 - roll back some network changes accidentally committed with a previous patch.
3148 * WebCore.xcodeproj/project.pbxproj:
3149 * bridge/mac/WebCoreFrameBridge.mm:
3150 (-[WebCoreFrameBridge getData:andResponse:forURL:]):
3151 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
3152 * loader/CachedCSSStyleSheet.cpp:
3153 (WebCore::CachedCSSStyleSheet::checkNotify):
3154 * loader/CachedImage.cpp:
3155 (WebCore::CachedImage::createImage):
3156 * loader/CachedResource.cpp:
3157 (WebCore::CachedResource::CachedResource):
3158 (WebCore::CachedResource::~CachedResource):
3159 (WebCore::CachedResource::setExpireDate):
3160 (WebCore::CachedResource::isExpired):
3161 * loader/CachedResource.h:
3162 (WebCore::CachedResource::response):
3163 * loader/LoaderFunctions.h:
3164 * loader/loader.cpp:
3165 (WebCore::Loader::receivedResponse):
3166 (WebCore::Loader::didReceivedResponse):
3168 * loader/mac/FormDataStream.h:
3169 * loader/mac/FormDataStream.m:
3170 (WebCore::formCreate):
3171 (WebCore::formFinalize):
3172 * loader/mac/ImageDocumentMac.mm:
3173 (WebCore::finishImageLoad):
3174 * loader/mac/LoaderFunctionsMac.mm:
3175 (WebCore::CheckCacheObjectStatus):
3176 (WebCore::CachedResource::setResponse):
3177 * loader/mac/SubresourceLoaderMac.mm:
3178 (WebCore::SubresourceLoader::willSendRequest):
3179 * platform/network/ResourceHandle.h:
3180 * platform/network/ResourceHandleClient.h:
3181 (WebCore::ResourceHandleClient::receivedRedirect):
3182 * platform/network/ResourceRequest.h:
3183 * platform/network/ResourceResponse.h:
3184 (WebCore::ResourceResponse::ResourceResponse):
3185 * platform/network/mac/ResourceHandleMac.mm:
3186 (WebCore::ResourceHandle::redirectedToURL):
3187 * xml/xmlhttprequest.cpp:
3188 (WebCore::XMLHttpRequest::receivedRedirect):
3189 * xml/xmlhttprequest.h:
3191 2006-11-03 Anders Carlsson <acarlsson@apple.com>
3193 Rubber-stamped by Oliver.
3195 Remove these, they have been merged with SVGRenderTreeAsText.
3197 * rendering/SVGRenderAsText.cpp: Removed.
3198 * rendering/SVGRenderAsText.h: Removed.
3200 2006-11-03 Anders Carlsson <acarlsson@apple.com>
3204 * platform/network/cf/ResourceHandleCFNet.cpp:
3205 (WebCore::willSendRequest):
3207 2006-11-02 Geoffrey Garen <ggaren@apple.com>
3209 Reviewed by Darin, Beth.
3211 First cut at factoring Page's UIDelegate-related functions into Chrome
3216 * bridge/mac/PageMac.mm: Removed platform-specific constructor, added
3217 setBridge method to replace it.
3218 (WebCore::Page::setBridge):
3220 * bridge/mac/WebCorePageBridge.h: Simplified some things based on the fact
3221 that WebCorePageBridge.h doesn't need to be included by ObjC-only files,
3222 and, now that it uses PassRefPtr, can't be.
3224 * page/Chrome.cpp: Added. Code copied and converted to c++ from WebCorePageBridge.mm.
3227 (WebCore::Page::dragCaretController): Made this function non-const so that
3228 m_dragCaretController doesn't have to be mutable.
3230 2006-11-03 Alexey Proskuryakov <ap@nypop.com>
3234 http://bugs.webkit.org/show_bug.cgi?id=7323
3235 REGRESSION (10.4.4): ondrag* events don't fire on page in a frame
3237 * bridge/mac/FrameMac.h: Moved drag source information to a static variable
3238 in FrameMac.mm. There can be only one drag active at any moment, and having
3239 this information here was making sharing this information between
3242 * bridge/mac/FrameMac.mm:
3243 (WebCore::FrameMac::FrameMac): Initialize sharedDragInfo.
3244 (WebCore::FrameMac::freeClipboard):
3245 (WebCore::FrameMac::dragHysteresisExceeded):
3246 (WebCore::FrameMac::handleMouseMoveEvent):
3247 (WebCore::FrameMac::handleMouseReleaseEvent):
3248 (WebCore::FrameMac::mouseDown):
3249 (WebCore::FrameMac::dragSourceMovedTo):
3250 (WebCore::FrameMac::dragSourceEndedAt):
3251 (WebCore::FrameMac::dispatchDragSrcEvent):
3252 Access drag source info via sharedDragInfo - this fixes drag source even dispatching.
3253 Also removed some old code that was forwarding mouse events to subviews to make
3254 HTML editing work in subframes.
3256 * page/FrameView.cpp:
3257 (WebCore::FrameView::updateDragAndDrop):
3258 (WebCore::FrameView::cancelDragAndDrop):
3259 (WebCore::FrameView::performDragAndDrop):
3260 Forward events to subframes for dispatching - this fixes drag target events.
3262 2006-11-03 Zack Rusin <zack@kde.org>
3268 * platform/qt/LoaderFunctionsQt.cpp:
3269 (WebCore::CachedResource::setPlatformResponse): Renamed from setResponse
3271 2006-11-01 Zack Rusin <zack@kde.org>
3275 Moving the word/sentence seperators into a file of their own
3276 and implementing findWordBoundary.
3279 * platform/qt/TemporaryLinkStubs.cpp:
3280 * platform/qt/TextBoundaries.cpp: Added.
3281 (WebCore::findNextSentenceFromIndex):
3282 (WebCore::findSentenceBoundary):
3283 (WebCore::findNextWordFromIndex):
3284 (WebCore::findWordBoundary):
3286 2006-11-03 Zack Rusin <zack@kde.org>
3290 Compile on both KDE and Qt platforms
3292 * CMakeLists.txt: add zlib explicitly
3293 * platform/network/qt/ResourceHandleManager.cpp:
3294 (WebCore::ResourceHandleManager::self):
3295 (WebCore::QtJob::QtJob):
3296 (WebCore::QtJob::timerEvent): Integrate both implementations
3297 so that moc can parse it
3298 (WebCore::ResourceHandleManager::deliverJobData):
3299 (WebCore::ResourceHandleManager::remove):
3300 * platform/network/qt/ResourceHandleManager.h:
3302 2006-11-03 Maciej Stachowiak <mjs@apple.com>
3304 No review, suggested by Mitz.
3306 - fix a #if to be #ifdef
3308 * platform/graphics/svg/cg/SVGResourceImageCg.cpp:
3310 2006-11-03 Zack Rusin <zack@kde.org>
3312 Reviewed and landed by Maciej.
3314 Compile on the Qt platform.
3316 * ksvg2/misc/KCanvasRenderingStyle.h:
3317 * platform/qt/RenderThemeQt.cpp:
3318 (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
3320 2006-11-03 Zack Rusin <zack@kde.org>
3322 Reviewed by Hyatt. Landed by Maciej.
3324 Adding setPlatformPen/setPlatformFont/setPlatformFillColor
3325 to graphics context to be able to set consistant state
3326 on the platform specific painter without having to change
3327 fill/stroke/font on every operation. This fixes color/stroke/fill
3328 and font handling in the Qt port.
3330 * platform/graphics/GraphicsContext.cpp:
3331 (WebCore::GraphicsContext::setFont):
3332 (WebCore::GraphicsContext::setPen):
3333 (WebCore::GraphicsContext::setFillColor):
3334 (WebCore::GraphicsContext::setPlatformPen):
3335 (WebCore::GraphicsContext::setPlatformFillColor):
3336 (WebCore::GraphicsContext::setPlatformFont):
3337 * platform/graphics/GraphicsContext.h:
3338 * platform/qt/GraphicsContextQt.cpp:
3339 (WebCore::toQtCompositionMode):
3340 (WebCore::toQtLineCap):
3341 (WebCore::toQtLineJoin):
3342 (WebCore::toQPenStyle):
3343 (WebCore::penToQPen):
3344 (WebCore::TransparencyLayer::TransparencyLayer):
3345 (WebCore::GraphicsContext::addRoundedRectClip):
3346 (WebCore::GraphicsContext::setPlatformFont):
3347 (WebCore::GraphicsContext::setPlatformPen):
3348 (WebCore::GraphicsContext::setPlatformFillColor):
3349 * platform/qt/ScrollViewCanvasQt.cpp:
3350 (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
3351 (WebCore::ScrollViewCanvasQt::paintEvent):
3352 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
3353 * platform/qt/ScrollViewCanvasQt.h:
3355 2006-11-02 Adele Peterson <adele@apple.com>
3359 - Fix for http://bugs.webkit.org/show_bug.cgi?id=9581
3360 REGRESSION: The new NativeTextArea scrolls to the top when the control is unfocused.
3362 Test: fast/forms/textarea-no-scroll-on-blur.html
3364 * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::forwardEvent):
3365 On blur, only scroll back to the start for text fields.
3367 2006-11-02 Anders Carlsson <acarlsson@apple.com>
3371 * rendering/RenderFileUploadControl.cpp:
3372 (WebCore::RenderFileUploadControl::paintObject):
3374 2006-11-02 Anders Carlsson <acarlsson@apple.com>
3378 * page/FramePrivate.h:
3379 (WebCore::FramePrivate::FramePrivate):
3381 2006-11-02 Kevin Ollivier <kevino@theolliviers.com>
3383 Reviewed by Geoff, landed by Anders.
3385 Fix dependency problems caused when running move-js-headers.sh
3387 * move-js-headers.sh:
3388 Use cp -p instead of just cp so that the modification time
3389 of the original files are used.
3391 2006-11-02 Adam Roben <aroben@apple.com>
3393 Reviewed by Tim H, landed by Anders.
3395 Fixes http://bugs.webkit.org/show_bug.cgi?id=10840
3396 REGRESSION: Shadow of file upload button is clipped
3398 * rendering/RenderFileUploadControl.cpp:
3399 (WebCore::RenderFileUploadControl::paintObject): Add 2px to the clip
3400 height to keep from clipping in the shadow
3402 2006-11-02 Eike Preuss <mail@eikepreuss.de>
3404 Reviewed by Maciej, landed by Anders.
3406 * platform/qt/ScrollViewQt.cpp: Fix translation of coordinates between
3407 content and window. ScrollViewQt already receives correct content
3408 coordinates from QScrollArea.
3409 (WebCore::ScrollView::contentsToWindow):
3410 (WebCore::ScrollView::windowToContents):
3412 2006-11-02 Simon Hausmann <hausmann@kde.org>
3414 Reviewed by Maciej, landed by Anders
3416 * CMakeLists.txt: Make linkage against KDE libraries conditional
3417 * platform/network/qt/ResourceHandleManager.cpp: Added a simple
3418 Qt base resource handler that supports only requests to the
3419 local filesystem. Used when compiling without KDE support.
3420 ResourceHandleManager.cpp/h are to be split up into ResourceHandleManagerKDE
3421 and ResourceHandleManagerQt in the future, as well as QtJob.cpp/h.
3422 (WebCore::QtJob::QtJob):
3423 (WebCore::QtJob::timerEvent):
3424 (WebCore::ResourceHandleManager::ResourceHandleManager):
3425 (WebCore::ResourceHandleManager::~ResourceHandleManager):
3426 (WebCore::ResourceHandleManager::self):
3427 (WebCore::ResourceHandleManager::remove):
3428 (WebCore::ResourceHandleManager::add):
3429 (WebCore::ResourceHandleManager::cancel):
3430 (WebCore::ResourceHandleManager::deliverJobData):
3431 * platform/network/qt/ResourceHandleManager.h:
3432 * platform/qt/FrameQtClient.cpp:
3433 (WebCore::FrameQtClientDefault::runJavaScriptAlert):
3434 (WebCore::FrameQtClientDefault::runJavaScriptConfirm):
3435 (WebCore::FrameQtClientDefault::runJavaScriptPrompt):
3436 * platform/qt/LoaderFunctionsQt.cpp: Use the Qt messagebox and
3437 input dialog functions when compiling without KDE support
3438 (WebCore::ServeSynchronousRequest):
3440 2006-11-02 David Carson <dacarson@gmail.com>
3442 Reviewed by Geoff, landed by Anders.
3444 Fix for: http://bugs.webkit.org/show_bug.cgi?id=11471
3445 Initializing variable in constructor.
3447 * page/FramePrivate.h:
3448 (WebCore::FramePrivate::FramePrivate):
3450 2006-11-02 Anders Carlsson <acarlsson@apple.com>
3454 Use CFMutableURLRequestRef instead of CFHTTPMessageRef since not all URL requests are http requests.
3456 * platform/network/cf/ResourceHandleCFNet.cpp:
3457 (WebCore::addHeadersFromHashMap):
3458 Don't set all headers at once since that clears any previous headers set.
3460 (WebCore::ResourceHandle::start):
3462 2006-11-02 Adele Peterson <adele@apple.com>
3464 Reviewed by Mitz and Geoff.
3467 <rdar://problem/4650271> REGRESSION(NativeTextArea): Textareas don't get scrollbars when text gets too big for content area (10105)
3468 <rdar://problem/4650813> REGRESSION(tiger-leopard): typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
3469 <rdar://problem/4658779> REGRESSION: Text selection is weird in textareas in Trac wiki editing pages
3471 Test: fast/forms/textarea-scrollbar.html
3473 To avoid some of our flexbox bugs for textareas, we're moving the text controls back to RenderBlock. This should make them
3474 a lot more stable. In the future, when we've worked out more of the flexbox kinks, we may want to consider moving them back.
3476 * rendering/RenderTextControl.h: Convert text controls back to RenderBlock instead of RenderFlexibleBox.
3477 * rendering/RenderTextControl.cpp:
3478 (WebCore::RenderTextControl::RenderTextControl):
3479 (WebCore::RenderTextControl::setStyle):
3480 (WebCore::RenderTextControl::createDivStyle):
3481 (WebCore::RenderTextControl::updateFromElement):
3482 (WebCore::RenderTextControl::calcHeight):
3483 (WebCore::RenderTextControl::baselinePosition):
3484 (WebCore::RenderTextControl::nodeAtPoint):
3485 (WebCore::RenderTextControl::layout): Set the inner div's height explicitly before doing a normal layout.
3486 (WebCore::RenderTextControl::scrollWidth):
3487 (WebCore::RenderTextControl::scrollHeight):
3488 (WebCore::RenderTextControl::scrollLeft):
3489 (WebCore::RenderTextControl::scrollTop):
3491 * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout): Make subtree layout optimization work for textareas.
3493 2006-11-02 John Sullivan <sullivan@apple.com>
3495 Reviewed by Geoff Garen
3497 * editing/Selection.cpp:
3498 (WebCore::Selection::showTreeForThis):
3499 this debugging method now displays start offset and end offset, at Darin's suggestion
3501 2006-11-01 Justin Garcia <justin.garcia@apple.com>
3505 <rdar://problem/4062865>
3506 Copy/paste of a select element fails to include the options
3508 * editing/SelectionController.cpp:
3509 (WebCore::SelectionController::modify): Added paragraphBoundary.
3510 * editing/htmlediting.cpp:
3511 (WebCore::canHaveChildrenForEditing): Added checks for input elements
3512 and textareas. Insertion operations would fail when performed just
3513 before/after one of these elements b/c the content would be put inside
3515 (WebCore::enclosingNodeWithTag): Fixed a problem when calling these in non
3516 editable content, and made the code to stop at an root faster (don't check
3517 isDescendantOf on every iteration).
3518 (WebCore::enclosingNodeOfType): Ditto.
3519 (WebCore::enclosingList): Ditto.
3520 (WebCore::enclosingListChild): Ditto. Added a FIXME, this function seems
3521 inappropriately named.
3522 * editing/markup.cpp:
3523 (WebCore::startMarkup): Use the text node's value instead of its rendered
3524 content for text nodes inside select elements. One might also turn off
3525 annotation when createMarkup enters a select element, but createMarkup
3526 is iterative, not recursive, so doing so would be complicated.
3527 (WebCore::createMarkup): Add markup for unrendered nodes if they are
3528 descendants of a select element.
3529 * editing/visible_units.cpp:
3530 (WebCore::startOfParagraph): Migrate to isBlock/enclosingBlock. Fixes bug
3531 where various replaced elements can't be copied when they are the only
3533 (WebCore::endOfParagraph): Ditto.
3535 2006-11-01 Oliver Hunt <oliver@apple.com>
3539 Converting more or kcanvas/quartz from Obj-C to C++
3543 * WebCore.xcodeproj/project.pbxproj:
3544 * kcanvas/device/KRenderingPaintServer.h:
3545 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.cpp: Added.
3546 (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
3547 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: Removed.
3548 * kcanvas/device/quartz/KRenderingPaintServerQuartz.cpp: Added.