1 2002-12-03 David Hyatt <hyatt@apple.com>
3 Fix for 3078227, hanging in table code. Make sure <form>s
4 don't get wrapped in anonymous rows and cells.
8 * khtml/rendering/render_table.cpp:
9 (RenderTable::addChild):
10 (RenderTableSection::addChild):
11 (RenderTableRow::addChild):
13 2002-12-03 David Hyatt <hyatt@apple.com>
15 Backing out a file that I did not intend to check in.
17 * khtml/misc/loader.cpp:
19 2002-12-03 Richard Williamson <rjw@apple.com>
21 D'oh. Fixed last minute change that broke the build.
26 2002-12-03 David Hyatt <hyatt@apple.com>
28 Remove the moveWidgetsAside function. This fixes all the
29 form controls on livepage.apple.com that were getting hosed
30 by the scrolling marquee.
34 * khtml/html/html_tableimpl.cpp:
35 (HTMLTableRowElementImpl::addChild):
36 * khtml/misc/loader.cpp:
37 * khtml/rendering/render_root.cpp:
40 * kwq/KWQKHTMLPart.mm:
41 (KWQKHTMLPart::KWQKHTMLPart):
42 (KWQKHTMLPart::paint):
44 2002-12-03 Richard Williamson <rjw@apple.com>
46 Fixed 3019986. Use an array of font families instead of a single
47 font family to support CSS family lists.
53 * kwq/KWQFontMetrics.mm:
54 (QFontMetrics::width):
55 (QFontMetrics::floatWidth):
56 (QFontMetrics::floatCharacterWidths):
59 (QPainter::drawUnderlineForText):
60 * kwq/WebCoreTextRenderer.h:
61 * kwq/WebCoreTextRendererFactory.h:
62 * kwq/WebCoreTextRendererFactory.m:
63 (-[WebCoreTextRendererFactory rendererWithFamilies:traits:size:]):
64 (-[WebCoreTextRendererFactory fontWithFamilies:traits:size:]):
66 2002-12-03 David Hyatt <hyatt@apple.com>
68 Fix for 3112599, aol.com shopping page doesn't work. Apply
69 the same form demotion trick to <tr> that I did already for
76 * khtml/html/html_tableimpl.cpp:
77 (HTMLTableRowElementImpl::addChild):
78 * khtml/html/html_tableimpl.h:
80 2002-12-03 David Hyatt <hyatt@apple.com>
82 Fix link feedback regression on aintitcool.com. Observe
83 the wacky feedback we give now (yes, it matches MacIE and
84 Gecko). Gotta love this malformed page.
90 * khtml/rendering/render_object.cpp:
91 (RenderObject::nodeAtPoint):
93 2002-12-03 David Hyatt <hyatt@apple.com>
95 Eliminate the KONQBLOCK hack. Fixes ipodhacks.com (a mislayout
96 caused by malformed html... <table><br>...)
100 * khtml/css/html4.css:
101 * khtml/html/dtd.cpp:
103 * khtml/html/html_elementimpl.cpp:
104 (HTMLElementImpl::isInline):
105 * khtml/html/htmlparser.cpp:
106 (KHTMLParser::reset):
107 (KHTMLParser::insertNode):
108 * khtml/html/htmlparser.h:
109 * khtml/misc/htmltags.c:
112 * khtml/misc/htmltags.h:
113 * khtml/misc/htmltags.in:
114 * khtml/rendering/render_flow.cpp:
115 (RenderFlow::layoutBlockChildren):
117 2002-12-02 David Hyatt <hyatt@apple.com>
119 Fix for 3032557, wsj.com DHTML elements in the wrong position.
120 This patch adds support for img.x and img.y (a Mozilla extension
121 from NS4 days), which is used by the site to position the menus.
123 r=kocienda on the patch.
125 * khtml/dom/html_image.cpp:
126 (HTMLImageElement::x):
127 (HTMLImageElement::y):
128 * khtml/dom/html_image.h:
129 * khtml/ecma/kjs_html.cpp:
130 (KJS::HTMLElement::getValueProperty):
131 * khtml/ecma/kjs_html.h:
132 * khtml/ecma/kjs_html.lut.h:
134 2002-12-02 David Hyatt <hyatt@apple.com>
136 Undo my changes to margin collapsing for blocks inside inlines.
137 Although they may be correct in a strict mode, they don't
138 work with the real-world Web. For now, I'm just backing out
139 the code. The CSS WG hasn't decided how this should work yet
140 anyway, so I'll just let the quirk behavior be our behavior
143 This fixes aintitcool.com.
145 * khtml/rendering/render_flow.cpp:
146 (RenderFlow::layoutBlockChildren):
148 2002-12-01 David Hyatt <hyatt@apple.com>
150 Convert the WebCore cache from LRU to size-adjusted and
151 popularity-aware LRU (LRU-SP). With the improved cache,
152 the size restriction on images can be relaxed back to 40K
153 (from 16K) while retaining the same score on cvs-base.
154 This should result in better real-world performance.
156 * khtml/misc/loader.cpp:
158 (CachedObject::setSize):
163 (Cache::getLRUListFor):
164 (Cache::removeFromLRUList):
165 (Cache::insertInLRUList):
167 * khtml/misc/loader.h:
169 2002-11-29 Don Melton <gramps@apple.com>
171 * khtml/css/html4.css:
173 Finally tweak headline font sizes and margins to match Gecko and CSS
175 - increase H1 font-size from 1.7em to 2em
176 - increase H2 font-size from 1.4em to 1.5em
177 - make H2 top and bottom margin match (bottom was strangely .87em)
178 - increase H4 margin from 1.0em to 1.33em
180 2002-11-27 David Hyatt <hyatt@apple.com>
182 Fix DHTML on phoenix.com. Add support for window.addEventListener
183 and window.removeEventListener.
185 * khtml/ecma/kjs_window.cpp:
187 (WindowFunc::tryCall):
188 * khtml/ecma/kjs_window.h:
189 * khtml/ecma/kjs_window.lut.h:
191 2002-11-27 Maciej Stachowiak <mjs@apple.com>
193 - avoid doing any work when setting the document's link colors if
194 there is no change. This avoids superfluous style updates and
195 results in a 20% improvment on the JavaScript iBench.
197 * khtml/ecma/kjs_html.cpp:
198 (KJS::HTMLDocument::putValue):
200 2002-11-27 David Hyatt <hyatt@apple.com>
202 Fix <br clear=""> and <br clear> to just behave like <br>
203 rather than <br clear="all">. Matches behavior in other
206 * khtml/html/html_inlineimpl.cpp:
207 (HTMLBRElementImpl::parseAttribute):
209 2002-11-27 David Hyatt <hyatt@apple.com>
211 Numerous overflow: hidden improvements to fix espn.com.
213 First stop absolute positioned overflow hidden elements
214 from growing to accommodate their overflow. (Actually
215 absolute positioned elements should never grow to do this,
216 but fixing it for non-overflow hidden elements is hard,
219 Second fix the render layer code to not allow background/borders
220 of the object with overflow: hidden from being clipped. This
221 involves an extra paint step where the object paints its
222 background and borders prior to establishing the clip rect
223 for the children. (This will also be necessary for overflow:auto
224 and overflow:scroll).
227 * khtml/rendering/render_box.cpp:
228 (RenderBox::getClipRect):
229 (RenderBox::calcAbsoluteVertical):
230 * khtml/rendering/render_layer.cpp:
231 (RenderLayer::paint):
232 * khtml/rendering/render_object.h:
234 2002-11-27 David Hyatt <hyatt@apple.com>
236 * khtml/rendering/render_box.cpp:
237 (RenderBox::getClipRect):
238 (RenderBox::calcAbsoluteVertical):
239 * khtml/rendering/render_layer.cpp:
240 (RenderLayer::paint):
242 2002-11-27 David Hyatt <hyatt@apple.com>
244 Fix for 3105502. drop-downs wrapping to next line.
246 * khtml/css/html4.css:
248 2002-11-26 David Hyatt <hyatt@apple.com>
250 Smarter block inside inline handling. Eliminate whitespace
251 that is in between blocks inside inilnes.
253 * khtml/xml/dom_textimpl.cpp:
256 2002-11-26 David Hyatt <hyatt@apple.com>
258 Don't let blocks inside inlines collapse with their surroundings
261 * khtml/rendering/render_flow.cpp:
262 (RenderFlow::layoutBlockChildren):
264 2002-11-26 David Hyatt <hyatt@apple.com>
266 Fix a collapsing margin regression on aintitcool caused by
267 my support of blocks inside inlines. A block could be wrapped
268 by an inline, e.g., <font><p>foo</p></font>, and in this case,
269 you do not apply the collapsing margin quirk. The margin stays.
271 * khtml/rendering/render_flow.cpp:
272 (RenderFlow::layoutBlockChildren):
274 2002-11-26 David Hyatt <hyatt@apple.com>
276 Fix the font family stuff to be refcounted, so copying
277 fonts stays cheap. Re-enabling it.
279 Patch the render_arena code with some debugging info
280 to help detect when memory gets trashed.
282 Fix the background painting code to deal with negative
283 x and y bakcground positions. Fixes the brain on
286 * khtml/css/cssstyleselector.cpp:
287 * khtml/rendering/render_arena.cpp:
289 * khtml/rendering/render_box.cpp:
290 (RenderBox::paintBackground):
293 (QFontFamily::QFontFamily):
294 (QFontFamily::operator=):
298 2002-11-26 David Hyatt <hyatt@apple.com>
300 Backing out support for multiple font families for now.
301 The support is still there in QFont. I've just stopped
302 the style selector from walking the entire value list (it
303 will only put the first family into the font).
305 The original change caused a 5% perf regression.
306 I'm going to see what kinds of tricks I can pull to get
307 some of this back before re-enabling the feature.
309 * khtml/css/cssstyleselector.cpp:
311 2002-11-26 David Hyatt <hyatt@apple.com>
313 Fix render object removal to remerge adjacent anonymous inline boxes
314 when an intervening block box gets removed.
316 * khtml/rendering/render_flow.cpp:
317 (RenderFlow::removeChild):
318 * khtml/rendering/render_flow.h:
320 2002-11-25 Richard Williamson <rjw@apple.com>
322 Cleanup up leaking objects in page cache.
324 * kwq/KWQKHTMLPart.mm:
325 (KWQKHTMLPart::openURLFromPageCache):
326 * kwq/WebCoreBridge.mm:
327 (-[KWQPageState initWithDocument:DOM::URL:windowProperties:KJS::locationProperties:KJS::]):
328 (-[KWQPageState dealloc]):
330 2002-11-25 Richard Williamson <rjw@apple.com>
332 Added check for non-nil doc.
334 * kwq/KWQKHTMLPart.mm:
335 (KWQKHTMLPart::setView):
337 2002-11-25 David Hyatt <hyatt@apple.com>
339 Fix for the DHTML on hrweb. With these changes it works
340 except for some odd vertical spacing issues.
342 * khtml/rendering/render_flow.cpp:
343 (RenderFlow::addChildToFlow):
344 (RenderFlow::makeChildrenNonInline):
346 2002-11-25 Richard Williamson <rjw@apple.com>
348 Tweaked some debugging info.
350 * khtml/xml/dom_docimpl.cpp:
351 (DocumentImpl::~DocumentImpl):
352 (DocumentImpl::detach):
354 2002-11-25 Chris Blumenberg <cblu@apple.com>
356 Use ^= to refer to OBJECTs with TYPEs that start with "image/". This is better than hard-coding image mime types.
358 * khtml/css/html4.css:
360 2002-11-25 Chris Blumenberg <cblu@apple.com>
362 Fixed: 2987001 - spurious mime-type errors from <object> images
364 KHTML didn't seem to have any clean support for OBJECT tags that are images. Added support for that.
366 * khtml/css/html4.css: OBJECTs that are images should be rendered inline
367 * khtml/html/html_objectimpl.cpp:
368 (HTMLObjectElementImpl::attach): if the type is an image, create a render image
369 * khtml/rendering/render_image.cpp:
370 (RenderImage::updateFromElement): if the element is an object, use DATA for the URL
371 * kwq/KWQDOMNode.cpp:
372 (isImage): if it is an OBJECT element, check the type
373 * kwq/WebCoreBridge.mm:
374 (-[WebCoreBridge elementAtPoint:]): if the element is an object, use DATA for the URL
376 2002-11-25 David Hyatt <hyatt@apple.com>
378 Fix this even further. JUst drop support for arbitrary
379 property lookup by name on the document. Mac IE and
380 Gecko only do this for img and form, and this makes things
383 * khtml/ecma/kjs_html.cpp:
384 (KJS::HTMLDocument::hasProperty):
385 (KJS::HTMLDocument::tryGet):
387 2002-11-25 David Hyatt <hyatt@apple.com>
389 Rewrite the img/form document property lookup strategy. This
390 should be faster and actually work (gasp!). Fixes the dhtml
391 on hrweb to at least show up.
393 * khtml/ecma/kjs_html.cpp:
394 (KJS::HTMLDocument::tryGet):
395 * khtml/html/html_miscimpl.cpp:
396 (HTMLCollectionImpl::nextItem):
398 2002-11-25 David Hyatt <hyatt@apple.com>
400 Add support to QFont for multiple families. NOw all that's left
401 is getting the multiple families out of the font and down into
404 * khtml/css/cssstyleselector.cpp:
405 * khtml/rendering/font.cpp:
407 * khtml/rendering/font.h:
408 * khtml/xml/dom_docimpl.cpp:
409 (DocumentImpl::recalcStyle):
412 (QFontFamily::QFontFamily):
413 (QFontFamily::operator=):
414 (QFontFamily::family):
415 (QFontFamily::setFamily):
416 (QFontFamily::operator==):
420 (QFont::getNSFontWithFamily):
422 2002-11-25 Richard Williamson <rjw@apple.com>
424 Changes for back/forward. Currently disabled.
426 * ForwardingHeaders/kjs/property_map.h: Added.
427 * khtml/ecma/kjs_window.cpp:
428 (Window::hasTimeouts):
429 (WindowQObject::hasTimeouts):
430 * khtml/ecma/kjs_window.h:
431 * khtml/khtmlpart_p.h:
432 * khtml/xml/dom_docimpl.cpp:
433 (DocumentImpl::DocumentImpl):
434 (DocumentImpl::detach):
435 (DocumentImpl::inPageCache):
436 (DocumentImpl::setInPageCache):
437 * khtml/xml/dom_docimpl.h:
438 * kwq/KWQKHTMLPart.h:
439 * kwq/KWQKHTMLPart.mm:
440 (KWQKHTMLPart::setView):
441 (KWQKHTMLPart::userAgent):
442 (KWQKHTMLPart::nextKeyViewForWidget):
443 (KWQKHTMLPart::canCachePage):
444 (KWQKHTMLPart::saveWindowProperties):
445 (KWQKHTMLPart::saveLocationProperties):
446 (KWQKHTMLPart::restoreWindowProperties):
447 (KWQKHTMLPart::restoreLocationProperties):
448 (KWQKHTMLPart::openURLFromPageCache):
449 * kwq/WebCoreBridge.h:
450 * kwq/WebCoreBridge.mm:
451 (-[WebCoreBridge openURL:reload:headers:lastModified:pageCache:]):
452 (-[WebCoreBridge saveDocumentToPageCache]):
453 (-[WebCoreBridge canCachePage]):
455 (-[KWQPageState initWithDocument:DOM::URL:windowProperties:KJS::locationProperties:KJS::]):
456 (-[KWQPageState dealloc]):
457 (-[KWQPageState DOM::]):
458 (-[KWQPageState URL]):
459 (-[KWQPageState KJS::]):
461 2002-11-25 David Hyatt <hyatt@apple.com>
463 Fix for 3025963. Ensure that KJS looks for the form on the
464 element itself when pushing it onto the scope chain, since
465 the <form> may not be an ancestor of the element.
467 * khtml/ecma/kjs_html.cpp:
469 (KJS::HTMLElement::pushEventHandlerScope):
470 * khtml/html/html_elementimpl.h:
472 2002-11-25 David Hyatt <hyatt@apple.com>
474 Fix for 3020493, another fun little margin collapsing quirk
475 that I missed. (<td><div><p>). The <div> has to pick up the quirk
476 from the <p> so that the margins of the <p> still get collapsed
479 * khtml/rendering/render_flow.cpp:
480 (RenderFlow::layoutBlockChildren):
482 2002-11-25 David Hyatt <hyatt@apple.com>
484 Don't add in the halfleading for align=texttop. That's incorrect.
486 * khtml/rendering/render_object.cpp:
487 (RenderObject::getVerticalPosition):
489 2002-11-24 Maciej Stachowiak <mjs@apple.com>
491 Fixed support for onLoad handlers on images - this is in
492 APPLE_CHANGES because khtml used a different mechanism. Also
493 implemented onError on images. As a result:
495 - fixed 3084916 - blank page at aol
496 - fixed 3093162 - golfswitch doesn't work
498 * khtml/html/html_imageimpl.cpp:
499 (HTMLImageElementImpl::parseAttribute): Remove "implement this"
500 comment from onError attribute.
501 * khtml/misc/loader.h:
502 * khtml/misc/loader.cpp:
503 (CachedImage::CachedImage): Initialize m_loading to true.
504 (CachedImage::ref): Send notifyFinished to the new client if the
505 image is not loading.
506 (CachedImage::data): If at eof, set m_loading to false and notify.
507 (CachedImage::error): Set m_loading to false and notify.
508 (CachedImage::checkNotify): New method to notify all clients of
510 * khtml/rendering/render_image.cpp:
511 (RenderImage::notifyFinished): Deliver the appropriate choice of
512 LOAD_EVENT or ERROR_EVENT.
514 2002-11-24 David Hyatt <hyatt@apple.com>
516 This landing adds support for blocks inside inlines. It
517 gets rid of the old broken way KHTML used to handle this
518 and implements a brand new mechanism.
520 With this change, I have decreased the tag priority of <font>
521 and <a> to match other inlines (<i>, <span>, etc.), and I
522 now allow all the inlines to contain blocks for relaxed parsing.
524 Now if you open an <i> or a <b> and just leave it open across
525 blocks, this will work.
527 I also fixed a bad DHTML bug caused by the WebCoreBridge
528 forceLayout method. The basic pattern is that someone does
529 a tiny repaint of just a sliver of the window, then someone
530 schedules a layout (which means they want a full repaint), but
531 then drawRect comes along and calls forceLayout which unschedules
532 the layout, thus preventing the full repaint from occurring.
534 Any basic DHTML that used append/remove child was broken because
535 of this pattern. For now I have just removed the unscheduleLayout
536 call at the end of forceLayout.
538 * khtml/html/dtd.cpp:
540 * khtml/html/htmlparser.cpp:
541 (KHTMLParser::popInlineBlocks):
542 * khtml/rendering/render_container.cpp:
543 (RenderContainer::removeChild):
544 (RenderContainer::removeLeftoverAnonymousBoxes):
545 * khtml/rendering/render_flow.cpp:
546 (RenderFlow::setStyle):
547 (RenderFlow::layoutBlockChildren):
548 (RenderFlow::continuationBefore):
550 (RenderFlow::splitInlines):
551 (RenderFlow::splitFlow):
552 (RenderFlow::addChildWithContinuation):
553 (RenderFlow::addChild):
554 (RenderFlow::addChildToFlow):
555 * khtml/rendering/render_flow.h:
556 * khtml/rendering/render_object.cpp:
557 (RenderObject::mouseInside):
558 * khtml/rendering/render_object.h:
559 * kwq/KWQKHTMLPart.mm:
560 (KWQKHTMLPart::forceLayout):
561 * kwq/WebCoreBridge.mm:
562 (-[WebCoreBridge copyRenderNode:copier:]):
564 2002-11-24 Chris Blumenberg <cblu@apple.com>
566 Added element keys for the image ALT and link TITLE attributes. This will eventually be used to fix other bugs. Also made WebKit and WebCore use the same element keys to simplify the conversion of the element dictionary.
568 * kwq/WebCoreBridge.h:
569 * kwq/WebCoreBridge.mm:
570 (-[WebCoreBridge elementAtPoint:]):
572 2002-11-24 Darin Adler <darin@apple.com>
574 * force-js-clean-timestamp: Touch for ScopeChain change.
576 2002-11-24 Maciej Stachowiak <mjs@apple.com>
578 - fixed 3067939 - no support for window.document.lastModified
580 * kwq/WebCoreBridge.h:
581 * kwq/WebCoreBridge.mm:
582 (-[WebCoreBridge openURL:reload:headers:lastModified:]): Set
583 "modified" metadata based on passed in last mdified date.
585 2002-11-24 Maciej Stachowiak <mjs@apple.com>
587 - fixed 3081946 - bookmarklet reports the wrong "windowfull" size
589 This isn't really beta 1 material but the fix was so tirivial I
592 * khtml/ecma/kjs_html.cpp:
593 (KJS::HTMLDocument::tryGet): Use contentWidth and contentHeight
594 for document.width and document.height instead of visibleWidth for
597 2002-11-22 Darin Adler <darin@apple.com>
599 * khtml/ecma/kjs_window.cpp: Remove _COLLECTOR hack.
601 * kwq/WebCoreJavaScript.h:
602 * kwq/WebCoreJavaScript.mm:
603 (+[WebCoreJavaScript rootObjectClasses]):
604 Update for name change -- root object classes, not all live object classes.
606 * force-js-clean-timestamp: Make sure we don't have more build problems.
608 2002-11-22 David Hyatt <hyatt@apple.com>
610 Fix for 3107658, text doubling problem caused by layers being
611 constructed for <td>s. Just disallow positioning of <td>.
613 * khtml/rendering/render_box.cpp:
614 (RenderBox::setStyle):
615 * khtml/rendering/render_flow.cpp:
616 (RenderFlow::setStyle):
618 2002-11-22 David Hyatt <hyatt@apple.com>
620 Oops. I meant to do that for <input type=button> and not
621 <button>. Just do it for <select>s for now.
623 * khtml/rendering/render_box.cpp:
624 (RenderBox::calcReplacedWidth):
626 2002-11-22 David Hyatt <hyatt@apple.com>
628 Make <select>s and <button>s ignore a CSS-specified width if that
629 width is smaller than their intrinsic width.
631 Fixes the <select> at the top of livepage.apple.com.
633 * khtml/rendering/render_box.cpp:
634 (RenderBox::calcReplacedWidth):
636 2002-11-22 Darin Adler <darin@apple.com>
638 - started checking in all our generated source files for the benefit of B&I
641 * WebCore-combined.exp: Added.
642 * khtml/css/.cvsignore:
643 * khtml/css/cssproperties.c: Added.
644 * khtml/css/cssproperties.h: Added.
645 * khtml/css/cssvalues.c: Added.
646 * khtml/css/cssvalues.h: Added.
647 * khtml/ecma/.cvsignore:
648 * khtml/ecma/kjs_css.lut.h: Added.
649 * khtml/ecma/kjs_dom.lut.h: Added.
650 * khtml/ecma/kjs_events.lut.h: Added.
651 * khtml/ecma/kjs_html.lut.h: Added.
652 * khtml/ecma/kjs_navigator.lut.h: Added.
653 * khtml/ecma/kjs_range.lut.h: Added.
654 * khtml/ecma/kjs_traversal.lut.h: Added.
655 * khtml/ecma/kjs_views.lut.h: Added.
656 * khtml/ecma/kjs_window.lut.h: Added.
657 * khtml/html/.cvsignore:
658 * khtml/html/kentities.c: Added.
659 * khtml/misc/.cvsignore:
660 * khtml/misc/htmlattrs.c: Added.
661 * khtml/misc/htmlattrs.h: Added.
662 * khtml/misc/htmltags.c: Added.
663 * khtml/misc/htmltags.h: Added.
665 * kwq/KWQCharsetData.c: Added.
667 2002-11-22 David Hyatt <hyatt@apple.com>
669 Fix for the table/form regressions. Also landing beginnings
670 of the block/inline work.
672 * khtml/html/html_tableimpl.cpp:
673 (HTMLTableSectionElementImpl::addChild):
674 * khtml/html/html_tableimpl.h:
675 * khtml/rendering/render_flow.cpp:
676 (RenderFlow::RenderFlow):
677 * khtml/rendering/render_flow.h:
679 2002-11-22 Darin Adler <darin@apple.com>
681 * khtml/ecma/kjs_dom.cpp: (DOMNode::pushEventHandlerScope): Change to push handlers
682 on an existing scope chain rather than returning one. Name change too.
683 * khtml/ecma/kjs_dom.h: More of the same.
684 * khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::pushEventHandlerScope): And here.
685 * khtml/ecma/kjs_html.h: And here.
687 * khtml/ecma/kjs_events.cpp: (JSEventListener::handleEvent): Use the pushEventHandlerScope
688 function, and also don't worry about optimizing the "no change" case, because that already
689 works pretty efficiently.
691 2002-11-22 David Hyatt <hyatt@apple.com>
693 Fix for the weather.com, slate and espn malformations that
694 could occur. Also reverting an earlier change for handling
695 font tags like other inlines. Both FONT and A need to be
696 given special treatment until I can implement a strategy that
697 will allow them to be handled just like the other inlines.
699 * khtml/html/dtd.cpp:
701 * khtml/html/html_elementimpl.cpp:
702 (HTMLElementImpl::isInline):
703 * khtml/html/html_elementimpl.h:
704 * khtml/xml/dom_nodeimpl.h:
706 2002-11-21 Darin Adler <darin@apple.com>
708 * khtml/ecma/kjs_dom.cpp: (DOMNode::eventHandlerScope): List -> ScopeChain.
709 * khtml/ecma/kjs_dom.h: List -> ScopeChain.
710 * khtml/ecma/kjs_events.cpp: (JSEventListener::handleEvent): List -> ScopeChain.
711 * khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::eventHandlerScope): List -> ScopeChain.
712 * khtml/ecma/kjs_html.h: List -> ScopeChain.
714 * force-js-clean-timestamp: Not sure this is required, but better safe than sorry.
716 2002-11-21 Maciej Stachowiak <mjs@apple.com>
718 * force-js-clean-timestamp: Touch so other people's builds work.
720 2002-11-21 David Hyatt <hyatt@apple.com>
722 Nested <a>s are never allowed. Make sure to always pop the
725 * khtml/html/htmlparser.cpp:
726 (KHTMLParser::getElement):
728 2002-11-21 David Hyatt <hyatt@apple.com>
730 Stop table cells from repainting the whole table when they
731 get a repaint. Gives another big boost to link rollover
732 performance when links' containing blocks are table cells.
734 * khtml/rendering/render_table.cpp:
735 (RenderTableCell::repaint):
737 2002-11-21 David Hyatt <hyatt@apple.com>
739 Fix <font> so that behaves just like <i>, <b>, etc. Stop
740 the (incorrect) allowance of blocks inside <font> tags.
741 This fixes the mispositioning on avoyagetoarcturus.blogspot.com
742 and fixes the vertical gaps on www.ve3d.com.
744 * khtml/html/dtd.cpp:
747 2002-11-21 Maciej Stachowiak <mjs@apple.com>
749 * Makefile.am: Pass symroots for this tree to pbxbuild.
751 2002-11-21 David Hyatt <hyatt@apple.com>
753 Fixed for tables. Make the percentage height calculation
754 more robust. Also add a hack for replaced elements to
755 subtract out their margins when computing percentage widths.
756 This keeps them from spilling out of table cells.
758 * khtml/rendering/render_box.cpp:
759 (RenderBox::calcReplacedWidth):
760 (RenderBox::calcReplacedHeight):
761 * khtml/rendering/render_table.cpp:
762 (RenderTable::layoutRows):
763 * khtml/xml/dom_nodeimpl.h:
767 2002-11-21 Richard Williamson <rjw@apple.com>
769 Fixed from SK's copy/paste whitespace issue.
770 This fixes 3076236 and a regression due to additional whitespace
773 * kwq/WebCoreBridge.mm:
776 2002-11-21 David Hyatt <hyatt@apple.com>
778 Fix mac.com regression (and weather.com regression).
780 * khtml/rendering/bidi.cpp:
781 (RenderFlow::findNextLineBreak):
783 2002-11-21 Richard Williamson <rjw@apple.com>
785 Fixed performance regression! Argh.
787 * khtml/rendering/font.cpp:
790 2002-11-21 Darin Adler <darin@apple.com>
792 * force-js-clean-timestamp: Trigger a rebuild because of the
793 size change in ValueImp.
795 2002-11-21 Darin Adler <darin@apple.com>
797 - fixed 3107286 -- REGRESSION: unrepro assertion failure in KWQKHTMLPart.mm keyEvent
799 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::keyEvent):
800 Handle case of nil document as well as case of nil focus node.
802 * kwq/WebCoreBridge.mm: Tweak whitespace.
804 2002-11-20 Darin Adler <darin@apple.com>
806 - fixed 3107383 -- clicking link on cnet.com leads to assertion failure
808 When we removed a frame, we were leaving behind an empty WebView. Yuck.
810 * kwq/KWQScrollView.mm:
811 (QScrollView::addChild): Use the new getOuterView.
812 (QScrollView::removeChild): Ditto. This was the bug fix.
813 * kwq/KWQWidget.h: Add getOuterView.
815 (QWidget::frameGeometry): Use the new getOuterView.
816 (QWidget::setFrameGeometry): Ditto.
817 (QWidget::getOuterView): Added. Does the WebCoreFrameView magic to find
818 the WebView instead of the WebHTMLView. Yuck.
819 (QWidget::paint): Use the new getOuterView.
821 2002-11-20 Darin Adler <darin@apple.com>
823 * force-js-clean-timestamp: Again.
825 2002-11-20 David Hyatt <hyatt@apple.com>
827 Fix the mac.com line-breaking bug. This was not a regression
828 but was present in Konq.
830 * khtml/rendering/bidi.cpp:
831 (RenderFlow::findNextLineBreak):
833 2002-11-20 Maciej Stachowiak <mjs@apple.com>
835 * force-js-clean-timestamp: Work around PB lameness yet again.
837 2002-11-19 Darin Adler <darin@apple.com>
839 * force-js-clean-timestamp: Make other people's builds work.
841 2002-11-19 David Hyatt <hyatt@apple.com>
843 I screwed up the line breaking for inline replaced elements.
845 * khtml/rendering/render_flow.cpp:
846 (RenderFlow::calcInlineMinMaxWidth):
848 2002-11-19 Darin Adler <darin@apple.com>
850 - another atomic identifier scrub pass; make the conversion to Identifier explicit
852 * khtml/ecma/kjs_html.cpp:
853 (KJS::HTMLCollection::tryCall): Add explicit Identifier() conversion.
854 (KJS::HTMLCollectionProtoFunc::tryCall): Ditto.
855 * khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): And again.
857 2002-11-19 David Hyatt <hyatt@apple.com>
859 Fix for 3049663. Table cells don't grow to accommodate block
862 * khtml/rendering/bidi.cpp:
863 (RenderFlow::layoutInlineChildren):
864 * khtml/rendering/render_flow.cpp:
865 (RenderFlow::RenderFlow):
866 (RenderFlow::layout):
867 (RenderFlow::layoutBlockChildren):
868 * khtml/rendering/render_flow.h:
869 * khtml/rendering/render_object.h:
871 2002-11-19 Darin Adler <darin@apple.com>
873 - next step towards atomic identifiers; Identifier is no longer derived from UString
875 * khtml/ecma/kjs_binding.cpp:
876 (Identifier::string): Added.
877 (Identifier::qstring): Added.
879 * khtml/ecma/kjs_binding.h:
880 * khtml/ecma/kjs_css.cpp:
882 (DOMCSSStyleDeclaration::tryPut):
883 (DOMStyleSheet::tryPut):
884 (DOMStyleSheetList::tryGet):
885 (DOMMediaList::tryGet):
886 (DOMCSSRuleList::tryGet):
887 (DOMCSSValueList::tryGet):
888 * khtml/ecma/kjs_dom.cpp:
889 (DOMNodeList::hasProperty):
890 (DOMNodeList::tryGet):
891 (DOMNodeListFunc::DOMNodeListFunc):
892 (DOMElement::tryGet):
893 (DOMNamedNodeMap::hasProperty):
894 (DOMNamedNodeMap::tryGet):
895 (DOMNamedNodesCollection::tryGet):
896 * khtml/ecma/kjs_html.cpp:
897 (KJS::HTMLDocument::tryGet):
898 (HTMLElementFunction::HTMLElementFunction):
899 (KJS::HTMLElement::putValue):
900 (KJS::HTMLCollection::hasProperty):
901 (KJS::HTMLCollection::tryGet):
902 (KJS::HTMLSelectCollection::tryPut):
903 (OptionConstructorImp::OptionConstructorImp):
904 * khtml/ecma/kjs_navigator.cpp:
908 * khtml/ecma/kjs_window.cpp:
909 (WindowFunc::tryCall):
911 Use lengthPropertyName instead of "length" for better speed.
913 2002-11-19 David Hyatt <hyatt@apple.com>
915 Fix backgrounds not painting in deployment builds.
916 * khtml/rendering/render_box.cpp:
917 (RenderBox::paintBackground):
919 2002-11-19 Darin Adler <darin@apple.com>
921 - a first step towards atomic identifiers in JavaScript
923 Most places that work with identifiers now use Identifier
926 * khtml/ecma/kjs_binding.cpp:
927 * khtml/ecma/kjs_binding.h:
928 * khtml/ecma/kjs_css.cpp:
929 * khtml/ecma/kjs_css.h:
930 * khtml/ecma/kjs_dom.cpp:
931 * khtml/ecma/kjs_dom.h:
932 * khtml/ecma/kjs_events.cpp:
933 * khtml/ecma/kjs_events.h:
934 * khtml/ecma/kjs_html.cpp:
935 * khtml/ecma/kjs_html.h:
936 * khtml/ecma/kjs_navigator.cpp:
937 * khtml/ecma/kjs_navigator.h:
938 * khtml/ecma/kjs_range.cpp:
939 * khtml/ecma/kjs_range.h:
940 * khtml/ecma/kjs_traversal.cpp:
941 * khtml/ecma/kjs_traversal.h:
942 * khtml/ecma/kjs_views.cpp:
943 * khtml/ecma/kjs_views.h:
944 * khtml/ecma/kjs_window.cpp:
945 * khtml/ecma/kjs_window.h:
947 2002-11-18 Darin Adler <darin@apple.com>
949 * force-js-clean-timestamp: Another Object change.
951 2002-11-18 David Hyatt <hyatt@apple.com>
953 Implement phased painting to correct the paint order of blocks,
956 * khtml/rendering/render_body.cpp:
957 (RenderBody::paintBoxDecorations):
958 * khtml/rendering/render_body.h:
959 * khtml/rendering/render_box.cpp:
961 (RenderBox::paintBoxDecorations):
962 (RenderBox::paintBackground):
963 * khtml/rendering/render_box.h:
964 * khtml/rendering/render_br.h:
965 * khtml/rendering/render_flow.cpp:
967 (RenderFlow::paintObject):
968 (RenderFlow::paintFloats):
969 (RenderFlow::addChild):
970 * khtml/rendering/render_flow.h:
971 * khtml/rendering/render_html.cpp:
972 (RenderHtml::setStyle):
974 (RenderHtml::paintBoxDecorations):
975 * khtml/rendering/render_html.h:
976 * khtml/rendering/render_image.cpp:
977 (RenderImage::setStyle):
978 (RenderImage::paintObject):
979 * khtml/rendering/render_image.h:
980 * khtml/rendering/render_layer.cpp:
981 (RenderLayer::paint):
982 (RenderLayer::nodeAtPoint):
983 * khtml/rendering/render_list.cpp:
984 (RenderListItem::paint):
985 (RenderListItem::paintObject):
986 (RenderListMarker::paint):
987 (RenderListMarker::paintObject):
988 * khtml/rendering/render_list.h:
989 * khtml/rendering/render_object.cpp:
990 (RenderObject::RenderObject):
991 (RenderObject::paintBorder):
992 (RenderObject::paintOutline):
993 (RenderObject::paint):
994 (RenderObject::dump):
995 (RenderObject::setStyle):
996 * khtml/rendering/render_object.h:
997 * khtml/rendering/render_replaced.cpp:
998 (RenderReplaced::paint):
999 (RenderWidget::setStyle):
1000 (RenderWidget::paintObject):
1001 * khtml/rendering/render_replaced.h:
1002 * khtml/rendering/render_root.cpp:
1003 (RenderRoot::paint):
1004 (RenderRoot::paintObject):
1005 * khtml/rendering/render_root.h:
1006 * khtml/rendering/render_table.cpp:
1007 (RenderTable::paint):
1008 (RenderTableCell::RenderTableCell):
1009 (RenderTableCell::setStyle):
1010 (RenderTableCell::paint):
1011 (RenderTableCell::paintBoxDecorations):
1012 * khtml/rendering/render_table.h:
1013 * khtml/rendering/render_text.cpp:
1014 (TextSlave::paintSelection):
1015 (TextSlave::paintDecoration):
1016 (TextSlave::paintBoxDecorations):
1017 (RenderText::paintObject):
1018 (RenderText::paint):
1019 (RenderText::paintTextOutline):
1020 * khtml/rendering/render_text.h:
1022 2002-11-18 Darin Adler <darin@apple.com>
1024 * force-js-clean-timestamp: I changed the size of ObjectImp.
1026 2002-11-18 David Hyatt <hyatt@apple.com>
1028 Fix crazyapplerumors.com. I had the logic backwards. CSS
1029 padding beats cellpadding.
1031 * khtml/rendering/render_table.cpp:
1032 (RenderTableCell::paddingTop):
1033 (RenderTableCell::paddingBottom):
1034 (RenderTableCell::paddingLeft):
1035 (RenderTableCell::paddingRight):
1037 2002-11-18 David Hyatt <hyatt@apple.com>
1039 Fix crash on espn.com.
1041 * khtml/rendering/render_object.cpp:
1042 (RenderObject::setLayouted):
1044 2002-11-18 David Hyatt <hyatt@apple.com>
1046 Fix my <konqblock> regression on ign.com.
1048 * khtml/html/htmlparser.cpp:
1049 (KHTMLParser::insertNode):
1051 2002-11-18 Maciej Stachowiak <mjs@apple.com>
1053 * force-js-clean-timestamp: Rebuild for JSC changes.
1055 2002-11-18 Darin Adler <darin@apple.com>
1057 * force-js-clean-timestamp: Touch files to make the build work.
1059 2002-11-18 Richard Williamson <rjw@apple.com>
1061 Fixed 3103004. REGRESSION: word-spacing/letter-spacing applied when they shouldn't be
1062 This was actually NOT a regression. khtml wasn't recognizing the 'normal' value for the
1063 word and letter spacing properties. So it incorrectly substituted a -1 spacing.
1065 * khtml/css/cssstyleselector.cpp:
1067 2002-11-18 David Hyatt <hyatt@apple.com>
1069 Fix render_body's repaint method.
1071 * khtml/rendering/render_body.cpp:
1072 (RenderBody::repaint):
1073 * khtml/rendering/render_body.h:
1075 2002-11-18 Maciej Stachowiak <mjs@apple.com>
1077 - fixed 3103711 - Alexander does not complete JavaScript iBench
1079 * khtml/ecma/kjs_html.cpp:
1080 (KJS::HTMLDocument::putValue): Resolve URL for location property
1081 relative to the base URL of the frame where the JavaScript is
1082 executing, not the target frame.
1084 2002-11-18 David Hyatt <hyatt@apple.com>
1086 Yay! Found the main cause of :hover feedback being so
1087 slow on links. The diff function for styles was
1088 considering a color change as a containing block layout
1089 instead of just a repaint. With this fix, we will no
1090 longer lay out when you hover over a link whose color
1091 is different (remember that laying out causes the whole
1094 There's still some work to do to optimize this further,
1095 since we do repaint the containing block still, but this
1096 should be good enough for beta.
1098 * khtml/rendering/render_style.cpp:
1099 (RenderStyle::diff):
1101 2002-11-17 David Hyatt <hyatt@apple.com>
1103 Don't use the immediate painting code for now. Revert
1104 to non-immediate code. Using the non-immediate path I
1105 have managed to fix all the regressions except for
1106 mrskin losing updates in its marquee (this works only with
1107 immediate painting) and the general scrollbar regression
1108 (which I just don't understand).
1110 * khtml/html/html_documentimpl.cpp:
1111 (HTMLDocumentImpl::close):
1112 * khtml/rendering/render_object.cpp:
1113 (RenderObject::setLayouted):
1114 * khtml/rendering/render_root.cpp:
1115 (RenderRoot::repaintRectangle):
1116 (RenderRoot::repaint):
1118 2002-11-17 David Hyatt <hyatt@apple.com>
1120 More refinements to immediate painting code. Still doesn't
1121 fix the scrollbar problem though. :(
1123 * khtml/html/html_documentimpl.cpp:
1124 (HTMLDocumentImpl::close):
1125 * khtml/khtmlview.cpp:
1127 (KHTMLView::timerEvent):
1129 2002-11-17 David Hyatt <hyatt@apple.com>
1131 Make immediate repainting of the root element more robust.
1133 * khtml/html/html_documentimpl.cpp:
1134 (HTMLDocumentImpl::close):
1135 * khtml/khtmlview.cpp:
1136 (KHTMLView::unscheduleRepaint):
1137 * khtml/khtmlview.h:
1138 * khtml/rendering/render_root.cpp:
1139 (RenderRoot::repaint):
1141 2002-11-17 Darin Adler <darin@apple.com>
1143 - moved all NSURL and CFURL use out of WebCore
1145 * kwq/KWQKURL.h: Remove getNSURL() and getNSURLFromString().
1146 * kwq/KWQKURL.mm: Ditto.
1148 * kwq/KWQKCookieJar.mm:
1149 (KWQKCookieJar::cookie): Pass an NSString instead of an NSURL.
1150 (KWQKCookieJar::setCookie): Ditto.
1151 * kwq/KWQKHTMLPart.mm:
1152 (KWQKHTMLPart::openURL): Ditto.
1153 (KWQKHTMLPart::openURLRequest): Ditto.
1154 (KWQKHTMLPart::submitForm): Ditto.
1155 (KWQKHTMLPart::urlSelected): Ditto.
1156 (KWQKHTMLPart::createPart): Ditto.
1157 (KWQKHTMLPart::redirectionTimerStartedOrStopped): Ditto.
1158 (KWQKHTMLPart::userAgent): Ditto.
1159 (KWQKHTMLPart::requestedURLString): Receive an NSString instead of an NSURL.
1160 * kwq/KWQKHTMLPartBrowserExtension.mm:
1161 (KHTMLPartBrowserExtension::createNewWindow): Pass an NSString instead of an NSURL.
1162 (KHTMLPartBrowserExtension::setIconURL): Ditto.
1163 (KHTMLPartBrowserExtension::setTypedIconURL): Ditto.
1164 * kwq/KWQKJavaAppletWidget.h: Remove use of NSURL, just use QString instead.
1165 * kwq/KWQKJavaAppletWidget.mm:
1166 (KJavaAppletWidget::KJavaAppletWidget): No need to set the QString to nil.
1167 (KJavaAppletWidget::~KJavaAppletWidget): No need to release the QString.
1168 (KJavaAppletWidget::showApplet): Pass an NSString instead of an NSURL.
1170 (KWQServeRequest): Pass an NSString instead of an NSURL.
1171 (KWQCheckCacheObjectStatus): Ditto.
1172 * kwq/WebCoreBridge.h: Change all methods to use NSString instead of NSURL.
1173 * kwq/WebCoreBridge.mm:
1174 (-[WebCoreBridge openURL:reload:headers:]): Receive an NSString instead of an NSURL.
1175 (-[WebCoreBridge completeURLForDOMString:]): Return an NSString instead of an NSURL.
1176 (-[WebCoreBridge elementAtPoint:]): WebCoreElementLinkURL and WebCoreElementImageURL
1178 (-[WebCoreBridge URL]): Return an NSString instead of an NSURL.
1179 * kwq/WebCoreCookieAdapter.h: Change all methods to use NSString instead of NSURL.
1180 * kwq/WebCoreCookieAdapter.m:
1181 (-[WebCoreCookieAdapter cookiesForURL:]): Ditto.
1182 (-[WebCoreCookieAdapter setCookies:forURL:policyBaseURL:]): Ditto.
1184 * khtml/rendering/render_applet.cpp: (RenderApplet::processArguments):
1185 Tweaked this file a tiny bit, mainly because header dependencies weren't working
1186 and we need this file to be recompiled due to inline function changes.
1188 2002-11-17 David Hyatt <hyatt@apple.com>
1190 Add support for specifying whether repaint should be immediate or
1191 not. Default to async for now to maintain current behavior.
1193 For clipped object repainting (e.g., livepage.apple.com and mrskin)
1194 switch to immediate repainting, since this makes the marquees
1195 faster, stops dropping updates, and keeps the hover effects and
1196 painting on the rest of the page fast (since the marquee rect doesn't
1197 get unioned with links or images that you roll over).
1199 * khtml/rendering/render_box.cpp:
1200 (RenderBox::repaint):
1201 (RenderBox::repaintRectangle):
1202 * khtml/rendering/render_box.h:
1203 * khtml/rendering/render_html.cpp:
1204 (RenderHtml::repaint):
1205 * khtml/rendering/render_html.h:
1206 * khtml/rendering/render_object.cpp:
1207 (RenderObject::setLayouted):
1208 (RenderObject::repaintRectangle):
1209 * khtml/rendering/render_object.h:
1210 * khtml/rendering/render_root.cpp:
1211 (RenderRoot::repaintRectangle):
1212 (RenderRoot::repaint):
1213 * khtml/rendering/render_root.h:
1214 * khtml/rendering/render_table.cpp:
1215 (RenderTableRow::repaint):
1216 (RenderTableCell::repaintRectangle):
1217 (RenderTableCell::repaint):
1218 * khtml/rendering/render_table.h:
1219 * khtml/rendering/render_text.cpp:
1220 (RenderText::repaint):
1221 * khtml/rendering/render_text.h:
1223 2002-11-17 Maciej Stachowiak <mjs@apple.com>
1225 - fixed 2949193 - implement onKeyDown, onKeyPress, and onKeyUp event handlers
1227 * khtml/html/html_formimpl.cpp:
1228 (HTMLGenericFormElementImpl::defaultEventHandler):
1231 (QKeyEvent::QKeyEvent): Implemented.
1232 (QKeyEvent::key): Likewise.
1233 (QKeyEvent::state): Likewise.
1234 (QKeyEvent::accept): Likewise.
1235 (QKeyEvent::ignore): Likewise.
1236 (QKeyEvent::isAutoRepeat): Likewise.
1237 (QKeyEvent::text): Likewise.
1238 (QKeyEvent::ascii): Likewise.
1239 (QKeyEvent::count): Likewise.
1240 (QKeyEvent::isAccepted): Likewise.
1241 * kwq/KWQKHTMLPart.h:
1242 * kwq/KWQKHTMLPart.mm:
1243 (KWQKHTMLPart::keyEvent): Translate the event to a QEvent and send
1244 it through the DOM event mechanism.
1245 * kwq/WebCoreBridge.h:
1246 * kwq/WebCoreBridge.mm:
1247 (-[WebCoreBridge interceptKeyEvent:toView:]): Pass event to the
1249 * kwq/WebCoreBridgePrivate.h: Added.
1250 * WebCore.pbproj/project.pbxproj: Added new file.
1252 2002-11-17 David Hyatt <hyatt@apple.com>
1254 Don't discard linefeeds after elements with no close tag
1255 (e.g., <img> or <input>).
1257 * khtml/html/htmltokenizer.cpp:
1258 (HTMLTokenizer::parseTag):
1260 2002-11-17 David Hyatt <hyatt@apple.com>
1262 Fix for slashdot table mispositioning in the upper right.
1263 Now that we fixed <td> to set to -konq-center when align="center"
1264 is specified, the style rules are no longer necessary in
1265 html4.css (and are in fact harmful).
1267 * khtml/css/html4.css:
1269 2002-11-17 David Hyatt <hyatt@apple.com>
1271 Fix for 3038168. Duh. Remember to be case-insensitive when
1272 checking the type of the <style> attribute.
1274 * khtml/html/html_headimpl.cpp:
1275 (HTMLStyleElementImpl::parseAttribute):
1277 2002-11-17 David Hyatt <hyatt@apple.com>
1279 This is a fix for bug 3058470. The bug was that replaced elements
1280 were computing their min and max widths wrong. Specifically they
1281 were not adding in borders and padding! This means that any image
1282 with a border around it would potentially break to another line
1285 Once I fixed this for replaced elements I then went in and
1286 fixed form controls. I added two APPLE_CHANGES features for
1287 our form controls. First I overrode the border/padding functions
1288 to always return 0 for all form controls, since no Aqua control
1289 honors border/padding (nor should it). This fixes the menulist
1290 at the top of wired.com.
1292 Second I made sure that certain controls will ignore CSS-specified
1293 heights and always use their intrinsic heights. These include
1294 <select size=1> (combobox), single line text fields, and buttons.
1295 I allow listboxes and textareas to honor height.
1297 * khtml/rendering/render_box.cpp:
1298 (RenderBox::contentWidth):
1299 (RenderBox::contentHeight):
1300 (RenderBox::calcWidth):
1301 (RenderBox::calcHeight):
1302 * khtml/rendering/render_form.h:
1303 * khtml/rendering/render_image.h:
1304 * khtml/rendering/render_object.h:
1305 * khtml/rendering/render_replaced.cpp:
1306 (RenderReplaced::calcMinMaxWidth):
1308 2002-11-16 David Hyatt <hyatt@apple.com>
1310 Fix for 3078240, <pre> should not establish its own text-align,
1311 but should instead inherit from its parent.
1313 * khtml/css/html4.css:
1315 2002-11-16 David Hyatt <hyatt@apple.com>
1317 Rewrite the calculation of min and max width for <pre>s. This
1318 is the second stage of the whitespace rewrite (third stage
1319 will be to stop morphing newlines).
1321 This should fix a bunch of bugs, e.g., especially if you ever
1323 <td><pre><span>foo</span>
1324 more text after the newline</pre></td>
1326 The new code now properly handles building up the correct min/max
1327 width for the <pre>.
1329 If anyone recalls seeing any bugs like this, let me know and
1332 * khtml/rendering/render_flow.cpp:
1333 (RenderFlow::calcInlineMinMaxWidth):
1334 * khtml/rendering/render_text.cpp:
1335 (RenderText::trimmedMinMaxWidth):
1336 (RenderText::calcMinMaxWidth):
1338 2002-11-16 David Hyatt <hyatt@apple.com>
1340 Fix more edge cases with whitespace handling that caused some
1341 lines to be too long (and unselectable).
1343 * khtml/rendering/bidi.cpp:
1344 (appendRunsForObject):
1346 2002-11-16 David Hyatt <hyatt@apple.com>
1348 Make <caption> error-handling more robust.
1350 Specifically, handle <tr> and <td> misplaced inside
1351 <caption>s and still make them be part of the table.
1353 * khtml/html/htmlparser.cpp:
1354 (KHTMLParser::insertNode):
1356 2002-11-16 David Hyatt <hyatt@apple.com>
1358 Implement the collapsing top margin quirk for <body> (the same
1359 quirk used for table cells) and make sure it works even when the
1360 <body> has margins of its own.
1362 Fixes www.eflightpacks.com (the top frame was shoved down because
1363 the <p> margin didn't collapse away).
1365 * khtml/rendering/render_flow.cpp:
1366 (RenderFlow::layoutBlockChildren):
1368 2002-11-16 David Hyatt <hyatt@apple.com>
1370 Sigh. Amazingly enough, all other browsers seem to treat
1371 stray </p>s as <p></p> (Mac IE treats it as <br>, but
1372 I'm going with the WinIE/Gecko behavior of <p></p>).
1374 This fixes bug 3063699.
1376 * khtml/html/htmlparser.cpp:
1377 (KHTMLParser::processCloseTag):
1378 (KHTMLParser::popBlock):
1380 2002-11-15 David Hyatt <hyatt@apple.com>
1382 Fix for livepage.apple.com slowness. Ensure that
1383 clipped regions only paint their own rectangles
1384 when they or any children inside of them need to
1387 This fix is intended as an interim band-aid for a much
1388 larger problem (that all of layout doesn't just auto-invalidate
1389 the regions it needs to, and that DHTML doesn't have
1390 specialized behavior to avoid async repainting or even
1391 relayout when only a repaint is required).
1393 * khtml/khtmlview.cpp:
1394 (KHTMLView::timerEvent):
1395 * khtml/rendering/render_container.cpp:
1396 (RenderContainer::removeChildNode):
1397 (RenderContainer::appendChildNode):
1398 (RenderContainer::insertChildNode):
1399 (RenderContainer::layout):
1400 * khtml/rendering/render_object.cpp:
1401 (RenderObject::setLayouted):
1402 (RenderObject::scheduleRelayout):
1403 * khtml/rendering/render_root.cpp:
1404 (RenderRoot::repaintRectangle):
1406 2002-11-15 David Hyatt <hyatt@apple.com>
1408 Fix the problem where the last lines of paragrpahs were getting
1409 justified incorrectly.
1411 * khtml/rendering/bidi.cpp:
1412 (RenderFlow::findNextLineBreak):
1414 2002-11-15 David Hyatt <hyatt@apple.com>
1416 Fix bustage with <nobr> tags. Inline nowrap elements were
1417 breaking on images when they shouldn't have.
1419 * khtml/rendering/render_flow.cpp:
1420 (RenderFlow::calcInlineMinMaxWidth):
1422 2002-11-15 Ken Kocienda <kocienda@apple.com>
1426 Radar 3102708 (REGRESSION: assertion failure backing up to page)
1428 KWQCheckCacheObjectStatus did not create an NSURL in a way that
1429 dealt with the fact that we handle non-NSURL-compliant URL strings.
1430 I have fixed it so it does, and in the process, factored out
1431 the code to do it into a new KURL static function (KURL::getNSURLFromString).
1435 (KURL::getNSURL): Now calls through to KURL::getNSURLFromString
1436 (KURL::encode_string)
1437 (KURL::getNSURLFromString): New function to handle NSURL creation
1439 (KWQCheckCacheObjectStatus)
1441 2002-11-15 David Hyatt <hyatt@apple.com>
1443 Fix asserts in tables.
1445 * khtml/rendering/render_table.cpp:
1446 (RenderTableRow::layout):
1448 2002-11-15 David Hyatt <hyatt@apple.com>
1450 Fix for whitespace regressions that caused text overlapping
1453 * khtml/rendering/bidi.cpp:
1454 (appendRunsForObject):
1456 2002-11-15 David Hyatt <hyatt@apple.com>
1458 Fix newlines getting stripped out of textareas by not making
1459 rendertext objects for children of textareas.
1461 * khtml/rendering/render_form.h:
1462 * khtml/rendering/render_object.h:
1463 * khtml/xml/dom_textimpl.cpp:
1466 2002-11-15 David Hyatt <hyatt@apple.com>
1468 Make <form> inside <table> stay inside the <table> but demote
1469 itself to a leaf. Then the children of the <form> are treated
1470 as though they occurred underneath the <table> itself. Everything
1471 KHTML does with this is completely wrong but this band-aid should
1472 hopefully suffice until 1.0.
1474 Also allowing <input type="hidden"> to be constructed and attached
1475 under <table>s. Since they have no render objects this is safe.
1476 Again, total hack, since CSS2 anonymous table construction should be
1477 implemented and that would have fixed all this.
1479 This collection of hacks makes travelocity render correctly on the
1482 * khtml/css/html4.css:
1483 * khtml/html/dtd.cpp:
1485 * khtml/html/html_tableimpl.cpp:
1486 (HTMLTableElementImpl::addChild):
1487 * khtml/html/htmlparser.cpp:
1488 (KHTMLParser::parseToken):
1489 (KHTMLParser::insertNode):
1491 2002-11-15 David Hyatt <hyatt@apple.com>
1493 Fix Hixie's blog. Background images can be transparent, so
1494 if the root's color isn't valid always do a fixup even if you
1495 have a valid background image.
1497 * khtml/rendering/render_html.cpp:
1498 (RenderHtml::printBoxDecorations):
1500 2002-11-15 Darin Adler <darin@apple.com>
1502 * kwq/KWQWindowWidget.mm: (KWQWindowWidget::setFrameGeometry):
1503 Oops. Make that display:YES.
1505 2002-11-15 Darin Adler <darin@apple.com>
1507 - fixed 3090219 -- Window jumps up and down when loading nikon page
1509 * kwq/KWQWindowWidget.mm: (KWQWindowWidget::setFrameGeometry):
1510 Don't pass display:NO when resizing the window.
1512 2002-11-15 Ken Kocienda <kocienda@apple.com>
1514 Remove characters RFC 2396 describes as "unwise" from the
1515 BadChar character class. This causes them to remain unescaped
1516 in KURL objects. As a result, some extra escaping needed to
1517 be added into the getNSURL() function to enable NSURL
1518 objects to be created using a KURL.
1520 This enables me to fix this bug:
1521 Radar 3050437 (Clicking link leads to page with garbled content)
1523 Note, however, that my fix for 3050437 relies on this bug remaining unfixed:
1525 Radar 3102332 (Square bracket characters "sneak through" CFURL illegal character checks)
1530 2002-11-15 Darin Adler <darin@apple.com>
1532 - fixed 3027460 -- text areas don't have focus rectangles
1533 - fixed 2937204 -- text areas have solid black borders
1535 * kwq/KWQSignal.mm: (KWQSignal::disconnect):
1536 Add a special case so we don't hear about finishedParsing all the time.
1538 * kwq/KWQTextArea.mm:
1539 (-[KWQTextArea initWithFrame:]): Use a bezel border, not a line border.
1540 (-[KWQTextArea getCursorPositionAsIndex:inParagraph:]): Fix bug where it would
1541 return a bogus value for an empty text area.
1542 (-[KWQTextArea setCursorPositionToIndex:inParagraph:]): Use setSelectedRange:
1543 ratherr than setMarkedText:selectedRange:.
1544 (-[KWQTextArea drawRect:]): Draw a focus ring if our text view is first responder.
1545 (-[KWQTextArea _KWQ_setKeyboardFocusRingNeedsDisplay]): Added.
1546 (-[KWQTextAreaTextView becomeFirstResponder]): Call _KWQ_setKeyboardFocusRingNeedsDisplay.
1547 (-[KWQTextAreaTextView resignFirstResponder]): Call _KWQ_setKeyboardFocusRingNeedsDisplay.
1548 (-[NSView _KWQ_setKeyboardFocusRingNeedsDisplay]): Calls the same thing on parent.
1550 * WebCore.pbproj/project.pbxproj: PB is a cruel master.
1552 2002-11-15 Maciej Stachowiak <mjs@apple.com>
1554 * khtml/html/html_formimpl.cpp:
1555 (HTMLInputElementImpl::attach): Removed a stray printf.
1557 2002-11-14 Darin Adler <darin@apple.com>
1559 - fixed most of the problems with OPTGROUP
1561 * khtml/html/htmlparser.cpp: (KHTMLParser::insertNode):
1562 Make OPTGROUPs pop out of other unclosed OPTGROUPs, not just out of options.
1564 * kwq/KWQListBox.h: Add private member function.
1565 * kwq/KWQListBox.mm:
1566 (QListBox::insertItem): Use shared insertItem function.
1567 (QListBox::insertGroupLabel): Create an attributed string for the group label,
1569 (-[KWQListBoxTableViewDelegate tableView:shouldSelectRow:]): Return YES only
1570 for the plain strings, that way you can't select the group labels.
1572 * WebCore.pbproj/project.pbxproj: Let PB do its thing.
1574 2002-11-14 David Hyatt <hyatt@apple.com>
1576 Fix spinner.com mislayout on the PLT. Make sure
1577 <input type=image> honors the width attribute and
1578 make sure that its render object calls updateFromElement.
1580 * khtml/html/html_formimpl.cpp:
1581 (HTMLInputElementImpl::parseAttribute):
1582 (HTMLInputElementImpl::attach):
1584 2002-11-14 David Hyatt <hyatt@apple.com>
1586 Move text measurement and layout beyond onload. This
1587 shoudl speed up i-bench substantially and morrison's
1590 Also allow <table>s as children of <p> and <h1>-<h6>.
1591 This fixes floats on slashdot.org (the left side) and
1592 the floating tables in articles on wired.com.
1594 * khtml/html/dtd.cpp:
1596 * khtml/html/html_documentimpl.cpp:
1597 (HTMLDocumentImpl::HTMLDocumentImpl):
1598 (HTMLDocumentImpl::close):
1599 * khtml/html/html_documentimpl.h:
1600 * khtml/html/htmlparser.cpp:
1601 (KHTMLParser::insertNode):
1603 2002-11-14 Richard Williamson <rjw@apple.com>
1605 Fixed 3099505. With the recent white space changes, multiple slaves may
1606 be created for contiguous text on the same line. The fix changes the
1607 iteration order of over the slave array. Now, when searching for the end
1608 point of a line we'll always find the last slave on a line first.
1610 * khtml/khtml_part.cpp:
1613 2002-11-14 Darin Adler <darin@apple.com>
1615 - fixed 3095854 -- small select boxes get no scrollbar
1617 * kwq/KWQListBox.mm: (QListBox::sizeForNumberOfLines):
1618 Always use a minimum of 4 lines.
1620 === Alexander-32 ===
1622 2002-11-14 Darin Adler <darin@apple.com>
1624 - fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing
1626 Don't force all redirects to be reloads, because the ones from JavaScript must
1627 not be. Maybe a better solution post-Alex-32 will be to pass a flag that distinguishes
1628 redirects from other location changes.
1630 * khtml/khtml_part.cpp: (KHTMLPart::slotRedirect): Don't ignore the anchor when
1631 comparing URLs to see if they should be a reload. We'll still do a reload if the URLs
1632 are actually equal, but if they differ in anchor we will just go to the anchor.
1633 This is the bug fix.
1635 * kwq/WebCoreBridge.h: Add reload parameter.
1636 * kwq/WebCoreBridge.mm: (-[WebCoreBridge openURL:reload:headers:]): Stuff the reload
1637 parameter into the URLArgs.
1639 2002-11-14 Darin Adler <darin@apple.com>
1641 - fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com
1643 * kwq/WebCoreBridge.h: Add needsLayout.
1644 * kwq/WebCoreBridge.mm: (-[WebCoreBridge needsLayout]): Return true if the render
1645 tree root says "layouted" is false. It would be more elegant to use more of this
1646 WebCore layout logic and have less of our own on the WebKit side.
1648 * WebCore.pbproj/project.pbxproj: Oh, that Project Builder.
1650 2002-11-13 Darin Adler <darin@apple.com>
1652 - fixed 3100895 -- REGRESSION: Crash (was assertion) on http://www.w3.org/Style/CSS/
1654 * khtml/rendering/render_text.h: Add an optional arena parameter to deleteSlaves.
1655 * khtml/rendering/render_text.cpp:
1656 (RenderText::detach): Pass the render arena in to deleteSlaves.
1657 (RenderText::deleteSlaves): Use the passed-in arena.
1659 2002-11-13 Darin Adler <darin@apple.com>
1661 - fixed another crash on http://www.w3.org/Style/CSS/, but still not done
1663 * khtml/rendering/render_box.cpp: (RenderBox::setStyle): Call renderArena()
1664 from RenderObject rather than going at the document directly. Safer because
1665 it works even when we don't have a node yet.
1666 * khtml/rendering/render_flow.cpp: (RenderFlow::addChild): Ditto.
1667 * khtml/rendering/render_layer.cpp:
1668 (RenderLayer::paint): Ditto.
1669 (RenderLayer::nodeAtPoint): Ditto.
1670 (RenderLayer::constructZTree): Ditto.
1671 * khtml/rendering/render_list.cpp:
1672 (RenderListItem::setStyle): Ditto.
1673 * khtml/rendering/render_text.cpp:
1674 (RenderText::deleteSlaves): Ditto.
1675 (RenderText::position): Ditto. This is the one that actually crashed.
1677 * khtml/misc/makeattrs: Fixed handling of failure case.
1678 * khtml/misc/maketags: Ditto.
1680 * WebCore.pbproj/project.pbxproj: Project Builder wanted to touch this.
1682 2002-11-13 Darin Adler <darin@apple.com>
1684 - fixed 3100895 -- REGRESSION: Assertion on http://www.w3.org/Style/CSS/
1686 A few arena-related fixes.
1688 * khtml/rendering/bidi.h: Don't define the operator new without the arena parameter.
1689 That way, we get a link failure if we use it by accident, rather than an assert at runtime.
1690 It would be even better to get a compile-time error, but I don't know how to make that happen.
1691 * khtml/rendering/render_layer.h: Ditto.
1692 * khtml/rendering/render_object.h: Ditto.
1693 * khtml/rendering/render_text.h: Ditto.
1695 * khtml/rendering/render_container.cpp:
1696 (RenderContainer::addChild): Create the RenderTable with the appropriate arena.
1697 (RenderContainer::insertPseudoChild): Create the RenderFlow objects with the appropriate arena.
1699 * khtml/rendering/render_text.cpp: (RenderText::deleteSlaves): Don't try to get the arena
1700 when there are no slaves. This can happen after the element is nil, and in that case we will
1701 do a nil-dereference.
1703 2002-11-13 Darin Adler <darin@apple.com>
1705 * kwq/KWQLineEdit.mm: (QLineEdit::sizeForCharacterWidth):
1706 Use the "0" instead of the "x" as the canonical character for width.
1707 This is slightly wider and is better for credit card numbers, for example.
1709 * WebCore.pbproj/project.pbxproj: Tweak.
1711 2002-11-13 Darin Adler <darin@apple.com>
1713 - fixed 3083982 -- Logging into AOL gives null view
1715 Turns out AOL was using a refresh header, which we were not supporting.
1717 * khtml/khtml_part.h: Declare receivedFirstData, a private member function.
1718 * khtml/khtml_part.cpp:
1719 (KHTMLPart::receivedFirstData): Separate out the part of slotData we
1720 want to share, which really seems kinda separate anyway.
1721 (KHTMLPart::slotData): More of the same.
1723 * kwq/KWQKHTMLPart.h: Declare addMetaData.
1724 * kwq/KWQKHTMLPart.mm:
1725 (KWQKHTMLPart::slotData): Call receivedFirstData instead of doing the same
1727 (KWQKHTMLPart::addMetaData): Added. Puts metadata into the job.
1729 * kwq/KWQKHTMLPartBrowserExtension.mm:
1730 (KHTMLPartBrowserExtension::createNewWindow): Fix bug where this was calling
1731 openURL: but meant to call loadURL:.
1733 * kwq/WebCoreBridge.h: Add headers to openURL method. Remove setContentType.
1734 * kwq/WebCoreBridge.mm:
1735 (-[WebCoreBridge openURL:withHeaders:]): Handle Content-Type and Refresh.
1736 This method is big enough that I should probably move the guts to KWQKHTMLPart.
1740 * kwq/KWQListImpl.mm: (KWQListImpl::~KWQListImpl): I overlooked something
1741 while doing my "bug fix" in here a while back. Change an assignment statement
1744 2002-11-13 David Hyatt <hyatt@apple.com>
1746 Fix for floats. Force relayout if collapsing margins
1747 have to adjust the position of an object.
1749 * khtml/rendering/render_flow.cpp:
1750 (RenderFlow::layoutBlockChildren):
1752 2002-11-13 David Hyatt <hyatt@apple.com>
1754 Rewrite cellpadding to not use the style system at all and
1755 to make table cells just get the padding from the table
1756 itself (overriding style).
1758 * khtml/html/html_tableimpl.cpp:
1759 (HTMLTableElementImpl::HTMLTableElementImpl):
1760 (HTMLTableElementImpl::attach):
1761 (HTMLTableElementImpl::parseAttribute):
1762 (HTMLTableCellElementImpl::init):
1763 * khtml/html/html_tableimpl.h:
1764 * khtml/rendering/bidi.cpp:
1765 (RenderFlow::layoutInlineChildren):
1766 * khtml/rendering/render_box.cpp:
1767 (RenderBox::contentWidth):
1768 (RenderBox::contentHeight):
1769 * khtml/rendering/render_flow.cpp:
1770 (RenderFlow::layoutBlockChildren):
1771 (RenderFlow::leftOffset):
1772 (RenderFlow::rightOffset):
1773 (RenderFlow::calcMinMaxWidth):
1774 * khtml/rendering/render_object.h:
1775 * khtml/rendering/render_table.cpp:
1776 (RenderTable::RenderTable):
1777 (RenderTableCell::paddingTop):
1778 (RenderTableCell::paddingBottom):
1779 (RenderTableCell::paddingLeft):
1780 (RenderTableCell::paddingRight):
1781 * khtml/rendering/render_table.h:
1783 2002-11-13 Ken Kocienda <kocienda@apple.com>
1785 Bump WebCore cache to 4 MB (was 1 MB).
1787 * khtml/misc/loader.cpp
1789 2002-11-13 Maciej Stachowiak <mjs@apple.com>
1791 - fixed 3050447 - Policy handlers have no way of telling client
1792 that the proposed navigation is a form post
1794 * khtml/khtml_part.cpp:
1795 (KHTMLPart::submitForm): Call kwq->submitForm
1796 * kwq/KWQKHTMLPart.h:
1797 * kwq/KWQKHTMLPart.mm:
1798 (KWQKHTMLPart::openURL): Adjusted for bridge API change.
1799 (KWQKHTMLPart::openURLRequest): Removed POST handling.
1800 (KWQKHTMLPart::submitForm): Added this back, because we need to
1801 know what URL navigations are caused by form submission, even if
1803 (KWQKHTMLPart::urlSelected): Adjusted for bridge API change.
1804 * kwq/WebCoreBridge.h: Add triggeringEvent: parameter to postURL:
1805 and isFormSubmission: parameter to loadURL:.
1807 2002-11-12 David Hyatt <hyatt@apple.com>
1809 Fix for 3032869, the background image for the body was being
1810 propagated up to the root properly but was not being tiled over
1813 * khtml/rendering/render_box.cpp:
1814 (RenderBox::printBackground):
1815 * khtml/rendering/render_html.cpp:
1816 (RenderHtml::printBoxDecorations):
1818 2002-11-12 David Hyatt <hyatt@apple.com>
1820 Fix the top of moveabletype.org. The maxwidth/minwidth
1821 calculation for blocks with inline content did not properly
1822 deal with margins and padding on inline elements like <a>.
1824 * khtml/rendering/render_flow.cpp:
1825 (RenderFlow::calcInlineMinMaxWidth):
1827 2002-11-12 David Hyatt <hyatt@apple.com>
1829 Fix for 2953367, padding is incorrectly inherited into table cells
1830 and also incorrectly overrides cellpadding on the table itself.
1833 * khtml/css/html4.css:
1834 * khtml/html/html_tableimpl.cpp:
1835 (HTMLTableElementImpl::parseAttribute):
1836 (HTMLTableCellElementImpl::init):
1837 * khtml/html/html_tableimpl.h:
1839 2002-11-12 David Hyatt <hyatt@apple.com>
1841 For now make text/xml files use HTML parsing/documents.
1842 This avoids the infinite loop we get into when loading
1843 text/xml. If/when we finally support XML, we can undo
1846 * khtml/khtml_part.cpp:
1849 2002-11-12 David Hyatt <hyatt@apple.com>
1851 Fix for 3086321, stylesheets not loading if titles are
1852 specified. Note that 4 of the pages on the PLT were
1853 affected by this, so I fully expect a slight performance
1854 degradation (the boost from the regression was artificial).
1856 * khtml/xml/dom_docimpl.cpp:
1857 (DocumentImpl::recalcStyleSelector):
1859 2002-11-12 Richard Williamson <rjw@apple.com>
1861 Oops, removed debugging.
1863 * khtml/rendering/font.cpp:
1866 2002-11-12 Richard Williamson <rjw@apple.com>
1868 Implemented letter-spacing and word-spacing CSS properties.
1870 * khtml/rendering/font.cpp:
1873 (Font::floatCharacterWidths):
1874 * kwq/KWQFontMetrics.h:
1875 * kwq/KWQFontMetrics.mm:
1876 (QFontMetrics::width):
1877 (QFontMetrics::floatWidth):
1878 (QFontMetrics::floatCharacterWidths):
1880 * kwq/KWQPainter.mm:
1881 (QPainter::drawText):
1882 * kwq/WebCoreTextRenderer.h:
1884 2002-11-12 David Hyatt <hyatt@apple.com>
1886 Revert floats so that they don't use layers any more.
1887 Floats have to be able to paint in between the background
1888 and foreground of inlines, so they can't have layers.
1890 * khtml/rendering/render_box.cpp:
1891 (RenderBox::setStyle):
1892 * khtml/rendering/render_flow.cpp:
1893 (RenderFlow::printObject):
1894 (RenderFlow::paintFloats):
1895 (RenderFlow::addOverHangingFloats):
1896 (RenderFlow::nodeAtPoint):
1897 * khtml/rendering/render_flow.h:
1898 * khtml/rendering/render_layer.cpp:
1899 (RenderLayer::constructZTree):
1900 * khtml/rendering/render_list.cpp:
1901 (RenderListItem::printObject):
1903 2002-11-12 Darin Adler <darin@apple.com>
1905 * kwq/KWQCursor.mm: (QCursor::QCursor): Use nil instead of [NSCursor arrowCursor].
1906 This will probably fix the performance regression.
1908 2002-11-12 Darin Adler <darin@apple.com>
1910 - fixed 3080250 -- Hands-free crash at wired.com in
1911 KHTMLPart::slotChildStarted
1913 * kwq/KWQListImpl.mm:
1914 (KWQListImpl::~KWQListImpl): Set the node of each iterator to NULL too,
1915 not just the list. This is the bug fix for the bug above.
1916 (KWQListIteratorImpl::toFirst): Check for list of NULL.
1917 (KWQListIteratorImpl::toLast): ditto.
1919 * kwq/KWQSlot.mm: Tweaks.
1921 2002-11-12 David Hyatt <hyatt@apple.com>
1923 This patch lands a rewrite of whitespace-handling in the
1924 layout engine and adds support for the CSS2 white-space
1927 It also includes a rewrite of inlines' min/max width
1928 calculations (for both flow inlines and raw text).
1930 A problem with <form> margins has been fixed (this is a
1931 regression I caused with my collapsing margin checkin).
1933 * WebCore.pbproj/project.pbxproj:
1934 * khtml/css/html4.css:
1935 * khtml/html/dtd.cpp:
1937 * khtml/html/html_baseimpl.cpp:
1938 (HTMLBodyElementImpl::attach):
1939 (HTMLFrameElementImpl::attach):
1940 (HTMLFrameSetElementImpl::attach):
1941 (HTMLHtmlElementImpl::attach):
1942 (HTMLIFrameElementImpl::attach):
1943 * khtml/html/html_formimpl.cpp:
1944 (HTMLFormElementImpl::HTMLFormElementImpl):
1945 (HTMLInputElementImpl::attach):
1946 (HTMLSelectElementImpl::attach):
1947 (HTMLTextAreaElementImpl::attach):
1948 * khtml/html/html_formimpl.h:
1949 * khtml/html/html_imageimpl.cpp:
1950 (HTMLImageElementImpl::attach):
1951 * khtml/html/html_inlineimpl.cpp:
1952 (HTMLBRElementImpl::attach):
1953 * khtml/html/html_objectimpl.cpp:
1954 (HTMLAppletElementImpl::attach):
1955 (HTMLEmbedElementImpl::attach):
1956 (HTMLObjectElementImpl::attach):
1957 * khtml/html/htmlparser.cpp:
1958 (KHTMLParser::reset):
1959 (KHTMLParser::parseToken):
1960 (KHTMLParser::insertNode):
1961 (KHTMLParser::popBlock):
1962 (KHTMLParser::popOneBlock):
1963 * khtml/html/htmlparser.h:
1964 * khtml/html/htmltokenizer.cpp:
1965 (HTMLTokenizer::addPending):
1966 (HTMLTokenizer::write):
1967 * khtml/misc/arena.cpp: Added.
1977 * khtml/misc/arena.h: Added.
1978 * khtml/rendering/bidi.cpp:
1979 (BidiIterator::detach):
1981 (BidiIterator::operator delete):
1982 (appendRunsForObject):
1984 (RenderFlow::bidiReorderLine):
1986 (RenderFlow::layoutInlineChildren):
1987 (RenderFlow::findNextLineBreak):
1988 * khtml/rendering/bidi.h:
1989 * khtml/rendering/render_arena.cpp: Added.
1990 (RenderArena::RenderArena):
1991 (RenderArena::~RenderArena):
1992 (RenderArena::allocate):
1993 (RenderArena::free):
1994 * khtml/rendering/render_arena.h: Added.
1995 * khtml/rendering/render_box.cpp:
1996 (RenderBox::setStyle):
1997 (RenderBox::~RenderBox):
1998 (RenderBox::detach):
1999 * khtml/rendering/render_box.h:
2000 * khtml/rendering/render_br.cpp:
2001 (RenderBR::RenderBR):
2002 * khtml/rendering/render_container.cpp:
2003 (RenderContainer::~RenderContainer):
2004 (RenderContainer::detach):
2005 * khtml/rendering/render_container.h:
2006 * khtml/rendering/render_flow.cpp:
2007 (RenderFlow::setStyle):
2008 (RenderFlow::layout):
2009 (RenderFlow::calcInlineMinMaxWidth):
2010 (RenderFlow::calcBlockMinMaxWidth):
2011 (RenderFlow::calcMinMaxWidth):
2012 (RenderFlow::addChild):
2013 (RenderFlow::makeChildrenNonInline):
2014 * khtml/rendering/render_flow.h:
2015 * khtml/rendering/render_html.cpp:
2016 (RenderHtml::RenderHtml):
2017 * khtml/rendering/render_layer.cpp:
2018 (RenderLayer::~RenderLayer):
2020 (RenderLayer::operator delete):
2021 (RenderLayer::detach):
2022 (RenderLayer::paint):
2023 (RenderLayer::nodeAtPoint):
2024 (RenderLayer::constructZTree):
2025 (RenderLayer::RenderLayerElement::operator delete):
2026 (RenderLayer::RenderLayerElement::detach):
2027 (RenderLayer::RenderZTreeNode::operator delete):
2028 (RenderLayer::RenderZTreeNode::detach):
2029 * khtml/rendering/render_layer.h:
2030 * khtml/rendering/render_list.cpp:
2031 (RenderListItem::setStyle):
2032 * khtml/rendering/render_object.cpp:
2034 (RenderObject::operator delete):
2035 (RenderObject::createObject):
2036 (RenderObject::renderArena):
2037 (RenderObject::detach):
2038 * khtml/rendering/render_object.h:
2039 * khtml/rendering/render_replaced.cpp:
2040 (RenderWidget::detach):
2041 * khtml/rendering/render_replaced.h:
2042 * khtml/rendering/render_root.cpp:
2043 (RenderRoot::RenderRoot):
2044 * khtml/rendering/render_table.cpp:
2045 (RenderTable::addChild):
2046 (RenderTable::calcWidth):
2047 (RenderTable::setCellWidths):
2048 (RenderTableSection::addChild):
2049 (RenderTableRow::addChild):
2050 * khtml/rendering/render_text.cpp:
2051 (TextSlave::detach):
2053 (TextSlave::operator delete):
2054 (TextSlaveArray::TextSlaveArray):
2055 (RenderText::RenderText):
2056 (RenderText::~RenderText):
2057 (RenderText::detach):
2058 (RenderText::deleteSlaves):
2059 (RenderText::trimmedMinMaxWidth):
2060 (RenderText::calcMinMaxWidth):
2061 (RenderText::position):
2062 * khtml/rendering/render_text.h:
2063 * khtml/xml/dom_docimpl.cpp:
2064 (DocumentImpl::DocumentImpl):
2065 (DocumentImpl::~DocumentImpl):
2066 (DocumentImpl::attach):
2067 (DocumentImpl::detach):
2068 * khtml/xml/dom_docimpl.h:
2069 * khtml/xml/dom_nodeimpl.cpp:
2071 (NodeImpl::isReadOnly):
2072 (NodeImpl::previousRenderer):
2073 * khtml/xml/dom_nodeimpl.h:
2074 * khtml/xml/dom_stringimpl.cpp:
2075 * khtml/xml/dom_stringimpl.h:
2076 * khtml/xml/dom_textimpl.cpp:
2077 (CharacterDataImpl::containsOnlyWhitespace):
2079 * khtml/xml/dom_textimpl.h:
2081 2002-11-12 Darin Adler <darin@apple.com>
2083 - fixed 3094819 -- Crash in -[KWQObjectTimerTarget timerFired]
2085 * kwq/KWQObject.mm: (QObject::~QObject): Call the _destroyed signal.
2086 (QObject::killTimers): Simplify the code a bit using makeObjectsPerformSelector:.
2088 2002-11-12 Darin Adler <darin@apple.com>
2090 - fixed 3079499 -- blank page at http://www.sonyericsson.com/T68i/
2092 * khtml/misc/loader.cpp:
2093 (CachedCSSStyleSheet::checkNotify): Copy the clients list before iterating
2094 over it, since clients can move around in the list or be removed.
2095 (CachedScript::checkNotify): Ditto.
2096 (CachedImage::do_notify): Ditto.
2097 (CachedImage::movieStatus): Ditto.
2099 - fixed double calls to openURL I noticed
2101 * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest):
2102 Don't call openURL here at all. That happens indirectly as a result
2103 of the load we kick off.
2105 * kwq/KWQKHTMLPart.mm: Tweaks.
2107 2002-11-12 Darin Adler <darin@apple.com>
2109 - fixed 3083043 -- Alex doesn't decode % sequences in javascript: URLs
2111 Some places here did KURL::decode_string, but others didn't.
2113 * khtml/khtml_part.cpp:
2114 (KHTMLPart::slotShowDocument): Added call to KURL::decode_string.
2115 (KHTMLPart::overURL): Ditto.
2116 (KHTMLPart::urlSelected): Ditto.
2117 (KHTMLPart::requestFrame): Ditto.
2118 (KHTMLPart::slotChildURLRequest): Ditto.
2120 2002-11-11 Darin Adler <darin@apple.com>
2122 * kwq/KWQWidget.mm: (QWidget::setCursor): Remove printf I left
2125 2002-11-11 Darin Adler <darin@apple.com>
2127 - tighten up cursor handling a bit more
2130 (QWidget::setCursor): Use setDocumentCursor: instead of our own protocol.
2131 (QWidget::cursor): Use documentCursor instead of storing our own cursor.
2133 * kwq/WebCoreFrameView.h: Remove setCursor: method.
2135 2002-11-11 Darin Adler <darin@apple.com>
2137 - fixed 3084704 -- crash in HTMLTokenizer on page with JavaScript
2138 HTMLDocument::Close inside a <script>
2140 I think it's going to work this time. The key was to hook up the
2141 KHTML submitFormAgain machinery.
2143 * khtml/khtml_part.cpp: (KHTMLPart::submitForm): Take out the APPLE_CHANGES
2144 ifdef that was disabling the submitFormAgain logic.
2145 * kwq/KWQKHTMLPart.h: Remove submitForm(), because openURLRequest() handles it fine.
2146 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::openURLRequest): Move the logic for handling
2147 POST here from submitForm() and remove submitForm().
2150 (KWQSlot::KWQSlot): Add support for the submitFormAgain slot.
2151 (KWQSlot::call): Ditto.
2153 2002-11-11 Darin Adler <darin@apple.com>
2155 - fixed 3092421 -- javascript: URL that opens window crashes Alex if typed into empty window
2157 * kwq/KWQKHTMLPart.h:
2158 * kwq/KWQKHTMLPart.mm:
2159 (KWQKHTMLPart::KWQKHTMLPart): Set _ownsView to false.
2160 (KWQKHTMLPart::~KWQKHTMLPart): Delete the view if we own it. Also release
2161 _currentEvent to fix a leak.
2162 (KWQKHTMLPart::setView): Delete the old view if we own it. Also, set the
2164 (KWQKHTMLPart::createDummyDocument): Create a dummy view too.
2166 * kwq/KWQDummyView.h: Added.
2167 * kwq/KWQDummyView.m: Added.
2168 * WebCore.pbproj/project.pbxproj: Added KWQDummyView.
2170 * kwq/WebCoreBridge.h: Remove bridgeOwnsKHTMLView and currentEvent.
2171 * kwq/WebCoreBridge.mm:
2172 (-[WebCoreBridge createKHTMLViewWithNSView:marginWidth:marginHeight:]):
2173 Pass true to setView instead of setting bridgeOwnsKHTMLView.
2174 (-[WebCoreBridge removeFromFrame]): Just call setView on the part. It
2175 knows how to handle ownership now.
2176 (-[WebCoreBridge installInFrame:]): Call setOwnsView instead of setting
2177 bridgeOwnsKHTMLView.
2179 2002-11-11 Trey Matteson <trey@apple.com>
2181 * khtml/khtml_part.cpp:
2182 (KHTMLPart::requestFrameName): Call through bridge to get generated frame name.
2183 * kwq/KWQKHTMLPart.h:
2184 * kwq/KWQKHTMLPart.mm:
2185 (KWQKHTMLPart::generateFrameName): New call that just forwards through the bridge.
2186 * kwq/WebCoreBridge.h:
2188 2002-11-11 Darin Adler <darin@apple.com>
2190 - fixed 3097253 -- text tagged <small> inside <h1> is too small
2192 * khtml/css/html4.css: Change BIG to use "font-size: larger" rather
2193 than "font-size: large" and SMALL to use "font-size: smaller" rather
2194 than "font-size: small".
2196 2002-11-11 Darin Adler <darin@apple.com>
2198 * kwq/WebCoreBridge.h: Remove unused modifierTrackingEnabled method.
2200 2002-11-08 Maciej Stachowiak <mjs@apple.com>
2202 - fixed 3096451 - REGRESSION: clicking on link to open window only
2203 works when pop-up suppression is off
2205 * khtml/ecma/kjs_binding.cpp:
2206 (ScriptInterpreter::ScriptInterpreter): Initialize m_timerCallback
2209 b2002-11-08 Darin Adler <darin@apple.com>
2211 * kwq/KWQComboBox.mm: Bump fudge factor up one pixel. You could see
2212 it was wrong with strings like "0".
2214 2002-11-08 Darin Adler <darin@apple.com>
2216 - fixed 3090452 -- REGRESSION: orbitz Box extends way over margins
2218 * kwq/KWQComboBox.h: Added _width and _widthGood.
2219 * kwq/KWQComboBox.mm:
2220 (QComboBox::QComboBox): Set _widthGood to false.
2221 (QComboBox::insertItem): Set _widthGood to false.
2222 (QComboBox::sizeHint): Compute the width by measuring the text ourselves.
2223 Turns out the cell isn't helpful for that.
2224 (QComboBox::clear): Set _widthGood to false.
2226 2002-11-08 Richard Williamson <rjw@apple.com>
2228 Cleanup of fix to 3083281. Never call stopAnimating from
2229 QPixmap's destructor. With the fix it wouldn't have been
2233 (QPixmap::~QPixmap):
2235 2002-11-08 Darin Adler <darin@apple.com>
2237 * kwq/WebCoreBridge.mm: (attributedString): Remove some dead code.
2239 2002-11-07 Darin Adler <darin@apple.com>
2241 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::slotData):
2242 Add an assert in the hopes of catching bug 3084704 a little earlier.
2244 2002-11-07 Richard Williamson <rjw@apple.com>
2246 Don't stop animating unless we're the last referee. (3083281)
2249 (QPixmap::~QPixmap):
2251 === Alexander-31 ===
2253 2002-11-06 Richard Williamson <rjw@apple.com>
2255 Use our notion of unicode whitespace from lookup tables
2256 and isspace for latin1. This is more correct than CF.
2257 Fixed issues Dave ran into with whitespace calculations.
2262 2002-11-05 Darin Adler <darin@apple.com>
2264 - fixed 3092722 -- assertion failed
2266 * kwq/KWQResourceLoader.mm: (-[KWQResourceLoader reportError]):
2267 Removed the assertion. It wasn't needed.
2269 2002-11-05 Darin Adler <darin@apple.com>
2271 - re-fixed 3070484 -- icon rollovers are very slow on Mac OS X website
2273 Had to roll back some of the files I changed yesterday. I had missed the
2274 one line of useful code among much stuff we don't need.
2276 * khtml/khtml_part.cpp:
2278 (KHTMLPart::~KHTMLPart):
2279 (KHTMLPart::slotLoaderRequestStarted):
2280 (KHTMLPart::slotLoaderRequestDone):
2284 * kwq/KWQSignalStubs.mm:
2285 (Loader::requestDone):
2286 (Loader::requestFailed):
2287 (Loader::requestStarted):
2292 Just roll back all the changes from my 3091714 check-in below, except
2293 for the bug fix itself in loader.cpp and KWQResourceLoader.mm.
2295 2002-11-05 Maciej Stachowiak <mjs@apple.com>
2297 - fixed 3027404 - pop-up ads not always suppressed
2299 * khtml/ecma/kjs_binding.cpp:
2300 (ScriptInterpreter::isWindowOpenAllowed): Don't allow opening if
2301 we are in a timer callback - for reasons unexplained this will
2302 always show up as an inline script.
2303 * khtml/ecma/kjs_binding.h:
2304 * khtml/ecma/kjs_window.cpp:
2305 (ScheduledAction::execute): Note that we're in a timer callback.
2307 2002-11-04 Richard Williamson <rjw@apple.com>
2309 Changes to support cursive letter forms.
2312 * kwq/WebCoreUnicode.h:
2314 2002-11-04 Darin Adler <darin@apple.com>
2316 - fixed 3091714 -- reproducible assert cachedObject->response
2317 in KWQCheckCacheObjectStatus
2319 * khtml/misc/loader.cpp: (Loader::slotFinished):
2320 For APPLE_CHANGES, don't finish the load if it's an error.
2322 * kwq/KWQResourceLoader.mm:
2323 (-[KWQResourceLoader finishJobAndHandle]): Shared code for the
2324 three following methods.
2325 (-[KWQResourceLoader cancel]): Use setError(1) again instead of
2326 just keeping the load around forever.
2327 (-[KWQResourceLoader reportError]): Ditto.
2328 (-[KWQResourceLoader finish]): Use finishJobAndHandle to share
2329 code with the two above.
2331 * khtml/khtml_part.cpp:
2332 (KHTMLPart::init): Put the slotLoaderRequestStarted and
2333 slotLoaderRequestDone connect lines inside ifdefs.
2334 (KHTMLPart::~KHTMLPart): Same for disconnect.
2336 * kwq/KWQSignal.h: Remove code for the DocLoader signals.
2337 * kwq/KWQSignal.mm: (KWQSignal::call): Ditto.
2338 * kwq/KWQSignalStubs.mm:
2339 (Loader::requestDone): Ditto.
2340 (Loader::requestFailed): Ditto.
2341 (Loader::requestStarted): Ditto.
2342 * kwq/KWQSlot.h: Ditto.
2344 (KWQSlot::KWQSlot): Ditto.
2345 (KWQSlot::call): Ditto.
2347 2002-11-04 Maciej Stachowiak <mjs@apple.com>
2349 Changes to send NSEvents all the way through WebCore and then pass
2350 them back out to WebKit, so that click policy can have a
2351 WebResourceRequest added.
2353 * kwq/KWQKHTMLPart.h:
2354 * kwq/KWQKHTMLPart.mm:
2355 (KWQKHTMLPart::KWQKHTMLPart):
2356 (KWQKHTMLPart::openURL):
2357 (KWQKHTMLPart::openURLRequest):
2358 (KWQKHTMLPart::urlSelected):
2359 (KWQKHTMLPart::submitForm):
2360 (KWQKHTMLPart::createDummyDocument):
2361 (KWQKHTMLPart::setCurrentEvent):
2362 * kwq/WebCoreBridge.h:
2363 * kwq/WebCoreBridge.mm:
2364 (-[WebCoreBridge mouseUp:]):
2366 2002-11-03 Darin Adler <darin@apple.com>
2368 - fixed 3091300 -- "prelighting" on local page is still slow, despite recent bug fix
2370 Turns out all updating would be slow if any resources on the page failed to load.
2372 * kwq/WebCoreResourceLoader.h: Add reportError, distinct from
2374 * kwq/KWQResourceLoader.mm: (-[KWQResourceLoader reportError]):
2375 Set the error boolean on the job and then call through to [finish].
2377 2002-11-03 Darin Adler <darin@apple.com>
2379 - fixed 3091275 -- can't type into Answer field in RealOne Player order form
2381 * khtml/rendering/render_form.cpp:
2382 (RenderLineEdit::updateFromElement): Treat 0 as max (1024) as other browsers do.
2383 (RenderFileButton::updateFromElement): Ditto, although this is in !APPLE_CHANGES code
2384 that we don't use in WebCore.
2386 2002-11-01 Darin Adler <darin@apple.com>
2388 - applied the same "subclass responsibility" pattern here as in
2389 some of the other WebCore classes
2391 * kwq/WebCoreImageRendererFactory.h: Move the subclass responsibility into a protocol.
2392 * kwq/WebCoreImageRendererFactory.m: Remove now-unneeded stubs.
2394 2002-11-01 Richard Williamson <rjw@apple.com>
2396 Removed old implementation.
2401 Renamed JoiningCenter -> JoiningCausing.
2403 * kwq/WebCoreUnicode.h:
2405 2002-11-01 Darin Adler <darin@apple.com>
2407 - fixed 3062598 -- meta refresh of 0.1s fails
2409 KHTML was using an integer for the delay.
2411 * khtml/khtml_part.h: Make scheduleRedirection take a double.
2412 * khtml/khtmlpart_p.h: Make m_delayRedirect be a double.
2413 * khtml/khtml_part.cpp:
2414 (KHTMLPart::slotData): Use a double when parsing meta refresh.
2415 (KHTMLPart::checkCompleted): Cast to int when passing to timer start.
2416 (KHTMLPart::scheduleRedirection): Cast to int when passing to timer
2417 start; also check for absurd values and do nothing.
2418 (KHTMLPart::slotParentCompleted): Cast to int when passing to timer start.
2420 * khtml/xml/dom_docimpl.cpp: (DocumentImpl::processHttpEquiv):
2421 Use a double when parsing meta refresh.
2423 * kwq/KWQKDebug.h: Add overloads for unsigned int and double to keep us
2424 compiling now that we use a double in one place.
2426 2002-11-01 Darin Adler <darin@apple.com>
2428 - fixed 3090249 -- random crash on page load
2429 - fixed 3090286 -- assert _job in KWQResourceLoader cancel
2431 * kwq/KWQResourceLoader.mm: (-[KWQResourceLoader cancel]):
2432 This function needs to handle the case where the load is already cancelled.
2433 I think this also caused Avie's crash.
2435 2002-10-31 Darin Adler <darin@apple.com>
2437 - fixed huge leak when doing page load test
2439 * khtml/ecma/kjs_binding.h:
2440 * khtml/ecma/kjs_binding.cpp: Remove ScriptInterpreter::mark().
2441 We don't want to mark the elements of m_domObjects, because we don't want
2442 to keep them around the entire lifetime of the interpreter. This is fine
2443 because we already have forgetDOMObject(), which takes care of when they
2446 * khtml/ecma/kjs_dom.cpp:
2447 * khtml/ecma/kjs_dom.h:
2448 * khtml/ecma/kjs_html.cpp:
2449 * khtml/ecma/kjs_html.h:
2450 Changed lots of parameters to pass by const reference for a bit of a code
2451 size and performance gain.
2453 2002-10-31 Richard Williamson <rjw@apple.com>
2455 Turned on use of lookup tables.
2460 (QChar::mirroredChar):
2462 2002-10-31 Maciej Stachowiak <mjs@apple.com>
2464 - fixed 3075803 - yahoo customize layout - delete, ordering of items doesn't work
2466 * khtml/html/html_formimpl.h:
2467 * khtml/html/html_formimpl.cpp:
2468 (HTMLSelectElementImpl::recalcStyle): New method to insure the
2469 select element updates if the contents of the option subelements
2472 === Alexander-30 ===
2474 2002-10-30 Maciej Stachowiak <mjs@apple.com>
2476 - fixed 3049853 - Javascript: setInterval incorrectly acts as single shot
2479 (QObject::startTimer): Set a recurring timer instead of
2480 single-shot, to match QObject semantics.
2482 2002-10-30 Richard Williamson <rjw@apple.com>
2484 More work on bidi and contextual forms.
2485 Table lookup code is up in WebKit. Function
2486 pointers are used to isolate WebCore from private
2487 implementation in WebKit. Needs to be fast, so
2488 the usual ObjC abstraction won't work.
2491 * WebCore.pbproj/project.pbxproj:
2495 * kwq/WebCoreUnicode.cpp: Added.
2496 * kwq/WebCoreUnicode.h: Added.
2498 2002-10-30 Darin Adler <darin@apple.com>
2500 - fixed crash when you open an empty window and just hit tab, tab, tab
2502 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::nextKeyViewInFrame): Check for nil.
2504 2002-10-30 Darin Adler <darin@apple.com>
2506 - fixed 3083982 -- Logging into AOL gives null view, crash
2508 I fixed the crash part. Not the "gives null view" part.
2509 The key was to disentangle the references and lifetimes of the transfer job class,
2510 and the resource loader object that KWQ uses to connect it with WebKit.
2512 * kwq/KWQKJobClasses.h: Change the job to keep a loader reference, not a
2513 handle reference. The job needs to inform the loader when it's being deallocated.
2514 * kwq/KWQKJobClasses.mm: Use jobWillBeDeallocated instead of cancel when the
2517 * kwq/KWQLoader.mm: (KWQServeRequest): Use KWQResourceLoader, now with a home in
2520 * kwq/KWQResourceLoader.h: Added.
2521 * kwq/KWQResourceLoader.mm: Added.
2522 * WebCore.pbproj/project.pbxproj: Added KWQResourceLoader files.
2524 2002-10-30 Darin Adler <darin@apple.com>
2526 - fixed 3086564 -- REGRESSION: meta-refresh to the same page doesn't refresh
2528 The key is to get args.reload passed through to the bridge.
2530 * kwq/WebCoreBridge.h: Add reload parameter to loadURL:.
2532 * kwq/KWQKHTMLPart.mm:
2533 (KWQKHTMLPart::openURL): Pass NO for reload.
2534 (KWQKHTMLPart::openURLRequest): Pass args.reload for reload.
2535 (KWQKHTMLPart::urlSelected): Pass args.reload for reload.
2536 (KWQKHTMLPart::submitForm): Pass args.reload for reload.
2538 - fixed a memory problem with the use of NSBrowser in KWQListBox
2539 - fixed 2863040 -- multiple default items in select list not selected
2541 Switched to use NSTableView instead of NSBrowser. This should also create
2542 a measurable speedup due to other changes to this class.
2544 * kwq/KWQListBox.h: Remove firstItem(), the insertItem() that takes a QListBoxItem
2545 parameter, and deleteItems(). Add _items, _width, and _widthGood. Removed _head.
2546 Removed the QListBoxItem and QListBoxText classes.
2547 * kwq/KWQListBox.mm:
2548 (QListBox::QListBox): Create a KWQListBoxScrollView and put an NSTableView
2549 inside it. Also create an NSMutableArray to hold the items.
2550 (QListBox::~QListBox): Disconnect the table view from the delegate before
2551 releasing it. Also release the items array.
2552 (QListBox::count): Return the array count.
2553 (QListBox::clear): Do a reloadData here instead of loadColumnZero.
2554 (QListBox::setSelectionMode): Update for table view.
2555 (QListBox::insertItem): Update for table view.
2556 (QListBox::insertGroupLabel): Just calls insertItem for now.
2557 (QListBox::endBatchInsert): Update for table view.
2558 (QListBox::setSelected): Update for table view, including support for multiple
2560 (QListBox::isSelected): Update for table view.
2561 (QListBox::sizeForNumberOfLines): Use the table view cell for width, and
2562 cache it so we don't have to measure all the strings over and over again.
2563 (-[KWQListBoxScrollView setFrameSize:]): Resize the table view column whenever
2564 the entire scroll view is resized.
2565 (-[KWQListBoxTableViewDelegate initWithListBox:]): Store box pointer and
2566 pointer to items array.
2567 (-[KWQListBoxTableViewDelegate numberOfRowsInTableView:]): Return count.
2568 (-[KWQListBoxTableViewDelegate tableView:objectValueForTableColumn:row:]):
2569 Get the data from the items array.
2570 (-[KWQListBoxTableViewDelegate tableViewSelectionDidChange:]): Call both the
2571 selection-changed signal and the clicked signal.
2573 * khtml/rendering/render_form.cpp: (RenderSelect::updateFromElement):
2574 Get rid of the one place here that gets at a list box item by calling a KWQ
2575 function insertGroupLabel instead of making a QListBoxText. Also call
2576 beginBatchInsert() before clear() for a slight additional speed boost.
2578 - fixed 3067572 -- javascript: URLs typed into page address field or
2579 bookmarks don't work in empty window
2581 We needed a document for DOM, so we make a dummy one. This works for an empty
2582 window, and also for a window with non-HTML content.
2584 * kwq/KWQKHTMLPart.h: Added createDummyDocument().
2585 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::createDummyDocument): Create an empty
2586 DOM document if there isn't one already.
2588 * kwq/WebCoreBridge.mm:
2589 (-[WebCoreBridge stringByEvaluatingJavaScriptFromString:]): Call the new
2590 createDummyDocument() instead of checking and doing nothing if there is no
2591 document present when this is called.
2595 * kwq/WebCoreBridge.mm: (-[WebCoreBridge DOMDocument]): Removed a stray printf.
2597 * kwq/KWQTextArea.mm: Tweaked code a little.
2599 2002-10-28 Darin Adler <darin@apple.com>
2601 * khtml/khtml_part.cpp: (KHTMLPart::checkCompleted):
2602 Update so it handles nil for the view.
2604 2002-10-28 Darin Adler <darin@apple.com>
2606 - fixed 3070484 -- icon rollovers are very slow on Mac OS X website
2608 The problem was simply that the part didn't know it was complete.
2609 To let it know, I hooked up some loader signals, and now it works.
2611 * khtml/khtml_part.cpp:
2612 (KHTMLPart::init): Create the KWQKHTMLPart a little earlier so we have
2613 a chance to initialize the cache before it's used.
2614 (KHTMLPart::slotLoaderRequestStarted): Take this out of ifdefs.
2615 (KHTMLPart::slotLoaderRequestDone): Ditto.
2617 * khtml/misc/loader.h: Add a KWQLoader pointer to the loader.
2618 * khtml/misc/loader.cpp:
2619 (Loader::Loader): Create a KWQLoader;
2620 (Loader::~Loader): Destroy the KWQLoader.
2621 (Loader::load): Take out ifdefs around code that emits requestStarted.
2623 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::KWQKHTMLPart): Call Cache::init().
2625 * kwq/KWQLoader.h: Add a class KWQLoader, with three signals in it.
2626 * kwq/KWQLoader.mm: (KWQLoader::KWQLoader): Initialize the three signals.
2628 * kwq/KWQSignalStubs.mm:
2629 (Loader::requestDone): Emit the signal using KWQLoader.
2630 (Loader::requestFailed): Ditto.
2631 (Loader::requestStarted): Ditto.
2633 * kwq/KWQSlot.h: Add an overload for slots with loader and cached object
2634 parameters so we can handle the new slots.
2636 (KWQSlot::KWQSlot): Added slotLoaderRequestDone and slotLoaderRequestStarted.
2637 (KWQSlot::call): Added the new overload to handle those two signals.
2639 * kwq/KWQSignal.h: Add an overload for signals with loader and cached object
2640 parameters so we can handle the new signals.
2641 * kwq/KWQSignal.mm: (KWQSignal::call): Ditto.
2643 * kwq/KWQObject.mm: (QObject::connect): Remove the special casing that
2644 prevents complaints about slotLoaderRequestDone and slotLoaderRequestStarted,
2645 since we support those now.
2647 2002-10-28 Darin Adler <darin@apple.com>
2649 - fixed storage leak of items in QListBox
2651 * kwq/KWQListBox.h: Added private deleteItems method.
2652 * kwq/KWQListBox.mm:
2653 (QListBox::~QListBox): Call deleteItems().
2654 (QListBox::deleteItems): Move the code to delete all the items
2655 here from clear(), since clear() is not called on destruction.
2656 (QListBox::clear): Call deleteItems().
2658 2002-10-28 Chris Blumenberg <cblu@apple.com>
2660 Lowercase the text encoding name.
2662 * kwq/KWQCharsets.mm:
2663 (KWQCFStringEncodingFromIANACharsetName):
2665 2002-10-28 Richard Williamson <rjw@apple.com>
2667 Fixed 3086188 - REGRESSION: Justified text is broken
2669 Bogus special case for DirW(hite)S(pace). This
2670 should be correctly detected by CF, but is not.
2671 Revert to explicit checking for ' ' character. This'll
2672 work most of the time. All the more reason to do
2673 our own unicode attribute database.
2678 2002-10-28 Chris Blumenberg <cblu@apple.com>
2680 Fixed: 3056726 - View Source window always displays the source in current system encoding
2681 Fixed: 3019352 - Text encoding is not handled when viewing plain text
2683 * kwq/WebCoreBridge.h:
2684 * kwq/WebCoreBridge.mm:
2685 (+[WebCoreBridge stringWithData:textEncoding:]): added, creates a string with data using the WebCore's decoding logic.
2686 (+[WebCoreBridge stringWithData:textEncodingName:]): added, calls stringWithData:textEncoding: after getting the encoding for a text encoding name
2688 2002-10-28 Don Melton <gramps@apple.com>
2690 * khtml/html/htmlparser.cpp:
2691 (KHTMLParser::insertNode):
2692 * khtml/html/htmltokenizer.cpp:
2693 (HTMLTokenizer::write):
2695 Backed our Dave's whitespace hack because it was adding newlines, i.e.
2696 vertical margins, to web pages all over.
2698 2002-10-28 Darin Adler <darin@apple.com>
2700 - fixed 3015800 -- bad URL error - unescaped # in URL
2702 Actually this has to be fixed both here and in NSURLExtras.
2704 * kwq/KWQKURL.mm: Set the "BadChar" flag for "#" so we escape any
2705 "#" characters we see after the first one.
2707 2002-10-27 Darin Adler <darin@apple.com>
2709 - fixed 3058845 -- <input type=file> uses hard-coded width of 200
2712 * khtml/rendering/render_form.cpp:
2713 (RenderLineEdit::calcMinMaxWidth): Use a default of 20 "x-widths" wide, to
2714 match Mozilla, rather than the 17 that is in KHTML by default.
2715 (RenderFileButton::calcMinMaxWidth): Pass in a character width here, using
2716 the same 20-character rule as above.
2717 * kwq/KWQFileButton.h: Replace sizeHint() with sizeForCharacterWidth(int).
2718 * kwq/KWQFileButton.mm:
2719 (KWQFileButton::sizeForCharacterWidth): Pass character count to the WebCoreFileButton.
2720 (KWQFileButton::baselinePosition): Fix baseline computation. It was computing some huge
2721 negative number before and was obviously broken.
2722 * kwq/KWQLineEdit.mm: (QLineEdit::sizeForCharacterWidth): Add an assertion.
2723 * kwq/WebCoreViewFactory.h: Replace bestVisualFrameSize with
2724 bestVisualFrameSizeForCharacterCount:.
2726 2002-10-27 Don Melton <gramps@apple.com>
2728 * khtml/ecma/kjs_navigator.cpp:
2729 (Navigator::getValueProperty):
2731 Tweaked AppName, Product, and Vendor logic.
2733 2002-10-27 Darin Adler <darin@apple.com>
2735 * kwq/KWQLoader.mm: (KWQServeRequest): Add a missing "delete job" for one
2736 particular failure case.
2738 2002-10-26 Darin Adler <darin@apple.com>
2740 - fixed a bug in the WebCore cache that caused it to not cache very much after
2741 a while, and also caused a crash I saw twice on my machine
2743 Adjust total size of items in the LRU list, when the size of one of the
2744 items that's in the list is changed.
2746 * khtml/misc/loader.h: Added a size parameter (default 0) to the CachedObject
2747 constructor. Added a protected CachedObject::setSize() and made m_size private.
2748 Added Cache::adjustSize() and Cache::checkLRUAndUncacheableListIntegrity().
2749 * khtml/misc/loader.cpp:
2750 (CachedObject::setSize): Added. This is now the only legal way to change
2751 the size of a cached object, and it calls Cache::adjustSize.
2752 (CachedCSSStyleSheet::CachedCSSStyleSheet): Pass the length into the base
2753 class's constructor instead of setting m_size.
2754 (CachedCSSStyleSheet::data): Call setSize() instead of setting m_size.
2755 Also get the size back with size() rather than m_size.
2756 (CachedScript::CachedScript): Pass the length into the base class's
2757 constructor instead of setting m_size.
2758 (CachedScript::data): Call setSize() instead of setting m_size. Also get
2759 the size back with size() rather than m_size.
2760 (CachedImage::CachedImage): Don't set m_size to 0, since the base class's
2761 constructor does that already.
2762 (CachedImage::clear): Use setSize() to set the size to 0 instead of setting
2764 (CachedImage::data): Use setSize() instead of setting m_size directly.
2765 (Cache::checkLRUAndUncacheableListIntegrity): Useful debugging function.
2766 Left in but ifdef'd out.
2767 (Cache::adjustSize): Added. Changes the "total LRU list size" by the
2768 passed-in delta, but only if the passed-in object is in the LRU list.
2770 * kwq/KWQLineEdit.mm:
2771 * kwq/KWQTextField.h:
2772 * kwq/KWQTextField.mm:
2773 Renamed the Objective C class KWQNSTextField to KWQTextField.
2775 2002-10-26 Darin Adler <darin@apple.com>
2777 - removed forwarding headers that are not actually needed
2779 * ForwardingHeaders/kcmdlineargs.h: Removed.
2780 * ForwardingHeaders/kinstance.h: Removed.
2781 * ForwardingHeaders/kio/kprinter.h: Removed.
2782 * ForwardingHeaders/kio/ktrader.h: Removed.
2783 * ForwardingHeaders/kio/scheduler.h: Removed.
2784 * ForwardingHeaders/kparts/factory.h: Removed.
2785 * ForwardingHeaders/kparts/historyprovider.h: Removed.
2786 * ForwardingHeaders/kstddirs.h: Removed.
2787 * ForwardingHeaders/qarray.h: Removed.
2788 * ForwardingHeaders/qbrush.h: Removed.
2789 * ForwardingHeaders/qbutton.h: Removed.
2790 * ForwardingHeaders/qcollection.h: Removed.
2791 * ForwardingHeaders/qcombobox.h: Removed.
2792 * ForwardingHeaders/qframe.h: Removed.
2793 * ForwardingHeaders/qglobal.h: Removed.
2794 * ForwardingHeaders/qiodevice.h: Removed.
2795 * ForwardingHeaders/qlineedit.h: Removed.
2796 * ForwardingHeaders/qnamespace.h: Removed.
2797 * ForwardingHeaders/qpen.h: Removed.
2798 * ForwardingHeaders/qprinter.h: Removed.
2799 * ForwardingHeaders/qsize.h: Removed.
2800 * ForwardingHeaders/qstack.h: Removed.
2802 2002-10-26 Darin Adler <darin@apple.com>
2804 - fixed a couple of files accidentally checked in with KWQQ names
2806 * ForwardingHeaders/qasyncio.h: Change names.
2807 * ForwardingHeaders/qstylesheet.h: Ditto.
2808 * WebCore.pbproj/project.pbxproj: Ditto.
2809 * kwq/KWQMovie.h: Ditto.
2811 2002-10-26 Darin Adler <darin@apple.com>
2813 - changed to use #if APPLE_CHANGES and #if !APPLE_CHANGES consistently
2815 We no longer do #ifdef APPLE_CHANGES or #ifndef APPLE_CHANGES.
2819 2002-10-26 Darin Adler <darin@apple.com>
2821 - changed naming scheme in KWQ for files like qstring.h
2823 Now use names like KWQString.h and a forwarding header called qstring.h.
2827 2002-10-26 Darin Adler <darin@apple.com>
2829 - fixed 3068404 -- eliminate all user-visible messages from WebCore
2831 * khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): Use runJavaScriptPrompt
2832 function instead of the more generic QInputDialog.
2834 * khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::altText): Get
2835 submit alt text for input element from the view factory, rather than using
2836 i18n, since we don't support that.
2837 * khtml/html/htmlparser.cpp: (KHTMLParser::handleIsindex): Ditto, for the
2838 intro that says "This is a searchable index".
2839 * khtml/rendering/render_form.cpp:
2840 (RenderSubmitButton::defaultLabel): Ditto, for "Submit".
2841 (RenderResetButton::defaultLabel): Ditto, for "Reset".
2842 (RenderFileButton::slotClicked): Ifdef'd out this unused code that had i18n text in it.
2844 * khtml/xml/xml_tokenizer.cpp:
2845 (XMLHandler::errorString): Put in an ifdef and a FIXME to avoid i18n.
2846 (XMLHandler::fatalError): Ditto.
2847 (XMLTokenizer::finish): Ditto.
2849 * khtml/misc/decoder.cpp: (Decoder::decode): Ifdef'd the check for the first
2850 language being "ja", since that's not how we're going to trigger Japanese
2853 * khtml/rendering/render_applet.cpp: (RenderEmptyApplet::RenderEmptyApplet):
2854 Turned off the code that does the empty applet label. I don't think it worked,
2855 and it used i18n. We'll have to tackle this eventually.
2857 * kwq/KWQKHTMLPartImpl.h: Added runJavaScriptPrompt.
2858 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::runJavaScriptPrompt): Moved the code
2859 here that used to be in KWQInputDialog.
2861 * kwq/kdecore/klocale.h: Remove i18n() and KLocale::languageList(), added the functions
2862 that are listed below.
2863 * kwq/KWQKLocale.mm:
2864 (inputElementAltText): Added specific function for getting one of the very few
2865 translated strings that we need in WebCore.
2866 (resetButtonDefaultLabel): Ditto.
2867 (searchableIndexIntroduction): Ditto.
2868 (submitButtonDefaultLabel): Ditto.
2869 (KLocale::language): Use the view factory to ask for the language code, since there's no
2870 public API to get it that WebCore can use.
2872 * kwq/WebCoreViewFactory.h: Add new API for above.
2874 * ForwardingHeaders/qinputdialog.h: Added empty file.
2876 * kwq/qt/qinputdialog.h: Removed.
2877 * kwq/KWQInputDialog.mm: Removed.
2878 * WebCore.pbproj/project.pbxproj: Removed QInputDialog files.
2880 2002-10-25 Darin Adler <darin@apple.com>
2882 Remove some user-visible strings. We can't have any strings that need
2883 localization in WebCore, given our translation strategy.
2885 * khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::encoding):
2886 Put APPLE_CHANGES around some i18n dialog code.
2887 * khtml/khtml_part.cpp: (KHTMLPart::submitForm): Ditto.
2888 * khtml/rendering/render_frames.cpp:
2889 (RenderPartObject::slotPartLoadingErrorNotify): Ditto.
2890 * khtml/ecma/kjs_window.cpp:
2891 (Window::get): Ditto.
2892 (Window::scheduleClose): Ditto.
2893 (WindowFunc::tryCall): Put APPLE_CHANGES in to use JavaScript-specific methods
2894 in the part of calling the generic ones from KMessageBox.
2896 * ForwardingHeaders/kmessagebox.h: Added (empty file).
2898 * kwq/KWQKHTMLPartImpl.h: Added new runJavaScript functions.
2899 * kwq/KWQKHTMLPartImpl.mm:
2900 (KWQKHTMLPartImpl::runJavaScriptAlert): Added.
2901 (KWQKHTMLPartImpl::runJavaScriptConfirm): Added.
2903 * kwq/WebCoreViewFactory.h: Added runJavaScriptAlertPanelWithMessage and
2904 runJavaScriptConfirmPanelWithMessage.
2906 * kwq/kdeui/kmessagebox.h: Removed.
2907 * kwq/KWQKMessageBox.mm: Removed.
2908 * WebCore.pbproj/project.pbxproj: Removed the KMessageBox files.
2910 2002-10-25 Richard Williamson <rjw@apple.com>
2912 Removed debug logging.
2914 * khtml/rendering/font.cpp:
2917 2002-10-25 Richard Williamson <rjw@apple.com>
2919 Implemented support for bidi text layout. WebCore
2920 temporarily depends on SPI to get unicode character
2921 attribute from CF. This will change shortly.
2923 * khtml/rendering/font.cpp:
2927 * kwq/KWQPainter.mm:
2928 (QPainter::drawText):
2929 * kwq/WebCoreTextRenderer.h:
2930 * kwq/qt/qpainter.h:
2932 2002-10-25 Chris Blumenberg <cblu@apple.com>
2934 Cleaned up the frame searching shenanigans. Things are much cleaner and clearer now.
2936 * kwq/KWQKHTMLPartBrowserExtension.mm:
2937 (KHTMLPartBrowserExtension::createNewWindow): call findFrameNamed
2938 * kwq/KWQKHTMLPartImpl.mm:
2939 (KWQKHTMLPartImpl::bridgeForFrameName): call findOrCreateFramedNamed
2940 * kwq/WebCoreBridge.h:
2942 2002-10-25 Maciej Stachowiak <mjs@apple.com>
2944 - fixed 3065638 - "undefined" output to screen on empty document.write()
2946 * khtml/ecma/kjs_html.cpp:
2947 (KJS::HTMLDocFunction::tryCall): Don;t assume there is at least
2950 2002-10-25 Maciej Stachowiak <mjs@apple.com>
2952 - fixed 3048031 - innerHTML is incorrectly null
2955 (QString::isNull): Check for NULL by comparing to
2956 shared_null_handle instead of checking for 0 length, so
2957 garden-variety empty strings don't show as NULL.
2958 (QString::QString): Make sure that string created with a NULL char
2959 * uses the shared null handle, so it's properly NULL.
2961 2002-10-24 Richard Williamson <rjw@apple.com>
2963 Updated to reflect new calling parameter semantic of floatCharacterWidths(),
2964 which now returns the entire array of widths up the last character requested.
2966 * khtml/rendering/render_text.cpp:
2967 (TextSlave::checkSelectionPoint):
2969 2002-10-24 David Hyatt <hyatt@apple.com>
2971 <pre>, <xmp> and <plaintext> should all have a top margin of 1em.
2972 Fixes a bunch of sites that use <pre>.
2974 * khtml/css/html4.css:
2976 2002-10-24 Chris Blumenberg <cblu@apple.com>
2978 Removed didAddSubview calls because that can easily be done in WebKit. Duh!
2980 * khtml/rendering/render_frames.cpp:
2981 (RenderPart::setWidget):
2982 * kwq/KWQKHTMLPartImpl.h:
2983 * kwq/KWQKHTMLPartImpl.mm:
2984 * kwq/KWQKJavaAppletWidget.mm:
2985 (KJavaAppletWidget::showApplet):
2986 * kwq/WebCoreBridge.h:
2988 2002-10-24 Darin Adler <darin@apple.com>
2990 A step in the direction of making KWQ headers much nicer.
2991 Move all empty headers out of kwq, and into ForwardingHeaders.
2993 * ForwardingHeaders/kcmdlineargs.h: Added.
2994 * ForwardingHeaders/kdatastream.h: Added.
2995 * ForwardingHeaders/khtml_iface.h: Added.
2996 * ForwardingHeaders/khtml_printsettings.h: Added.
2997 * ForwardingHeaders/khtml_run.h: Added.
2998 * ForwardingHeaders/kio/kprinter.h: Added.
2999 * ForwardingHeaders/kio/kprotocolmanager.h:
3000 * ForwardingHeaders/kio/ktrader.h: Added.
3001 * ForwardingHeaders/kio/scheduler.h: Added.
3002 * ForwardingHeaders/kmultipledrag.h: Added.
3003 * ForwardingHeaders/kprinter.h: Added.
3004 * ForwardingHeaders/kprotocolmanager.h: Added.
3005 * ForwardingHeaders/ksslcertchain.h: Added.
3006 * ForwardingHeaders/ksslinfodlg.h: Added.
3007 * ForwardingHeaders/kstdaction.h: Added.
3008 * ForwardingHeaders/ktempfile.h: Added.
3009 * ForwardingHeaders/ktrader.h: Added.
3010 * ForwardingHeaders/kurldrag.h: Added.
3011 * ForwardingHeaders/kxmlguifactory.h: Added.
3012 * ForwardingHeaders/qasyncimageio.h: Added.
3013 * ForwardingHeaders/qbitmap.h: Added.
3014 * ForwardingHeaders/qclipboard.h: Added.
3015 * ForwardingHeaders/qfontdatabase.h: Added.
3016 * ForwardingHeaders/qglobal.h: Added.
3017 * ForwardingHeaders/qhbox.h: Added.
3018 * ForwardingHeaders/qintcache.h: Added.
3019 * ForwardingHeaders/qintdict.h: Added.
3020 * ForwardingHeaders/qmetaobject.h: Added.
3021 * ForwardingHeaders/qobjectlist.h: Added.
3022 * ForwardingHeaders/scheduler.h: Added.
3024 * kwq/dcop/kdatastream.h: Removed.
3025 * kwq/kdecore/kcmdlineargs.h: Removed.
3026 * kwq/kdecore/kmultipledrag.h: Removed.
3027 * kwq/kdecore/ktempfile.h: Removed.
3028 * kwq/kdecore/kurldrag.h: Removed.
3029 * kwq/kdeui/kstdaction.h: Removed.
3030 * kwq/kdeui/kxmlguifactory.h: Removed.
3031 * kwq/khtml/khtml_iface.h: Removed.
3032 * kwq/khtml/khtml_printsettings.h: Removed.
3033 * kwq/khtml/khtml_run.h: Removed.
3034 * kwq/kio/kprinter.h: Removed.
3035 * kwq/kio/kprotocolmanager.h: Removed.
3036 * kwq/kio/kssl/ksslcertchain.h: Removed.
3037 * kwq/kio/kssl/ksslinfodlg.h: Removed.
3038 * kwq/kio/ktrader.h: Removed.
3039 * kwq/kio/scheduler.h: Removed.
3040 * kwq/qt/qasyncimageio.h: Removed.
3041 * kwq/qt/qbitmap.h: Removed.
3042 * kwq/qt/qclipboard.h: Removed.
3043 * kwq/qt/qfontdatabase.h: Removed.
3044 * kwq/qt/qglobal.h: Removed.
3045 * kwq/qt/qhbox.h: Removed.
3046 * kwq/qt/qintcache.h: Removed.
3047 * kwq/qt/qintdict.h: Removed.
3048 * kwq/qt/qmetaobject.h: Removed.
3049 * kwq/qt/qobjectlist.h: Removed.
3051 * WebCore.pbproj/project.pbxproj: Removed all the above headers from
3054 2002-10-24 Darin Adler <darin@apple.com>
3056 * ForwardingHeaders/private/qucomextra_p.h: Emptied this out.
3057 * kwq/qt/private/qucomextra_p.h: Removed.
3059 2002-10-24 David Hyatt <hyatt@apple.com>
3061 Make sure that KHTML's initial layout happens after KHTML
3062 fires the onload. This means that in the case where we
3063 beat the timer, we will now fire the onload before both
3064 the initial layout and the initial paint.
3066 * khtml/html/html_documentimpl.cpp:
3067 (HTMLDocumentImpl::close):
3069 === Alexander-29 ===
3071 2002-10-24 Chris Blumenberg <cblu@apple.com>
3073 Use "MIMEType" instead of "serviceType".
3075 * kwq/KWQKHTMLPartImpl.mm:
3076 (KWQKHTMLPartImpl::createPart):
3077 * kwq/WebCoreBridge.h:
3079 2002-10-24 Darin Adler <darin@apple.com>
3081 * kwq/KWQKLocale.mm: (i18n): Make it obvious when non-localized
3082 strings from WebCore show up in the UI, but putting the string
3083 "not localized: " in front.
3085 * kwq/KWQKMessageBox.mm:
3086 (KMessageBox::error): Fix use of NSRunAlertPanel so that we won't
3087 accidentally try to interpret % sequences in the messages we are displaying.
3088 (KMessageBox::warningYesNo): Ditto.
3089 (KMessageBox::questionYesNo): Ditto.
3090 (KMessageBox::sorry): Ditto.
3091 (KMessageBox::information): Ditto.
3093 2002-10-23 Chris Blumenberg <cblu@apple.com>
3095 WebKit now gets called when render_frame subviews are added.
3097 * khtml/rendering/render_frames.cpp:
3098 (RenderPart::setWidget): call didAddWidget on the part
3099 * kwq/KWQKHTMLPartImpl.h:
3100 * kwq/KWQKHTMLPartImpl.mm:
3101 (KWQKHTMLPartImpl::didAddWidget): added, calls didAddSubview on the bridge
3103 2002-10-23 Chris Blumenberg <cblu@apple.com>
3105 Change for plug-in package API changes.
3107 * kwq/KWQKConfigBase.mm:
3108 (KConfig::readEntry):
3109 * kwq/WebCoreBridge.h: added didAddSubview, called when a render_frame's view is added as a subview of the main view.
3110 * kwq/WebCoreViewFactory.h: added didAddSubview
3112 2002-10-23 Darin Adler <darin@apple.com>
3114 - finished up the job of moving the file button to WebKit
3116 I did this mainly for localization reasons.
3118 * kwq/KWQFileButton.h: Remove filename(), add filenameChanged(),
3119 make KWQFileButton be a QWidget subclass, not a QPushButton one.
3120 Remove clicked() and paint() virtual functions, _filename, _icon,
3121 and _label data members.
3122 * kwq/KWQFileButton.mm:
3123 (KWQFileButton::KWQFileButton): Just make a WebCoreFileButton.
3124 (KWQFileButton::~KWQFileButton): Less to do here now.
3125 (KWQFileButton::setFilename): Call the button to do the work.
3126 (KWQFileButton::sizeHint): Ditto.
3127 (KWQFileButton::frameGeometry): Ditto.
3128 (KWQFileButton::setFrameGeometry): Ditto.
3129 (KWQFileButton::baselinePosition): Ditto.
3130 (KWQFileButton::filenameChanged): Added. Sends message.
3131 (-[KWQFileButtonAdapter initWithKWQFileButton:]): Observe the "filename
3132 changed notification".
3133 (-[KWQFileButtonAdapter dealloc]): Stop observing.
3134 (-[KWQFileButtonAdapter filenameChanged:]): Send a signal when the notification
3135 comes in, so KHTML finds out.
3138 (KWQSlot::KWQSlot): Remove handling for RenderFileButton slotReturnPressed.
3139 (KWQSlot::call): Ditto.
3141 * kwq/WebCoreViewFactory.h: Remove bestSize. Add setVisualFrame, visualFrame, and
3142 bestVisualFrameSize.
3144 * kwq/KWQInputDialog.mm: Tweaked includes. Long-term we want to use "", not <>.
3145 * kwq/KWQKConfigBase.mm: Ditto.
3146 * kwq/KWQKHTMLPartImpl.mm: Ditto.
3148 2002-10-23 Chris Blumenberg <cblu@apple.com>
3150 Call the arguments for plug-ins "attributes" everywhere.
3152 * kwq/KWQKHTMLPartImpl.mm:
3153 (KWQKHTMLPartImpl::createPart):
3154 * kwq/KWQKJavaAppletWidget.mm:
3155 (KJavaAppletWidget::showApplet):
3156 * kwq/WebCoreBridge.h:
3158 2002-10-23 Chris Blumenberg <cblu@apple.com>
3160 For the new plug-in API, we need to pass a WebPluginContainer to the plug-in view upon creation. The is owned by the WebFrame. To make this all work, I had to move the WebCore plug-in and java view constructors to WebBridge from WebViewFactory since WebBridge has the frame.
3162 * khtml/khtml_part.cpp:
3163 (KHTMLPart::createJavaContext): New APPLE_CHANGES around the java context constructor so we pass the part.
3164 * kwq/KWQKHTMLPartImpl.mm:
3165 (KWQKHTMLPartImpl::createPart): call the bridge to create the view
3166 * kwq/KWQKJavaAppletWidget.mm:
3167 (KJavaAppletWidget::KJavaAppletWidget): save the context
3168 (KJavaAppletWidget::showApplet): call the bridge to create the view
3169 * kwq/WebCoreBridge.h:
3170 * kwq/WebCoreViewFactory.h:
3171 * kwq/khtml/java/kjavaappletcontext.h: made constructor take the part
3172 * kwq/khtml/java/kjavaappletwidget.h: ivar for the context
3174 2002-10-23 Darin Adler <darin@apple.com>
3176 - fixed 3080478 -- reproducible incomplete load on apple.com
3178 * kwq/KWQLoaderImpl.mm:
3179 (-[WebCoreResourceLoader receivedResponse:]): Add an assert.
3180 (-[WebCoreResourceLoader cancel]): Don't finish here, just disconnect the handle
3181 from the job, and disconnect the job from the WebCoreResourceLoader, and let the
3182 KHTML code finish the cleanup later. This is the bug fix.
3183 (KWQCheckCacheObjectStatus): Add an assertion.
3185 * kwq/KWQKjobclasses.mm:
3186 (TransferJob::~TransferJob): Don't call kill(); do the work here instead.
3187 (TransferJob::kill): Self-destruct. Need this to avoid a storage leak.
3189 * khtml/misc/loader.cpp:
3190 (CachedObject::~CachedObject): Put some Apple-specific code inside APPLE_CHANGES.
3191 (CachedObject::setResponse): Streamlined this function.
3192 (Loader::receivedResponse): Added assertions.
3194 * kwq/qt/qxml.h: Add more stubs.
3195 * kwq/KWQxml.mm: Ditto.
3197 * kwq/WebCoreViewFactory.h: Add [WebCoreViewFactory fileButton], the
3198 WebCoreFileButton protocol, and WebCoreFileButtonFilenameChanged.
3199 * kwq/WebCoreViewFactory.m: Add WebCoreFileButtonFilenameChanged.
3200 * WebCore.exp: Export _WebCoreFileButtonFilenameChanged.
3202 2002-10-22 Maciej Stachowiak <mjs@apple.com>
3204 Forgot to check this in earlier:
3206 - fixed 3077084 - debugging output when suppressing or allowing
3209 * khtml/ecma/kjs_window.cpp:
3210 (WindowFunc::tryCall):
3214 2002-10-22 David Hyatt <hyatt@apple.com>
3216 Get XML files closer. An XML doc is at least made. No
3217 parsing works yet though.
3219 * kwq/KWQKHTMLPartImpl.mm:
3220 (KWQKHTMLPartImpl::setPolicyBaseURL):
3221 * kwq/WebCoreBridge.h:
3222 * kwq/WebCoreBridge.mm:
3223 (-[WebCoreBridge setContentType:]):
3225 2002-10-22 Chris Blumenberg <cblu@apple.com>
3227 Fixed: 3023814 - contexual menus and dragging doesn't work for some images
3229 Added a innerNonSharedNode to NodeInfo that points to the node which is not shared by another node. In this case, the innerNonSharedNode is the image node not the area node.
3231 * khtml/rendering/render_frames.cpp:
3232 (RenderFrameSet::nodeAtPoint): call setInnerNonSharedNode
3233 * khtml/rendering/render_image.cpp:
3234 (RenderImage::nodeAtPoint): call setInnerNonSharedNode
3235 * khtml/rendering/render_object.cpp:
3236 (RenderObject::nodeAtPoint): call setInnerNonSharedNode
3237 * khtml/rendering/render_object.h:
3238 * kwq/WebCoreBridge.mm:
3239 (-[WebCoreBridge elementAtPoint:]): use the innerNonSharedNode
3241 2002-10-22 David Hyatt <hyatt@apple.com>
3243 Fix slashdot. Make sure the KONQBLOCK hack just throws away
3244 margins at the tops and bottoms of kids.
3246 * khtml/css/html4.css:
3247 * khtml/rendering/render_flow.cpp:
3248 (RenderFlow::layoutBlockChildren):
3250 2002-10-22 David Hyatt <hyatt@apple.com>
3252 Fix for left-hand-side of wired.com. A disturbingly basic
3253 bug. I was applying a parent's margins to its children
3254 when collapsing, even if the parent had a border/padding set
3255 that should have separated it from its kids.
3257 * khtml/rendering/render_flow.cpp:
3258 (RenderFlow::layoutBlockChildren):
3260 2002-10-22 David Hyatt <hyatt@apple.com>
3262 Optimize my inline margin discarding to be smart about the
3263 case when the inline has a block and its beginning or
3264 end. Fixes aintitcool.com.
3266 * khtml/rendering/render_flow.cpp:
3267 (RenderFlow::layoutBlockChildren):
3269 2002-10-22 David Hyatt <hyatt@apple.com>
3271 Removing konq's flow-around-floats hack for <blockquote> and
3272 <dl>. These objects are allowed to flow under floats. Fixes
3273 www.webreference.com's front page.
3275 Also fixing a bug in my <td> margin collapsing quirk that
3276 prevented lists (ol,ul,dl,menu,dir) from collapsing their
3277 top margins into the td.
3279 * khtml/css/html4.css:
3280 * khtml/rendering/render_flow.cpp:
3281 (RenderFlow::layoutBlockChildren):
3282 (RenderFlow::addChild):
3284 2002-10-22 David Hyatt <hyatt@apple.com>
3286 Fix a typo in my change to the h1 rule.
3288 * khtml/css/html4.css:
3290 2002-10-22 David Hyatt <hyatt@apple.com>
3292 Ok, this patch does a lot of stuff. It contains a complete
3293 rewrite of the WinIE quirk for handling collapsing margins
3294 at the tops and bottoms of table cells. We match WinIE's
3295 behavior for all HTML4 block-level elements.
3297 This patch also applies a bottom margin to <form> elements,
3298 which is what was causing the missing space on livepage.apple.com
3299 underneath the textfield on the right. WinIE and Gecko both
3300 put a bottom margin on all forms.
3302 This patch also updates the collapsing margin code to detect
3303 inlines that have been morphed into blocks by KHTML (this is
3304 so wrong, don't even get me started, you can't treat an inline
3305 as a block, this code is lame, etc. etc.) and to properly ignore
3306 their margins completely. Fixing the code to not morph inlines
3307 is another architectural problem that will have to be dealt
3310 * khtml/css/css_valueimpl.h:
3311 * khtml/css/cssparser.cpp:
3312 (StyleBaseImpl::parseValue):
3313 (StyleBaseImpl::parseUnit):
3314 * khtml/css/cssparser.h:
3315 * khtml/css/cssstyleselector.cpp:
3316 * khtml/css/html4.css:
3317 * khtml/misc/khtmllayout.h:
3318 * khtml/rendering/render_flow.cpp:
3319 (RenderFlow::RenderFlow):
3320 (RenderFlow::layout):
3321 (RenderFlow::layoutBlockChildren):
3322 (RenderFlow::addChild):
3323 * khtml/rendering/render_flow.h:
3324 * khtml/rendering/render_object.h:
3326 2002-10-21 Darin Adler <darin@apple.com>
3328 * kwq/KWQInputDialog.mm: (QInputDialog::getText): Call the view factory to do the
3331 * kwq/WebCoreViewFactory.h: Add runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:.
3332 Use a protocol for the subclass responsibility.
3333 * kwq/WebCoreViewFactory.m: Remove stub methods not needed because of the subclass responsibility
3334 technique we are using.
3336 * kwq/qt/qstylesheet.h: Made this inline, since it does nothing.
3337 * kwq/KWQStyleSheet.mm: Removed.
3338 * WebCore.pbproj/project.pbxproj: Removed KWQStyleSheet.mm.
3340 2002-10-21 David Hyatt <hyatt@apple.com>
3342 Implement support for a new @-rule called @konq-quirks. This
3343 will allow us to put style rules into html4.css that only
3344 apply for pages in quirks mode.
3346 * khtml/css/css_ruleimpl.cpp:
3347 (CSSQuirksRuleImpl::CSSQuirksRuleImpl):
3348 (CSSQuirksRuleImpl::~CSSQuirksRuleImpl):
3349 (CSSQuirksRuleImpl::cssRules):
3350 (CSSQuirksRuleImpl::appendRule):
3351 (CSSQuirksRuleImpl::insertRule):
3352 (CSSQuirksRuleImpl::deleteRule):
3353 * khtml/css/css_ruleimpl.h:
3354 * khtml/css/cssparser.cpp:
3355 (StyleBaseImpl::parseAtRule):
3356 * khtml/css/cssparser.h:
3357 * khtml/css/cssstyleselector.cpp:
3358 * khtml/css/cssstyleselector.h:
3359 * khtml/dom/css_rule.h:
3361 2002-10-21 Darin Adler <darin@apple.com>
3363 Remove closeEntireTree now that deferred close takes care of that case.
3365 * khtml/html/htmlparser.cpp: (KHTMLParser::startBody):
3366 * khtml/rendering/render_object.h:
3368 2002-10-21 Darin Adler <darin@apple.com>
3370 - fixed 3075041 -- text larger/smaller increment too large when font-size specified as %
3372 * khtml/css/cssstyleselector.cpp: Don't apply the zoom factor to a font size that
3373 already has the zoom factor applied.
3375 2002-10-21 Darin Adler <darin@apple.com>
3377 * khtml/khtmlview.cpp: (KHTMLView::clear): Default to fast scrolling.
3378 I'm pretty sure this was just backwards here.
3380 2002-10-21 David Hyatt <hyatt@apple.com>
3382 DLs are supposed to have margins.
3384 * khtml/css/html4.css:
3386 2002-10-21 David Hyatt <hyatt@apple.com>
3388 Fix for margin problems on aintitcool.com. There was a subtlety
3389 to WinIE's quirk. For <h1>-<h6> only, they don't collapse the
3390 bottom margin for table cells (they still collapse the top
3391 margin). I just love emulating the odd behavior of WinIE.
3394 * khtml/rendering/render_flow.cpp:
3395 (RenderFlow::layoutBlockChildren):
3397 2002-10-20 Darin Adler <darin@apple.com>
3399 Redid my fix. It was just an ordering thing. The image had to already be
3400 installed as the current image before calling ref(), because in the cached
3401 case, you get the loading complete callback right then.
3403 * khtml/rendering/render_image.cpp: (RenderImage::updateFromElement):
3404 Call deref on the old image later. Basically, instead of moving the ref
3405 of the new image up, I moved the deref of the old image down.
3407 2002-10-20 Darin Adler <darin@apple.com>
3409 Roll out my render_image.cpp change. It was causing a big problem
3410 getting images from the cache. I need to study further to figure out why.
3412 * khtml/rendering/render_image.cpp: (RenderImage::updateFromElement):
3413 Roll back the change.
3415 2002-10-20 David Hyatt <hyatt@apple.com>
3417 Rewrite the clearing code for floats. Rewrote the
3418 collapsing margin code to really work with floating and
3419 clearing. This fixes the right hand side of wired.com.
3421 * khtml/rendering/render_flow.cpp:
3422 (RenderFlow::layoutBlockChildren):
3423 (RenderFlow::checkClear):
3424 (RenderFlow::addChild):
3426 2002-10-20 Darin Adler <darin@apple.com>
3428 - fixed 3007961 -- Crash in DOM::HTMLImageElementImpl::parseAttribute
3430 * khtml/rendering/render_image.cpp: (RenderImage::updateFromElement):
3431 Be sure to call ref on the new image before calling deref on the old
3432 image. That's because deref on the old image causes a cache flush,
3433 which might cause the image to go away in certain cases.
3435 2002-10-20 Chris Blumenberg <cblu@apple.com>
3437 Fixed possible build failure.
3439 * kwq/KWQDOMNode.cpp:
3440 (isImage): remove unused variable.
3442 2002-10-20 Chris Blumenberg <cblu@apple.com>
3445 3023814 - contexual menus and dragging doesn't work for some images
3447 The image map case is still broken because I need to find a way to get the RenderImage for an AREA node. Anyone know how?
3449 * kwq/KWQDOMNode.cpp:
3450 (isImage): Also return true if the node is an INPUT tag with TYPE set to "image"
3452 2002-10-20 Darin Adler <darin@apple.com>
3454 - fixed 3076390 -- crash in DOM::DocumentImpl::setParsing loading thread detail page
3457 * khtml/khtml_part.cpp: (KHTMLPart::openURL): Don't do any redirect special case
3458 if the document is nil. Just do a normal load in that case.
3460 2002-10-20 Darin Adler <darin@apple.com>
3462 - fixed 3079864 -- REGRESSION: assertion failure on any page with a form element
3464 * khtml/html/html_formimpl.cpp: (HTMLGenericFormElementImpl::attach):
3465 Roll back the parent call to use NodeBaseImpl::attach. Not sure why I changed that
3466 at the last minute before my last checkin, but it was *bad*.
3468 - fixed a crash I observed when clicking on an about:blank page
3470 * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): Check for nil renderer.
3472 2002-10-19 Darin Adler <darin@apple.com>
3474 - fixed 3075032 -- textarea contents sometimes aren't shown
3476 The root of the problem is that we weren't delivering close calls to
3477 the render objects in the case where we created them late due to our FOUC
3478 fix. I taught the DOM implementation to remember that a close call is
3479 due, and deliver it when the render object is created. We can probably
3480 replace the closeEntireTree hack with this too. I'll talk to Dave about
3483 * khtml/xml/dom_nodeimpl.h: Add m_rendererNeedsClose and closeRenderer.
3484 * khtml/xml/dom_nodeimpl.cpp:
3485 (NodeImpl::NodeImpl): Initialize m_rendererNeedsClose to false.
3486 (NodeImpl::closeRenderer): Call close on the renderer if it's created, otherwise
3487 set m_rendererNeedsClose.
3488 (NodeImpl::attach): If the renderer is created and m_rendererNeedsClose is true
3489 call close on the renderer and set it to false.
3491 * khtml/html/html_formimpl.cpp: (HTMLGenericFormElementImpl::attach):
3492 Rearrange this so that the base class attach is called before updateFromElement
3493 is called. This allows the base attach to do a close for us before we update.
3495 * khtml/html/htmlparser.cpp:
3496 (KHTMLParser::insertNode): Call closeRenderer on the DOM node rather than
3497 calling close on the render node.
3498 (KHTMLParser::popOneBlock): Ditto.
3499 * khtml/xml/xml_tokenizer.cpp:
3500 (XMLHandler::endElement): Ditto.
3501 (XMLTokenizer::finish): Ditto.
3503 2002-10-19 David Hyatt <hyatt@apple.com>
3505 A couple of whitespace fixes. What's really odd about these
3506 fixes is that they *work* but only if you load the page by
3507 hitting "Back". I suspect that I've now fixed the bugs on
3508 KHTML's end, and we have some sort of whitepsace dropping
3511 * khtml/html/htmlparser.cpp:
3512 (KHTMLParser::insertNode):
3513 * khtml/html/htmltokenizer.cpp:
3514 (HTMLTokenizer::write):
3516 2002-10-18 Richard Williamson <rjw@apple.com>
3518 Fixed khtml to ignore <title> tags after the first tag.
3520 Fixed setting document.title from JavaScript.
3522 * khtml/dom/html_document.cpp:
3523 (HTMLDocument::setTitle):
3524 * khtml/html/html_headimpl.cpp:
3525 (HTMLTitleElementImpl::insertedIntoDocument):
3526 (HTMLTitleElementImpl::childrenChanged):
3528 2002-10-18 Darin Adler <darin@apple.com>
3530 - fixed 3078293 -- Implement evaluateJavaScript on WebController
3532 * kwq/KWQVariant.mm: (QVariant::asString): Made this return reasonable
3533 values for types other than string. Still may be loose ends left, but
3534 this takes care of most of it.
3536 2002-10-18 Darin Adler <darin@apple.com>
3538 * kwq/WebCoreBridge.h:
3539 * kwq/WebCoreBridge.mm:
3540 (-[WebCoreBridge stringByEvaluatingJavaScriptFromString:]):
3541 Changed to return a string and changed name.
3543 2002-10-18 David Hyatt <hyatt@apple.com>
3545 The collapsing margin rewrite. Also fixes a bug where
3546 we stay in quirks mode for strict HTML4 dtds when we
3549 * khtml/html/html_documentimpl.cpp:
3550 (HTMLDocumentImpl::determineParseMode):
3551 * khtml/rendering/render_flow.cpp:
3552 (RenderFlow::layout):
3553 (RenderFlow::layoutBlockChildren):
3554 * khtml/rendering/render_flow.h:
3555 * khtml/rendering/render_object.h:
3557 2002-10-18 Darin Adler <darin@apple.com>
3559 * Makefile.am: Move dependency so clean happens before build.
3561 2002-10-17 Richard Williamson <rjw@apple.com>
3563 Support for drawing frame borders and frame resizing. (fixes 2982466).
3565 * khtml/rendering/render_frames.cpp:
3566 (RenderFrameSet::userResize):
3567 * kwq/WebCoreBridge.h:
3568 * kwq/WebCoreBridge.mm:
3569 (-[WebCoreBridge frameBorderStyle]):
3572 2002-10-17 Darin Adler <darin@apple.com>
3574 - fixed 2807340 -- Alex is case sensitive for anchors, but
3575 should not be in quirks mode (other browsers aren't)
3577 * khtml/dom/html_misc.cpp: Touched this file to prevent us from requiring a
3578 full build. Damned header dependencies still don't work right.
3580 * khtml/html/html_miscimpl.h: Add caseSensitive parameters.
3581 * khtml/html/html_miscimpl.cpp:
3582 (HTMLCollectionImpl::getNamedItem): Add caseSensitive parameter, and compare
3583 by converting both to lower case if it's false and pass it on when recursing.
3584 (HTMLCollectionImpl::namedItem): Pass along a caseSensitive parameter.
3585 (HTMLFormCollectionImpl::getNamedItem): Pass along a caseSensitive parameter.
3586 (HTMLFormCollectionImpl::getNamedFormItem): Pass along, and handle, it.
3587 (HTMLFormCollectionImpl::getNamedImgItem): Ditto.
3588 (HTMLFormCollectionImpl::nextNamedItemInternal): Pass true for caseSensitive.
3590 * khtml/khtml_part.cpp: (KHTMLPart::gotoAnchor):
3591 Pass false for the new caseSensitive parameter to namedItem when the document
3594 * kwq/KWQListBox.mm: (QListBox::sizeForNumberOfLines): Removed a stray NSLog
3595 that I left in by accident.
3597 2002-10-17 Darin Adler <darin@apple.com>
3599 - fixed 3052547 -- <select> doesn't size properly (size > 1)
3601 * khtml/rendering/render_form.cpp:
3602 (RenderLineEdit::slotReturnPressed): #if !APPLE_CHANGES around some unused
3604 (RenderSelect::updateFromElement): Fix bug where it was using Multi here, but
3605 Extended elsewhere for the selection mode.
3606 (RenderSelect::layout): Change code so that QListBox handles the sizing.
3608 * kwq/KWQListBox.h: Removed a lot of unused stuff, made other things use inlines.
3609 * kwq/KWQListBox.mm: Rewrote most of the file contents. Made a new
3610 QListBox::sizeForNumberOfLines method. We will have to port this to NSTableView
3611 rather than NSBrowser.
3613 2002-10-17 Darin Adler <darin@apple.com>
3615 - fixed 3078245 -- REGRESSION: lightgrey displays as black, used
3616 to display as white, should display light gray
3618 * kwq/KWQColor.mm: (getNamedColors): For every color with the name
3619 "gray" in it, also include the version spelled "grey" as other
3622 2002-10-17 David Hyatt <hyatt@apple.com>
3624 Make navigator.product dynamic based off user agent (i.e.,
3625 make it participate in spoofing too).
3627 * khtml/ecma/kjs_navigator.cpp:
3628 (Navigator::getValueProperty):
3630 === Alexander-28 ===
3632 2002-10-17 Darin Adler <darin@apple.com>
3634 - fixed 3077856 -- REGRESSION: scroll to fragment doesn't work
3635 (except when Alex started from command line)
3637 * kwq/kparts/browserextension.h: Initialize reload to false. It was
3638 uninitialized, and when true was preventing anchor navigation from working.
3640 2002-10-17 Darin Adler <darin@apple.com>
3642 - fixed 3075992 -- Hang in khtml::RenderFlow::lowestPosition() trying to
3643 render http://avoyagetoarcturus.blogspot.com/
3645 * khtml/rendering/render_flow.cpp:
3646 (RenderFlow::lowestPosition): Don't recurse on the same child twice.
3647 (RenderFlow::rightmostPosition): Ditto.
3649 2002-10-17 David Hyatt <hyatt@apple.com>
3651 Fix bayarea.com. My implementation of offsetParent was
3652 flawed. And to think I was blaming Gecko... ;)
3654 * khtml/rendering/render_object.cpp:
3655 (RenderObject::offsetParent):
3657 2002-10-16 Darin Adler <darin@apple.com>
3659 - fixed 3061103 -- Line-breaks lost when submitting after pasting text from
3660 MSIE into Alexander textarea
3662 * kwq/KWQLineEdit.mm: (QLineEdit::text):
3663 * kwq/KWQTextEdit.mm: (QTextEdit::text):
3664 Turn \r\n sequences and standalone \r characters into \n characters on the way
3665 out of AppKit land and into KHTML land. I didn't try to make this efficient
3666 for the common case because these are not time-critical functions.
3668 2002-10-16 Richard Williamson <rjw@apple.com>
3670 Fixed a few regressions in drawing of frame resize handle
3671 in preparation for drawing frame borders and completing
3674 * khtml/rendering/render_frames.cpp:
3675 (RenderFrameSet::userResize):
3676 * kwq/KWQPainter.mm:
3677 (QPainter::drawRect):
3678 * kwq/qt/qscrollview.h:
3679 * kwq/KWQScrollView.mm:
3680 (QScrollView::updateContents):
3682 (QWidget::enableFlushDrawing):
3684 Use static_cast everywhere DOM::NodeImpl is cast to
3687 * kwq/WebCoreDOMNode.mm:
3688 (-[WebCoreDOMNode DOM::]):
3689 (-[WebCoreDOMNodeList DOM::]):
3690 (-[WebCoreDOMNamedNodeMap DOM::]):
3691 (-[WebCoreDOMAttr DOM::]):
3693 2002-10-16 David Hyatt <hyatt@apple.com>
3695 Fix crash on pages with bulleted lists. Making sure the list
3696 item marker doesn't get a layer (which means it has to be
3697 painted by hand now by the list item object).
3699 * khtml/rendering/render_box.cpp:
3700 (RenderBox::setStyle):
3701 * khtml/rendering/render_list.cpp:
3702 (RenderListItem::printObject):
3703 * khtml/rendering/render_list.h:
3704 * khtml/rendering/render_object.h:
3706 2002-10-16 Darin Adler <darin@apple.com>
3708 - fixed 3072542 -- double "&" in submit button
3710 * khtml/rendering/render_form.cpp: (RenderSubmitButton::rawText):
3711 Don't double the "&" character, not needed for KWQ.
3713 2002-10-16 David Hyatt <hyatt@apple.com>
3715 When render objects were being dynamically wrapped in anonymous
3716 blocks, the layer parenting connection was being broken without
3717 being reconnected when the wrapping finished. This patch
3718 shifts the layer connection into the functions that are also
3719 called in the dynamic case.
3721 With this fix, all objects on mrskin finally show up. Yeehah.
3722 brainjar.com's brain is back too.
3724 This patch also stops treating images as inline if they are
3725 using abs/fixed positioning, since according to the CSS spec,
3726 abs/fixed positioned elements should be treated as block-level
3729 * khtml/rendering/render_container.cpp:
3730 (RenderContainer::addChild):
3731 (RenderContainer::appendChildNode):
3732 (RenderContainer::insertChildNode):
3733 * khtml/rendering/render_image.cpp:
3734 (RenderImage::setStyle):
3736 2002-10-16 Darin Adler <darin@apple.com>
3738 - fixed 3045570 -- can't select a printer at inkfinder.com
3740 * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest):
3741 Call the new openURL for the case where we are reusing a part.
3742 We do this backwards from how KHTML does, so it's twisted.
3744 * kwq/KWQKHTMLPartImpl.h: Add openURL.
3745 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::openURL):
3746 Tell the bridge to load the URL.
3748 * kwq/mac-encodings.txt: Tweak Korean encoding names.
3750 2002-10-16 David Hyatt <hyatt@apple.com>
3752 A very substantial change. Absolute/fixed positioned elements that
3753 are NOT renderflows were not getting layers constructed for them.
3756 Also, floats now have layers constructed for them. This allows
3757 printSpecialObjects to be completely eliminated, enables smarter
3758 damge rect intersection testing for faster painting, and fixes
3759 regressions on sites like www.demian5.com.
3761 * khtml/rendering/render_box.cpp:
3762 (RenderBox::setStyle):
3763 * khtml/rendering/render_flow.cpp:
3764 (RenderFlow::printObject):
3765 (RenderFlow::addOverHangingFloats):
3766 (RenderFlow::printTree):
3767 * khtml/rendering/render_flow.h:
3768 * khtml/rendering/render_layer.cpp:
3769 (RenderLayer::constructZTree):
3770 * khtml/rendering/render_root.cpp:
3771 (RenderRoot::printObject):
3772 * khtml/rendering/render_table.cpp:
3773 (RenderTable::print):
3775 2002-10-16 Richard Williamson <rjw@apple.com>
3779 * kwq/KWQKHistoryProvider.mm:
3781 2002-10-15 Richard Williamson <rjw@apple.com>
3783 * kwq/WebCoreBridge.mm:
3785 Don't convert element unless it has a renderer.
3787 * kwq/WebCoreDOMNode.mm:
3788 (-[WebCoreDOMAttr DOM::]):
3789 (-[WebCoreDOMAttr name]):
3790 (-[WebCoreDOMAttr specified]):
3791 (-[WebCoreDOMAttr value]):
3792 (-[WebCoreDOMAttr ownerElement]):
3793 (-[WebCoreDOMElement tagName]):
3794 (-[WebCoreDOMElement setAttribute::]):
3795 (-[WebCoreDOMElement removeAttribute:]):
3796 (-[WebCoreDOMElement getAttributeNode:]):
3797 (-[WebCoreDOMElement removeAttributeNode:]):
3798 (-[WebCoreDOMElement getElementsByTagName:]):
3799 (-[WebCoreDOMElement getAttributeNS::]):
3800 (-[WebCoreDOMElement setAttributeNS:::]):
3801 (-[WebCoreDOMCharacterData data]):
3802 (-[WebCoreDOMCharacterData setData:]):
3803 (-[WebCoreDOMCharacterData length]):
3804 (-[WebCoreDOMCharacterData substringData::]):
3805 (-[WebCoreDOMCharacterData appendData:]):
3806 (-[WebCoreDOMCharacterData insertData::]):
3807 (-[WebCoreDOMCharacterData deleteData::]):
3808 (-[WebCoreDOMText splitText:]):
3809 (-[WebCoreDOMProcessingInstruction data]):
3810 (-[WebCoreDOMProcessingInstruction setData:]):
3811 * kwq/WebCoreDOMPrivate.h:
3814 2002-10-15 David Hyatt <hyatt@apple.com>
3816 More work on making blocks correctly compute their maximal
3817 positive and negative margins. Adding code to ensure
3818 that floats and absolute/fixed positioned elements know
3819 not to collapse with children or with themselves. Also adding
3820 code to teach empty blocks that they can collapse their own
3823 * khtml/rendering/render_flow.cpp:
3824 (RenderFlow::layout):
3825 (RenderFlow::layoutBlockChildren):
3827 2002-10-15 Darin Adler <darin@apple.com>
3829 WebCore support for using referrer even in loads that are not initiated
3832 * kwq/KWQKHTMLPartBrowserExtension.mm:
3833 (KHTMLPartBrowserExtension::createNewWindow): Don't pass a referrer.
3834 We get the referrer from the part.
3836 * kwq/KWQKHTMLPartImpl.h: Add a new referrer method that works on the
3837 part, and remove the old one that got it from the URL arguments.
3838 * kwq/KWQKHTMLPartImpl.mm:
3839 (KWQKHTMLPartImpl::bridgeForFrameName): Don't pass a referrer when
3840 creating a new window.
3841 (KWQKHTMLPartImpl::openURLRequest): Don't pass a referrer when doing a load.
3842 (KWQKHTMLPartImpl::urlSelected): Don't pass a referrer when doing a load.
3843 (KWQKHTMLPartImpl::createPart): Don't pass a referrer when creating a child
3844 frame for this window.
3845 (KWQKHTMLPartImpl::submitForm): Don't pass a referrer when doing a load.
3846 (KWQKHTMLPartImpl::referrer): Added.
3848 * kwq/KWQLoaderImpl.mm: (KWQServeRequest): Don't pass a referrer when starting
3850 * kwq/WebCoreBridge.h: Add referrer method. Remove referrer parameter from
3852 * kwq/WebCoreBridge.mm: (-[WebCoreBridge referrer]): Added.
3854 2002-10-15 Darin Adler <darin@apple.com>
3856 - fixed 3021713 -- text selection background obliterates descenders
3857 (in www.theregister.co.uk articles)
3858 - fixed 3038207 -- Selected link text doesn't draw its link underline
3860 * khtml/rendering/render_text.cpp:
3861 (TextSlave::printSelection): Don't draw text at all, just draw a selection background.
3862 (RenderText::printObject): Draw in two passes. Draw the selection background in the
3863 first pass, and the text in the second pass. That way pieces of the background won't
3864 cover any other text or adornments, like underlines.
3866 2002-10-15 Darin Adler <darin@apple.com>
3868 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::urlSelected):
3869 Move the special case of a different anchor within the same
3870 page into WebKit from here.
3872 * kwq/kdecore/kurl.h: Mark urlcmp as a friend.
3873 * kwq/KWQKURL.mm: (urlcmp): Implement the ignoreRef feature, which
3874 is needed to make the KHTMLPart::openURL function work right.
3876 * kwq/WebCoreBridge.h: Removed addBackForwardItemWithURL:anchor:
3877 and added URL method.
3878 * kwq/WebCoreBridge.mm: (-[WebCoreBridge URL]): Added.
3880 2002-10-15 Darin Adler <darin@apple.com>
3882 - fixed 3074558 -- frames multiply at: http://www.iarsn.com/
3884 The key was to make the name attribute work properly.
3886 * khtml/ecma/kjs_window.cpp:
3887 (Window::get): Enable the "name" attribute.
3888 (Window::put): Enable the "name" attribute, but don't do the
3889 conversion to an 8-bit string -- leave it as a QString.
3890 * kwq/WebCoreBridge.h: Add setName/name methods.
3891 * kwq/WebCoreBridge.mm:
3892 (-[WebCoreBridge setName:]): Added. Calls part->setName().
3893 (-[WebCoreBridge name]): Added. Calls part->name().
3894 * kwq/kparts/part.h: Added setName/name to ReadOnlyPart.
3896 * kwq/KWQKHTMLPartImpl.mm: Remove old bogusish comment.
3898 2002-10-15 Richard Williamson <rjw@apple.com>
3900 Added text color to attributed string conversion.
3902 * kwq/WebCoreBridge.mm:
3905 2002-10-15 Richard Williamson <rjw@apple.com>
3907 Added API to get attributed string from bridge.
3908 Added API to get selection in terms of the DOM API
3911 * kwq/WebCoreBridge.h:
3912 * kwq/WebCoreBridge.mm:
3914 (-[WebCoreBridge selectionStart]):
3915 (-[WebCoreBridge selectionStartOffset]):
3916 (-[WebCoreBridge selectionEnd]):
3917 (-[WebCoreBridge selectionEndOffset]):
3919 2002-10-15 Darin Adler <darin@apple.com>
3921 - fixed 3054791 -- crash in WebCoreSettings _updateAllViews changing font
3923 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::~KWQKHTMLPartImpl):
3924 Pass in the "this" pointer so that the right instance is removed from the
3925 instances list. Before, we would always remove the first instance from the
3926 list, leaving the list broken.
3928 2002-10-15 Ken Kocienda <kocienda@apple.com>
3930 Fixed an "unused variable" build breaker. Note that I just
3931 commented out the code and put a FIXME, as I know this is code
3932 that David has been banging on a lot. This should be either
3933 used for real or removed eventually, but I'll leave that for
3936 * khtml/rendering/render_flow.cpp:
3937 (RenderFlow::layoutBlockChildren):
3939 2002-10-14 David Hyatt <hyatt@apple.com>
3941 More collapsing margin surgery. Working on setting up blocks
3942 to properly compute their collapsed margins (without actually changing
3943 the obsolete collapsing behavior yet).
3945 * khtml/rendering/render_flow.cpp:
3946 (RenderFlow::RenderFlow):
3947 (RenderFlow::layout):
3948 (RenderFlow::layoutBlockChildren):
3949 * khtml/rendering/render_flow.h:
3951 2002-10-14 David Hyatt <hyatt@apple.com>
3953 Adding helper functions for handling of collapsing margins.
3956 * khtml/rendering/render_object.h:
3958 2002-10-14 Darin Adler <darin@apple.com>
3960 Fixed problems with named colors.
3962 * kwq/KWQColor.mm: (QColor::setNamedColor): Check named colors before
3963 hex codes for colors because our hex code parsing is now lenient enough
3964 that many names qualify.
3966 2002-10-14 David Hyatt <hyatt@apple.com>
3968 Really fixing zeldman.com this time. This disabling stuff
3971 * khtml/html/html_headimpl.cpp:
3972 (HTMLLinkElementImpl::parseAttribute):
3973 (HTMLLinkElementImpl::setStyleSheet):
3974 (HTMLLinkElementImpl::sheetLoaded):
3976 2002-10-14 David Hyatt <hyatt@apple.com>
3978 Stop the insanity. Make sure that a sheet that is disabled
3979 while it is still loading is removed from the doc's list
3980 of pending sheets (for FOUC checks).
3984 * khtml/html/html_headimpl.cpp:
3985 (HTMLLinkElementImpl::parseAttribute):
3987 2002-10-14 David Hyatt <hyatt@apple.com>
3989 Implementing the ability to individually enable/disable
3990 both preferred and alternate stylesheets. Enabling/disabling
3991 sheets via the disabled property of the <link> element overrides
3992 whether or not a sheet happens to be alternate or preferred.
3994 This new implementation of sheet disabling/enabling was a missing
3995 piece of our HTML4 compliance, and was used by the Wired
3996 site to implement its text sizing mechanism.
3998 * khtml/html/html_headimpl.cpp:
3999 (HTMLLinkElementImpl::HTMLLinkElementImpl):
4000 (HTMLLinkElementImpl::parseAttribute):
4001 (HTMLLinkElementImpl::process):
4002 * khtml/html/html_headimpl.h:
4003 * khtml/xml/dom_docimpl.cpp:
4004 (DocumentImpl::recalcStyleSelector):
4006 2002-10-11 Richard Williamson <rjw@apple.com>
4010 * kwq/WebCoreDOMDocument.mm:
4011 (+[WebCoreDOMDocument documentWithImpl:DOM::]):
4012 * kwq/WebCoreDOMNode.mm:
4013 (-[WebCoreDOMNode lastChild]):
4015 2002-10-11 Richard Williamson <rjw@apple.com>
4017 More DOM/attributed string work. Still need to fix more
4018 inappropriate casting problems.
4020 * khtml/dom/dom_node.cpp:
4022 * khtml/xml/dom_nodeimpl.cpp:
4023 (NodeImpl::lastChild):
4024 (NodeBaseImpl::lastChild):
4025 * khtml/xml/dom_nodeimpl.h:
4026 * kwq/KWQKHTMLPartImpl.cpp:
4027 (KWQKHTMLPartImpl::selectionStartOffset):
4028 (KWQKHTMLPartImpl::selectionEndOffset):
4029 (KWQKHTMLPartImpl::selectionStart):
4030 (KWQKHTMLPartImpl::selectionEnd):
4031 * kwq/KWQKHTMLPartImpl.h:
4032 * kwq/WebCoreBridge.h:
4033 * kwq/WebCoreBridge.mm:
4034 (-[WebCoreBridge DOMDocument]):
4035 (-[WebCoreBridge setSelectionFrom:startOffset:to:endOffset:]):
4037 (-[WebCoreBridge selectedAttributedString]):
4038 (-[WebCoreBridge attributedStringFrom:startOffset:to:endOffset:]):
4039 * kwq/WebCoreDOMDocument.mm:
4040 (-[WebCoreDOMDocumentType DOM::]):
4041 (-[WebCoreDOMDocumentType name]):
4042 (-[WebCoreDOMDocumentType entities]):
4043 (-[WebCoreDOMDocumentType notations]):
4044 (-[WebCoreDOMDocumentType publicId]):
4045 (-[WebCoreDOMDocumentType systemId]):
4046 (-[WebCoreDOMDocumentType internalSubset]):
4047 (-[WebCoreDOMImplementation DOM::]):
4048 (-[WebCoreDOMImplementation hasFeature::]):
4049 (-[WebCoreDOMImplementation createDocument:::]):
4050 (+[WebCoreDOMDocument documentWithImpl:DOM::]):
4051 (-[WebCoreDOMDocument DOM::]):
4052 (-[WebCoreDOMDocument doctype]):
4053 (-[WebCoreDOMDocument implementation]):
4054 (-[WebCoreDOMDocument documentElement]):
4055 (-[WebCoreDOMDocument createElement:]):
4056 (-[WebCoreDOMDocument createElementNS::]):
4057 (-[WebCoreDOMDocument createDocumentFragment]):
4058 (-[WebCoreDOMDocument createTextNode:]):
4059 (-[WebCoreDOMDocument createComment:]):
4060 (-[WebCoreDOMDocument createCDATASection:]):
4061 (-[WebCoreDOMDocument createProcessingInstruction::]):
4062 (-[WebCoreDOMDocument createAttribute:]):
4063 (-[WebCoreDOMDocument createAttributeNS::]):
4064 (-[WebCoreDOMDocument createEntityReference:]):
4065 (-[WebCoreDOMDocument getElementById:]):
4066 (-[WebCoreDOMDocument getElementsByTagName:]):
4067 (-[WebCoreDOMDocument getElementsByTagNameNS::]):
4068 (-[WebCoreDOMDocument importNode::]):
4069 * kwq/WebCoreDOMNode.mm:
4070 (-[WebCoreDOMNode initWithImpl:DOM::]):
4071 (-[WebCoreDOMNode firstChild]):
4072 (-[WebCoreDOMNode lastChild]):
4073 * kwq/WebCoreDOMPrivate.h:
4074 * kwq/WebCoreBridge.mm:
4075 (-[WebCoreBridge setSelectionFrom:startOffset:to:endOffset:]):
4079 2002-10-11 David Hyatt <hyatt@apple.com>
4081 Fix for 3058829, assertion caused by table cell with
4082 incorrect display type. Implemented a quirk that forces
4083 <td>s of display: block to construct table cells as
4086 * khtml/rendering/render_object.cpp:
4087 (RenderObject::createObject):
4089 === Alexander-27 ===
4091 2002-10-10 Darin Adler <darin@apple.com>
4093 - fixed 3047782 -- Alexander rejects some color strings that other browsers accept
4095 * khtml/misc/helper.cpp: (khtml::setNamedColor): Put some of the code from this
4096 level that tries to accomodate bad colors in #if !APPLE_CHANGES, since we do most
4097 of the smarts in KWQ.
4100 (hex2int): Tolerate non-hex digits, treating them as 0.
4101 (decodeColorFromHexColorString): Trim any number of leading # characters, and trailing
4102 " and ' characters. Handle strings of 4, 5, 7, 8, 10, and 11 hex digits, along with
4103 the existing 3, 6, 9, and 12.
4105 2002-10-10 David Hyatt <hyatt@apple.com>
4107 Fix a subtle bug with layers. When a parent is sorted with its
4108 children the parent's zindex must be treated as 0, so that
4109 negative children draw behind the layer's content and positive
4110 children (or auto children) draw in front of the layer's content.
4112 This fix makes chrysler.com work again (and doubtless many other
4113 messed up DHTML sites).
4115 * khtml/rendering/render_layer.cpp:
4116 (RenderLayer::constructZTree):
4117 (RenderLayer::RenderZTreeNode::constructLayerList):
4119 2002-10-09 Richard Williamson <rjw@apple.com>
4121 Implemented string conversion functions.
4123 * kwq/WebCoreDOMDocument.mm:
4124 (domStringToNSString):
4125 (NSStringToDOMString):
4127 2002-10-09 Darin Adler <darin@apple.com>
4129 - fixed 3069264 -- REGRESSION: windows created for links with
4130 target=blank start out hidden (window menu only)
4132 * kwq/WebCoreBridge.h: Removed openNewWindowWithURL:referrer:frameName: and
4133 added createWindowWithURL:referrer:frameName: and showWindow.
4135 * kwq/KWQKHTMLPartBrowserExtension.mm:
4136 (KHTMLPartBrowserExtension::createNewWindow): Call createWindowWithURL,
4137 and then showWindow after the window is set up. Also change the code that
4138 flips coordinates to always use the height of the first screen instead of
4139 using the height of the screen the window is on, which sounds right, but
4142 * kwq/KWQKHTMLPartImpl.mm:
4143 (KWQKHTMLPartImpl::bridgeForFrameName): Call createWindowWithURL and then
4144 showWindow in the case where we create a window.
4145 (KWQKHTMLPartImpl::urlSelected): Remove unused command-click code. The real
4146 command-click code is in the browser now.
4148 2002-10-09 Darin Adler <darin@apple.com>
4150 - fixed 3069749 -- crash in QString during third run of cvs-base
4153 (checkNodeAllocationPages): Added function to use for debugging.
4154 (_allocateNode): Clear the next pointer after removing a page from the free
4155 node list so that the free node list doesn't point at part of the used node list.
4156 (freeHandle): Change the code around so that the code to add the node to the
4157 free list works even in the case where this was the top from the used list.
4158 The old code would half-remove the node from the used list and not add it to
4159 the free list at all.
4161 2002-10-09 Darin Adler <darin@apple.com>
4163 * WebCore.pbproj/project.pbxproj: Project Builder wanted to set encodings
4164 for new files. Maybe Richard is not using the new Project Builder on all
4167 * kwq/KWQString.mm: (_allocateNode): Fix typo in comment.
4169 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::bridgeForFrameName): Tweak.
4171 2002-10-09 David Hyatt <hyatt@apple.com>
4173 This was an unintentional checkin. backing out.
4175 * khtml/xml/dom_elementimpl.cpp:
4176 (NamedAttrMapImpl::removeNamedItem):
4178 2002-10-08 Richard Williamson <rjw@apple.com>
4180 Added bridge method set the selection.
4182 * kwq/WebCoreBridge.h:
4183 * kwq/WebCoreBridge.mm:
4184 (-[WebCoreBridge setSelectionFrom:startOffset:to:endOffset:]):
4186 2002-10-08 Richard Williamson <rjw@apple.com>
4188 Added bridge method to get the DOM document.
4190 * kwq/WebCoreBridge.h:
4191 * kwq/WebCoreBridge.mm:
4192 (-[WebCoreBridge DOMDocument]):
4195 2002-10-08 Richard Williamson <rjw@apple.com>
4197 More DOM implementation.
4199 * khtml/dom/dom_text.h:
4200 * khtml/dom/dom_xml.h:
4201 * khtml/xml/dom_textimpl.h:
4202 * khtml/xml/dom_xmlimpl.h:
4204 * kwq/WebCoreDOMNode.mm:
4205 (DOM::CharacterDataImpl::createInstance):
4206 (DOM::TextImpl::createInstance):
4207 (DOM::ProcessingInstructionImpl::createInstance):
4208 (-[WebCoreDOMCharacterData data]):
4209 (-[WebCoreDOMCharacterData setData:]):
4210 (-[WebCoreDOMCharacterData length]):
4211 (-[WebCoreDOMCharacterData substringData::]):
4212 (-[WebCoreDOMCharacterData appendData:]):
4213 (-[WebCoreDOMCharacterData insertData::]):
4214 (-[WebCoreDOMCharacterData deleteData::]):
4215 (-[WebCoreDOMText splitText:]):
4216 (+[WebCoreDOMCDATASection CDATASectionWithImpl:DOM::]):
4217 (-[WebCoreDOMProcessingInstruction data]):
4218 (-[WebCoreDOMProcessingInstruction setData:]):
4219 * kwq/WebCoreDOMPrivate.h:
4220 * kwq/WebDOMElement.h:
4222 2002-10-08 Richard Williamson <rjw@apple.com>
4224 Implemented WebCoreDOMElement.
4225 Fixed extra deref of impl in subclasses
4228 * khtml/dom/dom_element.h:
4229 * khtml/dom/dom_node.h:
4230 * khtml/xml/dom_elementimpl.h:
4231 * khtml/xml/dom_nodeimpl.h:
4232 * kwq/WebCoreDOMDocument.mm:
4233 (-[WebCoreDOMDocument initWithImpl:DOM::]):
4234 * kwq/WebCoreDOMNode.mm:
4235 (DOM::NodeListImpl::createInstance):
4236 (DOM::NamedNodeMapImpl::createInstance):
4237 (DOM::AttrImpl::createInstance):
4238 (DOM::ElementImpl::createInstance):
4239 (-[WebCoreDOMNodeList length]):
4240 (-[WebCoreDOMNodeList item:]):
4241 (-[WebCoreDOMAttr initWithImpl:DOM::]):
4242 (+[WebCoreDOMDocumentFragment documentFragmentWithImpl:DOM::]):
4243 (-[WebCoreDOMElement tagName]):
4244 (-[WebCoreDOMElement setAttribute::]):
4245 (-[WebCoreDOMElement removeAttribute:]):
4246 (-[WebCoreDOMElement getAttributeNode:]):
4247 (-[WebCoreDOMElement removeAttributeNode:]):
4248 (-[WebCoreDOMElement getElementsByTagName:]):
4249 (-[WebCoreDOMElement getAttributeNS::]):
4250 (-[WebCoreDOMElement setAttributeNS:::]):
4251 * kwq/WebDOMDocument.h:
4252 * kwq/WebDOMElement.h:
4254 2002-10-08 Richard Williamson <rjw@apple.com>
4256 First cut at ObjC stubs for DOM API. Finished the
4257 main classes. Need to finish
4258 WebDOMElement, WebDOMElement, WebDOMElement,
4259 WebDOMCDATASection, WebDOMText, WebDOMComment,
4260 WebDOMCharacterData and
4262 * WebCore.pbproj/project.pbxproj:
4263 * khtml/dom/dom_doc.h:
4264 * khtml/dom/dom_element.h:
4265 * khtml/dom/dom_node.h:
4266 * khtml/xml/dom_docimpl.h:
4267 * khtml/xml/dom_elementimpl.h:
4268 * khtml/xml/dom_nodeimpl.h:
4269 * kwq/WebCoreDOM.h: Added.
4270 * kwq/WebCoreDOMDocument.mm: Added.
4271 (DOM::DOMImplementationImpl::createInstance):
4272 (DOM::DocumentTypeImpl::createInstance):
4273 (DOM::DocumentImpl::createInstance):
4274 (domStringToNSString):
4275 (NSStringToDOMString):
4276 (+[WebCoreDOMDocumentType documentTypeWithImpl:DOM::]):
4277 (-[WebCoreDOMDocumentType initWithImpl:DOM::]):
4278 (-[WebCoreDOMDocumentType dealloc]):
4279 (-[WebCoreDOMDocumentType DOM::]):
4280 (-[WebCoreDOMDocumentType name]):
4281 (-[WebCoreDOMDocumentType entities]):
4282 (-[WebCoreDOMDocumentType notations]):
4283 (-[WebCoreDOMDocumentType publicId]):
4284 (-[WebCoreDOMDocumentType systemId]):
4285 (-[WebCoreDOMDocumentType internalSubset]):
4286 (+[WebCoreDOMImplementation implementionatWithImpl:DOM::]):
4287 (-[WebCoreDOMImplementation initWithImpl:DOM::]):
4288 (-[WebCoreDOMImplementation dealloc]):
4289 (-[WebCoreDOMImplementation DOM::]):
4290 (-[WebCoreDOMImplementation hasFeature::]):
4291 (-[WebCoreDOMImplementation createDocument:::]):
4292 (+[WebCoreDOMDocument documentWithImpl:DOM::]):
4293 (-[WebCoreDOMDocument initWithImpl:DOM::]):
4294 (-[WebCoreDOMDocument dealloc]):
4295 (-[WebCoreDOMDocument DOM::]):
4296 (-[WebCoreDOMDocument doctype]):
4297 (-[WebCoreDOMDocument implementation]):
4298 (-[WebCoreDOMDocument documentElement]):
4299 (-[WebCoreDOMDocument createElement:]):
4300 (-[WebCoreDOMDocument createElementNS::]):
4301 (-[WebCoreDOMDocument createDocumentFragment]):
4302 (-[WebCoreDOMDocument createTextNode:]):
4303 (-[WebCoreDOMDocument createComment:]):
4304 (-[WebCoreDOMDocument createCDATASection:]):
4305 (-[WebCoreDOMDocument createProcessingInstruction::]):
4306 (-[WebCoreDOMDocument createAttribute:]):
4307 (-[WebCoreDOMDocument createAttributeNS::]):
4308 (-[WebCoreDOMDocument createEntityReference:]):
4309 (-[WebCoreDOMDocument getElementById:]):
4310 (-[WebCoreDOMDocument getElementsByTagName:]):
4311 (-[WebCoreDOMDocument getElementsByTagNameNS::]):
4312 (-[WebCoreDOMDocument importNode::]):
4313 * kwq/WebCoreDOMNode.mm: Added.
4314 (DOM::NamedNodeMapImpl::createInstance):
4315 (DOM::AttrImpl::createInstance):
4316 (+[WebCoreDOMNode nodeWithImpl:DOM::]):
4317 (-[WebCoreDOMNode initWithImpl:DOM::]):
4318 (-[WebCoreDOMNode DOM::]):
4319 (-[WebCoreDOMNode dealloc]):
4320 (-[WebCoreDOMNode nodeName]):
4321 (-[WebCoreDOMNode nodeValue]):
4322 (-[WebCoreDOMNode setNodeValue:]):
4323 (-[WebCoreDOMNode nodeType]):
4324 (-[WebCoreDOMNode parentNode]):
4325 (-[WebCoreDOMNode firstChild]):
4326 (-[WebCoreDOMNode lastChild]):
4327 (-[WebCoreDOMNode previousSibling]):
4328 (-[WebCoreDOMNode nextSibling]):
4329 (-[WebCoreDOMNode ownerDocument]):
4330 (-[WebCoreDOMNode insert:before:]):
4331 (-[WebCoreDOMNode replace:child:]):
4332 (-[WebCoreDOMNode removeChild:]):
4333 (-[WebCoreDOMNode hasChildNodes]):
4334 (-[WebCoreDOMNode cloneNode:]):
4335 (-[WebCoreDOMNode normalize]):
4336 (-[WebCoreDOMNode isSupported::]):
4337 (-[WebCoreDOMNode namespaceURI]):
4338 (-[WebCoreDOMNode prefix]):
4339 (-[WebCoreDOMNode setPrefix:]):
4340 (-[WebCoreDOMNode localName]):
4341 (+[WebCoreDOMNodeList nodeListWithImpl:DOM::]):
4342 (-[WebCoreDOMNodeList initWithImpl:DOM::]):
4343 (-[WebCoreDOMNodeList DOM::]):
4344 (-[WebCoreDOMNodeList dealloc]):
4345 (+[WebCoreDOMNamedNodeMap namedNodeMapWithImpl:DOM::]):
4346 (-[WebCoreDOMNamedNodeMap initWithImpl:DOM::]):
4347 (-[WebCoreDOMNamedNodeMap DOM::]):
4348 (-[WebCoreDOMNamedNodeMap dealloc]):
4349 (-[WebCoreDOMNamedNodeMap length]):
4350 (-[WebCoreDOMNamedNodeMap getNamedItem:]):
4351 (-[WebCoreDOMNamedNodeMap setNamedItem:]):
4352 (+[WebCoreDOMAttr attrWithImpl:DOM::]):
4353 (-[WebCoreDOMAttr initWithImpl:DOM::]):
4354 (-[WebCoreDOMAttr DOM::]):
4355 (-[WebCoreDOMAttr dealloc]):
4356 (-[WebCoreDOMAttr name]):
4357 (-[WebCoreDOMAttr specified]):
4358 (-[WebCoreDOMAttr value]):
4359 (-[WebCoreDOMAttr ownerElement]):
4360 (+[WebCoreDOMCDATASection CDATASectionWithImpl:DOM::]):
4361 (-[WebCoreDOMCDATASection initWithImpl:DOM::]):
4362 (-[WebCoreDOMCDATASection DOM::]):
4363 (-[WebCoreDOMCDATASection dealloc]):
4364 * kwq/WebCoreDOMPrivate.h: Added.
4365 * kwq/WebDOMDocument.h: Added.
4366 * kwq/WebDOMElement.h: Added.
4367 * kwq/WebDOMNode.h: Added.
4369 2002-10-09 David Hyatt <hyatt@apple.com>
4371 Fix a bug in my event handling code for layers. This makes
4372 the links on ESPN.com work again (bug 3051636). Yay!
4374 * khtml/rendering/render_layer.cpp:
4375 (RenderLayer::constructZTree):
4376 * khtml/xml/dom_elementimpl.cpp:
4377 (NamedAttrMapImpl::removeNamedItem):
4380 2002-10-07 Darin Adler <darin@apple.com>
4382 - fixed 3037353 -- align="middle" elements not horizontally centered
4384 * khtml/html/html_blockimpl.cpp: (HTMLDivElementImpl::parseAttribute):
4385 * khtml/html/html_tableimpl.cpp: (HTMLTablePartElementImpl::parseAttribute):
4386 Handle "middle" same as center in these two places.
4388 2002-10-07 Darin Adler <darin@apple.com>
4390 WebCore part of implementation of multipart forms posting.
4392 * kwq/WebCoreBridge.h: Add a contentType parameter to the bridge's
4393 [postWithURL:referrer:data:] method.
4395 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::submitForm):
4396 Extract the content type from the args, and pass it along to the bridge.
4398 2002-10-07 Darin Adler <darin@apple.com>
4400 - fixed 3011025 -- Page up/down is not working when text area has focus
4402 * kwq/KWQTextArea.mm:
4403 (-[KWQTextArea needsPanelToBecomeKey]): Return YES so we are considered a
4404 valid key view even when in normal tabbing mode. This fixes a problem with
4405 tabbing backwards into a text area.
4406 (-[KWQTextAreaTextView scrollPageUp:]): Added. Passes a scrollPageUp:
4407 selector along the responder chain if we are already scrolled to the top.
4408 (-[KWQTextAreaTextView scrollPageDown:]): Ditto.
4410 * kwq/KWQNSTextField.mm: Remove unnecessary overrides of textDidEndEditing.
4411 Turns out the real fix was to override display to do nothing as a workaround
4414 2002-10-07 Richard Williamson <rjw@apple.com>
4416 Added response to WebCore's CachedObject. This allows us to correctly
4417 emulate the WebResourceLoadDelegate API when 're'loading an item
4418 from the WebCore cache.
4420 * khtml/misc/loader.cpp:
4421 (CachedObject::~CachedObject):
4422 (CachedObject::setResponse):
4423 (Loader::receivedResponse):
4424 * khtml/misc/loader.h:
4425 * kwq/KWQLoaderImpl.h:
4426 * kwq/KWQLoaderImpl.mm:
4427 (-[WebCoreResourceLoader receivedResponse:]):
4428 (KWQCheckCacheObjectStatus):
4429 (KWQRetainResponse):
4430 (KWQReleaseResponse):
4431 * kwq/WebCoreBridge.h:
4432 * kwq/WebCoreResourceLoader.h:
4434 2002-10-06 Darin Adler <darin@apple.com>
4436 - fixed 3046737 -- infinite loop in font name matching code on some pages
4438 * kwq/KWQString.mm: (QString::replace): Removed the incorrect early exit if
4439 the passed in string was the empty string.
4441 2002-10-04 Darin Adler <darin@apple.com>
4443 * kwq/KWQKURL.mm: (KURL::parse): Fix code that adds "//" to file URLs.
4444 The code was including the extra slashes as part of the path, which they are not.
4445 Verified with the tests in the Tests directory.
4447 2002-10-03 Darin Adler <darin@apple.com>
4449 - fixed 3065730 -- Crash loading "My T-Mobile" page (in khtml::Decoder::decode)
4451 * khtml/misc/decoder.cpp: (Decoder::decode): Fixed a mistake that would cause
4452 the loop to run off the end of the buffer, introduced back on 2002-08-30.
4454 2002-10-03 Darin Adler <darin@apple.com>
4456 Add API to execute JavaScript.
4458 * kwq/WebCoreBridge.h: Add method.
4459 * kwq/WebCoreBridge.mm:
4460 (-[WebCoreBridge executeJavaScriptFromString:]): Call through to
4461 KHTML. But only if the document is not nil. We need to figure out
4462 what to do in the case where the document is nil.
4464 === Alexander-26 ===
4466 2002-10-02 Darin Adler <darin@apple.com>
4468 Moved "overURL" handling out of WebCore into WebKit and Alex.
4469 Also separated the two levels of the "element dictionary" so they
4470 don't rely on having the same keys.
4472 * khtml/khtml_part.h: Revert the APPLE_CHANGES to overURL.
4473 * khtml/khtml_part.cpp:
4474 (KHTMLPart::overURL): Removed the APPLE_CHANGES and just ifdef'd out
4475 the whole thing for our version.
4476 (KHTMLPart::khtmlMouseMoveEvent): Get rid of the APPLE_CHANGES and
4477 don't do any of the status bar setup.
4479 * kwq/KWQKHTMLPartImpl.h: Remove overURL.
4480 * kwq/KWQKHTMLPartImpl.mm: Ditto.
4482 * kwq/WebCoreBridge.h: Change keys so they don't match the WebKit ones so
4483 we don't accidentally rely on that. Add WebCoreElementLinkTarget.
4485 * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): Add code to
4486 set up WebCoreElementLinkTarget.
4488 2002-10-01 Darin Adler <darin@apple.com>
4490 - fixed 3055076 -- window.scroll does a window.scrollby, not a window.scrollto
4492 * khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): Moved a case so that the
4493 scroll code would scroll to, not by.
4495 2002-10-01 David Hyatt <hyatt@apple.com>
4497 Fix the case sensitivity problem with attribute names
4498 in HTML. They are now lower-cased when being queried
4499 from the DOM. Bug 3058145.
4501 * khtml/xml/dom_docimpl.cpp:
4502 (DocumentImpl::attrName):
4504 2002-10-01 David Hyatt <hyatt@apple.com>
4506 Make sure to keep the fix checked in for 1.18. That fix is
4509 * khtml/rendering/render_table.cpp:
4510 (RenderTable::addColInfo):
4512 2002-10-01 David Hyatt <hyatt@apple.com>
4514 Backing out change to render_table.cpp. The original logic
4515 (in version 1.16) is correct.
4517 * khtml/rendering/render_table.cpp:
4518 (RenderTable::addColInfo):
4520 2002-09-30 Darin Adler <darin@apple.com>
4522 * kwq/qt/qobject.h: Add the destroyed signal.
4524 (QObject::connect): Remove names of parentDestroyed and slotWidgetDestructed
4525 from the list of "slots OK to fail to connect without complaining".
4526 (QObject::QObject): Initialize the destroyed signal.
4528 * kwq/qt/qguardedptr.h:
4529 * kwq/KWQGuardedPtr.mm:
4532 Rearrange includes so qobject.h can include KWQSignal.h.
4534 * kwq/KWQSignal.mm: Tweak.
4536 * kwq/KWQSlot.mm: Added support for the parentDestroyed slot in KJS::WindowQObject
4537 and the slotWidgetDestructed slot in khtml::RenderWidget.
4539 2002-09-28 Darin Adler <darin@apple.com>
4541 Turn -Werror back on. There must have been some miscommunication
4542 about the fat build; this was supposed to have been on.
4544 * WebCore.pbproj/project.pbxproj: Add -Werror back.
4546 * kwq/WebCoreHistory.h: Add missing method to fix warning.
4547 * kwq/KWQKHistoryProvider.mm: Tweak.
4549 2002-09-28 Darin Adler <darin@apple.com>
4551 Give the next fat build a better chance of working with the
4552 new gcc without turning -Werror off.
4554 * khtml/css/cssparser.cpp: Use a macro to disable inlining.
4555 * khtml/html/htmltokenizer.cpp: Ditto.
4556 * khtml/misc/htmlhashes.cpp: Ditto.
4558 2002-09-28 Darin Adler <darin@apple.com>
4560 - fixed 3022441 -- scroll bar is missing in window created with window.open
4562 * khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): The checks for extra
4563 parameters to window.open were using isNull, which checks for a null ValueImp
4564 pointer, not an "Undefined".
4566 2002-09-28 Darin Adler <darin@apple.com>
4568 - fixed 2886111 -- changing font or size preference causes open
4569 windows to redraw incorrectly
4571 * khtml/rendering/render_table.cpp: (RenderTable::addColInfo):
4572 Fix logic about when a recalc of the minWidth and maxWidth is needed.
4574 Fixed bug where changing the text size multiplier would cause the
4575 window to redraw twice -- once with the text size changed, and then
4576 later with the layout changed.
4578 * khtml/khtmlview.h: Added unscheduleRelayout.
4579 * khtml/khtmlview.cpp: (KHTMLView::unscheduleRelayout): Added.
4581 * kwq/KWQKHTMLPartImpl.h: Added forceLayout.
4582 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::forceLayout): Call
4583 both layout and unscheduleRelayout.
4585 * kwq/WebCoreBridge.h: Add setNeedsLayout.
4586 * kwq/WebCoreBridge.mm:
4587 (-[WebCoreBridge forceLayout]): Call KWQKHTMLPartImpl::forceLayout.
4588 (-[WebCoreBridge setTextSizeMultiplier:]): Call forceLayout.
4590 2002-09-27 Darin Adler <darin@apple.com>
4592 * khtml/rendering/render_table.cpp: (RenderTable::addColInfo):
4593 Fixed a > that should have been a < that prevented tables from
4594 changing sizes when table minimum widths changed.
4596 2002-09-27 Darin Adler <darin@apple.com>
4598 - fixed 2937198 -- Checkboxes and radiobuttons don't align with title control in forms
4600 * kwq/qt/qcheckbox.h: Add baselinePosition override.
4601 * kwq/KWQCheckBox.mm: Tweak the size constants.
4602 (QCheckBox::baselinePosition): Implement this. Line up baseline two pixels
4603 above the bottom, not at the bottom.
4605 * kwq/qt/qradiobutton.h: Add baselinePosition override.
4606 * kwq/KWQRadioButton.mm: Tweak the size constants.
4607 (QRadioButton::baselinePosition): Implement this. Line up baseline two pixels
4608 above the bottom, not at the bottom.
4610 2002-09-27 Chris Blumenberg <cblu@apple.com>
4614 * kwq/KWQKConfigBase.mm:
4615 (KConfig::readEntry):
4616 * kwq/WebCoreViewFactory.h:
4618 2002-09-27 Richard Williamson <rjw@apple.com>
4620 Fixed 3059237: Visited links do not appear in a different color on yahoo.com
4621 Fixed 3051288: visited links are not colored in local files
4622 Fixed 3060158: REGRESSION: iframes added to session history
4623 Always use the canonical originally requested URL as the URL entered in history.
4625 * khtml/khtml_part.cpp:
4627 * kwq/KWQKHTMLPartImpl.h:
4628 * kwq/KWQKHTMLPartImpl.mm:
4629 (KWQKHTMLPartImpl::requestedURLString):
4630 * kwq/KWQKHistoryProvider.mm:
4631 * kwq/WebCoreBridge.h:
4632 * kwq/WebCoreHistory.h:
4634 2002-09-28 David Hyatt <hyatt@apple.com>
4636 Fix for 3058119, doctype of HTML docs should be null.
4638 * khtml/dom/dom_doc.cpp:
4640 2002-09-28 David Hyatt <hyatt@apple.com>
4642 DOM compliance. Fix for 3058100, hasFeature of HTML returns
4645 * khtml/xml/dom_docimpl.cpp:
4646 (DOMImplementationImpl::hasFeature):
4648 2002-09-27 Darin Adler <darin@apple.com>
4650 - fixed 3060487 -- error connecting member slot to signal (KWQObject)
4652 * kwq/KWQObject.mm: (QObject::connect): Add slotShowDocument to the list of slots that
4653 we don't care about hooking up.
4655 2002-09-26 Darin Adler <darin@apple.com>
4657 - fixed 2953256 -- JavaScript window.moveTo() and window.moveBy() methods do not work
4659 * kwq/KWQWindowWidget.mm: (KWQWindowWidget::frameGeometry): Fix calculation.
4660 It was returning the bottom left coordinate instead of the top left.
4662 2002-09-26 Darin Adler <darin@apple.com>
4664 - fixed 3060459 -- REGRESSION: crash leaving page that sets cookie in JavaScript
4667 * khtml/khtml_part.cpp: (KHTMLPart::begin): Call updatePolicyBaseURL to set
4668 the "policy base URL" on the documents so the cookie can be based on the URL
4669 of the main document.
4671 * khtml/dom/html_document.h: Add setPolicyBaseURL.
4672 * khtml/dom/html_document.cpp: (HTMLDocument::setPolicyBaseURL): Call the impl.
4674 * khtml/html/html_documentimpl.h: Add policyBaseURL, setPolicyBaseURL.
4675 * khtml/html/html_documentimpl.cpp: (HTMLDocumentImpl::setCookie): Pass the
4676 base URL that's stored here instead of getting at the part through the view,
4677 since the view will be 0 during the unload event.
4679 * kwq/KWQKHTMLPartImpl.h: Add updatePolicyBaseURL and setPolicyBaseURL.
4680 * kwq/KWQKHTMLPartImpl.mm:
4681 (KWQKHTMLPartImpl::updatePolicyBaseURL): Set the base URL based on the URL
4682 if this is the topmost part, based on the parent's policy base URL if this
4683 is not the topmost part.
4684 (KWQKHTMLPartImpl::setPolicyBaseURL): Change the policy base URL for this
4685 part and all the subparts.
4687 2002-09-26 Darin Adler <darin@apple.com>
4689 * kwq/WebCoreBridge.h: Use NSString for encoding name, not CFStringEncoding.
4690 * kwq/WebCoreBridge.mm:
4691 (-[WebCoreBridge addData:withOverrideEncoding:]): Ditto.
4693 2002-09-26 Chris Blumenberg <cblu@apple.com>
4695 Added WebCoreElementImageLocationKey to the element dictionary.
4697 * kwq/WebCoreBridge.h:
4698 * kwq/WebCoreBridge.mm:
4699 (-[WebCoreBridge elementAtPoint:]):
4701 === Alexander-25 ===
4703 2002-09-25 David Hyatt <hyatt@apple.com>
4705 Implement scrollX and scrollY on the window object. This
4706 gets brainjar closer to reality. :)
4708 * khtml/ecma/kjs_window.cpp:
4710 * khtml/ecma/kjs_window.h:
4712 2002-09-25 Darin Adler <darin@apple.com>
4714 Fix error with the color "indigo".
4716 * kwq/KWQColor.mm: (getNamedColors): There were some spaces in our
4717 color table so we wouldn't handle indianred or indigo.
4719 2002-09-25 Maciej Stachowiak <mjs@apple.com>
4721 - fixed 2854536 - New cookie policy: "accept cookies only from the
4722 same domain as the main page"
4724 * khtml/html/html_documentimpl.cpp:
4725 (HTMLDocumentImpl::setCookie):
4726 * kwq/KWQKCookieJar.h:
4727 * kwq/KWQKCookieJar.mm:
4728 (KWQKCookieJar::setCookie):
4729 * kwq/WebCoreCookieAdapter.h:
4730 * kwq/WebCoreCookieAdapter.m:
4731 (-[WebCoreCookieAdapter setCookies:forURL:policyBaseURL:]):
4733 2002-09-24 Darin Adler <darin@apple.com>
4735 - fixed 3057928 -- lstat private/etc/localtime repeatedly reported
4736 by fs_usage when mouse is moved
4738 * WebCore-tests.exp: Remove now-unneeded external entry points
4739 for QTime, QDate, QDateTime.
4741 * kwq/qt/qdatetime.h:
4742 * kwq/KWQDateTime.mm:
4743 Redid QDateTime using CoreFoundation instead of time/localtime.
4744 This avoids constantly hitting the disk when getting the current
4745 time to stuff into an event.
4747 2002-09-24 David Hyatt <hyatt@apple.com>
4749 Make sure we dispatch both a capturing and a bubbling event
4750 to target nodes. DOM lvl 2 event compliance.
4753 * khtml/xml/dom_nodeimpl.cpp:
4754 (NodeImpl::dispatchGenericEvent):
4756 2002-09-24 Richard Williamson <rjw@apple.com>
4758 Fixed 3055078. Ensure file: URLs have // before path.
4763 2002-09-24 David Hyatt <hyatt@apple.com>
4765 Better fix. Clears the boolean when CLASS has no value.
4766 This will keep the style system from thinking you have
4767 a class when you don't.
4769 * khtml/html/html_elementimpl.cpp:
4770 (HTMLElementImpl::parseAttribute):
4772 2002-09-24 David Hyatt <hyatt@apple.com>
4774 Fix updating of the document's notion of the focused node
4775 to happen on mouse down rather than click. This matches
4776 the behavior of all other browsers (IE, Gecko, etc.).
4778 This fixes the drawing of the outline on the brainjar.com
4781 * khtml/khtmlview.cpp:
4782 (KHTMLView::dispatchMouseEvent):
4784 2002-09-24 David Hyatt <hyatt@apple.com>
4786 Make sure that changes to the CLASS attribute mark the
4787 element as changed (as if a CSS property were added or
4790 This makes the brainjar.com rollovers work much better.
4792 * khtml/html/html_elementimpl.cpp:
4793 (HTMLElementImpl::parseAttribute):
4795 2002-09-24 Chris Blumenberg <cblu@apple.com>
4797 Renamed element info keys to WebElement* instead of WebContextMenuElement*
4799 * kwq/WebCoreBridge.h:
4800 * kwq/WebCoreBridge.mm:
4801 (-[WebCoreBridge elementAtPoint:]):
4803 2002-09-24 Darin Adler <darin@apple.com>
4805 - fixed 3056579 -- various crashes at http://www.auspost.com.au/
4807 Apparently the strings at this site were just the right length to expose a bug
4808 in our QString implementation, one that I probably introduced when fixing 3032072.
4809 One nice thing about this is that getting this correct could also result in a
4810 little bit of a speedup, as the internal buffer is used more.
4813 (QStringData::makeAscii): Set _maxAscii to QS_INTERNAL_BUFFER_CHARS when using
4814 the internal buffer instead of leaving it uninitialized.
4815 (QStringData::makeUnicode): Same for _maxUnicode.
4817 2002-09-24 Darin Adler <darin@apple.com>
4819 Remove the focus border hack, which was no longer doing us any good.
4821 * kwq/KWQNSTextField.h: Don't define FOCUS_BORDER_SIZE.
4822 * kwq/KWQNSTextField.mm: Remove KWQTextFieldCell.
4823 (-[KWQNSTextField updateSecureFieldFrame]): Don't inset by FOCUS_BORDER_SIZE.
4824 * kwq/qt/qlineedit.h: Don't override frameGeometry and setFrameGeometry any more.
4825 * kwq/KWQLineEdit.mm: (QLineEdit::sizeForCharacterWidth): Don't subtract
4826 the focus border size.
4828 2002-09-24 Darin Adler <darin@apple.com>
4830 * kwq/mac-encodings.txt: Remove constant for Japanese auto-detect.
4832 2002-09-24 Darin Adler <darin@apple.com>
4834 * kwq/KWQFileButton.mm: (KWQFileButton::paint): Fix typo.
4836 2002-09-24 Darin Adler <darin@apple.com>
4838 Some improvements to the file button, including displaying the file without the
4839 extension if it's set that way by the user, and using the system font rather
4840 than hard-coding "Lucida Grande".
4842 * kwq/KWQFileButton.h: Add _label field.
4843 * kwq/KWQFileButton.mm:
4844 (KWQFileButton::KWQFileButton): Set up label.
4845 (KWQFileButton::~KWQFileButton): Release label.
4846 (KWQFileButton::setFilename): Use NSFileManager componentsToDisplayForPath to
4847 figure out the appropriate label.
4848 (KWQFileButton::paint): Clip to passed-in rect, get font using systemFontOfSize,
4849 and use NSString drawing rather than our own.
4851 2002-09-23 David Hyatt <hyatt@apple.com>
4853 Found the problem with the CSS W3C page.
4855 * khtml/xml/dom_docimpl.cpp:
4856 (DocumentImpl::recalcStyleSelector):
4858 2002-09-23 Darin Adler <darin@apple.com>
4860 WebCore part of fixes for proper layering when drawing subframes.
4862 * kwq/KWQWidget.mm: (QWidget::paint): Use the parent view in the "WebCoreFrameView"
4863 case so we update the scroll view too, not just the HTML part. Also use the passed in
4864 rectangle instead of always using the view bounds.
4866 * kwq/KWQScrollView.mm: (QScrollView::updateContents): Call setNeedsDisplayInRect
4867 instead of displayRect.
4869 * kwq/KWQPainter.mm:
4870 (QPainter::drawRect): Use NSRectFill and NSFrameRect instead of NSBezierPath.
4871 (QPainter::fillRect): Ditto.
4873 2002-09-23 David Hyatt <hyatt@apple.com>
4875 Don't let alternate stylesheets delay render tree construction.
4877 * khtml/html/html_headimpl.cpp:
4878 (HTMLLinkElementImpl::HTMLLinkElementImpl):
4879 (HTMLLinkElementImpl::process):
4880 (HTMLLinkElementImpl::setStyleSheet):
4881 (HTMLLinkElementImpl::sheetLoaded):
4882 * khtml/html/html_headimpl.h:
4884 \2002-09-23 David Hyatt <hyatt@apple.com>
4886 Make overflow:auto and scroll map to hidden until we figure
4887 out something better.
4889 * khtml/css/cssstyleselector.cpp:
4891 2002-09-23 Darin Adler <darin@apple.com>
4893 More refinement of the AppKit hackery.
4895 * khtml/rendering/render_replaced.cpp:
4896 (RenderWidget::printObject): Pass in the painter and rect.
4898 * kwq/qt/qwidget.h: Take a painter and rect parameter.
4899 * kwq/KWQWidget.mm: (QWidget::paint): Use painter; not working yet to use rect.
4901 * kwq/KWQFileButton.h: Change paint to take painter and rect.
4902 * kwq/KWQFileButton.mm: (KWQFileButton::paint): Use painter.
4904 * kwq/qt/qpainter.h: Added paintingDisabled() function.
4905 * kwq/KWQPainter.mm: (QPainter::paintingDisabled): Added.
4907 2002-09-22 Darin Adler <darin@apple.com>
4909 Change code that moves NSViews out of the way to run inside drawRect
4910 after a layout change rather than running at layout time. This makes
4911 sure that views are in the right place when propagating dirty rects.
4913 * kwq/KWQKHTMLPartImpl.h: Add paint method and _needsToSetWidgetsAside flag.
4914 * kwq/KWQKHTMLPartImpl.mm:
4915 (KWQKHTMLPartImpl::KWQKHTMLPartImpl): Set _needsToSetWidgetsAside to false.
4916 (KWQKHTMLPartImpl::layout): Set _needsToSetWidgetsAside to true. Don't call
4917 moveWidgetsAside any more.
4918 (KWQKHTMLPartImpl::paint): Moved the code here from the bridge, but also call
4919 moveWidgetsAside if _needsToSetWidgetsAside flag is set.
4920 * kwq/WebCoreBridge.mm:
4921 (-[WebCoreBridge drawRect:withPainter:]): Call KWQKHTMLPartImpl::paint, which
4922 is where I moved this code.
4924 2002-09-21 Darin Adler <darin@apple.com>
4926 - fixed 3057265 -- REGRESSION: Crash loading http://www.undetectables.co.uk/
4928 * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest):
4929 Remove special case for javascript and about:blank that was leading to a crash.
4931 2002-09-21 Darin Adler <darin@apple.com>
4933 WebCore part of the new approach to AppKit drawing control.
4934 Works better than the previous try. Once we fix anomalies with focus rectangles
4935 and a minor problems with subframes this should work perfectly.
4937 * kwq/qt/qwidget.h: The paint() method isn't virtual any more. Also remove flushDrawing().
4938 * kwq/KWQWidget.mm: (QWidget::enableFlushDrawing): Do a flushWindowIfNeeded instead
4939 of requiring a separate flushDrawing() call to do a flushWindow.
4940 (QWidget::paint): Added. Calls displayRectIgnoringOpacity.
4942 * kwq/qt/qbutton.h: Remove paint() override.
4943 * kwq/KWQButton.mm: (QButton::QButton): No need for a subclass any more, so
4944 drop KWQNSButton. Also remove paint().
4946 * kwq/qt/qcombobox.h: Remove paint() override.
4947 * kwq/KWQComboBox.mm: (QComboBox::QComboBox): No need for a subclass any more, so
4948 drop KWQNSPopUpButton. Also remove paint() method.
4950 * kwq/qt/qlineedit.h: Remove paint() override.
4951 * kwq/KWQLineEdit.mm: Remove paint().
4953 * kwq/KWQFileButton.mm: (KWQFileButton::clicked): Fix typo. Was calling paint
4954 instead of clicked on the base class.
4956 * kwq/KWQNSTextField.h: Remove paint method.
4957 * kwq/KWQNSTextField.mm:
4958 (-[KWQNSTextField display]): Add a display method that does nothing to work around
4960 (-[KWQSecureTextField display]): Ditto.
4962 * khtml/rendering/render_frames.cpp: (RenderFrameSet::userResize): Remove call to flushDrawing.
4964 2002-09-20 Richard Williamson <rjw@apple.com>
4966 Don't modify selection if no appropriate DOM::Node under
4969 * khtml/khtml_part.cpp:
4970 (KHTMLPart::khtmlMouseMoveEvent):
4972 2002-09-20 Richard Williamson <rjw@apple.com>
4974 Assume triple click for selection if click count >= 3,
4975 not == 3, as in OS X.
4977 * khtml/khtml_part.cpp:
4978 (KHTMLPart::khtmlMousePressEvent):
4980 2002-09-20 Richard Williamson <rjw@apple.com>
4982 Fixed crasher in findTextSlave.
4983 * khtml/rendering/render_text.cpp:
4984 (RenderText::findTextSlave):
4987 * khtml/khtml_part.cpp:
4988 (startAndEndLineNodesIncludingNode):
4990 2002-09-20 Richard Williamson <rjw@apple.com>
4992 Made double and triple click selection behave like
4993 like other selection in OS X. That is, selection happens
4994 on mouse down, not mouse up, and can be extended by
4995 further dragging. Triple click followed by dragging extends
4996 the selection a line at a time.
4998 * khtml/khtml_events.cpp:
4999 * khtml/khtml_events.h:
5000 * khtml/khtml_part.cpp:
5001 (KHTMLPart::customEvent):
5004 (startAndEndLineNodesIncludingNode):
5005 (KHTMLPart::khtmlMousePressEvent):
5006 (KHTMLPart::khtmlMouseDoubleClickEvent):
5007 (KHTMLPart::khtmlMouseMoveEvent):
5008 * khtml/khtml_part.h:
5009 * khtml/khtmlpart_p.h:
5010 * khtml/khtmlview.cpp:
5011 * khtml/khtmlview.h:
5012 * khtml/xml/dom_elementimpl.cpp:
5013 (ElementImpl::setAttribute):
5014 * kwq/WebCoreBridge.mm:
5015 (-[WebCoreBridge mouseUp:]):
5017 2002-09-20 Darin Adler <darin@apple.com>
5019 * kwq/KWQFileButton.h: Add an icon.
5020 * kwq/KWQFileButton.mm:
5021 (KWQFileButton::KWQFileButton): Nil out icon.
5022 (KWQFileButton::~KWQFileButton): Release icon.
5023 (KWQFileButton::setFilename): Get icon with [NSWorkspace iconForFile:].
5024 (KWQFileButton::clicked): Set prompt string to "Choose", and start directory to "~".
5025 (KWQFileButton::sizeHint): Pad more for icon width.
5026 (KWQFileButton::frameGeometry): Ditto.
5027 (KWQFileButton::setFrameGeometry): Ditto.
5028 (KWQFileButton::paint): Draw icon. Draw "no file selected" if no filename.
5030 * kwq/KWQKFileItem.mm: Our "nonimplementation" is good enough. Stop complaining.
5031 * kwq/KWQKnetaccess.mm: Ditto. Also just extract path when asked to download.
5033 2002-09-20 Darin Adler <darin@apple.com>
5035 Some first steps toward implementing input=file.
5037 * khtml/rendering/render_form.cpp:
5038 (RenderFileButton::RenderFileButton): Create a KWQFileButton as the widget.
5039 (RenderFileButton::calcMinMaxWidth): Use sizeHint().
5040 (RenderFileButton::updateFromElement): Call setFilename().
5041 (RenderFileButton::select): Don't try to selectAll() on m_edit.
5043 * kwq/KWQFileButton.h: Added.
5044 * kwq/KWQFileButton.mm: Added.
5045 * kwq/qt/qhbox.h: Emptied.
5046 * kwq/KWQHBox.mm: Removed.
5047 * WebCore.pbproj/project.pbxproj: Removed KWQHBox.mm. Added KWQFileButton.
5049 2002-09-20 Darin Adler <darin@apple.com>
5051 - fixed 3056605 -- REGRESSION: blank page at http://www.2ch.net/2ch.html
5053 * kwq/mac-encodings.txt: When people say ShiftJIS, they really mean
5054 DOSJapanese. So do what they mean, not what they say.
5056 2002-09-20 Darin Adler <darin@apple.com>
5058 - fixed 3055339 -- repro crash in RenderPartObject::updateWidget()
5060 * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest):
5061 Only create a new part if we have no old part.
5063 * kwq/KWQtextstream.mm: Remove some of the "not implemented" logging.
5064 Once we have logged that the stream is not created correctly, there's no need
5065 to continue logging each time something is written out to the non-stream.
5067 2002-09-19 Richard Williamson <rjw@apple.com>
5069 Implemented double and triple click selection.
5071 * khtml/khtml_events.h:
5072 * khtml/khtml_part.cpp:
5073 (KHTMLPart::customEvent):
5074 (KHTMLPart::khtmlMouseDoubleClickEvent):
5077 (KHTMLPart::khtmlMouseTripleClickEvent):
5078 * khtml/khtml_part.h:
5079 * khtml/rendering/render_text.h:
5080 * kwq/WebCoreBridge.mm:
5081 (-[WebCoreBridge mouseUp:]):
5083 2002-09-19 Darin Adler <darin@apple.com>
5085 - fixed 3045651 -- null-dereference in DOM::CharacterDataImpl constructor
5086 setting up text area element
5088 * khtml/xml/dom_textimpl.cpp: (CharacterDataImpl::CharacterDataImpl):
5089 Set str to an empty DOMStringImpl instead of to 0. This was easier than
5090 going around finding all the places that don't like a str of 0.
5092 * WebCore.pbproj/project.pbxproj: Let PB sort things as it likes.
5094 === Alexander-24 ===
5096 2002-09-18 Darin Adler <darin@apple.com>
5098 - fixed 3037974 -- successful Find does not deselect text field
5100 * khtml/khtml_part.cpp: (KHTMLPart::checkCompleted):
5101 Turn off the code that restores the cursor position because we don't
5102 use the KHTML saveState/restoreState. But we should.
5104 * khtml/xml/dom_docimpl.cpp:
5105 (DocumentImpl::setSelection): Call setFocusNode(0), because on the
5106 Macintosh, selection and focus are mutually exclusive.
5107 (DocumentImpl::close): Remove no-longer-needed APPLE_CHANGES.
5108 (DocumentImpl::setFocusNode): Set focus to the KHTMLView when focus
5109 is being removed from a particular node. Clear the selection when
5110 focus is set on a particular node because on the Macintosh, selection
5111 and focus are mutually exclusive.
5113 * kwq/KWQKHTMLPartImpl.h: Add set/clearDocumentFocus functions that we can use
5114 to keep document's idea of focused node in sync. with AppKit's.
5115 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::setDocumentFocus): Added.
5116 (KWQKHTMLPartImpl::clearDocumentFocus): Added.
5118 * kwq/KWQNSTextField.mm:
5119 (-[KWQNSTextField becomeFirstResponder]): Call setDocumentFocus.
5120 (-[KWQSecureTextField becomeFirstResponder]): Call setDocumentFocus.
5122 * kwq/qt/qwidget.h: Removed endEditing().
5123 * kwq/KWQWidget.mm: (QWidget::clearFocus): Call clearDocumentFocus.
5124 (QWidget::endEditing): Removed.
5126 * khtml/rendering/render_form.h:
5127 * khtml/rendering/render_form.cpp:
5128 (RenderImageButton::RenderImageButton): Remove the KWQInvisibleButton
5129 hack, which is no longer needed.
5130 * kwq/KWQInvisibleButton.h: Removed.
5131 * kwq/KWQInvisibleButton.mm: Removed.
5132 * WebCore.pbproj/project.pbxproj: Removed KWQInvisibleButton.
5134 2002-09-18 Darin Adler <darin@apple.com>
5136 - fixed 3027470 -- hitting tab when the google.com text field is selected
5137 (all bars hidden) makes border flash
5139 * kwq/KWQNSTextField.mm:
5140 (-[KWQNSTextField textDidEndEditing:]): Added. Don't call super when the next
5141 valid key view is nil.
5142 (-[KWQSecureTextField textDidEndEditing:]): Ditto. Too bad we can't share code
5143 here. Maybe I'll figure out a way later.
5145 2002-09-17 Darin Adler <darin@apple.com>
5147 - fixed 3025022 -- Crash in KWQKHTMLPartImpl::redirectionTimerStartedOrStopped()
5149 * kwq/WebCoreBridge.mm: (-[WebCoreBridge dealloc]): Set the bridge on the part to
5150 nil just in case someone else is holding a reference, so we won't try to dispatch
5151 methods to an already-deallocated bridge.
5153 - fixed 3028476 -- illegal instruction crash in KWQTimerCallback timerFired
5155 * khtml/ecma/kjs_window.cpp: (WindowQObject::parentDestroyed):
5156 Remove APPLE_CHANGES to avoid calling killTimers(); we can call it
5157 now that we have a working implementation.
5158 * khtml/khtmlview.cpp:
5159 (KHTMLView::~KHTMLView): Remove APPLE_CHANGES that kills timers.
5160 All timers are killed by ~QObject now, just as in Qt.
5161 (KHTMLView::clear): Remove APPLE_CHANGES to avoid calling killTimers();
5162 we can call it now that we have a working implementation.
5165 (QObject::~QObject): Call killTimers().
5166 (QObject::startTimer): Keep a dictionary keyed by QObject, with a dictionary
5167 of timers for each, rather than one global dictionary. This makes it efficient
5168 to kill all the timers for an object.
5169 (QObject::killTimer): Update for new level of dictionary.
5170 (QObject::killTimers): Kill all the timers in this object's timer dictionary
5171 rather than all timers in the world.
5172 (QObject::inherits): Add an ERROR for the case where the class name is unknown.
5174 2002-09-17 Darin Adler <darin@apple.com>
5176 - fixed 3050818 -- Crash in relative-KURL constructor at site with _ in host name
5178 * kwq/KWQKURL.mm: Change _ so that it's allowed in host names.
5179 (KURL::KURL): If base URL is invalid, make result invalid too.
5181 2002-09-17 Richard Williamson <rjw@apple.com>
5183 * khtml/khtmlview.cpp:
5184 (KHTMLView::viewportMouseTripleClickEvent):
5185 Added implementation. Same as viewportMouseReleaseEvent
5186 except dispatches additional MouseTripleClickEvent event.
5188 (KHTMLView::viewportMouseDoubleClickEvent):
5189 Send extra release event. This emulates Qt
5192 * kwq/WebCoreBridge.mm:
5193 (-[WebCoreBridge mouseUp:]):
5194 Don't send extra release event here, instead send
5195 it in viewportMouseDoubleClickEvent and also in
5196 viewportMouseTripleClickEvent so DOM doesn't get
5201 Fixed divide by 0 problem.
5203 2002-09-17 Darin Adler <darin@apple.com>
5205 - fixed 2936933 -- Pages that claim to be UTF-8 but contain invalid
5206 sequences do not render at all
5208 Misc. speed improvements. Total 2.6% speedup for cvs-base.
5210 Improvements for signals.
5213 (QChar::isSpace): Add fast case for ASCII.
5214 (QChar::lower): Add fast case for ASCII.
5215 (QChar::upper): Add fast case for ASCII.
5217 * kwq/qt/qcolor.h: Just store RGB values, not NSColor objects.
5219 (QColor::QColor): No need to set color to nil.
5220 (QColor::name): Use QString::sprintf instead of NSString.
5221 (QColor::setNamedColor): Use KWQInvalidColor instead of nil.
5222 (QColor::getNSColor): Make an autoreleased NSColor.
5224 * kwq/KWQKHTMLPartImpl.mm:
5225 (moveWidgetsAside): Use isWidget() instead of dynamic_cast.
5227 * kwq/KWQSignal.h: use a QValueList instead of a fixed-size array.
5229 (KWQSignal::connect): Append to list.
5230 (KWQSignal::disconnect): Remove from list.
5231 (KWQSignal::call): Use the QValueList.
5234 (KWQSlot::call): Use static_cast instead of dynamic_cast where possible.
5236 * kwq/qt/qstring.h: Add return value to forceUnicode.
5238 (QString::fromStringWithEncoding): Implemented using the Text Encoding
5239 Converter instead of CFString.
5240 (compareIgnoringCaseForASCIIOnly): New function. Faster find.
5241 (QString::find): Separate case-sensitive from case-insensitive and speed
5243 (QString::stripWhiteSpace): Use the new forceUnicode for simplicity.
5244 (QString::simplifyWhiteSpace): Ditto.
5245 (QString::insert): Ditto.
5246 (QString::remove): Ditto.
5247 (QString::forceUnicode): Return the unicode pointer.
5248 (QString::fill): Use the new forceUnicode for simplicity.
5250 * kwq/WebCoreBridge.mm:
5251 (-[WebCoreBridge mouseUp:]): Fix two bugs. First, don't treat a slow
5252 click as a double click. Second, deliver a mouse release event even for
5253 a double click, as Qt does.
5255 2002-09-17 Richard Williamson <rjw@apple.com>
5257 * khtml/css/cssstyleselector.cpp:
5258 Fixed bug in KHTML that incorrectly modified '//' in fragment part of URL.
5260 * kwq/KWQKHistoryProvider.mm:
5261 Use string based API to add entry. May eventually remove NSURL from
5265 (KURL::canonicalURL):
5266 Simply return the urlString.
5269 Added "/" to http and https empty path URLs.
5273 Optimize ascii case.
5275 * kwq/WebCoreHistory.h:
5276 * kwq/WebCoreHistory.m:
5277 (-[WebCoreHistory addEntryForURLString:]):
5278 Use string based API to add entry.
5280 * kwq/kdecore/kurl.h:
5281 Defined methods to access canonical components,
5282 currently conditionally excluded.
5284 2002-09-16 David Hyatt <hyatt@apple.com>
5286 Fix the stylesheet loading regression on rubyfruit.
5288 * khtml/html/html_headimpl.cpp:
5289 (HTMLStyleElementImpl::HTMLStyleElementImpl):
5290 (HTMLStyleElementImpl::childrenChanged):
5291 (HTMLStyleElementImpl::isLoading):
5292 * khtml/html/html_headimpl.h:
5294 2002-09-13 David Hyatt <hyatt@apple.com>
5296 Landing code that makes textfields, buttons, checkboxes, radio
5297 buttons, and dropdown lists all draw correctly with respect to
5298 z-index. They all employ the same simple hack (just never paint
5299 unless KHTML tells them to).
5301 Unpatched widgets include the password field, the listbox, and the
5304 The only issue with regards to painting with the widgets I've
5305 patched is the textfield... its editor floats to the top when the
5306 field is being edited.
5308 Event handling will also be incorrect and will need to be patched
5311 * khtml/rendering/render_body.cpp:
5312 (RenderBody::printBoxDecorations):
5313 * khtml/rendering/render_replaced.cpp:
5314 (RenderWidget::printObject):
5318 (-[KWQNSButton drawRect:]):
5319 (-[KWQNSButton paint]):
5320 * kwq/KWQComboBox.mm:
5321 (-[KWQNSPopUpButton drawRect:]):
5322 (-[KWQNSPopUpButton paint]):
5323 (QComboBox::QComboBox):
5324 (QComboBox::insertItem):
5326 * kwq/KWQLineEdit.mm:
5328 * kwq/KWQNSTextField.h:
5329 * kwq/KWQNSTextField.mm:
5330 (-[KWQNSTextField paint]):
5332 * kwq/qt/qcombobox.h:
5333 * kwq/qt/qlineedit.h:
5336 2002-09-13 Richard Williamson (Home) <rjw@apple.com>
5338 Fixed navigation to link on mouse up after drag.
5340 * khtml/khtmlview.cpp:
5341 (KHTMLView::viewportMousePressEvent):
5342 (KHTMLView::viewportMouseDoubleClickEvent):
5343 Change khtml's definition of double click to be based on
5344 mouse up of second click, not mouse down.
5346 (KHTMLView::viewportMouseReleaseEvent):
5348 * kwq/WebCoreBridge.mm:
5349 (-[WebCoreBridge mouseUp:]):
5350 (-[WebCoreBridge mouseDown:]):
5351 Changed double click to be on mouse up with click count of two.
5353 2002-09-13 Darin Adler <darin@apple.com>
5355 Fix crash in slot code.
5357 * kwq/KWQSignal.mm: (KWQSignal::call): Copy the slots before
5358 calling through in case we are destroyed by the called function.
5360 2002-09-13 Darin Adler <darin@apple.com>
5362 Here's the *real* mistake that killed plugins. I accidentally
5363 stopped creating objects at all! Duh. Fixed now.
5365 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::createPart):
5366 Make a part for a plugin if we need one. Not a KHTMLPart, but
5369 2002-09-13 Darin Adler <darin@apple.com>
5371 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::createPart):
5372 Fix plugin-related crashes by making sure each part has a unique
5373 frame name. There may be something fundamentally wrong with how this
5376 2002-09-13 Richard Williamson (Home) <rjw@apple.com>
5378 Made justified text work correctly in khtml for rendering
5379 and selection. Optimized selection point calculation by
5380 only doing characters measurements once.
5382 * khtml/rendering/font.cpp:
5383 (Font::floatCharacterWidths):
5384 * khtml/rendering/font.h:
5385 * khtml/rendering/render_text.cpp:
5386 (TextSlave::checkSelectionPoint):
5387 (RenderText::position):
5388 * kwq/KWQFontMetrics.mm:
5389 (QFontMetrics::width):
5390 (QFontMetrics::floatWidth):
5391 (QFontMetrics::floatCharacterWidths):
5392 * kwq/KWQPainter.mm:
5393 (QPainter::drawText):
5394 * kwq/WebCoreTextRenderer.h:
5395 * kwq/qt/qfontmetrics.h:
5397 2002-09-13 Darin Adler <darin@apple.com>
5399 Quiet error messages related to the slot/signal changes.
5401 * khtml/khtml_part.cpp:
5402 (KHTMLPart::startAutoScroll): Ifdef this out.
5403 (KHTMLPart::stopAutoScroll): Ditto.
5406 (QObject::connect): Add two more expected members to the list for
5407 setStatusBarText and slotViewCleared.
5409 * kwq/KWQSignal.h: Allow 4 slots per signal.
5410 I don't want to make it a variable number, but we can if we have to.
5412 (KWQSignal::connect): Support multiple slots.
5413 (KWQSignal::disconnect): Support multiple slots.
5414 (KWQSignal::call): Support multiple slots.
5416 2002-09-13 Darin Adler <darin@apple.com>
5418 Fix assertion that happens on any page that has a non-HTML frame.
5420 We were sending signals for objects in m_objects that are only supposed
5421 to be sent for frames in m_frames. The fix is to use actual slot/signal
5422 connections instead of our hard-coded logic.
5424 * kwq/KWQKHTMLPartImpl.h: Add signals for started and completed.
5425 * kwq/KWQKHTMLPartImpl.mm:
5426 (KHTMLPart::completed): Emit completed signal.
5427 (KHTMLPart::started): Emit started signal.
5428 (KWQKHTMLPartImpl::KWQKHTMLPartImpl): Create signals.
5431 (QObject::connect): Write out an error message if we see any signal connections
5432 to signals that aren't implemented, with a hardwired exception list for ones we
5433 either aren't ever going to do or just haven't gotten around to yet.
5435 * kwq/KWQSignal.h: Add support for signals that take bool and KIO::Job *.
5437 (KWQSignal::connect): Put in an actual ERROR call for the case where this fails.
5438 (KWQSignal::disconnect): Put in an actual ERROR call for the case where it fails.
5439 (KWQSignal::call): Add overloads for bool and KIO::Job *.
5441 * kwq/KWQSlot.h: Add support for slots that take bool and KIO::Job *.
5443 (KWQSlot::KWQSlot): Add four new members.
5444 (KWQSlot::call): Add overloads for bool and KIO::Job * and support for the new
5447 2002-09-12 Darin Adler <darin@apple.com>
5449 * kwq/KWQAssertions.h: Update assertions from from the copy in WebFoundation.
5450 * WebCorePrefix.h: Remove NSURLPathUtilities.h include.
5452 Use even more of the KHTML code so we get referrers in one more place.
5454 * kwq/WebCoreBridge.h: Add referrer to createChildFrameNamed.
5456 * khtml/khtml_part.h: Less APPLE_CHANGES, no substantive change.
5457 * khtml/khtml_part.cpp:
5458 (KHTMLPart::requestFrame): Use more of this, less APPLE_CHANGES.
5459 (KHTMLPart::requestObject): Ditto.
5460 (KHTMLPart::processObjectRequest): Ditto.
5462 * khtml/rendering/render_frames.h: Less APPLE_CHANGES.
5463 * khtml/rendering/render_frames.cpp: Less APPLE_CHANGES.
5465 * kwq/kparts/browserextension.h: Add lockHistory/setLockHistory and
5468 * kwq/khtml/khtml_ext.h: Add openURLNotify.
5469 * kwq/KWQKHTMLPartImpl.h: Add openURLNotify.
5470 * kwq/KWQKHTMLPartBrowserExtension.mm:
5471 (KHTMLPartBrowserExtension::openURLNotify): Implement.
5473 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::createPart):
5474 Changed name from requestFrame. Do less work.
5476 * kwq/qt/qtimer.h: Add singleShot.
5478 (+[KWQSingleShotTimerTarget targetWithQObject:member:]): Added.
5479 Used to implement singleShot.
5480 (-[KWQSingleShotTimerTarget dealloc]): Ditto.
5481 (-[KWQSingleShotTimerTarget timerFired:]): Ditto.
5482 (QTimer::singleShot): Added.
5484 * kwq/qt/qmap.h: Add contains.
5486 * kwq/qt/qvaluelist.h: Add iterator return value for append and prepend.
5487 * kwq/KWQValueListImpl.h: Add iterator return value for appendNode
5489 * kwq/KWQValueListImpl.mm:
5490 (KWQValueListImpl::appendNode): Add iterator.
5491 (KWQValueListImpl::prependNode): Add iterator.
5493 * kwq/kparts/part.h: Add openURL.
5495 2002-09-12 Richard Williamson <rjw@apple.com>
5497 Rewrite of khtml selection drawing code. Now does
5498 a delta between old and new selection and only
5499 draw those objects that have changed. Selection
5500 drawing is now MUCH faster.
5502 * khtml/rendering/render_root.cpp:
5503 (enclosingPositionedRect):
5504 (RenderRoot::setSelection):
5505 (RenderRoot::clearSelection):
5506 * khtml/rendering/render_root.h:
5508 Added additional absolute position property to render node
5509 stuff for debug render tree view.
5511 * kwq/WebCoreBridge.h:
5512 * kwq/WebCoreBridge.mm:
5513 (-[WebCoreBridge copyRenderNode:copier:]):
5515 2002-09-12 David Hyatt <hyatt@apple.com>
5517 KHTML was butchering the laws of background propagation from
5518 the <body> to the <html>. This fixes the logical flaws and
5519 makes some of the geekiest CSS on the planet render correctly. ;)
5521 * khtml/rendering/render_body.cpp:
5522 (RenderBody::printBoxDecorations):
5523 * khtml/rendering/render_html.cpp:
5524 (RenderHtml::printBoxDecorations):
5526 2002-09-12 David Hyatt <hyatt@apple.com>
5528 Make fixed positioned elements work when you scroll. We were
5529 just missing the implementation of a QScrollView method.
5531 * kwq/KWQScrollView.mm:
5532 (QScrollView::setStaticBackground):
5534 2002-09-12 David Hyatt <hyatt@apple.com>
5536 Fix a bug in KHTML that leads it to claim cached @imported stylesheets
5537 are not loaded (when in fact they are).
5539 This fixes the W3C CSS page.
5541 * khtml/css/css_ruleimpl.cpp:
5542 (CSSImportRuleImpl::init):
5544 2002-09-12 Chris Blumenberg <cblu@apple.com>
5546 Fixed livepage crash. It is naughty to divide by 0 so we now check before doing that.
5548 * khtml/rendering/render_box.cpp:
5549 (RenderBox::printBackground):
5551 2002-09-12 David Hyatt <hyatt@apple.com>
5553 Fix crash on trekweb.com. My simplified FOUC code was a little
5556 * khtml/html/html_headimpl.cpp:
5557 (HTMLLinkElementImpl::setStyleSheet):
5558 (HTMLStyleElementImpl::childrenChanged):
5560 2002-09-12 David Hyatt <hyatt@apple.com>
5562 Fix the Warcraft 3 page on blizzard.com so that the relative
5563 positioned blocks inside centered tables inside enclosing tables
5564 with percentage widths work correctly.
5566 This fix also causes the textfields on mrskin.com to show up
5569 * khtml/rendering/render_box.cpp:
5570 (RenderBox::RenderBox):
5571 (RenderBox::setPos):
5572 * khtml/rendering/render_box.h:
5573 * khtml/rendering/render_container.cpp:
5574 (RenderContainer::addChild):
5575 * khtml/rendering/render_layer.cpp:
5576 (RenderLayer::constructZTree):
5577 * khtml/rendering/render_object.h:
5579 2002-09-11 Maciej Stachowiak <mjs@apple.com>
5581 Don't show the window here any more, now that WebBrowser will set
5582 it up to be shown properly itself.
5584 * kwq/KWQKHTMLPartBrowserExtension.mm:
5585 (KHTMLPartBrowserExtension::createNewWindow):
5587 2002-09-11 David Hyatt <hyatt@apple.com>
5589 Fix horizontal scrolling. The HTML render object lies. It lies,
5592 * khtml/rendering/render_layer.cpp:
5593 (RenderLayer::constructZTree):
5595 2002-09-11 David Hyatt <hyatt@apple.com>
5597 Fix clipping to work with layers. This fixes the marquee
5598 (once again) on livepage.apple.com.
5600 * khtml/rendering/render_box.cpp:
5601 (RenderBox::getClipRect):
5602 * khtml/rendering/render_box.h:
5603 * khtml/rendering/render_container.cpp:
5604 (RenderContainer::addChild):
5605 (RenderContainer::removeChildNode):
5606 * khtml/rendering/render_flow.cpp:
5607 (RenderFlow::setStyle):
5608 (RenderFlow::printObject):
5609 * khtml/rendering/render_layer.cpp:
5610 (RenderLayer::enclosingPositionedAncestor):
5611 (RenderLayer::convertToLayerCoords):
5612 (RenderLayer::paint):
5613 (RenderLayer::constructZTree):
5614 * khtml/rendering/render_layer.h:
5615 * khtml/rendering/render_object.h:
5616 * khtml/rendering/render_replaced.cpp:
5617 (RenderReplaced::print):
5619 2002-09-11 Darin Adler <darin@apple.com>
5621 * kwq/KWQAssertions.h: Updated copy of the assertions macros (made by script).
5623 2002-09-11 Darin Adler <darin@apple.com>
5625 - fixed 3047552 -- crash using CFNotification calls on an NSNotification
5627 * kwq/KWQWindowWidget.mm:
5628 (KWQWindowWidget::KWQWindowWidget): Create a KWQWindowWidgetDeleter, and
5629 hook it up to the notification.
5630 (KWQWindowWidget::~KWQWindowWidget): Disconnect the KWQWindowWidgetDeleter
5632 (-[KWQWindowWidgetDeleter initWithWindowWidget:]): Store a pointer.
5633 (-[KWQWindowWidgetDeleter deleteWindowWidget]): Do a delete.
5635 2002-09-11 Darin Adler <darin@apple.com>
5637 - fixed 3021137 -- changing font prefs doesn't redraw frames
5638 other than the main frame
5640 * kwq/WebCoreSettings.m: Renamed to WebCoreSettings.mm.
5641 * kwq/WebCoreSettings.mm: Renamed from WebCoreSettings.m so I could
5643 (-[WebCoreSettings _updateAllViews]): Iterate over all KWQKHTMLPartImpl
5644 instances, calling setNeedsReapplyStyles on each one.
5645 * WebCore.pbproj/project.pbxproj: Updated for name change.
5647 * kwq/KWQKHTMLPartImpl.h: Add instances() and mutableInstances().
5648 Get rid of frameExists(), findFrame(), and frames().
5649 * kwq/KWQKHTMLPartImpl.mm:
5650 (KWQKHTMLPartImpl::KWQKHTMLPartImpl): Add to instance list.
5651 (KWQKHTMLPartImpl::~KWQKHTMLPartImpl): Remove from instance list.
5652 (KWQKHTMLPartImpl::requestFrame): Update to not use frameExists().
5653 (KWQKHTMLPartImpl::overURL): Update to not use frameExists, and improve
5654 handling of various cases.
5655 (KWQKHTMLPartImpl::mutableInstances): Create and return instance list.
5657 * kwq/WebCoreBridge.h: Add setNeedsReapplyStyles; already implemented
5660 * khtml/khtml_part.cpp:
5661 (KHTMLPart::findFrame): Remove APPLE_CHANGES.
5662 (KHTMLPart::frameExists): Remove APPLE_CHANGES.
5663 (KHTMLPart::frames): Remove APPLE_CHANGES.
5665 2002-09-10 Darin Adler <darin@apple.com>
5667 WebCore part of support for the "Referer" header.
5669 * khtml/khtml_part.cpp:
5670 (KHTMLPart::urlSelected): Use much more of this function.
5671 (KHTMLPart::submitForm): Use much more of this function.
5673 * kwq/KWQKHTMLPartBrowserExtension.mm:
5674 (KHTMLPartBrowserExtension::createNewWindow): Parse the
5675 referrer out of the URLArgs and pass it along.
5677 * kwq/KWQKHTMLPartImpl.h: Change parameters to urlSelected
5678 and submitForm to allow KHTML to do more of the work. Add
5679 referrer helper function.
5680 * kwq/KWQKHTMLPartImpl.mm:
5681 (KWQKHTMLPartImpl::bridgeForFrameName): Pass referrer of nil
5682 when opening a blank window.
5683 (KWQKHTMLPartImpl::referrer): Extract referrer from metadata.
5684 (KWQKHTMLPartImpl::openURLRequest): Pass referrer from args
5686 (KWQKHTMLPartImpl::urlSelected): Remove code that duplicates
5687 what's in KHTMLPart. Also pass referrer from args through the
5689 (KWQKHTMLPartImpl::submitForm): Ditto.
5691 * kwq/kdeui/kmessagebox.h: Add information member function.
5692 * kwq/KWQKMessageBox.mm: (KMessageBox::information): Implement.
5694 * kwq/kdecore/kurl.h: Add encode_string member function.
5696 (KURL::KURL): Fix buffer overflow bug, and add an assert so we
5697 will notice these overflows even when using the static buffer.
5698 (KURL::parse): Added a similar assert, even though I didn't fix
5699 any overflow bug here.
5700 (KURL::encode_string): Implemented this, but didn't test it.
5702 * kwq/KWQLoaderImpl.mm: (KWQServeRequest): Pass referrer through
5705 * kwq/WebCoreBridge.h: Add referrer parameters to loadURL, postWithURL,
5706 openNewWindowWithURL, and startLoadingResource.
5708 * kwq/kparts/browserextension.h: Implement setDoPost, setContentType,
5709 const version of metaData().
5711 * kwq/qt/qstring.h: Implement fromLatin1(const char *, int).
5713 * WebCore-tests.exp: Not sure why, but I needed to remove isMalformed,
5714 and the tests seem to still work with it removed.
5716 2002-09-11 David Hyatt <hyatt@apple.com>
5718 This patch fixes a slew of bugs. It is an implementation
5719 of the IE extensions offsetLeft, offsetTop, and offsetParent.
5720 Konqueror actually had implementations for these properties
5721 that were totally wrong, leading any DHTML that would use
5722 these properties (like the DHTML on brainjar.com or livepage.apple.com)
5723 to misposition child elements.
5725 With these properties now implemented, the menus on brainjar.com
5726 position correctly, and the marquee on livepage.apple.com once
5727 again shows up (and now you can see how I've regressed clipping
5728 by not shoving it into the layer system as well).
5730 Next up will be fixing the clipping bug on livepage.apple.com.
5732 * khtml/ecma/kjs_dom.cpp:
5733 (DOMNode::getValueProperty):
5734 * khtml/rendering/render_flow.cpp:
5735 (RenderFlow::offsetHeight):
5736 (RenderFlow::offsetLeft):
5737 (RenderFlow::offsetTop):
5738 * khtml/rendering/render_flow.h:
5739 * khtml/rendering/render_object.cpp:
5740 (RenderObject::offsetLeft):
5741 (RenderObject::offsetTop):
5742 (RenderObject::offsetParent):
5743 * khtml/rendering/render_object.h:
5745 2002-09-10 David Hyatt <hyatt@apple.com>
5747 Get more elements on mrskin painting as well as the menus
5750 * khtml/rendering/render_flow.cpp:
5751 (RenderFlow::layout):
5752 * khtml/rendering/render_layer.cpp:
5753 (RenderLayer::constructZTree):
5754 * khtml/rendering/render_object.cpp:
5755 (RenderObject::setLayouted):
5756 * khtml/rendering/render_object.h:
5758 2002-09-10 David Hyatt <hyatt@apple.com>
5760 Fix the CSS clip property.
5762 * khtml/css/cssparser.cpp:
5763 (StyleBaseImpl::parseValue):
5764 * khtml/css/cssstyleselector.cpp:
5765 * khtml/ecma/kjs_css.cpp:
5766 (DOMCSSStyleDeclaration::tryPut):
5767 * khtml/rendering/render_box.cpp:
5768 (RenderBox::calcClip):
5769 * khtml/rendering/render_flow.cpp:
5770 (RenderFlow::printObject):
5771 * khtml/rendering/render_replaced.cpp:
5772 (RenderReplaced::print):
5773 * khtml/rendering/render_style.cpp:
5774 (StyleVisualData::StyleVisualData):
5775 (RenderStyle::diff):
5776 * khtml/rendering/render_style.h:
5778 2002-09-10 Richard Williamson <rjw@apple.com>
5780 Fixed broken DOM handling of click count. DOM click
5781 events can be tested with Labyrinth/Test/html/mousetest.html.
5782 Preparation work for double and triple click selection.
5784 * khtml/khtml_events.cpp:
5785 * khtml/khtml_events.h:
5786 * khtml/khtml_part.cpp:
5787 (KHTMLPart::khtmlMouseTripleClickEvent):
5788 * khtml/khtml_part.h:
5789 * khtml/khtmlview.cpp:
5790 (KHTMLView::viewportMousePressEvent):
5791 (KHTMLView::viewportMouseTripleClickEvent):
5792 (KHTMLView::viewportMouseDoubleClickEvent):
5793 (KHTMLView::viewportMouseReleaseEvent):
5794 * khtml/khtmlview.h:
5796 (QMouseEvent::QMouseEvent):
5797 * kwq/WebCoreBridge.mm:
5798 (-[WebCoreBridge mouseUp:]):
5799 (-[WebCoreBridge mouseDown:]):
5802 2002-09-10 David Hyatt <hyatt@apple.com>
5804 Fix FOUC to behave correctly. I was smoking crack when I
5805 implemented this the first time (mainly because KHTML had
5806 a badly named API that didn't mean even remotely what
5807 I thought it should).
5809 * khtml/html/html_headimpl.cpp:
5810 (HTMLLinkElementImpl::process):
5811 (HTMLLinkElementImpl::setStyleSheet):
5812 (HTMLLinkElementImpl::sheetLoaded):
5813 (HTMLStyleElementImpl::childrenChanged):
5814 (HTMLStyleElementImpl::sheetLoaded):
5816 2002-09-10 Maciej Stachowiak <mjs@apple.com>
5818 WebCore part of fix for:
5820 2952837 - Slide shows on homepage.mac.com don't show pictures, captions
5821 2942073 - Deferring [BrowserDocument goToInitialURL] can cause problems
5822 3021360 - second window pops up on 'Search' at chrysler.com
5823 3030485 - Unexpected new window created with no scroll bars at sony.com
5825 * kwq/KWQKHTMLPartBrowserExtension.mm:
5826 (KHTMLPartBrowserExtension::createNewWindow): Reuse existing
5827 frame if possible. Pass frame name when opening a new window.
5828 * kwq/KWQKHTMLPartImpl.mm:
5829 (KWQKHTMLPartImpl::bridgeForFrameName): Don't warn when opening a
5830 new window. Check non-descendant frames too.
5831 (KWQKHTMLPartImpl::urlSelected): Pass frame name when opening window.
5832 * kwq/WebCoreBridge.h: Add frameName argument to openNewWindowWithURL:.
5834 2002-09-10 Darin Adler <darin@apple.com>
5836 Add back the APPLE_CHANGES for a few frame cases. We need to do some real testing
5837 before we remove our alternate versions of these (but I still hope we do remove them).
5839 * khtml/khtml_part.cpp:
5840 (KHTMLPart::findFrame): Back to the old way.
5841 (KHTMLPart::frameExists): Ditto.
5842 (KHTMLPart::frames): Ditto.
5844 2002-09-10 Darin Adler <darin@apple.com>
5846 - fixed 2942809 -- remove all direct access to "WebKit" defaults from WebCore
5848 * kwq/WebCoreSettings.h: Add willLoadImagesAutomatically and userStyleSheetLocation.
5849 * kwq/WebCoreSettings.m:
5850 (-[WebCoreSettings _updateAllViews]): Added. Placeholder for a function that will
5851 cause all views to update styles and layout.
5852 (-[WebCoreSettings setStandardFontFamily:]): Call _updateAllViews if a change happened.
5853 (-[WebCoreSettings setFixedFontFamily:]): Ditto.
5854 (-[WebCoreSettings setSerifFontFamily:]): Ditto.
5855 (-[WebCoreSettings setSansSerifFontFamily:]): Ditto.
5856 (-[WebCoreSettings setCursiveFontFamily:]): Ditto.
5857 (-[WebCoreSettings setFantasyFontFamily:]): Ditto.
5858 (-[WebCoreSettings setMinimumFontSize:]): Ditto.
5859 (-[WebCoreSettings setDefaultFontSize:]): Ditto.
5860 (-[WebCoreSettings setDefaultFixedFontSize:]): Ditto.
5861 (-[WebCoreSettings setWillLoadImagesAutomatically:]): Added.
5862 (-[WebCoreSettings willLoadImagesAutomatically]): Added.
5863 (-[WebCoreSettings setUserStyleSheetLocation:]): Added. Call _updateAllViews if a change happened.
5864 (-[WebCoreSettings userStyleSheetLocation]): Added.
5866 * WebCore.exp: Add WebCoreSettings to the exported class list.
5868 * kwq/KWQKHTMLSettings.mm: Get settings from WebCoreSettings rather than going
5869 directly at WebKit user defaults.
5870 * kwq/KWQKConfigBase.mm:
5871 (KConfig::readNumEntry): Check key.
5872 (KConfig::readUnsignedNumEntry): Use WebCoreSettings to get the value of the
5873 "JavaScript can open windows automatically" setting, rather than going directly
5874 at a WebKit user default.
5875 (KConfig::readColorEntry): Remove log message. This is implemented well enough.
5877 - fixed 3015877 -- either wean WebCore from _web_URLFromString, or make it public API in WebFoundation
5879 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::redirectionTimerStartedOrStopped):
5880 Use KURL to make an NSURL rather than using [NSURL _web_URLWithString:].
5881 * kwq/KWQKJavaAppletWidget.mm: (KJavaAppletWidget::setBaseURL): Ditto.
5882 * kwq/WebCoreBridge.mm: (-[WebCoreBridge completeURLForDOMString:]): Ditto.
5884 After fixing the above bugs, I noticed that I could remove the WebFoundation dependency.
5886 * WebCore.pbproj/project.pbxproj: Remove WebFoundation framework.
5888 * kwq/WebCoreBridge.h: Replace reportError with reportBadURL.
5889 * kwq/KWQLoaderImpl.mm: (KWQServeRequest): Use reportBadURL instead of reportError.
5890 This was the last bit of direct dependency on WebFoundation.
5892 Do some preparation work for implementing "referrer".
5894 * khtml/khtml_part.cpp: Remove lots of APPLE_CHANGES and compile more
5895 original code. This in preparation for using the "referrer" code from KHTML.
5896 * khtml/khtmlview.h: Ditto.
5897 * khtml/misc/loader.cpp: Ditto.
5899 * kwq/kdecore/kurl.h: Add things needed by code formerly inside APPLE_CHANGES.
5900 * kwq/KWQKURL.mm: (KURL::hasRef): Ditto.
5901 (urlcmp): Implement in a simple-minded way. Needed by some code formerly inside
5902 APPLE_CHANGES. We can make a more full-featured version when and if we need it.
5903 * kwq/kio/global.h: Ditto.
5904 * kwq/kio/job.h: Ditto.
5905 * kwq/kio/jobclasses.h: Ditto.
5906 * kwq/KWQKjobclasses.mm: Ditto.
5907 * kwq/kparts/browserextension.h:
5908 * kwq/kparts/part.h: Ditto.
5909 * kwq/qt/qstringlist.h: Ditto.
5910 * kwq/KWQStringList.mm: (QStringList::pop_front): Ditto.
5911 * kwq/qt/qvaluelist.h: Ditto.
5912 * kwq/KWQValueListImpl.h: Ditto.
5913 * kwq/KWQValueListImpl.mm: (KWQValueListImpl::isEqual): Ditto.
5917 * kwq/KWQApplication.mm:
5918 (QApplication::setOverrideCursor): Don't report an error for this, it's OK
5920 (QApplication::restoreOverrideCursor): Ditto.
5922 2002-09-09 Richard Williamson <rjw@apple.com>
5924 Implemented disable images automatically (2896319).
5926 * kwq/KWQKHTMLSettings.mm:
5927 (KHTMLSettings::autoLoadImages):
5929 2002-09-09 Darin Adler <darin@apple.com>
5931 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyView):
5932 Remove stray printf.
5934 2002-09-09 David Hyatt <hyatt@apple.com>
5936 Switching over to the layer system for the handling of mouse
5939 * khtml/rendering/render_flow.cpp:
5940 (RenderFlow::nodeAtPoint):
5941 * khtml/rendering/render_image.cpp:
5942 (RenderImage::nodeAtPoint):
5943 * khtml/rendering/render_layer.cpp:
5944 (RenderLayer::paint):
5945 (RenderLayer::nodeAtPoint):
5946 (RenderLayer::constructZTree):
5947 * khtml/rendering/render_layer.h:
5948 * khtml/rendering/render_object.cpp:
5949 (RenderObject::nodeAtPoint):
5950 * khtml/xml/dom_docimpl.cpp:
5951 (DocumentImpl::prepareMouseEvent):
5952 * kwq/WebCoreBridge.mm:
5953 (-[WebCoreBridge drawRect:withPainter:]):
5954 (-[WebCoreBridge elementAtPoint:]):
5957 2002-09-09 Darin Adler <darin@apple.com>
5959 * khtml/rendering/render_layer.h: Add a call to delete to fix a storage leak.
5961 2002-09-09 Darin Adler <darin@apple.com>
5963 * khtml/misc/helper.cpp: (khtml::setNamedColor): Add a missing return I spotted.
5965 * kwq/KWQApplication.mm:
5967 * kwq/KWQCompletion.mm:
5970 * kwq/KWQFontInfo.mm:
5971 * kwq/KWQFontMetrics.mm:
5972 * kwq/KWQInputDialog.mm:
5973 * kwq/KWQKConfigBase.mm:
5974 * kwq/KWQKFileDialog.mm:
5975 * kwq/KWQKFileItem.mm:
5976 * kwq/KWQKGlobalSettings.mm:
5977 * kwq/KWQKHTMLSettings.mm:
5978 * kwq/KWQKIconLoader.mm:
5979 * kwq/KWQKMimeType.mm:
5980 * kwq/KWQKSimpleConfig.mm:
5981 * kwq/KWQKjobclasses.mm:
5982 * kwq/KWQKnetaccess.mm:
5983 * kwq/KWQLineEdit.mm:
5984 * kwq/KWQScrollView.mm:
5987 * kwq/KWQbrowserinterface.mm:
5988 * kwq/KWQtextstream.mm:
5990 Change various LOG(NotYetImplemented) to ERROR, FATAL, or removed them entirely.
5991 This will help us with the task of getting every last one either "not implemented
5992 on purpose" or implemented. I'm not sure the NotYetImplemented log channel is
5993 useful, because it's chock full of continuous "direction not implemented" messages.
5997 Removed the NeverImplemented logging channel. The distinction is no longer worth
5998 keeping around. We use NotYetImplemented instead.
6000 2002-09-08 Darin Adler <darin@apple.com>
6002 Switch over to new assertion/logging scheme.
6004 * kwq/KWQAssertions.h: Added.
6005 * kwq/KWQAssertions.m: Added.
6006 * kwq/KWQLogging.h: Added.
6007 * kwq/KWQLogging.m: Added.
6008 * kwq/kwqdebug.h: Removed.
6009 * kwq/kwqdebug.mm: Removed.
6010 * WebCore.pbproj/project.pbxproj: Update to reflect above changes.
6012 * kwq/KWQApplication.mm:
6015 * kwq/KWQComboBox.mm:
6016 * kwq/KWQCompletion.mm:
6018 * kwq/KWQDrawUtil.mm:
6020 * kwq/KWQFontInfo.mm:
6021 * kwq/KWQFontMetrics.mm:
6024 * kwq/KWQInputDialog.mm:
6025 * kwq/KWQInvisibleButton.mm:
6026 * kwq/KWQKConfigBase.mm:
6027 * kwq/KWQKFileDialog.mm:
6028 * kwq/KWQKFileItem.mm:
6029 * kwq/KWQKGlobalSettings.mm:
6030 * kwq/KWQKHTMLPartImpl.mm:
6031 * kwq/KWQKHTMLSettings.mm:
6032 * kwq/KWQKIconLoader.mm:
6034 * kwq/KWQKLocale.mm:
6035 * kwq/KWQKMimeType.mm:
6036 * kwq/KWQKPartsEvent.mm:
6037 * kwq/KWQKSimpleConfig.mm:
6040 * kwq/KWQKWinModule.mm:
6041 * kwq/KWQKjobclasses.mm:
6042 * kwq/KWQKnetaccess.mm:
6044 * kwq/KWQLineEdit.mm:
6045 * kwq/KWQListBox.mm:
6046 * kwq/KWQListImpl.mm:
6047 * kwq/KWQLoaderImpl.mm:
6049 * kwq/KWQPaintDeviceMetrics.mm:
6050 * kwq/KWQPainter.mm:
6053 * kwq/KWQScrollView.mm:
6058 * kwq/KWQbrowserinterface.mm:
6059 * kwq/KWQtextcodec.mm:
6060 * kwq/KWQtextstream.mm:
6062 * kwq/WebCoreBridge.mm:
6063 * kwq/WebCoreCookieAdapter.m:
6064 * kwq/WebCoreHistory.m:
6065 * kwq/WebCoreImageRendererFactory.m:
6066 * kwq/WebCoreTextRendererFactory.m:
6067 * kwq/WebCoreViewFactory.m:
6068 Update to use new assertions and logging macros.
6069 In some cases, just removed unneeded includes.
6071 2002-09-08 David Hyatt <hyatt@apple.com>
6073 Landing the new layer system and turning it on for painting of
6074 all types of positioned blocks (and for painting the root
6075 and HTML layers as well).
6077 Event handling is not yet using the new layer system, so you
6078 may see oddities like DHTML menus now displaying correctly but
6079 events not working (since the event code may still be stacking
6080 incorrectly and think the DHTML is behind other content).
6082 * khtml/css/cssstyleselector.cpp:
6083 * khtml/rendering/render_box.cpp:
6084 (RenderBox::setStyle):
6085 (RenderBox::calcHeight):
6086 (RenderBox::calcAbsoluteHorizontal):
6087 * khtml/rendering/render_container.cpp:
6088 (RenderContainer::addChild):
6089 (RenderContainer::removeChildNode):
6090 * khtml/rendering/render_flow.cpp:
6091 (RenderFlow::setStyle):
6092 (RenderFlow::printObject):
6093 (RenderFlow::printSpecialObjects):
6094 (RenderFlow::layout):
6095 (RenderFlow::layoutSpecialObjects):
6096 (RenderFlow::layoutBlockChildren):
6097 (RenderFlow::insertSpecialObject):
6098 * khtml/rendering/render_flow.h:
6099 * khtml/rendering/render_html.cpp:
6100 (RenderHtml::layout):
6101 * khtml/rendering/render_image.cpp:
6102 (RenderImage::printObject):
6103 * khtml/rendering/render_layer.cpp:
6104 (RenderLayer::updateLayerPosition):
6105 (RenderLayer::enclosingAncestor):
6106 (RenderLayer::addChild):
6107 (RenderLayer::convertToLayerCoords):
6108 (RenderLayer::paint):
6109 (RenderLayer::constructZTree):
6110 (RenderLayer::RenderZTreeNode::constructLayerList):
6111 * khtml/rendering/render_layer.h:
6112 * khtml/rendering/render_replaced.cpp:
6113 (RenderReplaced::print):
6114 (RenderWidget::printObject):
6115 * khtml/rendering/render_root.cpp:
6116 (RenderRoot::calcHeight):
6117 (RenderRoot::layout):
6118 (RenderRoot::printObject):
6119 * khtml/rendering/render_root.h:
6120 * khtml/rendering/render_style.cpp:
6121 (StyleBoxData::StyleBoxData):
6122 (StyleBoxData::operator==):
6123 * khtml/rendering/render_style.h:
6124 * kwq/WebCoreBridge.mm:
6125 (-[WebCoreBridge drawRect:withPainter:]):
6128 2002-09-06 Maciej Stachowiak <mjs@apple.com>
6130 Fix another instance of the same problem:
6135 2002-09-06 Maciej Stachowiak <mjs@apple.com>
6137 Fix optimized build:
6140 (QString::detachInternal): Uselessly Initialize newData to NULL
6141 since the compiler can't tell that FATAL won't return.
6143 2002-09-06 Darin Adler <darin@apple.com>
6145 * kwq/WebCoreResourceLoader.h:
6146 Define WebCoreResourceHandle protocol.
6148 * kwq/kio/jobclasses.h:
6149 * kwq/KWQKjobclasses.mm:
6150 * kwq/KWQLoaderImpl.mm: (KWQServeRequest):
6151 * kwq/WebCoreBridge.h:
6152 Use WebCoreResourceHandle instead of WebResourceHandle.
6154 * kwq/KWQString.mm: (QString::fill): Fix case where the new string
6155 is going to be empty, but the old string was not. Before, it leaked
6158 * kwq/character-sets.txt: Updated to 2002-06-14 version from 2001-08-23 version.
6159 * kwq/mac-encodings.txt: Updated encoding names to include ones gleaned from
6160 the I18N-Charset-1.17 Perl module.
6162 * kwq/KWQCharsets.mm: Formatting tweaks.
6164 2002-09-06 Richard Williamson <rjw@apple.com>
6166 Start using khtml's 'toAdd' parameter to justify text.
6168 * khtml/rendering/font.cpp:
6171 Normalize all calls to get width to minimize use of
6172 ObjC. Will make it easier to use IMPL cache later.
6174 * kwq/KWQFontMetrics.mm:
6175 (QFontMetrics::width):
6176 (QFontMetrics::floatWidth):
6177 (QFontMetrics::floatCharacterWidth):
6179 Pass additional 'toAdd' parameter.
6181 * kwq/KWQPainter.mm:
6182 (QPainter::drawText):
6183 * kwq/qt/qpainter.h:
6185 Remove methods now that width calls are normalized to single
6187 * kwq/WebCoreTextRenderer.h:
6190 === Alexander-22 ===
6192 2002-09-05 Richard Williamson <rjw@apple.com>
6194 Add the first child text node of the element to the
6195 element dictionary. This will be used as a link 'label'.
6197 * kwq/WebCoreBridge.h:
6198 * kwq/WebCoreBridge.mm:
6199 (-[WebCoreBridge elementAtPoint:]):
6201 2002-09-05 Richard Williamson <rjw@apple.com>
6205 * khtml/khtml_part.cpp:
6206 (KHTMLPart::closeURL):
6208 2002-09-05 Richard Williamson <rjw@apple.com>
6210 Always call KHTMLPart::closeURL when a new document is loaded.
6212 Added support for saving and restoring document state in
6213 the back/forward list. Document state includes form data.
6215 * khtml/khtml_part.cpp:
6216 (KHTMLPart::openURL):
6217 (KHTMLPart::closeURL):
6219 * kwq/KWQKHTMLPartImpl.h:
6220 * kwq/KWQKHTMLPartImpl.mm:
6221 (KWQKHTMLPartImpl::saveDocumentState):
6222 (KWQKHTMLPartImpl::restoreDocumentState):
6223 * kwq/WebCoreBridge.h:
6224 * kwq/WebCoreBridge.mm:
6225 (-[WebCoreBridge saveDocumentState]):
6226 (-[WebCoreBridge restoreDocumentState]):
6228 2002-09-04 Darin Adler <darin@apple.com>
6230 * WebCore.pbproj/project.pbxproj:
6232 * kwq/KWQPainter.mm:
6234 * kwq/WebCoreCookieAdapter.h:
6235 * kwq/WebCoreImageRenderer.h:
6236 * kwq/WebCoreImageRendererFactory.h:
6237 Tweaks, no substantive changes.
6239 2002-09-02 David Hyatt <hyatt@apple.com>
6241 Tweak the damage rect testing to account for the fact that a child
6242 layer may fall entirely outside the bounds of its parent layer.
6244 * khtml/rendering/render_layer.cpp:
6245 (RenderLayer::constructZTree):
6247 2002-08-31 Darin Adler <darin@apple.com>
6249 - fixed 3038336 -- repro crash in QTextDecoder trying to display UTF-16 file
6251 * kwq/mac-encodings.txt: Hook up the UTF-16 encoding to the name iso-10646-ucs-2.
6252 We have a long way to go to get this right. There are almost certainly going to
6253 be other bugs with 16-bit character pages.
6255 * kwq/KWQKHTMLSettings.mm: (KHTMLSettings::encoding): Just return "latin1",
6256 not "NSISOLatin1StringEncoding".
6258 * kwq/KWQString.mm: (QString::fromStringWithEncoding): Pass true for the
6259 "pay attention to BOM" flag.
6261 * khtml/rendering/render_object.cpp: Take out unneeded APPLE_CHANGES.
6263 2002-08-30 Ken Kocienda <kocienda@apple.com>
6265 Fixed a problem in this function where broken UTF-8 would cause a crash.
6267 * WebCore.pbproj/project.pbxproj:
6269 (QString::fromStringWithEncoding)
6271 2002-08-30 Richard Williamson <rjw@apple.com>
6273 Removed debugging log.
6276 (QString::fromStringWithEncoding):
6278 2002-08-30 Richard Williamson <rjw@apple.com>
6280 Made decoder more robust wrt nulls in content. Changed use
6281 of QCString to null safe QString rather than modify
6284 * khtml/misc/decoder.cpp:
6287 * khtml/misc/decoder.h:
6289 (QString::fromStringWithEncoding):
6291 2002-08-30 Darin Adler <darin@apple.com>
6293 - fixed 3027407 -- Console error refers to closed bug
6295 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::bridgeForFrameName):
6296 Update bug number from 2959902 to 2942073.
6298 - fixed 3027532 -- can't tab into or out of textareas
6300 * kwq/KWQTextArea.h: Add setFont:.
6301 * kwq/KWQTextArea.mm:
6302 (-[KWQTextArea _createTextView]): Make a KWQTextAreaTextView.
6303 (-[KWQTextArea textDidChange:]): Send text changed messages when the text
6304 is changed, not when done editing. I did this for KWQNSTextField a while ago;
6305 it's tragic that AppKit leads us to have two separate classes for these nearly
6307 (-[KWQTextArea setFont:]): Call setFont on the text view.
6308 (-[KWQTextArea becomeFirstResponder]): Call makeFirstResponder on the text view.
6309 (-[KWQTextArea nextKeyView]): Do that voodoo, just like KWQNSTextField.
6310 (-[KWQTextArea previousKeyView]): Ditto.
6311 (-[KWQTextArea nextValidKeyView]): Ditto.
6312 (-[KWQTextArea previousValidKeyView]): Ditto.
6313 (-[KWQTextAreaTextView insertTab:]): Select the next key view. We don't get this
6314 automatically because this is not a field editor. But being a field editor leads
6315 to other unwanted behavior.
6316 (-[KWQTextAreaTextView insertBacktab:]): Ditto.
6317 (-[KWQTextAreaTextView becomeFirstResponder]): Select all on entry.
6318 (-[KWQTextAreaTextView shouldDrawInsertionPoint]): Don't draw insertion point
6319 when we are not the first responder.
6320 (-[KWQTextAreaTextView selectedTextAttributes]): Don't draw the selection when
6321 we are not the first responder.
6323 * kwq/qt/qtextedit.h:
6324 * kwq/KWQTextEdit.mm: (QTextEdit::setFont): Call -[KWQTextArea setFont:].
6325 (QTextEdit::focusPolicy): Always return TabFocus, because the top level widget
6326 is not an NSControl so QWidget::focusPolicy does not suffice.
6328 * kwq/qt/qwidget.h: Make focusPolicy virtual.
6331 * kwq/KWQFont.mm: (QFont::getNSFont): Add this helper function
6332 so we don't have to repeat this in multiple places.
6334 * kwq/KWQLineEdit.mm: (QLineEdit::setFont): Use QFont::getNSFont.
6336 * force-clean-timestamp: For you poor bastards who aren't using the new
6337 Project Builder yet.
6339 2002-08-30 Darin Adler <darin@apple.com>
6341 * WebCore.pbproj/project.pbxproj: Allowed the new Project Builder to put in
6342 encodings for each file.
6344 2002-08-29 David Hyatt <hyatt@apple.com>
6346 Begin connecting the layer system. The root box and the <html>
6347 box now construct layers for themselves. Those layers are
6348 connected in a layer tree properly and they correctly update
6351 Implemented all the code for layer construction and for keeping
6352 the layer tree in sync with the render object tree.
6354 The goal is to get the layer tree fully constructed and correct
6355 (with lots of testing) before actually switching over to it for
6358 This change requires a clean of WebCore.
6360 * force-clean-timestamp:
6361 * khtml/rendering/render_box.cpp:
6362 (RenderBox::RenderBox):
6363 (RenderBox::~RenderBox):
6364 (RenderBox::setPos):
6365 (RenderBox::positionChildLayers):
6366 * khtml/rendering/render_box.h:
6367 * khtml/rendering/render_container.cpp:
6368 (RenderContainer::~RenderContainer):
6369 (RenderContainer::addChild):
6370 (RenderContainer::removeChildNode):
6371 * khtml/rendering/render_container.h:
6372 * khtml/rendering/render_html.cpp:
6373 (RenderHtml::RenderHtml):
6374 * khtml/rendering/render_layer.cpp:
6375 (RenderLayer::updateLayerPosition):
6376 * khtml/rendering/render_layer.h:
6377 * khtml/rendering/render_object.h:
6378 * khtml/rendering/render_root.cpp:
6379 (RenderRoot::RenderRoot):
6381 === Alexander-21 ===
6383 2002-08-28 David Hyatt <hyatt@apple.com>
6385 Implement the flattening algorithm that walks the layer
6386 hierarchy and produces the correct layer list for back
6387 to front painting. (Still under construction. Not used yet.)
6389 * khtml/rendering/render_layer.cpp:
6391 (RenderLayer::RenderZTreeNode::constructLayerList):
6392 * khtml/rendering/render_layer.h:
6394 2002-08-28 Richard Williamson <rjw@apple.com>
6397 Added underline to visited links.
6398 Made outline for active normal and visited links gray.
6400 * khtml/css/html4.css:
6402 2002-08-28 Richard Williamson <rjw@apple.com>
6404 Fixed outline of for active link style.
6406 * khtml/css/html4.css:
6407 * kwq/KWQPainter.mm:
6408 (QPainter::drawLine):
6410 2002-08-28 David Hyatt <hyatt@apple.com>
6412 Adding knowledge to the style system of auto z-indices. The old
6413 code doesn't use this yet, but the new layering code will.
6415 Also wrote the ztree construction function (not used yet) and
6416 stubbed out the display list flattening routines.
6418 * khtml/rendering/render_layer.cpp:
6419 (RenderLayer::convertToLayerCoords):
6420 (RenderLayer::constructZTree):
6421 (RenderLayer::constructLayerList):
6422 * khtml/rendering/render_layer.h:
6423 * khtml/rendering/render_style.cpp:
6424 (StyleBoxData::StyleBoxData):
6425 * khtml/rendering/render_style.h:
6427 2002-08-28 Darin Adler <darin@apple.com>
6429 - fixed 2977587 -- JavaScript code that reads the values of text areas
6430 misses the last line if no trailing CR
6432 * kwq/KWQTextArea.mm: (-[KWQTextArea paragraphs]):
6434 2002-08-28 David Hyatt <hyatt@apple.com>
6436 Putting design notes and API details for the layering system
6437 into the header file.
6439 * khtml/rendering/render_layer.h:
6441 2002-08-28 Darin Adler <darin@apple.com>
6443 * kwq/mac-encodings.txt: Sort all the character set names alphabetically, and use all lower case.
6444 * kwq/make-charset-table.pl: Require lower-case sorted lists of character set names.
6446 2002-08-28 Darin Adler <darin@apple.com>
6448 - fixed 3032148 -- Button not disabled in page
6450 * kwq/KWQWidget.mm: (QWidget::setEnabled): Call setEnabled:
6451 on the NSView if it implements it.
6453 2002-08-28 Darin Adler <darin@apple.com>
6455 - fixed 3030212 -- Problems rendering pages that specify "x-mac-roman" character
6456 set (like our Danish help pages)
6458 * kwq/mac-encodings.txt: Added x-mac-roman as an alias for macintosh.
6460 2002-08-27 Darin Adler <darin@apple.com>
6462 * force-clean-timestamp: Dave's changes require a full build. I found out the
6463 hard way, by debugging for a while.
6465 2002-08-27 Richard Williamson <rjw@apple.com>
6467 * kwq/WebCoreBridge.h:
6469 Fixed constants to conform to WebKit. These need to be shared.
6471 2002-08-27 David Hyatt <hyatt@apple.com>
6473 Change relative positioned blocks so that they are treated as special objects and
6474 painted last along with absolutely positioned blocks and floaters. Note that the
6475 entire special object system is fundamentally flawed, and it needs to be replaced
6476 with a real layering subsystem.
6478 This checkin at least gets relatively positioned divs painting correctly some of
6479 the time (in the cases where the containing blocks of absolute and relative positioned
6480 divs happen to be the same). It does not, however, deal with the problem of ensuring
6481 correct stacking of positioned elements with different containing blocks.
6483 render_layer.h and .cpp include a new implementation (not used yet, just the beginnings)
6484 of a layering subsystem that I am going to be working on over the next few days
6485 that will eventually be responsible for handling event dispatching and painting and that
6486 will also understand how to deal with form controls and other objects that have Cocoa
6489 * WebCore.pbproj/project.pbxproj:
6490 * khtml/rendering/render_box.cpp:
6491 (RenderBox::RenderBox):
6492 * khtml/rendering/render_box.h:
6493 * khtml/rendering/render_flow.cpp:
6494 (RenderFlow::printObject):
6495 (RenderFlow::printSpecialObjects):
6496 (RenderFlow::layoutSpecialObjects):
6497 (RenderFlow::layoutBlockChildren):
6498 (RenderFlow::insertSpecialObject):
6499 * khtml/rendering/render_flow.h:
6500 * khtml/rendering/render_layer.cpp: Added.
6501 (RenderLayer::RenderLayer):
6502 (RenderLayer::~RenderLayer):
6503 (RenderLayer::addChild):
6504 (RenderLayer::removeChild):
6505 * khtml/rendering/render_layer.h: Added.
6507 2002-08-27 Darin Adler <darin@apple.com>
6509 - fixed 3031952 -- null-dereference in dispatchToUInt32 closing window
6511 * khtml/ecma/kjs_window.cpp: (History::getValueProperty):
6512 Use Undefined(), not Value() for an error result. Value() is pure evil.
6514 2002-08-27 Darin Adler <darin@apple.com>
6516 - fixed 3021018 -- Crash selecting from popup just after choosing radio button
6518 * kwq/KWQComboBox.mm:
6519 (QComboBox::QComboBox): Pass the widget in when creating the cell.
6520 (-[KWQPopUpButtonCell initWithWidget:]): Store a widget pointer.
6521 (-[KWQPopUpButtonCell trackMouse:inRect:ofView:untilMouseUp:]): Get to the bridge
6522 and tell it to defer loading while we track the mouse.
6524 * kwq/KWQKHTMLPartImpl.h: Add bridgeForWidget.
6525 * kwq/KWQKHTMLPartImpl.mm:
6526 (KWQKHTMLPartImpl::nextKeyViewForWidget): Use nodeForWidget and partForNode.
6527 (KWQKHTMLPartImpl::bridgeForWidget): Added. Use nodeForWidget and partForNode.
6528 (KWQKHTMLPartImpl::partForNode): Move code here from nextKeyViewForWidget.
6529 (KWQKHTMLPartImpl::nodeForWidget): Move code here from nextKeyViewForWidget.
6531 * kwq/WebCoreBridge.h: Add defersLoading and setDefersLoading. Both are already
6534 2002-08-26 David Hyatt <hyatt@apple.com>
6536 Fix for 3026006. Ensure that TABLES inside <div>s with align="right"
6537 are properly positioned. <div align="right"> was completely
6538 unimplemented. This patch implements it for the common cases
6539 (nested divs, tables within divs, and paragraphs).
6541 * khtml/css/html4.css:
6543 2002-08-26 Darin Adler <darin@apple.com>
6545 * khtml/rendering/render_list.cpp:
6546 Make file match the original KDE more closely (no substantive change).
6548 2002-08-26 Richard Williamson <rjw@apple.com>
6552 Added WebCoreHistory
6554 * WebCore.pbproj/project.pbxproj:
6556 Added WebCoreHistory
6558 * kwq/KWQKHistoryProvider.mm:
6559 Use WebCoreHistory to determine visited link.
6561 * kwq/WebCoreHistory.h: Added.
6562 * kwq/WebCoreHistory.m: Added.
6564 Stage 1. Use WebKit's WebHistory. Writing
6565 of history and initialization still handled
6566 by Alex until stage 2.
6568 (+[WebCoreHistory setSharedHistory:]):
6569 (+[WebCoreHistory sharedHistory]):
6570 (-[WebCoreHistory containsURL:]):
6575 Optimization, use strcmp when both src and dst have valid ascii.
6578 2002-08-26 David Hyatt <hyatt@apple.com>
6580 - Patch drawText to understand right-aligned drawing.
6581 - Fixed <ul> bullets so that they position properly.
6582 - Fixed bugs with horizontal and vertical positioning of
6585 * khtml/rendering/render_list.cpp:
6586 (RenderListMarker::printObject):
6587 * kwq/KWQPainter.mm:
6588 (QPainter::drawText):
6590 2002-08-24 Darin Adler <darin@apple.com>
6592 - fixed 3032072 -- Crash on reload in DOM::DocumentImpl::~DocumentImpl [unified]()
6594 This was a tough one to debug.
6595 Turned out to be a subtle bug in our new QConstString implementation.
6598 (QStringData::makeAscii): Don't invalidate the Unicode buffer unless the ASCII
6599 buffer is taking over the internal buffer from the Unicode. In other cases, it's
6600 important not to invalidate the Unicode because it can result in the Unicode being
6601 freed and re-created when unicode() is called, which is disastrous in the QConstString
6602 case because we can't free the Unicode.
6603 (QStringData::makeUnicode): Make the corresponding change for ASCII too. In this
6604 case, it's just an optimization, not a bug fix.
6605 (QString::insert), (QString::remove), (QString::fill), (QString::operator+=):
6606 Mark the other string invalid whenever we modify either the ASCII or the Unicode
6607 string. This was handled correctly for some operations before, but not all, and it
6608 now matters because makeAscii and makeUnicode will now allow this state.
6610 Fixed a separate QString problem; I think I may have introduced this one.
6613 (QString::getNSString): Since by ASCII, we actually mean ISO Latin 1, we can't use
6614 [NSString stringWithCString:]. Use CFStringCreateWithCString instead, pass
6615 CFStringCreateWithCString as the encoding, and use autorelease. We shouldn't really
6616 use the term ASCII in this class for the 8-bit-per-character buffer. Something more
6617 like Latin1 would be a more accurate way to refer to it. Maybe I'll do that renaming
6618 after talking to Richard about it on Monday.
6620 Fixed a small storage leak.
6622 * khtml/css/css_valueimpl.cpp: (CSSPrimitiveValueImpl::cleanup): Added braces to
6623 fix obviously-incorrect if/else grouping.
6625 2002-08-23 Darin Adler <darin@apple.com>
6627 Got the kurl-test in the Tests directory working again.
6629 * kwq/KWQKURL.mm: (KURL::KURL): Fixed problem where relative path resolution code
6630 for "../" could eat up the host name too, treating it as part of the path.
6632 2002-08-23 Darin Adler <darin@apple.com>
6634 - fixed 3032058 -- Links on local developer doc pages all broken (all local files?)
6636 * kwq/KWQKURL.mm: (KURL::getNSURL): Re-added a workaround for CFURL bug 2908969.
6637 We have to hack to make NSURL take "file:/" URLs.
6639 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyViewInFrame): Add a nil check.
6640 I ran into this because my frame failed to load.
6642 2002-08-23 Maciej Stachowiak <mjs@apple.com>
6644 A few more KURL changes that reduce it down to background noise
6647 For me this gave another 1-2% improvement on cvs-base.
6649 * kwq/kdecore/kurl.h:
6651 (KURL::KURL): In the relative constructor, do all work in a char
6652 array for the relative path case, and leave it up to ::parse to
6654 (KURL::parse): Do all work in a char array, only creating a
6655 QString at the end if needed. Also, take an optional pointer to
6656 the QString that the char * was created from, and if the final
6657 processed URL is the same as the original, assign the original
6658 instead of creating a new QString.
6659 (KURL::setProtocol): Adjust for prase() interface change.
6660 (KURL::setHost): Likewise.
6661 (KURL::setPort): Likewise.
6662 (KURL::setRef): Likewise.
6663 (KURL::setQuery): Likewise.
6664 (KURL::setPath): Likewise.
6665 (appendEscapingBadChars): Instead of taking and returning
6666 a QString like the old escapeBadChars, copy from and write into
6667 existing C string buffers.
6669 2002-08-22 Darin Adler <darin@apple.com>
6671 * force-clean-timestamp: Without this, I crash on startup.
6673 2002-08-22 Maciej Stachowiak <mjs@apple.com>
6675 Brand new KURL implementation which avoids CFURL, CFString, and
6676 all that other allocation-happy goodness and instead does as much
6677 work as possible with raw ASCII buffers.
6679 For me this gave a ~5% performance improvement on cvs-base.
6692 (KURL::setProtocol):
6699 (KURL::decode_string):
6703 * kwq/kdecore/kurl.h:
6704 * khtml/khtml_part.cpp:
6705 (KHTMLPart::end): Don't call KURL::clearCaches() any more.
6707 2002-08-22 Darin Adler <darin@apple.com>
6709 * kwq/KWQButton.mm: (QButton::~QButton): Disconnect the view
6710 from the widget by doing setTarget:nil.
6711 * kwq/KWQComboBox.mm: (QComboBox::~QComboBox): Ditto.
6713 2002-08-22 David Hyatt <hyatt@apple.com>
6715 Add vertical margins for checkboxes and radios. A later rule
6716 in the file was overriding my earlier attempt to set up these margins.
6718 * khtml/css/html4.css:
6720 2002-08-22 Richard Williamson <rjw@apple.com>
6722 New faster char * append (actually insert) for mjs.
6728 2002-08-22 Darin Adler <darin@apple.com>
6730 Some small QString improvements.
6732 * kwq/qt/qstring.h: Add printf attribute to sprintf member function.
6734 Remove extra \n characters from QSTRING_FAILURE calls. Change some
6735 fprintf to QSTRING_FAILURE. Change some QSTRING_FAILURE to KWQ_ASSERT.
6736 (QStringData::makeAscii): Fix bug where it would update _maxAscii
6737 with a new size even when it didn't allocate a new buffer.
6738 (QStringData::makeUnicode): Fix bug where it would update _maxUnicode
6739 with a new size even when it didn't allocate a new buffer.
6740 (QString::utf8): Fix bug where it assumed the UTF-8 form of a string
6741 has the same length as the Unicode version. Also save one allocation
6742 by doing it right into the QCString.
6743 (QString::local8Bit): Just call utf8().
6744 (QString::setNum): Have all these call our sprintf.
6745 (QString::sprintf): Format once to get the length. Then do the second
6746 format right into the string buffer. This way we don't have to do
6747 any allocation at all, nor use CFString.
6749 === Alexander-20 ===
6751 2002-08-22 Darin Adler <darin@apple.com>
6753 Fixed a one-click crasher that Ken and Don told me about.
6755 * kwq/KWQObject.mm: (QObject::QObject): Initialize m_eventFilterObject.
6757 2002-08-21 Darin Adler <darin@apple.com>
6759 - fixed 3021908 -- text areas should be plain text only
6761 * kwq/KWQTextArea.mm:
6762 (-[KWQTextArea _createTextView]): setRichText:NO
6763 (-[KWQTextArea dealloc]): Release the text view so we don't leak.
6765 2002-08-21 Darin Adler <darin@apple.com>
6767 * kwq/KWQNSViewExtras.m: (-[NSClipView _KWQ_scrollRectToVisible:inView:]):
6768 Use bounds, not visibleRect. Seems to work better.
6770 2002-08-21 John Sullivan <sullivan@apple.com>
6772 - commented out (with FIXME 2935687) the code that was advertising in
6773 the status bar that shift-command would open a link behind the
6774 current window, since it doesn't.
6776 * kwq/KWQKHTMLPartImpl.mm:
6777 (KWQKHTMLPartImpl::overURL):
6779 2002-08-21 Darin Adler <darin@apple.com>
6781 Fix for two problems with password fields.
6783 1) Return wasn't working.
6784 2) They were wrapping instead of scrolling.
6786 * kwq/KWQNSTextField.mm:
6787 (-[KWQNSTextField setUpTextField:]): Shared initialization, needed by both
6788 the text field and the secure field. This includes the two things we needed
6789 for the password text field; wiring up action properly and setScrollable:YES.
6790 (-[KWQNSTextField initWithFrame:]): Use setUpTextField.
6791 (-[KWQNSTextField setPasswordMode:]): Use setUpTextField.
6793 2002-08-21 David Hyatt <hyatt@apple.com>
6795 Fix for 3015372, tables and blocks nested inside other tables
6796 don't center. This fixes a lot of sites, from the forum
6797 sites to the www.ve3d.com voodooextreme site.
6799 * khtml/html/html_tableimpl.cpp:
6800 (HTMLTablePartElementImpl::parseAttribute):
6802 2002-08-21 Darin Adler <darin@apple.com>
6804 - fixed 3027927 -- selected text fields do not cause the web view to scroll to reveal them
6806 * kwq/KWQNSTextField.mm:
6807 (-[KWQNSTextField becomeFirstResponder]): Call [self _KWQ_scrollFrameToVisible].
6808 (-[KWQSecureTextField becomeFirstResponder]): Call [self _KWQ_scrollFrameToVisible].
6810 * kwq/KWQNSViewExtras.h: Added. New scrolling functions.
6811 * kwq/KWQNSViewExtras.m: Added. New scrolling functions.
6812 * WebCore.pbproj/project.pbxproj: Added KWQNSViewExtras.
6814 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyViewInFrame):
6815 Make sure superview and position is set up properly before we try to tab to something.
6816 * kwq/KWQWidget.mm: (QWidget::setFocus):
6817 Make sure superview and position is set up properly before we try to focus something.
6821 * kwq/KWQInvisibleButton.h:
6822 * kwq/KWQInvisibleButton.mm:
6823 Add KWQ prefix to the name of the private Objective C class to avoid potential conflicts.
6825 2002-08-21 Darin Adler <darin@apple.com>
6827 Implemented baseline alignment for form elements. We decided that this was better
6828 than what we're currently doing. But it will look even better when the font of the
6829 text field matches the font of the surrounding text, so we should consider that.
6831 I also nudged the text down one pixel in popup menus, to match buttons. I think we
6832 probably should suggest that this be done in Aqua by default (buttons and popup menus
6833 already match in the normal size; this is the small size).
6835 * khtml/rendering/render_form.h: Remove some APPLE_CHANGES.
6836 * khtml/rendering/render_form.cpp:
6837 (RenderFormElement::baselinePosition): Use the widget's concept of the baseline
6838 position (the new QWidget::baselinePosition function).
6839 (RenderButton::baselinePosition): Just call the inherited version.
6840 (RenderSubmitButton::baselinePosition): Remove our ifdef because we want what the
6841 original code said, which was just calling the inherited version.
6842 (RenderLineEdit::baselinePosition): Removed our added method since we want to just
6843 call the inherited version.
6844 (RenderSelect::baselinePosition): Just call the inherited version for the pop up
6845 menu case. For the list box, just left the old code alone until someone can take
6848 * kwq/qt/qwidget.h: Added new virtual baselinePosition function.
6849 * kwq/KWQWidget.mm: (QWidget::baselinePosition): Default for baseline is the bottom.
6851 * kwq/qt/qlineedit.h:
6852 * kwq/KWQLineEdit.mm:
6853 (QLineEdit::baselinePosition): Compute the baseline based on how NSTextField does it.
6854 Compared to the other widgets this was easy, because the cell's drawingRectForBounds
6855 gives you the place where the top of the line is. It does use defaultLineHeightForFont,
6856 which is not used by other widgets, but that's no real problem.
6859 * kwq/KWQButton.mm: Moved all the code that's push-button specific into QPushButton.
6861 * kwq/qt/qpushbutton.h:
6862 * kwq/KWQPushButton.mm:
6863 (QPushButton::QPushButton): Set the bezel style of the button.
6864 (QPushButton::sizeHint): Moved here from QButton.
6865 (QPushButton::frameGeometry): Moved here from QButton.
6866 (QPushButton::setFrameGeometry): Moved here from QButton.
6867 (QPushButton::baselinePosition): Compute the baseline based on how NSButton does it.
6868 The rule for the style of button we use is "centered vertically in the available space,
6869 offset by kThemePushButtonSmallTextOffset", so I had to hardcode the value of
6870 kThemePushButtonSmallTextOffset; I called it VERTICAL_FUDGE_FACTOR (2).
6872 * kwq/qt/qcombobox.h:
6873 * kwq/KWQComboBox.mm:
6874 (-[KWQPopUpButtonCell drawInteriorWithFrame:inView:]): Custom cell class that nudges
6875 the text down one pixel.
6876 (QComboBox::QComboBox): Attach the custom cell class.
6877 (QComboBox::baselinePosition): Compute the baseline based on how NSPopUpButton does it.
6878 The rule for the style of pop-up button we use is "CELLOFFSET pixels down from the top",
6879 so I had to hardcode the value of CELLOFFSET; I called it VERTICAL_FUDGE_FACTOR (2).
6881 * force-clean-timestamp: Yes, again.
6883 2002-08-20 Darin Adler <darin@apple.com>
6885 - fix 3028936 -- fields are not submitting the correct data if they are selected
6888 * kwq/KWQNSTextField.mm: (-[KWQNSTextField controlTextDidChange:]):
6889 Call widget->textChanged and set edited to true here. The old code had two problems.
6890 First, it only sent textChanged from controlTextDidEndEditing. Second, it overrode
6891 textDidChange without calling super, preventing controlTextDidChange from being
6892 sent to the delegate.
6894 2002-08-20 David Hyatt <hyatt@apple.com>
6896 Fix background positioning so that it works with table cells.
6897 This fixes the tabs on www.msn.com.
6899 * khtml/rendering/render_box.cpp:
6900 (RenderBox::printBackground):
6901 * khtml/rendering/render_table.h:
6903 2002-08-20 Darin Adler <darin@apple.com>
6905 WebCore part of support for tabbing into and out of the toolbar.
6907 * kwq/KWQKHTMLPartImpl.h: Renamed static nextKeyView to nextKeyViewForWidget.
6908 Added nextKeyViewInFrameHierarchy.
6909 * kwq/KWQKHTMLPartImpl.mm:
6910 (KWQKHTMLPartImpl::nextKeyViewInFrameHierarchy): New name for the old nextKeyView.
6911 (KWQKHTMLPartImpl::nextKeyView): Added. Does all the logic for handling views outside
6912 the frame hierarchy that used to be only in the static nextKeyView.
6913 (KWQKHTMLPartImpl::nextKeyViewForWidget): New name for the static nextKeyView, which
6914 now just does the widget-specific bits. Removed null check in here that's no longer needed.
6916 * kwq/KWQNSTextField.mm: Update to call nextKeyViewForWidget.
6918 * kwq/WebCoreBridge.h: Added nextKeyViewInsideWebViews, previousKeyViewInsideWebViews,
6919 nextKeyViewOutsideWebViews, and previousKeyViewOutsideWebViews.
6921 * kwq/WebCoreBridge.mm:
6922 (-[WebCoreBridge nextKeyViewInsideWebViews]): Call nextKeyViewInFrameHierarchy.
6923 (-[WebCoreBridge previousKeyViewInsideWebViews]): Call nextKeyViewInFrameHierarchy.
6925 Introduced QString to sprong. See <http://www.goat.demon.co.uk/sprong.html>.
6926 A few other tweaks to QString API; wean it from mutable strings.
6929 * kwq/KWQString.mm: Sprongify it.
6930 (QString::setBufferFromCFString): Add a fixed-size buffer to avoid malloc.
6931 (QString::getCFString): Replace getCFMutableString with this.
6932 (QString::getNSString): Use NSString directly.
6934 * kwq/KWQDictImpl.mm:
6936 * kwq/KWQStringList.mm:
6937 * kwq/KWQtextcodec.mm:
6938 * kwq/WebCoreBridge.mm:
6939 Use getCFString, not getCFMutableString.
6941 2002-08-19 Darin Adler <darin@apple.com>
6943 * force-clean-timestamp: Richard's changes require a clean build.
6945 2002-08-19 Richard Williamson <rjw@apple.com>
6947 QString rewrite. Much faster now.
6948 QString has an inline rep, QStringData, which
6949 has an inline character buffer. reps are
6950 referenced indirectly via a handle. inline
6951 reps are detached when necessary. Typical
6952 stack based usage requires no allocations
6953 for small string. Attempts are made to avoid
6954 costly conversions between ascii and unicode.
6955 Extensive diagnostics can be enable by
6956 defining QSTRING_DEBUG_ALLOCATIONS and calling
6957 _printQStringAllocationStatistics().
6959 There appear to be a few small lingering leaks
6960 that I need to track down.
6962 * WebCore-tests.exp:
6964 Added symbols for qstring-test.cpp.
6966 * khtml/css/cssstyleselector.cpp:
6968 Removed old string optimization hack.
6982 (_printQStringAllocationStatistics):
6987 (QStringData::QStringData):
6988 (QStringData::initialize):
6989 (QStringData::operator new):
6990 (QStringData::operator delete):
6991 (QString::makeSharedNullHandle):
6992 (QString::makeSharedNull):
6993 (QStringData::~QStringData):
6994 (QStringData::ascii):
6995 (QStringData::increaseAsciiSize):
6996 (QStringData::unicode):
6997 (QStringData::increaseUnicodeSize):
6998 (QStringData::makeAscii):
6999 (QStringData::makeUnicode):
7000 (QString::setBufferFromCFString):
7001 (QString::fromStringWithEncoding):
7002 (QString::fromCFMutableString):
7003 (QString::fromCFString):
7004 (QString::fromNSString):
7005 (QString::getCFMutableString):
7006 (QString::getNSString):
7007 (QString::~QString):
7009 (QString::operator=):
7013 (QString::startsWith):
7014 (QString::endsWith):
7019 (QString::contains):
7021 (QString::toUShort):
7026 (QString::toDouble):
7034 (QString::stripWhiteSpace):
7035 (QString::simplifyWhiteSpace):
7037 (QString::setUnicode):
7038 (QString::setLatin1):
7042 (QString::detachInternal):
7046 (QString::forceUnicode):
7047 (QString::setLength):
7048 (QString::truncate):
7050 (QString::operator+=):
7051 (QString::convertToQCString):
7053 (QConstString::QConstString):
7054 (QConstString::~QConstString):
7055 (_initializeHandleNodeBlock):
7056 (_allocatePageNode):
7057 (_initializeHandleNodes):
7065 2002-08-19 Maciej Stachowiak <mjs@apple.com>
7067 * Makefile.am: Added new mechanism to clean only the objects that
7068 depend on JavaScript.
7069 * force-js-clean-timestamp: Touched since I changed JSC just now.
7070 * .cvsignore: Ignore previous-js-clean-timestamp.
7072 2002-08-19 Darin Adler <darin@apple.com>
7074 Fixed tab cycle on slashdot.org and elsewhere by being stricter about what is
7075 included in the tab cycle.
7077 * kwq/KWQWidget.mm: (QWidget::focusPolicy): Use the same rule as AppKit.
7079 2002-08-19 David Hyatt <hyatt@apple.com>
7081 Tweak baselines to look a little better for form controls.
7082 This will be redone by Darin to really baseline align... this
7085 Also adding 3px margins to <input> and <textarea> and <select>.
7087 * khtml/css/html4.css:
7088 * khtml/rendering/render_form.cpp:
7089 (RenderButton::baselinePosition):
7090 (RenderSelect::baselinePosition):
7092 2002-08-19 Darin Adler <darin@apple.com>
7094 - fixed 3027791 -- Crash when pressing "tab" after going to http://slashdot.org/
7096 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyViewInFrame): Add null check.
7098 2002-08-19 Darin Adler <darin@apple.com>
7100 Put in more robust version of the next/previous key view checking
7101 that matches what I did in WebHTMLView.
7103 * kwq/KWQNSTextField.h: Add inNextValidKeyView instance variable.
7104 * kwq/KWQNSTextField.mm:
7105 (-[KWQNSTextField dealloc]): No need to nil out widget.
7106 (-[KWQNSTextField nextKeyView]): Only do the computation when called from nextValidKeyView.
7107 (-[KWQNSTextField previousKeyView]): Only do the computation when called from previousValidKeyView.
7108 (-[KWQNSTextField nextValidKeyView]): Set boolean.
7109 (-[KWQNSTextField previousValidKeyView]): Set boolean.
7110 (-[KWQSecureTextField nextKeyView]): Only do the computation when called from nextValidKeyView.
7111 (-[KWQSecureTextField previousKeyView]): Only do the computation when called from nextValidKeyView.
7112 (-[KWQSecureTextField nextValidKeyView]): Set boolean.
7113 (-[KWQSecureTextField previousValidKeyView]): Set boolean.
7117 * kwq/mac-encodings.txt: Add an encoding name of gb18030, since I saw mention of it in bug 3002016.
7119 2002-08-19 Darin Adler <darin@apple.com>
7121 Support so that WebKit can tab into a web view's fields.
7123 * kwq/KWQKHTMLPartImpl.h: Made another nextKeyView() version public.
7124 * kwq/WebCoreBridge.h: Add new methods, change parameters to one existing one.
7125 * kwq/WebCoreBridge.mm:
7126 (-[WebCoreBridge createKHTMLViewWithNSView:marginWidth:marginHeight:]):
7127 Remove width and height parameters. The passed-in view already has the correct
7129 (-[WebCoreBridge nextKeyView]): Call nextKeyView() with node == 0.
7130 (-[WebCoreBridge previousKeyView]): Call nextKeyView() with node == 0.
7132 2002-08-19 Darin Adler <darin@apple.com>
7134 First cut at implementation of "tab to change focus": Lots of loose ends, but it's
7137 * kwq/KWQNSTextField.h: Change initWithWidget to initWithQLineEdit.
7138 * kwq/KWQNSTextField.mm:
7139 (-[KWQNSTextField initWithQLineEdit:]): Keep a QLineEdit pointer so we don't cast later.
7140 (-[KWQNSTextField dealloc]): Sets widget to 0 to make nextKeyView and previousKeyView
7141 return nil while deallocating.
7142 (-[KWQNSTextField setPasswordMode:]): Pass widget when creating secure text field so it
7143 can handle the next/previous links properly.
7144 (-[KWQNSTextField nextKeyView]): Added. Calls KWQKHTMLPartImpl::nextKeyView.
7145 (-[KWQNSTextField previousKeyView]): Added. Calls KWQKHTMLPartImpl::nextKeyView.
7146 (-[KWQTextFieldCell isOpaque]): Added. Returns NO; fixes focus rectangle updating.
7147 (-[KWQSecureTextField initWithQWidget:]): Added.
7148 (-[KWQSecureTextField dealloc]): Added. Sets widget to 0 to make nextKeyView and
7149 previousKeyView return nil while deallocating.
7150 (-[KWQSecureTextField nextKeyView]): Added. Calls KWQKHTMLPartImpl::nextKeyView.
7151 (-[KWQSecureTextField previousKeyView]): Added. Calls KWQKHTMLPartImpl::nextKeyView.
7153 * kwq/KWQKHTMLPartImpl.h: Add KWQSelectionDirection. Change name of getBridge() to
7154 bridge(), getDocument() to document(), getRenderer() to renderer(), getBridgeForFrameName()
7155 to bridgeForFrameName(). Also added nextKeyView family of member functions.
7157 * kwq/KWQKHTMLPartImpl.mm:
7158 (KWQKHTMLPartImpl::nextKeyViewInFrame): Added.
7159 (KWQKHTMLPartImpl::nextKeyView): Added.
7161 * kwq/qt/qwidget.h: Remove unneeded parameters from constructor. Also added a
7162 constructor that takes an NSView.
7164 (QWidget::QWidget): Don't store focus policy (it was uninitialized before).
7165 (QWidget::focusPolicy): Return TabFocus for any widget that has a view with a first
7166 responder, NoFocus for any other.
7167 (QWidget::setFocusPolicy): Do nothing.
7168 (QWidget::setFocusProxy): Do nothing.
7170 * kwq/qt/qobject.h: Store the event filter object when installEventFilter is called.
7171 This is used to find the RenderWidget for a QWidget by the new tabbing code.
7172 * kwq/KWQObject.mm: Removed event-filter functions. Two are now inlines, one deleted.
7174 Other changes related to KWQKHTMLPartImpl improvements.
7176 * kwq/KWQKHTMLPartBrowserExtension.mm:
7177 * kwq/KWQKHTMLPartImpl.mm:
7178 * kwq/KWQLoaderImpl.mm:
7179 * kwq/WebCoreBridge.mm:
7180 Update for KWQKHTMLPartImpl member name changes.
7182 Various improvements for other widget implementations.
7185 * kwq/KWQButton.mm: Stop using KWQNSButton. Instead just use a button adapter
7186 object, and a plain old NSButton.
7187 (QButton::QButton): Put all the NSButton setup in here.
7188 (QButton::~QButton): Release the adapter here.
7189 (QButton::clicked): Move this in here because it's virtual now so that QCheckBox
7191 (-[KWQButtonAdapter initWithQButton:]): Added.
7192 (-[KWQButtonAdapter action:]): Just call clicked().
7194 * kwq/qt/qpushbutton.h: Don't pass unused parent pointer to QButton constructor.
7195 * kwq/KWQPushButton.mm: (QPushButton::QPushButton): Don't pass unused parent pointer to
7198 * kwq/qt/qcheckbox.h:
7199 * kwq/KWQCheckBox.mm: Just use NSButton, not KWQNSButton.
7200 (QCheckBox::clicked): Move the state-changed logic here; used to be in KWQNSButton.
7202 * kwq/KWQRadioButton.mm:
7203 (QRadioButton::QRadioButton): Don't pass unused parent pointer to
7206 * kwq/qt/qcombobox.h:
7207 * kwq/KWQComboBox.mm:
7208 (QComboBox::QComboBox): Removed extra constructor. Make a plain NSPopUpButton,
7209 and use an adapter object, rather than having a KWQNSComboBox.
7210 (QComboBox::~QComboBox): Release the adapter.
7211 (QComboBox::insertItem): New implementation. No need to keep an items array around,
7212 because the menu does that just fine.
7213 (QComboBox::clear): Remove the items from the pop-up button directly.
7214 (-[KWQComboBoxAdapter initWithQComboBox:]): Added.
7215 (-[KWQComboBoxAdapter action:]): Just call activated().
7217 * kwq/kdeui/kcombobox.h: Empty this out and make it use only inlines.
7219 * khtml/rendering/render_form.cpp: (RenderSelect::updateFromElement):
7220 Remove the setSize()/doneLoading() optimization for QComboBox because the new
7221 simpler QComboBox implementation obviates the speed problem this was originally
7224 * kwq/qt/qlineedit.h:
7225 * kwq/KWQLineEdit.mm: (QLineEdit::QLineEdit): Call initWithQLineEdit instead of
7226 initWithWidget. Also don't take an unused parent pointer parameter.
7228 * kwq/kdeui/klineedit.h: Empty this out and make it use only inlines.
7230 * kwq/qt/qframe.h: Remove unused parent pointer from constructor.
7231 * kwq/KWQFrame.mm: Remove unneeded constructor.
7232 * kwq/KWQHBox.mm: (QHBox::QHBox): Don't pass unused parent pointer to QFrame.
7233 * kwq/KWQLabel.mm: (QLabel::QLabel): Don't pass unused parent pointer to QFrame.
7234 * kwq/qt/qscrollview.h: Make constructor inline.
7235 * kwq/KWQScrollView.mm: Remove unneeded constructor.
7236 * kwq/KWQWindowWidget.h: Remove unneeded constructor.
7238 * WebCore.pbproj/project.pbxproj: Remove KWQKComboBox.mm, KWQKLineEdit.mm,
7240 * kwq/KWQKComboBox.mm: Removed.
7241 * kwq/KWQKLineEdit.mm: Removed.
7242 * kwq/KWQScrollBar.h: Removed. Unused.
7244 * kwq/KWQTextArea.h: Change initWithWidget to initWithQTextEdit.
7245 * kwq/KWQTextArea.mm: (-[KWQTextArea initWithQTextEdit:]): Changed name.
7246 * kwq/KWQTextEdit.mm: (QTextEdit::QTextEdit): Call initWithQTextEdit instead of
7249 * kwq/KWQView.h: Eliminated KWQNSButton, KWQNSComboBox, and KWQNSScrollView.
7250 * kwq/KWQView.mm: Ditto.
7254 * force-clean-timestamp: Yes, again.
7256 * khtml/khtml_part.h: Rearrange APPLE_CHANGES a bit.
7258 * kwq/qt/qvaluelist.h: Added -- as well as ++ for the const iterator, and fixed some
7259 minor const issues. At one point I needed this for the focus changes, but not any more.
7261 2002-08-16 Darin Adler <darin@apple.com>
7263 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::userAgent):
7264 Call bridge's userAgentForURL: method.
7265 * kwq/WebCoreBridge.h: Added userAgentForURL: to the protocol
7267 2002-08-16 Darin Adler <darin@apple.com>
7269 Step 2 in adding user agent API to WebKit and WebFoundation.
7270 In this step, I change WebCore so that it the KWQKHTMLPartImpl
7271 is responsible for fetching the user agent. Later it will
7272 get the user agent from WebKit via the bridge.
7274 * khtml/ecma/kjs_navigator.cpp: (Navigator::getValueProperty):
7275 Get the user agent from the part, not KProtocolManager.
7276 * khtml/ecma/kjs_proxy.cpp: (KJSProxyImpl::initScript):
7277 Get the user agent from the part, not KProtocolManager.
7279 * kwq/KWQKHTMLPartImpl.h: Add userAgent member function.
7280 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::userAgent): Added.
7282 * WebCore.pbproj/project.pbxproj: Removed KWQKProtocolManager.mm.
7283 * kwq/KWQKProtocolManager.mm: Removed.
7284 * kwq/kio/kprotocolmanager.h: Made empty.
7286 2002-08-16 Maciej Stachowiak <mjs@apple.com>
7288 * force-clean-timestamp: Need to rebuild for JavaScriptCore changes.
7290 2002-08-16 Darin Adler <darin@apple.com>
7292 - fixed 3023851 -- screen garbage created by scrolling text
7294 Our implementation of clipRegion didn't reflect the clip that was
7295 already set for the view, so we drew outside the view. To fix it,
7296 I eliminated the clipRegion call and changed clients to use a new
7297 addClip call instead that doesn't require getting the clip in the
7298 form of a region (which is not really possible with CoreGraphics).
7300 * khtml/rendering/render_box.cpp: (RenderBox::calcClip):
7301 Call addClip instead of clipRegion(), intersect(), setClipRegion().
7303 * kwq/qt/qpainter.h: Added addClip(), removed clipRegion(), setClipRegion().
7304 * kwq/KWQPainter.mm: (QPainter::addClip): Calls [NSBezierPath clipRect:].
7306 * kwq/qt/qregion.h: Went back to a single-path implementation, since
7307 we don't need intersect() any more. Also removed isNull() and setClip().
7309 (QRegion::QRegion): New simpler versions.
7310 (QRegion::~QRegion): Release the path.
7311 (QRegion::operator=): Copy the other path.
7312 (QRegion::contains): Call [containsPoint:].
7313 (QRegion::translate): Call [transformUsingAffineTransform:].
7314 (QRegion::boundingRect): Call [bounds].
7316 2002-08-16 Darin Adler <darin@apple.com>
7318 - fixed 3026042 -- hide frames button at developer documentation doesn't work
7320 This regression was introduced by the anchor changes we made just after
7321 the Alexander-15 release.
7323 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::urlSelected):
7324 Make decisions about special handling for links with anchors based
7325 on the target frame, not the current frame.
7327 2002-08-16 Maciej Stachowiak <mjs@apple.com>
7329 * force-clean-timestamp: rebuild for JavaScriptCore changes.
7331 2002-08-16 David Hyatt <hyatt@apple.com>
7333 Fix for the intuit.com and eweek.com <form><tr> bgcolor problem.
7334 Improve the error handling of the parser so that it doesn't
7335 lose attributes when errors like this occur in a page.
7337 * khtml/html/htmlparser.cpp:
7338 (KHTMLParser::~KHTMLParser):
7339 (KHTMLParser::reset):
7340 (KHTMLParser::parseToken):
7341 (KHTMLParser::insertNode):
7342 * khtml/html/htmlparser.h:
7344 2002-08-15 Darin Adler <darin@apple.com>
7346 - fixed 2983959 -- pages that try to use JavaScript to focus fail to do so
7348 * kwq/KWQWidget.mm: (QWidget::setFocus): Call makeFirstResponder.
7350 2002-08-15 Darin Adler <darin@apple.com>
7352 Give the same good loving to the check boxes and radio buttons.
7353 I'm not saying our rules for where to position them are great, but
7354 the rules are implemented cleanly and thus easier to tweak.
7356 Got rid of the old Action system altogether, using signals now.
7358 * khtml/rendering/render_form.h: Remove now-unneeded APPLE_CHANGES.
7359 * khtml/rendering/render_form.cpp:
7360 (RenderButton::baselinePosition): All the buttons now share a single
7361 version of this call, since none need any special baseline hacking at
7363 (RenderSubmitButton::baselinePosition): Just call the RenderButton version.
7365 * kwq/KWQCheckBox.mm:
7366 (QCheckBox::sizeHint): Use 12x12, not 22x22.
7367 (QCheckBox::frameGeometry): Adjust for margins.
7368 (QCheckBox::setFrameGeometry): Adjust for margins.
7369 * kwq/KWQRadioButton.mm:
7370 (QRadioButton::sizeHint): Use 12x12, not 22x22.
7371 (QRadioButton::frameGeometry): Adjust for margins.
7372 (QRadioButton::setFrameGeometry): Adjust for margins.
7374 * kwq/qt/qcombobox.h:
7375 * kwq/KWQComboBox.mm: (QComboBox::QComboBox): Set up the activated signal.
7376 * kwq/KWQView.mm: (-[KWQNSComboBox action:]): Emit the activated signal.
7379 * kwq/KWQListBox.mm:
7380 (-[KWQBrowserDelegate browserSingleClick:]): Send a selectionChanged signal
7381 and a clicked signal instead of a ACTION_LISTBOX_CLICKED.
7382 (QListBox::QListBox): Set up the clicked and selectionChanged signals.
7384 * kwq/qt/qobject.h: Remove Actions, ACTION_TEXT_AREA_END_EDITING,
7385 ACTION_LISTBOX_CLICKED, ACTION_COMBOBOX_CLICKED, emitAction, performAction,
7388 (QObject::connect): Remove the target hack, no longer needed.
7389 (QObject::QObject): Remove target initialization.
7391 * kwq/KWQSlot.mm: (KWQSlot::KWQSlot), (KWQSlot::call):
7392 Added selected and selectionChanged slots.
7394 * kwq/KWQTextArea.mm:
7395 (-[KWQTextArea textDidEndEditing:]): Removed code to emit the
7396 ACTION_TEXT_AREA_END_EDITING action, which was no longer used.
7398 * force-clean-timestamp: Yes, again.
7400 2002-08-15 Darin Adler <darin@apple.com>
7402 - fixed 3017376 -- button height is too tall
7404 Reworked how widget sizing and positioning is done for a few of the most important
7407 * khtml/rendering/render_form.h: Remove more of the performAction hackery.
7408 * khtml/rendering/render_form.cpp:
7409 (RenderCheckBox::calcMinMaxWidth): Get size from widget.
7410 (RenderRadioButton::calcMinMaxWidth): Get size from widget.
7411 (RenderSubmitButton::RenderSubmitButton): Remove old unneeded APPLE_CHANGES.
7412 (RenderSubmitButton::baselinePosition): Put the bottom of the button on the
7413 baseline without any magic numbers.
7414 (RenderLineEdit::baselinePosition): Put the bottom of the text field two pixels
7415 below the baseline without any other magic numbers.
7416 (RenderLineEdit::calcMinMaxWidth): Get size from widget.
7417 (RenderSelect::baselinePosition): Put the bottom of the menu on the
7418 baseline without any magic numbers. List box case is untouched for now.
7422 (QButton::QButton): Move most of the setup into KWQNSButton.
7423 (QButton::sizeHint): Use cellSize, account for margins.
7424 (QButton::frameGeometry): Adjust for margins.
7425 (QButton::setFrameGeometry): Adjust for margins.
7426 * kwq/qt/qcheckbox.h:
7427 * kwq/KWQCheckBox.mm:
7428 (QCheckBox::QCheckBox): QButton takes care of most of the setup now.
7429 (QCheckBox::sizeHint): Added.
7430 (QCheckBox::frameGeometry): Adjust for margins.
7431 (QCheckBox::setFrameGeometry): Adjust for margins.
7432 * kwq/qt/qcombobox.h:
7433 * kwq/KWQComboBox.mm:
7434 (QComboBox::init): KWQNSComboBox takes care of most of the setup now.
7435 (QComboBox::sizeHint): Adjust for margins.
7436 (QComboBox::frameGeometry): Adjust for margins.
7437 (QComboBox::setFrameGeometry): Adjust for margins.
7438 * kwq/qt/qlineedit.h:
7439 * kwq/KWQLineEdit.mm:
7440 (QLineEdit::sizeForCharacterWidth): Added.
7441 (QLineEdit::frameGeometry): Adjust for margins.
7442 (QLineEdit::setFrameGeometry): Adjust for margins.
7443 * kwq/qt/qradiobutton.h:
7444 * kwq/KWQRadioButton.mm:
7445 (QRadioButton::QRadioButton): QButton takes care of most of the setup now.
7446 (QRadioButton::sizeHint): Added.
7447 (QRadioButton::frameGeometry): Adjust for margins.
7448 (QRadioButton::setFrameGeometry): Adjust for margins.
7452 (QWidget::setFrameGeometry): New name for internalSetGeometry, now public.
7454 - fixed 3010695 -- Slashdot.org starts with password field focused, but shouldn't
7456 Added KWQSecureTextField to work around the bug.
7458 * kwq/KWQNSTextField.h: Made formatter and other details private.
7459 * kwq/KWQNSTextField.mm:
7460 (+[KWQNSTextField initialize]): Set up custom cell class that works around focus border.
7461 (-[KWQNSTextField initWithFrame:]): Put the work in here, since this is NSView's designated
7463 (-[KWQNSTextField initWithWidget:]): Now just calls [init] which calls [initWithFrame],
7464 and then sets the widget.
7465 (-[KWQNSTextField action:]): Use the returnPressed signal instead of ACTION_TEXT_FIELD.
7466 (-[KWQNSTextField controlTextDidEndEditing:]): Use textChanged signal instead of
7467 ACTION_TEXT_FIELD_END_EDITING.
7468 (-[KWQNSTextField dealloc]): Release the secureField (was a leak).
7469 (-[KWQNSTextField updateSecureFieldFrame]): Added. Used to keep secure field in the right
7471 (-[KWQNSTextField setFrameSize:]): Added. Calls updateSecureFieldFrame.
7472 (-[KWQNSTextField setPasswordMode:]): Change all the details, but this does the same
7474 (-[KWQNSTextField selectText:]): Only call selectText on one of the two field, since it
7475 causes the field to grab focus and we don't want to do that twice.
7476 (-[KWQNSTextField setStringValue:]): Set the string value in both fields any time someone
7477 gives us a new value.
7478 (-[KWQNSTextField setFont:]): Set the font in both fields any time someone gives us a new
7480 (-[KWQTextFieldCell cellSizeForBounds:]): Add space for focus border.
7481 (-[KWQTextFieldCell drawWithFrame:inView:]): Inset by focus border.
7482 (-[KWQTextFieldCell editWithFrame:inView:editor:delegate:event:]): Inset by focus border.
7483 (-[KWQTextFieldCell selectWithFrame:inView:editor:delegate:start:length:]): Inset by focus border.
7484 (-[KWQSecureTextField selectText:]): Override to do nothing while in setFrameSize to work around
7486 (-[KWQSecureTextField setFrameSize:]): Set flag to trigger selectText check.
7488 - fixed 3025166 -- check boxes and radio buttons on google.com's preferences pages
7491 We were not emitting onClicked for check boxes.
7493 * kwq/KWQView.h: No need to pass frames any more. Default is empty.
7495 (-[KWQView initWithFrame:]): Do most of the work in here.
7496 (-[KWQView initWithWidget:]): Just call [init] and set up widget.
7497 (-[KWQNSButton initWithFrame:]): Do most of the work in here. Remove the special
7498 cell class, and always use a small control with the small system font.
7499 (-[KWQNSButton initWithWidget:]): Just call [init] and set up widget.
7500 (-[KWQNSButton action:]): Call the clicked() signal instead of ACTION_BUTTON_CLICKED.
7501 (-[KWQNSButton stateChanged:]): Call the stateChanged() signal instead of
7502 ACTION_CHECKBOX_CLICKED.
7503 (-[KWQNSComboBox initWithFrame:]): Do most of the work in here.
7504 (-[KWQNSComboBox initWithWidget:]): Just call [init] and set up widget.
7505 (-[KWQNSScrollView initWithWidget:]): Just call [init] and set up widget.
7507 - fixed 3025211 -- find person in Apple directory never displays person information
7509 When I enabled the code to wait and not redirect until loads are complete, that
7510 broke this case, because we didn't have enough hooked up to notice loads completing.
7511 I hooked everything up and its working now.
7513 * khtml/khtml_part.h: Add started().
7514 * khtml/khtml_part.cpp:
7515 (KHTMLPart::restoreURL): Un-ifdef emission of started().
7516 (KHTMLPart::openURL): Un-ifdef emission of started().
7517 (KHTMLPart::end): Don't do an explicit call to slotFinishedParsing().
7518 We actually hook up a signal for this now.
7519 (KHTMLPart::slotChildCompleted): Un-ifdef the rest of the code here.
7521 * khtml/xml/dom_docimpl.h:
7522 * khtml/xml/dom_docimpl.cpp: (DocumentImpl::DocumentImpl):
7523 * khtml/xml/xml_tokenizer.h:
7524 Do the necessary setup so we can use KWQSignal for finishedParsing.
7526 * kwq/KWQKHTMLPartImpl.mm:
7527 (KHTMLPart::started): Added. Calls slotChildStarted on parent.
7528 (KHTMLPart::completed): Added slotParentCompleted calls.
7530 * kwq/qt/qobject.h: Add sender() and KWQObjectSenderScope.
7532 (KWQObjectSenderScope::KWQObjectSenderScope): Added. Sets sender() and saves the old value.
7533 (KWQObjectSenderScope::~KWQObjectSenderScope): Added. Resets sender().
7537 * kwq/KWQSignal.mm: (KWQSignal::call): Added overloads for calling signals with int and
7538 QString parameters. Also set up sender() using KWQObjectSenderScope.
7540 * kwq/KWQSlot.mm: (KWQSlot::KWQSlot), (KWQSlot::call): Add support for one signal
7541 (calls through to whatever is connected to that signal's slot) and six new slots.
7543 * kwq/KWQsignals.mm:
7544 (Tokenizer::Tokenizer): Construct the finishedParsing signal.
7545 (Tokenizer::finishedParsing): Emit the finishedParsing signal.
7547 - fixed 3025170 -- right sides of borders placed incorrectly around table cells
7549 There was some silly code that I just removed.
7551 * khtml/rendering/render_table.cpp:
7552 (RenderTable::addColInfo): Turn off the half-assed collapse borders stuff here.
7556 * force-clean-timestamp: Big changes; full rebuild needed.
7558 * khtml/khtmlview.cpp: (KHTMLView::~KHTMLView): Make the code to kill
7559 the timers be unconditional, just in case.
7561 * kwq/KWQCharsets.mm: (buildDictionaries): Remove UTF-16 special case since it's now
7562 in the character sets table.
7566 (QPoint::QPoint): Converts from NSPoint.
7567 (QPoint::operator NSPoint): Converts to NSPoint.
7570 (QRect::QRect): Converts from NSRect.
7571 (QRect::isEmpty): Fix backwards logic.
7572 (QRect::operator NSRect): Converts to NSRect.
7575 (QSize::QSize): Converts from NSSize.
7576 (QSize::operator NSSize): Converts to NSSize.
7578 * kwq/qt/qpushbutton.h:
7579 * kwq/KWQPushButton.mm: Removed unused methods.
7581 * kwq/KWQRegion.mm: Use new QPoint/NSPoint/QRect/NSRect functions.
7583 * kwq/KWQScrollView.mm: (QScrollView::addChild): Update comment.
7585 * kwq/KWQTextArea.h:
7586 * kwq/KWQTextArea.mm:
7587 (-[KWQTextArea initWithFrame:]): Do most of the work in here.
7588 (-[KWQTextArea initWithWidget:]): Just call [init] and set up widget.
7590 * kwq/KWQTextEdit.mm: (QTextEdit::QTextEdit): Don't pass an empty frame any more.
7592 * kwq/KWQWindowWidget.h:
7593 * kwq/KWQWindowWidget.mm: Update for name change.
7595 * kwq/WebCoreTestController.h: Placeholder for the feature I should be working on.
7597 === Alexander-19 ===
7599 === Alexander-18 ===
7601 2002-08-15 Maciej Stachowiak <mjs@apple.com>
7603 * force-clean-timestamp: Need to rebuild for JavaScriptCore
7606 2002-08-14 David Hyatt <hyatt@apple.com>
7608 ROFL. The KHTML table code had a hardcoded "20" being
7609 subtracted out of table heights instead of using the
7610 actual margins on the <body> element. This patch
7611 removes the hardcoded "20" and replaces it with the
7612 actual <body> margins.
7614 * khtml/rendering/render_table.cpp:
7615 (RenderTable::layoutRows):
7617 2002-08-14 David Hyatt <hyatt@apple.com>
7619 Fix marginwidth and marginheight on the <body> element.
7620 These attributes were not applying the correct margins,
7621 which would cause many many pages to mis-render!
7623 * khtml/html/html_baseimpl.cpp:
7624 (HTMLBodyElementImpl::parseAttribute):
7626 2002-08-14 David Hyatt <hyatt@apple.com>
7628 Ensure that a rendering object gets built for <fieldset>
7629 elements. Content inside a <fieldset> was being discarded
7632 This fixes the top frame on blogger comment posting so that
7633 it shows up properly.
7635 * khtml/html/html_formimpl.cpp:
7636 (HTMLFieldSetElementImpl::attach):
7637 * khtml/html/html_formimpl.h:
7639 2002-08-14 Darin Adler <darin@apple.com>
7643 * khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::putValue):
7644 Add braces and fix a syntax error.
7646 * kwq/mac-encodings.txt: Add comments. Make utf-16 be a synonym for
7647 utf-8 rather than having it actually try to treat things as 16-bit.
7648 We will have to revisit this, but for now it makes zingermans.com work again.
7650 * kwq/make-charset-table.pl: Allow comments.
7652 2002-08-14 Maciej Stachowiak <mjs@apple.com>
7654 Fixed a JavaScript object leak that was plaguing ign.com and
7655 livepage.apple.com, among other things.
7657 * khtml/ecma/kjs_html.cpp:
7658 (KJS::HTMLDocument::putValue): Create a Value wrapper for a newly allocated
7659 DOMNode object that's not used past this function so it gets GC'd properly.
7660 (KJS::HTMLElement::putValue): Likewise.
7662 2002-08-14 Maciej Stachowiak <mjs@apple.com>
7664 * khtml/ecma/kjs_window.cpp: Fix to build clean after
7665 JavaScriptCore live class changes (this way of handling it is kind
7666 of a hack, but kjs is unhappy to have Boolean defined so it can't
7667 unconditionally include CoreFoundation.h in collector.h; will fix
7670 2002-08-13 Maciej Stachowiak <mjs@apple.com>
7672 Add the ability to determine the classes of live JavaScript
7673 objects, to help with leak fixing.
7675 * kwq/WebCoreJavaScript.h:
7676 * kwq/WebCoreJavaScript.mm:
7677 (+[WebCoreJavaScript liveObjectClasses]):
7679 2002-08-13 David Hyatt <hyatt@apple.com>
7681 An initial implementation of percentage height table cells.
7682 This implementation will properly distribute space among
7683 rows with percentage table cells, although there could be
7684 issues with percentage height cells that span rows.
7686 I have also fixed replaced elements so that they understand when they
7687 are a percentage height and contained within a percentage height
7688 cell that they can grow. This fixes the textarea on bloggers'
7689 comment posting page so that it sizes properly.
7691 There are many issues remaining with this implementation;
7692 blocks need to be taught how to flex when they specify a percent
7693 height. There is also some sort of rounding error with tables
7694 that specify a height of 100% that I haven't yet figured out.
7695 (This error was present before my changes, and it's still present
7698 Also, percentage height tables seem to "lock" to the largest size
7699 they've ever been and don't properly relayout when they become
7700 smaller. Again, this bug existed before my changes.
7702 * khtml/rendering/render_box.cpp:
7703 (RenderBox::calcReplacedHeight):
7704 * khtml/rendering/render_table.cpp:
7705 (RenderTable::RenderTable):
7706 (RenderTable::calcRowHeight):
7707 (RenderTable::layout):
7708 (RenderTable::layoutRows):
7709 (RenderTable::print):
7710 (RenderTableCell::RenderTableCell):
7711 * khtml/rendering/render_table.h:
7713 2002-08-13 Darin Adler <darin@apple.com>
7715 Character set handling improvements. In total, this adds 92 new character encoding
7716 names to the list we know how to handle (299, up from 207), so it probably makes
7717 some pages work that didn't work before. It probably also adds character encoding
7718 names that are never used in practice.
7720 * kwq/character-sets.txt: Took out all but one of our changes. We now handle aliases
7721 that are not in this file by adding them to mac-encodings.txt.
7722 * kwq/mac-encodings.txt: Added. Lists CFStringEncoding values and IANA names for them.
7723 We keep this file small by using the aliasing in character-sets.txt, and we also continue
7724 to get MIB numbers from character-sets.txt.
7725 * kwq/make-charset-table.pl: Rewrote to read from new format mac-encodings.txt file, and
7726 check for new kinds of errors.
7728 * kwq/.cvsignore: Don't ignore the make-mac-encodings files any more, since we
7729 don't compile that any more.
7730 * kwq/Makefile.am: Remove rules for compiling and running make-mac-encodings.
7731 * kwq/make-mac-encodings.c: Removed.
7733 2002-08-13 Darin Adler <darin@apple.com>
7735 - fixed 3023439 -- support for windows-874 charset for thai
7737 * kwq/character-sets.txt: Added cp874 and windows-874.
7738 * kwq/make-charset-table.pl: Fix bug where it would right out a bad MIB enum for
7739 the many Macintosh character sets without associated MIB numbers.
7741 2002-08-13 Darin Adler <darin@apple.com>
7743 Some QRegion fixes inspired by Dave's clipping work.
7745 * kwq/qt/qregion.h: Add setClip, remove getNSBezierPath.
7747 (NSMakePoint): Added. Helper function; could go in a header some day.
7748 (NSMakeRect): Added. Helper function; could go in a header some day.
7749 (MakeQRect): Added. Helper function; could go in a header some day.
7750 (QRegion::QRegion): Make a paths array instead of a single path. Also, change things
7751 so we actually copy the paths. The old code might translate a path that was shared
7752 by two QRegion objects.
7753 (QRegion::intersect): Merge the paths arrays of the two passed-in paths.
7754 (QRegion::contains): Return true only if all paths in the array contain the point.
7755 (QRegion::isNull): Return true if any of the paths in the array are empty.
7756 (QRegion::translate): Translate all the paths in the array.
7757 (QRegion::boundingRect): Return the intersection of the bounding rects of all the
7759 (QRegion::setClip): Call setClip on the first path, and addClip on the others.
7761 * kwq/KWQPainter.mm: (QPainter::setClipRegion): Use QRegion::setClip().
7763 2002-08-12 David Hyatt <hyatt@apple.com>
7765 Reverting a change that I unintentionally checked in last
7766 week. I wasn't yet ready to land it. It may work, but I
7767 want to test it more first.
7769 * khtml/rendering/render_flow.cpp:
7770 (RenderFlow::layoutBlockChildren):
7772 2002-08-12 David Hyatt <hyatt@apple.com>
7774 Implement clipping. The one thing that still needs
7775 to be done is that the intersect method in KWQRegion.mm
7776 needs to be implemented. Even without that, this gets
7777 the ticker on livepage.apple.com clipping properly.
7779 * kwq/KWQPainter.mm:
7782 (QPainter::restore):
7783 (QPainter::setClipRegion):
7786 2002-08-12 David Hyatt <hyatt@apple.com>
7788 Make the news ticker on livepage.apple.com scroll properly.
7789 It still doesn't clip though. Fixing this involved correctly
7790 dirtying the render tree when dynamic DOM changes occurred
7791 (this was a bug in KHTML's DOM), as well as providing an
7792 implementation of the MSIE offsetWidth extension that took
7793 inlines into account (KHTML's impl was always returning a width
7796 * khtml/ecma/kjs_dom.cpp:
7797 (DOMNode::getValueProperty):
7798 * khtml/rendering/render_flow.cpp:
7799 (RenderFlow::offsetWidth):
7800 (RenderFlow::offsetHeight):
7801 * khtml/rendering/render_flow.h:
7802 * khtml/rendering/render_object.h:
7803 * khtml/xml/dom_nodeimpl.cpp:
7804 (NodeBaseImpl::insertBefore):
7805 (NodeBaseImpl::replaceChild):
7806 (NodeBaseImpl::appendChild):
7808 2002-08-12 Darin Adler <darin@apple.com>
7810 * khtml/misc/loader.cpp: (Cache::insertInLRUList):
7811 Add missing piece of the last check-in.
7813 2002-08-12 Darin Adler <darin@apple.com>
7815 At Ken's urging, fixed the loader cache to be more efficient.
7816 Gives 1% on the cvs-base test.
7818 * force-clean-timestamp: This requires a full rebuild.
7820 * khtml/misc/loader.h:
7821 * khtml/misc/loader.cpp:
7822 (CachedObject::~CachedObject): No longer inline, which is fine since
7823 it was a virtual function anyway. Remove from the LRU list.
7824 (CachedObject::setRequest): Add to the LRU list if it qualifies now.
7825 (CachedObject::ref): Remove from the LRU list.
7826 (CachedObject::deref): Add to the LRU list if it qualifies now.
7827 (CachedCSSStyleSheet::ref): Call CachedObject::ref.
7828 (CachedCSSStyleSheet::deref): Call CachedObject::deref.
7829 (CachedScript::ref): Call CachedObject::ref.
7830 (CachedScript::deref): Call CachedObject::deref.
7831 (CachedImage::ref): Call CachedObject::ref.
7832 (CachedImage::deref): Call CachedObject::deref.
7833 (Cache::init): No "LRU list" to create.
7834 (Cache::clear): No "LRU list" to delete.
7835 (Cache::requestImage): Call moveToHeadOfLRUList.
7836 (Cache::requestStyleSheet): Call moveToHeadOfLRUList.
7837 (Cache::requestScript): Call moveToHeadOfLRUList.
7838 (Cache::flush): New algorithm.
7839 (Cache::removeCacheEntry): Call removeFromLRUList.
7840 (Cache::removeFromLRUList): Added.
7841 (Cache::moveToHeadOfLRUList): Added.
7842 (Cache::insertInLRUList): Added.
7844 * kwq/KWQLoaderImpl.mm: (KWQCheckIfReloading):
7845 * kwq/WebCoreBridge.h:
7846 Change dataSourceIsReloading to isReloading.
7848 2002-08-12 David Hyatt <hyatt@apple.com>
7850 Fix for the crash (assert) at mlb.com (3014322). recalcStyle was
7851 re-entrant, causing the render tree to be reconstructed
7852 while in the process of being destroyed.
7854 Also patched object frame to only fire load/unload if
7855 render objects exist (since the plugin cannot load without
7856 the render object initializing it anyway).
7858 * khtml/html/html_objectimpl.cpp:
7859 (HTMLObjectElementImpl::attach):
7860 (HTMLObjectElementImpl::detach):
7861 * khtml/xml/dom_docimpl.cpp:
7862 (DocumentImpl::DocumentImpl):
7863 (DocumentImpl::recalcStyle):
7864 * khtml/xml/dom_docimpl.h:
7866 2002-08-12 Darin Adler <darin@apple.com>
7868 * force-clean-timestamp: Need a full build because of KJS changes.
7869 * khtml/ecma/kjs_window.h: Need to store an Object, not an ObjectImp, because there's no way
7870 to copy an ObjectImp. KJS changes caught this mistake.
7872 2002-08-12 Darin Adler <darin@apple.com>
7874 - re-fixed 2948387 -- stop button flashes to "go" two extra times while loading citibank.com
7876 It turns out Maciej and I rebroke this when we made the "completed" code run.
7877 There was a related APPLE_CHANGES that had to be removed so that we do each redirect only once.
7878 Doing the redirect multiple times sent confusing signals to the web browser.
7880 * khtml/khtml_part.cpp: (KHTMLPart::scheduleRedirection): Remove APPLE_CHANGES so we don't
7881 try to redirect until the page is complete.
7883 === Alexander-17 ===
7885 2002-08-10 Ken Kocienda <kocienda@apple.com>
7887 Check box in target setting panel to enable prebinding.
7889 * WebCore.pbproj/project.pbxproj
7891 2002-08-10 Ken Kocienda <kocienda@apple.com>
7893 Added an extra function which checks with WebKit to see if
7894 the load is a reload. If it is, the WebCore cache is bypassed.
7896 * khtml/misc/loader.cpp:
7897 (DocLoader::requestImage): Added acall to new KWQCheckIfReloading function.
7898 (DocLoader::requestStyleSheet): Ditto.
7899 (DocLoader::requestScript): Ditto.
7900 * kwq/KWQLoaderImpl.h:
7901 * kwq/KWQLoaderImpl.mm:
7902 (KWQCheckIfReloading): New function which checks with WebKit to see if the load is a reload.
7903 * kwq/WebCoreBridge.h:
7905 2002-08-09 Darin Adler <darin@apple.com>
7907 * force-clean-timestamp: JavaScriptCore headers changed that require a full build here.
7909 2002-08-09 Darin Adler <darin@apple.com>
7911 - fixed 3018063 -- frame problems at directory.apple.com
7912 - fixed 3021484 -- Go to "xxxx" mouseover status message should not show ".."
7914 Basically, we had no frame targeting for forms. I made the form code share
7915 the same frame targeting code we use for clicking on URLs.
7917 * khtml/khtml_part.cpp: (KHTMLPart::openURLInFrame): Don't compile this
7918 function at all any more.
7920 * kwq/KWQKHTMLPartBrowserExtension.mm:
7921 (KHTMLPartBrowserExtension::openURLRequest): Call the impl's openURLRequest
7922 instead of calling the part's openURLInFrame. Clearer.
7924 * kwq/KWQKHTMLPartImpl.h: Remove openURLInFrame, add openURLRequest.
7925 Change urlSelected args parameter to a const reference. Add private
7926 getBridgeForFrameName helper function.
7927 * kwq/KWQKHTMLPartImpl.mm:
7928 (KWQKHTMLPartImpl::getBridgeForFrameName): Moved rules for choosing a frame
7929 here from urlSelected so they can be shared.
7930 (KWQKHTMLPartImpl::openURLRequest): Use getBridgeForFrameName instead of
7931 having our own different code for finding the right frame.
7932 (KWQKHTMLPartImpl::urlSelected): Move frame choosing code into getBridgeForFrameName.
7933 (KWQKHTMLPartImpl::submitForm): Use getBridgeForFrameName instead of always
7934 ignoring the target and using our own frame.
7935 (KWQKHTMLPartImpl::overURL): Take base targeting into account when making the
7936 status bar messages, and use the completed URL, not the partial, for the message.
7938 2002-08-09 Darin Adler <darin@apple.com>
7940 - fixed 2945441 -- base target is ignored
7942 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::urlSelected):
7943 Add code to respect the base target in the document. It would be way better
7944 to use more of the KHTML code instead of copying it a line at a time into
7945 KWQ -- that can come later when the fire drill is over.
7947 === milestone 0.5 ===
7949 === Alexander-16 ===
7951 2002-08-09 Darin Adler <darin@apple.com>
7953 - fixed 3020594 -- crash in KWQKHTMLPartImpl::end() visiting particular page
7955 * khtml/khtml_part.cpp: (KHTMLPart::end): Our hacked alternative to a signal
7956 requires a NULL check.
7958 2002-08-08 Maciej Stachowiak <mjs@apple.com>
7960 Fix to get onLoad to fire, so the iBench test works.
7962 * khtml/khtml_part.cpp:
7963 (KHTMLPart::checkCompleted): Put back some needed code that was
7964 ifdef'd out (the part that emits completed()).
7965 (KHTMLPart::slotChildCompleted): Enabled; ifdef'd out part.
7966 (KHTMLPart::frame): Enabled.
7967 * khtml/khtml_part.h:
7968 * kwq/KWQKHTMLPartImpl.mm:
7969 (KHTMLPart::completed): Hack to get completed signal delivered to
7971 (KWQKHTMLPartImpl::requestFrame): Initialize m_part
7972 * kwq/WebCoreBridge.h: createChildFrameNamed method now returns
7973 the bridge for the child frame.
7975 2002-08-08 Richard Williamson <rjw@apple.com>
7977 Move stuff out of core into kit.
7979 * kwq/WebCoreBridge.mm:
7980 (-[WebCoreBridge drawRect:withPainter:]):
7981 * kwq/WebCoreTextRendererFactory.h:
7982 * kwq/WebCoreTextRendererFactory.m:
7984 2002-08-08 Darin Adler <darin@apple.com>
7986 - fixed 3019353 -- Japanese (Autodetect) encoding not properly supported
7988 * kwq/make-charset-table.pl: Add a "japanese-autodetect" entry to the table
7989 explicitly, with a hardcoded encoding value. This should be good enough.
7991 * kwq/KWQKHTMLSettings.mm: (KHTMLSettings::mediumFixedFontSize):
7992 * kwq/WebCoreEncodings.h:
7993 * kwq/WebCoreSettings.h:
7994 * kwq/WebCoreSettings.m:
7995 Change "fixed font size" to "default fixed font size".
7997 Placeholders for the "drawing observer" method that I'll be using
7998 to implement the "dump page as diffable text" feature.
8000 * kwq/WebCoreTestController.h: Added.
8001 * kwq/WebCoreTestController.m: Added.
8002 * WebCore.exp: Mention new class.
8003 * WebCore.pbproj/project.pbxproj: Mention new files.
8005 2002-08-08 Maciej Stachowiak <mjs@apple.com>
8007 Added an SPI that can be used to get at the WebCore
8008 charset-name/encoding table; this is useful for a couple of things
8011 * kwq/WebCoreEncodings.h: Added.
8012 * kwq/WebCoreEncodings.mm: Added.
8013 (+[WebCoreEncodings charsetNameForEncoding:]):
8014 (+[WebCoreEncodings encodingForCharsetName:]):
8015 * WebCore.exp: Export the new class.
8016 * WebCore.pbproj/project.pbxproj: Add new files.
8018 2002-08-08 Richard Williamson <rjw@apple.com>
8020 Changes to coalesce all drawing calls of the same text
8021 style and color into one call to CG. Significantly
8022 improves drawing time. My tests should about 7-8% on
8023 ALL pages. Disabled the code for now until I can verify
8024 on speed improvements on Ken's test rig.
8026 * kwq/WebCoreBridge.mm:
8027 (-[WebCoreBridge drawRect:withPainter:]):
8028 * kwq/WebCoreTextRendererFactory.h:
8029 * kwq/WebCoreTextRendererFactory.m:
8030 (-[WebCoreTextRendererFactory endCoalesceTextDrawing]):
8031 (-[WebCoreTextRendererFactory startCoalesceTextDrawing]):
8033 2002-08-07 Maciej Stachowiak <mjs@apple.com>
8037 - fixed 2956008 - Need API for getting/setting text encoding for current page
8039 * kwq/KWQKHTMLPartImpl.h:
8040 * kwq/KWQKHTMLPartImpl.mm:
8041 (KWQKHTMLPartImpl::slotData): Handle the possibility of override encoding -
8042 one that's not just a hint from the server but should override
8043 * kwq/WebCoreBridge.h:
8044 * kwq/WebCoreBridge.mm:
8045 (-[WebCoreBridge addData:withEncoding:]): Adjust for slotData interface change.
8046 (-[WebCoreBridge addData:withOverrideEncoding:]): New method that allows
8047 passing override encoding as a CFStringEncoding.
8048 (-[WebCoreBridge textEncoding]): Return the current text encoding.
8050 2002-08-07 David Hyatt <hyatt@apple.com>
8052 Adding support for a separate fixed font size to WebCore.
8053 Your fixed font size pref will now be honored when the
8054 generic monospace family is used.
8056 * khtml/css/cssstyleselector.cpp:
8057 * khtml/css/cssstyleselector.h:
8058 * khtml/rendering/font.h:
8059 * khtml/rendering/render_flow.cpp:
8060 (RenderFlow::layoutBlockChildren):
8061 * kwq/KWQKHTMLSettings.mm:
8062 (KHTMLSettings::mediumFixedFontSize):
8063 * kwq/WebCoreSettings.h:
8064 * kwq/WebCoreSettings.m:
8065 (-[WebCoreSettings setFixedFontSize:]):
8066 (-[WebCoreSettings fixedFontSize]):
8067 * kwq/khtml/khtml_settings.h:
8069 2002-08-07 Darin Adler <darin@apple.com>
8071 - fixed 3017499 -- One-click crasher at hondamotorcycle.com
8073 * kwq/KWQKURL.mm: (operator==): Just compare the strings.
8076 2002-08-07 Richard Williamson <rjw@apple.com>
8081 (QFrame::setFrameStyle):
8082 * kwq/WebCoreBridge.mm:
8083 (-[WebCoreBridge drawRect:withPainter:]):
8085 2002-08-07 Darin Adler <darin@apple.com>
8087 * kwq/KWQKURL.mm: (KURL::KWQKURLPrivate::decompose): Use CFURLCopyPath
8088 instead calling _NSParseStringToGenericURLComponents.
8090 2002-08-07 Richard Williamson <rjw@apple.com>
8092 Turned off temporary debugging I accidentally checked in.
8094 * kwq/WebCoreBridge.mm:
8095 (-[WebCoreBridge drawRect:withPainter:]):
8097 2002-08-06 David Hyatt <hyatt@apple.com>
8099 Make user stylesheet changes dynamic. Web documents will now
8100 update as the user stylesheet is applied and unapplied. Altered
8101 how reapplyStyles works a bit.
8103 * khtml/khtml_part.cpp:
8104 (KHTMLPart::reparseConfiguration):
8105 * khtml/xml/dom_docimpl.cpp:
8106 (DocumentImpl::setUserStyleSheet):
8107 * kwq/WebCoreBridge.mm:
8108 (-[WebCoreBridge reapplyStyles]):
8110 2002-08-06 David Hyatt <hyatt@apple.com>
8112 Enable user stylesheet support. It works from a fresh start but
8113 is not yet completely dynamic.
8115 * khtml/khtml_part.cpp:
8116 (KHTMLPart::setUserStyleSheet):
8117 * kwq/KWQKHTMLSettings.mm:
8118 (KHTMLSettings::userStyleSheet):
8120 2002-08-06 Darin Adler <darin@apple.com>
8122 - fixed 2965321 -- Crash on window close in kthml::Loader::cancelRequests from particular page
8124 * khtml/misc/loader.cpp: (Loader::servePendingRequests):
8125 Look at return value from KWQServeRequest instead of assuming it will always succeed.
8126 * kwq/KWQLoaderImpl.h: Add return value for KWQServeRequest.
8127 * kwq/KWQLoaderImpl.mm: (KWQServeRequest): Return false if we fail to make either the NSURL
8128 or the WebResourceHandle. Also make sure that we delete the job if necessary.
8130 2002-08-06 John Sullivan <sullivan@apple.com>
8132 * force-clean-timestamp:
8133 Edited this file to force a make clean in WebCore after
8134 discovering that it was necessary the hard way. I'm not
8135 sure which earlier checkin made this be required.
8137 2002-08-06 Darin Adler <darin@apple.com>
8139 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::overURL):
8140 Fix crash in overURL, another case just like bug 3006336.
8142 2002-08-06 Richard Williamson <rjw@apple.com>
8144 Frame resizing related changes. Frames are now resizable
8145 w/ a resize bar. Still need to draw frame borders.
8147 * khtml/rendering/render_frames.cpp:
8148 (RenderFrameSet::userResize):
8149 (RenderFrame::slotViewCleared):
8151 (QFrame::setFrameStyle):
8152 (QFrame::frameStyle):
8153 (QFrame::frameWidth):
8155 (QWidget::lockDrawingFocus):
8156 (QWidget::unlockDrawingFocus):
8157 (QWidget::flushDrawing):
8158 (QWidget::enableFlushDrawing):
8159 (QWidget::disableFlushDrawing):
8160 (QWidget::setDrawingAlpha):
8161 (QWidget::displayRect):
8162 * kwq/WebCoreBridge.mm:
8163 (-[WebCoreBridge drawRect:withPainter:]):
8167 2002-08-06 Maciej Stachowiak <mjs@apple.com>
8169 Removed some APPLE_CHANGES no longer needed after the part change.
8171 * khtml/khtml_part.cpp:
8172 (KHTMLPart::openedByJS): Don't call impl version.
8173 (KHTMLPart::setOpenedByJS): Don't call impl version.
8174 * kwq/KWQKHTMLPartImpl.h:
8175 * kwq/KWQKHTMLPartImpl.mm: Removed openedByJS and setOpenedByJS.
8176 * kwq/WebCoreBridge.h: Don't prototype setOpenedByScript: and
8177 openedByScript methods now that they are not needed.
8179 2002-08-06 David Hyatt <hyatt@apple.com>
8181 Make checkboxes and radio buttons use the small control
8182 size. Tweak their baselines to not use font metrics and
8183 to line up properly. (voodooextreme.com nearly renders
8184 the left column correctly now.)
8186 * khtml/rendering/render_form.cpp:
8187 (RenderCheckBox::baselinePosition):
8188 (RenderRadioButton::baselinePosition):
8189 * khtml/rendering/render_form.h:
8190 * kwq/KWQCheckBox.mm:
8191 (QCheckBox::QCheckBox):
8192 * kwq/KWQRadioButton.mm:
8193 (QRadioButton::QRadioButton):
8195 2002-08-06 John Sullivan <sullivan@apple.com>
8197 WebCore part of fix for 2915396 -- implement larger/smaller font
8198 or page zoom functionality
8200 * khtml/khtml_part.cpp:
8201 (KHTMLPart::setZoomFactor): inside APPLE_CHANGES, remove use of
8202 KHTML limits for zoom factor; this is a client responsibility in
8205 2002-08-06 Darin Adler <darin@apple.com>
8207 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::urlSelected):
8208 Put in a check for nil that I missed.
8210 2002-08-06 Darin Adler <darin@apple.com>
8212 - fixed 2948805 -- Need WebKit API for larger/smaller font feature
8214 * khtml/khtml_part.cpp:
8215 (KHTMLPart::clear): Head in the direction of using the m_frames and
8216 m_objects arrays, by turning some APPLE_CHANGES code on.
8217 (KHTMLPart::checkCompleted): More code turned on here.
8218 (KHTMLPart::checkEmitLoadEvent): And more code turned on here.
8219 (KHTMLPart::parentPart): Remove APPLE_CHANGES version. We can use the original now.
8220 (KHTMLPart::setZoomFactor): Remove APPLE_CHANGES. We want this function now.
8221 * khtml/khtml_part.h: Remove some APPLE_CHANGES to make xmlDocImpl public.
8223 * khtml/khtmlpart_p.h: Remove a bunch of APPLE_CHANGES.
8224 * kwq/KWQKHTMLPartImpl.h: Remove parentPart(), add getDocument() and getRenderer().
8225 * kwq/KWQKHTMLPartImpl.mm:
8226 (KWQKHTMLPartImpl::urlSelected): Use parentPart() instead of [bridge parent].
8227 (KWQKHTMLPartImpl::requestFrame): Set up a ChildFrame in the m_frames array.
8228 (KWQKHTMLPartImpl::layout): Use getRenderer().
8229 (KWQKHTMLPartImpl::getDocument): Added.
8230 (KWQKHTMLPartImpl::getRenderer): Added.
8231 * kwq/WebCoreBridge.h: Add [setParent:], remove [parent].
8232 * kwq/WebCoreBridge.mm:
8233 (-[WebCoreBridge setParent:]): Added.
8234 (-[WebCoreBridge reapplyStyles]): Use getDocument().
8235 (-[WebCoreBridge forceLayout]): Use getRenderer().
8236 (-[WebCoreBridge drawRect:withPainter:]): Use getRenderer().
8237 (-[WebCoreBridge copyDOMTree:]): Use getDocument().
8238 (-[WebCoreBridge copyRenderTree:]): Use getRenderer().
8239 (-[WebCoreBridge completeURLForDOMString:]): Use getDocument().
8240 (-[WebCoreBridge elementAtPoint:]): Use getRenderer().
8241 (-[WebCoreBridge setTextSizeMultiplier:]):
8242 * kwq/khtml/khtml_ext.h: Add dummy setEnabled function to make khtml_part.cpp compile.
8243 * kwq/kparts/part.h: Add real parent() and setParent() implementation.
8245 2002-08-05 Maciej Stachowiak <mjs@apple.com>
8247 Fixed crashers and leaks that come up when changing the view
8248 associated with a part.
8250 * khtml/khtmlview.cpp:
8251 (KHTMLView::~KHTMLView): Don't zero out the part's view, because
8252 that will mess up setting a new one.
8254 * kwq/WebCoreBridge.mm:
8255 (-[WebCoreBridge createKHTMLViewWithNSView:width:height:marginWidth:marginHeight:]):
8256 Destroy the old view if we own it.
8258 2002-08-05 Darin Adler <darin@apple.com>
8260 * kwq/KWQKHTMLPartImpl.mm:
8261 (KWQKHTMLPartImpl::openURLInFrame):
8262 (KWQKHTMLPartImpl::urlSelected):
8263 (KWQKHTMLPartImpl::requestFrame):
8264 (KWQKHTMLPartImpl::requestObject):
8265 Add some nil checks before making calls with nil NSURL objects.
8266 But we also have to figure out how to report some kind of error
8267 in these cases, because the current behavior is not so good.
8269 2002-08-05 Maciej Stachowiak <mjs@apple.com>
8271 - fixed 3007072 - need to be able to build fat
8273 * WebCore.pbproj/project.pbxproj: Fixed DeploymentFat build.
8275 2002-08-05 Darin Adler <darin@apple.com>
8277 - fixed 3016374 -- Change font default from small back to medium
8279 * khtml/css/cssstyleselector.cpp:
8280 (CSSStyleSelector::computeFontSizes): Change back to basing everything on
8281 mediumFontSize() as opposed to a defaultFontSize that was the same as "small".
8282 (CSSStyleSelector::applyRule): Default is m_fontSizes[3] again.
8283 * khtml/html/html_inlineimpl.cpp: (HTMLFontElementImpl::parseAttribute):
8284 Shift all the sizes up one, so 3 is now medium. It's important that 3 be the same as the default.
8285 * khtml/html/html_tableimpl.cpp: (HTMLTableElementImpl::attach): Change the default back to medium.
8286 * khtml/xml/dom_docimpl.cpp: (DocumentImpl::recalcStyle): Change the default back to [3].
8287 * kwq/KWQKHTMLSettings.mm: (KHTMLSettings::mediumFontSize): Change name back.
8288 * kwq/khtml/khtml_settings.h: Change name back to medium.
8290 Do a little bit of wiring for the "text size multiplier" feature.
8292 * kwq/WebCoreBridge.h:
8293 * kwq/WebCoreBridge.mm: (-[WebCoreBridge setTextSizeMultiplier:]): Added.
8295 2002-08-05 Darin Adler <darin@apple.com>
8297 - fixed 3009321 -- bookmark and history menus show black square for (tm)
8299 * khtml/html/htmltokenizer.cpp:
8300 (HTMLTokenizer::parseSpecial): Call fixUpChar.
8301 (HTMLTokenizer::parseText): Call fixUpChar.
8302 (HTMLTokenizer::parseTag): Call fixUpChar.
8304 2002-08-05 Darin Adler <darin@apple.com>
8306 - fixed 3016795 -- http://www.google.co.il/ fails to decode
8308 * kwq/make-charset-table.pl: Added a hack that makes us treat for
8309 iso-8859-8-e and iso-8859-8-i the same as iso-8859-8; may not be exactly
8310 right, but it's probably OK modulo the actual bidi support.
8312 2002-08-05 Maciej Stachowiak <mjs@apple.com>
8314 * kwq/KWQKHTMLPartImpl.mm:
8315 (KWQKHTMLPartImpl::slotData): Simplified a bit.
8317 2002-08-05 Maciej Stachowiak <mjs@apple.com>
8319 Merged KHTMLPart::end method with khtml original.
8321 * khtml/khtml_part.cpp:
8322 (KHTMLPart::end): Remove call to impl. Use original version, but
8323 clear KURL cache and call slotFinishedParsing as well.
8324 * kwq/KWQKHTMLPartImpl.h:
8325 * kwq/KWQKHTMLPartImpl.mm:
8326 (KWQKHTMLPartImpl::end): Removed.
8327 (KWQKHTMLPartImpl::gotoBaseAnchor): Removed. No longer needed.
8329 (KURL::encodedHtmlRef): Implemented.
8330 (KURL::htmlRef): Implemented.
8331 * kwq/WebCoreBridge.h:
8332 * kwq/WebCoreBridge.mm:
8333 (-[WebCoreBridge scrollToBaseAnchor]): Removed. No longer needed.
8335 2002-08-05 Maciej Stachowiak <mjs@apple.com>
8337 Merged KHTMLPart::openURL method with khtml original.
8339 * khtml/khtml_part.cpp:
8340 (KHTMLPart::openURL): Don't call the impl version. Leave most of
8341 this #ifdef'd, except the parts that look useful.
8342 * kwq/KWQKHTMLPartImpl.h:
8343 * kwq/KWQKHTMLPartImpl.mm:
8344 (KWQKHTMLPartImpl::openURL): Removed.
8346 2002-08-05 Maciej Stachowiak <mjs@apple.com>
8348 Merged KHTMLPart::begin method with khtml original.
8350 * khtml/khtml_part.cpp:
8351 (KHTMLPart::begin): Restore this method and don't call the impl
8352 version. ifdef out the parts that don't compile.
8353 * kwq/KWQKHTMLPartImpl.h:
8354 * kwq/KWQKHTMLPartImpl.mm:
8355 (KWQKHTMLPartImpl::begin): Removed.
8356 * kwq/KWQKHTMLSettings.mm:
8357 (KHTMLSettings::showAnimations): Implemented; always return false.
8358 (KHTMLSettings::userStyleSheet): Implemented; always return empty
8360 * kwq/kdecore/kurl.h: Implemented isValid as inline method.
8362 2002-08-04 David Hyatt <hyatt@apple.com>
8364 Fix my bungled CSS for input fields in the user agent style
8367 * khtml/css/html4.css:
8369 2002-08-03 Darin Adler <darin@apple.com>
8371 - fixed 2943519 - • is rendered as an asterisk rather than a bullet
8373 * khtml/html/htmltokenizer.cpp: (fixUpChar): Replaced the macro of this
8374 name by an inline function that follows the Unicode specification. The
8375 macro was both making Windows Latin 1 extensions character codes
8376 (like 149 for bullet) work, but also mapping to characters that were
8377 suitable for Qt. Since OS X has no problem with the real Unicode values,
8378 we don't need that hack.
8380 2002-08-02 Darin Adler <darin@apple.com>
8382 - fixed 3015522 -- crash decoding http://www.haaretz.co.il/
8384 * khtml/misc/decoder.cpp: (Decoder::setEncoding): Put some hacks for
8385 handling Hebrew text encoding inside ifndef APPLE_CHANGES. It's not clear
8386 that these or the equivalent are needed for WebCore (they are related to
8387 the as-yet unimplemented bidirectional text support) and they were making
8390 - fixed 2949235 -- checkboxes in wrong place until you scroll away and back
8392 I fixed this once before, then removed that fix in favor of a simpler one.
8393 But the simpler one didn't work, and I didn't test it properly. Now I have
8394 a fix that works without the drawbacks of the original.
8396 * khtml/rendering/render_replaced.cpp: (RenderWidget::layout): Remove the
8397 call to move the widget aside. This does no good because it's only called
8398 if the widget is told it needs to layout, which only happens if it's resized.
8400 * khtml/rendering/render_root.cpp: (RenderRoot::layout): Call a KWQ function
8401 so we can do some work at layout time.
8403 * kwq/KWQKHTMLPartImpl.mm:
8404 (moveWidgetsAside): Added. Function used recursively to move all widgets aside.
8405 (KWQKHTMLPartImpl::layout): Added. Called at layout time; moves all the widgets
8406 aside. They are moved back when print functions are called.
8408 WebCore support for feature where client redirects are treated as if the
8409 page was continuing to load. A big part of this was changing redirection
8410 so that it uses QTimer, allowing us to use more of the original KHTMLPart
8411 code. I added a feature to QTimer that KWQKHTMLPartImpl uses to monitor
8412 what KHTMLPart does with the timer.
8414 * kwq/qt/qobject.h: Changed "slots" definition so that all slots are public (to help
8415 KWQSlot get at them). Added a prefix for the slot and signal strings, so that we can detect
8416 the case where it's trying to connect a slot to another slot. Implement the convenience
8417 version of connect here in the header. Implement blockSignals. Remove setTarget.
8418 Make target mutable. Add new m_signalListHead and m_signalsBlocked.
8420 (QObject::findSignal): Added. Helper function that locates a signal by name.
8421 (QObject::connect): Connects a signal to a slot using the new KWQSignal and KWQSlot.
8422 (QObject::disconnect): Disconnects, similar to the above.
8423 (QObject::QObject): Initialize target, m_signalListHead, and m_signalsBlocked.
8424 (QObject::~QObject): Assert that m_signalListHead is 0.
8426 * khtml/khtml_part.cpp:
8427 (KHTMLPart::init): Move the code that connects the redirection timer out
8429 (KHTMLPart::~KHTMLPart): Remove the APPLE_CHANGES around the code that
8430 stops the redirection timer.
8431 (KHTMLPart::restoreURL): Remove the APPLE_CHANGES around the code that
8432 stops the redirection timer.
8433 (KHTMLPart::openURL): Move the APPLE_CHANGES so the code that stops the
8434 redirection timer will run.
8435 (KHTMLPart::closeURL): Remove the APPLE_CHANGES around the code that
8436 stops the redirection timer.
8437 (KHTMLPart::scheduleRedirection): Remove most of this function from the
8438 APPLE_CHANGES. We still probably need to revisit the handling of m_bComplete.
8440 * kwq/KWQSignal.h: Added.
8441 * kwq/KWQSignal.mm: Added.
8442 * kwq/KWQSlot.h: Added.
8443 * kwq/KWQSlot.mm: Added.
8444 * WebCore.pbproj/project.pbxproj: Added KWQSignal.h/mm, KWQSlot.h/mm.
8446 * khtml/misc/loader.h: Simplify APPLE_CHANGES ifdefs since all slots are now public.
8448 * force-clean-timestamp: Touch this since header files were changed.
8450 * khtml/ecma/kjs_window.cpp:
8451 (Window::get): Disable the "name" part of this. We can re-enable it if we
8452 need it, but every QObject had a name because of this one piece of code,
8453 and I don't think it was effectively setting the frame name.
8454 (Window::put): Disable the "name" part of this for the same reason.
8455 (History::getValueProperty): Disable the "length" part of this. It was
8456 calling some unimplemented stuff. We can re-enable this and implement
8457 what we need in KWQ then.
8459 * khtml/rendering/render_form.h: Remove RenderTextArea::performAction, because I
8460 changed this one case to use the new connect machinery. We can convert all the other
8461 form items to use the new machinery, and then eliminate performAction altogether.
8462 * khtml/rendering/render_form.cpp:
8463 (RenderSubmitButton::RenderSubmitButton): Remove unneeded setTarget. For the moment,
8464 connect takes care of this, and in the long run we won't need to set the target at all.
8465 (RenderLineEdit::RenderLineEdit): Ditto.
8467 * khtml/rendering/render_frames.h:
8468 * khtml/rendering/render_frames.cpp: Put partLoadingErrorNotify inside ifndef APPLE_CHANGES
8469 because it uses a bunch of Qt stuff that's not used anywhere else, and we never call it.
8471 * kwq/KWQKHTMLPartImpl.h: Remove scheduleRedirection, timerEvent, and m_redirectionTimer,
8472 add redirectionTimerStartedOrStopped and layout.
8473 * kwq/KWQKHTMLPartImpl.mm:
8474 (redirectionTimerMonitor): Added. Small stub that calls redirectionTimerStartedOrStopped.
8475 (KWQKHTMLPartImpl::KWQKHTMLPartImpl): Set up a monitor on the redirection timer.
8476 (KWQKHTMLPartImpl::~KWQKHTMLPartImpl): Remove now-unneeded killTimer call.
8477 (KWQKHTMLPartImpl::jumpToSelection): Simplify by using dynamic_cast instead of render_name().
8478 (KWQKHTMLPartImpl::redirectionTimerStartedOrStopped): Added. Calls bridge to report client
8479 redirect events whenever the redirection timer is started or stopped.
8481 * kwq/qt/qtextedit.h: Define a KWQSignal for textChanged, and a function that calls it.
8482 * kwq/KWQTextEdit.mm: (QTextEdit::QTextEdit): Set up a KWQSignal for textChanged.
8483 * kwq/KWQTextArea.mm: (-[KWQTextArea textDidEndEditing:]): Instead of calling emitAction,
8484 call textChanged, which will emit the signal using the new signal machinery.
8488 (+[KWQTimerTarget targetWithQTimer:]): Added. Used to implement QTimer in terms of NSTimer.
8489 (-[KWQTimerTarget timerFired:]): Added. Used to implement QTimer in terms of NSTimer.
8490 (QTimer::QTimer): Added.
8491 (QTimer::isActive): Implemented.
8492 (QTimer::start): Implemented.
8493 (QTimer::stop): Implemented.
8494 (QTimer::setMonitor): Implemented.
8495 (QTimer::fire): Implemented.
8497 * kwq/WebCoreBridge.h: Changed name of gotoAnchor to scrollToAnchor. Added client redirect
8499 * kwq/WebCoreBridge.mm: (-[WebCoreBridge scrollToAnchor:]): Changed name.
8501 2002-08-02 David Hyatt <hyatt@apple.com>
8503 Lots of form control changes.
8504 - Inputs and textareas now respond to setFont and can have their font set by the Web page
8505 explicitly. These fields emulate the WinIE behavior of defaulting to the UI system font
8506 and only picking up new fonts if they are explicitly specified on the element itself.
8507 - Buttons and selects use the small versions now.
8508 - Stopped trying to align controls along baselines of their interior text. Konqueror is
8509 the only browser that does this, and it looks bad on many pages. With this patch controls
8510 align along their bottom borders (which extend slightly below the baseline of surrounding
8511 text). This matches Gecko, MacIE, and WinIE behavior.
8512 - Stopped using monospace for textareas and inputs.
8513 - Fixed a bug with inputs not calling setScrollable on their cells.
8515 * khtml/css/html4.css:
8516 * khtml/rendering/render_form.cpp:
8517 (RenderSubmitButton::calcMinMaxWidth):
8518 (RenderSubmitButton::baselinePosition):
8519 (RenderLineEdit::baselinePosition):
8520 (RenderSelect::baselinePosition):
8521 * khtml/rendering/render_form.h:
8524 (QButton::sizeHint):
8525 * kwq/KWQComboBox.mm:
8527 * kwq/KWQLineEdit.mm:
8528 (QLineEdit::cursorPosition):
8529 (QLineEdit::setFont):
8530 * kwq/KWQNSTextField.mm:
8531 (-[KWQNSTextField initWithFrame:widget:]):
8533 (-[KWQNSButtonCell cellSizeForBounds:]):
8534 (+[KWQNSButton initialize]):
8535 * kwq/WebCoreTextRendererFactory.h:
8536 * kwq/WebCoreTextRendererFactory.m:
8537 (-[WebCoreTextRendererFactory fontWithFamily:traits:size:]):
8539 * kwq/qt/qlineedit.h:
8541 2002-08-01 Darin Adler <darin@apple.com>
8543 - fixed 2841277 -- support for charset=gb2312
8545 * kwq/character-sets.txt: Added "euc-cn" to the list of aliases for
8546 "gb2312", since that's the name used by CFStringEncoding for that
8549 2002-08-01 Maciej Stachowiak <mjs@apple.com>
8551 Remove KWQKHTMLPartImpl's setBaseURL method and m_baseURL field,
8552 since nothing should really need them any more.
8554 * kwq/KWQKHTMLPartImpl.h:
8555 * kwq/KWQKHTMLPartImpl.mm:
8556 (KWQKHTMLPartImpl::begin): Set base URL on document, if it exists.
8557 (KWQKHTMLPartImpl::requestFrame): Get base URL from document.
8558 (KWQKHTMLPartImpl::requestObject): Ditto.
8559 (KWQKHTMLPartImpl::frames): Ditto.
8560 (KWQKHTMLPartImpl::setBaseURL): Removed.
8562 2002-08-01 Richard Williamson <rjw@apple.com>
8564 Added method to allow WebKit to direct khtml to
8565 goto to an anchor point. Need for back/forward.
8567 * kwq/KWQKHTMLPartImpl.mm:
8568 (KWQKHTMLPartImpl::urlSelected):
8569 * kwq/WebCoreBridge.h:
8570 * kwq/WebCoreBridge.mm:
8571 (-[WebCoreBridge gotoAnchor:]):
8573 2002-08-01 Ken Kocienda <kocienda@apple.com>
8575 Tweaked WebCore cache settings. The WebCore cache will now grow
8576 to 1 MB (was 512k). The maximum cacheable item is 16k instead of 40k.
8578 * khtml/misc/loader.cpp
8580 === Alexander-15 ===
8582 2002-08-01 Maciej Stachowiak <mjs@apple.com>
8584 Restored the original KHTMLPart::write() now that none of our
8585 changes in the impl version are beneficial in any way.
8587 * khtml/khtml_part.cpp:
8588 (KHTMLPart::write): Restore original code in lieue of calling impl
8590 * kwq/KWQKHTMLPartImpl.h:
8591 * kwq/KWQKHTMLPartImpl.mm:
8592 (KWQKHTMLPartImpl::openURL): Remove initialization of
8593 m_decodingStarted, since it is now gone.
8594 (KWQKHTMLPartImpl::write): Removed.
8596 2002-08-01 Maciej Stachowiak <mjs@apple.com>
8598 Removed m_documentSource and remaining ill-conceived uses thereof.
8600 * kwq/KWQKHTMLPartImpl.h:
8601 * kwq/KWQKHTMLPartImpl.mm:
8602 (KWQKHTMLPartImpl::openURL): Don't initialize it.
8603 (KWQKHTMLPartImpl::write): Don't use it.
8605 2002-08-01 Maciej Stachowiak <mjs@apple.com>
8607 Remove stuff formerly useful for "View Reconstructed Source"
8608 feature but now useless.
8610 * kwq/KWQKHTMLPartImpl.h:
8611 * kwq/KWQKHTMLPartImpl.mm:
8612 (KWQKHTMLPartImpl::documentSource): Removed.
8613 * kwq/WebCoreBridge.h:
8614 * kwq/WebCoreBridge.mm:
8615 (-[WebCoreBridge documentTextFromDOM]): Removed.
8617 2002-07-31 Darin Adler <darin@apple.com>
8619 * kwq/qt/qptrvector.h:
8621 * kwq/KWQVectorImpl.h:
8622 * kwq/KWQVectorImpl.mm:
8623 * force-clean-timestamp:
8624 New implementation of QVector that does not use CFArray. Should fix some data()
8625 anomalies. Shares wierdnesses with the original Qt class.
8627 * WebCore-tests.exp: Remove old QVector entry points and add new ones.
8629 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::write): Did a tiny optimization
8630 by initializing the QString rather than first assigning and then initializing.
8631 Also reworded some comments and rearranged code to make it clearer that
8632 m_decodingStarted is now used only to decide when to call determineParseMode.
8634 * khtml/css/cssparser.cpp: Removed the APPLE_CHANGES around a change that's
8635 fine for non-Apple use as well.
8637 2002-07-30 Maciej Stachowiak <mjs@apple.com>
8639 Fixes of various bugs that prevented Alexander from running the
8640 Mozilla page load test.
8642 - fixed 3008682 - Alexander cannot run Mozilla-PLT
8644 * khtml/misc/decoder.cpp:
8645 (Decoder::decode): Don't drop the accumulated buffer if the document
8646 happens to be unicode!
8647 * kwq/KWQCString.mm:
8648 (operator==): Fix reversed logic when comparing an empty QCString
8650 * kwq/KWQKHTMLPartImpl.mm:
8651 (KWQKHTMLPartImpl::slotData): Set complete flag later so that
8652 initializing it to false doesn't clobber setting it.
8653 (KWQKHTMLPartImpl::begin): Initialize complete flag to false.
8654 (KWQKHTMLPartImpl::write): Don't buffer things up for the decoder -
8655 the decoder does that internally.
8656 * kwq/WebCoreBridge.h, kwq/WebCoreBridge.mm: Remove setURL: method.
8658 2002-07-30 Richard Williamson <rjw@apple.com>
8660 Don't create unnecessary unicode string. Of the
8661 95695 unnecessary unicode allocations we do loading
8662 the base test, this usage accounted for 7185. Most
8663 of the others come from DOMString to QConstString to
8664 QString to unicode() conversion during parsing. All
8665 that unnecessary work needs to be removed.
8668 (decodeColorFromHexColorString):
8670 2002-07-30 David Hyatt <hyatt@apple.com>
8672 Ok, this time i've got it. I hope. I think. Fingers crossed.
8673 Putting the table recalc check back in one more time. :)
8675 * khtml/rendering/render_table.cpp:
8676 (RenderTable::addColumns):
8677 (RenderTable::addColInfo):
8679 2002-07-30 David Hyatt <hyatt@apple.com>
8681 Backing myself out again. No crashes, but now pages stall.
8684 * khtml/rendering/render_table.cpp:
8685 (RenderTable::recalcColInfo):
8686 (RenderTable::addColInfo):
8688 2002-07-30 David Hyatt <hyatt@apple.com>
8690 Putting my table patch back in. Also optimizing the code
8691 to avoid deleting and recreating the same colinfo over
8692 and over again. Now colinfos can recalc their own
8695 * khtml/rendering/render_table.cpp:
8696 (RenderTable::addColumns):
8697 (RenderTable::recalcColInfo):
8698 (RenderTable::addColInfo):
8699 (RenderTable::calcMinMaxWidth):
8700 * khtml/rendering/render_table.h:
8702 2002-07-30 Richard Williamson <rjw@apple.com>
8704 Inline critical function.
8707 (compareToLatinCharacter):
8709 2002-07-30 Richard Williamson <rjw@apple.com>
8711 Wow! Avoid creation of unicode string when only a single character
8712 is needed. Simple change for big gains, 7% - 10% improvement
8713 on cached pages. Other similar gains may remain to be had.
8715 * khtml/css/cssparser.cpp:
8717 2002-07-30 Darin Adler <darin@apple.com>
8719 * khtml/css/makevalues: Fail if we don't find gperf.
8721 2002-07-30 David Hyatt <hyatt@apple.com>
8723 Back myself out. I seem to have stumbled onto another bug.
8724 Until I figure it out, turn this back off.
8726 * khtml/rendering/render_table.cpp:
8727 (RenderTable::addColumns):
8728 (RenderTable::addColInfo):
8730 2002-07-30 David Hyatt <hyatt@apple.com>
8732 Fix for 3000604, 2902173, 2921313. Ensure that tables recalc their
8733 column widths like they are supposed to. This fixes livepage.apple.com,
8734 applemuseum.com, and many other pages (that didn't have bugs filed).
8737 * khtml/rendering/render_table.cpp:
8738 (RenderTable::recalcColInfo):
8739 (RenderTable::addColInfo):
8741 2002-07-29 David Hyatt <hyatt@apple.com>
8743 Fix for 3008660, arstechnica regression. Move the acquisition
8744 of the document's text color (and the addition of CSS properties)
8745 to the attach() call instead of the constructor. The table won't
8746 add the properties until it is building its render object.
8748 Also removing the #ifndef around the layout scheduler. This fixes
8749 :hover feedback and reflows from things like the marquee on
8752 * khtml/html/html_tableimpl.cpp:
8753 (HTMLTableElementImpl::HTMLTableElementImpl):
8754 (HTMLTableElementImpl::id):
8755 (HTMLTableElementImpl::attach):
8756 * khtml/html/html_tableimpl.h:
8757 * khtml/rendering/render_object.h:
8759 2002-07-29 Darin Adler <darin@apple.com>
8761 - fixed 3010875 -- Find only works for latin characters
8762 - dealt with part of 2948387 -- stop button flashes to "go" twice while loading citibank.com
8764 * force-clean-timestamp: Make everyone do a make clean because dependencies won't do
8767 * khtml/khtml_part.h:
8768 * khtml/khtml_part.cpp: (KHTMLPart::slotRedirect): Changed the APPLE_CHANGES ifdefs around
8769 in this function so we can start using it again.
8770 (KHTMLPart::jumpToSelection): Removed. The bridge goes straight to the impl.
8772 * kwq/WebCoreBridge.mm: (-[WebCoreBridge jumpToSelection]): Go straight to the impl.
8774 * WebCore-tests.exp: One new export needed for tests with change to qstring.h.
8777 * kwq/KWQEvent.mm: Removed unused stuff.
8779 * kwq/KWQKHTMLPartImpl.h: Removed redirectURL(); we now use KHTMLPart::slotRedirect().
8781 * kwq/KWQKHTMLPartImpl.mm:
8782 (KWQKHTMLPartImpl::write): Call latin1() explicitly in here for m_documentSource. It was being
8783 done implicitly before.
8784 (KWQKHTMLPartImpl::scheduleRedirection): Get rid of 1-second minimum delay for meta refresh.
8785 (KWQKHTMLPartImpl::timerEvent): Call KHTMLPart::slotRedirect() instead of redirectURL(), because
8786 they were identical, so we don't need our own copy.
8788 * kwq/kdeui/kmessagebox.h:
8789 * kwq/KWQKMessageBox.mm: (KMessageBox::questionYesNo): Added dontAskAgain string parameter.
8790 Before, it was being turned into a bool!
8792 * kwq/KWQKProtocolManager.mm: Tweak and add FIXME.
8794 * kwq/qt/qstring.h: Remove implicit conversion to const char *, which causes only pain.
8796 (QString::find): Add caseSensitive parameter to the QString overload of this.
8797 (QString::contains): Add a QString version of this.
8799 * kwq/character-sets.txt: Add the MIB number for ISO-10646-J-1.
8800 * kwq/make-charset-table.pl: Remove special case for ISO-10646-J-1 MIB number.
8802 2002-07-29 Richard Williamson <rjw@apple.com>
8804 Fixed 3009074. Added KHTMLPart::jumpToSelection and related scaffolding (part impl, bridge, etc.)
8806 * khtml/khtml_part.cpp:
8807 (KHTMLPart::jumpToSelection):
8808 * khtml/khtml_part.h:
8809 * kwq/KWQKHTMLPartImpl.h:
8810 * kwq/KWQKHTMLPartImpl.mm:
8811 (KWQKHTMLPartImpl::jumpToSelection):
8812 * kwq/WebCoreBridge.h:
8813 * kwq/WebCoreBridge.mm:
8814 (-[WebCoreBridge jumpToSelection]):
8816 2002-07-29 Richard Williamson <rjw@apple.com>
8818 Fixed 3009067. We were not correctly testing the first character of the node string. Fixed in KWQString.
8819 This highlighted another problem. KWQ does not support unichar * string find w/ case sensitive argument.
8820 KWQString implements QString::find(const char *chs, int index, bool caseSensitive), so QStrings passed
8821 will be auto-cast to char *. Filed 3010875 to track that issue.
8824 (compareToLatinCharacter):
8827 2002-07-26 David Hyatt <hyatt@apple.com>
8829 Changing the default user agent to be Gecko. This fixes
8830 the layout issues with livepage.apple.com. We simply
8831 cannot support absolute positioning while claiming to
8832 be Mac MSIE, since Mac MSIE incorrectly computes the containing
8833 block and sites have to correct for that.
8835 * kwq/KWQKProtocolManager.mm:
8836 (KProtocolManager::userAgentForHost):
8838 2002-07-26 David Hyatt <hyatt@apple.com>
8840 Fix for 2944382, NOWRAP was being incorrectly applied in KHTML.
8841 It was being ignored incorrectly if a fixed width was specified
8842 on a cell. This width on the cell is actually irrelevant and
8843 should not have been checked, since NOWRAP will affect the
8844 whole column and not just a specific cell.
8846 * khtml/rendering/render_table.cpp:
8847 (RenderTableCell::calcMinMaxWidth):
8849 2002-07-25 Darin Adler <darin@apple.com>
8851 * WebCore.pbproj/project.pbxproj: Add DeploymentFat build style.
8853 - fixed 3007532 -- Main documentation frame doesn't load on Apple docs page
8855 This was caused by my recent fix for the "checkboxes in wrong place" bug.
8856 While discussing that bug fix with Richard, I realized that I needed to do the
8857 work at layout time, not print time. Luckily, this code ends up being simpler
8858 than the original solution.
8860 * khtml/rendering/render_replaced.cpp:
8861 (RenderWidget::resizeWidget): Take out size limits based on X limits.
8862 (RenderWidget::layout): Move widgets off into far away coordinate space when
8863 layout happens. They get moved back on to the right position during the print process.
8865 * kwq/KWQKHTMLPartImpl.h:
8866 * kwq/KWQKHTMLPartImpl.mm: Removed paint, buildViewsNotYetAddedSet, viewsNotYetAdded,
8868 * kwq/KWQScrollView.mm: (QScrollView::addChild): Removed call to addedWidget.
8869 * kwq/WebCoreBridge.mm: (-[WebCoreBridge drawRect:withPainter:]): Put the call to the
8870 renderer to print back in here, since it's simple again.
8872 * kwq/KWQWidget.mm: (QWidget::internalSetGeometry): Left in a couple of asserts that
8873 were useful in narrowing this one down.
8875 2002-07-25 David Hyatt <hyatt@apple.com>
8877 Floated images using "align" should have margins to prevent the text from running right
8878 up against them. Matches IE and Mozilla behavior.
8880 * khtml/css/html4.css:
8882 2002-07-25 David Hyatt <hyatt@apple.com>
8884 Fix <blockquote> tags to have top and bottom margins of 1em. This matches the <blockquote>
8887 * khtml/css/html4.css:
8889 2002-07-25 Darin Adler <darin@apple.com>
8891 - fixed 2965269 -- sizes reported to progress handler from KWQCheckCacheObjectStatus for images are wrong
8892 - fixed 3006054 -- assert error failingURL != nil
8894 * khtml/misc/loader.h: Add dataSize() and m_dataSize.
8895 * khtml/misc/loader.cpp:
8896 (CachedImage::CachedImage): Initialize m_dataSize.
8897 (CachedImage::data): Update m_dataSize.
8899 * kwq/kio/jobclasses.h:
8900 * kwq/KWQKjobclasses.mm: Store a KURL instead of an NSURL, because KURL can hold any string.
8902 * kwq/KWQLoaderImpl.mm:
8903 (KWQServeRequest): Send an error with [WebCoreBridge reportError:] if the URL is so bad we can't
8904 construct an NSURL from it. This is the only case in all our code where we need to have failingURL
8906 (KWQCheckCacheObjectStatus): If the object is an image, use the dataSize() rather than size().
8907 The size() is a (bad) estimate of how much memory is used in the case of an image, but we want
8908 to report the size of the original data.
8910 * kwq/WebCoreBridge.h: Add a [reportError:] method.
8912 2002-07-25 David Hyatt <hyatt@apple.com>
8914 Fix for huge white space problem on appleturns.com, bug 2947818. Vertical-align
8915 was being applied to block-level elts in violation of the CSS2 spec. Vertical-align
8916 is only supposed to apply to inline-level elts and table cells. getVerticalPosition
8917 will now bail if the element is block-level.
8919 * khtml/rendering/render_object.cpp:
8920 (RenderObject::getVerticalPosition):
8922 2002-07-25 Chris Blumenberg <cblu@apple.com>
8924 * kwq/WebCoreBridge.h:
8925 * kwq/WebCoreBridge.mm:
8926 (-[WebCoreBridge elementAtPoint:]): renamed
8928 2002-07-25 David Hyatt <hyatt@apple.com>
8930 Fix for bug 2992158, the calendar on www.blog.org in the upper
8931 right was shoved offscreen (and causing a horizontal scrollbar
8932 to be necessary). KHTML was not recomputing the margins for
8933 the table when it became displaced by the float. It was also
8934 mispositioning the float itself.
8936 * khtml/rendering/render_box.h:
8937 * khtml/rendering/render_flow.cpp:
8938 (RenderFlow::layoutBlockChildren):
8939 (RenderFlow::addOverHangingFloats):
8941 2002-07-24 David Hyatt <hyatt@apple.com>
8943 Fix for bug 2953423, viamichelin.com lays out incorrectly.
8944 Remove a completely bogus optimization in the KHTML code that
8945 attempted to bail when the specified width was 0. This was
8946 a very basic problem, and it should fix other pages that were
8947 laying out incorrectly as well.
8949 * khtml/rendering/render_flow.cpp:
8950 (RenderFlow::layout):
8952 2002-07-24 Darin Adler <darin@apple.com>
8954 * khtml/khtml_part.cpp: (KHTMLPart::clear): Remove code that reset m_frameNameId,
8955 to complete Maciej's change to fix bug 3006354.
8957 2002-07-24 Darin Adler <darin@apple.com>
8959 - fixed 2906567 -- Font size calculations should use 96 dpi instead of 72 dpi
8960 - fixed 3005932 -- fonts specified in 'ex' units rendered waaaaaaay too large
8962 * khtml/css/cssstyleselector.cpp: (CSSStyleSelector::computeFontSizes):
8963 Use a default font size that's the same as small, rather than a "medium font
8964 size". Don't multiply the values from settings by the scaling factor.
8965 (CSSStyleSelector::applyRule): Make the default font size here for nodes with
8966 no parents be small (m_fontSizes[2]) rather than medium (m_fontSizes[3]).
8968 * khtml/html/html_inlineimpl.cpp: (parseFontSizeNumber): Added. Tolerant of
8969 non-numeric characters after the numeric size. Also distinguishes a size like
8970 "0" from something that's not a numeric size at all.
8971 (HTMLFontElementImpl::parseAttribute): Use parseFontSizeNumber, but also make
8972 size 3 be the same as CSS_VAL_SMALL, not CSS_VAL_MEDIUM. This mistake (using
8973 CSS_VAL_MEDIUM) led to all kinds of strangeness in the KHTML code, including
8974 mishandling of 0 and the need to create CSS_VAL__KONQ_XXX_LARGE. Also change
8975 code so that 0 is treated as CSS_VAL_SMALL (same as 3) rather than CSS_VAL_XX_SMALL.
8976 This makes 0 between -1 and +1.
8978 * khtml/xml/dom_docimpl.cpp: (DocumentImpl::recalcStyle): Make default font
8979 size be small (fontSizes()[2]) rather than medium (fontSizes()[3]).
8980 * khtml/html/html_tableimpl.cpp: (HTMLTableElementImpl::HTMLTableElementImpl):
8981 Make default font size be CSS_VAL_SMALL, not CSS_VAL_MEDIUM.
8983 * kwq/qt/qfontmetrics.h:
8984 * kwq/KWQFontMetrics.mm: (QFontMetrics::xHeight): Added.
8985 * kwq/WebCoreTextRenderer.h: Added xHeight.
8987 * khtml/css/css_valueimpl.cpp: (CSSPrimitiveValueImpl::computeLengthFloat):
8988 Use xHeight rather than computing the height of an actual letter 'x'.
8989 * khtml/rendering/render_object.cpp: (RenderObject::getVerticalPosition):
8990 Use xHeight rather than computing the height of an actual letter 'x'.
8992 * kwq/WebCoreBridge.mm: (-[WebCoreBridge reapplyStyles]): Fixed backwards
8993 if that prevented font changes from being reflected in the browser window.
8995 * kwq/khtml/khtml_settings.h:
8996 * kwq/KWQKHTMLSettings.mm:
8997 (KHTMLSettings::defaultFontSize):
8998 * kwq/WebCoreSettings.h:
8999 * kwq/WebCoreSettings.m:
9000 (-[WebCoreSettings setDefaultFontSize:]):
9001 (-[WebCoreSettings defaultFontSize]):
9002 Replace mediumFontSize with defaultFontSize.
9004 * WebCore.pbproj/project.pbxproj: Rearrange some of the files.
9006 2002-07-24 Richard Williamson <rjw@apple.com>
9008 Support for find in HTML.
9010 * kwq/WebCoreBridge.h:
9011 * kwq/WebCoreBridge.mm:
9012 (-[WebCoreBridge searchFor:direction:caseSensitive:]):
9014 2002-07-24 Darin Adler <darin@apple.com>
9016 - fixed 2949235 -- checkboxes in wrong place until you scroll away and back
9018 The problem here was that we put views in when we print, but we never removed them.
9019 I added code to keep track of existing views, and remove them if they are not re-added.
9021 * kwq/KWQKHTMLPartImpl.h: Add paint, addedWidget, buildViewsNotAddedSet, and viewsNotYetAdded.
9022 It might be nice to find a different place to hang this that is not included by the KHTML code.
9023 But I think that having this on the bridge would be worse.
9024 * kwq/KWQKHTMLPartImpl.mm:
9025 (KWQKHTMLPartImpl::paint): Added. Removes any views that are not explicitly added by RenderWidget
9026 during the print process.
9027 (KWQKHTMLPartImpl::addedWidget): Added. Called by KWQScrollView to tell us a view was added.
9028 (KWQKHTMLPartImpl::buildViewsNotYetAddedSet): Added. Used to build the initial set of views.
9030 * kwq/KWQScrollView.mm: (QScrollView::addChild): Added call to KWQKHTMLPartImpl::addedWidget.
9031 * kwq/WebCoreBridge.mm: (-[WebCoreBridge drawRect:withPainter:]): Calls KWQKHTMLPartImpl::paint.
9033 * kwq/KWQWindowWidget.mm: (KWQWindowWidget::frameGeometry), (KWQWindowWidget::mapToGlobal),
9034 (KWQWindowWidget::mapFromGlobal), (KWQWindowWidget::internalSetGeometry):
9035 Fixed logic to work properly for windows not on main screen.
9037 * khtml/khtml_part.cpp: Moved the boundary of an existing ifndef APPLE_CHANGES so that
9038 KHTMLPart::show() and hide() are not compiled, mainly for clarity.
9039 * khtml/rendering/render_replaced.cpp: (RenderWidget::detach): Removed unneeded APPLE_CHANGES.
9041 * kwq/KWQWindowWidget.h: Removed some unneeded virtual functions.
9042 * kwq/qt/qscrollview.h: Removed some unneeded virtual functions, made others non-virtual.
9043 * kwq/qt/qwidget.h: Removed some unneeded virtual functions, made others non-virtual.
9044 * kwq/KWQWidget.mm: Removed a lot of unused and unneeded stuff.
9046 * force-clean-timestamp: Needed to do this because I changed header files.
9048 2002-07-24 Darin Adler <darin@apple.com>
9050 - fixed 3006329 - space should be stripped from beginning of relative url
9052 * kwq/KWQKURL.mm: (KURL::normalizeRelativeURLString): Added a call to stripWhiteSpace.
9054 2002-07-24 Maciej Stachowiak <mjs@apple.com>
9056 Made frame names globally unique, not just unique per parent frame
9057 - this is needed to avoid triggering the assertion in 3006354
9058 (Assertion failure on salon.com). Clearing my cache made the
9059 assertion go away by itself, but it seems good to avoid the
9060 possibility of triggering it in the future.
9062 * khtml/khtmlpart_p.h: Make m_frameNameId static.
9063 * khtml/khtml_part.cpp: Initialize it here.
9065 2002-07-24 Darin Adler <darin@apple.com>
9067 - fixed 3006336 -- crash in _NSDescriptionWithLocaleFunc
9069 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::overURL):
9070 Don't use the result of getNSString() on a C++ temporary object.
9071 We could also fix this by doing retain autorelease in getNSString().
9073 2002-07-23 Chris Blumenberg <cblu@apple.com>
9075 More plumbing for contextual menu support.
9077 * kwq/WebCoreBridge.h:
9078 * kwq/WebCoreBridge.mm:
9079 (-[WebCoreBridge completeURLForDOMString:]): renamed
9080 (-[WebCoreBridge elementInfoAtPoint:]): renamed
9081 * kwq/qt/qpixmap.h: added an accessor to the WebCoreImageRenderer
9083 2002-07-23 Darin Adler <darin@apple.com>
9085 * WebCore.pbproj/project.pbxproj: Fix file reference types to be more consistent.
9087 * khtml/html/htmltokenizer.cpp:
9088 (HTMLTokenizer::parseTag): Changed indenting to use spaces, makes our diff with
9090 (HTMLTokenizer::end): Remove unneeded APPLE_CHANGES.
9092 * kwq/KWQDOMNode.cpp: Tweak.
9093 * kwq/KWQDOMNode.h: Tweak.
9095 2002-07-23 David Hyatt <hyatt@apple.com>
9097 Fix bug 2803155 - images not displayed on http://bscw.gmd.de.
9098 My fix is to use our newfound quirks mode to implement a comment
9099 parsing quirk (this is how Mozilla handles this same issue).
9100 Only in quirks mode, the tokenizer will treat <!--> atomically as
9103 This is bug 34302 on bugs.kde.org, for those who are curious.
9105 * khtml/html/htmltokenizer.cpp:
9106 (HTMLTokenizer::parseTag):
9108 2002-07-23 Chris Blumenberg <cblu@apple.com>
9110 Initial plumbing for contextual menu support.
9112 * WebCore.pbproj/project.pbxproj:
9113 * kwq/KWQDOMNode.cpp: Added.
9115 * kwq/KWQDOMNode.h: Added.
9116 * kwq/WebCoreBridge.h:
9117 * kwq/WebCoreBridge.mm:
9118 (-[WebCoreBridge _URLForDOMString:]): added
9119 (-[WebCoreBridge _elementInfoForMouseEvent:]): added
9121 2002-07-23 Richard Williamson <rjw@apple.com>
9123 Turn on find related code in part in preparation for
9124 implementing find in WebKit.
9126 * khtml/khtml_part.cpp:
9129 (KHTMLPart::findTextNext):
9131 2002-07-23 David Hyatt <hyatt@apple.com>
9133 Fixing two bugs here. The first is bug with @import sheets not inheriting strict parsing mode from their parent sheet.
9134 This means all @import sheets are being treated as strict mode!
9136 The second bug is in KWQ. We were never calling determineParseMode, so we always defaulted to strict mode, and therefore
9137 were highly intolerant of unitless numbers on absolutely positioned blocks. This fixes many problems, notably www.netscape.com
9138 and ZDNet.com on the cvs-base tests.
9139 * khtml/css/cssparser.h:
9140 * kwq/KWQKHTMLPartImpl.mm:
9141 (KWQKHTMLPartImpl::write):
9143 2002-07-23 Darin Adler <darin@apple.com>
9145 - fixed 3004818 -- relative urls are assembled incorrectly at ticketmaster
9146 - fixed 2999279 -- Invalid URI in request at subpage of swatch.com
9148 The issue here is URLs with paths that start with "/../". RFC 2396 says one
9149 thing, and that's what CFURL does. But real web browsers do another thing.
9152 (KURL::KWQKURLPrivate::KWQKURLPrivate): Clean up a bit by removing unneeded init().
9153 (escapeQString): Don't make a copy of the passed-in QString.
9154 (pathEndsWithSlash): Don't make a copy of the passed-in QString.
9155 (copyEscapedPath): Make this a static function instead of extern.
9156 (KURL::KWQKURLPrivate::decompose): Add the new "../" and "./" logic.
9158 2002-07-23 David Hyatt <hyatt@apple.com>
9160 * khtml/rendering/font.cpp:
9161 Fix deployment build bustage by including <algorithm>.
9163 * khtml/rendering/render_frames.cpp:
9164 (RenderPartObject::calcReplacedWidth):
9165 Fix a bug with http://www.moveabletype.com's top portion
9166 not showing up (bug 2986714). A hack was being improperly
9167 applied to fixed width plugins, when it should have only
9168 been applied to variable width plugins.
9170 2002-07-23 Darin Adler <darin@apple.com>
9172 * Makefile.am: Clean based on all, not all-am, so it happens before subdirs
9175 2002-07-23 Darin Adler <darin@apple.com>
9177 Changes require a make clean because of the Project Builder bug.
9178 So I added the "make clean timestamp" hackery.
9180 * .cvsignore: Ignore the new clean timestamp.
9181 * force-clean-timestamp: Added.
9182 * Makefile.am: Add rules for making clean happen.
9184 * khtml/html/html_formimpl.cpp:
9185 (HTMLGenericFormElementImpl::defaultEventHandler): Fix NULL dereference
9186 bug in here that I ran into. Code later down in the same function has
9187 the check for NULL, so clearly this is just a bug.
9189 * khtml/rendering/font.cpp:
9190 (Font::drawText): Simplify by using new drawText that takes a QChar array,
9191 no need to make a QConstString.
9192 * khtml/rendering/render_text.cpp:
9193 (TextSlave::printDecoration): Simplify by using new drawUnderlineForText that
9194 takes a QChar array, no need to make a QConstString.
9196 * kwq/WebCoreTextRenderer.h: Change underline-drawing to use a UniChar array.
9198 * kwq/qt/qpainter.h:
9199 * kwq/KWQPainter.mm:
9200 (QPainter::drawText): Change to take QChar array instead of a QString, but
9201 also discovered a bizarre overloading thing that was happening before and
9202 dealt with that by adding a new drawText that still does take a QString.
9203 (QPainter::drawUnderlineForText): Change to take QChar array.
9205 * kwq/qt/qcolor.h: Mark constructor explicit, so we don't get subtle strangess
9206 like where the string to draw was being converted to a QColor.
9208 * khtml/css/cssstyleselector.cpp: No need for APPLE_CHANGES for
9209 this change any more.
9211 * kwq/kdecore/kcharsets.h:
9212 * kwq/KWQKCharsets.mm: Remove unused functions.
9214 * kwq/khtml/khtml_settings.h:
9215 * kwq/KWQKHTMLSettings.mm: Remove unused functions.
9218 * kwq/KWQFont.mm: Simplify.
9220 * kwq/KWQPaintDeviceMetrics.mm: Simplify.
9222 * kwq/qt/qtextcodec.h:
9223 * kwq/KWQtextcodec.mm: (QTextCodec::codecForName): Remove unused parameter.
9225 2002-07-23 David Hyatt <hyatt@apple.com>
9227 The STYLE element was ignoring both the media and type
9228 attributes (unlike its cousin, the LINK element). This
9229 patch implements support for media and type and further
9230 stops us from loading stylesheets that we should have no
9233 * khtml/html/html_headimpl.cpp:
9234 (HTMLLinkElementImpl::process):
9235 (HTMLStyleElementImpl::parseAttribute):
9236 (HTMLStyleElementImpl::insertedIntoDocument):
9237 (HTMLStyleElementImpl::removedFromDocument):
9238 (HTMLStyleElementImpl::childrenChanged):
9239 (HTMLStyleElementImpl::sheetLoaded):
9240 * khtml/html/html_headimpl.h:
9242 === Alexander-14 ===
9244 2002-07-23 David Hyatt <hyatt@apple.com>
9246 * khtml/html/html_objectimpl.cpp:
9247 (HTMLObjectElementImpl::attach):
9248 Oops. I accidentally removed the call to an ancestor class
9249 attach function. What made this subtle is that it deliberately
9250 skipped over a couple of base classes and called the one three
9251 superclasses up. When I went to put it back in, I messed up
9252 and called the base class instead of the distant ancestor.
9254 Silly me. marvel.com and matadorrecords.com should be ok now.
9256 2002-07-22 Darin Adler <darin@apple.com>
9258 * khtml/rendering/render_text.cpp:
9259 (TextSlave::printSelection): Add comments to APPLE_CHANGES.
9260 (TextSlave::printDecoration): Add comments to APPLE_CHANGES.
9261 (TextSlave::checkSelectionPoint): Add comments to APPLE_CHANGES.
9263 * khtml/xml/dom_stringimpl.cpp: Add comments to APPLE_CHANGES.
9265 * khtml/xml/xml_tokenizer.cpp: (XMLTokenizer::end): Remove APPLE_CHANGES.
9266 * kwq/KWQsignals.mm: Add a new signal dummy function.
9268 * kwq/WebCoreJavaScript.h: Fix header.
9269 * kwq/WebCoreJavaScript.mm: Fix header.
9271 * kwq/WebCoreSettings.h: Added. Not used yet.
9272 * kwq/WebCoreSettings.m: Added. Not used yet.
9273 * WebCore.pbproj/project.pbxproj: Added WebCoreSettings.h and .m.
9275 * English.lproj/InfoPlist.strings: Fixed a spelling error.
9277 * kwq/WebCoreTextRendererFactory.h: Tweak.
9279 2002-07-22 Maciej Stachowiak <mjs@apple.com>
9281 Fixed Radar 3004897 - assert at mapquest
9283 * khtml/html/html_baseimpl.cpp:
9284 (HTMLIFrameElementImpl::attach): Put back frame name uniqueness
9285 check. Lack of this check was causing duplicate frames to be left
9287 * kwq/KWQKHTMLPartImpl.mm:
9288 (KWQKHTMLPartImpl::requestFrame): Add an assertion that no frame
9289 of the requested name already exists.
9291 2002-07-22 David Hyatt <hyatt@apple.com>
9293 Fix for bug 3004889, plugin content on stylesheet pages not
9294 showing up. The rendering tree needed to perform an update
9295 when all children had arrived, and this was being handled by
9296 the parser. With async rendering construction, I had to store
9297 this in the content node instead, so it could do the update
9298 once the render object was built at a later date.
9300 * khtml/html/html_objectimpl.cpp:
9301 (HTMLObjectElementImpl::HTMLObjectElementImpl):
9302 (HTMLObjectElementImpl::attach):
9303 * khtml/html/html_objectimpl.h:
9304 * khtml/html/htmlparser.cpp:
9305 (KHTMLParser::processCloseTag):
9307 2002-07-22 David Hyatt <hyatt@apple.com>
9309 This checkin adds support for querying the selected style set,
9310 for querying the preferred style set, and for changing the
9311 selected style set dynamically. With this checkin, a Web page
9312 in Alexander now has the capability to present its own alternate
9313 stylesheet UI in the page and to toggle between sets using script.
9315 * khtml/dom/css_stylesheet.cpp:
9316 (DocumentStyle::preferredStylesheetSet):
9317 (DocumentStyle::setSelectedStylesheetSet):
9318 (DocumentStyle::selectedStylesheetSet):
9319 * khtml/dom/css_stylesheet.h:
9320 Added new methods to the DocumentStyle interface as per Hixie's
9323 * khtml/dom/dom_doc.cpp:
9324 * khtml/dom/dom_doc.h:
9325 * khtml/ecma/kjs_dom.cpp:
9326 (DOMDocument::getValueProperty):
9327 (DOMDocument::tryPut):
9328 (DOMDocument::putValue):
9329 * khtml/ecma/kjs_dom.h:
9330 Implement the JS binding glue for the new properties.
9332 * khtml/xml/dom_docimpl.cpp:
9333 (DocumentImpl::processHttpEquiv):
9334 (DocumentImpl::preferredStylesheetSet):
9335 (DocumentImpl::selectedStylesheetSet):
9336 (DocumentImpl::setSelectedStylesheetSet):
9337 (DocumentImpl::recalcStyleSelector):
9338 * khtml/xml/dom_docimpl.h:
9339 The implementation of the new properties. Also fixed a bug
9340 caused by the 3.02 merge in the stylesheet filtering code in
9341 recalcStyleSelector.
9343 2002-07-22 Maciej Stachowiak <mjs@apple.com>
9345 Merged WebCoreBridge and WebCoreFrameBridge.
9347 * kwq/KWQKHTMLPartImpl.mm:
9348 (KWQKHTMLPartImpl::openURLInFrame): Use bridge, not frameBridge.
9349 (KWQKHTMLPartImpl::urlSelected): Use bridge, not frameBridge.
9350 (KWQKHTMLPartImpl::submitForm): Use bridge, not frameBridge.
9351 (KWQKHTMLPartImpl::findFrame): Use bridge, not frameBridge.
9352 (KWQKHTMLPartImpl::frames): Use bridge, not frameBridge.
9353 * kwq/WebCoreBridge.h:
9354 * kwq/WebCoreBridge.mm:
9355 (-[WebCoreBridge dealloc]): Free RenderPart if set.
9356 (-[WebCoreBridge renderPart]): Moved here from WebFrameBridge.
9357 (-[WebCoreBridge setRenderPart:]): Moved here from WebFrameBridge.
9358 (-[WebCoreBridge copyRenderNode:khtml::copier:]): No more need to get render part from frame bridge.
9359 (-[WebCoreBridge installInFrame:]): No more need to get render part from frame bridge.
9360 * kwq/WebCoreFrameBridge.h: Removed.
9361 * kwq/WebCoreFrameBridge.mm: Removed.
9362 * WebCore.exp: Removed WebCoreFrameBridge.
9363 * WebCore.pbproj/project.pbxproj: Removed WebCoreFrameBridge.
9365 2002-07-21 Maciej Stachowiak <mjs@apple.com>
9367 Removed provisional/committed distinction from WebCore and the
9368 WebCore SPI. WebCore will never see a provisional data source or
9369 provisional anything, any more.
9371 * kwq/KWQScrollView.mm: Remove mention of provisional widget from comment.
9372 * kwq/WebCoreFrameBridge.h: Remove commitedBridge method, and remove comment
9373 about provisionality from bridge method.
9374 * kwq/KWQKHTMLPartImpl.mm:
9375 (KWQKHTMLPartImpl::write): Remove bogus comment about provisional/committed
9377 (KWQKHTMLPartImpl::findFrame): Call bridge, not committedBridge.
9378 (KWQKHTMLPartImpl::frames): Likewise.
9380 2002-07-21 Darin Adler <darin@apple.com>
9382 * khtml/*: Roll KDE 3.0.2 changes in. Also switch to not using APPLE_CHANGES
9383 for some of the changes that we definitely want to contribute upstream.
9385 * WebCore.pbproj/project.pbxproj: Add KWQStyle.mm, remove KWQStyle.h, moving contents
9388 * kwq/KWQApplication.mm: (QApplication::globalStrut): Remove _logNotYetImplemented().
9390 * kwq/KWQButton.mm: (QButton::QButton): Use plain release, not autorelease.
9391 * kwq/KWQComboBox.mm: (QComboBox::init): Use plain release, not autorelease.
9392 * kwq/KWQListBox.mm: (QListBox::QListBox): Use plain release, not autorelease.
9393 * kwq/KWQPainter.mm: (QPainter::drawArc): Use plain release, not autorelease.
9395 * kwq/KWQKHTMLPartBrowserExtension.mm: Remove import of KWQKHTMLPartImpl.h, now that
9396 it's always part of khtml_part.h.
9397 * kwq/KWQKHTMLPartImpl.cpp: Simplify.
9398 * kwq/KWQKHTMLPartImpl.h: Add wrapper to allow multiple inclusion. Don't include
9399 khtml_part.h any more, since that file now includes this one to minimize changes to
9400 KDE code that needs to get to functions in here.
9401 * kwq/KWQKHTMLPartImpl.mm:
9402 (KHTMLPart::onURL), (KHTMLPart::nodeActivated), (KHTMLPart::setStatusBarText):
9403 Moved here from khtml_part.cpp.
9404 * kwq/KWQLoaderImpl.mm: Include khtml_part.h instead of KWQKHTMLPartImpl.h.
9406 * kwq/KWQPushButton.mm:
9407 (buttonFontMetrics), (QPushButton::fontMetrics): Added. Used by the form code to size buttons.
9408 * kwq/KWQStyle.mm: Added.
9409 (QStyle::sizeFromContents): Added. Used by the form code to size buttons.
9411 * kwq/KWQStyle.h: Removed.
9412 * kwq/qt/qstyle.h: Moved contents of KWQStyle.h in here.
9413 * kwq/qt/qwidget.h: Include <qstyle.h> rather than KWQStyle.h.
9415 * kwq/WebCoreBridge.mm: (-[WebCoreBridge isFrameSet]): Call straight to impl.
9417 * kwq/kdeui/klineedit.h: Add KLineEdit::frameWidth().
9418 * kwq/qt/qnamespace.h: Remove GUIStyle, MacStyle, and WindowsStyle.
9419 * kwq/qt/qpaintdevice.h: Add QInternal, QInternal::Printer, and QPaintDevice::devType().
9420 * kwq/qt/qpainter.h: Add QPainter::device().
9421 * kwq/qt/qpushbutton.h: Add QPushButton::fontMetrics().
9423 2002-07-21 Maciej Stachowiak <mjs@apple.com>
9425 Fix a recent regression that made JavaScript window closing
9426 crash. Window closing was counting on delayed dealloc/destruction
9427 of things associated with the window, but now that we have made
9428 deallocs more synchronous, we need to add an explicit delay in
9431 Also, change some fprintf diagnostics of things that should never
9432 happen into assertions, since I actually ran into one.
9434 * kwq/KWQKHTMLPartImpl.h:
9435 * kwq/KWQKHTMLPartImpl.mm:
9436 (KWQKHTMLPartImpl::slotData): Change fprintf diagnostic to assertion,
9437 remove comment that the diagnostic should be removed.
9438 (KWQKHTMLPartImpl::end): Change fprintf diagnostic to assertion,
9439 remove comment that the diagnostic should be removed.
9440 (KWQKHTMLPartImpl::scheduleClose): Renamed from close, changed to schedule
9441 window closing from the run loop rather than doing it immediately.
9442 * khtml/ecma/kjs_window.cpp:
9443 (Window::scheduleClose): Adjusted for above rename.
9445 2002-07-21 David Hyatt <hyatt@apple.com>
9447 * khtml/html/html_headimpl.cpp:
9448 (HTMLLinkElementImpl::process):
9449 Fix incorrect handling of alternate stylesheets that could
9450 cause KHTML to incorrectly interpret alternate representation
9451 links (e.g., <link rel=alternate> to a PDF representation)) as
9452 alternate stylesheets instead.
9454 * khtml/xml/dom_docimpl.cpp:
9455 (DocumentImpl::processHttpEquiv):
9456 Add support for the selection of alternate stylesheets and
9457 preferred stylesheet sets as specified in section 14.3.2 of
9458 the HTML 4.0 spec. If you want to hook up a UI to expose
9459 alternate stylesheets, the back end code is ready to rock. :)
9461 (DocumentImpl::recalcStyleSelector):
9462 Fixed a bug in recalcStyleSelector that could lead it to
9463 pick an alternate stylesheet as a preferred set incorrectly
9464 (thus loading alternate stylesheets when it shouldn't). This
9465 is probably the cause of bungled display on some pages with
9466 alternate stylesheets (e.g., Eric Meyer's pages).
9468 On Ian Hickson's simple import test suite, we now pass tests 35 and
9469 36 (where before both were failed).
9471 2002-07-21 Maciej Stachowiak <mjs@apple.com>
9473 * Makefile.am: Remove products from symroots on `make clean'.
9475 2002-07-21 Maciej Stachowiak <mjs@apple.com>
9477 * WebCore.pbproj/project.pbxproj: Set directories for the group
9478 folders, so that creating new files in them will put them in the
9479 right directory by default.
9481 2002-07-21 David Hyatt <hyatt@apple.com>
9483 Fixing bug 3003837, list boxes are extremely slow. The
9484 buildup of a list box was order n squared, since on every
9485 insert of an item the list box was rebuilding its entire
9486 contents. This patch adds smarts to the list buildup, so that
9487 the underlying NSBrowser only rebuilds itself one time, after
9488 all the items have been inserted.
9490 This speeds up the Bugzilla forms page on cvs-base by 60%.
9492 * khtml/rendering/render_form.cpp:
9493 (RenderSelect::updateFromElement):
9494 Patched to make calls to beginBatchInsert and endBatchInsert
9498 * kwq/KWQListBox.mm:
9499 (QListBox::QListBox):
9500 (QListBox::insertItem):
9501 (QListBox::beginBatchInsert):
9502 (QListBox::endBatchInsert):
9503 If in the middle of a batch insert, the insertitem function will
9504 not rebuild the NSBrowser's list. endBatchInsert will actually
9507 2002-07-20 David Hyatt <hyatt@apple.com>
9509 This patch fixes the FOUC (flash of unstyled content) problem.
9511 * khtml/css/cssstyleselector.cpp:
9512 * khtml/css/cssstyleselector.h:
9513 If stylesheets are still loading, the styleForElement method
9514 will return a default "display: none" style that prevents
9515 the rendering tree from being built for that element.
9517 * khtml/html/html_headimpl.cpp:
9518 (HTMLLinkElementImpl::process):
9519 (HTMLLinkElementImpl::setStyleSheet):
9520 (HTMLStyleElementImpl::sheetLoaded):
9521 The link element has been patched to notify the document
9522 when stylesheet loads start and finish.
9524 * khtml/html/htmlparser.cpp:
9525 (KHTMLParser::startBody):
9526 This function has been hacked to unblock the layout of
9527 inlines within a block. This can be done the moment the
9528 stylesheet loads have been kicked off (you don't have to
9529 wait for them to finish).
9531 * khtml/rendering/render_object.h:
9532 Contains a new method for recursively descending into the
9533 render tree to unblock the layout of inlines. This is done
9534 as soon as the <body> is encountered, so the render tree is
9535 small at the time the unblocking occurs.
9537 * khtml/xml/dom_docimpl.cpp:
9538 (DocumentImpl::DocumentImpl):
9539 (DocumentImpl::stylesheetLoaded):
9540 (DocumentImpl::updateStyleSelector):
9541 The new function, stylesheetLoaded, is invoked by link elements
9542 when a stylesheet loads. It simply decrements the loading sheet
9543 count and calls updateStyleSelector. updateStyleSelector has
9544 been patched to avoid the recalculation of style until all
9545 stylesheets have loaded.
9547 * khtml/xml/dom_docimpl.h:
9548 Two new methods. The first, stylesheetLoaded, is described
9549 above. The second is haveStylesheetsLoaded, which indicates
9550 whether or not all the sheets have completed loading. A single
9551 new member variable, m_pendingStylesheets, tracks the number
9552 of sheets currently pending.
9554 2002-07-20 Darin Adler <darin@apple.com>
9556 * khtml/css/css_ruleimpl.cpp: (CSSImportRuleImpl::~CSSImportRuleImpl):
9557 Fix a potential leak by doing setParent(0) here just as is done in
9560 * kwq/WebCoreBridge.h: Fix a misspelling of visible.
9562 2002-07-20 Maciej Stachowiak <mjs@apple.com>
9564 Changed the code to handle "icon" and "SHORTCUT ICON" links
9565 separately, and give higher priority to the former.
9567 - fixed 3003672 - Assertion failure related to iconloader on metafilter
9569 * khtml/html/html_headimpl.cpp:
9570 (HTMLLinkElementImpl::process): Changed to handle both "icon" and
9571 "SHORTCUT ICON" links properly.
9572 * kwq/KWQKHTMLPartBrowserExtension.mm:
9573 (KHTMLPartBrowserExtension::setIconURL): Moved here from
9574 KWQKHTMLPartImpl to do it more the way KDE does.
9575 (KHTMLPartBrowserExtension::setTypedIconURL): New method for
9576 handling moz-style icon links, which include a type as well as a
9578 * kwq/KWQKHTMLPartImpl.h:
9579 * kwq/KWQKHTMLPartImpl.mm:
9580 (KWQKHTMLPartImpl::loadIcon): Removed.
9581 * kwq/WebCoreBridge.h: Prototype setIcon: and setIcon:withType: methods.
9582 * kwq/khtml/khtml_ext.h: Prototype new methods.
9583 * kwq/kparts/browserextension.h: Make setIcon pure virtual instead
9586 2002-07-19 Chris Blumenberg <cblu@apple.com>
9588 Per darin, only define loadIcon in KWQKHTMLPartImpl
9590 * khtml/html/html_headimpl.cpp:
9591 (HTMLLinkElementImpl::process):
9592 * khtml/khtml_part.cpp:
9593 * khtml/khtml_part.h:
9595 2002-07-19 Chris Blumenberg <cblu@apple.com>
9597 * khtml/html/html_headimpl.cpp:
9598 (HTMLLinkElementImpl::process): added an APPLE_CHANGES
9599 * khtml/khtml_part.cpp:
9600 (KHTMLPart::loadIcon): added
9601 * khtml/khtml_part.h: added loadIcon
9602 * kwq/KWQKHTMLPartImpl.h: added loadIcon
9603 * kwq/KWQKHTMLPartImpl.mm: added loadIcon
9604 (KWQKHTMLPartImpl::loadIcon):
9605 * kwq/WebCoreBridge.h: added loadIcon
9607 2002-07-19 Darin Adler <darin@apple.com>
9609 * khtml/css/makeprop: Fail if we don't find gperf.
9610 * khtml/misc/makeattrs: Fail if we don't find gperf.
9611 * khtml/misc/maketags: Fail if we don't find gperf.
9613 2002-07-19 Maciej Stachowiak <mjs@apple.com>
9615 * kwq/WebCoreBridge.mm:
9616 (-[WebCoreBridge installInFrame:]): Assert that this bridge is
9617 either for the main frame, or that it's frame has a render
9618 part. If neither of these conditions is met, the view will never
9619 get installed in the view hiearchy leading to nasty silent
9620 failure; and this condition should be guaranteed.
9622 2002-07-18 David Hyatt <hyatt@apple.com>
9624 * khtml/css/css_valueimpl.cpp:
9625 Changed the QRegExps used for font family matching to statics. Helped out
9626 one page on the base tests a fair bit. Overall (spread over all 40 pages)
9627 it's not that big though.
9629 2002-07-18 David Hyatt <hyatt@apple.com>
9631 Small change that gives us 25% speedup (uncached) on the cvs-base suite.
9633 * khtml/css/cssstyleselector.cpp:
9634 Optimized CLASS style comparison to avoid allocing QStrings when the CLASS
9635 attribute only contains one entry (as opposed to a list of entries).
9637 === Alexander-13 ===
9639 2002-07-17 Darin Adler <darin@apple.com>
9641 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::requestFrame):
9642 Take out bogus check for nil path -- a URL with a nil path is OK, for example "about:blank".
9643 Also improved log message.
9645 2002-07-16 Maciej Stachowiak <mjs@apple.com>
9647 Moved URL mouseover status to KWQKHTMLPartImpl, and made it
9648 responsive to modifier key presses, if enabled. Fixes:
9650 Radar 2980152 - Link mouseover status messages are not localizable
9651 Radar 2982043 - Link mouse-over status should change in response to modifier keys
9653 * khtml/khtml_part.cpp:
9654 (KHTMLPart::overURL): Remove extensive APPLE_CHANGES, and just call the
9656 * kwq/KWQKHTMLPartImpl.h: Prototype overURL method.
9657 * kwq/KWQKHTMLPartImpl.mm:
9658 (KWQKHTMLPartImpl::overURL): Construct status messages using format strings
9659 for localizability; change message in response to modifiers if modifier
9660 tracking is enabled.
9661 * kwq/WebCoreBridge.h: Prototype modifierTrackingEnabled method.
9663 2002-07-16 Richard Williamson <rjw@apple.com>
9665 Fixed field length test. We were testing >= instead of >.
9666 * kwq/KWQNSTextField.mm:
9667 (-[KWQNSTextFieldFormatter isPartialStringValid:newEditingString:errorDescription:]):
9669 2002-07-16 Darin Adler <darin@apple.com>
9671 - fixed 2997244 -- crash when visiting cnn.com followed by another page
9673 Turns out the requestFrame code I've been tinkering with used to be
9674 dead code until we accidentally re-triggered the code path.
9676 * khtml/html/html_baseimpl.cpp: (HTMLFrameElementImpl::attach):
9677 Remove APPLE_CHANGES that were causing us to reuse the same frame which
9678 were an attempt to fix a frame targeting problem that was actually elsewhere.
9680 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::requestFrame): Remove the code
9681 that handles the case of an already-existing frame with the same name. This
9682 is handled at a higher level.
9684 * kwq/WebCoreBridge.h: Remove now-unneeded childFrameNamed method.
9686 2002-07-16 Darin Adler <darin@apple.com>
9688 - fixed 2998692 -- crash when you type "googl" into the page address
9690 * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::requestFrame): Check for
9691 a nil part here to restore the old behavior. Whether that's OK or not
9692 is another question that I'd prefer to deal with later.
9694 2002-07-16 Darin Adler <darin@apple.com>
9696 * almost every file: Renamed IF* -> Web*.
9698 2002-07-15 Darin Adler <darin@apple.com>
9700 A teeny weeny bit of refactoring.
9702 * kwq/WebCoreBridge.mm:
9703 (-[WebCoreBridge stateForEvent:]): Replaces addModifiers:toState:.
9704 (-[WebCoreBridge mouseUp:]): Use stateForEvent:.
9705 (-[WebCoreBridge mouseDown:]): Use stateForEvent:.
9706 (-[WebCoreBridge mouseMoved:]): Use stateForEvent:.
9708 2002-07-15 Richard Williamson <rjw@apple.com>
9710 Added isFrameSet method.
9712 * WebCore.pbproj/project.pbxproj:
9713 * khtml/khtml_part.cpp:
9714 (KHTMLPart::isFrameSet):
9715 * khtml/khtml_part.h:
9716 * kwq/KWQKHTMLPart.mm:
9717 * kwq/KWQKHTMLPartImpl.cpp: Added.
9718 (KWQKHTMLPartImpl::isFrameSet):
9719 * kwq/KWQKHTMLPartImpl.h:
9720 * kwq/WebCoreBridge.h:
9721 * kwq/WebCoreBridge.mm:
9722 (-[WebCoreBridge isFrameSet]):
9724 2002-07-15 Darin Adler <darin@apple.com>
9726 * WebCore.pbproj/project.pbxproj: Removed KWQKPrinter.mm.
9727 * kwq/KWQKPrinter.mm: Removed.
9729 2002-07-15 Darin Adler <darin@apple.com>
9731 * WebCore.pbproj/project.pbxproj: Removed unused qpopupmenu.h.
9732 * kwq/kdecore/ksimpleconfig.h: Removed unnecessary include of <config.h>.
9733 * kwq/kio/global.h: Removed unnecessary include of <config.h>.
9734 * kwq/kio/kprinter.h: Emptied out this file.
9735 * kwq/qt/qpopupmenu.h: Removed.
9736 * kwq/qt/qstylesheet.h: Removed unnecessary include of <config.h>.
9737 * kwq/qt/qtextedit.h: Removed unnecessary include of <config.h>.
9739 2002-07-15 Darin Adler <darin@apple.com>
9741 * kwq/qt/qfontmetrics.h: Remove unused, and not properly implemented,
9742 empty constructor. Add some const that was missing. Remove most of the
9743 parameters of size().
9744 * kwq/KWQFontMetrics.mm:
9745 (QFontMetrics::charWidth): Add const.
9746 (QFontMetrics::floatWidth): Add const.
9747 (QFontMetrics::floatCharacterWidth): Add const.
9748 (QFontMetrics::size): Remove unused parameters.
9750 * kwq/WebCoreTextRenderer.h: Remove two unused drawString methods and one
9751 unused widthForCharacters method.
9753 2002-07-14 Darin Adler <darin@apple.com>
9755 * kwq/WebCoreFrame.mm: (-[WebCoreFrame dealloc]): Fix NULL-dereferencing
9756 problem that was hidden by the "leak the world" bug in WebBrowser.
9758 2002-07-14 Maciej Stachowiak <mjs@apple.com>
9760 Assign getView() results to variable of appropriate type to work
9761 around apparent ObjC++ compiler bug. I wonder why other people
9762 aren't running into this (and why I haven't run into it before).
9767 * kwq/KWQLineEdit.mm:
9768 (QLineEdit::setEchoMode):
9769 (QLineEdit::setText):
9771 (QLineEdit::setMaxLength):
9772 (QLineEdit::isReadOnly):
9773 (QLineEdit::setReadOnly):
9774 (QLineEdit::maxLength):
9775 (QLineEdit::selectAll):
9776 (QLineEdit::edited):
9777 (QLineEdit::setEdited):
9779 2002-07-14 Darin Adler <darin@apple.com>
9781 * WebCore-tests.exp: Tests needed access to QPoint, QString, and KURL symbols
9782 that were formerly exported for the benefit of WebKit.
9784 * kwq/KWQPixmap.mm: I needed to touch something since .exp files don't cause
9785 a rebuild, so I fixed a comment in here.
9787 2002-07-14 Darin Adler <darin@apple.com>
9789 Changes to WebCore that allow WebKit to work through Objective C without going
9790 straight to the KHTML headers. Also remove a bunch of unused stuff, especially
9793 * WebCore.exp: Export the new classes WebCoreCache and WebCoreJavaScript.
9794 Don't export any C++ symbols at all.
9796 * WebCore.pbproj/project.pbxproj: Remove KWQWMatrix.mm, add WebCoreCache.*
9797 and WebCoreJavaScript.*.
9799 * khtml/khtml_part.cpp: Put more unused code inside ifndef APPLE_CHANGES.
9800 * khtml/khtmlview.cpp: Put unused code inside #ifndef APPLE_CHANGES
9801 * khtml/khtmlview.h: Put unused virtual functions inside #ifndef APPLE_CHANGES.
9802 * khtml/misc/loader.cpp: (CachedImage::tiled_pixmap): Change this so it
9803 always returns pixmap(). Handling it at this level is better than changing
9804 all the callers for now.
9805 * khtml/rendering/render_box.cpp: (RenderBox::printBackground): Took out the
9806 APPLE_CHANGES now that tiled_pixmap() always just returns pixmap().
9807 * khtml/rendering/render_frames.cpp: (RenderFrameSet::userResize): Put some
9808 unused code inside APPLE_CHANGES.
9810 * kwq/KWQKHTMLPart.mm:
9811 (KWQKHTMLPartImpl::requestFrame): Made it get the view using the bridge, since we
9812 don't have a [widget] method on the frame any more.
9813 (KWQKHTMLPartImpl::findFrame): Used committedBridge instead of bridge, since
9814 I changed bridge to return the provisional if available.
9815 (KWQKHTMLPartImpl::frames): Used committedBridge instead of bridge, since
9816 I changed bridge to return the provisional if available.
9818 * kwq/qt/qpixmap.h: Put an empty version of QWMatrix in here. We don't actually ever
9819 need a real matrix, just a class to let us compile.
9821 * kwq/qt/qpainter.h: Moved QWMatrix into qpixmap.h. Removed constructors that take
9822 QPixmap and QWidget. Removed unused variants of drawText. Removed unused setClipping,
9823 setClipRect, hasClipping, translate, scale, begin, end, and device functions.
9824 * kwq/KWQPainter.mm:
9825 (QPainter::QPainter): Remove the constructors that take a paint device, widget,
9826 or pixmap. We can get away without them.
9827 (QPainter::save): Simplify. Also remove the optimization for painters without
9828 stacks, since having an empty stack is very inexpensive.
9829 (QPainter::restore): Simplify.
9830 (QPainter::_drawPoints): Move paintingDisabled check in here.
9831 (QPainter::drawText): Removed many unused drawText variants.
9833 * kwq/KWQView.h: Tweaked.
9834 * kwq/KWQView.mm: Removed [KWQView drawRect:].
9836 * kwq/KWQWMatrix.mm: Removed.
9838 * kwq/qt/qwidget.h: Removed paint() virtual function.
9839 * kwq/KWQWidget.mm: Removed QWidget::paint().
9841 * kwq/WebCoreBridge.h: Added new methods installInFrame:, removeFromFrame,
9842 mouseDown:, mouseUp:, mouseMoved:, mouseDragged:, copyDOMTree:, and copyRenderTree:.
9844 * kwq/WebCoreBridge.mm:
9845 (-[WebCoreBridge dealloc]): Call removeFromFrame.
9846 (-[WebCoreBridge createKHTMLViewWithNSView:width:height:marginWidth:marginHeight:]):
9847 Don't return the view any more, also set bridgeOwnsKHTMLView to YES.
9848 (-[WebCoreBridge copyDOMNode:DOM::copier:]): Added helper method for copyDOMTree.
9849 (-[WebCoreBridge copyDOMTree:]): Added method to be used by IFDOMNode to get at DOM
9850 tree without using C++.
9851 (-[WebCoreBridge copyRenderNode:khtml::copier:]): Added helper method for copyRenderTree.
9852 (-[WebCoreBridge copyRenderTree:]): Added method to be used by IFRenderNode to get at
9853 render tree without using C++.
9854 (-[WebCoreBridge removeFromFrame]): Added. Deletes the view if we own it. We don't want
9855 to wait for dealloc time to do this, since a lingering view might be visible.
9856 (-[WebCoreBridge installInFrame:]): Added. Does a set of things we need to do at the
9857 time we commit a provisional data source.
9858 (-[WebCoreBridge addModifiers:toState:]): Moved here from IFHTMLView.
9859 (-[WebCoreBridge mouseUp:]): Added. Used to get a mouse up event to the KHTMLView.
9860 (-[WebCoreBridge mouseDown:]): Added. Used to get a mouse down event to the KHTMLView.
9861 (-[WebCoreBridge mouseMoved:]): Added. Used to get a mouse moved event to the KHTMLView.
9862 (-[WebCoreBridge mouseDragged:]): Added. Used to get a mouse moved event to the KHTMLView
9863 in the case where we are dragging -- perhaps could be merged with mouseMoved.
9865 * kwq/WebCoreCache.h: Added. Allows control of the WebCore cache; previously done directly
9866 in IFCache in WebKit.
9867 * kwq/WebCoreCache.mm: Added.
9869 * kwq/WebCoreFrame.h: Remove widget method. Change semantics of bridge method to return
9870 provisional bridge if available, which corresponds to what the widget method did before.
9871 Added a committedBridge method that has the semantics that bridge did before.
9873 * kwq/WebCoreJavaScript.h: Added. Returns statistics about the state of JavaScript objects;
9874 previously done directly in IFCache in WebKit.
9875 * kwq/WebCoreJavaScript.mm: Added.
9877 2002-07-13 Darin Adler <darin@apple.com>
9879 * WebCore.pbproj/project.pbxproj: Add a few files that are sources
9880 although they should not be compiled for any target.
9882 * kwq/qt/qpushbutton.h: Simplified.
9883 * kwq/KWQPushButton.mm: (QPushButton::QPushButton): Implemented text parameter.
9885 2002-07-13 Darin Adler <darin@apple.com>
9887 * ForwardingHeaders/*: Added. New approach to headers to try to
9888 make Project Builder's header dependency support work even for
9889 includes like #include <render/render_object.h>.
9890 * kwq/kjs/*: Removed. Now part of ForwardingHeaders.
9892 * Makefile.am: Remove embed.am support.
9894 * WebCore.pbproj/project.pbxproj: Remove other search paths, and
9895 add ForwardingHeaders directory as a search path. Add qucomextra_p.h.
9897 * khtml/ecma/kjs_navigator.cpp: Made gratuitous changes to touch this
9898 file to make things build without requiring clean rebuild.
9900 * khtml/rendering/render_form.cpp: Removed many unneeded QObject::
9901 qualifiers from inside APPLE_CHANGES to touch this file to make things
9902 build without requiring clean rebuild.
9904 * kwq/KWQButton.mm: (QButton::setText), (QButton::text):
9905 * kwq/KWQColor.mm: (QColor::setNamedColor):
9906 * kwq/KWQKConfigBase.mm: (KConfig::readEntry):
9907 * kwq/KWQKHTMLSettings.mm: (KHTMLSettings::stdFontName), (KHTMLSettings::fixedFontName):
9908 (KHTMLSettings::serifFontName), (KHTMLSettings::sansSerifFontName),
9909 (KHTMLSettings::cursiveFontName), (KHTMLSettings::fantasyFontName), (KHTMLSettings::encoding):
9910 * kwq/KWQKLocale.mm: (i18n):
9911 * kwq/KWQKMessageBox.mm: (KMessageBox::error), (KMessageBox::warningYesNo):
9912 (KMessageBox::questionYesNo), (KMessageBox::sorry):
9913 * kwq/KWQListBox.mm: (-[KWQBrowserDelegate browser:willDisplayCell:atRow:column:]):
9914 * kwq/WebCoreBridge.mm: (-[WebCoreBridge selectedText]):
9915 Wean from QSTRING_TO_NSSTRING and NSSTRING_TO_QSTRING.
9917 * kwq/KWQComboBox.mm:
9918 (QComboBox::insertItem): Wean from QSTRING_TO_NSSTRING. Note that this
9919 now stores a copy of the string in the array. The old version was unsafe
9920 if anyone later modified the QString that was passed in.
9922 * kwq/KWQFontMetrics.mm: (QFontMetrics::width):
9923 * kwq/KWQPainter.mm: (QPainter::drawUnderlineForText), (QPainter::drawText):
9924 Wean from QSTRING_TO_NSSTRING_LENGTH and _FAST_QSTRING_TO_NSSTRING. We still have
9925 speed as high as before, in the "length" case slightly faster.
9927 * kwq/qt/qstring.h: Remove QSTRING_TO_NSSTRING family of macros.
9929 * kwq/KWQInvisibleButton.mm:
9930 * kwq/KWQKHTMLPart.mm:
9931 * kwq/KWQKHTMLPartBrowserExtension.mm:
9932 * kwq/KWQKJavaAppletWidget.mm:
9933 * kwq/KWQKloader.mm:
9935 * kwq/KWQsignals.mm:
9936 * kwq/WebCoreBridge.mm:
9937 * kwq/kdecore/kconfig.h:
9938 * kwq/kdecore/klibloader.h:
9939 * kwq/kdecore/klocale.h:
9940 * kwq/khtml/khtml_ext.h:
9941 * kwq/khtml/khtml_factory.h:
9942 * kwq/kio/kmimetype.h:
9943 Remove subdirectory prefix from imports to match Project Builder include scheme.
9945 * kwq/KWQKCursor.mm: (+[NSCursor _WebCore_linkCursor]):
9946 * kwq/KWQKLocale.mm: (i18n):
9947 * kwq/KWQKstddirs.mm: (locate):
9948 Use bundleForClass instead of bundleWithIdentifier to avoid any potential problems
9949 with multiple versions of the framework installed on the same system.
9951 * kwq/KWQKLineEdit.mm:
9952 (KLineEdit::completionBox): Remove _logNotYetImplemented, since this is implemented
9953 well enough for our needs now, and if we need to implement it later, it will become
9954 clear from the application behavior. This should be the destiny of most of these.
9956 * kwq/kdecore/kglobal.h: Simplify.
9957 * kwq/KWQKGlobal.mm: Simplify.
9958 * kwq/qt/qlineedit.h: Simplify.
9959 * kwq/KWQLineEdit.mm: Simplify.
9961 * kwq/KWQPaintDeviceMetrics.mm: Remove unneeded import.
9962 * kwq/qt/qbutton.h: Remove unneeded destructor.
9964 2002-07-13 Richard Williamson <rjw@apple.com>
9966 * kwq/KWQPainter.mm:
9967 Added disable drawing mode.
9968 (QPainter::drawRect):
9969 (QPainter::drawLine):
9970 (QPainter::drawEllipse):
9971 (QPainter::drawArc):
9972 (QPainter::drawLineSegments):
9973 (QPainter::drawPolyline):
9974 (QPainter::drawPolygon):
9975 (QPainter::drawConvexPolygon):
9976 (QPainter::drawPixmap):
9977 (QPainter::drawTiledPixmap):
9978 (QPainter::drawText):
9979 (QPainter::drawUnderlineForText):
9980 (QPainter::fillRect):
9981 (QPainter::setPaintingDisabled):
9984 (QWidget::frameGeometry):
9985 Use the IFWebView's geometry.
9987 * kwq/WebCoreBridge.h:
9988 * kwq/WebCoreBridge.mm:
9989 (-[WebCoreBridge _drawRect:withPainter:]):
9990 (-[WebCoreBridge drawRect:]):
9991 (-[WebCoreBridge adjustFrames:]):
9992 Added adjustFrames:. Factored some code.
9994 * kwq/qt/qpainter.h:
9995 Added setPaintingDisabled.
9997 * khtml/html/html_baseimpl.cpp:
9998 (HTMLFrameElementImpl::attach):
9999 (HTMLIFrameElementImpl::attach):
10000 Removed uniqueness check. Need to revisit vis-a-vis provisional ds.
10002 2002-07-12 Darin Adler <darin@apple.com>
10004 * WebCore.pbproj/project.pbxproj: Add WebCoreFrame.mm, also export all
10005 the WebCore headers as Private so WebKit can see them.
10007 * khtml/khtmlview.cpp: (KHTMLView::drawContents): Remove APPLE_CHANGES
10008 since we don't use this function any more.
10010 * kwq/KWQDef.h: Since <sys/types.h> now includes ushort and uint, update
10011 code here to take that into account.
10013 * kwq/KWQKHTMLPartImpl.h: Added getView().
10014 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::getView): Added. Used by bridge.
10016 * kwq/qt/qpainter.h:
10017 * kwq/KWQPainter.mm: Simplify a bit, and remove some unused stuff.
10019 * kwq/WebCoreBridge.h: Add reapplyStyles, forceLayout, drawRect:.
10020 * kwq/WebCoreBridge.mm:
10021 (-[WebCoreBridge reapplyStyles]): Added.
10022 (-[WebCoreBridge forceLayout]): Added.
10023 (-[WebCoreBridge drawRect:]): Added.
10025 * kwq/WebCoreFrame.h: Make this a class as well as an interface.
10026 * kwq/WebCoreFrame.mm: Added.
10028 * WebCore.exp: Since WebCoreFrame is now a class as well as a protocol,
10029 export it so we can subclass.
10031 2002-07-12 Darin Adler <darin@apple.com>
10033 Build WebCore with Project Builder instead of make.
10034 Also wean WebCore from peeking inside the WebKit bundle.
10036 * WebCore.pbproj/.cvsignore: Added.
10037 * WebCore.pbproj/project.pbxproj: Added.
10039 * Makefile.am: Removed rules about building the framework,
10040 and just use pbxbuild instead.
10042 * dummy.mm: Removed.
10044 * khtml/Makefile.am: Removed everything but SUBDIRS.
10045 * khtml/css/Makefile.am: Removed everything but the rules for
10047 * khtml/dom/Makefile.am: Removed.
10048 * khtml/ecma/Makefile.am: Removed everything but the rules for
10050 * khtml/html/Makefile.am: Removed everything but the rules for
10052 * khtml/misc/Makefile.am: Removed everything but the rules for
10054 * khtml/rendering/Makefile.am: Removed.
10055 * khtml/xml/Makefile.am: Removed.
10056 * kwq/Makefile.am: Removed everything but the rules for
10059 * kwq/KWQKLocale.mm: (i18n): Look in WebCore bundle, not WebKit bundle.
10060 * kwq/KWQKstddirs.mm:
10061 (locate): Look in WebCore bundle, not WebKit bundle. Also, always assume
10062 we are looking for html4.css.
10063 (locateLocal): Don't waste code making a bad path, just return empty string.
10065 * kwq/qt/qpixmap.h:
10066 * kwq/KWQPixmap.mm: Changed convertToImage() to an inline since we
10067 never need to implement it.
10069 * kwq/KWQKDebug.mm: Removed.
10070 * kwq/KWQKImageIO.mm: Removed.
10071 * kwq/kdecore/kcmdlineargs.h: Emptied out the file.
10072 * kwq/kdecore/kdebug.h: Made the do-nothing code here all be
10073 inlines for smaller code size.
10075 * kwq/KWQScrollBar.h: Fixed header guard.
10079 * khtml/dom/.cvsignore: Removed.
10080 * khtml/rendering/.cvsignore: Removed.
10081 * khtml/xml/.cvsignore: Removed.
10082 * kwq/kdecore/.cvsignore: Removed.
10083 * kwq/qt/.cvsignore: Removed.
10084 Don't ignore things we don't generate any more.
10086 * kwq/kjs/collector.h: Added.
10087 * kwq/kjs/internal.h: Added.
10088 * kwq/kjs/interpreter.h: Added.
10089 * kwq/kjs/lookup.h: Added.
10090 * kwq/kjs/object.h: Added.
10091 Used so that khtml can see the headers from JavaScriptCore.
10093 2002-07-11 Maciej Stachowiak <mjs@apple.com>
10095 Fixed Radar 2953254 - JavaScript window.scroll() and
10096 window.scrollBy() do not work
10098 * khtml/ecma/kjs_window.cpp:
10099 (WindowFunc::tryCall): Handle Scroll the same as ScrollBy.
10100 * kwq/KWQScrollView.mm:
10101 (QScrollView::scrollBy): Implement this method, since it's needed
10104 2002-07-10 Darin Adler <darin@apple.com>
10106 - fixed 2978796 -- Client-side image map not working
10108 * kwq/KWQRegion.mm: (QRegion::QRegion): Implement constructor that
10109 takes a QPointArray.
10111 * kwq/qt/qarray.h: Fix some const loopholes.
10113 * kwq/KWQCString.mm:
10114 (QCString::find): Use const char * instead of char *.
10115 (QCString::contains): Use const char * instead of char *.
10116 (QCString::right): Use const char * instead of char *.
10117 (QCString::mid): Use const char * instead of char *.
10119 2002-07-10 Maciej Stachowiak <mjs@apple.com>
10121 WebCore part of fix for:
10123 Radar 2953250 - JavaScript window.focus() and window.blur()
10126 * khtml/ecma/kjs_window.cpp:
10127 (WindowFunc::tryCall): Call the appropriate things on focus and blur.
10128 * kwq/KWQKHTMLPart.mm:
10129 (KWQKHTMLPartImpl::unfocusWindow): Implemented by calling bridge.
10130 * kwq/KWQKHTMLPartImpl.h, kwq/KWQWidget.mm:
10131 (QWidget::setActiveWindow): Implemented by ordering the window
10132 front and making it key.
10133 * kwq/WebCoreBridge.h: Prototype new bridge method.
10135 2002-07-10 Darin Adler <darin@apple.com>
10137 - fixed 2979153 -- charset sjis page is gibberish
10139 * kwq/character-sets.txt: Add x-sjis as an alias for Shift JIS.
10141 2002-07-10 Darin Adler <darin@apple.com>
10143 * kwq/KWQPixmap.mm:
10144 (QPixmap::QPixmap): Restore the imageRenderer == nil case to fix a regression
10145 related to resized images. Otherwise, isNull was returning true for all images.
10146 In copy constructor, set needCopyOnWrite on both the source and destination;
10147 setting it on the destination was not enough.
10148 (QPixmap::receivedData): Create the imageRenderer if it's nil.
10149 (QPixmap::operator=): Set needCopyOnWrite on both the source and destination.
10151 * kwq/qt/qpixmap.h: Make needCopyOnWrite mutable so we can set it on the source
10152 when copying or assigning.
10154 2002-07-10 Darin Adler <darin@apple.com>
10156 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::setBaseURL):
10157 Call setBaseURL on the underlying document all the time, not just
10158 when we add a missing "/" character.
10160 2002-07-07 Maciej Stachowiak <mjs@apple.com>
10162 WebCore part of fix for Radar 2953431 - JavaScript window.close()
10163 method is not working
10165 * khtml/ecma/kjs_window.cpp:
10166 (Window::scheduleClose): In AppleChanges
10167 * khtml/khtml_part.cpp:
10168 (KHTMLPart::openedByJS): Call kwq implementations, because we need
10169 to remember the openedByJS state across location changes, which in
10170 our case means replacing the part.
10171 (KHTMLPart::setOpenedByJS): Likewise.
10172 * kwq/KWQKHTMLPart.mm:
10173 (KWQKHTMLPartImpl::openedByJS): Implement by calling bridge.
10174 (KWQKHTMLPartImpl::setOpenedByJS): Likewise.
10175 (KWQKHTMLPartImpl::close): Likewise.
10176 * kwq/KWQKHTMLPartImpl.h: Prototype new PartImpl methods.
10177 * kwq/WebCoreBridge.h: Prototype new bridge methods.
10179 2002-07-06 Darin Adler <darin@apple.com>
10181 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::write): Remove reference
10182 to nonexistent class in a comment.
10183 * kwq/KWQKHTMLPartImpl.h: Remove unused and unimplemented getDataSource().
10185 2002-07-04 Maciej Stachowiak <mjs@apple.com>
10187 Say "Go to" instead of "Link to" for links that won't open a new
10188 window. Also, the code is now set up to change the status text
10189 when modifier keys are pressed, but the code is disabled for now
10190 because it's impossible to do reliably.
10192 * khtml/khtml_part.cpp:
10193 (KHTMLPart::overURL):
10194 (KHTMLPart::khtmlMouseMoveEvent):
10195 * khtml/khtml_part.h:
10197 2002-07-03 Darin Adler <darin@apple.com>
10199 A small KURL speed improvement.
10201 * khtml/misc/loader.cpp:
10202 (Cache::requestImage):
10203 (Cache::requestStyleSheet):
10204 (Cache::requestScript):
10205 Don't do the isMalformed check, because it's expensive and has no clear benefit.
10206 There's no harm in caching null results for malformed URLs.
10209 (KURL::KURL): Make the default constructor faster by not running all the
10210 normalize code on the empty string.
10212 === Alexander-11 ===
10214 2002-07-03 Maciej Stachowiak <mjs@apple.com>
10216 WebCore part of fixes for:
10218 Radar 2950616 - JavaScript window.screenX and window.screenY always return -1
10219 Radar 2950614 - JavaScript window.screenLeft and window.screenTop
10220 properties are unimplemented
10221 Radar 2950609 - JavaScript window.outerHeight and
10222 window.outerWidth properties always return 0
10224 * khtml/ecma/kjs_window.h:
10225 * khtml/ecma/kjs_window.cpp:
10226 (Window::get): Make ScreenLeft and ScreenTop synonyms for ScreenX
10227 and ScreenY respectively.
10228 * kwq/KWQKHTMLPart.mm:
10229 (KWQKHTMLPartImpl::setView): Set the real part's view too.
10230 * kwq/kdecore/kwin.h: Remove unneeded fields.
10232 (KWin::info): Implemented.
10233 * kwq/qt/qwidget.h:
10234 * kwq/KWQWidget.mm:
10235 (QWidget::winId): Return long instead of int, to make sure there
10236 is room for a pointer even on 64-bit architectures.
10237 (QWidget::mapToGlobal): Use the top level widget to map.
10239 2002-07-03 Richard Williamson <rjw@apple.com>
10241 * kwq/KWQScrollView.mm:
10242 (QScrollView::addChild):
10243 Fixed regression that caused IFWebView frame origin to sometimes
10244 never be set correctly. (khtml sets the x origin to -500000
10245 during initialization, and it was never getting set correctly).
10246 This problem manifested itself as blank white frames.
10248 * kwq/KWQWidget.mm:
10249 (QWidget::internalSetGeometry):
10251 2002-07-03 Maciej Stachowiak <mjs@apple.com>
10253 WebKit part of fix for:
10255 Radar 2943465 - JavaScript window.defaultStatus property not implemented
10256 Radar 2943464 - JavaScript window.status property is not implemented
10257 Radar 2926213 - show url of moused-over link in status bar
10261 Radar 2980091 - KHTMLPart::findFrame() and KHTML::frameExists()
10262 should search all frames, not just child frames
10264 * khtml/khtml_part.cpp:
10265 (KHTMLPart::overURL): Unifdef most of this, but adjust the wording.
10266 (KHTMLPart::setStatusBarText): Implement by calling KWQKHTMLPartImpl.
10267 * khtml/khtml_part.h:
10268 * kwq/KWQKHTMLPart.mm:
10269 (KWQKHTMLPartImpl::frameExists): Search all frames, not just child frames.
10270 (KWQKHTMLPartImpl::findFrame): Search all frames, not just child frames.
10271 (KWQKHTMLPartImpl::setStatusBarText): Implemented by calling WebCoreBridge.
10272 * kwq/KWQKHTMLPartImpl.h:
10273 * kwq/WebCoreBridge.h: Declare new setStatusText method
10274 * kwq/kparts/part.h: Remove setStatusBarText method.
10276 2002-07-02 Darin Adler <darin@apple.com>
10278 - fixed 2978806 -- Crash going to ebay home page
10280 * khtml/ecma/kjs_navigator.cpp: (PluginBase::PluginBase): Check to be sure
10281 that we are not at the end of the "tokens" collection before dereferencing
10284 2002-07-01 Maciej Stachowiak <mjs@apple.com>
10286 Fixed Radar 2953256 - JavaScript window.moveTo() and
10287 window.moveBy() methods do not work
10289 This was done by creating a class to wrap an NSWindow as a
10290 QWidget, which should be useful for many other window-related
10293 * kwq/KWQWidget.mm:
10294 (QWidget::x): Implement in terms of the virtual frameGeometry() method.
10295 (QWidget::y): Likewise.
10296 (QWidget::width): Likewise.
10297 (QWidget::height): Likewise.
10298 (QWidget::size): Likewise.
10299 (QWidget::pos): Likewise.
10300 (QWidget::topLevelWidget): Implement by creating a KWQWindowWidget
10301 (QWidget::isVisible): Added FIXME comment.
10302 * kwq/KWQWindowWidget.h: Added.
10303 * kwq/KWQWindowWidget.mm: Added.
10304 (KWQWindowWidget::fromNSWindow): Static method that maintains a
10305 dictionary of top-level widgets, and creates them on demand.
10306 (deleteOnWindowClose): Delete top level widget on close.
10307 (KWQWindowWidget::KWQWindowWidget):
10308 (KWQWindowWidget::~KWQWindowWidget):
10309 (KWQWindowWidget::sizeHint): Implemented using NSWindow.
10310 (KWQWindowWidget::minimumSizeHint): Likewise.
10311 (KWQWindowWidget::frameGeometry): Likewise.
10312 (KWQWindowWidget::topLevelWidget): Likewise.
10313 (KWQWindowWidget::mapToGlobal): Likewise.
10314 (KWQWindowWidget::mapFromGlobal): Likewise.
10315 (KWQWindowWidget::setCursor): No-op implementation.
10316 (KWQWindowWidget::internalSetGeometry): Implemented using NSWindow.
10317 * kwq/Makefile.am: Add new files to build.
10318 * kwq/qt/qwidget.h: Make methods virtual as needed.
10320 2002-07-01 Darin Adler <darin@apple.com>
10322 * khtml/css/cssparser.cpp:
10323 * khtml/misc/htmlhashes.cpp:
10324 Remove workaround for a PFE bug that no longer affects us.
10326 * khtml/xml/dom_nodeimpl.h:
10327 * khtml/xml/dom_nodeimpl.cpp:
10328 Remove some unneeded APPLE_CHANGES.
10330 * WebCore.exp: One less symbol to export.
10332 2002-06-29 Maciej Stachowiak <mjs@apple.com>
10334 WebCore part of fix for:
10336 Radar 2942074 - JavaScript size, positioning and feature
10337 parameters to window.open are ignored
10339 * kwq/WebCoreBridge.h: Add new calls needed for window
10340 size/position/feature getting and setting.
10341 * kwq/KWQKHTMLPartBrowserExtension.mm:
10342 (KHTMLPartBrowserExtension::createNewWindow): Set properties on window
10343 after creating it using new bridge calls; make it visible.
10344 * khtml/ecma/kjs_window.cpp:
10345 (WindowFunc::tryCall): Support scrollbars feature too.
10346 * kwq/kparts/browserextension.h: Include scrollbar setting stuff.
10348 2002-06-28 Richard Williamson <rjw@apple.com>
10350 Use float character measurement to determine selection
10351 region. Necessary to ensure accuracy of selection
10352 region. First step towards weaning khtml off int
10355 * khtml/rendering/font.cpp:
10356 (Font::floatWidth):
10357 (Font::floatCharacterWidth):
10358 * khtml/rendering/font.h:
10359 * khtml/rendering/render_text.cpp:
10360 (TextSlave::checkSelectionPoint):
10361 * kwq/KWQFontMetrics.mm:
10362 (QFontMetrics::floatWidth):
10363 (QFontMetrics::floatCharacterWidth):
10364 * kwq/WebCoreTextRenderer.h:
10365 * kwq/qt/qfontmetrics.h:
10367 2002-06-27 Chris Blumenberg <cblu@apple.com>
10369 Added an APPLE_CHANGES to fix 2894742. The attributes of an EMBED tag
10370 must override the attributes of PARAM tags.
10372 * khtml/rendering/render_frames.cpp:
10373 (RenderPartObject::updateWidget):
10375 2002-06-27 Darin Adler <darin@apple.com>
10377 - fixed 2973342 -- copied text seems to have an extra blank line between paragraphs
10379 * khtml/khtml_part.cpp: (KHTMLPart::selectedText):
10380 Get rid of code that was adding an extraneous newline at the
10381 ends of various types of nodes, including <P>
10383 2002-06-27 Darin Adler <darin@apple.com>
10385 Fix Java. My changes this morning broke it.
10387 * khtml/rendering/render_applet.cpp: (RenderApplet::processArguments):
10388 Re-add required APPLE_CHANGES. Pass arguments to KJavaAppletWidget::processArguments.
10389 * kwq/khtml/java/kjavaappletwidget.h: Added KJavaAppletWidget::processArguments.
10390 * kwq/KWQKJavaAppletWidget.mm: (KJavaAppletWidget::processArguments): Added.
10394 * kwq/qt/qfont.h: Remove unused setPixelSizeFloat.
10395 * kwq/KWQFont.mm: Change to keep family names in a set. Since there are only
10396 a small number of family names ever encountered, this is a bit of a memory win.
10397 (QFont::QFont): Don't retain the family name.
10398 (QFont::~QFont): Don't release the family name.
10399 (QFont::setFamily): Put the family name in a set, and use the one from the set.
10400 (QFont::operator=): Don't retain or release.
10401 (QFont::operator==): Use == to compare the name.
10403 === Alexander-10 ===
10405 2002-06-27 Richard Williamson <rjw@apple.com>
10407 Method name changes in preparation for fixing
10408 TextSlave::checkSelectionPoint().
10410 * kwq/WebCoreTextRenderer.h:
10412 2002-06-27 Richard Williamson <rjw@apple.com>
10414 Removed calls to old method.
10416 * kwq/KWQPainter.mm:
10417 (QPainter::drawText):
10418 * kwq/WebCoreTextRenderer.h:
10419 Removed old methods.
10421 2002-06-27 Darin Adler <darin@apple.com>
10423 * khtml/rendering/render_applet.cpp: Remove include of <iostream.h> to avoid bloat.
10424 (RenderApplet::RenderApplet): Remove APPLE_CHANGES.
10425 (RenderApplet::processArguments): Remove APPLE_CHANGES.
10426 This file is now back to 100% the same as the KDE original.
10428 * kwq/khtml/java/kjavaappletwidget.h: Added a bit of stuff so we match the interface
10429 of the KDE original and don't need APPLE_CHANGES.
10430 * kwq/KWQKJavaAppletWidget.mm: Remove include of <iostream.h> to avoid bloat.
10431 (KJavaAppletWidget::KJavaAppletWidget): Update for parameters that match the
10433 (KJavaAppletWidget::~KJavaAppletWidget): Added.
10434 (KJavaAppletWidget::setBaseURL): Added.
10435 (KJavaAppletWidget::setParameter): Put strings into an NSMutableDictionary.
10436 (KJavaAppletWidget::showApplet): Use the new baseURL and parameters dictionary.
10438 * kwq/WebCoreViewFactory.h: Add baseURL parameter.
10439 * kwq/WebCoreViewFactory.m:
10440 (-[WebCoreViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]): Add baseURL parameter.
10442 * kwq/kdecore/kurl.h: Fix NSURL definition to fit idiom.
10443 * kwq/qt/qmap.h: Added the const version of the [] operator.
10445 * khtml/ecma/kjs_navigator.cpp: Tweak whitespace.
10446 * khtml/html/html_documentimpl.cpp: Tweak to make it a little closer to original.
10448 * kwq/KWQKCookieJar.h: Reduce includes.
10449 * kwq/KWQKCookieJar.mm: Move includes in here.
10451 * kwq/WebCoreCookieAdapter.h: Fix comment that emacs munged.
10453 2002-06-27 Richard Williamson <rjw@apple.com>
10455 * kwq/WebCoreBridge.h:
10456 * kwq/WebCoreBridge.mm:
10457 (-[WebCoreBridge selectAll]):
10458 Select all using the part.
10460 2002-06-27 Maciej Stachowiak <mjs@apple.com>
10462 WebCore part of fixes for JavaScript cookie bugs:
10464 2943749 - JavaScript navigator.cookieEnabled property is always "true"
10465 2856039 - JavaScript document.cookies property is not implemented
10467 Thereby also fixing:
10469 2944378 - Trying to log into my Yahoo web mail account sent
10470 Alexander into a loop
10472 * kwq/KWQKCookieJar.h: Added.
10473 * kwq/KWQKCookieJar.mm: Added.
10474 (KWQKCookieJar::cookie): C++ veneer over WebCoreCookieAdapter call.
10475 (KWQKCookieJar::setCookie): Likewise.
10476 (KWQKCookieJar::cookieEnabled): Likewise.
10477 * kwq/Makefile.am: Add new files to build.
10478 * kwq/WebCoreCookieAdapter.h: Added.
10479 * kwq/WebCoreCookieAdapter.m: Added.
10480 (+[WebCoreCookieAdapter sharedAdapter]): Method to return shared
10481 instance, al la the WebCoreFactory classes.
10482 (-[WebCoreCookieAdapter init]): Establish self as shared instance.
10483 (-[WebCoreCookieAdapter cookiesEnabled]): No-op implementation.
10484 (-[WebCoreCookieAdapter cookiesForURL:]): Likewise.
10485 (-[WebCoreCookieAdapter setCookies:forURL:]): Likewise.
10486 * WebCore.exp: Export WebCoreCookieAdapter class.
10487 * khtml/ecma/kjs_navigator.cpp:
10488 (Navigator::getValueProperty): Call appropriate KWQCookieJar method.
10489 * khtml/html/html_documentimpl.cpp:
10490 (HTMLDocumentImpl::cookie): Call appropriate KWQCookieJar method.
10491 (HTMLDocumentImpl::setCookie): Likewise
10493 2002-06-27 Chris Blumenberg <cblu@apple.com>
10495 Fix to support sending PARAM tags to the Java plug-in.
10497 * khtml/rendering/render_applet.cpp:
10498 (RenderApplet::RenderApplet): removed APPLE_CHANGES
10499 (RenderApplet::layout): removed APPLE_CHANGES
10500 * kwq/KWQKJavaAppletWidget.mm:
10501 (KJavaAppletWidget::KJavaAppletWidget): removed setView
10502 (KJavaAppletWidget::showApplet): call setView here
10503 * kwq/WebCoreViewFactory.h:
10504 * kwq/WebCoreViewFactory.m:
10505 (-[WebCoreViewFactory viewForJavaAppletWithFrame:andArguments:]): renamed
10506 * kwq/khtml/java/kjavaappletwidget.h: added KJavaApplet
10508 2002-06-26 Richard Williamson <rjw@apple.com>
10510 Many improvements to selection. More Cocoa like,
10511 normalized all text drawing code paths for selected
10512 and unselected cases. Still need to work on
10513 TextSlave::checkSelectionPoint. Fixed redraw region
10516 khtml redraw the entire visible region when selection changes.
10517 This could be optimzed.
10519 * khtml/rendering/font.cpp:
10522 * khtml/rendering/render_text.cpp:
10523 (TextSlave::printSelection):
10524 * kwq/KWQPainter.mm:
10525 (QPainter::drawText):
10526 (QPainter::selectedTextBackgroundColor):
10527 * kwq/KWQScrollView.mm:
10528 (QScrollView::contentsX):
10529 (QScrollView::contentsY):
10530 * kwq/WebCoreTextRenderer.h:
10531 * kwq/qt/qpainter.h:
10533 2002-06-26 Maciej Stachowiak <mjs@apple.com>
10535 Implement KHTMLPart::findFrame() to fix the following Radar bugs:
10537 Radar 2943177 - infinite JavaScript loop sfcu.org online bill paying
10538 Radar 2950580 - Unknown JavaScript properties on the Window object return self instead of Undefined
10540 * khtml/khtml_part.cpp:
10541 (KHTMLPart::findFrame):
10542 * kwq/KWQKHTMLPart.mm:
10543 (KWQKHTMLPartImpl::findFrame):
10544 * kwq/KWQKHTMLPartImpl.h:
10546 2002-06-26 Darin Adler <darin@apple.com>
10548 - fixed 2969378 -- "A with hat" characters (Unicode 00C2) showing up at Zingermans.com
10550 * kwq/KWQCharsets.mm: (buildDictionaries): Put UTF-16 in the dictionary, but pointing
10551 at the string encoding for UTF-8. This mimics what Internet Explorer does.
10553 * kwq/KWQtextcodec.mm: (QTextCodec::fromUnicode): Fix implementation so it will convert
10554 the specified encoding instead of always Latin-1.
10556 2002-06-26 Darin Adler <darin@apple.com>
10558 Fixed (or at least worked around) a crash I saw where KWQKHTMLPartImpl::end was
10559 making calls after the KHTMLView was gone. This is specific to our APPLE_CHANGES
10560 code; it's handled differently in KDE.
10562 * khtml/khtml_part.h: Added detachView.
10563 * khtml/khtml_part.cpp: (KHTMLPart::detachView): Added. Nils out the view pointer.
10564 * khtml/khtmlview.cpp: (KHTMLView::~KHTMLView): Call m_part->detachView().
10565 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::end): Don't try to make calls to the view
10568 2002-06-25 Richard Williamson <rjw@apple.com>
10570 Support for khtml style selection drawing. Ugly,
10571 we'll want to make this more Mac like.
10573 * khtml/rendering/font.cpp:
10575 Enable khtml code path. Removed APPLE_CHANGES
10576 * kwq/KWQFontMetrics.mm:
10577 (QFontMetrics::charWidth):
10578 Implemented in terms of width().
10579 * kwq/KWQPainter.mm:
10580 (QPainter::drawText):
10582 * kwq/qt/qfontmetrics.h:
10583 Added QFontMetrics::charWidth.
10585 2002-06-25 Richard Williamson <rjw@apple.com>
10587 Support for rudimentary plain text 'copy'.
10589 * kwq/WebCoreBridge.h:
10590 * kwq/WebCoreBridge.mm:
10591 (-[WebCoreBridge selectedText]):
10593 2002-06-25 Richard Williamson <rjw@apple.com>
10595 Enabled progressive image loading code.
10597 * khtml/misc/loader.cpp:
10598 (CachedImage::data):
10599 * kwq/KWQPixmap.mm:
10600 (QPixmap::QPixmap):
10602 2002-06-25 Darin Adler <darin@apple.com>
10604 Removed remaining uses of BORROWED defines.
10605 Made some simplifications and formatting fixes. All safe.
10607 * kwq/KWQArrayImpl.h:
10608 * kwq/KWQArrayImpl.mm:
10610 * kwq/KWQCharsets.mm:
10612 * kwq/KWQKCursor.mm:
10613 * kwq/KWQKHTMLPart.mm:
10614 * kwq/KWQListImpl.h:
10615 * kwq/KWQMapImpl.mm:
10616 * kwq/KWQString.mm:
10617 * kwq/KWQValueListImpl.mm:
10618 * kwq/KWQVectorImpl.h:
10619 * kwq/KWQtextcodec.mm:
10620 * kwq/make-charset-table.pl:
10621 * kwq/make-mac-encodings.c:
10623 * kwq/qt/qregexp.h:
10624 * kwq/qt/qtextcodec.h:
10626 * WebCore-tests.exp: Small change to exports for the array test.
10628 2002-06-24 Chris Blumenberg <cblu@apple.com>
10630 Changed the plug-in view constructor to take NSURL's rather
10633 * kwq/KWQKHTMLPart.mm:
10634 (KWQKHTMLPartImpl::requestObject):
10635 * kwq/WebCoreViewFactory.h:
10636 * kwq/WebCoreViewFactory.m:
10638 2002-06-24 Darin Adler <darin@apple.com>
10640 * khtml/khtmlview.cpp: (KHTMLView::~KHTMLView): Put APPLE_CHANGES
10641 later in the sequence so we don't deref the part before the code
10644 * kwq/kwqdebug.h: Re-add the __format__ attribute, now that Radar
10647 2002-06-21 Darin Adler <darin@apple.com>
10649 * kwq/KWQFont.mm: Made it store a copy of the family name instead of
10650 storing a reference to the mutable CFString.
10652 * kwq/KWQPainter.mm:
10653 (QPainter::drawPixmap): Simplified.
10654 (QPainter::drawTiledPixmap): Used the new [tileInRect:].
10656 * kwq/WebCoreImageRenderer.h: Added [tileInRect:], removed [drawInRect:],
10657 and also removed view parameter from [beginAnimation].
10659 * kwq/qt/qpixmap.h: Removed unneeded getImageRenderer().
10661 2002-06-21 Darin Adler <darin@apple.com>
10663 - fixed 2964718 -- crash in KWQCheckCacheObjectStatus
10665 * kwq/KWQKloader.mm: (KWQCheckCacheObjectStatus):
10666 Handle case of nil object. Add comments. Remove questionable use
10667 of floating point abs() to convert always positive int to uint.
10669 2002-06-20 Darin Adler <darin@apple.com>
10671 * kwq/KWQKCharsets.mm: Removed unneeded parts.
10672 * kwq/KWQStyle.mm: Removed.
10673 * kwq/KWQToolTip.mm: Removed.
10674 * kwq/KWQVariant.mm: Simplified.
10675 * kwq/Makefile.am: Removed KWQStyle.mm and KWQToolTip.mm.
10677 * kwq/KWQRefPtr.h: Streamlined implementation that inlines
10678 a bit less and is more efficient for creating empty pointers.
10680 * kwq/KWQStyle.h: Removed unused stuff.
10682 * kwq/kdecore/kcharsets.h: Removed unneeded parts.
10683 * kwq/qt/qsortedlist.h: Removed unneeded parts.
10684 * kwq/qt/qtooltip.h: Removed unneeded parts.
10685 * kwq/qt/qvariant.h: Removed unneeded parts.
10687 * khtml/khtmlview.cpp: (KHTMLView::~KHTMLView):
10688 Remove unneeded APPLE_CHANGES -- no need to nil something out in
10691 === Alexander-9 ===
10693 2002-06-19 Richard Williamson <rjw@apple.com>
10695 * kwq/KWQScrollView.mm:
10696 (QScrollView::addChild):
10697 Fixed regression from fix to 2956444. Wrong view was being checked
10698 for conformance to WebCoreFrameView.
10699 * kwq/KWQWidget.mm:
10700 (QWidget::internalSetGeometry):
10701 Fixed regression from fix to 2956444. Wrong view was being checked
10702 for conformance to WebCoreFrameView.
10704 2002-06-19 Richard Williamson <rjw@apple.com>
10706 * khtml/khtmlview.cpp: (KHTMLView::~KHTMLView):
10708 * khtml/rendering/render_image.cpp:
10709 (RenderImage::setPixmap):
10710 Call stopAnimations when a image changes, i.e. may be changed
10712 * kwq/KWQPixmap.mm:
10713 (QPixmap::stopAnimations):
10714 Call image renderer's stopAnimation.
10715 * kwq/qt/qpixmap.h:
10716 Added stopAnimations.
10718 2002-06-19 Darin Adler <darin@apple.com>
10720 - fixed 2956444 -- mac os x feedback form missing textarea
10722 * kwq/WebCoreFrameView.h: Added.
10724 * kwq/KWQWidget.mm:
10725 (QWidget::setCursor): Checked for cursor-setting call based on the
10726 WebCoreFrameView protocol instead of using an informal protocol.
10727 Also walk up the view chain so the cursor actually gets set.
10728 (QWidget::internalSetGeometry): Changed the special case in here to use the new
10729 WebCoreFrameView protocol, so it won't happen for all NSScrollView objects.
10730 Also add comments to explain the hack better and mention the code in QScrollView.
10732 * kwq/KWQScrollView.mm:
10733 (-[NSView _KWQ_isScrollView]): Gave these KWQ names instead of IF names.
10734 (-[NSView _KWQ_getDocumentView]): Gave these KWQ names instead of IF names.
10735 (QScrollView::addChild): Changed the special case in here to use the new
10736 WebCoreFrameView protocol, so it won't happen for all NSScrollView objects.
10737 Also add comments to explain the hack better and mention the code in QWidget.
10741 * kwq/kwqdebug.h: Cloned improved assert code from WebFoundation.
10743 * kwq/KWQTextArea.h: Removed unused isReadOnly/setReadOnly.
10744 * kwq/KWQTextArea.mm: Removed unused isReadOnly/setReadOnly.
10746 * kwq/WebCoreViewFactory.h: Removed extraneous import and WebCoreCursorSetting
10749 * kwq/KWQTextEdit.mm: Tweaked.
10750 * kwq/kparts/part.h: Tweaked.
10752 2002-06-18 Kenneth Kocienda <kocienda@apple.com>
10756 Radar 2928483 (activity viewer does not show all the pieces of a web page when the page is cached)
10758 * khtml/misc/loader.cpp:
10759 (DocLoader::requestImage): Added APPLE_CHANGES call to the KWQCheckCacheObjectStatus function
10761 (DocLoader::requestStyleSheet): ditto
10762 (DocLoader::requestScript): ditto
10763 * kwq/KWQKloader.mm:
10764 (KWQCheckCacheObjectStatus): New function that informs WebKit of the
10765 fact that a URL was loaded from the WebCore/khtml cache.
10766 * kwq/KWQLoaderImpl.h: Added prototype for KWQCheckCacheObjectStatus
10767 * kwq/WebCoreBridge.h: Added KWQCheckCacheObjectStatus to WebCoreBridge protocol
10769 2002-06-18 Darin Adler <darin@apple.com>
10771 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::~KWQKHTMLPartImpl):
10772 Remove an NSLog I left in by accident.
10774 2002-06-17 Richard Williamson <rjw@apple.com>
10776 Fixed window.open regression.
10777 Partial fix to targeting frame of new name.
10779 * kwq/KWQKHTMLPart.mm:
10780 (KWQKHTMLPartImpl::urlSelected):
10781 Partial fix to frame not found problem.
10782 * kwq/KWQKHTMLPartBrowserExtension.mm:
10783 (KHTMLPartBrowserExtension::createNewWindow):
10784 Fix for window.open regression.
10785 * kwq/WebCoreBridge.h:
10786 Changed return type of openNewWindowWithURL:
10788 2002-06-17 Darin Adler <darin@apple.com>
10790 Fixed a storage leak.
10792 * kwq/WebCoreBridge.mm: (-[WebCoreBridge documentTextFromDOM]): Add a missing autorelease.
10794 Remove a bunch of loader-related APPLE_CHANGES.
10796 * khtml/misc/loader.h: Remove KWQURLLoadClient and KWQLoaderImpl.
10797 * khtml/misc/loader.cpp:
10798 (Loader::Loader): Remove unneeded KWQLoaderImpl object.
10799 (Loader::~Loader): Remove unneeded KWQLoaderImpl object.
10800 (Loader::servePendingRequests): Call KWQServeRequest instead of KWQLoaderImpl::serveRequest.
10801 (Loader::slotFinished): Remove unneeded KWQLoaderImpl::objectFinished.
10803 * kwq/KWQLoaderImpl.h:
10804 * kwq/KWQKloader.mm: (KWQServeRequest): Replaces the KWQLoaderImpl class. The rest of what
10805 was in this class was obsolete.
10807 2002-06-17 Richard Williamson <rjw@apple.com>
10809 Fixed www.2cpu.com regression. QWidget::_displayRect was displaying the wrong
10810 view. This was a regression that would impact all DHTML.
10812 * khtml/khtmlview.cpp:
10813 (KHTMLView::timerEvent):
10814 * kwq/KWQScrollView.mm:
10815 (QScrollView::updateContents):
10816 * kwq/KWQWidget.mm:
10817 (QWidget::QWidget):
10818 (QWidget::endEditing):
10819 * kwq/qt/qwidget.h:
10821 2002-06-17 Darin Adler <darin@apple.com>
10823 Fixed bug where some images would get left behind when scrolling. Turned out it
10824 was all the tiled images that were getting left behind.
10826 * kwq/KWQPainter.mm: (QPainter::drawTiledPixmap): Fixed to get the view for
10827 coordinates from [NSView focusView] the way drawPixmap does, rather than using
10828 data->widget->getView(), which gives the scroll view instead of the scrolled view.
10830 2002-06-16 Darin Adler <darin@apple.com>
10832 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::frames):
10833 Fixed this function to get from frames to parts properly. It was still
10834 assuming that [WebCoreBridge childFrames] would return a list of WebCoreBridge
10835 objects, but now it returns WebCoreFrame objects.
10837 * kwq/WebCoreFrame.h: Added [WebCoreFrame bridge] for the case above.
10838 Note that it always gives the "committed" bridge, not the provisional one.
10840 2002-06-16 Darin Adler <darin@apple.com>
10842 Add a separate WebCoreFrame alongside WebCoreBridge to facilitate
10843 handling of frames with no HTML content in them. This probably fixes
10844 frames named "_blank".
10846 Also fixed the build, because a clean build failed.
10848 * kwq/KWQKHTMLPart.mm:
10849 (KWQKHTMLPartImpl::openURLInFrame):
10850 (KWQKHTMLPartImpl::urlSelected):
10851 (KWQKHTMLPartImpl::requestFrame):
10852 (KWQKHTMLPartImpl::submitForm):
10853 (KWQKHTMLPartImpl::parentPart):
10854 Work with WebCoreFrame objects instead of WebCoreBridge objects when dealing with
10855 frame operations -- loading new URLs mainly.
10857 * kwq/WebCoreBridge.h: Removed frame-related operations, now they are on WebCoreFrame.
10858 Broke out WebCoreResourceLoader into its own file. Added comments.
10860 * kwq/WebCoreFrame.h: Added.
10862 * kwq/WebCoreResourceLoader.h: Added.
10863 * kwq/KWQKloader.mm: Include WebCoreResourceLoader.h now that it's broken out.
10865 * WebCore-tests.exp: Tests still need QString::latin1(), although we don't need
10866 to export it for WebKit any more.
10868 2002-06-16 Darin Adler <darin@apple.com>
10870 Moved the IFURLHandleClient subclass to WebKit, so it can some day be merged
10871 with the one for the frames themselves; this one is for resources.
10873 * kwq/kio/jobclasses.h:
10874 * kwq/KWQKjobclasses.mm:
10875 (TransferJob::setHandle): Replaced the old TransferJob::begin with this.
10877 * kwq/KWQLoaderImpl.h: Remove setClient.
10878 * kwq/KWQKloader.mm:
10879 (-[WebCoreResourceLoader initWithLoader:job:]): Added.
10880 (-[WebCoreResourceLoader dealloc]): Added.
10881 (-[WebCoreResourceLoader addData:]): Added.
10882 (-[WebCoreResourceLoader cancel]): Added.
10883 (-[WebCoreResourceLoader finish]): Added.
10884 (KWQLoaderImpl::serveRequest): Use [WebCoreBridge startLoadingResource:withURL:].
10885 * khtml/misc/loader.cpp: (Loader::load): Removed unneeded call to setClient.
10887 * kwq/WebCoreBridge.h: Remove unneeded methods. Added [WebCoreBridge startLoadingResource:withURL:].
10889 2002-06-15 Darin Adler <darin@apple.com>
10891 Fix frame-related calls. I was always searching all the frames, which was disastrous.
10892 Also do name changes.
10894 * kwq/KWQKHTMLPart.mm:
10895 (KWQKHTMLPartImpl::urlSelected): Use descendantFrameNamed rather than frameNamed.
10896 (KWQKHTMLPartImpl::requestFrame): Use childFrameNamed rather than frameNamed.
10897 (KWQKHTMLPartImpl::frameExists): Use childFrameNamed rather than frameNamed.
10899 * kwq/KWQScrollView.mm: (QScrollView::addChild): Asserts I used while debugging.
10901 * kwq/WebCoreBridge.h: Add new calls. Change names of old ones to include the
10902 word frame consistently. (Also bits of new work that will do no harm, but are
10903 not really needed yet.)
10905 2002-06-15 Darin Adler <darin@apple.com>
10907 * kwq/KWQKloader.mm:
10908 (-[KWQURLLoadClient IFURLHandle:didRedirectToURL:]):
10909 Rolled out an assert I added by accident that will break Deployment builds.
10911 2002-06-15 Darin Adler <darin@apple.com>
10913 * kwq/KWQKloader.mm:
10914 (-[KWQURLLoadClient IFURLHandleResourceDidCancelLoading:]):
10915 (-[KWQURLLoadClient IFURLHandleResourceDidFinishLoading:data:]):
10916 (-[KWQURLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
10917 Fixed the order so the URL handles are removed before we send notifications
10918 as before my change. This seems to fix the rest of the breakage.
10920 2002-06-15 Darin Adler <darin@apple.com>
10922 * kwq/KWQKloader.mm: (-[KWQURLLoadClient initWithLoader:bridge:]):
10923 Fix bridge/m_bridge typo that was responsible for at least some of the breakage
10926 2002-06-15 Richard Williamson <rjw@apple.com>
10928 Fixed factoring problem.
10930 * kwq/KWQScrollView.mm:
10931 (-[NSView _IF_getDocumentView]):
10932 (-[NSView _IF_isScrollView]):
10933 (QScrollView::visibleWidth):
10934 (QScrollView::visibleHeight):
10935 (QScrollView::contentsWidth):
10936 (QScrollView::contentsHeight):
10937 (QScrollView::contentsX):
10938 (QScrollView::contentsY):
10939 (QScrollView::setContentsPos):
10940 (QScrollView::addChild):
10941 (QScrollView::resizeContents):
10942 (QScrollView::contentsToViewport):
10943 (QScrollView::viewportToContents):
10944 * kwq/qt/qscrollview.h:
10946 2002-06-15 Darin Adler <darin@apple.com>
10948 * kwq/WebCoreBridge.mm:
10949 (-[WebCoreBridge createKHTMLViewWithNSView:width:height:marginWidth:marginHeight:]):
10950 Implement the rule where a negative number means "don't set the margin".
10952 2002-06-15 Darin Adler <darin@apple.com>
10954 * kwq/kio/jobclasses.h: Removed import of WebFoundation.h.
10955 * kwq/KWQKjobclasses.mm: Added import of IFURLHandle.h.
10956 * kwq/KWQKloader.mm: Added import of IFError.h and IFURLHandle.h.
10958 * kwq/WCLoadProgress.h: Removed.
10959 * kwq/WCWebDataSource.h: Removed.
10960 * kwq/KWQKHTMLPart.mm: Removed import of WCWebDataSource.h.
10962 * *.mm: Changed all includes to imports using a perl script.
10964 2002-06-15 Darin Adler <darin@apple.com>
10966 - fixed 2942808 -- remove all calls to WebKit from WebCore
10968 More work on the bridge. Now we don't call anything in WebKit explicitly,
10969 although there are still implicit connections that need to be fixed.
10971 * WebCore.exp: Remove exports that are no longer needed, now that
10972 WebKit is using the bridge to get at more things.
10974 * khtml/misc/loader.h:
10975 * khtml/misc/loader.cpp:
10976 (CachedCSSStyleSheet::CachedCSSStyleSheet):
10977 (CachedScript::CachedScript):
10978 (CachedImage::CachedImage):
10979 Remove the extra parameter to the CachedObject constructor. We don't
10980 need it any more, so we can remove all these APPLE_CHANGES.
10982 * kwq/KWQKHTMLPart.mm: Remove getDataSource.
10984 * kwq/KWQLoaderImpl.h: Remove destructor.
10985 * kwq/KWQKloader.mm:
10986 (-[KWQURLLoadClient initWithLoader:bridge:]): Keep the bridge around instead
10987 of the data source.
10988 (-[KWQURLLoadClient dealloc]): Release the bridge instead of the data source.
10989 Also put another workaround for 2954901 here, like in WebKit.
10990 (-[KWQURLLoadClient IFURLHandleResourceDidBeginLoading:]):
10991 (-[KWQURLLoadClient IFURLHandle:resourceDataDidBecomeAvailable:]):
10992 (-[KWQURLLoadClient doneWithHandle:error:]):
10993 (-[KWQURLLoadClient IFURLHandleResourceDidCancelLoading:]):
10994 (-[KWQURLLoadClient IFURLHandleResourceDidFinishLoading:data:]):
10995 (-[KWQURLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
10996 (-[KWQURLLoadClient IFURLHandle:didRedirectToURL:]):
10997 (KWQLoaderImpl::setClient):
10998 (KWQLoaderImpl::serveRequest):
10999 Use the bridge to do all the heavy lifting, and put lots of common code into
11000 a doneWithHandle:error: method. Also store the URL so the redirect code works
11001 properly for multiple redirects and add asserts like the ones in IFMainURLHandleClient.
11002 (KWQLoaderImpl::objectFinished): Add a comment.
11004 * kwq/WebCoreBridge.h: Make header so it can be included from plain Objective C,
11005 not just Objective C++. Add a bunch of methods for bridging in to WebCore as opposed
11006 to out of WebCore. Add new methods for bridging out from WebCore too for all the
11007 progress hooks. Put all the subclass responsibility methods into a protocol
11008 in such a way that we don't need to implement them in the base class, and subclasses
11009 can set things up so they get errors if they forget to implement anything.
11011 * kwq/WebCoreBridge.mm:
11012 (-[WebCoreBridge openURL:]): Added.
11013 (-[WebCoreBridge addData:withEncoding:]): Added.
11014 (-[WebCoreBridge closeURL]): Added.
11015 (-[WebCoreBridge end]): Added.
11016 (-[WebCoreBridge setURL:]): Added.
11017 (-[WebCoreBridge createKHTMLViewWithNSView:width:height:marginWidth:marginHeight:]): Added.
11018 (-[WebCoreBridge documentTextFromDOM]): Added.
11019 (-[WebCoreBridge scrollToBaseAnchor]): Added.
11021 * kwq/external.h: Removed.
11023 2002-06-15 Maciej Stachowiak <mjs@apple.com>
11025 Get current bits per pixel from CoreGraphics, thereby fixing
11027 Radar 2943736 - JavaScript screen.colorDepth and screen.pixelDepth properties always returns 32,
11028 regardless of real depth
11030 * kwq/KWQPaintDeviceMetrics.mm:
11031 (QPaintDeviceMetrics::depth):
11033 2002-06-15 Maciej Stachowiak <mjs@apple.com>
11035 Removed product and vendor properties, thereby fixing:
11037 Radar 2943751 - JavaScript navigator.product property is "Konqueror/khtml"
11038 Radar 2943753 - JavaScript navigator.vendor property is "KDE"
11040 * khtml/ecma/kjs_navigator.cpp:
11041 (Navigator::getValueProperty): Return undefined for the above mentioned properties.
11043 2002-06-15 Maciej Stachowiak <mjs@apple.com>
11045 Implemented functionality needed for missing Screen properties, thereby fixing the following
11048 Radar 2943730 - JavaScript screen.availHeight property is not implemented
11049 Radar 2943732 - JavaScript screen.availLeft property is not implemented
11050 Radar 2943734 - JavaScript screen.availTop property not implemented
11051 Radar 2943735 - JavaScript screen.availWidth property is not implemented
11053 * kwq/KWQKWinModule.mm:
11054 (KWinModule::workArea): Return the correct screen size to fix the above bugs.
11056 2002-06-14 Richard Williamson <rjw@apple.com>
11058 Changed IFResourceProgressHandler to pass back resource handle instead of
11059 string description. This will address the needs descibed in 2954160.
11061 * kwq/KWQKloader.mm:
11062 (-[KWQURLLoadClient IFURLHandleResourceDidBeginLoading:]):
11063 (-[KWQURLLoadClient IFURLHandleResourceDidCancelLoading:]):
11064 (-[KWQURLLoadClient IFURLHandleResourceDidFinishLoading:data:]):
11065 (-[KWQURLLoadClient IFURLHandle:resourceDataDidBecomeAvailable:]):
11066 (-[KWQURLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
11067 (-[KWQURLLoadClient IFURLHandle:didRedirectToURL:]):
11068 (KWQLoaderImpl::serveRequest):
11071 2002-06-14 Darin Adler <darin@apple.com>
11073 * kwq/KWQDateTime.mm: Add ifdefs needed to make Deployment build compile.
11075 2002-06-14 Darin Adler <darin@apple.com>
11077 Worked on eliminating calls to WebKit. About 3/4 done.
11079 * WebCore.exp: Export new WebCoreBridge class, fewer other things.
11081 * WebCorePrefix.h: #include <ostream> in debug builds; we couldn't
11082 before because of a PFE bug that has since been fixed (2920556).
11084 * khtml/html/html_objectimpl.cpp: (HTMLObjectElementImpl::attach):
11085 Add a comment explaining our latest change here.
11087 * khtml/khtml_part.cpp: (KHTMLPart::~KHTMLPart): Fix storage leak
11088 by deleting m_hostExtension.
11090 * khtml/misc/loader.h: Set type properly on client member so we
11091 don't have to do so much casting.
11093 * kwq/KWQKHTMLPartImpl.h: Add getBridge and setBridge, remove setDataSource.
11094 * kwq/KWQKHTMLPart.mm:
11095 (KWQKHTMLPartImpl::KWQKHTMLPartImpl): Eliminate m_dataSource.
11096 (KWQKHTMLPartImpl::openURLInFrame): Use WebCoreBridge.
11097 (KWQKHTMLPartImpl::urlSelected): Use WebCoreBridge.
11098 (KWQKHTMLPartImpl::requestFrame): Use WebCoreBridge.
11099 (KWQKHTMLPartImpl::requestObject): Move WebCoreViewFactory code
11100 here; we don't need an entire WCPluginWidget file just for this
11102 (KWQKHTMLPartImpl::submitForm): Use WebCoreBridge.
11103 (KWQKHTMLPartImpl::frameExists): Use WebCoreBridge.
11104 (KWQKHTMLPartImpl::frames): Use WebCoreBridge.
11105 (KWQKHTMLPartImpl::setTitle): Use WebCoreBridge.
11106 (KWQKHTMLPartImpl::getDataSource): Use WebCoreBridge.
11107 (KWQKHTMLPartImpl::parentPart): Use WebCoreBridge.
11109 * kwq/KWQKHTMLPartBrowserExtension.mm:
11110 (KHTMLPartBrowserExtension::createNewWindow): Use WebCoreBridge.
11112 * kwq/KWQKloader.mm: Move the part of external.h that we still use in
11113 here, with the expectation of eliminating it soon. Also renamed
11114 URLLoadClient to KWQURLLoadClient so we don't hog namespace.
11116 * kwq/qt/qscrollview.h:
11117 * kwq/KWQScrollView.mm: Used helper functions to do the "documentView"
11118 selector thing more consistently.
11120 * kwq/KWQWidget.mm: Get interface for changing the cursor from
11121 WebCoreViewFactory.h instead of from external.h.
11123 * kwq/WebCoreViewFactory.h:
11124 * kwq/Makefile.am: Remove WCPluginWidget.mm, add WebCoreBridge.mm.
11125 * kwq/WCPluginWidget.h: Removed.
11126 * kwq/WCPluginWidget.mm: Removed.
11127 * kwq/WebCoreBridge.h: Added.
11128 * kwq/WebCoreBridge.mm: Added.
11130 * kwq/qt/qarray.h: Use <ostream> instead of <iostream>.
11131 * kwq/qt/qcstring.h: Remove <iostream> include since we include <qarray.h>.
11132 * kwq/qt/qdatetime.h: Replace unconditional <iostream> include with a
11133 conditional <ostream> include. Also made streaming operators conditional.
11134 * kwq/qt/qlist.h: Use <ostream> instead of <iostream>.
11135 * kwq/qt/qmap.h: Use <ostream> instead of <iostream>.
11136 * kwq/qt/qpoint.h: Use <iosfwd> instead of <iostream>.
11137 * kwq/qt/qsize.h: Use <iosfwd> instead of <iostream>.
11138 * kwq/qt/qvaluelist.h: Use <ostream> instead of <iostream>.
11139 * kwq/qt/qvector.h: Replace unconditional <iostream> include with a
11140 conditional <ostream> include. Also made streaming operators conditional.
11142 2002-06-14 Richard Williamson <rjw@apple.com>
11144 Name change view -> webView.
11146 * kwq/KWQKHTMLPart.mm:
11147 (KWQKHTMLPartImpl::requestFrame):
11150 2002-06-14 Chris Blumenberg <cblu@apple.com>
11152 Put #ifndef APPLE_CHANGES around one line that
11153 was causing EMBED and OBJECT tags to not have render objects.
11155 * khtml/html/html_objectimpl.cpp:
11156 (HTMLObjectElementImpl::attach):
11158 2002-06-14 Chris Blumenberg <cblu@apple.com>
11160 Committing Richard's changes to KWQPainter
11162 2002-06-13 Richard Williamson <rjw@apple.com>
11164 More cleanup to deal with special case of provisional view
11165 not being in a scrollview.
11167 * kwq/KWQScrollView.mm:
11168 (QScrollView::contentsWidth):
11169 (QScrollView::contentsHeight):
11170 (QScrollView::contentsX):
11171 (QScrollView::contentsY):
11173 2002-06-13 Richard Williamson <rjw@apple.com>
11176 * kwq/KWQWidget.mm: (QWidget::setCursor): restored code
11177 * kwq/external.h: removed definitions no longer needed
11178 * khtml/rendering/render_form.cpp: (RenderLineEdit::calcMinMaxWidth): tweaked size
11180 2002-06-12 Kenneth Kocienda <kocienda@apple.com>
11182 * kwq/kwqdebug.h: Made assertion failure console message bolder and easier to see.
11184 2002-06-11 Darin Adler <darin@apple.com>
11187 (RelativeURLKeyRetainCallBack): Use a ref count.
11188 (RelativeURLKeyReleaseCallBack): Use a ref count instead of assuming there will
11189 never be more than one reference.
11190 (KURL::normalizeRelativeURLString): Remove the workaround for CFURL bug 2891336.
11191 (operator==): Don't put URLs on the autorelease pool just to compare them.
11193 2002-06-10 Darin Adler <darin@apple.com>
11195 * khtml/css/cssstyleselector.cpp: Fix uninitialized variable warning.
11197 2002-06-10 Darin Adler <darin@apple.com>
11199 Merged in changes from KDE 3.0.1.
11201 * kwq/kdecore/kurl.h:
11202 * kwq/KWQKURL.mm: (operator==): New, needed by some 3.0.1 code.
11204 * kwq/qt/qpalette.h: Add QPalette::NColorGroups and QColorGroup::NColorRoles.
11205 * kwq/KWQPalette.mm: Simplify by getting rid of "private" indirection.
11206 (QPalette::color): New, needed by some 3.0.1 code.
11207 * kwq/KWQColorGroup.mm: Simplify by getting rid of "private" indirection.
11209 * kwq/qt/qstring.h:
11210 * kwq/KWQString.mm: (QConstString::QConstString): Change parameter to const QChar *
11211 to match Qt so we compile.
11213 * kwq/qt/qtextedit.h:
11214 * kwq/KWQTextEdit.mm: (QTextEdit::setTabStopWidth): Add unimplemented placeholder,
11215 needed by some 3.0.1 code.
11217 * kwq/qt/qvaluelist.h:
11218 * kwq/KWQValueListImpl.h:
11219 * kwq/KWQValueListImpl.mm: Simplify implementation.
11221 * WebCore-tests.exp: Update for changes in QValueList implementation.
11223 * kwq/kdecore/klibloader.h: Add include of <kio/global.h> to make something compile.
11225 * kwq/khtml/java/kjavaappletcontext.h: Add JType and constructor that takes DCOPObject*.
11227 * kwq/kio/global.h: Add KIO::CacheControl.
11229 * khtml/css/css_ruleimpl.cpp:
11230 * khtml/css/css_ruleimpl.h:
11231 * khtml/css/css_stylesheetimpl.cpp:
11232 * khtml/css/css_stylesheetimpl.h:
11233 * khtml/css/css_valueimpl.cpp:
11234 * khtml/css/css_valueimpl.h:
11235 * khtml/css/cssparser.cpp:
11236 * khtml/css/cssparser.h:
11237 * khtml/css/cssstyleselector.cpp:
11238 * khtml/css/cssstyleselector.h:
11239 * khtml/css/html4.css:
11240 * khtml/dom/css_rule.cpp:
11241 * khtml/dom/css_rule.h:
11242 * khtml/dom/css_stylesheet.cpp:
11243 * khtml/dom/css_stylesheet.h:
11244 * khtml/dom/css_value.cpp:
11245 * khtml/dom/dom2_events.cpp:
11246 * khtml/dom/dom2_range.cpp:
11247 * khtml/dom/dom2_range.h:
11248 * khtml/dom/dom2_views.cpp:
11249 * khtml/dom/dom_doc.cpp:
11250 * khtml/dom/dom_element.cpp:
11251 * khtml/dom/dom_exception.h:
11252 * khtml/dom/dom_node.cpp:
11253 * khtml/dom/dom_string.cpp:
11254 * khtml/dom/dom_text.cpp:
11255 * khtml/dom/dom_xml.cpp:
11256 * khtml/dom/html_base.cpp:
11257 * khtml/dom/html_block.cpp:
11258 * khtml/dom/html_document.cpp:
11259 * khtml/dom/html_element.cpp:
11260 * khtml/dom/html_element.h:
11261 * khtml/dom/html_form.cpp:
11262 * khtml/dom/html_head.cpp:
11263 * khtml/dom/html_image.cpp:
11264 * khtml/dom/html_inline.cpp:
11265 * khtml/dom/html_list.cpp:
11266 * khtml/dom/html_misc.cpp:
11267 * khtml/dom/html_object.cpp:
11268 * khtml/dom/html_table.cpp:
11269 * khtml/ecma/kjs_html.cpp:
11270 * khtml/ecma/kjs_proxy.cpp:
11271 * khtml/ecma/kjs_traversal.cpp:
11272 * khtml/ecma/kjs_window.cpp:
11273 * khtml/html/html_baseimpl.cpp:
11274 * khtml/html/html_formimpl.cpp:
11275 * khtml/html/html_miscimpl.h:
11276 * khtml/html/html_objectimpl.cpp:
11277 * khtml/html/html_objectimpl.h:
11278 * khtml/html/htmlparser.cpp:
11279 * khtml/html/htmlparser.h:
11280 * khtml/html/htmltokenizer.cpp:
11281 * khtml/html/htmltokenizer.h:
11282 * khtml/khtml_part.cpp:
11283 * khtml/khtmlpart_p.h:
11284 * khtml/khtmlview.cpp:
11285 * khtml/misc/helper.cpp:
11286 * khtml/misc/khtmllayout.h:
11287 * khtml/misc/loader.cpp:
11288 * khtml/misc/loader.h:
11289 * khtml/misc/loader_client.h:
11290 * khtml/misc/shared.h: Added.
11291 * khtml/rendering/bidi.cpp:
11292 * khtml/rendering/break_lines.cpp:
11293 * khtml/rendering/font.cpp:
11294 * khtml/rendering/render_applet.cpp:
11295 * khtml/rendering/render_applet.h:
11296 * khtml/rendering/render_container.cpp:
11297 * khtml/rendering/render_form.cpp:
11298 * khtml/rendering/render_form.h:
11299 * khtml/rendering/render_frames.cpp:
11300 * khtml/rendering/render_image.cpp:
11301 * khtml/rendering/render_object.cpp:
11302 * khtml/rendering/render_object.h:
11303 * khtml/rendering/render_replaced.cpp:
11304 * khtml/rendering/render_replaced.h:
11305 * khtml/rendering/render_root.cpp:
11306 * khtml/rendering/render_style.cpp:
11307 * khtml/rendering/render_style.h:
11308 * khtml/rendering/render_table.cpp:
11309 * khtml/rendering/render_table.h:
11310 * khtml/rendering/render_text.cpp:
11311 * khtml/rendering/render_text.h:
11312 * khtml/xml/dom2_eventsimpl.h:
11313 * khtml/xml/dom2_rangeimpl.h:
11314 * khtml/xml/dom2_traversalimpl.cpp:
11315 * khtml/xml/dom2_traversalimpl.h:
11316 * khtml/xml/dom2_viewsimpl.h:
11317 * khtml/xml/dom_docimpl.cpp:
11318 * khtml/xml/dom_docimpl.h:
11319 * khtml/xml/dom_elementimpl.h:
11320 * khtml/xml/dom_nodeimpl.cpp:
11321 * khtml/xml/dom_nodeimpl.h:
11322 * khtml/xml/dom_stringimpl.cpp:
11323 * khtml/xml/dom_stringimpl.h:
11324 * khtml/xml/xml_tokenizer.h:
11325 Merge in 3.0.1 changes and add APPLE_CHANGES as necessary to get it to compile.
11327 2002-06-07 Darin Adler <darin@apple.com>
11329 * Makefile.am: Use new shared "embed.am" file so we don't need four copies of
11330 the embedding rules for WebFoundation, JavaScriptCore, WebCore, and WebKit.
11332 2002-06-07 Maciej Stachowiak <mjs@apple.com>
11334 * Makefile.am: Rename libwebcore.dylib to libwebcore.a; since this
11335 target is just a fake for dependency purposes, it doesn't matter
11337 * .cvsignore: Update ignorance.
11339 2002-06-07 Darin Adler <darin@apple.com>
11341 * Makefile.am: I was running into failures in the embed rule, so I made it
11342 always remove the framework before copying the new one in. This is better
11343 for cases where a header was removed, too, so maybe we should do this in
11344 the other directories.
11346 * kwq/KWQDrawUtil.mm:
11347 * kwq/KWQKComboBox.mm:
11348 * kwq/KWQKConfigBase.mm:
11349 * kwq/KWQKDebug.mm:
11350 * kwq/KWQKMessageBox.mm:
11351 * kwq/KWQKMimeType.mm:
11352 * kwq/KWQKPrinter.mm:
11354 * kwq/KWQMapImpl.mm:
11355 * kwq/KWQObject.mm:
11356 * kwq/KWQRegExp.mm:
11357 * kwq/KWQRegion.mm:
11358 * kwq/KWQScrollView.mm:
11359 * kwq/KWQStringList.mm:
11360 Remove repeated default values for parameters -- the new compiler
11361 won't allow these and they are illegal C++.
11363 2002-06-07 Darin Adler <darin@apple.com>
11365 * kwq/KWQPtrDictImpl.h: Use CoreFoundation.h -- new compiler
11366 is picky about the difference between struct and typedef.
11368 * kwq/KWQValueListImpl.h: Add a friend declaration that we need
11369 because the new compiler is more strict.
11371 - fix 2949882 -- joecartoon.com crashes
11373 * khtml/ecma/kjs_window.cpp: (Window::get): Turn off some code that
11374 doesn't work for us -- similar to code elsewhere in this file that
11375 was also turned off.
11377 2002-06-07 Chris Blumenberg <cblu@apple.com>
11379 Made IFWebController a class.
11380 Fixed all places where IFWebController was referred to as a protocol.
11381 Renamed IFBaseWebController files to IFWebController.
11382 IFWebController.h replaces IFWebBaseController.h.
11384 * kwq/KWQKHTMLPart.mm:
11385 (KWQKHTMLPartImpl::requestFrame):
11386 * kwq/KWQKHTMLPartBrowserExtension.mm:
11387 (KHTMLPartBrowserExtension::createNewWindow):
11388 * kwq/KWQKloader.mm:
11389 (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
11390 (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
11391 (KWQLoaderImpl::serveRequest):
11394 === Alexander-8 ===
11396 2002-06-07 Darin Adler <darin@apple.com>
11398 Try to make Jersey work again.
11400 * kwq/KWQInvisibleButton.h: Simplify includes.
11401 * kwq/KWQInvisibleButton.mm: Simplify includes.
11403 2002-06-05 Darin Adler <darin@apple.com>
11405 Some fixes to speed up the citibank.com page, and other related changes.
11407 * khtml/ecma/kjs_dom.cpp: (DOMNode::getValueProperty): Only do a layout
11408 if it's actually needed. This speeds things up immensely, and I'm pretty
11411 * kwq/KWQListImpl.h: To speed things up, get rid of the "private part"
11412 level of indirection. This is particularly vital for list iterators, which
11413 are created and destroyed a lot on the stack. Also made trivial functions
11416 * kwq/KWQListImpl.mm:
11417 (copyList): Now a static function rather than a member of the now-defunct
11419 (KWQListImpl::KWQListImpl): Set up all the new members that used to be in
11420 the separate private object.
11421 (KWQListImpl::~KWQListImpl): Update the iterator-detaching code to do it
11422 the new way, with intrusive list. Also, use clear() instead of having our
11423 own code to delete the list -- note this is only used after the level above
11424 us does a clear() anyway.
11425 (KWQListImpl::clear): Use a loop to delete all the nodes rather than making
11426 a delete of one node recursively delete the next -- iteration is more efficient,
11427 and also easier to understand in this case. Also update all the iterators so
11428 they don't point to deleted nodes.
11429 (KWQListImpl::containsRef): Update to return the count, rather than just a
11430 true or false value, since that's how the class is defined.
11431 (KWQListImpl::assign): Delete the items if asked to (fixes a FIXME). Also
11432 use a new swap member function since there's more to swap now.
11433 (KWQListImpl::addIterator): Rewrite to use an intrusive linked list.
11434 (KWQListImpl::removeIterator): Rewrite to use an intrusive linked list; this
11435 makes it much faster since it doesn't have to search the list.
11436 (KWQListImpl::swap): Implement this private member function used by assign.
11437 (KWQListIteratorImpl::KWQListIteratorImpl): Set up the new members that
11438 used to be in the separate private object.
11440 * kwq/qt/qlist.h: Re-add the operator= definition. This would cause a storage
11441 leak, although I haven't actually observed the leak.
11443 * kwq/qt/qbuffer.h: Initialize opened to false. This was causing a test failure.
11445 * kwq/KWQDictImpl.h:
11446 * kwq/KWQDictImpl.mm: Streamline implementation a bit by getting rid of
11447 unneeded copy constructor definition and making trivial constructor for
11450 * kwq/KWQPtrDictImpl.h: Remove unneeded include.
11452 * WebCore-tests.exp: Update for changes in the entry points
11455 2002-06-05 Richard Williamson <rjw@apple.com>
11457 Fixed 2938552. This required an implementation of KHTMLPart::frames which
11458 is used by the JS window.frames property.
11460 * khtml/khtml_part.cpp:
11461 (KHTMLPart::frames):
11462 * kwq/KWQKHTMLPart.mm:
11463 (KWQKHTMLPartImpl::frames):
11464 * kwq/KWQKHTMLPartImpl.h:
11466 2002-06-05 Richard Williamson <rjw@apple.com>
11468 Fixed window.top JS property (2939353). This caused funny recursion problems at
11469 www.megapixel.net and other pages that try to pop frames.
11471 * khtml/khtml_part.cpp:
11472 (KHTMLPart::parentPart):
11473 * kwq/KWQKHTMLPart.mm:
11474 (KWQKHTMLPartImpl::parentPart):
11475 * kwq/KWQKHTMLPartImpl.h:
11477 2002-06-05 Richard Williamson <rjw@apple.com>
11479 Cleaned up call to frameNamed:. Now use frame relative naming.
11480 Fixed various frame related bugs.
11482 * kwq/KWQKHTMLPart.mm:
11483 (KWQKHTMLPartImpl::urlSelected):
11486 2002-06-04 Richard Williamson <rjw@apple.com>
11488 * kwq/KWQKHTMLPart.mm:
11489 (KWQKHTMLPartImpl::timerEvent):
11490 (KWQKHTMLPartImpl::redirectURL):
11492 Renamed redirectJS to redirectURL to more correctly reflect it's
11495 (KWQKHTMLPartImpl::urlSelected):
11497 Fixed 2935505. We now pop out of a frame if a link is clicked in a frame
11498 and that frame is the only frame in a frameset. This emulates the behavior of IE.
11500 * kwq/KWQKHTMLPartImpl.h:
11503 2002-06-04 Richard Williamson <rjw@apple.com>
11505 More exclusion for pre 6C48.
11507 * kwq/KWQPixmap.mm:
11508 (QPixmap::QPixmap):
11510 2002-06-04 Kenneth Kocienda <kocienda@apple.com>
11512 * kwq/kwqdebug.h: Added a line of stderr output into the
11513 assertion failure code so that we have some idea of what happened.
11515 2002-06-04 Richard Williamson <rjw@apple.com>
11517 Changes to support progressive image loading. Currently disabled
11518 until 2945218 is fixed.
11520 * khtml/misc/loader.cpp:
11521 * kwq/KWQKloader.mm:
11522 * kwq/KWQPixmap.mm:
11523 * kwq/WebCoreImageRenderer.h:
11524 * kwq/WebCoreImageRendererFactory.h:
11525 * kwq/WebCoreImageRendererFactory.m:
11526 * kwq/qt/qpixmap.h:
11528 2002-06-04 Darin Adler <darin@apple.com>
11530 - fixed 2943897 -- Initial uncached load of amazon.com renders partial page.
11532 * khtml/khtml_part.cpp: (KHTMLPart::setEncoding): Put the code that
11533 reloads the page when the encoding is changed back inside APPLE_CHANGES.
11534 This was causing partial loads because of how it interacts with our
11535 way of saving up text and not decoding until we discover what the
11538 2002-06-03 Darin Adler <darin@apple.com>
11540 * LICENSE: Add 2002.
11542 * kwq/KWQApplication.mm:
11543 * kwq/kdecore/kapplication.h:
11544 * kwq/qt/qapplication.h:
11545 Found a way to simplify the application objects by making more of
11546 the functions static so we don't need to actually allocate an object.
11549 * kwq/KWQKApplication.mm: Removed.
11550 * kwq/kdecore/kapp.h: Removed.
11552 2002-06-03 Darin Adler <darin@apple.com>
11554 A few more unused things.
11556 * kwq/Makefile.am: Removed KWQKProcess.mm
11557 * kwq/KWQKProcess.mm: Removed.
11558 * kwq/KWQStrList.h: Removed.
11559 * kwq/kdecore/kprocess.h: Removed.
11561 2002-06-03 Darin Adler <darin@apple.com>
11565 * kwq/qt/qframe.h: Added.
11567 2002-06-03 Darin Adler <darin@apple.com>
11569 Get rid of many unneeded APPLE_CHANGES.
11570 Also get rid of _KWQ_ and _KWQ_PEDANTIC_.
11572 * WebCore.exp: Don't export DomShared::ref/deref any more.
11573 * WebCore-tests.exp: Changed around as needed due to changes in
11574 the classes being tested.
11576 * khtml/html/htmlparser.cpp:
11577 * khtml/html/htmltokenizer.cpp:
11578 Simplified APPLE_CHANGES for better merging.
11580 * khtml/dom/dom_misc.h:
11581 * khtml/dom/dom_misc.cpp:
11582 * khtml/dom/html_document.cpp:
11583 * khtml/khtmlview.cpp:
11584 * khtml/ecma/kjs_css.h:
11585 * khtml/ecma/kjs_dom.cpp:
11586 * khtml/ecma/kjs_dom.h:
11587 * khtml/ecma/kjs_window.cpp:
11588 * khtml/html/html_formimpl.cpp:
11589 * khtml/html/html_objectimpl.cpp:
11590 * khtml/misc/helper.cpp:
11591 * khtml/rendering/bidi.cpp:
11592 * khtml/rendering/render_flow.cpp:
11593 * khtml/rendering/render_form.cpp:
11594 * khtml/rendering/render_text.cpp:
11595 * khtml/xml/xml_tokenizer.h:
11596 * kwq/qt/qtextedit.h:
11597 Remove now-unneeded APPLE_CHANGES.
11599 * khtml/misc/loader.cpp: (CachedImage::pixmap): Turned off more of
11602 * khtml/html/html_documentimpl.cpp:
11603 * khtml/html/htmltokenizer.h:
11604 * khtml/xml/dom_elementimpl.h:
11605 * kwq/KWQKHTMLPart.mm:
11606 Formatting and other minor tweaks.
11608 * kwq/KWQApplication.mm: (QApplication::sendEvent): Implemented.
11609 * kwq/KWQChar.mm: (QChar::direction): Improved implementation.
11611 * kwq/KWQCollection.h: Removed.
11612 * kwq/KWQIcon.h: Removed.
11614 * kwq/Makefile.am: Removed following files.
11615 * kwq/KWQKCompletionBox.mm: Removed.
11616 * kwq/KWQKFactory.mm: Removed.
11617 * kwq/KWQListBox.mm: Removed.
11618 * kwq/KWQKImageIO.mm: Removed.
11620 * kwq/KWQObject.mm: (QObject::event): Added, does nothing.
11621 (QObject::inherits): Put in real implementation (good enough for us).
11623 * kwq/WCWebDataSource.h: Removed extern declaration of global.
11625 * kwq/KWQCursor.mm: (QCursor::handle): Made the handle be an
11628 * kwq/external.h: Moved [IFWebView setFrameSize:] here.
11629 Got rid of IFAnimatedImage.
11631 * kwq/KWQDef.h: Remove unused Q_INT8, Q_INT16, Q_UINT8, Q_UINT16,
11632 QCOORD, WFlags, WId, ASSERT, CHECK_PTR, Q_EXPORT, Q_PACKED,
11633 QT_STATIC_CONST, QT_STATIC_CONST_IMPL. Define _KWQ_IOSTREAM_ only
11634 when NDEBUG is not defined.
11636 * kwq/KWQBuffer.mm:
11637 * kwq/KWQCString.mm:
11638 * kwq/KWQCollection.mm:
11639 * kwq/KWQCompletion.h:
11640 * kwq/KWQCompletion.mm:
11644 * kwq/KWQKFileItem.mm:
11645 * kwq/KWQKIconLoader.mm:
11646 * kwq/KWQKLineEdit.mm:
11647 * kwq/KWQKProtocolManager.mm:
11649 * kwq/KWQListBox.h:
11651 * kwq/KWQWidget.mm:
11653 * kwq/qt/qbuffer.h:
11654 * kwq/kdecore/kdebug.h:
11655 * kwq/kdecore/kglobal.h:
11656 * kwq/kdecore/kglobalsettings.h:
11657 * kwq/kdecore/kiconloader.h:
11658 * kwq/kdecore/kstaticdeleter.h:
11659 * kwq/kdecore/kstringhandler.h:
11660 * kwq/kdeui/kcombobox.h:
11661 * kwq/kdeui/kcompletionbox.h:
11662 * kwq/kdeui/klineedit.h:
11663 * kwq/kdeui/klistbox.h:
11664 * kwq/kdeui/kmessagebox.h:
11665 * kwq/kio/kfileitem.h:
11666 * kwq/kio/kimageio.h:
11667 * kwq/kio/kmimetype.h:
11668 * kwq/kio/kprotocolmanager.h:
11669 * kwq/kio/netaccess.h:
11671 * kwq/kparts/browserinterface.h:
11672 * kwq/kparts/factory.h:
11673 * kwq/kparts/part.h:
11675 * kwq/qt/qcollection.h:
11676 * kwq/qt/qcstring.h:
11677 * kwq/qt/qcursor.h:
11684 * kwq/qt/qobject.h:
11685 * kwq/qt/qpaintdevicemetrics.h:
11686 * kwq/qt/qpainter.h:
11688 * kwq/qt/qradiobutton.h:
11690 * kwq/qt/qregion.h:
11691 * kwq/qt/qscrollview.h:
11694 * kwq/qt/qstringlist.h:
11695 * kwq/qt/qtextedit.h:
11696 * kwq/qt/qvaluelist.h:
11697 * kwq/qt/qvector.h:
11698 * kwq/qt/qwidget.h:
11700 Removed unused stuff.
11702 * kwq/KWQListBox.mm:
11703 * kwq/KWQMapImpl.h:
11704 * kwq/KWQMapImpl.mm:
11705 * kwq/KWQPainter.mm:
11707 * kwq/KWQRadioButton.mm:
11709 * kwq/KWQRegion.mm:
11710 * kwq/KWQScrollBar.h:
11711 * kwq/KWQScrollView.mm:
11713 * kwq/KWQStringList.mm:
11714 * kwq/KWQbrowserinterface.mm:
11717 * kwq/kdecore/kurl.h:
11718 Added include to match what's expected by clients.
11720 * kwq/qt/qobjectlist.h: Added. Empty file to make includers happy.
11722 * kwq/khtml/khtml_printsettings.h: Added. Empty file.
11723 * kwq/qt/qobjectlist.h: Added. Empty file.
11725 * kwq/kio/kssl/ksslkeygen.h: Define just enough to make callers
11728 * kwq/qt/qobject.h: Added event().
11729 * kwq/kparts/part.h: Added bool return type to event().
11730 * kwq/qt/qvector.h: Added QGVector base class.
11732 2002-06-01 Darin Adler <darin@apple.com>
11734 * kwq/KWQPtrDictImpl.mm: (KWQPtrDictPrivate::~KWQPtrDictPrivate):
11737 2002-05-31 Darin Adler <darin@apple.com>
11739 Fix infinite loop while cancelling bug that was caused by dictionary
11740 iterators not getting updated when keys are removed.
11742 * kwq/KWQPtrDictImpl.mm:
11743 (KWQPtrDictPrivate::KWQPtrDictPrivate): Set iterators list to 0.
11744 (KWQPtrDictPrivate::~KWQPtrDictPrivate): Tell iterators dict is gone.
11745 (KWQPtrDictImpl::remove): Tell each iterator that the item was removed.
11746 (KWQPtrDictIteratorPrivate::KWQPtrDictIteratorPrivate): Insert the
11747 iterator into a list with a head stored in the dict.
11748 (KWQPtrDictIteratorPrivate::~KWQPtrDictIteratorPrivate): Remove the
11749 iterator from the list.
11750 (KWQPtrDictIteratorPrivate::remove): Remove the key from the iterator's
11752 (KWQPtrDictIteratorPrivate::dictDestroyed): Clear out the dict pointer
11753 and set the count to 0.
11755 * kwq/KWQPtrDictImpl.h: Move private classes out so they can get at each
11756 other without being friends of each other.
11758 * kwq/qt/qptrdict.h: Simplify a bit.
11760 2002-05-31 Darin Adler <darin@apple.com>
11762 * khtml/khtmlview.h: Add KWQKHTMLPartImpl as friend class, remove khtml_part.h
11763 include that we added inside APPLE_CHANGES.
11765 * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::end): Reinstate a line of code that
11766 required friend status.
11768 * kwq/KWQView.mm: Add include of khtml_part.h.
11770 2002-05-31 Darin Adler <darin@apple.com>
11772 * kwq/kwqdebug.h: Don't use displayableString; it's an SPI and those
11773 are no nos inside WebCore.
11775 2002-05-31 Darin Adler <darin@apple.com>
11777 * kwq/kio/jobclasses.h: Removed SimpleJob and made Job just enough for
11778 TransferJob to inherit from it. Removed unused stuff and made url() return
11779 an NSURL rather than a KURL.
11780 * kwq/KWQKjobclasses.mm: Removed much of the code, and reworked what
11781 remains to simplify it.
11782 * kwq/KWQKloader.mm: Update users of TransferJob::url since it now returns
11783 an NSURL rather than a KURL.
11785 * kwq/kio/job.h: Simplify.
11786 * kwq/KWQKJob.mm: Simplify.
11788 * kwq/kio/scheduler.h: Emptied this file out.
11789 * kwq/KWQKScheduler.mm: Removed.
11790 * kwq/Makefile.am: Removed KWQKScheduler.mm.
11792 2002-05-31 Darin Adler <darin@apple.com>
11794 Remove some unused stuff; total of 1000s of lines.
11796 * Makefile.am: Removed some strange uses of "./" and
11797 improved stamp-related rules.
11799 * WebCore-tests.exp: Removed QDir functions.
11801 * khtml/Makefile.am: Removed java subdirectory.
11802 * khtml/java/*: Removed.
11803 * khtml/rendering/render_applet.cpp: Rearrange APPLE_CHANGES so
11804 that we use our own KJavaAppletWidget rather than a QWidget.
11805 * kwq/khtml/java/kjavaappletcontext.h: Added.
11806 * kwq/khtml/java/kjavaappletwidget.h: Added.
11807 * kwq/KWQKJavaAppletWidget.mm: Added. Replaces WCJavaAppletWidget.mm.
11808 * kwq/KWQsignals.mm: Removed java-related signals.
11810 * khtml/css/Makefile.am:
11811 * khtml/misc/Makefile.am:
11812 Improve stamp-related rules.
11814 * khtml/misc/loader.cpp: Move around and add ifdefs so we don't
11815 need as much KWQ code. Maybe revisit this later -- related to the
11816 KDE implementation of animated and progressive loading images,
11817 which we probably don't need, but it may integrate slightly better than
11818 doing our hacks inside QPixmap.
11820 * kwq/KWQApplication.mm:
11821 * kwq/KWQFontInfo.mm:
11822 * kwq/KWQInputDialog.mm:
11823 * kwq/KWQKFileDialog.mm:
11824 * kwq/KWQKHTMLPartBrowserExtension.mm:
11826 * kwq/KWQKWinModule.mm:
11827 * kwq/KWQKstddirs.mm:
11828 * kwq/KWQPixmap.mm:
11829 Simplified, removed unused code, minor tweaks.
11831 * kwq/Makefile.am: Removed all the old files, added some new ones.
11832 * kwq/KWQBitmap.mm: Removed.
11833 * kwq/KWQBrush.mm: Removed.
11834 * kwq/KWQDCOPClient.mm: Removed.
11835 * kwq/KWQDataStream.h: Removed.
11836 * kwq/KWQDir.mm: Removed.
11837 * kwq/KWQFontDatabase.mm: Removed.
11838 * kwq/KWQImage.mm: Removed.
11839 * kwq/KWQKInstance.mm: Removed.
11840 * kwq/KWQPaintDevice.mm: Removed.
11841 * kwq/KWQPart.mm: Removed.
11842 * kwq/KWQasyncimageio.mm: Removed.
11843 * kwq/KWQasyncio.mm: Removed.
11844 * kwq/KWQbrowserextension.mm: Removed.
11845 * kwq/WCJavaAppletWidget.h: Removed.
11846 * kwq/WCJavaAppletWidget.mm: Removed.
11847 * kwq/qt/qdatastream.h: Removed.
11848 * kwq/qt/qdir.h: Removed.
11849 * kwq/qt/qlayout.h: Removed.
11851 * kwq/KWQCursor.mm:
11852 (QCursor::handle): Return the cursor object as an integer rather than
11853 just returning 0; makes the code that uses handle() more likely to work
11854 although it introduces a 64-bit cleanliness problem.
11856 * kwq/KWQEvent.mm: Initialize event type in QEvent subclasses.
11858 * kwq/WebCoreImageRenderer.h: Added NSObject and NSCopying protocols to
11859 the WebCoreImageRenderer protocol.
11861 * kwq/kwqdebug.h: Use displayableString in DEBUG_OBJECT for better logging.
11863 * kwq/dcop/dcopclient.h:
11864 * kwq/kdecore/kstddirs.h:
11865 * kwq/kdecore/kwin.h:
11866 * kwq/kdecore/kwinmodule.h:
11867 * kwq/kfile/kfiledialog.h:
11868 * kwq/kparts/browserextension.h:
11869 * kwq/kparts/event.h:
11870 * kwq/qt/qapplication.h:
11871 * kwq/qt/qasyncimageio.h:
11872 * kwq/qt/qasyncio.h:
11873 * kwq/qt/qbitmap.h:
11875 * kwq/qt/qbutton.h:
11876 * kwq/qt/qcheckbox.h:
11877 * kwq/qt/qcollection.h:
11879 * kwq/qt/qcombobox.h:
11880 * kwq/qt/qcursor.h:
11881 * kwq/qt/qdrawutil.h:
11884 * kwq/qt/qfontdatabase.h:
11885 * kwq/qt/qfontinfo.h:
11887 * kwq/qt/qinputdialog.h:
11888 * kwq/qt/qintcache.h:
11889 * kwq/qt/qintdict.h:
11890 * kwq/qt/qpaintdevice.h:
11891 * kwq/qt/qpixmap.h:
11892 * kwq/qt/qstring.h:
11893 Removed lots of unused stuff, including old conditionals and the like.
11895 * khtml/khtml_part.cpp:
11896 (KHTMLPart::khtmlMouseMoveEvent): Add missing parenthesis.
11898 2002-05-30 Maciej Stachowiak <mjs@apple.com>
11900 WebCore part of fixes for:
11902 Radar 2926169 - no support for window.open
11903 Radar 2890469 - Preference to prevent JavaScript from automatically
11904 opening new windows doesn't work
11905 Radar 2938569 - link cursor does not appear on some pages
11907 * khtml/ecma/kjs_window.cpp:
11908 (WindowFunc::tryCall): #ifdef'd out some parts of this code that are
11909 broken (but fortunately also unnecessary) in our project.
11910 * kwq/KWQKConfigBase.mm:
11911 (KConfig::KConfig): Changes to support JavaScript window opening pref.
11912 (KConfig::readUnsignedNumEntry): Likewise.
11913 * kwq/KWQKHTMLPart.mm:
11914 (KHTMLPart::openURLInFrame): Implemented.
11915 * kwq/KWQKHTMLPartBrowserExtension.mm:
11916 (KHTMLPartBrowserExtension::KHTMLPartBrowserExtension): Implemented.
11917 (KHTMLPartBrowserExtension::openURLRequest): Implemented by
11918 calling openURLInFrame on the part.
11919 (KHTMLPartBrowserExtension::createNewWindow): Implemented by
11920 calling new WebController openNewWindowWIthURL method.
11921 * kwq/KWQKHTMLSettings.mm:
11922 (KHTMLSettings::isJavaScriptEnabled): Handle renaming of pref.
11924 (-[KWQHTMLView setCursor:]): Fixes to set cursor properly even if
11926 * kwq/external.h: Declare some new WebKit methods.
11927 * kwq/kparts/browserextension.h: Make formerly empty methods pure virtual.
11928 * kwq/khtml/khtml_ext.h: Declare some virtual methods.
11930 2002-05-30 Darin Adler <darin@apple.com>
11932 Cut down our copied and pasted code even more.
11934 * WebCore.exp: Change what's exported for things that moved from
11935 KHTMLPart into KWQKHTMLPartImpl.
11937 * khtml/.cvsignore:
11938 * khtml/css/.cvsignore:
11939 * khtml/dom/.cvsignore:
11940 * khtml/ecma/.cvsignore:
11941 * khtml/html/.cvsignore:
11942 * khtml/java/.cvsignore:
11943 * khtml/misc/.cvsignore:
11944 * khtml/rendering/.cvsignore:
11945 * khtml/xml/.cvsignore:
11946 Some .cvsignore hygiene.
11948 * khtml/khtml_part.cpp: Use a lot more of this file, rather than using a copy inside
11949 the kwq directory. Now we have KWQKHTMLPartImpl for the part that does need to be in kwq.
11950 * khtml/khtml_part.h: Add KWQKHTMLPartImpl pointer, remove most of the other APPLE_CHANGES.
11951 * khtml/khtmlpart_p.h: Remove almost all of the APPLE_CHANGES.
11952 * kwq/KWQKHTMLPart.mm: Changed everything from being part of KHTMLPart to be a separate
11953 KWQKHTMLPartImpl class. Minimized copied and pasted code; still more to do.
11954 * kwq/KWQKHTMLPartImpl.h: Added. Interface so KHTMLPart can call into kwq as necessary.
11956 * khtml/misc/Makefile.am: Added loader.cpp.
11957 * khtml/misc/loader.cpp: Added from KDE 3.0. Rolled most of the changes from KWQKloader.mm
11958 in here. The kwq-specific part is now in a KWQLoaderImpl class.
11959 * khtml/misc/loader.h: Replace LoaderPrivate with KWQLoaderImpl.
11960 * khtml/misc/loader.moc: Added empty file.
11961 * kwq/KWQKloader.mm: Changed everything to be a separate KWQLoaderImpl class.
11962 Minimized copied and pasted code.
11963 * kwq/KWQLoaderImpl.h: Added. Interface so loader can call into kwq as necessary.
11964 * kwq/loader.moc: Removed empty file.
11966 * kwq/kparts/historyprovider.h: Add HistoryProvider::insert.
11967 * kwq/KWQKHistoryProvider.mm: Add HistoryProvider::insert.
11969 * kwq/KWQKLocale.mm: (KLocale::language): Simplify.
11971 * kwq/KWQListBox.h:
11972 * kwq/KWQNSTextField.h:
11973 Use import instead of include for Cocoa.h.
11975 * kwq/KWQScrollView.mm: (QScrollView::contentsToViewport): Implement this.
11977 * kwq/external.h: Add declarations so this can be included cleanly.
11979 * kwq/khtml/khtml_pagecache.h: Put a no-op cache in here so we don't have to do so
11980 many APPLE_CHANGES ifdefs.
11982 * kwq/kparts/part.h: Put ref/deref and event/customEvent in here so they don't need
11983 to be added to KHTMLPart.
11985 * kwq/kio/scheduler.h: Add <qtimer.h> include to help us build (not sure if it's
11987 * kwq/kparts/partmanager.h: Add <qdatetime.h> include to help us build (not sure if it's
11990 === Alexander-7 ===
11992 2002-05-29 Richard Williamson <rjw@apple.com>
11994 Changes to support animated image rendering.
11995 Moved image rendering into webkit.
11998 * kwq/KWQPainter.mm:
11999 (QPainter::drawPixmap):
12000 (QPainter::drawTiledPixmap):
12001 (QPainter::translate):
12005 * kwq/KWQPixmap.mm:
12006 (QPixmap::QPixmap):
12007 (QPixmap::~QPixmap):
12014 (QPixmap::operator=):
12016 * kwq/WebCoreImageRenderer.h: Added.
12017 * kwq/WebCoreImageRendererFactory.h: Added.
12018 * kwq/WebCoreImageRendererFactory.m: Added.
12019 (+[WebCoreImageRendererFactory sharedFactory]):
12020 (-[WebCoreImageRendererFactory init]):
12021 (-[WebCoreImageRendererFactory imageRendererWithBytes:length:]):
12022 (-[WebCoreImageRendererFactory imageRendererWithSize:]):
12023 * kwq/qt/qpixmap.h:
12025 2002-05-28 Richard Williamson <rjw@apple.com>
12027 Moved cancellation check before creation on job instance,
12030 * kwq/KWQKloader.mm:
12031 (Loader::servePendingRequests):
12033 2002-05-28 Richard Williamson <rjw@apple.com>
12035 Fixed edge case cancellation problem (actually happens a lot).
12036 No new loads are allowed after a data source has been
12039 * kwq/KWQKloader.mm:
12040 (Loader::servePendingRequests):
12043 2002-05-28 Richard Williamson <rjw@apple.com>
12045 Fixed reporting of malformed resources URLs. This fixed
12046 exceptions that were being thrown because nil handles were
12047 being added to datasource handle array.
12049 * kwq/KWQKjobclasses.mm:
12050 * kwq/KWQKloader.mm:
12051 (Loader::servePendingRequests):
12053 2002-05-28 Chris Blumenberg <cblu@apple.com>
12055 Added framework-header-stamp
12059 2002-05-27 John Sullivan <sullivan@apple.com>
12061 * Resources/linkCursor.tiff: Added. Maciej forgot to cvs add
12062 this new file. I stole the one from haircut.
12064 2002-05-27 Maciej Stachowiak <mjs@apple.com>
12066 Fixed the vexing and long-standing:
12068 Radar 2894699 - Crash at: http://cb.apple.com/jsplugins.html
12070 * khtml/ecma/kjs_navigator.cpp: This crash was caused by Plugin
12071 and MimeType objects referring to data that was held and
12072 refcounted by PluginBase, without holding a ref. I fixed it by
12073 making these individual items participate in the refcounting as
12076 2002-05-26 Maciej Stachowiak <mjs@apple.com>
12078 Webcore part of fix for:
12080 Radar 2884085 - add support for changing cursor over links
12082 * Makefile.am: Install tiff of link cursor.
12083 * kwq/qt/qcursor.h, kwq/KWQCursor.mm:
12084 (QCursor::QCursor): Change QCursor to contain an NSCursor.
12085 (QCursor::~QCursor): Likewise.
12086 (QCursor::operator=): Likewise.
12087 (QCursor::handle): Likewise.
12088 * kwq/KWQKCursor.mm:
12089 (+[NSCursor _WebCore_linkCursor]): NSCursor extension method that
12090 provides the link cursor.
12091 (KCursor::handCursor): Use the link cursor instead of the default
12093 * kwq/KWQKHTMLSettings.mm:
12094 (KHTMLSettings::changeCursor): Return TRUE; we always want cursor
12096 * kwq/KWQView.h, kwq/KWQView.mm:
12097 (-[KWQHTMLView setCursor:]): Remember the new cursor and
12098 invalidate cursor rects.
12099 (-[KWQHTMLView resetCursorRects]): Establish cursor rect for
12100 currently set cursor, if not default.
12101 * kwq/KWQWidget.mm:
12102 (QWidget::setCursor): Call setCursor: on the underlying
12103 NSView, if implemented.
12104 (QWidget::cursor): Implemented.
12105 (QWidget::unsetCursor): Implemented.
12107 2002-05-25 Maciej Stachowiak <mjs@apple.com>
12109 Changed WebCore to build as a framework, not a dylib, so resources
12110 can be added to it.
12112 * Makefile.am: Actual changes to build WebCore.framework
12113 * Resources/Info.plist: Added.
12114 * English.lproj/InfoPlist.strings: Added.
12115 * WebCore-tests.exp: Added.
12116 * WebCore.exp: Added.
12117 * libwebcore.exp: Removed.
12118 * libwebcoretests.exp: Removed.
12119 * .cvsignore: Updated.
12123 2002-05-24 Shelley A Sheridan <sheridan@apple.com>
12127 === Alexander-6 ===
12129 2002-05-23 Maciej Stachowiak <mjs@apple.com>
12131 Fixes for the following (the first bug also requires WebKit and
12132 WebBrowser changes):
12134 Radar 2896391 - command-click should open link in new window
12135 Radar 2935858 - two mails for each mailto:
12137 * khtml/html/html_inlineimpl.cpp:
12138 (HTMLAnchorElementImpl::defaultEventHandler): Set flag for Meta
12139 key in addition to Control, Shift and Alt, since the Command key
12140 is treated as Meta.
12141 * kwq/KWQKHTMLPart.mm:
12142 (KHTMLPart::urlSelected): Open a new window if the user
12144 (KHTMLPart::khtmlMouseMoveEvent): Clean up use of braces and ifdefs to
12145 make prepare-ChangeLog happy.
12146 (KHTMLPart::khtmlMouseReleaseEvent): Remove code that tried to
12147 process link click events here. This made link clicks get
12148 processed twice, now that mouse events are hooked up for real.
12149 * kwq/external.h: prototype openNewWindowWithURL: method.
12151 2002-05-23 Kenneth Kocienda <kocienda@apple.com>
12153 More work to fix this bug:
12155 Radar 2883631 (need to implement support for META HTTP_EQUIV=REFRESH)
12157 There was yet two more cases where the refresh timers were getting clobbered.
12160 * khtml/ecma/kjs_window.cpp:
12161 (WindowQObject::parentDestroyed)
12162 * khtml/khtmlview.cpp:
12165 2002-05-23 Richard J. Williamson <rjw@apple.com>
12167 Fixed crasher 2935757. I still need to investigate the root cause
12170 * khtml/rendering/render_text.cpp:
12171 (RenderText::setText):
12173 2002-05-23 Kenneth Kocienda <kocienda@apple.com>
12175 Fixes for these bugs:
12177 Radar 2883631 (need to implement support for META HTTP_EQUIV=REFRESH)
12178 Radar 2935472 (Non-standard html pages don't always get decoded)
12180 * khtml/khtml_part.cpp: Don't kill all timers. Just kill the ones for this object.
12181 (KHTMLPart::~KHTMLPart):
12182 * khtml/khtml_part.h: Modified interface to slotData to add a flag for when all data
12183 for a load has been received.
12184 * khtml/khtmlview.cpp:
12185 (KHTMLView::~KHTMLView): Don't kill all timers. Just kill the ones for this object.
12186 * kwq/KWQKHTMLPart.mm:
12187 (KHTMLPart::slotData): Senses when text encoding is not available, but all data has been received.
12188 (KHTMLPart::write): Ditto
12189 (KHTMLPart::scheduleRedirection):
12190 * libwebcore.exp: Changed symbol for slotData
12192 2002-05-23 Shelley A Sheridan <sheridan@apple.com>
12196 === Alexander-5 ===
12198 2002-05-23 Maciej Stachowiak <mjs@apple.com>
12200 Notify when loads of sub-URLs start and stop, so panels for these
12201 can be attached to the right windows.
12203 * kwq/KWQKloader.mm:
12204 (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]):
12205 (-[URLLoadClient IFURLHandleResourceDidCancelLoading:]):
12206 (-[URLLoadClient IFURLHandleResourceDidFinishLoading:data:]):
12207 (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
12208 (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
12211 2002-05-22 Richard J. Williamson <rjw@apple.com>
12214 Additional additional callback when resource is first loaded.
12216 * kwq/KWQKloader.mm:
12217 (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]):
12219 2002-05-21 Richard J. Williamson <rjw@apple.com>
12221 Lots of changes for DHTML.
12222 Bugs fixes, and fixes to regressions.
12224 * khtml/misc/decoder.cpp:
12226 * khtml/rendering/render_flow.cpp:
12227 (RenderFlow::print):
12228 (RenderFlow::layout):
12229 * khtml/rendering/render_text.cpp:
12230 (RenderText::print):
12231 * kwq/KWQKHTMLPart.mm:
12232 (KHTMLPart::urlSelected):
12234 * kwq/qt/qstring.h:
12237 2002-05-21 Kenneth Kocienda <kocienda@apple.com>
12241 Radar 2924728 (post form fails at pt.apple.com; succeeds at macosx.apple.com)
12243 Posted forms are now submitted with the IFURLHandleFlagLoadFromOrigin
12244 load flag set. This prevents a potential bug which may cause a page
12245 with a form that uses itself as an action to be returned from the
12246 cache without submitting.
12248 * kwq/KWQKHTMLPart.mm:
12249 (KHTMLPart::submitForm)
12251 2002-05-21 Kenneth Kocienda <kocienda@apple.com>
12253 Merged these four include files into the precompiled header.
12254 These are used for the enhanced assertion/debuggin support I
12264 2002-05-20 Darin Adler <darin@apple.com>
12268 * khtml/khtml_part.moc: Added.
12270 2002-05-20 Darin Adler <darin@apple.com>
12272 Use more of the original khtml_part.cpp; a step in the direction of factoring
12273 our code out so more of it can go in WebKit and we don't need external.h.
12275 * khtml/Makefile.am:
12276 * khtml/khtml_part.cpp:
12277 * khtml/khtml_part.h:
12278 * khtml/khtmlpart_p.h:
12279 Start compiling khtml_part.cpp and using khtmlpart_p.h again.
12281 * kwq/KWQKHTMLPart.mm:
12282 Remove code that was identical to khtml_part.cpp. We aren't going to use the
12283 "copy and hack our copy" approach on this class for the long termk, and this
12284 is the first step in cleaning things up.
12286 * khtml/khtml_ext.h: Removed.
12287 * khtml/khtml_factory.h: Removed.
12289 * khtml/misc/loader.h:
12290 * khtml/xml/dom_docimpl.cpp:
12291 (DocumentImpl::recalcStyleSelector):
12292 Remove some APPLE_CHANGES ifdefs we don't need any more.
12294 * kwq/KWQDateTime.mm:
12295 Simplify things like copy constructors.
12297 * kwq/kdeui/kcursor.h:
12298 * kwq/KWQKCursor.mm:
12301 * kwq/KWQKHTMLFactory.mm:
12302 Put in real implementations, not just placeholders.
12304 * kwq/KWQKHTMLPartBrowserExtension.mm:
12305 * kwq/KWQKInstance.mm:
12307 * kwq/KWQbrowserextension.mm:
12308 Empty these files out, nothing in them is needed any more.
12310 * kwq/khtml/khtml_settings.h:
12311 * kwq/KWQKHTMLSettings.mm:
12312 (KHTMLSettings::isJavaEnabled):
12313 (KHTMLSettings::autoLoadImages):
12314 (KHTMLSettings::isPluginsEnabled):
12315 (KHTMLSettings::isJavaScriptEnabled):
12316 (KHTMLSettings::isJavaScriptDebugEnabled):
12317 Moved settings here from KWQKHTMLPart.mm
12319 * kwq/kdecore/kurl.h:
12321 (KURL::encodedHtmlRef):
12323 Placeholders for these two, called in KHTMLPart, but maybe not really needed.
12325 * kwq/KWQKloader.mm:
12326 (Cache::preloadScript):
12327 (Cache::preloadStyleSheet):
12328 Empty functions for these, called in KHTMLPart but no implementation needed.
12332 (QTimer::isActive):
12335 More timer functions.
12337 * kwq/qt/qscrollview.h: Add one more function.
12339 * kwq/kdecore/kinstance.h: Simplify.
12340 * kwq/kdeui/kaction.h: Simplify.
12341 * kwq/khtml/khtml_factory.h: Simplify.
12342 * kwq/kparts/browserextension.h: Simplify.
12343 * kwq/kparts/part.h: Simplify.
12344 * kwq/qt/qdatetime.h: Simplify.
12346 * kwq/kdecore/klibloader.h: Added.
12347 * kwq/khtml/khtml_ext.h: Added.
12348 * kwq/kparts/partmanager.h: Added.
12349 Nearly-empty files with just simple placeholders so we can compile more.
12351 * kwq/dcop/kdatastream.h: Added.
12352 * kwq/kdecore/kmultipledrag.h: Added.
12353 * kwq/kdecore/ktempfile.h: Added.
12354 * kwq/kdecore/kurldrag.h: Added.
12355 * kwq/kdeui/kstdaction.h: Added.
12356 * kwq/kdeui/kxmlguifactory.h: Added.
12357 * kwq/khtml/khtml_find.h: Added.
12358 * kwq/khtml/khtml_iface.h: Added.
12359 * kwq/khtml/khtml_pagecache.h: Added.
12360 * kwq/khtml/khtml_run.h: Added.
12361 * kwq/kio/kssl/ksslcertchain.h: Added.
12362 * kwq/kio/kssl/ksslinfodlg.h: Added.
12363 * kwq/kio/ktrader.h: Added.
12364 * kwq/qt/private/qucomextra_p.h: Added.
12365 * kwq/qt/qclipboard.h: Added.
12366 * kwq/qt/qmetaobject.h: Added.
12367 Empty files just so includes of these names will compile.
12369 * libwebcoretests.exp: Remove one export that's no longer needed.
12371 2002-05-20 Richard J. Williamson <rjw@apple.com>
12373 * khtml/ecma/kjs_events.cpp:
12374 (JSEventListener::handleEvent):
12375 * khtml/khtml_part.h:
12376 * kwq/KWQKHTMLPart.mm:
12377 (KHTMLPart::~KHTMLPart):
12378 (KHTMLPart::scheduleRedirection):
12379 (KHTMLPart::timerEvent):
12380 (KHTMLPart::redirectJS):
12381 (KHTMLPart::urlSelected):
12382 * kwq/KWQVariant.mm:
12383 (QVariant::asString):
12384 * kwq/qt/qvariant.h:
12386 2002-05-20 Kenneth Kocienda <kocienda@apple.com>
12388 * kwq/kwqdebug.h: Now includes <sys/time.h> to prevent possible
12389 build breakage in the inclusion of <sys/resource.h>
12391 2002-05-20 Kenneth Kocienda <kocienda@apple.com>
12393 Changed assertion failure code to send a SIGQUIT instead
12394 of raising an NSException.
12398 2002-05-19 Darin Adler <darin@apple.com>
12400 * khtml/rendering/render_object.cpp: (RenderObject::drawBorder):
12401 Add missing break statement so borders don't draw strangely.
12403 * khtml/rendering/render_style.h: Remove unneeded QColor workaround,
12404 now that we handle invalid colors properly.
12407 (createStaticConstructorAutoreleasePool): New solution to the problem
12408 of autorelease at static constructor time.
12409 (getNamedColors): Function that creates this dictionary when needed
12410 rather than creating it inside an init function.
12411 (QColor::QColor): Share code with setRgb, get rid of _initialize.
12412 (hex2int): Return -1 for bad digit rather than 0.
12413 (decodeColorFromHexColorString): Make more robust and simpler.
12414 (QColor::setNamedColor): Set color to invalid rather than black when
12415 the passed in name is empty or unrecognized.
12416 (QColor::red), (QColor::green), (QColor::blue): Round instead of truncating.
12417 (QColor::setRgb): Set color to invalid if r, g, or b is out of range.
12418 (QColor::operator=): Simplify.
12419 (QColor::operator==): Handle invalid colors correctly.
12420 (QColor::getNSColor): Return black of invalid colors.
12422 * kwq/KWQCursor.mm: Simplify cursor globals.
12424 * kwq/KWQPainter.mm:
12425 (QPainter::_setColorFromBrush): Use getNSColor() to handle invalid colors correctly.
12426 (QPainter::_setColorFromPen): Use getNSColor() to handle invalid colors correctly.
12427 (QPainter::drawLine): Add code to respect style and width and handle endpoints in a
12428 way that will make the lines look like Qt users expect.
12429 (QPainter::drawText): Use getNSColor() to handle invalid colors correctly.
12430 (QPainter::drawUnderlineForText): Use getNSColor() to handle invalid colors correctly.
12431 (QPainter::fillRect): Use getNSColor() to handle invalid colors correctly.
12433 * kwq/KWQPen.mm: (QPen::QPen): (QPen::setStyle): Remove use of MPenStyle.
12435 * kwq/KWQPixmap.mm: (QPixmap::QPixmap): Add comments.
12437 * kwq/qt/qcolor.h: Simplify ifdefs, remove cname, _initialize, globals_init, and
12440 * kwq/qt/qnamespace.h: Remove AlignTop, AlignBottom, SingleLine, ExpandTabs, DontPrint,
12441 DashDotLine, DashDotDotLine, MPenStyle, WResizeNoRease, WRepaintNoErase, color0, color1,
12442 darkRed, darkGreen, darkBlue, darkCyan, darkMagenta, darkYellow. Simplify the QColor
12443 and QCursor globals.
12445 * kwq/qt/qpen.h: QPainter is no longer a friend class. Remove linest.
12447 2002-05-17 Darin Adler <darin@apple.com>
12449 * khtml/rendering/render_list.cpp: (RenderListItem::setStyle):
12450 OK. This time it's correct.
12452 2002-05-17 Darin Adler <darin@apple.com>
12454 * khtml/rendering/render_list.cpp: (RenderListItem::setStyle):
12455 Roll the change out while I see why it causes a crash.
12457 2002-05-17 Darin Adler <darin@apple.com>
12459 * khtml/rendering/render_list.cpp: (RenderListItem::setStyle):
12460 Remove an old incorrect fix for a style leak in here and put in
12463 2002-05-16 Richard J. Williamson <rjw@apple.com>
12465 Fixed 2896350. Ignore DPI in images and render directly at pixel size.
12467 * kwq/KWQPainter.mm:
12468 (QPainter::drawPixmap):
12469 * kwq/KWQPixmap.mm:
12470 (QPixmap::QPixmap):
12472 2002-05-16 Richard J. Williamson <rjw@apple.com>
12474 Fixed 2925638. Don't send last progress message from resourceDataDidBecomeAvailable,
12475 it is sent from IFURLHandleResourceDidFinishLoading, avoiding duplication.
12477 * kwq/KWQKloader.mm:
12478 (-[URLLoadClient IFURLHandle:resourceDataDidBecomeAvailable:]):
12480 2002-05-15 Richard J. Williamson <rjw@apple.com>
12482 Alerts, useful for validating that js handlers work.
12483 Validated that onsubmit is working.
12485 * kwq/KWQKMessageBox.mm:
12486 (KMessageBox::error):
12487 (KMessageBox::warningYesNo):
12488 (KMessageBox::questionYesNo):
12489 (KMessageBox::sorry):
12491 2002-05-15 Darin Adler <darin@apple.com>
12493 * kwq/qt/qguardedptr.h: Fix reversed sense of check in isNull. Fixes
12494 a bug that was causing a lot of DHTML not to work.
12496 2002-05-15 Kenneth Kocienda <kocienda@apple.com>
12498 * kwq/KWQInvisibleButton.h: Changed an #include of Cocoa.h to an #import
12500 2002-05-15 Darin Adler <darin@apple.com>
12502 * kwq/KWQListImpl.mm:
12503 (KWQListImpl::KWQListPrivate::copyList): Take out unnecessary line of code.
12504 (KWQListImpl::KWQListPrivate::~KWQListPrivate): Delete the iterator nodes
12505 also, not just the item nodes. Fixes a storage leak.
12506 (KWQListIteratorImpl::KWQListIteratorPrivate::KWQListIteratorPrivate):
12507 Change interface to take a list pointer so we don't rely on the undefined
12508 behavior of &* on a null pointer.
12509 (KWQListImpl::addIterator): Set up the prev pointer of the old head of
12510 the list. This was causing the crash I was debugging.
12511 (KWQListIteratorImpl::operator=): Simpler implementation.
12513 2002-05-14 Richard J. Williamson <rjw@apple.com>
12515 Added another symbol for stack based event constructor.
12516 Change to support onLoad.
12518 * kwq/KWQKHTMLPart.mm:
12522 2002-05-14 Chris Blumenberg <cblu@apple.com>
12524 Changed slotData to slotData(NSString *encoding, const char *bytes, int length)
12526 * khtml/khtml_part.h:
12527 * kwq/KWQKHTMLPart.mm:
12528 (KHTMLPart::slotData):
12531 2002-05-14 Darin Adler <darin@apple.com>
12533 Fixed 2925291 -- CSS2 test page causes infinite recursion, crash
12535 * khtml/rendering/render_container.cpp: (RenderContainer::addChild):
12536 Add code to detect the case of a render object that uses text cell
12537 style but is not itself a text style, and make sure we don't try to
12538 nest such an object inside an infinite number of tables.
12540 2002-05-14 Darin Adler <darin@apple.com>
12542 * kwq/KWQListImpl.mm: (KWQListIteratorImpl::KWQListIteratorImpl):
12543 Add a missing check for a null pointer.
12545 * kwq/KWQGuardedPtr.mm: (KWQGuardedPtrBase::KWQGuardedPtrBase):
12546 Remove an unnecessary call to "toFirst", because new iterators
12547 already default to pointing to the first element of the list.
12549 2002-05-13 Darin Adler <darin@apple.com>
12551 * kwq/KWQListImpl.mm: (KWQListImpl::~KWQListImpl): Detach all the iterators from
12552 the list when the list is destroyed. I thought this was done before, but it seems not.
12554 2002-05-13 Darin Adler <darin@apple.com>
12556 Fixed bug 2922884 (JavaScript object leak creating Image object from JavaScript).
12557 There was a reference loop created when a document contained a variable that
12558 referenced an image, because images held references to the document; the C++
12559 kind that do not participate in the JavaScript garbage collection.
12561 * khtml/ecma/kjs_html.h: Use a QGuardedPtr to the DocumentImpl instead of using
12563 * khtml/ecma/kjs_html.cpp:
12564 (Image::tryPut): Change because the "doc" pointer is now a pointer to the
12565 DocumentImpl, not the Document. Also check for 0, since it's now a QGuardedPtr
12567 (Image::Image): Newly out of line. Changed because the "doc" pointer is now a
12568 pointer to the DocumentImpl, not the Document.
12570 Since the solution used QGuardedPtr, I had to implement it.
12572 * kwq/qt/qguardedptr.h: Put the implementation in a new KWQGuardedPtrBase class,
12573 with only the bare minimum in a template. This new implementation uses iterators
12574 on a QPtrList, which means there's not much code needed.
12575 * kwq/KWQGuardedPtr.mm: (KWQGuardedPtrBase::KWQGuardedPtrBase): Rewrite to use
12576 a QPtrListIterator to a dummy list in the QObject. This reuses code nicely, but
12577 a custom-coded solution would be a bit more efficient.
12579 * kwq/qt/qobject.h:
12580 * kwq/KWQObject.mm: (QObject::QObject): Create the one-element list that's used
12581 by the QGuardedPtr instances.
12583 Since the above code needed to copy a QPtrListIterator, I needed to support that.
12585 * kwq/qt/qlist.h: Move the iterator's copy constructor out of the private part,
12586 and implement it. This class was strange in that it has a public assignment
12587 operator, but a private unimplemented copy constructor. Implementing it was trivial,
12588 though, so this was no obstacle.
12590 2002-05-13 Maciej Stachowiak <mjs@apple.com>
12592 Removed libjpeg dependency. Turns out we don't need it.
12594 * Makefile.am: Remove -ljpeg from link line.
12595 * khtml/misc/loader_jpeg.cpp: Removed.
12596 * khtml/misc/loader_jpeg.h: Removed.
12597 * khtml/misc/Makefile.am: Remve loader_jpeg from build.
12599 2002-05-10 Richard J. Williamson <rjw@apple.com>
12601 Made log output match webkit logging.
12606 2002-05-10 Chris Blumenberg <cblu@apple.com>
12608 Changed WCIFWebDataSourceMake to wrap around [IFWebDataSource initWithURL: attributes: flags:]
12609 instead of initWithHandle.
12611 * kwq/KWQKHTMLPart.mm:
12612 (KHTMLPart::requestFrame):
12613 (KHTMLPart::submitForm):
12614 * kwq/WCWebDataSource.h:
12617 2002-05-10 Darin Adler <darin@apple.com>
12619 * kwq/WebCoreTextRenderer.h:
12621 2002-05-09 Richard J. Williamson <rjw@apple.com>
12623 Added new method to avoid creation of NSString.
12625 - (void)drawCharacters:(const UniChar *)characters length: (unsigned)length atPoint:(NSPoint)point withColor:(NSColor *)color;
12627 * kwq/KWQPainter.mm:
12628 (QPainter::drawText):
12629 * kwq/WebCoreTextRenderer.h:
12631 2002-05-09 Kenneth Kocienda <kocienda@apple.com>
12635 Radar 2890624 (need to remove workaround for double free of image data from QPixmap)
12637 The appropriate, bug-free AppKit code is now available to us on Jaguar.
12638 Rolling out the workaround.
12640 * kwq/KWQPixmap.mm:
12643 === Alexander-3 ===
12645 2002-05-07 Darin Adler <darin@apple.com>
12647 * kwq/KWQFontMetrics.mm: Fixed storage leak by initializing refCount.
12649 2002-05-07 Darin Adler <darin@apple.com>
12651 Move more plugin code into WebKit.
12653 Stop using IF for anything in WebCore to help make it clear what's part of
12654 the BSD licensed stuff and what's part of our proprietary stuff.
12656 * libwebcore.exp: Names of what exported changed.
12657 * kwq/Makefile.am: Source file names changed.
12659 * kwq/IFTextRenderer.h: Renamed to WebCoreTextRenderer.
12660 * kwq/IFTextRendererFactory.h: Renamed to WebCoreTextRendererFactory.
12661 * kwq/IFTextRendererFactory.m: Renamed to WebCoreTextRendererFactory.
12662 * kwq/WebCoreTextRenderer.h: Renamed from IFTextRenderer.
12663 * kwq/WebCoreTextRendererFactory.h: Renamed from IFTextRendererFactory.
12664 * kwq/WebCoreTextRendererFactory.m: Renamed from IFTextRendererFactory.
12666 * kwq/KWQFontMetrics.mm:
12667 * kwq/KWQPainter.mm:
12668 Updated for IF -> WebCore name change.
12670 * kwq/WebCoreViewFactory.h: Added.
12671 * kwq/WebCoreViewFactory.m: Added.
12673 * kwq/KWQKConfigBase.mm: (KConfig::readEntry): (KConfig::readNumEntry):
12674 Use the new [WebCoreViewFactory pluginsInfo] so we don't have to have
12675 the plugin database in WebCore any more.
12677 * kwq/WCJavaAppletWidget.h:
12678 * kwq/WCJavaAppletWidget.mm: (IFJavaAppletWidgetCreate):
12679 * kwq/WCPluginWidget.h:
12680 * kwq/WCPluginWidget.mm: (IFPluginWidgetCreate):
12681 Remove creation function machinery, and use the WebCoreViewFactory instead.
12683 * kwq/WCPlugin.h: Moved to WebKit.
12684 * kwq/WCPlugin.mm: Moved to WebKit.
12685 * kwq/WCPluginDatabase.h: Moved to WebKit.
12686 * kwq/WCPluginDatabase.mm: Moved to WebKit.
12687 * kwq/npapi.h: Moved to WebKit.
12688 * kwq/npapi.mm: Moved to WebKit.
12690 2002-05-06 Darin Adler <darin@apple.com>
12692 * WebCorePrefix.h: Added.
12694 * .cvsignore: Ignore the .pfe files in this directory.
12696 * khtml/dom/dom_doc.cpp:
12697 * khtml/dom/dom_text.cpp:
12698 Added namespace directives as a clean workaround for a conflict
12699 with the struct named Comment in <Carbon/AIFF.h>
12702 * kwq/KWQFontMetrics.mm:
12703 * kwq/KWQKGlobal.mm:
12704 * kwq/KWQListImpl.mm:
12705 * kwq/KWQPtrDictImpl.h:
12706 * kwq/KWQVectorImpl.mm:
12709 * kwq/qt/qcombobox.h:
12710 * kwq/qt/qregion.h:
12711 * kwq/qt/qstring.h:
12712 * kwq/qt/qwidget.h:
12713 Remove old workaround for conflicts with Fixed, Rect, and Boolean.
12714 It does not good with a precompiled header anyway, and there is a
12715 more elegant small fix in the KDE code itself.
12718 * kwq/KWQPointArray.mm: (QPointArray::setPoints):
12719 Work around bug with va_arg and PFE by not using varargs here.
12721 * kwq/KWQRect.mm: (QRect::unite): (QRect::operator&):
12722 Use std::min and std::max instead of defining our own MIN and MAX, which
12723 conflict with something in one of the headers we are precompiling (error
12724 message did not make it clear which).
12726 * kwq/KWQView.mm: (-[KWQHTMLView layout]), (-[KWQHTMLView drawRect:]):
12727 Switch from xNDEBUG to NDEBUG.
12729 * kwq/Makefile.am: Remove stuff for getting at the header inside the
12730 ApplicationServices and QD frameworks, since that code is now in WebKit.
12732 * kwq/kwqdebug.h: Get rid of format attribute because of bug 2920557.
12733 Switch from xNDEBUG to NDEBUG.
12735 * kwq/kwqdebug.mm: Switch from xNDEBUG to NDEBUG.
12737 * kwq/qt/qstring.h: Define QT_VERSION in here instead of on the command
12738 line to work around a PFE bug with -D, Radar 2921026.
12740 2002-05-06 Richard J. Williamson <rjw@apple.com>
12742 Changes to support dhmtl.
12743 Changes to support targeting (regression after 3.0 merge).
12745 * khtml/khtmlview.cpp:
12747 * kwq/KWQKHTMLPart.mm:
12748 * kwq/KWQObject.mm:
12749 * kwq/KWQWidget.mm:
12751 * kwq/qt/qobject.h:
12752 * kwq/qt/qwidget.h:
12754 2002-05-03 Darin Adler <darin@apple.com>
12756 * khtml/css/cssstyleselector.cpp:
12757 * khtml/dom/css_value.cpp:
12758 * khtml/xml/dom_stringimpl.cpp:
12759 Put in some namespace-related statements to more-elegantly work around the
12760 conflicts between Macintosh and khtml identifiers.
12762 2002-05-03 Darin Adler <darin@apple.com>
12764 * kwq/IFTextRenderer.h: Added.
12765 * kwq/IFTextRendererFactory.h: Added.
12766 * kwq/IFTextRendererFactory.m: Added.
12767 These three are the new API for supplying text rendering machinery for WebCore.
12768 The implementation is in WebKit. Later we might want to flesh out the default
12769 implementation in WebCore so that it works OK by itself.
12771 * khtml/rendering/font.cpp: (Font::width): Function is now "width" without
12772 an underscore. We don't really need to hide the overload we added in this
12775 * kwq/qt/qfont.h: Simplify a lot. Doesn't hold an NSFont any more.
12777 (QFont::QFont): Eliminated the concept of "default font". Also, a QFont no
12778 longer holds an NSFont object. That's handled inside IFTextRenderer machinery.
12779 (QFont::~QFont): Simplify since we don't have an NSFont.
12780 (QFont::setFamily): Simplify since we don't have an NSFont.
12781 (QFont::setPixelSize): Simplify since we don't have an NSFont.
12782 (QFont::setPixelSizeFloat): Simplify since we don't have an NSFont.
12783 (QFont::setWeight): Simplify since we don't have an NSFont.
12784 (QFont::weight): Fix a bug where it would return Normal for a QFont that was
12785 both bold and italic.
12786 (QFont::setItalic): Simplify since we don't have an NSFont.
12787 (QFont::italic): Simplify since we have real "bool".
12788 (QFont::bold): Simplify since we have real "bool".
12789 (QFont::operator=): Simplify since we don't have an NSFont.
12790 (QFont::operator==): Rewrite since we don't have an NSFont.
12792 * kwq/qt/qfontmetrics.h: Simplify a little. The _width() method is now just an
12793 overload of the width() method. The main change was removing the include of Cocoa.h.
12794 * kwq/KWQFontMetrics.mm:
12795 Move most of the code out of here into WebKit.
12796 (QFontMetrics::ascent): Get it from the renderer.
12797 (QFontMetrics::descent): Get it from the renderer.
12798 (QFontMetrics::lineSpacing): Get it from the renderer.
12799 (QFontMetrics::width): Get it from the renderer.
12800 (QFontMetrics::boundingRect): Combine width and height that came from the renderer.
12801 (QFontMetrics::size): Combine width and height that came from the renderer.
12803 * kwq/Makefile.am: Add IFTextRendererFactory.m, remove KWQTextStorage.mm and KWQTextContainer.mm.
12804 * kwq/KWQMetrics.h: Removed.
12805 * kwq/KWQTextContainer.h: Removed.
12806 * kwq/KWQTextContainer.mm: Removed.
12807 * kwq/KWQTextStorage.h: Removed.
12808 * kwq/KWQTextStorage.mm: Removed.
12810 * kwq/KWQPainter.mm:
12811 Move most of the code out of here into WebKit.
12812 (QPainter::drawText): Call the renderer to do it.
12813 (QPainter::drawUnderlineForText): Call the renderer to do it.
12815 * libwebcore.exp: Export the IFTextRendererFactory class.
12817 2002-04-26 Darin Adler <darin@apple.com>
12819 * kwq/make-mac-encodings.c: (main): One more place that needed a workaround
12820 for Radar 2912404 (kCFStringEncodingInvalidId is negative even though
12821 CFStringEncoding is unsigned).
12823 * kwq/KWQTextArea.mm: (-[KWQTextArea paragraphs]): Do this
12824 ourselves so we don't rely on WebFoundation.
12825 * kwq/Makefile.am: Don't do a -I for WebFoundation.
12827 2002-04-26 Darin Adler <darin@apple.com>
12829 Pay no attention to the man who is not supposed to be working.
12831 * khtml/Makefile.am:
12832 * khtml/css/Makefile.am:
12833 * khtml/ecma/Makefile.am:
12834 * khtml/html/Makefile.am:
12835 * khtml/java/Makefile.am:
12836 * khtml/misc/Makefile.am:
12837 * khtml/rendering/Makefile.am:
12838 * khtml/xml/Makefile.am:
12839 Don't generate empty .moc files or khtmldata.h; there's no reason
12840 not to just check them in instead. Also tweak a few build rules to
12841 use automatic make variables.
12843 * khtml/ecma/kjs_window.moc: Added.
12844 * khtml/html/html_documentimpl.moc: Added.
12845 * khtml/html/htmltokenizer.moc: Added.
12846 * khtml/java/kjavaapplet.moc: Added.
12847 * khtml/java/kjavaappletcontext.moc: Added.
12848 * khtml/java/kjavaappletserver.moc: Added.
12849 * khtml/java/kjavaappletwidget.moc: Added.
12850 * khtml/java/kjavadownloader.moc: Added.
12851 * khtml/java/kjavaprocess.moc: Added.
12852 * khtml/khtmlview.moc: Added.
12853 * khtml/misc/khtmldata.h: Added.
12854 * khtml/rendering/render_form.moc: Added.
12855 * khtml/rendering/render_frames.moc: Added.
12856 * khtml/rendering/render_replaced.moc: Added.
12857 * khtml/xml/dom_docimpl.moc: Added.
12858 * khtml/xml/xml_tokenizer.moc: Added.
12860 * kwq/kwqdebug.mm: Make some globals private.
12862 2002-04-25 Darin Adler <darin@apple.com>
12864 * kwq/KWQMetrics.h: Add NSObject to required protocols for
12865 the KWQLayoutFragment protocol so we can retain and release.
12867 * kwq/KWQTextStorage.mm: (-[KWQTextStorage _buildFragmentForString:]):
12868 Removed a cast to NSObject * that worked around the lack of the above.
12870 2002-04-25 Richard Williamson <rjw@apple.com>
12872 Little changes in preparation for events.
12874 * khtml/ecma/kjs_proxy.cpp:
12875 (KJSProxyImpl::createHTMLEventHandler):
12876 * kwq/KWQKHTMLPart.mm:
12877 (KHTMLPart::createHTMLEventListener):
12879 2002-04-25 Darin Adler <darin@apple.com>
12881 Add a workaround for Radar 2912404 (kCFStringEncodingInvalidId is negative even
12882 though CFStringEncoding is unsigned)
12884 * kwq/KWQCharsets.mm:
12885 (KWQCFStringEncodingFromIANACharsetName):
12886 (KWQCFStringEncodingFromMIB):
12887 * kwq/KWQtextcodec.mm:
12888 (QTextCodec::codecForMib):
12889 (QTextCodec::codecForName):
12890 * kwq/make-charset-table.pl:
12891 Add casts to (CFStringEncoding) wherever we use kCFStringEncodingInvalidId.
12893 2002-04-25 Darin Adler <darin@apple.com>
12895 Rework plugin code to prepare to move more of it into WebKit.
12897 * khtml/rendering/render_applet.cpp:
12898 (RenderApplet::RenderApplet): Create a widget for the applet using
12899 the new simpler API.
12901 * kwq/kdecore/kconfig.h:
12902 * kwq/KWQKConfigBase.mm: Eliminate KConfigBase.
12903 Set things up so we are poised to handle the other non-plugin
12904 config keys easily in the future.
12906 * kwq/KWQKHTMLPart.mm: (KHTMLPart::requestObject): Use the new simpler
12907 IFPluginWidgetCreate API instead of the older WCPluginWidget one.
12909 * kwq/qt/qstring.h: Add simpler conversions to/from NSString.
12910 * kwq/KWQString.mm: (QString::fromNSString): New.
12912 * kwq/WCPluginWidget.h: Made this API simpler both for the C++
12913 side and the Objective-C side. There's now no class, and only one
12914 function that needs to be supplied (normally by WebKit).
12915 * kwq/WCJavaAppletWidget.h: Same thing for the Java case.
12917 * kwq/WCJavaAppletWidget.mm:
12918 (IFSetJavaAppletViewCreationFunction): New.
12919 (IFJavaAppletWidgetCreate): New. Most of the code that was in here
12920 is now moved into WebKit.
12921 * kwq/WCPluginWidget.mm:
12922 (IFSetPluginViewCreationFunction): New.
12923 (IFPluginWidgetCreate): New. Most of the code that was in here
12924 is now moved into WebKit.
12926 * libwebcore.exp: Update for new function names.
12928 2002-04-24 Chris Blumenberg <cblu@apple.com>
12930 Renamed [IFWebDataSource frame] to [IFWebDataSource webFrame]
12932 * kwq/KWQKHTMLPart.mm:
12933 (KHTMLPart::submitForm):
12934 (KHTMLPart::khtmlMouseReleaseEvent):
12937 === Alexander 0.3c2 (v1) ===
12939 2002-04-24 Darin Adler <darin@apple.com>
12941 Get rid of all NEED_BOGUS_XXX.
12943 * khtml/java/Makefile.am: Remove -DNEED_BOGUS_TEXTSTREAMS and
12944 -DNEED_BOGUS_X_DEFINES.
12945 * khtml/rendering/Makefile.am: Remove -DNEED_BOGUS_X_DEFINES.
12946 * khtml/xml/Makefile.am: Remove -DNEED_BOGUS_TEXTSTREAMS.
12947 * kwq/Makefile.am: Remove -DNEED_BOGUS_X_DEFINES and KWQKJavaEmbed.mm.
12948 * kwq/KWQKJavaEmbed.mm: Removed.
12950 * kwq/KWQDef.h: Remove XEvent define (inside NEED_BOGUS_X_DEFINES).
12952 * kwq/qt/qtextstream.h: Don't look at NEED_BOGUS_TEXTSTREAMS.
12953 * kwq/KWQtextstream.mm: Don't look at NEED_BOGUS_TEXTSTREAMS.
12955 * khtml/java/javaembed.h: Made this just a QWidget typedef for now.
12956 * khtml/java/kjavaappletwidget.cpp: ifdef out the unused setWindow function.
12958 2002-04-23 Darin Adler <darin@apple.com>
12960 * khtml/css/css_valueimpl.cpp:
12961 (CSSPrimitiveValueImpl::computeLengthFloat):
12962 * khtml/css/cssstyleselector.cpp:
12963 (CSSStyleSelector::computeFontSizes):
12964 Remove our 72/96 dpi changes. They weren't doing much good.
12965 But this doesn't fix all the 72/96 dpi issues. It's just the start.
12967 * kwq/khtml/khtml_settings.h:
12968 * kwq/KWQKHTMLSettings.mm:
12969 Remove some unused stuff: charset(), setCharset(), availableFamilies(),
12970 fontSizes(), SCREEN_RESOLUTION.
12972 2002-04-23 Kenneth Kocienda <kocienda@apple.com>
12974 Reviewed by: Darin Adler
12976 Fix for Radar 2908403 (Fix names in WebFoundation extensions code)
12978 Extensions code in WebFoundation now is in its own namespace.
12979 Where we have added categories to existing Foundation and AppKit
12980 classes, the categories begin with the IF prefix. All method names
12981 begin with the _IF_ prefix.
12983 The file here was changed to use the new names.
12985 * kwq/KWQTextArea.mm:
12986 (-[KWQTextArea paragraphs])
12988 2002-04-23 Kenneth Kocienda <kocienda@apple.com>
12990 * kwq/KWQPixmap.mm:
12991 (QPixmap::QPixmap): Fixed unneeded leak of an NSImage in
12992 the case where we are still covering for a double-release
12993 bug in AppKit. No need to add insult to injury. :)
12995 2002-04-22 Darin Adler <darin@apple.com>
12997 Fix width of non-breaking spaces. There's code to hack this
12998 at the KDE level for fonts that don't have non-breaking space
12999 characters, but we need it even for fonts that do.
13001 Not sure why this worked better on Puma, but now it's fine on
13002 both Puma and Jaguar.
13004 * kwq/KWQFontMetrics.mm:
13005 (ConvertCharactersToGlyphs): New. Turns non-breaking spaces into
13006 normal spaces if needed.
13007 (-[KWQLayoutInfo drawString:atPoint:withFont:color:]),
13008 (-[KWQLayoutInfo _initializeCaches]), (_rectForString): Change to
13009 call ConvertCharactersToGlyphs instead of ATSUConvertCharToGlyphs.
13011 2002-04-22 Darin Adler <darin@apple.com>
13013 * kwq/qt/qpixmap.h:
13014 * kwq/KWQPixmap.mm:
13015 (QPixmap::QPixmap): Clear needsCopyOnWrite flag in all the
13016 constructors other than the copy constructor. Set it in the copy
13018 (QPixmap::~QPixmap): Simplify.
13019 (QPixmap::mask): Always return 0 rather than leaking a QBitmap each time,
13020 since Qt uses 0 to mean "no mask".
13021 (QPixmap::isNull): Simplify.
13022 (QPixmap::resize): Do the copy here if we need it, and do the setScalesWhenResized:
13023 call in here instead of trying to do it elsewhere.
13024 (QPixmap::xForm): Only copy the pixmap once.
13025 (QPixmap::operator=): Set the needsCopyOnWrite flag. Also change the retain/release
13026 idiom around so we don't need to check for self-assignment.
13028 * khtml/ecma/Makefile.am: Don't build kjs_debugwin any more.
13029 * khtml/ecma/kjs_debugwin.cpp: Removed.
13030 * khtml/ecma/kjs_debugwin.h: Removed.
13032 2002-04-22 Chris Blumenberg <cblu@apple.com>
13034 Added a new method to WCPluginDatabase allHandledMIMETypes.
13035 It returns an array of the mime types that plug-ins handle.
13037 * kwq/WCPluginDatabase.h:
13038 * kwq/WCPluginDatabase.mm:
13039 (-[WCPluginDatabase allHandledMIMETypes]):
13041 2002-04-20 Darin Adler <darin@apple.com>
13043 Problems loading iframes seemed to be due to NSURL objects that
13044 were not normalized, so I made the NSURL creation all be done
13045 by KURL, which fixed the problem.
13047 * kwq/KWQKHTMLPart.mm: (KHTMLPart::requestFrame), (KHTMLPart::submitForm),
13048 (KHTMLPart::khtmlMouseReleaseEvent):
13049 * kwq/KWQKjobclasses.mm:
13050 Call getNSURL instead of creating NSURLs by converting to strings.
13052 * kwq/kdecore/kurl.h:
13053 * kwq/KWQKURL.mm: (KURL::getNSURL): New.
13055 2002-04-19 Kenneth Kocienda <kocienda@apple.com>
13057 Changes to support submission of forms using HTTP POST.
13059 These changes move us over to using the new WebKit interface for creating
13060 WebDataSource instances, one that passes a handle rather than just a URL,
13061 enabling the specific request method to be communicated to WebFoundation.
13064 Radar 2903602 (IFWebDataSource API must passes attributes and flags to IFURLHandle)
13066 Fixed handling of password fields:
13068 Radar 2903605 (WebCore form processing drops out password input data)
13070 Added some hacks to get form <input type=image ...> working correctly:
13072 Radar 2907198 (Forms not getting submitted correctly when <input type=image>)
13075 * khtml/rendering/render_form.cpp: (RenderImageButton::RenderImageButton),
13076 (RenderImageButton::~RenderImageButton), (RenderImageButton::printObject):
13077 * khtml/rendering/render_form.h:
13078 * kwq/KWQKHTMLPart.mm: (KHTMLPart::requestFrame), (KHTMLPart::submitForm),
13079 (KHTMLPart::khtmlMouseReleaseEvent):
13080 * kwq/KWQNSTextField.mm: (-[KWQNSTextField setPasswordMode:]), (-[KWQNSTextField
13081 textDidChange:]), (-[KWQNSTextField stringValue]):
13083 * kwq/KWQInvisibleButton.h: Added
13084 * kwq/KWQInvisibleButton.mm: Added
13086 2002-04-18 Darin Adler <darin@apple.com>
13088 Fixes for compiling with gcc3 and more warnings.
13090 * khtml/html/.cvsignore: Add kentities.c; I could have sworn I did this
13092 * khtml/html/Makefile.am: Remove erroneous duplicate definition of
13096 * libwebcoretests.exp:
13097 Rebuilt these lists from scratch. Almost everything in here is different
13098 since the C++ name mangling rules changed.
13100 * khtml/css/cssparser.cpp:
13101 * khtml/misc/htmlhashes.cpp:
13102 Disable inlining in part of this file as a workaround for Radar 2905890.
13104 * kwq/KWQApplication.mm: (QDesktopWidget::screenGeometry):
13105 Add casts to int needed to make gcc3 happy.
13106 * kwq/KWQArrayImpl.mm: Add missing #include of <string.h>.
13108 * kwq/KWQBitmap.mm:
13110 * kwq/KWQLineEdit.mm:
13111 Removed some unused copy constructors and assignment operators to avoid
13114 * kwq/KWQButton.mm: (QButton::setText):
13115 * kwq/KWQListBox.mm: (QListBox::~QListBox), (QListBox::clear),
13116 (QListBox::setSelectionMode), (QListBox::currentItem), (QListBox::insertItem),
13117 (QListBox::setSelected), (QListBox::isSelected), (QListBoxItem::width),
13118 (QListBoxItem::height):
13119 * kwq/KWQScrollView.mm: (QScrollView::setContentsPos), (QScrollView::addChild),
13120 (QScrollView::resizeContents), (QScrollView::viewportToContents),
13121 Use local variables to work around Radar 2905835.
13123 * kwq/KWQCString.mm: (operator<<):
13124 * kwq/KWQPoint.mm: (operator<<):
13125 * kwq/KWQRect.mm: (operator<<):
13126 * kwq/KWQSize.mm: (operator<<):
13128 * kwq/qt/qcstring.h:
13129 * kwq/qt/qdatetime.h:
13133 * kwq/qt/qpainter.h:
13135 * kwq/qt/qptrdict.h:
13139 * kwq/qt/qvaluelist.h:
13140 * kwq/qt/qvector.h:
13141 Say std::ostream instead of just ostream.
13143 * kwq/KWQCharsets.mm: Fix a const problem.
13145 * kwq/KWQDateTime.mm: (QTime::elapsed), (QTime::restart): Use int instead
13146 of uint, since these functions try to handle values that are less than 0.
13147 (operator<<): Say std::ostream instead of just ostream.
13148 * kwq/KWQTextArea.mm: (RangeOfParagraph): Fix an int/uint issue.
13150 * kwq/KWQFile.mm: (QFile::KWQFilePrivate::KWQFilePrivate),
13151 (QFile::KWQFilePrivate::~KWQFilePrivate): Use new/delete instead of
13152 malloc/free so we don't get void * warnings.
13154 * kwq/KWQFontMetrics.mm: (__IFFillStyleWithAttributes),
13155 (-[KWQLayoutInfo drawString:atPoint:withFont:color:]),
13156 (-[KWQLayoutInfo _initializeCaches]),
13158 * kwq/KWQKURL.mm: (KURL::KWQKURLPrivate::KWQKURLPrivate),
13159 (RelativeURLKeyRetainCallBack), (RelativeURLKeyReleaseCallBack),
13160 (RelativeURLKeyEqualCallBack), (RelativeURLKeyHashCallBack),
13161 (KURL::normalizeURLString), (KURL::normalizeRelativeURLString):
13162 * kwq/KWQPainter.mm: (QPainter::save):
13163 * kwq/KWQKloader.mm:
13164 (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]),
13165 (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
13166 Add type casts where necessary to make the stricter gcc3 happy.
13168 * kwq/KWQPixmap.mm: (QPixmap::QPixmap): Explicitly initialize the underlying
13170 (QPixmap::size), (QPixmap::rect): Add type casts where necessary to make
13171 the stricter gcc3 happy.
13173 * kwq/KWQPtrDictImpl.mm: (KWQPtrDictImpl::KWQPtrDictPrivate::KWQPtrDictPrivate):
13174 Say std::bad_alloc instead of just bad_alloc.
13175 (invokeDeleteFuncOnValue), (KWQPtrDictImpl::clear): Pass a pointer to a function
13176 pointer rather than a function pointer to avoid a warning about turning function
13177 pointers into void *.
13179 * kwq/KWQRegion.mm: (QRegion::_initialize), (QRegion::~QRegion): Use new/delete
13180 rather than calloc/free so we don't get void * warnings.
13181 (QRegion::boundingRect): Add type casts.
13183 * kwq/KWQString.mm: (QString::fromStringWithEncoding): Add cast.
13184 (QString::setNum): use %ld and %lu rather than %D and %U.
13185 (QString::fill), (QString::convertToQCString): Add casts.
13187 * kwq/KWQTextStorage.mm: (-[KWQTextStorage _buildFragmentForString:]):
13188 Add a cast to make gcc3 happy.
13190 * kwq/KWQVariant.mm: Say "friend class" instead of "friend".
13192 * kwq/KWQVectorImpl.mm: (KWQVectorImpl::KWQVectorPrivate::KWQVectorPrivate):
13193 Say std::bad_alloc instead of just bad_alloc.
13194 (KWQVectorImpl::data): Replace the old autorelease trick with a new one that
13195 doesn't require mixing malloc with NSData.
13197 * kwq/KWQView.mm: (-[KWQHTMLView mouseUp:]), (-[KWQHTMLView mouseDown:]):
13198 Add casts to make gcc3 happy.
13200 * kwq/KWQWidget.mm: (QWidget::frameGeometry), (QWidget::mapToGlobal),
13201 (QWidget::minimumSizeHint): Add casts to make gcc3 happy. Also another
13202 workaround for Radar 2905835.
13204 * kwq/WCPlugin.mm: (-[WCPlugin load]): Add tons of type casts so we don't have
13205 to mix void * with function pointer types.
13207 * kwq/WCPluginWidget.h:
13208 * kwq/WCPluginWidget.mm: (WCIFPluginMakeFunction), (WCIFNullPluginMakeFunction):
13209 Change types so we don't have to mix void * with function pointer types.
13210 This caught a mistake where WCIFNullPluginMakeFunction was returning the wrong
13213 * kwq/external.h: Add some missing interfaces that the pickier gcc3 needed to see.
13215 * kwq/kwqdebug.mm: Don't compile the file if xNDEBUG is set. Otherwise we get
13218 * kwq/npapi.h: Use function pointer types for function pointers and transition
13219 vectors so we don't have to mix void * with function pointer types.
13221 * kwq/npapi.mm: (NPN_GetURLNotify), (NPN_GetURL),
13222 (NPN_PostURLNotify), (NPN_PostURL), (NPN_NewStream), (NPN_Write),
13223 (NPN_DestroyStream), (NPN_Status), (NPN_GetValue), (NPN_SetValue),
13224 (NPN_InvalidateRect), (NPN_InvalidateRegion), (NPN_ForceRedraw):
13225 Use local variables to work around Radar 2905835.
13226 (functionPointerForTVector), (tVectorForFunctionPointer):
13227 Change types around so we don't have to mix void * with function pointer types.
13229 2002-04-17 Darin Adler <darin@apple.com>
13231 Fix some std:: things as a first step in compiling with gcc 3.
13232 These fixes are all needed to compile WebBrowser with gcc 3.
13235 * kwq/qt/qcstring.h:
13238 * kwq/qt/qpainter.h:
13242 * kwq/qt/qvaluelist.h:
13243 Call it std::ostream instead of ostream.
13245 2002-04-17 Darin Adler <darin@apple.com>
13249 * Makefile.am: Don't build this directory before subdirs, because
13250 we link at this level. Move the kentities.c build out of here,
13251 because it needs to be done before khtml/html.
13252 * khtml/html/Makefile.am: Move kentities.c build rules here.
13254 * kentities.gperf: Removed.
13255 * khtml/html/kentities.gperf: Added.
13257 * .cvsignore: Don't ignore kentities.c.
13258 * khtml/html/.cvsignore: Ignore kentities.c.
13260 2002-04-17 Darin Adler <darin@apple.com>
13262 * .cvsignore: Ignore new generated files at this level.
13264 * include/ *: Removed. We don't need this hack any more.
13265 * src/ *: Removed. Sources are now in their new locations.
13266 * src/libwebcore.exp: Removed. This is now in its new location.
13267 * src/libwebcoretests.exp: Removed. This is now in its new location.
13269 * Makefile.am: Build khtml and kwq subdirs, don't build src and include.
13270 Also add the rules that used to be in src about linking the library and
13271 the rules that used to be in src/kdelibs/kdecore about building the
13274 * dummy.mm: Moved here from src by hand.
13275 * kentities.gperf: Moved here from src/kdelibs/kdecore by hand.
13277 * khtml/html/Makefile.am: Add WebCore directory to includes so the
13278 include of "kentities.c" will work.
13280 * kwq/KWQKHTMLPart.mm:
13281 * kwq/KWQKJavaEmbed.mm:
13282 * kwq/KWQKloader.mm:
13283 Correct includes so we don't need a -I for each of the subdirectories.
13285 * kwq/khtml/java/javaembed.h: Removed. We use the one in the real
13288 * kwq/kwqdebug.h: Rolled over Chris's changes, which were done after
13289 the cvs surgery was done.
13291 2002-04-17 Chris Blumenberg <cblu@apple.com>
13293 Added a debug bit mask for plugins and downloads.
13295 * src/kwq/kwqdebug.h:
13297 2002-04-16 Darin Adler <darin@apple.com>
13299 * src/kdelibs/khtml/khtml_part.cpp: Added. Not used yet, but maybe we'll use
13300 part of it some time soon.
13302 * src/kdelibs/khtml/khtml_part.h: Reenabled this file, and made changes so it
13303 could be used instead of our own header.
13304 * src/kwq/KWQKHTMLPart.h: Removed.
13306 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::KHTMLPart): Add parameter to match KDE.
13307 (KHTMLPart::settings): Add const to match KDE.
13308 (KHTMLPart::scheduleRedirection): Add parameter to match KDE.
13309 (KHTMLPart::encoding): Add const to match KDE.
13310 (KHTMLPart::urlCursor): Update return value to match KDE.
13311 (KHTMLPart::urlSelected): Add parameter to match KDE.
13312 (KHTMLPart::requestObject): Put plugins array on private object.
13313 (KHTMLPart::frames): Remove const to match KDE.
13314 (KHTMLPart::documentSource): Add const to match KDE.
13315 (KHTMLPart::setTitle): Put dataSource on private object.
13316 (KHTMLPart::setDataSource): New, not inline any more.
13317 (KHTMLPart::getDataSource): New, not inline any more.
13319 * src/libwebcore.exp: Update for function name changes.
13321 * src/kwq/khtml/khtml_settings.h:
13322 * src/kwq/KWQKHTMLSettings.mm: (KHTMLSettings::changeCursor): Add const.
13324 * src/kwq/KWQView.mm: (-[KWQHTMLView layout]): No need to check xmlDocImpl()
13325 and renderer() for NULL now, because KHTMLView::layout does.
13327 * src/kwq/KWQKloader.mm: (Loader::load): Use type instead of id.
13329 2002-04-16 Darin Adler <darin@apple.com>
13331 * src/kwq/kio/jobclasses.h:
13332 * src/kwq/KWQKjobclasses.mm: (TransferJob::setError): New.
13334 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidCancelLoading:]),
13335 (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
13336 Set an error code so that the load will abort intead of continuing.
13338 * src/kwq/KWQKHTMLPart.mm: Removed some unused code.
13340 2002-04-16 Kenneth Kocienda <kocienda@apple.com>
13342 Moved IFError class from WebKit to WebFoundation.
13343 Updated URL handle client interface to pass an IFError in
13344 an error callback rather than a plain int. These files were
13345 modified due to this change.
13347 * src/kwq/KWQKHTMLPart.mm: (WCSetIFWebDataSourceMakeFunc):
13348 * src/kwq/KWQKloader.mm: (-[URLLoadClient
13349 IFURLHandle:resourceDidFailLoadingWithResult:]):
13351 Removed now unneeded file and function pointer symbol entry
13352 since WebCore code never needs to create an IFError now that
13353 those objects are created at a lower level (in WebFoundation).
13355 * src/kwq/WCError.h: Removed.
13356 * src/libwebcore.exp:
13358 2002-04-15 Darin Adler <darin@apple.com>
13360 * src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
13361 Remove some minor gratuitous diffs vs. KDE.
13363 2002-04-15 Richard Williamson <rjw@apple.com>
13365 Updated to reflect changes in KDE.
13367 * src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
13369 2002-04-15 Darin Adler <darin@apple.com>
13371 * src/kdelibs/khtml/css/css_valueimpl.cpp:
13372 (FontFamilyValueImpl::FontFamilyValueImpl): Fix comment.
13373 * src/kdelibs/khtml/css/cssstyleselector.cpp: Remove some gratuitous diffs vs. KDE.
13374 * src/kdelibs/khtml/html/html_objectimpl.cpp:
13375 (HTMLEmbedElementImpl::parseAttribute): Remove unneeded copy from KWQ's early days.
13376 * src/kdelibs/khtml/html/html_tableimpl.cpp:
13377 (HTMLTableElementImpl::parseAttribute),
13378 (HTMLTablePartElementImpl::parseAttribute): Remove unneeded copy from KWQ's early days.
13379 * src/kdelibs/khtml/html/htmltokenizer.cpp: (HTMLTokenizer::processToken): Redo the
13380 APPLE_CHANGES ifdef here.
13381 * src/kdelibs/khtml/khtmlpart_p.h: Update to latest kde.
13382 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::KHTMLView): Add ifdef APPLE_CHANGES.
13383 (KHTMLView::~KHTMLView): Add ifdef APPLE_CHANGES.
13384 (KHTMLView::print): Remove code left in here during merge process.
13385 * src/kwq/KWQKHTMLPart.mm: Remove unused setFontSizes(), fontSizes(), and
13386 resetFontSizes(). After the merge is landed, remove more.
13387 * src/libwebcore.exp: Export updateStyleSelector() for WebKit.
13389 2002-04-15 Darin Adler <darin@apple.com>
13391 Fix text to it displays at the right font size.
13393 * src/kdelibs/khtml/css/cssstyleselector.cpp:
13394 (CSSStyleSelector::computeFontSizes): Apply the same SCREEN_RESOLUTION hack here
13395 that we do elsewhere.
13396 * src/kdelibs/khtml/rendering/font.cpp: (Font::width): Use kMin instead of max (oops).
13397 (Font::update): Turn off font database chicanery.
13398 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::zoomFactor): Use zoom factor 100, not 1.
13400 2002-04-15 Darin Adler <darin@apple.com>
13402 More fixes so text displays (still at wrong font size).
13404 * src/kdelibs/khtml/rendering/font.cpp: (max): New helper.
13405 (Font::drawText): Simplified implementation for now.
13406 (Font::width): Simplified implementation for now.
13407 * src/kwq/KWQColorGroup.mm: Reinstated QCOLOR_GROUP_SIZE.
13409 * src/kwq/qt/qfontmetrics.h: Removed charWidth and changed _width to take QChar *.
13410 * src/kwq/KWQFontMetrics.mm: Removed charWidth and changed _width to take QChar *.
13412 2002-04-15 Darin Adler <darin@apple.com>
13414 Merged changes from KDE 3.0 final. Other fixes to get things compiling.
13416 * src/kdelibs/khtml/css/css_valueimpl.cpp:
13417 (CSSStyleDeclarationImpl::setProperty): Fix unused variable.
13418 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::contentsContextMenuEvent):
13419 Fix unused variable.
13420 * src/kdelibs/khtml/rendering/font.cpp: (Font::drawText), (Font::width),
13421 (Font::update): Disable special "nsbp" logic for now. We can reenable it
13423 * src/kdelibs/khtml/rendering/render_replaced.cpp: Fix mismerge.
13424 * src/kdelibs/khtml/rendering/render_text.cpp: (RenderText::nodeAtPoint):
13425 Fix unused variable.
13426 * src/kwq/KWQApplication.mm: (QDesktopWidget::width), (QApplication::desktop):
13428 * src/kwq/KWQColorGroup.mm: Fix QCOLOR_GROUP_SIZE.
13429 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::lineSpacing): New.
13430 (QFontMetrics::width): Remove unused optimization.
13431 * src/kwq/qt/qfontmetrics.h: Add lineSpacing().
13433 2002-04-15 Darin Adler <darin@apple.com>
13435 Merged changes from previous merge pass.
13437 2002-03-25 Darin Adler <darin@apple.com>
13439 Last bit of making stuff compile and link. Probably will drop the merge now
13440 and take it up again when it's time to merge in KDE 3.0 final.
13442 * src/kwq/KWQEvent.mm: (QFocusEvent::reason): New.
13443 * src/kwq/KWQPainter.mm: (QPainter::drawText): New overload.
13445 2002-03-25 Darin Adler <darin@apple.com>
13447 * src/kdelibs/khtml/rendering/font.cpp: (Font::width): Make it call _width so we
13448 don't lose the optimization.
13450 * src/kwq/KWQApplication.mm: (QDesktopWidget::screenNumber): New.
13451 (QDesktopWidget::screenGeometry): New.
13452 (QApplication::style): New.
13453 * src/kwq/KWQColorGroup.mm: (QColorGroup::highlight): New.
13454 (QColorGroup::highlightedText): New.
13455 * src/kwq/KWQFont.mm: (QFont::setPixelSize): New.
13456 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::charWidth): New.
13457 * src/kwq/KWQKGlobal.mm: (KGlobal::locale): Implement.
13458 (KLocale::KLocale): New.
13459 (KLocale::languageList): New.
13460 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::sheetUsed): New.
13461 (KHTMLPart::setSheetUsed): New.
13462 (KHTMLPart::zoomFactor): New.
13463 * src/kwq/KWQKHTMLSettings.mm: (KHTMLSettings::mediumFontSize): New.
13464 * src/kwq/KWQScrollView.mm: (QScrollView::childX): New.
13465 (QScrollView::childY): New.
13467 * src/kwq/qt/qapplication.h: style() returns a QStyle &.
13468 * src/kwq/qt/qpalette.h: Add Highlight and HighlightedText.
13470 2002-03-24 Darin Adler <darin@apple.com>
13472 More compiling. Still won't link.
13474 * src/kdelibs/khtml/khtmlview.cpp: Disable printing and drag and drop code.
13475 * src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
13476 Temporarily turn off our smarter underlining since it relies on access to the
13477 string, and TextSlave doesn't have that any more.
13478 (RenderText::nodeAtPoint): Get rid of a workaround we don't need any more for
13479 a bug that was fixed by KDE folks.
13480 * src/kwq/KWQApplication.mm: (QApplication::desktop): Make the desktop be a
13482 * src/kwq/qt/qnamespace.h: Add MetaButton.
13483 * src/kwq/qt/qtooltip.h: Add a maybeTip virtual function member and a virtual
13486 2002-03-24 Darin Adler <darin@apple.com>
13488 Some fixes to get more stuff to compile.
13490 * src/kdelibs/khtml/ecma/kjs_dom.cpp: (DOMDocument::getValueProperty):
13491 Don't try to look at the private m_bComplete to display "complete". Just do
13492 "loading" and "loaded".
13493 * src/kdelibs/khtml/khtmlpart_p.h: #ifdef this all out for APPLE_CHANGES.
13494 * src/kdelibs/khtml/rendering/font.cpp: (Font::update): Add an explicit cast to
13495 int to avoid float -> int warning.
13496 * src/kdelibs/khtml/rendering/render_table.cpp: (RenderTable::calcColMinMax):
13497 Add an explicit cast to int to avoid uint compared with int warning.
13498 * src/kdelibs/khtml/xml/dom_docimpl.cpp: (DocumentImpl::recalcStyleSelector):
13499 Use sheetUsed() and setSheetUsed() functions on KHTMLPart intead of getting
13500 at private fields the way the real KDE code does.
13502 * src/kwq/KWQKHTMLPart.h: Declare zoomFactor(), sheetUsed(), and setSheetUsed().
13503 * src/kwq/KWQStyle.h: Add PM_DefaultFramWidth as another metric.
13504 * src/kwq/kdecore/klocale.h: Add languageList().
13505 * src/kwq/khtml/khtml_settings.h: Add mediumFontSize().
13506 * src/kwq/qt/qapplication.h: Add style() and QDesktopWidget.
13507 * src/kwq/qt/qevent.h: Add reason().
13508 * src/kwq/qt/qfont.h: Add setPixelSize(int).
13509 * src/kwq/qt/qfontmetrics.h: Add charWidth() and _charWidth() functions.
13510 * src/kwq/qt/qpainter.h: Add drawText() overload with position parameter.
13511 * src/kwq/qt/qpalette.h: Add highlight() and highlightedText().
13512 * src/kwq/qt/qscrollview.h: Add childX() and childY().
13514 * src/kwq/KWQApplication.mm: Change KWQDesktopWidget to QDesktopWidget.
13516 2002-04-11 Chris Blumenberg <set EMAIL_ADDRESS environment variable>
13518 Added a symbol for WCPluginDatabase.
13520 * src/libwebcore.exp:
13522 2002-04-08 Maciej Stachowiak <mjs@apple.com>
13524 Fix Radar 2896001 (crashes in KURL):
13526 * src/kwq/KWQKURL.mm: (KURL::KWQKURLPrivate::KWQKURLPrivate):
13527 Initialize refCount to 0 in the copy constructor.
13529 2002-04-08 Chris Blumenberg <cblu@apple.com>
13531 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::requestObject):
13532 * src/kwq/WCPluginWidget.h:
13533 * src/kwq/WCPluginWidget.mm: (WCPluginWidget::WCPluginWidget):
13535 Support new stream requests from plug-ins that are relative URL's.
13537 2002-04-05 Chris Blumenberg <cblu@apple.com>
13539 * src/libwebcore.exp:
13541 Added symbol for IFNullPluginView
13543 2002-04-05 Richard Williamson <rjw@apple.com>
13545 Various scrolling, hit detection, and goto anchor fixes to account for frames being
13546 translated in scroll views.
13548 * src/kwq/KWQScrollView.mm: (QScrollView::setContentsPos),
13549 (QScrollView::viewportToContents):
13551 2002-04-05 Chris Blumenberg <cblu@apple.com>
13553 * src/kwq/WCPluginWidget.h:
13554 * src/kwq/WCPluginWidget.mm: (WCSetIFNullPluginMakeFunc),
13555 (WCPluginWidget::WCPluginWidget), (WCIFPluginMakeFunction),
13556 (WCIFNullPluginMakeFunction):
13558 An IFNullPluginView is now created when no plug-in for a requested
13559 mime type is found. IFNullPluginView displays a null plug-in icon
13560 and will eventually report this error to the WebController.
13562 2002-04-05 Richard Williamson <rjw@apple.com>
13566 1. Not loading a document when a link is to an anchor on same page.
13567 2. Correctly targeting frames.
13569 Our documentation is actually useable now.
13571 * src/kwq/KWQKHTMLPart.mm: (splitUrlTarget), (KHTMLPart::khtmlMouseReleaseEvent):
13572 * src/kwq/external.h:
13574 2002-04-05 Darin Adler <darin@apple.com>
13576 * src/kwq/KWQKloader.mm:
13577 (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
13578 Use contentLengthReceived rather than getting the length of
13579 availableResourceData to determine how much data has arrived.
13581 2002-04-05 Richard Williamson <rjw@apple.com>
13583 More bulletproofing to deal with cleanup during deallocation.
13585 * src/kdelibs/khtml/html/htmlparser.cpp: (KHTMLParser::popOneBlock):
13586 * src/kdelibs/khtml/html/htmltokenizer.cpp: (HTMLTokenizer::processToken):
13588 2002-04-05 Maciej Stachowiak <mjs@apple.com>
13590 * src/kwq/qt/qmap.h (QMapNode::~QMapNode): Cast left() and right()
13591 to the right type to fix a leak detected by the automated leak
13592 checking on Jersey.
13594 2002-04-04 Richard Williamson <rjw@apple.com>
13596 Extra bulletproofing to prevent script execution when in partially
13599 * src/kdelibs/khtml/html/htmltokenizer.cpp: (HTMLTokenizer::scriptExecution):
13601 2002-04-04 Chris Blumenberg <cblu@apple.com>
13603 * src/kwq/WCPlugin.mm: (-[WCPlugin load]):
13605 * src/kwq/npapi.mm: (NPN_GetJavaEnv), (NPN_GetJavaPeer):
13607 Added stubs for NPN_GetJavaEnv and NPN_GetJavaPeer. This fixes a flash crasher.
13609 2002-04-04 Chris Blumenberg <cblu@apple.com>
13611 * src/kdelibs/khtml/rendering/render_frames.cpp:
13612 (RenderPartObject::updateWidget):
13613 * src/kwq/WCPluginWidget.mm: (WCPluginWidget::WCPluginWidget):
13615 Moved the removal of __KHTML__ EMBED to attributes WCPluginWidget. One less APPLE_CHANGES.
13617 2002-04-04 Darin Adler <darin@apple.com>
13619 Redo clobbered fixes for problems that show up only when xNDEBUG is set
13621 * src/kwq/KWQApplication.mm: (QApplication::sendEvent):
13622 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]):
13623 Remove or ifdef otherwise-unused variables.
13625 * src/kwq/KWQFontMetrics.mm: (_rectForString):
13626 Add missing semicolons.
13628 2002-04-04 Darin Adler <darin@apple.com>
13630 * src/kwq/KWQString.mm: (QString::unicode), (QString::latin1),
13631 (QString::convertToQCString): Remove some excessive logging that
13632 was getting in the way of important log messages.
13634 2002-04-03 Richard Williamson <rjw@apple.com>
13636 Added support for finalURL in data source.
13638 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
13639 * src/kwq/external.h:
13641 2002-04-03 Darin Adler <darin@apple.com>
13643 * src/Makefile.am: Concatenate libwebcore.exp and libwebcoretests.exp.
13644 * src/libwebcore.exp: Update with exports that are needed when inlining is
13646 * src/libwebcoretests.exp: Added. Exports that we need to run the test in the
13648 * .cvsignore: Ignore the concatenated file.
13650 2002-04-03 Darin Adler <darin@apple.com>
13652 * src/Makefile.am: Don't strip at all if STRIP_FLAGS are empty.
13653 * src/kwq/qt/qtextcodec.h: Remove stray undef.
13655 2002-04-03 Kenneth Kocienda <kocienda@apple.com>
13657 Updated debugging log messages to use new varargs macros.
13659 * src/kwq/KWQApplication.mm: (QApplication::sendEvent),
13660 (QApplication::_initialize):
13661 * src/kwq/KWQColor.mm: (QColor::setNamedColor):
13662 * src/kwq/KWQComboBox.mm: (QComboBox::setCurrentItem):
13663 * src/kwq/KWQFont.mm: (QFont::getFont):
13664 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo _initializeCaches]),
13666 * src/kwq/KWQKHTMLPart.mm: (recursive), (KHTMLPart::write), (KHTMLPart::end),
13667 (KHTMLPart::nodeActivated):
13668 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]),
13669 (-[URLLoadClient IFURLHandleResourceDidCancelLoading:]), (-[URLLoadClient
13670 IFURLHandleResourceDidFinishLoading:data:]), (-[URLLoadClient
13671 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[URLLoadClient
13672 IFURLHandle:resourceDidFailLoadingWithResult:]), (-[URLLoadClient
13673 IFURLHandle:didRedirectToURL:]), (Loader::servePendingRequests):
13674 * src/kwq/KWQObject.mm: (QObject::connect), (QObject::performAction):
13675 * src/kwq/KWQScrollView.mm: (QScrollView::addChild),
13676 (QScrollView::resizeContents), (QScrollView::updateContents),
13677 (QScrollView::repaintContents):
13678 * src/kwq/KWQString.mm: (QString::unicode), (QString::latin1):
13679 * src/kwq/KWQView.mm: (-[KWQHTMLView notificationReceived:]), (-[KWQHTMLView
13680 layout]), (-[KWQHTMLView drawRect:]), (-[KWQHTMLView resetView]), (-[KWQHTMLView
13682 * src/kwq/KWQWidget.mm: (QWidget::resize), (QWidget::move):
13683 * src/kwq/WCPlugin.mm: (-[WCPlugin initializeWithPath:]), (-[WCPlugin load]):
13684 * src/kwq/WCPluginDatabase.mm: (findPlugins):
13685 * src/kwq/kwqdebug.h:
13686 * src/kwq/kwqdebug.mm: (timestamp), (KWQLog):
13688 2002-04-03 Darin Adler <darin@apple.com>
13690 Fix problems that show up only when xNDEBUG is set.
13692 * src/kwq/KWQApplication.mm: (QApplication::sendEvent):
13693 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]):
13694 * src/kwq/KWQView.mm: (-[KWQHTMLView layout]), (-[KWQHTMLView drawRect:]):
13695 Remove or ifdef otherwise-unused variables.
13697 * src/kwq/KWQFontMetrics.mm: (_rectForString):
13698 * src/kwq/KWQPainter.mm: (QPainter::setRasterOp), (QPainter::translate),
13700 Add missing semicolons.
13702 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin):
13705 2002-04-03 Darin Adler <darin@apple.com>
13707 * src/Makefile.am: Use nmedit and strip to remove the symbols
13708 we don't want to export.
13710 * src/libwebcore.exp: Added. List of symbols exported.
13712 2002-04-03 Maciej Stachowiak <mjs@apple.com>
13714 * src/Makefile.am: Pave the way for cutting down the exports
13715 list. Also, make the embed target when installing libwebcore.
13717 2002-04-03 Maciej Stachowiak <mjs@apple.com>
13719 Fixed Radar 2893361 (Two frames with same name cause memory
13720 trasher (likely double-free)) by implementing the mechanism KDE
13721 uses to guarantee unique frame names.
13723 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::frameExists): Actually
13724 implement this, so that the khtml code can guarantee unique frame
13725 names on each page.
13727 * src/kwq/external.h: Prototype IFWebDataSource's frameExists:
13730 2002-04-03 Maciej Stachowiak <mjs@apple.com>
13732 Fixed Radar 2893298 (KURL rejects spaces and other illegal but
13733 unambiguous characters, leading to load failures).
13735 * src/kwq/KWQKURL.mm: (KURL::KWQKURLPrivate::makeRef,
13736 KURL::normalizeRelativeURLString): Escape forbidden characters
13737 (ones that are never legal in a URL), except '#' (since that can
13738 start a fragment identifier) and '%'
13739 (since that can be the start of a valid escape sequence).
13741 (KURL::KWQKURLPrivate::KWQKURLPrivate,
13742 KURL::KWQKURLPrivate::compose): out of paranoia, make sure urlRef
13743 is set to NULL if not a valid value.
13745 2002-04-03 Maciej Stachowiak <mjs@apple.com>
13747 * src/kwq/kwqdebug.mm: (KWQGetLogLevel): Allocate and release
13748 NSScanner instead of using an autoreleased one, to fix Jersey
13749 redness whereby the regression tests leak.
13751 2002-04-02 Darin Adler <darin@apple.com>
13753 * src/kwq/kwqdebug.h: Turn off logging when xNDEBUG is defined.
13754 Remove unused stuff. Add checking for printf parameters.
13755 * src/kwq/kwqdebug.mm: Remove unused variants.
13757 * src/kwq/KWQApplication.mm:
13758 * src/kwq/KWQKGlobal.mm:
13759 * src/kwq/KWQKloader.mm:
13760 * src/kwq/KWQObject.mm:
13761 * src/kwq/KWQString.mm:
13762 * src/kwq/KWQToolTip.mm:
13763 * src/kwq/KWQWidget.mm:
13764 * src/kwq/WCPlugin.mm:
13765 * src/kwq/WCPluginDatabase.mm:
13766 * src/kwq/npapi.mm:
13767 Fix types in log statements caught by the compiler.
13769 2002-04-02 Richard Williamson <rjw@apple.com>
13771 Fixed a fix, shoulda' been a #ifndef to exclude unnecessary code.
13773 * src/kdelibs/khtml/rendering/render_replaced.cpp: (RenderWidget::detach):
13775 2002-04-02 Richard Williamson <rjw@apple.com>
13777 More noisy bulletproofing. Still need to find source of problem.
13779 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::~KHTMLPart), (KHTMLPart::slotData),
13780 (KHTMLPart::write), (KHTMLPart::end):
13782 2002-04-02 Darin Adler <darin@apple.com>
13784 Fix some small storage leaks.
13786 * src/kwq/KWQWidget.mm: (QWidget::QWidget): Use a single shared default style
13787 instead of creating a new one for each widget.
13788 (QWidget::setFont): Since we store a QFont here, we don't have to delete the
13789 old font and we don't leak.
13790 (QWidget::setCursor): Since now store a QCursor here, we don't have to delete
13792 Also removed a lot of unused code in here.
13794 * src/kwq/KWQKURL.mm: Minor code cleanup.
13796 2002-04-02 Richard Williamson <rjw@apple.com>
13798 Added ref() of part from KHTMView.
13799 Added log to catch m_doc == 0 case. Should never happen.
13801 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::KHTMLView),
13802 (KHTMLView::~KHTMLView):
13803 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::write):
13805 2002-04-02 Richard Williamson <rjw@apple.com>
13807 Removed unnecessary and erroneous call to CGContextSetCharacterSpacing.
13809 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo _initializeCaches]):
13811 2002-04-01 Maciej Stachowiak <mjs@apple.com>
13813 * src/kwq/KWQKHTMLPart.mm (KHTMLPartPrivate::~KHTMLPartPrivate):
13814 Delete the jScript interpreter if it exists, to avoid leaking
13815 it. Also, garbage collect in this case because when we destroy the
13816 interpreter a lot of objects will become garbage and this seems
13817 like a good time to clean it all up.
13819 2002-04-01 Richard Williamson <rjw@apple.com>
13821 Added log to catch more problems with NS/CFURL.
13823 * src/kwq/KWQKjobclasses.mm:
13825 2002-04-01 Richard Williamson <rjw@apple.com>
13827 Cleaned up lots of potentially stale references to controller.
13828 Added ref count to part.
13830 * src/kwq/KWQKHTMLPart.h:
13831 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::init):
13832 * src/kwq/KWQKloader.mm: (-[URLLoadClient
13833 IFURLHandle:resourceDataDidBecomeAvailable:]):
13835 2002-04-01 Richard Williamson <rjw@apple.com>
13837 Changes to support correct behavior is i/frame margins and
13840 * src/kdelibs/khtml/html/html_baseimpl.h:
13841 * src/kdelibs/khtml/rendering/render_body.cpp: (RenderBody::layout):
13842 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::requestFrame):
13843 * src/kwq/external.h:
13845 2002-04-01 Kenneth Kocienda <kocienda@apple.com>
13847 The guts of the fix for this bug:
13849 Radar 2879234 (Redirected URLs not used for subsequent GETs)
13851 This change, though small, will fix most of the outstanding problems
13852 with URL redirects. Some little bits of work need to be done, but much
13853 of that is on the UI level.
13855 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin), (KHTMLPart::setBaseURL):
13857 2002-04-01 Darin Adler <darin@apple.com>
13859 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::jScriptEnabled): Hook this up to the
13860 preference from WebKit.
13861 (KHTMLPart::jScript): Return 0 if JavaScript is disabled. This is exactly what
13862 the original KHTMLPart from KDE did.
13864 2002-04-01 Darin Adler <darin@apple.com>
13866 * src/kwq/KWQDef.h: Use KWQ_UNSIGNED_TYPES_DEFINED for compatibility with code
13867 in JavaScriptCore that has to do the same thing.
13869 2002-04-01 Darin Adler <darin@apple.com>
13871 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::restoreScrollBar): Disable code
13872 that checks if the scroll bar is visible, because it currently doesn't do us
13873 any good. We may want to turn it back on if we ever implement setVScrollBarMode.
13874 (KHTMLView::viewportWheelEvent): Disable this code for now since it requires
13875 access to the vertical scroll bar object.
13876 * src/kdelibs/khtml/rendering/render_form.cpp:
13877 (RenderTextArea::calcMinMaxWidth): Use our own verticalScrollBarWidth and
13878 horizontalScrollBarHeight rather than getting scroll bar widgets.
13880 * src/kwq/qt/qscrollview.h: Remove QScrollView::horizontalScrollBar() and
13881 QScrollView::verticalScrollBar(), since we don't have QWidgets to return for
13882 these two. We can re-add these later if we need to.
13884 * src/kwq/qt/qtextedit.h: Removed QMultiLineEdit, and QTextEdit() constructor.
13885 * src/kwq/kdeui/keditcl.h: Removed.
13886 * src/kwq/KWQTextEdit.mm: Remove unused functions.
13887 (QTextEdit::verticalScrollBarWidth), (QTextEdit::horizontalScrollBarHeight):
13888 Implement these two new ones.
13889 * src/kwq/KWQScrollView.mm: Remove unused functions.
13891 * src/kdelibs/khtml/rendering/render_form.cpp: Fixed spelling error.
13893 2002-03-31 Maciej Stachowiak <mjs@apple.com>
13895 Fix Radar 2890464 (abcnews.com renders as a blank blue page (probably a JavaScript
13896 problem).) It turns out not to be a JavaScript problem:
13898 * src/kwq/KWQKloader.mm: (-[URLLoadClient
13899 IFURLHandle:resourceDidFailLoadingWithResult:]): Report that load
13900 is finished to KDE layers. Otherwise, the tokenizer will wait
13901 forever for a script load completion message that never comes.
13903 2002-03-31 Darin Adler <darin@apple.com>
13905 * src/kwq/KWQString.mm: (QString::toDouble): Fix to properly handle
13908 2002-03-30 Darin Adler <darin@apple.com>
13910 * src/kdelibs/khtml/xml/dom_docimpl.cpp: (DocumentImpl::setTitle):
13911 Call through to a new KHTMLPart::setTitle instead of the old
13912 setWindowCaption. We want to skip the special logic for using
13913 the URL if the title is blank, and for squeezing the title into
13914 a smaller string, because those are handled at a higher level.
13916 * src/kwq/KWQKHTMLPart.h: Add setTitle. Also clean up ifdefs.
13917 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::setTitle): New. Calls
13918 [IFWebDataSource _setTitle].
13920 * src/kwq/kparts/part.h: Removed setWindowCaption.
13921 * src/kwq/KWQPart.mm: Removed setWindowCaption.
13923 * src/kwq/external.h: Add [IFWebDataSource _setTitle].
13925 2002-03-30 Richard Williamson <rjw@apple.com>
13927 Added support for scrolling to anchor points.
13928 Optimization: we always load the page, even if the URL that contains
13929 the anchor is the current page.
13931 * src/kwq/KWQKHTMLPart.h:
13932 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::end), (KHTMLPart::gotoBaseAnchor),
13933 (KHTMLPart::gotoAnchor), (KHTMLPart::setUserStyleSheet):
13934 * src/kwq/KWQScrollView.mm: (QScrollView::setContentsPos):
13936 2002-03-30 Richard Williamson <rjw@apple.com>
13938 Added log to note cases of NSURL (CFURL) being unable to
13939 correctly initialize from URLs. This log will likely indicate
13942 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::requestFrame):
13944 2002-03-30 Richard Williamson <rjw@apple.com>
13946 Twiddling with baselines. kde 2.2 appears to not line up baselines correctly.
13947 Need to experiment with kde 3.
13949 Removed copy of function prototype, instead included the correct header.
13951 Fixed crasher in setFocusPolicy, I don't think we even need to use kde's focus policy.
13952 This was added during the kde 3 beta 2 merge.
13954 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo
13955 drawString:atPoint:withFont:color:]), (-[KWQLayoutInfo
13956 drawUnderlineForString:atPoint:withFont:color:]), (-[KWQLayoutInfo
13957 initWithFont:]), (-[KWQLayoutInfo _initializeCaches]):
13958 * src/kwq/KWQMetrics.h:
13959 * src/kwq/KWQWidget.mm: (QWidget::setFocusProxy):
13961 2002-03-30 Darin Adler <darin@apple.com>
13963 * src/kwq/KWQKURL.mm: (copyAndReplaceAll), (needToHideColons): New
13964 functions used in workaround for CFURL bug.
13965 (KURL::normalizeRelativeURLString): Add workaround for CFURL bug; hide colons
13966 that would confuse CFURL from the CFURL code.
13968 * src/kwq/KWQFont.mm: (QFont::getFont): Use lossyCString instead of cString for
13969 debugging messages.
13971 2002-03-30 Maciej Stachowiak <mjs@apple.com>
13973 * src/Makefile.am: Link against JavaScriptCore.framework instead
13974 of the defunct libJavaScriptCore.dylib.
13976 2002-03-29 Darin Adler <darin@apple.com>
13978 * src/kdelibs/khtml/rendering/render_image.cpp: (RenderImage::updateFromElement):
13979 Make images with no src, or src="" be empty rather than being the page itself
13980 loaded as an image.
13982 2002-03-29 Richard Williamson <rjw@apple.com>
13984 More fixes for cancelling. Fixed some code that appears to have been
13985 mis-merged after the KDE 3 beta 2 landing.
13987 * src/kwq/KWQKloader.mm: (-[URLLoadClient initWithLoader:dataSource:])
13989 2002-03-29 Darin Adler <darin@apple.com>
13991 * src/kwq/KWQKloader.mm: (Cache::getStatistics), (Cache::flushAll):
13992 Fix both of these to work when cache is not yet allocated.
13994 2002-03-29 Richard Williamson <rjw@apple.com>
13996 Hooked up redirect.
13998 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
13999 * src/kwq/external.h:
14001 2002-03-29 Kenneth Kocienda <kocienda@apple.com>
14003 Workaround for Radar 2890624 (Double free of image data in QPixmap)
14004 This hack is necessary for the app to run on some Jaguar system. Otherwise
14005 images that the GIF library cannot decode will cause a crash.
14007 * src/kwq/KWQPixmap.mm: (QPixmap::QPixmap):
14009 2002-03-28 Richard Williamson <rjw@apple.com>
14011 Fixed basic font horkage caused by removal of KDE font matching code. We
14012 now work correctly for the basic font families.
14014 * src/kwq/KWQFont.mm: (QFont::getFont):
14016 2002-03-28 Darin Adler <darin@apple.com>
14018 * src/kwq/KWQKloader.mm: (Cache::requestImage), (Cache::requestStyleSheet),
14019 (Cache::requestScript): Set flags so the objects get freed when they are done
14020 in cases where the cache is disabled.
14022 2002-03-28 Maciej Stachowiak <mjs@apple.com>
14024 Fix Radar 2890340 (JavaScript doesn't work)
14026 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::executeScript): Implement
14027 the other overloaded version of this function. This is needed for
14028 JavaScript to work.
14030 2002-03-28 Darin Adler <darin@apple.com>
14032 * src/kdelibs/khtml/misc/loader.h: Added API for looking at the contents of the
14033 cache, flushing the cache, and disabling the cache.
14034 * src/kwq/KWQKloader.mm: (Cache::requestImage): Don't cache if disabled.
14035 (Cache::requestStyleSheet): Don't cache if disabled.
14036 (Cache::requestScript): Don't cache if disabled.
14037 (Cache::flush): Simplify ifdefs.
14038 (Cache::getStatistics), (Cache::flushAll), (Cache::setCacheDisabled): New.
14040 2002-03-28 Richard Williamson <rjw@apple.com>
14042 Fixed crasher. Removed unnecessary cleanup to widget that was called after the
14043 widget was already disposed.
14045 * src/kdelibs/khtml/rendering/render_replaced.cpp: (RenderWidget::detach):
14047 2002-03-27 Richard Williamson <rjw@apple.com>
14049 Removed problematic code. Not sure why it was necessary. For now
14050 it prevents crasher.
14052 * src/kdelibs/khtml/rendering/render_table.cpp: (RenderTable::addColInfo):
14054 2002-03-27 Darin Adler <darin@apple.com>
14056 * src/kwq/KWQListImpl.mm: (KWQListImpl::insert): Fix disastrous name
14057 collision which could lead to infinite loops.
14059 2002-03-27 Darin Adler <darin@apple.com>
14061 * src/kwq/KWQCString.mm: (QCString::isEmpty): The || should be &&.
14063 2002-03-27 Darin Adler <darin@apple.com>
14065 * src/kdelibs/khtml/css/css_valueimpl.cpp:
14066 (FontFamilyValueImpl::FontFamilyValueImpl): Disable misguided font matching
14069 * src/kwq/KWQFont.mm: (QFont::getFont): Change the fallback so that it uses
14070 the default font family, but the other settings as requested, rather than
14071 using the default font.
14073 2002-03-27 Kenneth Kocienda <kocienda@apple.com>
14075 Changed loadProgress->bytesSoFar to use [sender contentLengthReceived]
14076 instead of the size of the chunk that was delivered in the callback.
14077 This makes the activity window data more correct than it was.
14079 * src/kwq/KWQKloader.mm: (-[URLLoadClient
14080 IFURLHandle:resourceDataDidBecomeAvailable:]):
14082 2002-03-27 Darin Adler <darin@apple.com>
14084 * src/kdelibs/khtml/ecma/Makefile.am: Get the create_hash_table tool
14085 from JavaScriptCore. We might need a better way to handle this later.
14087 2002-03-26 Maciej Stachowiak <mjs@apple.com>
14089 Removed kjs from here - it's now been moved to JavaScriptCore at
14092 * src/Makefile.am: Don't link libkjs.o.
14093 * src/kdelibs/Makefile.am: Remove kjs from subdirs.
14094 * src/kdelibs/kjs/.cvsignore: Removed.
14095 * src/kdelibs/kjs/Makefile.am: Removed.
14096 * src/kdelibs/kjs/array_object.cpp: Removed.
14097 * src/kdelibs/kjs/array_object.h: Removed.
14098 * src/kdelibs/kjs/bool_object.cpp: Removed.
14099 * src/kdelibs/kjs/bool_object.h: Removed.
14100 * src/kdelibs/kjs/collector.cpp: Removed.
14101 * src/kdelibs/kjs/collector.h: Removed.
14102 * src/kdelibs/kjs/create_hash_table: Removed.
14103 * src/kdelibs/kjs/date_object.cpp: Removed.
14104 * src/kdelibs/kjs/date_object.h: Removed.
14105 * src/kdelibs/kjs/debugger.cpp: Removed.
14106 * src/kdelibs/kjs/debugger.h: Removed.
14107 * src/kdelibs/kjs/error_object.cpp: Removed.
14108 * src/kdelibs/kjs/error_object.h: Removed.
14109 * src/kdelibs/kjs/function.cpp: Removed.
14110 * src/kdelibs/kjs/function.h: Removed.
14111 * src/kdelibs/kjs/function_object.cpp: Removed.
14112 * src/kdelibs/kjs/function_object.h: Removed.
14113 * src/kdelibs/kjs/grammar.y: Removed.
14114 * src/kdelibs/kjs/internal.cpp: Removed.
14115 * src/kdelibs/kjs/internal.h: Removed.
14116 * src/kdelibs/kjs/interpreter.cpp: Removed.
14117 * src/kdelibs/kjs/interpreter.h: Removed.
14118 * src/kdelibs/kjs/keywords.table: Removed.
14119 * src/kdelibs/kjs/kjs-test: Removed.
14120 * src/kdelibs/kjs/kjs-test.chk: Removed.
14121 * src/kdelibs/kjs/lexer.cpp: Removed.
14122 * src/kdelibs/kjs/lexer.h: Removed.
14123 * src/kdelibs/kjs/lookup.cpp: Removed.
14124 * src/kdelibs/kjs/lookup.h: Removed.
14125 * src/kdelibs/kjs/math_object.cpp: Removed.
14126 * src/kdelibs/kjs/math_object.h: Removed.
14127 * src/kdelibs/kjs/nodes.cpp: Removed.
14128 * src/kdelibs/kjs/nodes.h: Removed.
14129 * src/kdelibs/kjs/nodes2string.cpp: Removed.
14130 * src/kdelibs/kjs/number_object.cpp: Removed.
14131 * src/kdelibs/kjs/number_object.h: Removed.
14132 * src/kdelibs/kjs/object.cpp: Removed.
14133 * src/kdelibs/kjs/object.h: Removed.
14134 * src/kdelibs/kjs/object_object.cpp: Removed.
14135 * src/kdelibs/kjs/object_object.h: Removed.
14136 * src/kdelibs/kjs/operations.cpp: Removed.
14137 * src/kdelibs/kjs/operations.h: Removed.
14138 * src/kdelibs/kjs/property_map.cpp: Removed.
14139 * src/kdelibs/kjs/property_map.h: Removed.
14140 * src/kdelibs/kjs/regexp.cpp: Removed.
14141 * src/kdelibs/kjs/regexp.h: Removed.
14142 * src/kdelibs/kjs/regexp_object.cpp: Removed.
14143 * src/kdelibs/kjs/regexp_object.h: Removed.
14144 * src/kdelibs/kjs/string_object.cpp: Removed.
14145 * src/kdelibs/kjs/string_object.h: Removed.
14146 * src/kdelibs/kjs/test.js: Removed.
14147 * src/kdelibs/kjs/testkjs.cpp: Removed.
14148 * src/kdelibs/kjs/types.cpp: Removed.
14149 * src/kdelibs/kjs/types.h: Removed.
14150 * src/kdelibs/kjs/ustring.cpp: Removed.
14151 * src/kdelibs/kjs/ustring.h: Removed.
14152 * src/kdelibs/kjs/value.cpp: Removed.
14153 * src/kdelibs/kjs/value.h: Removed.
14155 2002-03-26 Maciej Stachowiak <mjs@apple.com>
14157 Removed all the borrowed Qt code.
14159 * src/kwq/KWQGlobal.mm: Renamed from qt/_qglobal.cpp to avoid
14160 confusion about the borrowedness status of this file.
14161 * src/kwq/Makefile.am: Removed references to kde and qt
14163 * src/kwq/kde/.cvsignore: Removed.
14164 * src/kwq/kde/Makefile.am: Removed.
14165 * src/kwq/kde/_kurl.cpp: Removed.
14166 * src/kwq/kde/_kurl.h: Removed.
14167 * src/kwq/qt/Makefile.am: Removed.
14168 * src/kwq/qt/_qarray.h: Removed.
14169 * src/kwq/qt/_qbuffer.cpp: Removed.
14170 * src/kwq/qt/_qbuffer.h: Removed.
14171 * src/kwq/qt/_qcollection.cpp: Removed.
14172 * src/kwq/qt/_qcollection.h: Removed.
14173 * src/kwq/qt/_qcolor.h: Removed.
14174 * src/kwq/qt/_qcstring.cpp: Removed.
14175 * src/kwq/qt/_qcstring.h: Removed.
14176 * src/kwq/qt/_qdatetime.cpp: Removed.
14177 * src/kwq/qt/_qdatetime.h: Removed.
14178 * src/kwq/qt/_qdict.h: Removed.
14179 * src/kwq/qt/_qdir.cpp: Removed.
14180 * src/kwq/qt/_qdir.h: Removed.
14181 * src/kwq/qt/_qdir_unix.cpp: Removed.
14182 * src/kwq/qt/_qfile.cpp: Removed.
14183 * src/kwq/qt/_qfile.h: Removed.
14184 * src/kwq/qt/_qfileinfo.cpp: Removed.
14185 * src/kwq/qt/_qfileinfo.h: Removed.
14186 * src/kwq/qt/_qfileinfo_unix.cpp: Removed.
14187 * src/kwq/qt/_qgarray.cpp: Removed.
14188 * src/kwq/qt/_qgarray.h: Removed.
14189 * src/kwq/qt/_qgdict.cpp: Removed.
14190 * src/kwq/qt/_qgdict.h: Removed.
14191 * src/kwq/qt/_qglist.cpp: Removed.
14192 * src/kwq/qt/_qglist.h: Removed.
14193 * src/kwq/qt/_qglobal.cpp: Removed.
14194 * src/kwq/qt/_qgvector.cpp: Removed.
14195 * src/kwq/qt/_qgvector.h: Removed.
14196 * src/kwq/qt/_qiodevice.cpp: Removed.
14197 * src/kwq/qt/_qiodevice.h: Removed.
14198 * src/kwq/qt/_qlist.h: Removed.
14199 * src/kwq/qt/_qmap.cpp: Removed.
14200 * src/kwq/qt/_qmap.h: Removed.
14201 * src/kwq/qt/_qpoint.cpp: Removed.
14202 * src/kwq/qt/_qpoint.h: Removed.
14203 * src/kwq/qt/_qptrdict.h: Removed.
14204 * src/kwq/qt/_qrect.cpp: Removed.
14205 * src/kwq/qt/_qrect.h: Removed.
14206 * src/kwq/qt/_qregexp.cpp: Removed.
14207 * src/kwq/qt/_qregexp.h: Removed.
14208 * src/kwq/qt/_qregion.cpp: Removed.
14209 * src/kwq/qt/_qregion.h: Removed.
14210 * src/kwq/qt/_qshared.h: Removed.
14211 * src/kwq/qt/_qsize.cpp: Removed.
14212 * src/kwq/qt/_qsize.h: Removed.
14213 * src/kwq/qt/_qsortedlist.h: Removed.
14214 * src/kwq/qt/_qstack.h: Removed.
14215 * src/kwq/qt/_qstring.cpp: Removed.
14216 * src/kwq/qt/_qstring.h: Removed.
14217 * src/kwq/qt/_qstringlist.cpp: Removed.
14218 * src/kwq/qt/_qstringlist.h: Removed.
14219 * src/kwq/qt/_qstrlist.h: Removed.
14220 * src/kwq/qt/_qtextcodec.h: Removed.
14221 * src/kwq/qt/_qtextstream.h: Removed.
14222 * src/kwq/qt/_qtl.h: Removed.
14223 * src/kwq/qt/_qurl.cpp: Removed.
14224 * src/kwq/qt/_qurl.h: Removed.
14225 * src/kwq/qt/_qvaluelist.h: Removed.
14226 * src/kwq/qt/_qvector.h: Removed.
14228 2002-03-26 Kenneth Kocienda <kocienda@apple.com>
14232 2002-03-26 Darin Adler <darin@apple.com>
14234 * src/kwq/KWQKjobclasses.mm: (TransferJobPrivate::TransferJobPrivate):
14235 Nil out the handle so we don't autorelease garbage.
14237 * src/kwq/KWQKloader.mm:
14238 (-[URLLoadClient IFURLHandleResourceDidCancelLoading:]),
14239 (-[URLLoadClient IFURLHandleResourceDidFinishLoading:data:]),
14240 (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
14241 Delete the job instead of just autoreleasing the sender. Fixes a leak.
14243 2002-03-26 Richard Williamson <rjw@apple.com>
14245 Fixed leak of decoder. This caused us to leak the entire
14246 document text for every load!
14248 * src/kwq/KWQKHTMLPart.mm:
14250 2002-03-26 Darin Adler <darin@apple.com>
14252 * src/kdelibs/khtml/rendering/render_list.cpp: (RenderListItem::setStyle):
14253 Fix a leak (missing delete).
14255 * src/kwq/KWQMetrics.h:
14256 * src/kwq/KWQFontMetrics.mm:
14257 (-[KWQLayoutInfo drawString:atPoint:withFont:color:]): Don't bother keeping things
14258 around that we only need to use once.
14259 (-[KWQLayoutInfo _initializeCaches]): Create them here instead.
14260 (-[KWQLayoutInfo dealloc]): Don't need to free them here.
14262 2002-03-26 Darin Adler <darin@apple.com>
14264 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo dealloc]): Free the
14265 style groups, styles, and glyph vectors.
14267 * src/kwq/KWQFont.mm: (QFont::getFont): Use default font if we can't
14268 find a font from the passed-in family. Before, we were raising an
14269 exception and quitting the application.
14271 * src/kwq/KWQCString.mm: (QCString::isEmpty): Faster version that
14272 doesn't call strlen.
14274 2002-03-25 Richard Williamson <rjw@apple.com>
14276 Removed conditional check that prevent layout of iframes. I don't
14277 understand why the check was being done.
14279 * src/kdelibs/khtml/rendering/render_flow.cpp: (RenderFlow::layout):
14281 2002-03-25 Maciej Stachowiak <mjs@apple.com>
14283 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::slotData): Use
14284 -[IFURLHandle characterSet] to get the character set, instead of
14285 parsing it out of the header by hand.
14287 2002-03-25 Chris Blumenberg <cblu@apple.com>
14289 * src/kwq/WCPlugin.mm: (-[WCPlugin load]):
14291 Temporary special case workaround for this Java plug-in bug:
14294 2002-03-25 Maciej Stachowiak <mjs@apple.com>
14296 Improved KURL performance:
14298 * src/kwq/kdecore/kurl.h, src/kwq/KWQKURL.mm:
14299 (KURL::normalizeURLString): New function to cache rewritten URL
14301 (RelativeURLKeyRetainCallBack, RelativeURLKeyReleaseCallBack,
14302 RelativeURLKeyCopyDescriptionCallBack,
14303 RelativeURLKeyEqualCallBack, RelativeURLKeyHashCallBack,
14304 KURL::normalizeRelativeURLString): Cache results of relative URL
14306 (KURL::clearCaches): function to clear the caches so they don't
14308 (KURL::KURL): Set nothing but the string at construction time.
14309 (KURL::isEmpty, KURL::isMalformed, KURL::hasPath, KURL::url,
14310 KURL::protocol, KURL::host, KURL::port, KURL::pass, KURL::user,
14311 KURL::ref, KURL::query, KURL::path, KURL::setProtocol,
14312 KURL::setHost, KURL::setPort, KURL::setRef, KURL::setQuery,
14313 KURL::setPath, KURL::prettyURL, KURL::copyOnWrite, KURL::parse,
14314 KURL::assemble): Parse into parts on demand instead.
14315 (KURL::swap, KURL::operator=): Handle KURL's new urlString field.
14317 * src/kwq/KWQKloader.mm: (Cache::requestImage, Cache::requestStyleSheet,
14318 Cache::requestScript): Don't redundantly check if KURL isMalformed.
14320 * src/kwq/KWQKHTMLPart.mm (KHTMLPart::end): Clear KURL caches at
14321 the end of each page load.
14323 2002-03-24 Darin Adler <darin@apple.com>
14325 * src/kwq/KWQListImpl.mm: (KWQListImpl::getFirst), (KWQListImpl::getLast):
14326 Apparently getLast needs to handle cases where the list is empty. Since
14327 getFirst didn't handle it either, I added a check in both cases.
14329 2002-03-24 Darin Adler <darin@apple.com>
14331 Add tail pointer to KWQListImpl, since that shows up on so many profiles.
14333 * src/kwq/KWQListImpl.mm: (KWQListImpl::KWQListPrivate::copyList): Return
14334 a tail pointer too.
14335 (KWQListImpl::KWQListPrivate::KWQListPrivate): Set up tail pointer.
14336 (KWQListImpl::clear): Clean tail pointer too.
14337 (KWQListImpl::at): Special case the tail so we don't walk the whole list
14338 when we ask for the last element.
14339 (KWQListImpl::insert): Update the tail node to when inserting. Also add
14340 a special case for adding at the end so we don't walk the whole list.
14341 (KWQListImpl::remove): Update the tail node. Also, use at() in the index-
14342 based remove so we don't ahve to replicate the logic about finding a
14343 node with the special case for the tail.
14344 (KWQListImpl::getLast): Trivial now.
14345 (KWQListImpl::last): Trivial now.
14346 (KWQListIteratorImpl::toLast): Trivial now.
14348 * src/kwq/KWQString.mm: (QString::operator=): Remove unneeded line of code.
14350 2002-03-24 Richard Williamson <rjw@apple.com>
14352 A number of fixes to support non-latin1 decoding
14353 and font measurement/drawing.
14355 * src/kwq/KWQFontMetrics.mm: (_rectForString):
14356 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::slotData):
14357 * src/kwq/KWQMetrics.h:
14359 2002-03-24 Richard Williamson <rjw@apple.com>
14361 Cached available families from NSFontManager.
14362 http://www.gamespy.com/gdc2002/okamoto went from 4.8 seconds
14363 to 0.7 seconds. [Do we need to worry about updating the cache if
14364 the available fonts change?]
14366 * src/kwq/KWQKHTMLSettings.mm: (KHTMLSettings::availableFamilies):
14368 2002-03-24 Richard Williamson <rjw@apple.com>
14370 Fixed big leak in QString assignment operator.
14371 Updated comments. Removed old fprintfs.
14372 Added some frame debugging logs.
14374 * src/kwq/KWQFontMetrics.mm: (_rectForString):
14375 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::openURL), (KHTMLPart::requestFrame):
14376 * src/kwq/KWQScrollView.mm: (QScrollView::addChild),
14377 (QScrollView::resizeContents), (QScrollView::updateContents),
14378 (QScrollView::repaintContents):
14379 * src/kwq/KWQString.mm: (QString::operator=):
14380 * src/kwq/kwqdebug.h:
14382 2002-03-23 Darin Adler <darin@apple.com>
14384 Fixed problem with extra empty items in menus.
14386 * src/kwq/KWQComboBox.mm: (QComboBox::insertItem): Add back logic that puts
14387 an item in a certain position. Even though this is called insertItem, the
14388 behavior is to replace an item at a certain position.
14389 * src/kwq/KWQKComboBox.mm: (KComboBox::setSize): No need to fill the
14390 array with empty strings; just a waste of time based on how we do things.
14392 2002-03-22 Darin Adler <darin@apple.com>
14394 * src/kdelibs/khtml/java/Makefile.am:
14395 * src/kdelibs/khtml/java/tests/.cvsignore:
14396 * src/kdelibs/khtml/java/tests/Makefile.am:
14397 Remove empty test subdirectory.
14399 * src/kdelibs/kjs/.cvsignore: Ignore kjs-test output.
14401 2002-03-22 Maciej Stachowiak <mjs@apple.com>
14403 Fix some things that were making automake complain.
14405 * src/kdelibs/kjs/Makefile.am:
14406 * src/kwq/Makefile.am:
14408 2002-03-22 Darin Adler <darin@apple.com>
14410 * src/kdelibs/khtml/css/cssstyleselector.cpp: (khtml::applyRule):
14411 Fix boolean logic mistake from the original KDE sources.
14413 2002-03-22 Darin Adler <darin@apple.com>
14415 Finally giving up on the complete QString rewrite after doing it 3 times,
14416 Darin checks in some improvements for the old QString. This makes a QString
14417 be 8 bytes instead of 12, and improves a few other details. No dramatic
14418 speedups, but no slowdown either.
14420 * src/kwq/qt/qstring.h:
14421 * src/kwq/KWQString.mm:
14422 (QString::QString), (QString::~QString), (QString::operator=),
14423 (QString::unicode), (QString::latin1): Store the cache type inside the cache.
14424 (QString::copy): No need to deep copy here.
14425 (QString::simplifyWhiteSpace): Use CFStringInlineBuffer.
14426 (QString::insert): Fix single-character insertions so they don't create and
14427 destroy a mutable CFStringRef every time.
14428 (QString::operator+=): Call the appropriate insert function.
14429 (QString::flushCache): Store cache type inside cache.
14430 (QString::compareToLatin1): Use CFStringInlineBuffer.
14431 (operator==): Use CFStringInlineBuffer.
14432 (QConstString::QConstString): Store the cache type inside the cache.
14434 2002-03-22 John Sullivan <sullivan@apple.com>
14436 Made changing font sizes work immediately (other than an
14439 * src/kwq/KWQKHTMLSettings.mm:
14440 (KHTMLSettings::KHTMLSettings),
14441 (KHTMLSettings::fontSizes): Moved defaults-fetching code from
14442 constructor to accessor, so it doesn't get out of synch with
14443 preference changes.
14445 * src/kwq/khtml/khtml_settings.h: Added "mutable" keyword
14446 to declaration of m_fontSizes, so the other change would compile.
14448 2002-03-22 Kenneth Kocienda <kocienda@apple.com>
14450 Moved KWQKloader to the new thread-safe API for accessing handle attributes.
14452 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]),
14453 (-[URLLoadClient IFURLHandleResourceDidCancelLoading:]), (-[URLLoadClient
14454 IFURLHandleResourceDidFinishLoading:data:]), (-[URLLoadClient
14455 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[URLLoadClient
14456 IFURLHandle:resourceDidFailLoadingWithResult:]):
14458 2002-03-22 Richard Williamson <rjw@apple.com>
14460 Fixed subtle measurement problems. These were most evident of pages
14461 that had lots of rounding deviation. My assumptions about being able to
14462 round glyph advances was incorrect. We must pay the expense of a float addition,
14463 instead of integer addition. This slows down our inner loop. Oh well,
14464 we're still very fast.
14466 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo
14467 drawString:atPoint:withFont:color:]), (-[KWQLayoutInfo
14468 drawUnderlineForString:atPoint:withFont:color:]), (-[KWQLayoutInfo
14469 _initializeCaches]), (_rectForString), (QFontMetrics::width),
14470 (QFontMetrics::size):
14471 * src/kwq/KWQMetrics.h:
14473 2002-03-22 Maciej Stachowiak <mjs@apple.com>
14475 Fixed the following post-merge crashers:
14477 2885602 - Alexander crashes when clicking on a particular link in Google groups
14478 2885564 - Alexander crashes on load failures
14480 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::~KHTMLView): Fix
14481 Radar 2885602 by detaching the document from the view when the
14482 view is destroyed. This was making the document reference a
14483 destroyed view later.
14485 * src/kwq/KWQKHTMLPart.mm:
14486 (KHTMLPart::~KHTMLPart): Fix Radar 2885564 by checking if m_doc is
14487 NULL, since it's now inititally set to NULL.
14488 (KHTMLPart::KHTMLPart, KHTMLPart::init): Formatting tweaks.
14490 2002-03-20 Maciej Stachowiak <mjs@apple.com>
14492 Merged the following changes from LABYRINTH_KDE_3_MERGE branch:
14494 2002-03-20 Maciej Stachowiak <mjs@apple.com>
14496 * src/kdelibs/khtml/rendering/render_applet.cpp:
14497 (RenderApplet::RenderApplet): Handle Java parameters properly,
14498 with Chris's assistance.
14500 2002-03-20 Maciej Stachowiak <mjs@apple.com>
14502 Merged accumlated changes from HEAD, up to
14503 MERGED_TO_KDE_3_MERGE_BRANCH tag.
14505 2002-03-19 Maciej Stachowiak <mjs@apple.com>
14507 Fixed two more crashers. Tree now looks pretty stable.
14509 * src/kdelibs/khtml/html/html_objectimpl.cpp:
14510 (HTMLObjectElementImpl::detach): Don't send an unload event, that
14511 needs the view to be a live, which it won't be when the DOM is
14514 * src/kwq/KWQListImpl.mm: (KWQListImpl::getFirst): Return
14515 d->head->data, not d->head. Whoops!
14517 2002-03-19 Maciej Stachowiak <mjs@apple.com>
14519 Fixed two crashers:
14521 * src/kdelibs/khtml/rendering/render_object.h: Don't attempt to
14522 schedule a relayout ever. We control layout timing. This was
14523 resulting in calls on destroyed/trashed objects before.
14525 * src/kdelibs/khtml/xml/dom_nodeimpl.cpp:
14526 (NodeImpl::dispatchEvent): Check if view()->part() is NULL (looks
14527 like a bug in the KDE code that this wasn't checked).
14529 2002-03-19 Maciej Stachowiak <mjs@apple.com>
14531 Changes needed to get WebCore to link: implement all the missing functions.
14533 * src/kdelibs/khtml/html/htmltokenizer.cpp: (HTMLTokenizer::end):
14534 * src/kdelibs/khtml/xml/xml_tokenizer.cpp: (XMLTokenizer::end):
14535 * src/kdelibs/khtml/xml/xml_tokenizer.h:
14536 * src/kwq/KWQApplication.mm: (QApplication::_initialize),
14537 (QApplication::focusWidget):
14538 * src/kwq/KWQColorGroup.mm: (QColorGroup::operator==):
14539 * src/kwq/KWQComboBox.mm: (QComboBox::currentItem):
14540 * src/kwq/KWQCursor.mm: (QCursor::operator=), (QCursor::handle):
14541 * src/kwq/KWQEvent.mm: (QMouseEvent::QMouseEvent), (QKeyEvent::isAutoRepeat),
14542 (QKeyEvent::text), (QKeyEvent::ascii), (QKeyEvent::count),
14543 (QKeyEvent::isAccepted), (QCustomEvent::QCustomEvent),
14544 (QContextMenuEvent::QContextMenuEvent), (QContextMenuEvent::globalPos),
14545 (QContextMenuEvent::reason), (QContextMenuEvent::state), (QContextMenuEvent::x),
14546 (QContextMenuEvent::y):
14547 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::boundingRect):
14548 * src/kwq/KWQKCursor.mm: (KCursor::whatsThisCursor):
14549 * src/kwq/KWQKDebug.mm: (kdBacktrace):
14550 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::metaRefreshEnabled),
14551 (KHTMLPart::executeScript), (KHTMLPart::requestObject),
14552 (KHTMLPart::setJSDefaultStatusBarText), (KHTMLPart::referrer),
14553 (KHTMLPart::lastModified):
14554 * src/kwq/KWQKMimeType.mm: (KMimeType::comment), (KMimeType::mimeType),
14555 (KMimeType::defaultMimeType):
14556 * src/kwq/KWQKPrinter.mm: (KPrinter::KPrinter):
14557 * src/kwq/KWQKProtocolManager.mm: (KProtocolManager::proxyFor):
14558 * src/kwq/KWQKstddirs.mm: (KStandardDirs::saveLocation):
14559 * src/kwq/KWQLineEdit.mm: (QLineEdit::edited), (QLineEdit::setEdited):
14560 * src/kwq/KWQListImpl.h:
14561 * src/kwq/KWQListImpl.mm: (KWQListImpl::getFirst), (KWQListImpl::take):
14562 * src/kwq/KWQMapImpl.h:
14563 * src/kwq/KWQMapImpl.mm: (KWQMapImpl::removeEqualInternal):
14564 * src/kwq/KWQNSTextField.h:
14565 * src/kwq/KWQNSTextField.mm: (-[KWQNSTextField edited]), (-[KWQNSTextField
14566 setEdited:]), (-[KWQNSTextField textDidChange:]):
14567 * src/kwq/KWQObject.mm: (QObject::eventFilter):
14568 * src/kwq/KWQPainter.mm: (QPainter::drawConvexPolygon), (QPainter::drawText):
14569 * src/kwq/KWQPalette.mm: (QPalette::operator==):
14570 * src/kwq/KWQRadioButton.mm: (QRadioButton::isChecked):
14571 * src/kwq/KWQRect.mm: (QRect::isEmpty), (QRect::intersect), (QRect::unite):
14572 * src/kwq/KWQRegion.mm: (QRegion::translate), (QRegion::boundingRect):
14573 * src/kwq/KWQScrollView.mm: (QScrollView::updateContents):
14574 * src/kwq/KWQString.mm: (QString::endsWith):
14575 * src/kwq/KWQStyle.h:
14576 * src/kwq/KWQTextArea.h:
14577 * src/kwq/KWQTextArea.mm: (-[KWQTextArea paragraphs]), (RangeOfParagraph),
14578 (-[KWQTextArea paragraphLength:]), (-[KWQTextArea textForParagraph:]),
14579 (-[KWQTextArea lineOfCharAtIndex:inParagraph:]), (-[KWQTextArea
14580 getCursorPositionAsIndex:inParagraph:]), (-[KWQTextArea
14581 setCursorPositionToIndex:inParagraph:]):
14582 * src/kwq/KWQTextEdit.mm: (QMultiLineEdit::QMultiLineEdit), (KEdit::KEdit),
14583 (KEdit::~KEdit), (QTextEdit::QTextEdit), (QTextEdit::setText), (QTextEdit::text),
14584 (QTextEdit::paragraphs), (QTextEdit::paragraphLength), (QTextEdit::lineOfChar),
14585 (QTextEdit::getCursorPosition), (QTextEdit::setCursorPosition),
14586 (QTextEdit::wordWrap), (QTextEdit::setWordWrap), (QTextEdit::setTextFormat),
14587 (QTextEdit::isReadOnly), (QTextEdit::setReadOnly), (QTextEdit::selectAll):
14588 * src/kwq/KWQVectorImpl.mm: (KWQVectorImpl::at), (KWQVectorImpl::data):
14589 * src/kwq/KWQWidget.mm: (QWidget::frameGeometry), (QWidget::cursor),
14590 (QWidget::unsetCursor):
14591 * src/kwq/KWQbrowserextension.mm:
14592 * src/kwq/KWQtextstream.mm: (QTextStream::QTextStream),
14593 (QTextStream::operator<<), (endl):
14594 * src/kwq/KWQxml.mm: (QXmlAttributes::uri), (QXmlParseException::lineNumber):
14595 * src/kwq/Makefile.am:
14596 * src/kwq/kdecore/kstandarddirs.h:
14597 * src/kwq/kdecore/kstaticdeleter.h:
14598 * src/kwq/kdeui/keditcl.h:
14599 * src/kwq/kio/kmimetype.h:
14600 * src/kwq/qt/qarray.h:
14601 * src/kwq/qt/qevent.h:
14602 * src/kwq/qt/qlist.h:
14603 * src/kwq/qt/qmap.h:
14604 * src/kwq/qt/qpalette.h:
14605 * src/kwq/qt/qptrqueue.h:
14606 * src/kwq/qt/qscrollview.h:
14607 * src/kwq/qt/qstring.h:
14608 * src/kwq/qt/qtextedit.h:
14610 2002-03-18 Maciej Stachowiak <mjs@apple.com>
14612 Changes needed to get kwq compiling (doesn't link yet, though).
14614 * src/kdelibs/khtml/misc/loader.h:
14615 * src/kdelibs/khtml/xml/dom_elementimpl.h:
14616 * src/kwq/KWQCollection.mm: (QPtrCollection::QPtrCollection),
14617 (QPtrCollection::operator=), (QPtrCollection::~QPtrCollection),
14618 (QPtrCollection::autoDelete), (QPtrCollection::setAutoDelete):
14619 * src/kwq/KWQEvent.mm: (QKeyEvent::QKeyEvent):
14620 * src/kwq/KWQIcon.h:
14621 * src/kwq/KWQKHTMLFactory.mm:
14622 * src/kwq/KWQKHTMLPart.h:
14623 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::KHTMLPart), (KHTMLPart::slotData),
14624 (KHTMLPart::begin), (KHTMLPart::write), (KHTMLPart::checkCompleted),
14625 (KHTMLPart::settings), (KHTMLPart::completeURL), (KHTMLPart::encoding),
14626 (KHTMLPart::overURL), (KHTMLPart::urlSelected), (KHTMLPart::requestObject),
14627 (KHTMLPart::frames), (KHTMLPart::event):
14628 * src/kwq/KWQKHTMLSettings.mm: (KHTMLSettings::KHTMLSettings),
14629 (KHTMLSettings::availableFamilies):
14630 * src/kwq/KWQKProcess.mm: (KProcess::args):
14631 * src/kwq/KWQKloader.mm: (CachedImage::CachedImage), (CachedImage::movieStatus),
14632 (DocLoader::DocLoader), (Loader::load), (Loader::servePendingRequests),
14633 (Loader::slotFinished), (Cache::requestScript):
14634 * src/kwq/KWQPainter.mm: (QPainter::save):
14635 * src/kwq/KWQPointArray.mm: (QPointArray::setPoint):
14636 * src/kwq/KWQValueListImpl.mm: (KWQValueListImpl::removeEqualNodes),
14637 (KWQValueListImpl::containsEqualNodes):
14638 * src/kwq/KWQView.mm: (-[KWQHTMLView layout]):
14639 * src/kwq/KWQsignals.mm: (khtml::Loader::requestDone),
14640 (khtml::Loader::requestFailed):
14641 * src/kwq/kdecore/kiconloader.h:
14642 * src/kwq/kparts/browserextension.h:
14643 * src/kwq/qt/qmovie.h:
14645 2002-03-16 Maciej Stachowiak <mjs@apple.com>
14647 Updated to get khtml to compile. Changes included updating our
14648 headers for new classes, new methods, header name changes, etc, as
14649 well as occasionally commenting out or replacing portions of the
14650 khtml code with #if APPLE_CHANGES, and adding new files from the
14651 kde3 sources when appropriate. Also commit some kjs files that I
14652 forgot to cvs add before.
14654 * src/kdelibs/khtml/css/css_valueimpl.cpp:
14655 (CSSStyleDeclarationImpl::getPropertyCSSValue):
14656 * src/kdelibs/khtml/css/cssparser.cpp: (StyleBaseImpl::parseContent):
14657 * src/kdelibs/khtml/css/cssstyleselector.cpp:
14658 (CSSStyleSelector::CSSStyleSelector), (khtml::applyRule):
14659 * src/kdelibs/khtml/ecma/.cvsignore:
14660 * src/kdelibs/khtml/ecma/Makefile.am:
14661 * src/kdelibs/khtml/ecma/kjs_debugwin.h:
14662 * src/kdelibs/khtml/ecma/kjs_dom.cpp: (DOMNode::toString):
14663 * src/kdelibs/khtml/ecma/kjs_dom.h:
14664 * src/kdelibs/khtml/ecma/kjs_window.cpp:
14665 * src/kdelibs/khtml/html/html_documentimpl.cpp: (HTMLDocumentImpl::cookie),
14666 (HTMLDocumentImpl::setCookie):
14667 * src/kdelibs/khtml/html/html_formimpl.cpp:
14668 (HTMLKeygenElementImpl::HTMLKeygenElementImpl),
14669 (HTMLKeygenElementImpl::encoding):
14670 * src/kdelibs/khtml/java/kjavaprocess.cpp: (KJavaProcess::invokeJVM):
14671 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::contentsContextMenuEvent):
14672 * src/kdelibs/khtml/misc/loader.h:
14673 * src/kdelibs/khtml/rendering/render_box.cpp: (RenderBox::calcReplacedWidth):
14674 * src/kdelibs/khtml/rendering/render_form.cpp: (RenderTextArea::calcMinMaxWidth):
14675 * src/kdelibs/khtml/rendering/render_image.cpp: (RenderImage::printObject):
14676 * src/kdelibs/khtml/rendering/render_text.cpp: (RenderText::nodeAtPoint):
14677 * src/kdelibs/khtml/xml/dom_docimpl.cpp: (DocumentImpl::close):
14678 * src/kdelibs/khtml/xml/dom_elementimpl.cpp:
14679 (ElementImpl::dispatchAttrRemovalEvent),
14680 (ElementImpl::dispatchAttrAdditionEvent):
14681 * src/kdelibs/kjs/interpreter.cpp: (Context::Context), (Context::operator=),
14682 (Context::~Context), (Context::isNull), (Context::imp), (Context::scopeChain),
14683 (Context::variableObject), (Context::thisValue), (Context::callingContext),
14684 (Interpreter::Interpreter), (Interpreter::~Interpreter),
14685 (Interpreter::globalObject), (Interpreter::globalExec),
14686 (Interpreter::checkSyntax), (Interpreter::evaluate), (Interpreter::imp),
14687 (Interpreter::builtinObject), (Interpreter::builtinFunction),
14688 (Interpreter::builtinArray), (Interpreter::builtinBoolean),
14689 (Interpreter::builtinString), (Interpreter::builtinNumber),
14690 (Interpreter::builtinDate), (Interpreter::builtinRegExp),
14691 (Interpreter::builtinError), (Interpreter::builtinObjectPrototype),
14692 (Interpreter::builtinFunctionPrototype), (Interpreter::builtinArrayPrototype),
14693 (Interpreter::builtinBooleanPrototype), (Interpreter::builtinStringPrototype),
14694 (Interpreter::builtinNumberPrototype), (Interpreter::builtinDatePrototype),
14695 (Interpreter::builtinRegExpPrototype), (Interpreter::builtinErrorPrototype),
14696 (Interpreter::builtinEvalError), (Interpreter::builtinRangeError),
14697 (Interpreter::builtinReferenceError), (Interpreter::builtinSyntaxError),
14698 (Interpreter::builtinTypeError), (Interpreter::builtinURIError),
14699 (Interpreter::builtinEvalErrorPrototype),
14700 (Interpreter::builtinRangeErrorPrototype),
14701 (Interpreter::builtinReferenceErrorPrototype),
14702 (Interpreter::builtinSyntaxErrorPrototype),
14703 (Interpreter::builtinTypeErrorPrototype),
14704 (Interpreter::builtinURIErrorPrototype), (Interpreter::setCompatMode),
14705 (Interpreter::compatMode), (Interpreter::finalCheck), (ExecState::~ExecState),
14706 (ExecState::interpreter), (ExecState::context), (ExecState::setException),
14707 (ExecState::clearException), (ExecState::exception), (ExecState::hadException),
14708 (ExecState::ExecState):
14709 * src/kdelibs/kjs/property_map.cpp: (PropertyMapNode::setLeft),
14710 (PropertyMapNode::setRight), (PropertyMapNode::setParent),
14711 (PropertyMapNode::findMax), (PropertyMapNode::findMin), (PropertyMapNode::next),
14712 (KJS::uscompare), (PropertyMap::PropertyMap), (PropertyMap::~PropertyMap),
14713 (PropertyMap::put), (PropertyMap::remove), (PropertyMap::get),
14714 (PropertyMap::clear), (PropertyMap::dump), (PropertyMap::checkTree),
14715 (PropertyMap::getNode), (PropertyMap::first), (PropertyMap::balance),
14716 (PropertyMap::updateHeight), (PropertyMap::rotateRR), (PropertyMap::rotateLL),
14717 (PropertyMap::rotateRL), (PropertyMap::rotateLR):
14718 * src/kdelibs/kjs/property_map.h:
14719 * src/kdelibs/kjs/value.cpp: (ValueImp::ValueImp), (ValueImp::~ValueImp),
14720 (ValueImp::mark), (ValueImp::marked), (ValueImp::setGcAllowed),
14721 (ValueImp::operator new), (ValueImp::operator delete), (ValueImp::toInteger),
14722 (ValueImp::toInt32), (ValueImp::toUInt32), (ValueImp::toUInt16),
14723 (ValueImp::getBase), (ValueImp::getPropertyName), (ValueImp::getValue),
14724 (ValueImp::putValue), (KJS::operator==), (KJS::operator!=), (Value::Value),
14725 (Value::~Value), (Value::operator=), (Value::isNull), (Value::imp),
14726 (Value::type), (Value::isA), (Value::toPrimitive), (Value::toBoolean),
14727 (Value::toNumber), (Value::toInteger), (Value::toInt32), (Value::toUInt32),
14728 (Value::toUInt16), (Value::toString), (Value::toObject), (Value::getBase),
14729 (Value::getPropertyName), (Value::getValue), (Value::putValue),
14730 (Undefined::Undefined), (Undefined::~Undefined), (Undefined::operator=),
14731 (Undefined::dynamicCast), (Null::Null), (Null::~Null), (Null::operator=),
14732 (Null::dynamicCast), (Boolean::Boolean), (Boolean::~Boolean),
14733 (Boolean::operator=), (Boolean::value), (Boolean::dynamicCast), (String::String),
14734 (String::~String), (String::operator=), (String::value), (String::dynamicCast),
14735 (Number::Number), (Number::~Number), (Number::operator=), (Number::dynamicCast),
14736 (Number::value), (Number::intValue), (Number::isNaN), (Number::isInf):
14737 * src/kwq/KWQDef.h:
14738 * src/kwq/KWQInputDialog.mm: (QInputDialog::getText):
14739 * src/kwq/KWQKConfigBase.mm: (KConfig::KConfig):
14740 * src/kwq/KWQKHTMLPart.h:
14741 * src/kwq/KWQListImpl.h:
14742 * src/kwq/KWQMapImpl.h:
14743 * src/kwq/KWQMapImpl.mm: (KWQMapImpl::removeEqualInternal):
14744 * src/kwq/KWQStrList.h:
14745 * src/kwq/KWQStyle.h:
14746 * src/kwq/KWQValueListImpl.h:
14747 * src/kwq/KWQVectorImpl.h:
14748 * src/kwq/kdecore/kapplication.h:
14749 * src/kwq/kdecore/kconfig.h:
14750 * src/kwq/kdecore/kdebug.h:
14751 * src/kwq/kdecore/kprocess.h:
14752 * src/kwq/kdecore/kstandarddirs.h:
14753 * src/kwq/kdecore/kstaticdeleter.h:
14754 * src/kwq/kdeui/kaction.h:
14755 * src/kwq/kdeui/kcursor.h:
14756 * src/kwq/khtml/khtml_factory.h:
14757 * src/kwq/khtml/khtml_settings.h:
14758 * src/kwq/kio/global.h:
14759 * src/kwq/kio/kmimetype.h:
14760 * src/kwq/kio/kprinter.h:
14761 * src/kwq/kio/kprotocolmanager.h:
14762 * src/kwq/kparts/browserextension.h:
14763 * src/kwq/qt/qapplication.h:
14764 * src/kwq/qt/qarray.h:
14765 * src/kwq/qt/qcollection.h:
14766 * src/kwq/qt/qcombobox.h:
14767 * src/kwq/qt/qcstring.h:
14768 * src/kwq/qt/qcursor.h:
14769 * src/kwq/qt/qdict.h:
14770 * src/kwq/qt/qevent.h:
14771 * src/kwq/qt/qfontmetrics.h:
14772 * src/kwq/qt/qinputdialog.h:
14773 * src/kwq/qt/qlineedit.h:
14774 * src/kwq/qt/qlist.h:
14775 * src/kwq/qt/qmap.h:
14776 * src/kwq/qt/qmemarray.h:
14777 * src/kwq/qt/qnamespace.h:
14778 * src/kwq/qt/qobject.h:
14779 * src/kwq/qt/qpainter.h:
14780 * src/kwq/qt/qpalette.h:
14781 * src/kwq/qt/qpoint.h:
14782 * src/kwq/qt/qpointarray.h:
14783 * src/kwq/qt/qprinter.h:
14784 * src/kwq/qt/qptrdict.h:
14785 * src/kwq/qt/qptrlist.h:
14786 * src/kwq/qt/qptrqueue.h:
14787 * src/kwq/qt/qptrstack.h:
14788 * src/kwq/qt/qptrvector.h:
14789 * src/kwq/qt/qradiobutton.h:
14790 * src/kwq/qt/qrect.h:
14791 * src/kwq/qt/qregion.h:
14792 * src/kwq/qt/qscrollview.h:
14793 * src/kwq/qt/qsortedlist.h:
14794 * src/kwq/qt/qstack.h:
14795 * src/kwq/qt/qstring.h:
14796 * src/kwq/qt/qstylesheet.h:
14797 * src/kwq/qt/qtextedit.h:
14798 * src/kwq/qt/qtextstream.h:
14799 * src/kwq/qt/qvaluelist.h:
14800 * src/kwq/qt/qvector.h:
14801 * src/kwq/qt/qwidget.h:
14802 * src/kwq/qt/qxml.h:
14804 2002-03-14 Maciej Stachowiak <mjs@apple.com>
14806 Get kjs to compile and link by adding mssing files, setting up
14807 autogenerated files to autogenerate, and making a handful of minor
14808 tweaks. The test program passes. Yay!
14810 * src/kdelibs/kjs/Makefile.am:
14811 * src/kdelibs/kjs/create_hash_table:
14812 * src/kdelibs/kjs/global_object.cpp:
14813 * src/kdelibs/kjs/grammar.y:
14814 * src/kdelibs/kjs/interpreter.h:
14815 * src/kdelibs/kjs/keywords.table:
14816 * src/kdelibs/kjs/kjs.cpp:
14817 * src/kdelibs/kjs/kjs.h:
14818 * src/kdelibs/kjs/lexer.lut.h:
14819 * src/kdelibs/kjs/math_object.lut.h:
14820 * src/kdelibs/kjs/ustring.h:
14821 * src/kdelibs/kjs/value.h:
14822 * src/kdelibs/kjs/.cvsignore:
14824 2002-03-14 Maciej Stachowiak <mjs@apple.com>
14826 Hand-merge KDE3 beta 2 changes into this frankenstein file.
14828 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient setDataSource:]),
14829 (WCSetIFWebDataSourceMakeFunc), (WCSetIFErrorMakeFunc), (recursive),
14830 (encodingFromContentType), (splitUrlTarget), (KHTMLPart::KHTMLPart),
14831 (KHTMLPart::init), (KHTMLPart::~KHTMLPart), (KHTMLPart::browserExtension),
14832 (KHTMLPart::view), (KHTMLPart::setMetaRefreshEnabled), (KHTMLPart::jScript),
14833 (KHTMLPart::executeScript), (KHTMLPart::executeScheduledScript),
14834 (KHTMLPart::docImpl), (KHTMLPart::xmlDocImpl), (KHTMLPart::slotData),
14835 (KHTMLPart::begin), (KHTMLPart::write), (KHTMLPart::end),
14836 (KHTMLPart::checkCompleted), (KHTMLPart::settings), (KHTMLPart::completeURL),
14837 (KHTMLPart::scheduleRedirection), (KHTMLPart::setEncoding),
14838 (KHTMLPart::encoding), (KHTMLPart::gotoAnchor), (KHTMLPart::setFontSizes),
14839 (KHTMLPart::fontSizes), (KHTMLPart::onlyLocalReferences),
14840 (KHTMLPart::setOnlyLocalReferences), (KHTMLPart::findTextBegin),
14841 (KHTMLPart::findTextNext), (KHTMLPart::selectedText), (KHTMLPart::hasSelection),
14842 (KHTMLPart::selection), (KHTMLPart::setSelection), (KHTMLPart::overURL),
14843 (KHTMLPart::urlSelected), (KHTMLPart::requestFrame),
14844 (KHTMLPart::requestFrameName), (KHTMLPart::requestObject),
14845 (KHTMLPart::submitForm), (KHTMLPart::findFrame), (KHTMLPart::frameExists),
14846 (KHTMLPart::parentPart), (KHTMLPart::setJSStatusBarText),
14847 (KHTMLPart::setJSDefaultStatusBarText), (KHTMLPart::jsStatusBarText),
14848 (KHTMLPart::jsDefaultStatusBarText), (KHTMLPart::frames),
14849 (KHTMLPart::customEvent), (KHTMLPart::khtmlMousePressEvent):
14851 2002-03-13 Maciej Stachowiak <mjs@apple.com>
14853 Merge KDE3 beta 2 changes into this frankenstein file.
14855 * src/kwq/KWQKloader.mm: (CachedCSSStyleSheet::CachedCSSStyleSheet),
14856 (CachedCSSStyleSheet::ref), (CachedCSSStyleSheet::data),
14857 (CachedCSSStyleSheet::checkNotify), (CachedCSSStyleSheet::error),
14858 (CachedScript::CachedScript), (CachedScript::ref), (CachedScript::data),
14859 (CachedScript::checkNotify), (CachedScript::error), (CachedImage::CachedImage),
14860 (CachedImage::ref), (CachedImage::tiled_pixmap), (CachedImage::pixmap_size),
14861 (CachedImage::do_notify), (CachedImage::movieStatus), (CachedImage::movieResize),
14862 (CachedImage::setShowAnimations), (CachedImage::deleteMovie),
14863 (CachedImage::data), (Request::Request), (DocLoader::DocLoader),
14864 (DocLoader::requestImage), (DocLoader::requestStyleSheet),
14865 (DocLoader::requestScript), (DocLoader::setAutoloadImages),
14866 (DocLoader::setShowAnimations), (Loader::Loader), (Loader::~Loader),
14867 (Loader::load), (Loader::servePendingRequests), (Loader::slotFinished),
14868 (Loader::slotData), (Loader::numRequests), (Loader::cancelRequests),
14869 (Cache::init), (Cache::requestImage), (Cache::requestStyleSheet),
14870 (Cache::preloadStyleSheet), (Cache::requestScript), (Cache::preloadScript),
14873 2002-03-13 Maciej Stachowiak <mjs@apple.com>
14875 Clean up this frankenstein file in preparation for merging KDE
14878 * src/kwq/KWQKloader.mm: (CachedCSSStyleSheet::CachedCSSStyleSheet),
14879 (CachedScript::CachedScript), (CachedImage::CachedImage),
14880 (CachedImage::pixmap_size), (CachedImage::movieResize), (CachedImage::data),
14881 (DocLoader::DocLoader), (Loader::Loader), (Loader::~Loader), (Loader::load),
14882 (Loader::servePendingRequests), (Loader::slotFinished), (Loader::slotData),
14883 (Loader::numRequests), (Loader::cancelRequests), (Cache::requestImage),
14884 (Cache::requestStyleSheet), (Cache::requestScript), (Cache::flush):
14886 2002-03-13 Maciej Stachowiak <mjs@apple.com>
14888 Remove files from build that are no longer in KDE 3 beta 2:
14890 * src/kdelibs/khtml/ecma/Makefile.am:
14891 * src/kdelibs/khtml/ecma/kjs_text.cpp:
14892 * src/kdelibs/khtml/ecma/kjs_text.h:
14893 * src/kdelibs/khtml/misc/Makefile.am:
14894 * src/kdelibs/khtml/misc/font.cpp:
14895 * src/kdelibs/khtml/misc/font.h:
14896 * src/kdelibs/khtml/rendering/Makefile.am:
14897 * src/kdelibs/khtml/rendering/render_hr.cpp:
14898 * src/kdelibs/khtml/rendering/render_hr.h:
14900 2002-03-08 Don Melton <gramps@apple.com>
14902 Merged kdelibs from KDE 3 beta 2 into our 2.2.1-based sources.
14904 * src/kdelibs/kdecore/kentities.gperf:
14905 * src/kdelibs/khtml/css/css_ruleimpl.cpp: (CSSRuleImpl::CSSRuleImpl),
14906 (CSSRuleImpl::cssText), (CSSCharsetRuleImpl::CSSCharsetRuleImpl),
14907 (CSSImportRuleImpl::CSSImportRuleImpl), (CSSImportRuleImpl::~CSSImportRuleImpl),
14908 (CSSImportRuleImpl::setStyleSheet), (CSSImportRuleImpl::init),
14909 (CSSMediaRuleImpl::CSSMediaRuleImpl), (CSSMediaRuleImpl::~CSSMediaRuleImpl),
14910 (CSSMediaRuleImpl::cssRules), (CSSMediaRuleImpl::appendRule),
14911 (CSSMediaRuleImpl::insertRule), (CSSMediaRuleImpl::deleteRule),
14912 (CSSRuleListImpl::~CSSRuleListImpl), (CSSPageRuleImpl::selectorText),
14913 (CSSStyleRuleImpl::selectorText), (CSSStyleRuleImpl::setSelector),
14914 (CSSUnknownRuleImpl::~CSSUnknownRuleImpl), (CSSRuleListImpl::CSSRuleListImpl),
14915 (CSSRuleListImpl::length), (CSSRuleListImpl::item),
14916 (CSSRuleListImpl::deleteRule), (CSSRuleListImpl::insertRule):
14917 * src/kdelibs/khtml/css/css_ruleimpl.h:
14918 * src/kdelibs/khtml/css/css_stylesheetimpl.cpp: (StyleSheetImpl::setMedia),
14919 (CSSStyleSheetImpl::CSSStyleSheetImpl), (CSSStyleSheetImpl::parseString),
14920 (StyleSheetListImpl::~StyleSheetListImpl), (StyleSheetListImpl::length),
14921 (StyleSheetListImpl::item), (MediaListImpl::MediaListImpl),
14922 (MediaListImpl::contains), (MediaListImpl::item), (MediaListImpl::deleteMedium),
14923 (MediaListImpl::appendMedium), (MediaListImpl::setMediaText):
14924 * src/kdelibs/khtml/css/css_stylesheetimpl.h:
14925 * src/kdelibs/khtml/css/css_valueimpl.cpp:
14926 (CSSStyleDeclarationImpl::CSSStyleDeclarationImpl),
14927 (CSSStyleDeclarationImpl::getPropertyCSSValue),
14928 (CSSStyleDeclarationImpl::removeProperty),
14929 (CSSStyleDeclarationImpl::setProperty),
14930 (CSSStyleDeclarationImpl::setLengthProperty), (CSSStyleDeclarationImpl::item),
14931 (CSSValueListImpl::cssValueType), (CSSPrimitiveValueImpl::cssValueType),
14932 (CSSImageValueImpl::CSSImageValueImpl),
14933 (FontFamilyValueImpl::FontFamilyValueImpl):
14934 * src/kdelibs/khtml/css/css_valueimpl.h:
14935 * src/kdelibs/khtml/css/csshelper.cpp: (khtml::computeLengthFloat),
14936 (khtml::setFontSize):
14937 * src/kdelibs/khtml/css/csshelper.h:
14938 * src/kdelibs/khtml/css/cssparser.cpp: (StyleBaseImpl::baseURL),
14939 (StyleBaseImpl::parseAtRule), (StyleBaseImpl::parseSelector2),
14940 (StyleBaseImpl::parseSelector), (StyleBaseImpl::parseProperty),
14941 (StyleBaseImpl::parseProperties), (StyleBaseImpl::parseFont),
14942 (StyleBaseImpl::parseValue), (StyleBaseImpl::setParsedValue),
14943 (StyleBaseImpl::parseShortHand), (StyleBaseImpl::parseBackgroundPosition),
14944 (StyleBaseImpl::parseContent), (StyleBaseImpl::splitContent),
14945 (StyleBaseImpl::splitShorthandProperties), (StyleBaseImpl::parse2Values),
14946 (StyleBaseImpl::parse4Values), (StyleBaseImpl::parseUnit),
14947 (StyleBaseImpl::parseStyleRule), (StyleBaseImpl::preprocess),
14948 (CSSSelector::specificity):
14949 * src/kdelibs/khtml/css/cssparser.h:
14950 * src/kdelibs/khtml/css/cssproperties.in:
14951 * src/kdelibs/khtml/css/cssstyleselector.cpp:
14952 (CSSStyleSelector::CSSStyleSelector), (CSSStyleSelector::addSheet),
14953 (CSSStyleSelector::loadDefaultStyle), (CSSStyleSelector::clear),
14954 (CSSStyleSelector::styleForElement), (CSSStyleSelector::addInlineDeclarations),
14955 (CSSStyleSelector::checkSelector), (CSSStyleSelector::checkOneSelector),
14956 (CSSStyleSelector::buildLists), (CSSStyleSelectorList::CSSStyleSelectorList),
14957 (CSSStyleSelectorList::append), (CSSStyleSelectorList::collect),
14958 (CSSOrderedPropertyList::compareItems), (CSSOrderedPropertyList::append),
14959 (convertToLength), (khtml::applyRule):
14960 * src/kdelibs/khtml/css/cssstyleselector.h:
14961 * src/kdelibs/khtml/css/cssvalues.in:
14962 * src/kdelibs/khtml/css/html4.css:
14963 * src/kdelibs/khtml/css/makeprop:
14964 * src/kdelibs/khtml/css/makevalues:
14965 * src/kdelibs/khtml/dom/css_rule.cpp: (CSSRuleList::CSSRuleList):
14966 * src/kdelibs/khtml/dom/css_rule.h:
14967 * src/kdelibs/khtml/dom/css_stylesheet.cpp: (MediaList::length),
14968 (MediaList::item), (MediaList::deleteMedium), (MediaList::appendMedium):
14969 * src/kdelibs/khtml/dom/css_stylesheet.h:
14970 * src/kdelibs/khtml/dom/css_value.cpp: (CSSStyleDeclaration::getPropertyValue),
14971 (CSSStyleDeclaration::getPropertyCSSValue),
14972 (CSSStyleDeclaration::removeProperty),
14973 (CSSStyleDeclaration::getPropertyPriority), (CSSStyleDeclaration::setProperty),
14974 (CSSPrimitiveValue::setFloatValue):
14975 * src/kdelibs/khtml/dom/css_value.h:
14976 * src/kdelibs/khtml/dom/dom2_events.cpp: (Event::type), (Event::eventModuleName):
14977 * src/kdelibs/khtml/dom/dom2_events.h:
14978 * src/kdelibs/khtml/dom/dom2_range.cpp:
14979 * src/kdelibs/khtml/dom/dom2_range.h:
14980 * src/kdelibs/khtml/dom/dom2_traversal.cpp:
14981 * src/kdelibs/khtml/dom/dom2_traversal.h:
14982 * src/kdelibs/khtml/dom/dom2_views.cpp: (AbstractView::document),
14983 (AbstractView::getComputedStyle):
14984 * src/kdelibs/khtml/dom/dom2_views.h:
14985 * src/kdelibs/khtml/dom/dom_core.h:
14986 * src/kdelibs/khtml/dom/dom_doc.cpp: (DOMImplementation::hasFeature),
14987 (DOMImplementation::createDocumentType), (DOMImplementation::createDocument),
14988 (DOMImplementation::createHTMLDocument), (DOMImplementation::getInterface),
14989 (DOMImplementation::createCSSStyleSheet), (Document::Document),
14990 (Document::operator = ), (Document::createAttribute),
14991 (Document::createAttributeNS), (Document::getElementById),
14992 (Document::getElementsByTagName), (Document::getElementsByTagNameNS),
14993 (Document::importNode), (Document::isHTMLDocument), (Document::createRange),
14994 (Document::completeURL), (DocumentFragment::operator = ),
14995 (DocumentType::DocumentType), (DocumentType::operator = ), (DocumentType::name),
14996 (DocumentType::entities), (DocumentType::notations), (DocumentType::publicId),
14997 (DocumentType::systemId), (DocumentType::internalSubset):
14998 * src/kdelibs/khtml/dom/dom_doc.h:
14999 * src/kdelibs/khtml/dom/dom_element.cpp: (Attr::operator = ), (Attr::name),
15000 (Attr::ownerElement), (Attr::value), (Attr::setValue), (Element::operator = ),
15001 (Element::tagName), (Element::getAttribute), (Element::setAttribute),
15002 (Element::removeAttribute), (Element::getAttributeNode),
15003 (Element::setAttributeNode), (Element::removeAttributeNode),
15004 (Element::getElementsByTagName), (Element::getElementsByTagNameNS),
15005 (Element::getAttributeNS), (Element::setAttributeNS),
15006 (Element::removeAttributeNS), (Element::getAttributeNodeNS),
15007 (Element::setAttributeNodeNS), (Element::hasAttribute),
15008 (Element::hasAttributeNS), (Element::khtmlValidAttrName),
15009 (Element::khtmlValidPrefix), (Element::khtmlValidQualifiedName),
15010 (Element::khtmlMalformedQualifiedName), (Element::khtmlMalformedPrefix):
15011 * src/kdelibs/khtml/dom/dom_element.h:
15012 * src/kdelibs/khtml/dom/dom_exception.h:
15013 * src/kdelibs/khtml/dom/dom_html.h:
15014 * src/kdelibs/khtml/dom/dom_misc.cpp: (DomShared::deleteMe):
15015 * src/kdelibs/khtml/dom/dom_misc.h:
15016 * src/kdelibs/khtml/dom/dom_node.cpp: (NamedNodeMap::getNamedItem),
15017 (NamedNodeMap::setNamedItem), (NamedNodeMap::removeNamedItem),
15018 (NamedNodeMap::item), (NamedNodeMap::getNamedItemNS),
15019 (NamedNodeMap::setNamedItemNS), (NamedNodeMap::removeNamedItemNS),
15020 (NamedNodeMap::length), (throw), (Node::operator == ), (Node::operator != ),
15021 (Node::nodeValue), (Node::setNodeValue), (Node::nodeType), (Node::parentNode),
15022 (Node::childNodes), (Node::firstChild), (Node::lastChild),
15023 (Node::previousSibling), (Node::nextSibling), (Node::attributes),
15024 (Node::ownerDocument), (Node::insertBefore), (Node::replaceChild),
15025 (Node::removeChild), (Node::appendChild), (Node::hasAttributes),
15026 (Node::hasChildNodes), (Node::cloneNode), (Node::normalize), (Node::isSupported),
15027 (Node::namespaceURI), (Node::prefix), (Node::setPrefix), (Node::localName),
15028 (Node::addEventListener), (Node::removeEventListener), (Node::elementId),
15029 (Node::index), (Node::toHTML), (Node::applyChanges), (Node::getCursor),
15030 (Node::getRect), (NodeList::item), (NodeList::length):
15031 * src/kdelibs/khtml/dom/dom_node.h:
15032 * src/kdelibs/khtml/dom/dom_string.cpp: (DOMString::lower), (DOMString::upper),
15034 * src/kdelibs/khtml/dom/dom_string.h:
15035 * src/kdelibs/khtml/dom/dom_text.cpp: (CharacterData::operator = ),
15036 (CharacterData::setData), (CharacterData::substringData),
15037 (CharacterData::appendData), (CharacterData::insertData),
15038 (CharacterData::deleteData), (CharacterData::replaceData), (Comment::operator =
15039 ), (Text::operator = ), (Text::splitText):
15040 * src/kdelibs/khtml/dom/dom_text.h:
15041 * src/kdelibs/khtml/dom/dom_xml.cpp: (CDATASection::operator = ),
15042 (Entity::operator = ), (Entity::publicId), (Entity::systemId),
15043 (Entity::notationName), (EntityReference::operator = ), (Notation::operator = ),
15044 (Notation::publicId), (Notation::systemId), (ProcessingInstruction::operator = ),
15045 (ProcessingInstruction::target), (ProcessingInstruction::data),
15046 (ProcessingInstruction::setData):
15047 * src/kdelibs/khtml/dom/dom_xml.h:
15048 * src/kdelibs/khtml/dom/html_base.cpp: (HTMLFrameElement::setSrc),
15049 (HTMLFrameElement::contentDocument):
15050 * src/kdelibs/khtml/dom/html_base.h:
15051 * src/kdelibs/khtml/dom/html_block.cpp:
15052 * src/kdelibs/khtml/dom/html_block.h:
15053 * src/kdelibs/khtml/dom/html_document.cpp: (HTMLDocument::HTMLDocument),
15054 (HTMLDocument::operator = ), (HTMLDocument::title), (HTMLDocument::completeURL),
15055 (HTMLDocument::lastModified), (HTMLDocument::cookie), (HTMLDocument::setCookie),
15056 (HTMLDocument::getElementsByName):
15057 * src/kdelibs/khtml/dom/html_document.h:
15058 * src/kdelibs/khtml/dom/html_element.cpp: (HTMLElement::operator = ),
15059 (HTMLElement::removeCSSProperty), (HTMLElement::addCSSProperty),
15060 (HTMLElement::setInnerText), (HTMLElement::children):
15061 * src/kdelibs/khtml/dom/html_element.h:
15062 * src/kdelibs/khtml/dom/html_form.cpp: (HTMLInputElement::setDefaultChecked),
15063 (HTMLInputElement::name), (HTMLInputElement::setName), (HTMLInputElement::src),
15064 (HTMLInputElement::setType), (HTMLInputElement::blur), (HTMLInputElement::focus),
15065 (HTMLInputElement::select), (HTMLInputElement::click), (HTMLSelectElement::name),
15066 (HTMLSelectElement::setName), (HTMLSelectElement::blur),
15067 (HTMLSelectElement::focus), (HTMLTextAreaElement::name),
15068 (HTMLTextAreaElement::setName), (HTMLTextAreaElement::blur),
15069 (HTMLTextAreaElement::focus), (HTMLTextAreaElement::select),
15070 (HTMLOptionElement::value), (HTMLOptionElement::setValue):
15071 * src/kdelibs/khtml/dom/html_form.h:
15072 * src/kdelibs/khtml/dom/html_head.cpp:
15073 * src/kdelibs/khtml/dom/html_head.h:
15074 * src/kdelibs/khtml/dom/html_image.cpp: (HTMLImageElement::border),
15075 (HTMLImageElement::setBorder), (HTMLImageElement::height),
15076 (HTMLImageElement::setHeight), (HTMLImageElement::hspace),
15077 (HTMLImageElement::setHspace), (HTMLImageElement::src),
15078 (HTMLImageElement::vspace), (HTMLImageElement::setVspace),
15079 (HTMLImageElement::width), (HTMLImageElement::setWidth):
15080 * src/kdelibs/khtml/dom/html_image.h:
15081 * src/kdelibs/khtml/dom/html_inline.cpp: (HTMLAnchorElement::blur),
15082 (HTMLAnchorElement::focus), (HTMLIFrameElement::contentDocument),
15083 (HTMLModElement::HTMLModElement), (HTMLQuoteElement::HTMLQuoteElement):
15084 * src/kdelibs/khtml/dom/html_inline.h:
15085 * src/kdelibs/khtml/dom/html_list.cpp:
15086 * src/kdelibs/khtml/dom/html_list.h:
15087 * src/kdelibs/khtml/dom/html_misc.cpp: (HTMLCollection::base),
15088 (HTMLCollection::firstItem), (HTMLCollection::nextItem),
15089 (HTMLCollection::nextNamedItem):
15090 * src/kdelibs/khtml/dom/html_misc.h:
15091 * src/kdelibs/khtml/dom/html_object.cpp: (HTMLObjectElement::setWidth),
15092 (HTMLObjectElement::contentDocument):
15093 * src/kdelibs/khtml/dom/html_object.h:
15094 * src/kdelibs/khtml/dom/html_table.cpp:
15095 * src/kdelibs/khtml/dom/html_table.h:
15096 * src/kdelibs/khtml/ecma/kjs_binding.cpp: (DOMObject::get), (DOMObject::put),
15097 (DOMObject::toString), (DOMFunction::get), (DOMFunction::call),
15098 (ScriptInterpreter::~ScriptInterpreter), (ScriptInterpreter::forgetDOMObject),
15099 (ScriptInterpreter::mark), (ScriptInterpreter::isWindowOpenAllowed),
15100 (KJS::toNode), (KJS::getString), (KJS::ValueToVariant):
15101 * src/kdelibs/khtml/ecma/kjs_binding.h:
15102 * src/kdelibs/khtml/ecma/kjs_css.cpp:
15103 (DOMCSSStyleDeclaration::DOMCSSStyleDeclaration),
15104 (DOMCSSStyleDeclaration::~DOMCSSStyleDeclaration),
15105 (DOMCSSStyleDeclaration::hasProperty), (DOMCSSStyleDeclaration::tryGet),
15106 (DOMCSSStyleDeclaration::tryPut), (DOMCSSStyleDeclarationProtoFunc::tryCall),
15107 (KJS::getDOMCSSStyleDeclaration), (DOMStyleSheet::~DOMStyleSheet),
15108 (DOMStyleSheet::tryGet), (DOMStyleSheet::getValueProperty),
15109 (DOMStyleSheet::tryPut), (KJS::getDOMStyleSheet),
15110 (DOMStyleSheetList::~DOMStyleSheetList), (DOMStyleSheetList::tryGet),
15111 (KJS::getDOMStyleSheetList), (DOMStyleSheetListFunc::tryCall),
15112 (DOMMediaList::DOMMediaList), (DOMMediaList::~DOMMediaList),
15113 (DOMMediaList::tryGet), (DOMMediaList::tryPut), (KJS::getDOMMediaList),
15114 (KJS::DOMMediaListProtoFunc::tryCall), (DOMCSSStyleSheet::DOMCSSStyleSheet),
15115 (DOMCSSStyleSheet::tryGet), (DOMCSSStyleSheetProtoFunc::tryCall),
15116 (DOMCSSRuleList::~DOMCSSRuleList), (DOMCSSRuleList::tryGet),
15117 (DOMCSSRuleListFunc::tryCall), (KJS::getDOMCSSRuleList),
15118 (DOMCSSRule::~DOMCSSRule), (DOMCSSRule::classInfo), (DOMCSSRule::tryGet),
15119 (DOMCSSRule::getValueProperty), (DOMCSSRule::tryPut), (DOMCSSRule::putValue),
15120 (DOMCSSRuleFunc::tryCall), (KJS::getDOMCSSRule), (KJS::toCSSRule),
15121 (CSSRuleConstructor::tryGet), (CSSRuleConstructor::getValueProperty),
15122 (KJS::getCSSRuleConstructor), (DOMCSSValue::~DOMCSSValue), (DOMCSSValue::tryGet),
15123 (DOMCSSValue::tryPut), (KJS::getDOMCSSValue), (CSSValueConstructor::tryGet),
15124 (CSSValueConstructor::getValueProperty), (KJS::getCSSValueConstructor),
15125 (DOMCSSPrimitiveValue::DOMCSSPrimitiveValue), (DOMCSSPrimitiveValue::tryGet),
15126 (DOMCSSPrimitiveValueProtoFunc::tryCall), (CSSPrimitiveValueConstructor::tryGet),
15127 (CSSPrimitiveValueConstructor::getValueProperty),
15128 (KJS::getCSSPrimitiveValueConstructor), (DOMCSSValueList::DOMCSSValueList),
15129 (DOMCSSValueList::tryGet), (DOMCSSValueListFunc::tryCall), (DOMRGBColor::tryGet),
15130 (KJS::getDOMRGBColor), (DOMRect::~DOMRect), (DOMRect::tryGet), (KJS::getDOMRect),
15131 (DOMCounter::~DOMCounter), (DOMCounter::tryGet), (KJS::getDOMCounter):
15132 * src/kdelibs/khtml/ecma/kjs_css.h:
15133 * src/kdelibs/khtml/ecma/kjs_debugwin.cpp: (FakeModal::eventFilter),
15134 (FakeModal::enable), (FakeModal::disable), (StackFrame::toString),
15135 (SourceFragment::SourceFragment), (SourceFragment::~SourceFragment),
15136 (KJSDebugWin::KJSDebugWin), (KJSDebugWin::~KJSDebugWin),
15137 (KJSDebugWin::createInstance), (KJSDebugWin::destroyInstance),
15138 (KJSDebugWin::instance), (KJSDebugWin::next), (KJSDebugWin::step),
15139 (KJSDebugWin::cont), (KJSDebugWin::stop), (KJSDebugWin::showFrame),
15140 (KJSDebugWin::sourceSelected), (KJSDebugWin::eval), (KJSDebugWin::closeEvent),
15141 (KJSDebugWin::sourceParsed), (KJSDebugWin::sourceUnused), (KJSDebugWin::error),
15142 (KJSDebugWin::atLine), (KJSDebugWin::callEvent), (KJSDebugWin::returnEvent),
15143 (KJSDebugWin::setCode), (KJSDebugWin::highLight),
15144 (KJSDebugWin::setNextSourceInfo), (KJSDebugWin::setSourceFile),
15145 (KJSDebugWin::appendSourceFile), (KJSDebugWin::enterSession),
15146 (KJSDebugWin::leaveSession), (KJSDebugWin::updateFrameList),
15147 (KJSDebugWin::setBreakpoint), (KJSDebugWin::deleteBreakpoint),
15148 (KJSDebugWin::clearAllBreakpoints), (KJSDebugWin::breakpointLine),
15149 (KJSDebugWin::haveBreakpoint):
15150 * src/kdelibs/khtml/ecma/kjs_debugwin.h:
15151 * src/kdelibs/khtml/ecma/kjs_dom.cpp: (DOMNode::DOMNode), (DOMNode::~DOMNode),
15152 (DOMNode::toBoolean), (DOMNode::tryGet), (DOMNode::getValueProperty),
15153 (DOMNode::tryPut), (DOMNode::putValue), (DOMNode::toPrimitive),
15154 (DOMNode::toString), (DOMNode::setListener), (DOMNode::getListener),
15155 (DOMNode::eventHandlerScope), (DOMNodeProtoFunc::tryCall),
15156 (DOMNodeList::~DOMNodeList), (DOMNodeList::hasProperty), (DOMNodeList::tryGet),
15157 (DOMNodeList::call), (DOMNodeList::tryCall), (DOMNodeListFunc::DOMNodeListFunc),
15158 (DOMNodeListFunc::tryCall), (DOMAttr::tryGet), (DOMAttr::getValueProperty),
15159 (DOMAttr::tryPut), (DOMAttr::putValue), (DOMDocument::DOMDocument),
15160 (DOMDocument::tryGet), (DOMDocument::getValueProperty),
15161 (DOMDocumentProtoFunc::tryCall), (DOMElement::DOMElement), (DOMElement::tryGet),
15162 (DOMElementProtoFunc::tryCall), (DOMDOMImplementation::DOMDOMImplementation),
15163 (DOMDOMImplementation::~DOMDOMImplementation),
15164 (DOMDOMImplementationProtoFunc::tryCall), (DOMDocumentType::DOMDocumentType),
15165 (DOMDocumentType::tryGet), (DOMDocumentType::getValueProperty),
15166 (DOMNamedNodeMap::DOMNamedNodeMap), (DOMNamedNodeMap::~DOMNamedNodeMap),
15167 (DOMNamedNodeMap::hasProperty), (DOMNamedNodeMap::tryGet),
15168 (DOMNamedNodeMapProtoFunc::tryCall), (DOMProcessingInstruction::tryGet),
15169 (DOMProcessingInstruction::getValueProperty), (DOMProcessingInstruction::tryPut),
15170 (DOMNotation::tryGet), (DOMNotation::getValueProperty), (DOMEntity::tryGet),
15171 (DOMEntity::getValueProperty), (KJS::getDOMNode), (KJS::getDOMNamedNodeMap),
15172 (KJS::getDOMNodeList), (KJS::getDOMDOMImplementation), (NodeConstructor::tryGet),
15173 (NodeConstructor::getValueProperty), (KJS::getNodeConstructor),
15174 (DOMExceptionConstructor::tryGet), (DOMExceptionConstructor::getValueProperty),
15175 (KJS::getDOMExceptionConstructor),
15176 (DOMNamedNodesCollection::DOMNamedNodesCollection),
15177 (DOMNamedNodesCollection::tryGet), (DOMCharacterData::DOMCharacterData),
15178 (DOMCharacterData::tryGet), (DOMCharacterData::getValueProperty),
15179 (DOMCharacterData::tryPut), (DOMCharacterDataProtoFunc::tryCall),
15180 (DOMText::DOMText), (DOMText::tryGet), (DOMTextProtoFunc::tryCall):
15181 * src/kdelibs/khtml/ecma/kjs_dom.h:
15182 * src/kdelibs/khtml/ecma/kjs_events.cpp: (JSEventListener::JSEventListener),
15183 (JSEventListener::~JSEventListener), (JSEventListener::handleEvent),
15184 (KJS::getNodeEventListener), (EventConstructor::tryGet),
15185 (EventConstructor::getValueProperty), (KJS::getEventConstructor),
15186 (DOMEvent::DOMEvent), (DOMEvent::~DOMEvent), (DOMEvent::tryGet),
15187 (DOMEvent::getValueProperty), (DOMEventProtoFunc::tryCall), (KJS::getDOMEvent),
15188 (KJS::toEvent), (EventExceptionConstructor::tryGet),
15189 (EventExceptionConstructor::getValueProperty),
15190 (KJS::getEventExceptionConstructor), (DOMUIEvent::tryGet),
15191 (DOMUIEvent::getValueProperty), (DOMUIEventProtoFunc::tryCall),
15192 (DOMMouseEvent::tryGet), (DOMMouseEvent::getValueProperty),
15193 (DOMMouseEventProtoFunc::tryCall), (MutationEventConstructor::tryGet),
15194 (MutationEventConstructor::getValueProperty), (KJS::getMutationEventConstructor),
15195 (DOMMutationEvent::tryGet), (DOMMutationEvent::getValueProperty),
15196 (DOMMutationEventProtoFunc::tryCall):
15197 * src/kdelibs/khtml/ecma/kjs_events.h:
15198 * src/kdelibs/khtml/ecma/kjs_html.cpp: (KJS::HTMLDocFunction::tryCall),
15199 (KJS::HTMLDocument::hasProperty), (KJS::HTMLDocument::tryGet),
15200 (KJS::HTMLDocument::tryPut), (KJS::HTMLDocument::putValue),
15201 (KJS::HTMLElement::classInfo), (KJS::HTMLElement::tryGet),
15202 (KJS::HTMLElement::getValueProperty), (KJS::HTMLElement::hasProperty),
15203 (KJS::HTMLElement::toString), (KJS::HTMLElement::eventHandlerScope),
15204 (HTMLElementFunction::HTMLElementFunction), (KJS::HTMLElementFunction::tryCall),
15205 (KJS::HTMLElement::tryPut), (KJS::HTMLElement::putValue),
15206 (HTMLCollection::HTMLCollection), (HTMLCollection::~HTMLCollection),
15207 (KJS::HTMLCollection::hasProperty), (KJS::HTMLCollection::tryGet),
15208 (KJS::HTMLCollection::call), (KJS::HTMLCollection::tryCall),
15209 (KJS::HTMLCollection::getNamedItems), (KJS::HTMLCollectionProtoFunc::tryCall),
15210 (KJS::HTMLSelectCollection::tryGet), (KJS::HTMLSelectCollection::tryPut),
15211 (OptionConstructorImp::OptionConstructorImp),
15212 (OptionConstructorImp::implementsConstruct), (OptionConstructorImp::construct),
15213 (ImageConstructorImp::ImageConstructorImp),
15214 (ImageConstructorImp::implementsConstruct), (ImageConstructorImp::construct),
15215 (Image::tryGet), (Image::getValueProperty), (Image::tryPut),
15216 (KJS::getHTMLCollection), (KJS::getSelectHTMLCollection):
15217 * src/kdelibs/khtml/ecma/kjs_html.h:
15218 * src/kdelibs/khtml/ecma/kjs_navigator.cpp: (Navigator::Navigator),
15219 (Navigator::get), (Navigator::getValueProperty), (PluginBase::PluginBase),
15220 (Plugins::get), (MimeTypes::get), (Plugin::get), (MimeType::get),
15221 (PluginsFunc::tryCall), (NavigatorFunc::tryCall):
15222 * src/kdelibs/khtml/ecma/kjs_navigator.h:
15223 * src/kdelibs/khtml/ecma/kjs_proxy.cpp: (KJSProxyImpl::KJSProxyImpl),
15224 (KJSProxyImpl::~KJSProxyImpl), (KJSProxyImpl::evaluate), (KJSProxyImpl::clear),
15225 (KJSProxyImpl::createHTMLEventHandler), (KJSProxyImpl::finishedWithEvent),
15226 (KJSProxyImpl::interpreter), (KJSProxyImpl::setDebugEnabled),
15227 (KJSProxyImpl::paused), (KJSProxyImpl::setSourceFile),
15228 (KJSProxyImpl::appendSourceFile), (TestFunctionImp::call),
15229 (KJSProxyImpl::initScript), (KJSProxy::proxy), (kjs_html_init):
15230 * src/kdelibs/khtml/ecma/kjs_proxy.h:
15231 * src/kdelibs/khtml/ecma/kjs_range.cpp: (DOMRange::DOMRange),
15232 (DOMRange::~DOMRange), (DOMRange::tryGet), (DOMRange::getValueProperty),
15233 (DOMRangeProtoFunc::tryCall), (KJS::getDOMRange), (RangeConstructor::tryGet),
15234 (RangeConstructor::getValueProperty), (KJS::getRangeConstructor), (KJS::toRange):
15235 * src/kdelibs/khtml/ecma/kjs_range.h:
15236 * src/kdelibs/khtml/ecma/kjs_traversal.cpp: (DOMNodeIterator::DOMNodeIterator),
15237 (DOMNodeIterator::~DOMNodeIterator), (DOMNodeIterator::tryGet),
15238 (DOMNodeIterator::getValueProperty), (DOMNodeIteratorProtoFunc::tryCall),
15239 (KJS::getDOMNodeIterator), (NodeFilterConstructor::tryGet),
15240 (NodeFilterConstructor::getValueProperty), (KJS::getNodeFilterConstructor),
15241 (DOMNodeFilter::DOMNodeFilter), (DOMNodeFilter::~DOMNodeFilter),
15242 (DOMNodeFilterProtoFunc::tryCall), (KJS::getDOMNodeFilter),
15243 (DOMTreeWalker::DOMTreeWalker), (DOMTreeWalker::~DOMTreeWalker),
15244 (DOMTreeWalker::tryGet), (DOMTreeWalker::getValueProperty),
15245 (DOMTreeWalker::tryPut), (DOMTreeWalkerProtoFunc::tryCall),
15246 (KJS::getDOMTreeWalker), (KJS::toNodeFilter), (JSNodeFilter::JSNodeFilter),
15247 (JSNodeFilter::acceptNode):
15248 * src/kdelibs/khtml/ecma/kjs_traversal.h:
15249 * src/kdelibs/khtml/ecma/kjs_views.cpp: (DOMAbstractView::~DOMAbstractView),
15250 (DOMAbstractView::tryGet), (DOMAbstractViewFunc::tryCall),
15251 (KJS::getDOMAbstractView), (KJS::toAbstractView):
15252 * src/kdelibs/khtml/ecma/kjs_views.h:
15253 * src/kdelibs/khtml/ecma/kjs_window.cpp: (Screen::Screen), (Screen::get),
15254 (Screen::getValueProperty), (Window::Window), (Window::retrieveWindow),
15255 (Window::retrieveActive), (Window::retrieve), (Window::mark),
15256 (Window::hasProperty), (Window::toString), (Window::get), (Window::put),
15257 (Window::toBoolean), (Window::scheduleClose), (Window::isSafeScript),
15258 (Window::setListener), (Window::getListener), (Window::getJSEventListener),
15259 (Window::clear), (Window::setCurrentEvent), (WindowFunc::tryCall),
15260 (ScheduledAction::ScheduledAction), (ScheduledAction::execute),
15261 (ScheduledAction::~ScheduledAction), (WindowQObject::WindowQObject),
15262 (WindowQObject::~WindowQObject), (WindowQObject::parentDestroyed),
15263 (WindowQObject::installTimeout), (WindowQObject::clearTimeout),
15264 (WindowQObject::timerEvent), (WindowQObject::timeoutClose), (FrameArray::get),
15265 (Location::Location), (Location::~Location), (Location::get), (Location::put),
15266 (Location::toPrimitive), (Location::toString), (LocationFunc::tryCall),
15267 (History::get), (History::getValueProperty), (HistoryFunc::tryCall),
15268 (Konqueror::hasProperty), (Konqueror::get), (KonquerorFunc::tryCall),
15269 (Konqueror::toString):
15270 * src/kdelibs/khtml/ecma/kjs_window.h:
15271 * src/kdelibs/khtml/html/dtd.cpp: (DOM::checkChild), (DOM::addForbidden),
15272 (DOM::removeForbidden):
15273 * src/kdelibs/khtml/html/dtd.h:
15274 * src/kdelibs/khtml/html/html_baseimpl.cpp:
15275 (HTMLBodyElementImpl::HTMLBodyElementImpl), (HTMLBodyElementImpl::id),
15276 (HTMLBodyElementImpl::parseAttribute), (HTMLBodyElementImpl::init),
15277 (HTMLBodyElementImpl::attach), (HTMLFrameElementImpl::HTMLFrameElementImpl),
15278 (HTMLFrameElementImpl::id), (HTMLFrameElementImpl::parseAttribute),
15279 (HTMLFrameElementImpl::init), (HTMLFrameElementImpl::attach),
15280 (HTMLFrameElementImpl::detach), (HTMLFrameElementImpl::setLocation),
15281 (HTMLFrameElementImpl::setFocus), (HTMLFrameElementImpl::contentDocument),
15282 (HTMLFrameSetElementImpl::HTMLFrameSetElementImpl),
15283 (HTMLFrameSetElementImpl::~HTMLFrameSetElementImpl),
15284 (HTMLFrameSetElementImpl::id), (HTMLFrameSetElementImpl::parseAttribute),
15285 (HTMLFrameSetElementImpl::init), (HTMLFrameSetElementImpl::attach),
15286 (HTMLFrameSetElementImpl::defaultEventHandler),
15287 (HTMLFrameSetElementImpl::detach), (HTMLFrameSetElementImpl::recalcStyle),
15288 (HTMLHeadElementImpl::id), (HTMLHtmlElementImpl::attach),
15289 (HTMLHtmlElementImpl::id), (HTMLIFrameElementImpl::id),
15290 (HTMLIFrameElementImpl::parseAttribute), (HTMLIFrameElementImpl::attach),
15291 (HTMLIFrameElementImpl::recalcStyle):
15292 * src/kdelibs/khtml/html/html_baseimpl.h:
15293 * src/kdelibs/khtml/html/html_blockimpl.cpp: (HTMLBlockquoteElementImpl::id),
15294 (HTMLDivElementImpl::id), (HTMLDivElementImpl::parseAttribute),
15295 (HTMLHRElementImpl::id), (HTMLHRElementImpl::parseAttribute),
15296 (HTMLHRElementImpl::attach), (HTMLHeadingElementImpl::HTMLHeadingElementImpl),
15297 (HTMLParagraphElementImpl::id), (HTMLPreElementImpl::HTMLPreElementImpl),
15298 (HTMLLayerElementImpl::id), (HTMLLayerElementImpl::parseAttribute):
15299 * src/kdelibs/khtml/html/html_blockimpl.h:
15300 * src/kdelibs/khtml/html/html_documentimpl.cpp:
15301 (HTMLDocumentImpl::HTMLDocumentImpl), (HTMLDocumentImpl::~HTMLDocumentImpl),
15302 (HTMLDocumentImpl::referrer), (HTMLDocumentImpl::domain),
15303 (HTMLDocumentImpl::setDomain), (HTMLDocumentImpl::lastModified),
15304 (HTMLDocumentImpl::cookie), (HTMLDocumentImpl::setCookie),
15305 (HTMLDocumentImpl::setBody), (HTMLDocumentImpl::slotHistoryChanged),
15306 (isTransitional), (HTMLDocumentImpl::close),
15307 (HTMLDocumentImpl::determineParseMode):
15308 * src/kdelibs/khtml/html/html_documentimpl.h:
15309 * src/kdelibs/khtml/html/html_elementimpl.cpp:
15310 (HTMLElementImpl::HTMLElementImpl), (HTMLElementImpl::parseAttribute),
15311 (HTMLElementImpl::addCSSProperty), (HTMLElementImpl::addCSSLength),
15312 (HTMLElementImpl::removeCSSProperty), (HTMLElementImpl::innerText),
15313 (HTMLElementImpl::setInnerHTML), (HTMLElementImpl::namespaceURI):
15314 * src/kdelibs/khtml/html/html_elementimpl.h:
15315 * src/kdelibs/khtml/html/html_formimpl.cpp:
15316 (HTMLFormElementImpl::~HTMLFormElementImpl), (HTMLFormElementImpl::id),
15317 (HTMLFormElementImpl::length), (HTMLFormElementImpl::i18nData),
15318 (HTMLFormElementImpl::formData), (HTMLFormElementImpl::prepareSubmit),
15319 (HTMLFormElementImpl::submit), (HTMLFormElementImpl::reset),
15320 (HTMLFormElementImpl::parseAttribute), (HTMLFormElementImpl::radioClicked),
15321 (HTMLGenericFormElementImpl::HTMLGenericFormElementImpl),
15322 (HTMLGenericFormElementImpl::parseAttribute),
15323 (HTMLGenericFormElementImpl::attach), (HTMLGenericFormElementImpl::name),
15324 (HTMLGenericFormElementImpl::setName), (HTMLGenericFormElementImpl::onSelect),
15325 (HTMLGenericFormElementImpl::onChange),
15326 (HTMLGenericFormElementImpl::setDisabled),
15327 (HTMLGenericFormElementImpl::setParent),
15328 (HTMLGenericFormElementImpl::recalcStyle),
15329 (HTMLGenericFormElementImpl::isSelectable),
15330 (HTMLGenericFormElementImpl::defaultEventHandler),
15331 (HTMLGenericFormElementImpl::isEditable), (HTMLButtonElementImpl::id),
15332 (HTMLButtonElementImpl::parseAttribute), (HTMLButtonElementImpl::attach),
15333 (HTMLButtonElementImpl::defaultEventHandler), (HTMLButtonElementImpl::encoding),
15334 (HTMLFieldSetElementImpl::id), (HTMLInputElementImpl::HTMLInputElementImpl),
15335 (HTMLInputElementImpl::~HTMLInputElementImpl), (HTMLInputElementImpl::id),
15336 (HTMLInputElementImpl::setType), (HTMLInputElementImpl::state),
15337 (HTMLInputElementImpl::restoreState), (HTMLInputElementImpl::parseAttribute),
15338 (HTMLInputElementImpl::init), (HTMLInputElementImpl::attach),
15339 (HTMLInputElementImpl::altText), (HTMLInputElementImpl::encoding),
15340 (HTMLInputElementImpl::reset), (HTMLInputElementImpl::setChecked),
15341 (HTMLInputElementImpl::value), (HTMLInputElementImpl::setValue),
15342 (HTMLInputElementImpl::blur), (HTMLInputElementImpl::focus),
15343 (HTMLInputElementImpl::defaultEventHandler), (HTMLInputElementImpl::isEditable),
15344 (HTMLLabelElementImpl::id), (HTMLLabelElementImpl::parseAttribute),
15345 (HTMLLabelElementImpl::formElement), (HTMLLegendElementImpl::id),
15346 (HTMLSelectElementImpl::HTMLSelectElementImpl), (HTMLSelectElementImpl::id),
15347 (HTMLSelectElementImpl::add), (HTMLSelectElementImpl::blur),
15348 (HTMLSelectElementImpl::focus), (HTMLSelectElementImpl::value),
15349 (HTMLSelectElementImpl::setValue), (HTMLSelectElementImpl::state),
15350 (HTMLSelectElementImpl::restoreState), (HTMLSelectElementImpl::parseAttribute),
15351 (HTMLSelectElementImpl::init), (HTMLSelectElementImpl::attach),
15352 (HTMLSelectElementImpl::encoding), (HTMLSelectElementImpl::reset),
15353 (HTMLSelectElementImpl::notifyOptionSelected),
15354 (HTMLKeygenElementImpl::HTMLKeygenElementImpl), (HTMLKeygenElementImpl::id),
15355 (HTMLKeygenElementImpl::parseAttribute), (HTMLKeygenElementImpl::encoding),
15356 (HTMLOptGroupElementImpl::HTMLOptGroupElementImpl),
15357 (HTMLOptGroupElementImpl::id), (HTMLOptGroupElementImpl::parseAttribute),
15358 (HTMLOptionElementImpl::id), (HTMLOptionElementImpl::text),
15359 (HTMLOptionElementImpl::index), (HTMLOptionElementImpl::setIndex),
15360 (HTMLOptionElementImpl::parseAttribute), (HTMLOptionElementImpl::value),
15361 (HTMLOptionElementImpl::setValue), (HTMLOptionElementImpl::getSelect),
15362 (HTMLTextAreaElementImpl::HTMLTextAreaElementImpl),
15363 (HTMLTextAreaElementImpl::id), (HTMLTextAreaElementImpl::parseAttribute),
15364 (HTMLTextAreaElementImpl::init), (HTMLTextAreaElementImpl::attach),
15365 (HTMLTextAreaElementImpl::encoding), (HTMLTextAreaElementImpl::setDefaultValue),
15366 (HTMLTextAreaElementImpl::blur), (HTMLTextAreaElementImpl::focus),
15367 (HTMLTextAreaElementImpl::isEditable),
15368 (HTMLIsIndexElementImpl::HTMLIsIndexElementImpl), (HTMLIsIndexElementImpl::id),
15369 (HTMLIsIndexElementImpl::parseAttribute):
15370 * src/kdelibs/khtml/html/html_formimpl.h:
15371 * src/kdelibs/khtml/html/html_headimpl.cpp: (HTMLBaseElementImpl::id),
15372 (HTMLBaseElementImpl::parseAttribute),
15373 (HTMLBaseElementImpl::insertedIntoDocument),
15374 (HTMLBaseElementImpl::removedFromDocument), (HTMLBaseElementImpl::process),
15375 (HTMLLinkElementImpl::HTMLLinkElementImpl), (HTMLLinkElementImpl::id),
15376 (HTMLLinkElementImpl::parseAttribute), (HTMLLinkElementImpl::process),
15377 (HTMLLinkElementImpl::insertedIntoDocument),
15378 (HTMLLinkElementImpl::removedFromDocument), (HTMLLinkElementImpl::setStyleSheet),
15379 (HTMLLinkElementImpl::sheetLoaded), (HTMLMetaElementImpl::id),
15380 (HTMLMetaElementImpl::parseAttribute),
15381 (HTMLMetaElementImpl::insertedIntoDocument), (HTMLMetaElementImpl::process),
15382 (HTMLScriptElementImpl::id), (HTMLStyleElementImpl::id),
15383 (HTMLStyleElementImpl::parseAttribute),
15384 (HTMLStyleElementImpl::insertedIntoDocument),
15385 (HTMLStyleElementImpl::removedFromDocument),
15386 (HTMLStyleElementImpl::childrenChanged), (HTMLStyleElementImpl::isLoading),
15387 (HTMLStyleElementImpl::sheetLoaded), (HTMLTitleElementImpl::id),
15388 (HTMLTitleElementImpl::insertedIntoDocument),
15389 (HTMLTitleElementImpl::removedFromDocument),
15390 (HTMLTitleElementImpl::childrenChanged):
15391 * src/kdelibs/khtml/html/html_headimpl.h:
15392 * src/kdelibs/khtml/html/html_imageimpl.cpp: (HTMLImageElementImpl::id),
15393 (HTMLImageElementImpl::parseAttribute), (HTMLImageElementImpl::altText),
15394 (HTMLImageElementImpl::attach), (HTMLMapElementImpl::~HTMLMapElementImpl),
15395 (HTMLMapElementImpl::id), (HTMLMapElementImpl::mapMouseEvent),
15396 (HTMLMapElementImpl::parseAttribute), (HTMLAreaElementImpl::HTMLAreaElementImpl),
15397 (HTMLAreaElementImpl::~HTMLAreaElementImpl), (HTMLAreaElementImpl::id),
15398 (HTMLAreaElementImpl::parseAttribute), (HTMLAreaElementImpl::mapMouseEvent),
15399 (HTMLAreaElementImpl::getRect), (HTMLAreaElementImpl::getRegion):
15400 * src/kdelibs/khtml/html/html_imageimpl.h:
15401 * src/kdelibs/khtml/html/html_inlineimpl.cpp:
15402 (HTMLAnchorElementImpl::HTMLAnchorElementImpl),
15403 (HTMLAnchorElementImpl::~HTMLAnchorElementImpl), (HTMLAnchorElementImpl::id),
15404 (HTMLAnchorElementImpl::defaultEventHandler),
15405 (HTMLAnchorElementImpl::parseAttribute), (HTMLBRElementImpl::id),
15406 (HTMLBRElementImpl::parseAttribute), (HTMLBRElementImpl::attach),
15407 (HTMLFontElementImpl::id), (HTMLFontElementImpl::parseAttribute):
15408 * src/kdelibs/khtml/html/html_inlineimpl.h:
15409 * src/kdelibs/khtml/html/html_listimpl.cpp: (HTMLUListElementImpl::id),
15410 (HTMLUListElementImpl::parseAttribute), (HTMLDirectoryElementImpl::id),
15411 (HTMLMenuElementImpl::id), (HTMLOListElementImpl::id),
15412 (HTMLOListElementImpl::parseAttribute), (HTMLLIElementImpl::id),
15413 (HTMLLIElementImpl::parseAttribute), (HTMLLIElementImpl::attach),
15414 (HTMLDListElementImpl::id):
15415 * src/kdelibs/khtml/html/html_listimpl.h:
15416 * src/kdelibs/khtml/html/html_miscimpl.cpp:
15417 (HTMLBaseFontElementImpl::HTMLBaseFontElementImpl),
15418 (HTMLBaseFontElementImpl::id), (HTMLCollectionImpl::HTMLCollectionImpl),
15419 (HTMLCollectionImpl::calcLength), (HTMLCollectionImpl::getItem),
15420 (HTMLCollectionImpl::firstItem), (HTMLCollectionImpl::nextItem),
15421 (HTMLCollectionImpl::getNamedItem), (HTMLCollectionImpl::namedItem),
15422 (HTMLCollectionImpl::nextNamedItem), (HTMLCollectionImpl::nextNamedItemInternal),
15423 (HTMLFormCollectionImpl::calcLength), (HTMLFormCollectionImpl::getItem),
15424 (HTMLFormCollectionImpl::getNamedItem),
15425 (HTMLFormCollectionImpl::getNamedFormItem),
15426 (HTMLFormCollectionImpl::getNamedImgItem), (HTMLFormCollectionImpl::firstItem),
15427 (HTMLFormCollectionImpl::nextItem),
15428 (HTMLFormCollectionImpl::nextNamedItemInternal):
15429 * src/kdelibs/khtml/html/html_miscimpl.h:
15430 * src/kdelibs/khtml/html/html_objectimpl.cpp:
15431 (HTMLAppletElementImpl::HTMLAppletElementImpl),
15432 (HTMLAppletElementImpl::~HTMLAppletElementImpl), (HTMLAppletElementImpl::id),
15433 (HTMLAppletElementImpl::parseAttribute), (HTMLAppletElementImpl::attach),
15434 (HTMLEmbedElementImpl::id), (HTMLEmbedElementImpl::parseAttribute),
15435 (HTMLEmbedElementImpl::attach), (HTMLObjectElementImpl::id),
15436 (HTMLObjectElementImpl::parseAttribute),
15437 (HTMLObjectElementImpl::contentDocument), (HTMLObjectElementImpl::attach),
15438 (HTMLObjectElementImpl::detach), (HTMLObjectElementImpl::recalcStyle),
15439 (HTMLParamElementImpl::id), (HTMLParamElementImpl::parseAttribute):
15440 * src/kdelibs/khtml/html/html_objectimpl.h:
15441 * src/kdelibs/khtml/html/html_tableimpl.cpp:
15442 (HTMLTableElementImpl::HTMLTableElementImpl), (HTMLTableElementImpl::id),
15443 (HTMLTableElementImpl::setCaption), (HTMLTableElementImpl::setTHead),
15444 (HTMLTableElementImpl::setTFoot), (HTMLTableElementImpl::setTBody),
15445 (HTMLTableElementImpl::createTHead), (HTMLTableElementImpl::deleteTHead),
15446 (HTMLTableElementImpl::createTFoot), (HTMLTableElementImpl::deleteTFoot),
15447 (HTMLTableElementImpl::createCaption), (HTMLTableElementImpl::deleteCaption),
15448 (HTMLTableElementImpl::insertRow), (HTMLTableElementImpl::deleteRow),
15449 (HTMLTableElementImpl::addChild), (HTMLTableElementImpl::parseAttribute),
15450 (HTMLTableElementImpl::init), (HTMLTablePartElementImpl::parseAttribute),
15451 (HTMLTableSectionElementImpl::id), (HTMLTableSectionElementImpl::insertRow),
15452 (HTMLTableSectionElementImpl::deleteRow), (HTMLTableRowElementImpl::id),
15453 (HTMLTableRowElementImpl::insertCell), (HTMLTableRowElementImpl::deleteCell),
15454 (HTMLTableCellElementImpl::HTMLTableCellElementImpl),
15455 (HTMLTableCellElementImpl::parseAttribute), (HTMLTableCellElementImpl::init),
15456 (HTMLTableColElementImpl::HTMLTableColElementImpl),
15457 (HTMLTableColElementImpl::id), (HTMLTableColElementImpl::parseAttribute),
15458 (HTMLTableCaptionElementImpl::id), (HTMLTableCaptionElementImpl::parseAttribute):
15459 * src/kdelibs/khtml/html/html_tableimpl.h:
15460 * src/kdelibs/khtml/html/htmlparser.cpp: (KHTMLParser::parseToken),
15461 (KHTMLParser::insertNode), (KHTMLParser::getElement),
15462 (KHTMLParser::processCloseTag), (KHTMLParser::popOneBlock),
15463 (KHTMLParser::handleIsindex):
15464 * src/kdelibs/khtml/html/htmlparser.h:
15465 * src/kdelibs/khtml/html/htmltokenizer.cpp: (HTMLTokenizer::HTMLTokenizer),
15466 (HTMLTokenizer::reset), (HTMLTokenizer::begin), (HTMLTokenizer::processListing),
15467 (HTMLTokenizer::parseSpecial), (HTMLTokenizer::scriptHandler),
15468 (HTMLTokenizer::scriptExecution), (HTMLTokenizer::parseComment),
15469 (HTMLTokenizer::parseServer), (HTMLTokenizer::parseTag), (HTMLTokenizer::write),
15470 (HTMLTokenizer::finish), (HTMLTokenizer::processToken),
15471 (HTMLTokenizer::notifyFinished), (HTMLTokenizer::addPendingSource),
15472 (HTMLTokenizer::setSrc):
15473 * src/kdelibs/khtml/html/htmltokenizer.h:
15474 * src/kdelibs/khtml/java/javaembed.h:
15475 * src/kdelibs/khtml/java/kjavaapplet.h:
15476 * src/kdelibs/khtml/java/kjavaappletcontext.cpp:
15477 * src/kdelibs/khtml/java/kjavaappletcontext.h:
15478 * src/kdelibs/khtml/java/kjavaappletserver.cpp: (KJavaAppletServer::setupJava):
15479 * src/kdelibs/khtml/java/kjavaappletserver.h:
15480 * src/kdelibs/khtml/java/kjavaappletwidget.h:
15481 * src/kdelibs/khtml/java/kjavaprocess.cpp: (KJavaProcess::invokeJVM):
15482 * src/kdelibs/khtml/khtml_events.cpp: (khtml::MouseEvent::MouseEvent),
15483 (khtml::MouseEvent::offset):
15484 * src/kdelibs/khtml/khtml_events.h:
15485 * src/kdelibs/khtml/khtml_ext.h:
15486 * src/kdelibs/khtml/khtml_factory.h:
15487 * src/kdelibs/khtml/khtml_part.h:
15488 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::KHTMLView),
15489 (KHTMLView::~KHTMLView), (KHTMLView::init), (KHTMLView::clear),
15490 (KHTMLView::resizeEvent), (KHTMLView::drawContents), (KHTMLView::setMarginWidth),
15491 (KHTMLView::setMarginHeight), (KHTMLView::layout),
15492 (KHTMLView::viewportMousePressEvent), (KHTMLView::viewportMouseDoubleClickEvent),
15493 (KHTMLView::viewportMouseMoveEvent), (KHTMLView::resetCursor),
15494 (KHTMLView::viewportMouseReleaseEvent), (KHTMLView::keyPressEvent),
15495 (KHTMLView::keyReleaseEvent), (KHTMLView::contentsContextMenuEvent),
15496 (KHTMLView::focusNextPrevChild), (KHTMLView::scrollTo),
15497 (KHTMLView::focusNextPrevNode), (KHTMLView::setMediaType),
15498 (KHTMLView::mediaType), (KHTMLView::print), (KHTMLView::slotPaletteChanged),
15499 (KHTMLView::restoreScrollBar), (KHTMLView::addFormCompletionItem),
15500 (KHTMLView::dispatchMouseEvent), (KHTMLView::setIgnoreEvents),
15501 (KHTMLView::ignoreEvents), (KHTMLView::setIgnoreWheelEvents),
15502 (KHTMLView::viewportWheelEvent), (KHTMLView::slotScrollBarMoved),
15503 (KHTMLView::timerEvent), (KHTMLView::scheduleRelayout),
15504 (KHTMLView::scheduleRepaint), (KHTMLView::complete):
15505 * src/kdelibs/khtml/khtmlview.h:
15506 * src/kdelibs/khtml/misc/decoder.cpp:
15507 * src/kdelibs/khtml/misc/decoder.h:
15508 * src/kdelibs/khtml/misc/helper.cpp: (khtml::setNamedColor),
15509 (khtml::setPrintPainter):
15510 * src/kdelibs/khtml/misc/helper.h:
15511 * src/kdelibs/khtml/misc/htmlattrs.in:
15512 * src/kdelibs/khtml/misc/htmltags.in:
15513 * src/kdelibs/khtml/misc/khtmllayout.h:
15514 * src/kdelibs/khtml/misc/loader.h:
15515 * src/kdelibs/khtml/misc/loader_client.h:
15516 * src/kdelibs/khtml/misc/makeattrs:
15517 * src/kdelibs/khtml/misc/maketags:
15518 * src/kdelibs/khtml/misc/stringit.h:
15519 * src/kdelibs/khtml/rendering/bidi.cpp: (Bidinext), (first),
15520 (BidiIterator::BidiIterator), (BidiIterator::operator ++ ),
15521 (BidiIterator::atEnd), (BidiIterator::current), (BidiIterator::direction),
15522 (appendRun), (embed), (RenderFlow::bidiReorderLine),
15523 (RenderFlow::layoutInlineChildren):
15524 * src/kdelibs/khtml/rendering/bidi.h:
15525 * src/kdelibs/khtml/rendering/break_lines.cpp:
15526 * src/kdelibs/khtml/rendering/render_applet.cpp: (RenderApplet::RenderApplet),
15527 (RenderApplet::intrinsicWidth), (RenderApplet::intrinsicHeight),
15528 (RenderApplet::layout), (RenderEmptyApplet::RenderEmptyApplet),
15529 (RenderEmptyApplet::layout):
15530 * src/kdelibs/khtml/rendering/render_applet.h:
15531 * src/kdelibs/khtml/rendering/render_body.cpp: (RenderBody::RenderBody),
15532 (RenderBody::setStyle):
15533 * src/kdelibs/khtml/rendering/render_body.h:
15534 * src/kdelibs/khtml/rendering/render_box.cpp: (RenderBox::RenderBox),
15535 (RenderBox::setPos), (RenderBox::setPixmap), (RenderBox::printBackground),
15536 (RenderBox::calcClip), (RenderBox::close), (RenderBox::repaintRectangle),
15537 (RenderBox::calcWidth), (RenderBox::calcHorizontalMargins),
15538 (RenderBox::calcHeight), (RenderBox::calcReplacedWidth),
15539 (RenderBox::calcReplacedHeight), (RenderBox::calcVerticalMargins):
15540 * src/kdelibs/khtml/rendering/render_box.h:
15541 * src/kdelibs/khtml/rendering/render_br.cpp: (RenderBR::RenderBR):
15542 * src/kdelibs/khtml/rendering/render_br.h:
15543 * src/kdelibs/khtml/rendering/render_container.cpp:
15544 (RenderContainer::RenderContainer), (RenderContainer::addChild),
15545 (RenderContainer::removeChildNode), (RenderContainer::removeChild),
15546 (RenderContainer::insertPseudoChild), (RenderContainer::appendChildNode),
15547 (RenderContainer::insertChildNode), (RenderContainer::layout):
15548 * src/kdelibs/khtml/rendering/render_container.h:
15549 * src/kdelibs/khtml/rendering/render_flow.cpp: (RenderFlow::RenderFlow),
15550 (RenderFlow::setStyle), (RenderFlow::print), (RenderFlow::printObject),
15551 (RenderFlow::printSpecialObjects), (RenderFlow::layout),
15552 (RenderFlow::layoutSpecialObjects), (RenderFlow::layoutBlockChildren),
15553 (RenderFlow::insertSpecialObject), (RenderFlow::removeSpecialObject),
15554 (RenderFlow::positionNewFloats), (RenderFlow::leftOffset),
15555 (RenderFlow::leftRelOffset), (RenderFlow::rightOffset),
15556 (RenderFlow::rightRelOffset), (RenderFlow::lineWidth), (RenderFlow::floatBottom),
15557 (RenderFlow::lowestPosition), (RenderFlow::rightmostPosition),
15558 (RenderFlow::leftBottom), (RenderFlow::rightBottom), (RenderFlow::clearFloats),
15559 (RenderFlow::addOverHangingFloats), (next), (RenderFlow::calcMinMaxWidth),
15560 (RenderFlow::close), (RenderFlow::addChild), (RenderFlow::makeChildrenNonInline),
15561 (RenderFlow::nodeAtPoint), (RenderFlow::printTree), (RenderFlow::dump):
15562 * src/kdelibs/khtml/rendering/render_flow.h:
15563 * src/kdelibs/khtml/rendering/render_form.cpp:
15564 (RenderFormElement::RenderFormElement), (RenderFormElement::updateFromElement),
15565 (RenderFormElement::layout), (RenderFormElement::slotClicked),
15566 (RenderButton::RenderButton), (RenderCheckBox::RenderCheckBox),
15567 (RenderCheckBox::calcMinMaxWidth), (RenderCheckBox::updateFromElement),
15568 (RenderCheckBox::slotStateChanged), (RenderRadioButton::RenderRadioButton),
15569 (RenderRadioButton::updateFromElement), (RenderRadioButton::slotClicked),
15570 (RenderRadioButton::calcMinMaxWidth), (RenderSubmitButton::RenderSubmitButton),
15571 (RenderSubmitButton::calcMinMaxWidth), (RenderImageButton::RenderImageButton),
15572 (RenderResetButton::RenderResetButton), (RenderPushButton::RenderPushButton),
15573 (RenderLineEdit::RenderLineEdit), (RenderLineEdit::slotReturnPressed),
15574 (RenderLineEdit::handleFocusOut), (RenderLineEdit::calcMinMaxWidth),
15575 (RenderLineEdit::updateFromElement), (RenderLineEdit::slotTextChanged),
15576 (RenderFieldset::RenderFieldset), (RenderFileButton::RenderFileButton),
15577 (RenderFileButton::calcMinMaxWidth), (RenderFileButton::handleFocusOut),
15578 (RenderFileButton::slotClicked), (RenderFileButton::updateFromElement),
15579 (RenderFileButton::slotReturnPressed), (RenderFileButton::slotTextChanged),
15580 (RenderLabel::RenderLabel), (RenderLegend::RenderLegend),
15581 (RenderSelect::RenderSelect), (RenderSelect::updateFromElement),
15582 (RenderSelect::calcMinMaxWidth), (RenderSelect::layout), (RenderSelect::close),
15583 (RenderSelect::slotSelected), (RenderSelect::slotSelectionChanged),
15584 (RenderSelect::createListBox), (RenderSelect::createComboBox),
15585 (RenderSelect::updateSelection), (TextAreaWidget::TextAreaWidget),
15586 (TextAreaWidget::event), (RenderTextArea::RenderTextArea),
15587 (RenderTextArea::~RenderTextArea), (RenderTextArea::handleFocusOut),
15588 (RenderTextArea::calcMinMaxWidth), (RenderTextArea::updateFromElement),
15589 (RenderTextArea::close), (RenderTextArea::text),
15590 (RenderTextArea::slotTextChanged):
15591 * src/kdelibs/khtml/rendering/render_form.h:
15592 * src/kdelibs/khtml/rendering/render_frames.cpp:
15593 (RenderFrameSet::RenderFrameSet), (RenderFrameSet::~RenderFrameSet),
15594 (RenderFrameSet::nodeAtPoint), (RenderFrameSet::layout),
15595 (RenderFrameSet::positionFrames), (RenderFrameSet::userResize),
15596 (RenderFrameSet::setResizing), (RenderFrameSet::canResize),
15597 (RenderFrameSet::dump), (RenderPart::RenderPart), (RenderPart::setWidget),
15598 (RenderPart::partLoadingErrorNotify), (RenderFrame::RenderFrame),
15599 (RenderFrame::slotViewCleared), (RenderPartObject::RenderPartObject),
15600 (RenderPartObject::updateWidget), (RenderPartObject::close),
15601 (RenderPartObject::partLoadingErrorNotify),
15602 (RenderPartObject::slotPartLoadingErrorNotify),
15603 (RenderPartObject::calcReplacedWidth), (RenderPartObject::calcReplacedHeight),
15604 (RenderPartObject::layout), (RenderPartObject::slotViewCleared):
15605 * src/kdelibs/khtml/rendering/render_frames.h:
15606 * src/kdelibs/khtml/rendering/render_html.cpp: (RenderHtml::RenderHtml),
15607 (RenderHtml::printBoxDecorations):
15608 * src/kdelibs/khtml/rendering/render_html.h:
15609 * src/kdelibs/khtml/rendering/render_image.cpp: (RenderImage::RenderImage),
15610 (RenderImage::setStyle), (RenderImage::setPixmap), (RenderImage::printObject),
15611 (RenderImage::layout), (RenderImage::notifyFinished), (RenderImage::nodeAtPoint),
15612 (RenderImage::updateFromElement):
15613 * src/kdelibs/khtml/rendering/render_image.h:
15614 * src/kdelibs/khtml/rendering/render_list.cpp: (toLetter), (toHebrew),
15615 (RenderListItem::RenderListItem), (RenderListItem::setStyle),
15616 (RenderListItem::calcListValue), (RenderListItem::layout),
15617 (RenderListMarker::RenderListMarker), (RenderListMarker::~RenderListMarker),
15618 (RenderListMarker::setStyle), (RenderListMarker::printObject),
15619 (RenderListMarker::layout), (RenderListMarker::setPixmap),
15620 (RenderListMarker::calcMinMaxWidth):
15621 * src/kdelibs/khtml/rendering/render_list.h:
15622 * src/kdelibs/khtml/rendering/render_object.cpp: (RenderObject::createObject),
15623 (RenderObject::RenderObject), (RenderObject::~RenderObject),
15624 (RenderObject::addChild), (RenderObject::removeChildNode),
15625 (RenderObject::removeChild), (RenderObject::appendChildNode),
15626 (RenderObject::insertChildNode), (RenderObject::containingBlock),
15627 (RenderObject::drawBorder), (RenderObject::printBorder),
15628 (RenderObject::printOutline), (RenderObject::information),
15629 (RenderObject::printTree), (RenderObject::dump),
15630 (RenderObject::selectionStartEnd), (RenderObject::setStyle),
15631 (RenderObject::setOverhangingContents), (RenderObject::root),
15632 (RenderObject::invalidateLayout), (RenderObject::checkSelectionPoint),
15633 (RenderObject::nodeAtPoint), (RenderObject::getVerticalPosition),
15634 (RenderObject::lineHeight), (RenderObject::baselinePosition),
15635 (RenderObject::recalcMinMaxWidths), (RenderObject::scheduleRelayout):
15636 * src/kdelibs/khtml/rendering/render_object.h:
15637 * src/kdelibs/khtml/rendering/render_replaced.cpp:
15638 (RenderReplaced::RenderReplaced), (RenderReplaced::print),
15639 (RenderReplaced::calcMinMaxWidth), (RenderReplaced::lineHeight),
15640 (RenderWidget::RenderWidget), (RenderWidget::detach),
15641 (RenderWidget::~RenderWidget), (RenderWidget::setQWidget),
15642 (RenderWidget::layout), (RenderWidget::setStyle), (RenderWidget::printObject),
15643 (RenderWidget::eventFilter), (RenderWidget::handleDOMEvent),
15644 (RenderWidget::sendWidgetEvent):
15645 * src/kdelibs/khtml/rendering/render_replaced.h:
15646 * src/kdelibs/khtml/rendering/render_root.cpp: (RenderRoot::RenderRoot),
15647 (RenderRoot::calcMinMaxWidth), (RenderRoot::layout), (RenderRoot::printObject),
15648 (RenderRoot::repaintRectangle), (RenderRoot::repaint), (RenderRoot::close),
15649 (RenderRoot::setSelection), (RenderRoot::clearSelection),
15650 (RenderRoot::selectionStartEnd), (RenderRoot::docWidth):
15651 * src/kdelibs/khtml/rendering/render_root.h:
15652 * src/kdelibs/khtml/rendering/render_style.cpp: (RenderStyle::setBitDefaults),
15653 (RenderStyle::RenderStyle), (RenderStyle::inheritFrom),
15654 (RenderStyle::~RenderStyle), (RenderStyle::operator==),
15655 (RenderStyle::getPseudoStyle), (RenderStyle::addPseudoStyle),
15656 (RenderStyle::removePseudoStyle), (RenderStyle::inheritedNotEqual),
15657 (RenderStyle::diff), (RenderStyle::cleanup),
15658 (RenderPseudoElementStyle::RenderPseudoElementStyle),
15659 (RenderPseudoElementStyle::~RenderPseudoElementStyle),
15660 (RenderPseudoElementStyle::setContent), (RenderPseudoElementStyle::contentText),
15661 (RenderPseudoElementStyle::contentObject),
15662 (RenderPseudoElementStyle::clearContent):
15663 * src/kdelibs/khtml/rendering/render_style.h:
15664 * src/kdelibs/khtml/rendering/render_table.cpp: (RenderTable::RenderTable),
15665 (RenderTable::setStyle), (RenderTable::addChild), (RenderTable::addCell),
15666 (RenderTable::setCells), (RenderTable::recalcColInfo), (RenderTable::addColInfo),
15667 (RenderTable::calcSingleColMinMax), (RenderTable::calcFinalColMax),
15668 (RenderTable::calcColMinMax), (RenderTable::calcWidth),
15669 (RenderTable::calcColWidth), (RenderTable::distributeRest),
15670 (RenderTable::layout), (RenderTable::layoutRows), (RenderTable::setCellWidths),
15671 (RenderTable::print), (RenderTable::calcMinMaxWidth), (RenderTable::close),
15672 (RenderTable::recalcCells), (RenderTable::dump),
15673 (RenderTableSection::RenderTableSection),
15674 (RenderTableSection::~RenderTableSection), (RenderTableSection::addChild),
15675 (RenderTableSection::dump), (RenderTableRow::RenderTableRow),
15676 (RenderTableRow::addChild), (RenderTableRow::dump), (RenderTableRow::layout),
15677 (RenderTableCell::RenderTableCell), (RenderTableCell::updateFromElement),
15678 (RenderTableCell::calcMinMaxWidth), (RenderTableCell::setWidth),
15679 (RenderTableCell::close), (RenderTableCell::print),
15680 (RenderTableCell::printBoxDecorations), (RenderTableCell::dump),
15681 (RenderTableCol::RenderTableCol), (RenderTableCol::updateFromElement),
15682 (RenderTableCol::dump), (RenderTableCaption::RenderTableCaption):
15683 * src/kdelibs/khtml/rendering/render_table.h:
15684 * src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::~TextSlave),
15685 (TextSlave::print), (TextSlave::printSelection), (TextSlave::printDecoration),
15686 (TextSlave::printBoxDecorations), (TextSlave::checkSelectionPoint),
15687 (TextSlaveArray::compareItems), (RenderText::RenderText), (RenderText::setStyle),
15688 (RenderText::~RenderText), (RenderText::deleteSlaves), (RenderText::nodeAtPoint),
15689 (RenderText::checkSelectionPoint), (RenderText::cursorPos),
15690 (RenderText::absolutePosition), (RenderText::rightmostPosition),
15691 (RenderText::printObject), (RenderText::print), (RenderText::calcMinMaxWidth),
15692 (RenderText::font), (RenderText::setText), (RenderText::height),
15693 (RenderText::lineHeight), (RenderText::baselinePosition), (RenderText::position),
15694 (RenderText::width), (RenderText::metrics), (RenderText::printTextOutline):
15695 * src/kdelibs/khtml/rendering/render_text.h:
15696 * src/kdelibs/khtml/xml/dom2_eventsimpl.cpp: (EventImpl::~EventImpl),
15697 (EventImpl::setTarget), (EventImpl::initEvent), (EventImpl::idToType),
15698 (UIEventImpl::UIEventImpl), (UIEventImpl::~UIEventImpl),
15699 (KeyEventImpl::KeyEventImpl), (KeyEventImpl::~KeyEventImpl),
15700 (KeyEventImpl::checkModifier), (KeyEventImpl::initKeyEvent),
15701 (KeyEventImpl::initModifier), (KeyEventImpl::inputGenerated),
15702 (KeyEventImpl::keyVal), (KeyEventImpl::numPad), (KeyEventImpl::outputString),
15703 (KeyEventImpl::virtKeyVal), (RegisteredEventListener::operator==):
15704 * src/kdelibs/khtml/xml/dom2_eventsimpl.h:
15705 * src/kdelibs/khtml/xml/dom2_rangeimpl.cpp: (RangeImpl::~RangeImpl),
15706 (RangeImpl::compareBoundaryPoints), (RangeImpl::processContents):
15707 * src/kdelibs/khtml/xml/dom2_rangeimpl.h:
15708 * src/kdelibs/khtml/xml/dom2_traversalimpl.cpp:
15709 (NodeIteratorImpl::NodeIteratorImpl), (TreeWalkerImpl::TreeWalkerImpl),
15710 (TreeWalkerImpl::operator = ), (TreeWalkerImpl::~TreeWalkerImpl),
15711 (TreeWalkerImpl::getCurrentNode), (TreeWalkerImpl::setWhatToShow),
15712 (TreeWalkerImpl::setFilter), (TreeWalkerImpl::setExpandEntityReferences),
15713 (TreeWalkerImpl::setCurrentNode), (TreeWalkerImpl::parentNode),
15714 (TreeWalkerImpl::firstChild), (TreeWalkerImpl::lastChild),
15715 (TreeWalkerImpl::previousSibling), (TreeWalkerImpl::nextSibling),
15716 (TreeWalkerImpl::previousNode), (TreeWalkerImpl::nextNode),
15717 (TreeWalkerImpl::isAccepted), (TreeWalkerImpl::getParentNode),
15718 (TreeWalkerImpl::getPreviousSibling), (TreeWalkerImpl::getNextSibling):
15719 * src/kdelibs/khtml/xml/dom2_traversalimpl.h:
15720 * src/kdelibs/khtml/xml/dom2_viewsimpl.cpp:
15721 * src/kdelibs/khtml/xml/dom2_viewsimpl.h:
15722 * src/kdelibs/khtml/xml/dom_docimpl.cpp: (DOMImplementationImpl::hasFeature),
15723 (DOMImplementationImpl::createDocumentType),
15724 (DOMImplementationImpl::getInterface), (DOMImplementationImpl::createDocument),
15725 (DOMImplementationImpl::createCSSStyleSheet),
15726 (DOMImplementationImpl::createHTMLDocument), (DOMImplementationImpl::instance),
15727 (DocumentImpl::DocumentImpl), (DocumentImpl::~DocumentImpl),
15728 (DocumentImpl::doctype), (DocumentImpl::implementation),
15729 (DocumentImpl::createDocumentFragment), (DocumentImpl::createTextNode),
15730 (DocumentImpl::createComment), (DocumentImpl::createCDATASection),
15731 (DocumentImpl::createProcessingInstruction), (DocumentImpl::createAttribute),
15732 (DocumentImpl::createEntityReference), (DocumentImpl::importNode),
15733 (DocumentImpl::createElementNS), (DocumentImpl::getElementById),
15734 (DocumentImpl::setTitle), (DocumentImpl::nodeName), (DocumentImpl::nodeType),
15735 (DocumentImpl::createHTMLElement), (DocumentImpl::nextState),
15736 (DocumentImpl::docState), (DocumentImpl::createNodeIterator),
15737 (DocumentImpl::createTreeWalker), (DocumentImpl::setDocumentChanged),
15738 (DocumentImpl::recalcStyle), (DocumentImpl::updateRendering),
15739 (DocumentImpl::updateDocumentsRendering), (DocumentImpl::attach),
15740 (DocumentImpl::detach), (DocumentImpl::setVisuallyOrdered), (DocumentImpl::open),
15741 (DocumentImpl::close), (DocumentImpl::write), (DocumentImpl::setStyleSheet),
15742 (DocumentImpl::setUserStyleSheet), (DocumentImpl::elementSheet),
15743 (DocumentImpl::determineParseMode), (DocumentImpl::findElement),
15744 (DocumentImpl::nextFocusNode), (DocumentImpl::previousFocusNode),
15745 (DocumentImpl::nodeAbsIndex), (DocumentImpl::nodeWithAbsIndex),
15746 (DocumentImpl::processHttpEquiv), (DocumentImpl::prepareMouseEvent),
15747 (DocumentImpl::childAllowed), (DocumentImpl::cloneNode), (DocumentImpl::attrId),
15748 (DocumentImpl::attrName), (DocumentImpl::tagId), (DocumentImpl::tagName),
15749 (DocumentImpl::namespaceURI), (DocumentImpl::updateStyleSelector),
15750 (DocumentImpl::recalcStyleSelector), (DocumentImpl::setFocusNode),
15751 (DocumentImpl::notifyBeforeNodeRemoval), (DocumentImpl::defaultEventHandler),
15752 (DocumentImpl::setWindowEventListener), (DocumentImpl::getWindowEventListener),
15753 (DocumentImpl::removeWindowEventListener), (DocumentFragmentImpl::nodeName),
15754 (DocumentFragmentImpl::cloneNode), (DocumentTypeImpl::DocumentTypeImpl),
15755 (DocumentTypeImpl::~DocumentTypeImpl), (DocumentTypeImpl::copyFrom),
15756 (DocumentTypeImpl::nodeName), (DocumentTypeImpl::cloneNode):
15757 * src/kdelibs/khtml/xml/dom_docimpl.h:
15758 * src/kdelibs/khtml/xml/dom_elementimpl.cpp: (AttributeImpl::allocateImpl),
15759 (AttrImpl::AttrImpl), (AttrImpl::~AttrImpl), (AttrImpl::nodeName),
15760 (AttrImpl::prefix), (AttrImpl::setPrefix), (AttrImpl::nodeValue),
15761 (AttrImpl::setValue), (AttrImpl::setNodeValue), (AttrImpl::cloneNode),
15762 (ElementImpl::ElementImpl), (ElementImpl::~ElementImpl),
15763 (ElementImpl::removeAttribute), (ElementImpl::setAttribute),
15764 (ElementImpl::nodeType), (ElementImpl::getAttribute),
15765 (ElementImpl::setAttributeMap), (ElementImpl::cloneNode),
15766 (ElementImpl::nodeName), (ElementImpl::tagName), (ElementImpl::setPrefix),
15767 (ElementImpl::createAttributeMap), (ElementImpl::attach),
15768 (ElementImpl::recalcStyle), (ElementImpl::childAllowed),
15769 (ElementImpl::createDecl), (ElementImpl::dispatchAttrRemovalEvent),
15770 (ElementImpl::dispatchAttrAdditionEvent), (ElementImpl::dump),
15771 (XMLElementImpl::XMLElementImpl), (XMLElementImpl::~XMLElementImpl),
15772 (XMLElementImpl::localName), (XMLElementImpl::cloneNode),
15773 (NamedAttrMapImpl::NamedAttrMapImpl), (NamedAttrMapImpl::~NamedAttrMapImpl),
15774 (NamedAttrMapImpl::getNamedItem), (NamedAttrMapImpl::setNamedItem),
15775 (NamedAttrMapImpl::removeNamedItem), (NamedAttrMapImpl::item),
15776 (NamedAttrMapImpl::length), (NamedAttrMapImpl::getAttributeItem),
15777 (NamedAttrMapImpl::mapId), (NamedAttrMapImpl::clearAttributes),
15778 (NamedAttrMapImpl::detachFromElement), (NamedAttrMapImpl::operator=),
15779 (NamedAttrMapImpl::addAttribute), (NamedAttrMapImpl::removeAttribute):
15780 * src/kdelibs/khtml/xml/dom_elementimpl.h:
15781 * src/kdelibs/khtml/xml/dom_nodeimpl.cpp: (NodeImpl::NodeImpl),
15782 (NodeImpl::~NodeImpl), (NodeImpl::setNodeValue), (NodeImpl::nodeName),
15783 (NodeImpl::normalize), (NodeImpl::prefix), (NodeImpl::setPrefix),
15784 (NodeImpl::localName), (escapeHTML), (NodeImpl::recursive_toHTML),
15785 (NodeImpl::getRect), (NodeImpl::setChanged), (NodeImpl::isInline),
15786 (NodeImpl::nodeIndex), (NodeImpl::addEventListener),
15787 (NodeImpl::removeEventListener), (NodeImpl::removeHTMLEventListener),
15788 (NodeImpl::setHTMLEventListener), (NodeImpl::getHTMLEventListener),
15789 (NodeImpl::dispatchEvent), (NodeImpl::dispatchGenericEvent),
15790 (NodeImpl::dispatchHTMLEvent), (NodeImpl::dispatchWindowEvent),
15791 (NodeImpl::dispatchMouseEvent), (NodeImpl::dispatchUIEvent),
15792 (NodeImpl::dispatchSubtreeModifiedEvent), (NodeImpl::dispatchKeyEvent),
15793 (NodeImpl::handleLocalEvents), (NodeImpl::defaultEventHandler),
15794 (NodeImpl::traverseNextNode), (NodeImpl::traversePreviousNode),
15795 (NodeImpl::checkSetPrefix), (NodeImpl::checkAddChild), (NodeImpl::isAncestor),
15796 (NodeImpl::childAllowed), (NodeImpl::diff), (NodeImpl::dump),
15797 (NodeImpl::deleteMe), (NodeImpl::init), (NodeImpl::attach), (NodeImpl::detach),
15798 (NodeImpl::maintainsState), (NodeImpl::state), (NodeImpl::restoreState),
15799 (NodeImpl::insertedIntoDocument), (NodeImpl::removedFromDocument),
15800 (NodeImpl::childrenChanged), (NodeImpl::isReadOnly), (NodeImpl::nextRenderer),
15801 (NodeBaseImpl::NodeBaseImpl), (NodeBaseImpl::~NodeBaseImpl),
15802 (NodeBaseImpl::insertBefore), (NodeBaseImpl::replaceChild),
15803 (NodeBaseImpl::removeChild), (NodeBaseImpl::removeChildren),
15804 (NodeBaseImpl::appendChild), (NodeBaseImpl::checkSameDocument),
15805 (NodeBaseImpl::checkNoOwner), (NodeBaseImpl::addChild), (NodeBaseImpl::attach),
15806 (NodeBaseImpl::detach), (NodeBaseImpl::cloneChildNodes),
15807 (NodeBaseImpl::getElementsByTagNameNS), (NodeBaseImpl::getUpperLeftCorner),
15808 (NodeBaseImpl::getLowerRightCorner), (NodeBaseImpl::getRect),
15809 (NodeBaseImpl::setFocus), (NodeBaseImpl::setActive),
15810 (NodeBaseImpl::dispatchChildInsertedEvents),
15811 (NodeBaseImpl::dispatchChildRemovalEvents), (ChildNodeListImpl::nodeMatches),
15812 (TagNodeListImpl::TagNodeListImpl), (TagNodeListImpl::nodeMatches),
15813 (GenericRONamedNodeMapImpl::GenericRONamedNodeMapImpl),
15814 (GenericRONamedNodeMapImpl::getNamedItem),
15815 (GenericRONamedNodeMapImpl::setNamedItem),
15816 (GenericRONamedNodeMapImpl::removeNamedItem), (GenericRONamedNodeMapImpl::item),
15817 (GenericRONamedNodeMapImpl::length), (GenericRONamedNodeMapImpl::getNamedItemNS),
15818 (GenericRONamedNodeMapImpl::setNamedItemNS),
15819 (GenericRONamedNodeMapImpl::removeNamedItemNS),
15820 (GenericRONamedNodeMapImpl::addNode):
15821 * src/kdelibs/khtml/xml/dom_nodeimpl.h:
15822 * src/kdelibs/khtml/xml/dom_stringimpl.cpp: (DOMStringImpl::toLengthArray),
15823 (DOMStringImpl::lower), (DOMStringImpl::upper):
15824 * src/kdelibs/khtml/xml/dom_stringimpl.h:
15825 * src/kdelibs/khtml/xml/dom_textimpl.cpp: (CharacterDataImpl::CharacterDataImpl),
15826 (CharacterDataImpl::setData), (CharacterDataImpl::substringData),
15827 (CharacterDataImpl::appendData), (CharacterDataImpl::insertData),
15828 (CharacterDataImpl::deleteData), (CharacterDataImpl::replaceData),
15829 (CharacterDataImpl::nodeValue), (CharacterDataImpl::setNodeValue),
15830 (CharacterDataImpl::dispatchModifiedEvent),
15831 (CharacterDataImpl::checkCharDataOperation), (CharacterDataImpl::dump),
15832 (CommentImpl::nodeName), (CommentImpl::cloneNode), (CommentImpl::id),
15833 (TextImpl::splitText), (TextImpl::nodeName), (TextImpl::cloneNode),
15834 (TextImpl::attach), (TextImpl::id), (TextImpl::recalcStyle),
15835 (CDATASectionImpl::nodeName), (CDATASectionImpl::cloneNode):
15836 * src/kdelibs/khtml/xml/dom_textimpl.h:
15837 * src/kdelibs/khtml/xml/dom_xmlimpl.cpp: (EntityImpl::nodeName),
15838 (EntityImpl::nodeType), (EntityImpl::cloneNode), (EntityReferenceImpl::nodeName),
15839 (EntityReferenceImpl::cloneNode), (NotationImpl::publicId),
15840 (NotationImpl::systemId), (NotationImpl::nodeName), (NotationImpl::nodeType),
15841 (NotationImpl::cloneNode), (NotationImpl::childTypeAllowed),
15842 (ProcessingInstructionImpl::ProcessingInstructionImpl),
15843 (ProcessingInstructionImpl::target), (ProcessingInstructionImpl::data),
15844 (ProcessingInstructionImpl::setData), (ProcessingInstructionImpl::nodeName),
15845 (ProcessingInstructionImpl::setNodeValue),
15846 (ProcessingInstructionImpl::cloneNode), (ProcessingInstructionImpl::localHref),
15847 (ProcessingInstructionImpl::checkStyleSheet),
15848 (ProcessingInstructionImpl::setStyleSheet):
15849 * src/kdelibs/khtml/xml/dom_xmlimpl.h:
15850 * src/kdelibs/khtml/xml/xml_tokenizer.cpp: (XMLHandler::startDocument),
15851 (XMLHandler::startElement), (XMLHandler::endElement), (XMLHandler::startCDATA),
15852 (XMLHandler::characters), (XMLHandler::errorString), (XMLHandler::fatalError),
15853 (XMLHandler::enterText), (XMLHandler::exitText),
15854 (XMLHandler::internalEntityDecl), (XMLHandler::notationDecl),
15855 (XMLTokenizer::finish), (XMLTokenizer::addScripts),
15856 (XMLTokenizer::executeScripts), (XMLTokenizer::notifyFinished):
15857 * src/kdelibs/khtml/xml/xml_tokenizer.h:
15858 * src/kdelibs/kjs/array_object.cpp: (ArrayInstanceImp::ArrayInstanceImp),
15859 (ArrayInstanceImp::put), (ArrayInstanceImp::putDirect),
15860 (ArrayPrototypeImp::ArrayPrototypeImp), (ArrayPrototypeImp::get),
15861 (ArrayProtoFuncImp::ArrayProtoFuncImp), (ArrayProtoFuncImp::implementsCall),
15862 (ArrayProtoFuncImp::call), (ArrayObjectImp::ArrayObjectImp),
15863 (ArrayObjectImp::implementsConstruct), (ArrayObjectImp::construct),
15864 (ArrayObjectImp::implementsCall), (ArrayObjectImp::call):
15865 * src/kdelibs/kjs/array_object.h:
15866 * src/kdelibs/kjs/bool_object.cpp: (BooleanInstanceImp::BooleanInstanceImp),
15867 (BooleanPrototypeImp::BooleanPrototypeImp),
15868 (BooleanProtoFuncImp::BooleanProtoFuncImp),
15869 (BooleanProtoFuncImp::implementsCall), (BooleanProtoFuncImp::call),
15870 (BooleanObjectImp::BooleanObjectImp), (BooleanObjectImp::implementsConstruct),
15871 (BooleanObjectImp::construct), (BooleanObjectImp::implementsCall),
15872 (BooleanObjectImp::call):
15873 * src/kdelibs/kjs/bool_object.h:
15874 * src/kdelibs/kjs/collector.cpp: (Collector::allocate), (Collector::collect),
15875 (Collector::finalCheck):
15876 * src/kdelibs/kjs/collector.h:
15877 * src/kdelibs/kjs/date_object.cpp: (DateInstanceImp::DateInstanceImp),
15878 (DatePrototypeImp::DatePrototypeImp), (DatePrototypeImp::get),
15879 (DateProtoFuncImp::DateProtoFuncImp), (DateProtoFuncImp::implementsCall),
15880 (DateProtoFuncImp::call), (DateObjectImp::DateObjectImp),
15881 (DateObjectImp::implementsConstruct), (DateObjectImp::construct),
15882 (DateObjectImp::implementsCall), (DateObjectImp::call),
15883 (DateObjectFuncImp::DateObjectFuncImp), (DateObjectFuncImp::implementsCall),
15884 (DateObjectFuncImp::call), (KJS::parseDate), (ymdhms_to_seconds),
15885 (KJS::KRFCDate_parseDate), (KJS::timeClip):
15886 * src/kdelibs/kjs/date_object.h:
15887 * src/kdelibs/kjs/debugger.cpp: (Debugger::Debugger), (Debugger::~Debugger),
15888 (Debugger::attach), (Debugger::detach), (Debugger::sourceParsed),
15889 (Debugger::sourceUnused), (Debugger::exception), (Debugger::atStatement),
15890 (Debugger::callEvent), (Debugger::returnEvent):
15891 * src/kdelibs/kjs/debugger.h:
15892 * src/kdelibs/kjs/error_object.cpp: (ErrorPrototypeImp::ErrorPrototypeImp),
15893 (ErrorProtoFuncImp::ErrorProtoFuncImp), (ErrorProtoFuncImp::implementsCall),
15894 (ErrorProtoFuncImp::call), (ErrorObjectImp::ErrorObjectImp),
15895 (ErrorObjectImp::implementsConstruct), (ErrorObjectImp::construct),
15896 (ErrorObjectImp::implementsCall), (ErrorObjectImp::call),
15897 (NativeErrorPrototypeImp::NativeErrorPrototypeImp),
15898 (NativeErrorImp::NativeErrorImp), (NativeErrorImp::implementsConstruct),
15899 (NativeErrorImp::construct), (NativeErrorImp::implementsCall),
15900 (NativeErrorImp::call), (NativeErrorImp::mark):
15901 * src/kdelibs/kjs/error_object.h:
15902 * src/kdelibs/kjs/function.cpp: (FunctionImp::FunctionImp),
15903 (FunctionImp::~FunctionImp), (FunctionImp::mark), (FunctionImp::implementsCall),
15904 (FunctionImp::call), (FunctionImp::processParameters),
15905 (FunctionImp::processVarDecls), (FunctionImp::pushArgs), (FunctionImp::popArgs),
15906 (DeclaredFunctionImp::DeclaredFunctionImp),
15907 (DeclaredFunctionImp::~DeclaredFunctionImp),
15908 (DeclaredFunctionImp::implementsConstruct), (DeclaredFunctionImp::construct),
15909 (DeclaredFunctionImp::execute), (DeclaredFunctionImp::processVarDecls),
15910 (ArgumentsImp::ArgumentsImp), (ActivationImp::ActivationImp),
15911 (ActivationImp::~ActivationImp), (GlobalFuncImp::GlobalFuncImp),
15912 (GlobalFuncImp::codeType), (GlobalFuncImp::implementsCall),
15913 (GlobalFuncImp::call):
15914 * src/kdelibs/kjs/function.h:
15915 * src/kdelibs/kjs/function_object.cpp:
15916 (FunctionPrototypeImp::FunctionPrototypeImp),
15917 (FunctionPrototypeImp::~FunctionPrototypeImp),
15918 (FunctionPrototypeImp::implementsCall), (FunctionPrototypeImp::call),
15919 (FunctionProtoFuncImp::FunctionProtoFuncImp),
15920 (FunctionProtoFuncImp::implementsCall), (FunctionProtoFuncImp::call),
15921 (FunctionObjectImp::FunctionObjectImp), (FunctionObjectImp::~FunctionObjectImp),
15922 (FunctionObjectImp::implementsConstruct), (FunctionObjectImp::construct),
15923 (FunctionObjectImp::implementsCall), (FunctionObjectImp::call):
15924 * src/kdelibs/kjs/function_object.h:
15925 * src/kdelibs/kjs/grammar.y:
15926 * src/kdelibs/kjs/internal.cpp: (UndefinedImp::toPrimitive),
15927 (UndefinedImp::toBoolean), (UndefinedImp::toNumber), (UndefinedImp::toString),
15928 (UndefinedImp::toObject), (NullImp::toPrimitive), (NullImp::toBoolean),
15929 (NullImp::toNumber), (NullImp::toString), (NullImp::toObject),
15930 (BooleanImp::toPrimitive), (BooleanImp::toBoolean), (BooleanImp::toNumber),
15931 (BooleanImp::toString), (BooleanImp::toObject), (StringImp::StringImp),
15932 (StringImp::toPrimitive), (StringImp::toBoolean), (StringImp::toNumber),
15933 (StringImp::toString), (StringImp::toObject), (NumberImp::NumberImp),
15934 (NumberImp::toPrimitive), (NumberImp::toBoolean), (NumberImp::toNumber),
15935 (NumberImp::toString), (NumberImp::toObject), (ReferenceImp::ReferenceImp),
15936 (ReferenceImp::mark), (ReferenceImp::toPrimitive), (ReferenceImp::toBoolean),
15937 (ReferenceImp::toNumber), (ReferenceImp::toString), (ReferenceImp::toObject),
15938 (LabelStack::LabelStack), (LabelStack::operator=), (LabelStack::push),
15939 (LabelStack::contains), (LabelStack::pop), (LabelStack::~LabelStack),
15940 (LabelStack::clear), (CompletionImp::CompletionImp),
15941 (CompletionImp::~CompletionImp), (CompletionImp::mark),
15942 (CompletionImp::toPrimitive), (CompletionImp::toBoolean),
15943 (CompletionImp::toNumber), (CompletionImp::toString), (CompletionImp::toObject),
15944 (ListImp::toPrimitive), (ListImp::toBoolean), (ListImp::toNumber),
15945 (ListImp::toString), (ListImp::toObject), (ListImp::ListImp),
15946 (ListImp::~ListImp), (ListImp::mark), (ListImp::append), (ListImp::prepend),
15947 (ListImp::appendList), (ListImp::prependList), (ListImp::removeFirst),
15948 (ListImp::removeLast), (ListImp::remove), (ListImp::clear), (ListImp::copy),
15949 (ListImp::erase), (ListImp::isEmpty), (ListImp::size), (ListImp::at),
15950 (ListImp::empty), (ContextImp::ContextImp), (ContextImp::~ContextImp),
15951 (ContextImp::pushScope), (ContextImp::popScope), (Parser::parse),
15952 (InterpreterImp::globalInit), (InterpreterImp::globalClear),
15953 (InterpreterImp::InterpreterImp), (InterpreterImp::~InterpreterImp),
15954 (InterpreterImp::clear), (InterpreterImp::mark), (InterpreterImp::checkSyntax),
15955 (InterpreterImp::evaluate), (InterpreterImp::setDebugger),
15956 (InternalFunctionImp::InternalFunctionImp),
15957 (InternalFunctionImp::implementsHasInstance), (InternalFunctionImp::hasInstance),
15958 (KJS::roundValue), (KJS::printInfo):
15959 * src/kdelibs/kjs/internal.h:
15960 * src/kdelibs/kjs/lexer.cpp: (Lexer::Lexer), (Lexer::curr), (Lexer::setCode),
15961 (Lexer::lex), (Lexer::isLineTerminator), (Lexer::matchPunctuator),
15962 (Lexer::scanRegExp):
15963 * src/kdelibs/kjs/lexer.h:
15964 * src/kdelibs/kjs/lexer.lut.h:
15965 * src/kdelibs/kjs/lookup.cpp: (Lookup::findEntry), (Lookup::find):
15966 * src/kdelibs/kjs/lookup.h:
15967 * src/kdelibs/kjs/math_object.cpp: (MathObjectImp::MathObjectImp),
15968 (MathObjectImp::get), (MathObjectImp::getValueProperty),
15969 (MathFuncImp::MathFuncImp), (MathFuncImp::implementsCall), (MathFuncImp::call):
15970 * src/kdelibs/kjs/math_object.h:
15971 * src/kdelibs/kjs/math_object.lut.h:
15972 * src/kdelibs/kjs/nodes.cpp: (Node::Node), (Node::~Node), (Node::finalCheck),
15973 (Node::throwError), (StatementNode::StatementNode),
15974 (StatementNode::~StatementNode), (StatementNode::setLoc),
15975 (StatementNode::hitStatement), (StatementNode::abortStatement),
15976 (NullNode::evaluate), (BooleanNode::evaluate), (NumberNode::evaluate),
15977 (StringNode::evaluate), (RegExpNode::evaluate), (ThisNode::evaluate),
15978 (ResolveNode::evaluate), (GroupNode::~GroupNode), (GroupNode::ref),
15979 (GroupNode::deref), (GroupNode::evaluate), (ElisionNode::~ElisionNode),
15980 (ElisionNode::ref), (ElisionNode::deref), (ElisionNode::evaluate),
15981 (ElementNode::~ElementNode), (ElementNode::ref), (ElementNode::deref),
15982 (ElementNode::evaluate), (ArrayNode::~ArrayNode), (ArrayNode::ref),
15983 (ArrayNode::deref), (ArrayNode::evaluate),
15984 (ObjectLiteralNode::~ObjectLiteralNode), (ObjectLiteralNode::ref),
15985 (ObjectLiteralNode::deref), (ObjectLiteralNode::evaluate),
15986 (PropertyValueNode::~PropertyValueNode), (PropertyValueNode::ref),
15987 (PropertyValueNode::deref), (PropertyValueNode::evaluate),
15988 (PropertyNode::evaluate), (AccessorNode1::~AccessorNode1), (AccessorNode1::ref),
15989 (AccessorNode1::deref), (AccessorNode1::evaluate),
15990 (AccessorNode2::~AccessorNode2), (AccessorNode2::ref), (AccessorNode2::deref),
15991 (AccessorNode2::evaluate), (ArgumentListNode::ArgumentListNode),
15992 (ArgumentListNode::~ArgumentListNode), (ArgumentListNode::ref),
15993 (ArgumentListNode::deref), (ArgumentListNode::evaluate),
15994 (ArgumentListNode::evaluateList), (ArgumentsNode::ArgumentsNode),
15995 (ArgumentsNode::~ArgumentsNode), (ArgumentsNode::ref), (ArgumentsNode::deref),
15996 (ArgumentsNode::evaluate), (ArgumentsNode::evaluateList),
15997 (NewExprNode::~NewExprNode), (NewExprNode::ref), (NewExprNode::deref),
15998 (NewExprNode::evaluate), (FunctionCallNode::~FunctionCallNode),
15999 (FunctionCallNode::ref), (FunctionCallNode::deref), (FunctionCallNode::evaluate),
16000 (PostfixNode::~PostfixNode), (PostfixNode::ref), (PostfixNode::deref),
16001 (PostfixNode::evaluate), (DeleteNode::~DeleteNode), (DeleteNode::ref),
16002 (DeleteNode::deref), (DeleteNode::evaluate), (VoidNode::~VoidNode),
16003 (VoidNode::ref), (VoidNode::deref), (VoidNode::evaluate),
16004 (TypeOfNode::~TypeOfNode), (TypeOfNode::ref), (TypeOfNode::deref),
16005 (TypeOfNode::evaluate), (PrefixNode::~PrefixNode), (PrefixNode::ref),
16006 (PrefixNode::deref), (PrefixNode::evaluate), (UnaryPlusNode::~UnaryPlusNode),
16007 (UnaryPlusNode::ref), (UnaryPlusNode::deref), (UnaryPlusNode::evaluate),
16008 (NegateNode::~NegateNode), (NegateNode::ref), (NegateNode::deref),
16009 (NegateNode::evaluate), (BitwiseNotNode::~BitwiseNotNode), (BitwiseNotNode::ref),
16010 (BitwiseNotNode::deref), (BitwiseNotNode::evaluate),
16011 (LogicalNotNode::~LogicalNotNode), (LogicalNotNode::ref),
16012 (LogicalNotNode::deref), (LogicalNotNode::evaluate), (MultNode::~MultNode),
16013 (MultNode::ref), (MultNode::deref), (MultNode::evaluate), (AddNode::~AddNode),
16014 (AddNode::ref), (AddNode::deref), (AddNode::evaluate), (ShiftNode::~ShiftNode),
16015 (ShiftNode::ref), (ShiftNode::deref), (ShiftNode::evaluate),
16016 (RelationalNode::~RelationalNode), (RelationalNode::ref),
16017 (RelationalNode::deref), (RelationalNode::evaluate), (EqualNode::~EqualNode),
16018 (EqualNode::ref), (EqualNode::deref), (EqualNode::evaluate),
16019 (BitOperNode::~BitOperNode), (BitOperNode::ref), (BitOperNode::deref),
16020 (BitOperNode::evaluate), (BinaryLogicalNode::~BinaryLogicalNode),
16021 (BinaryLogicalNode::ref), (BinaryLogicalNode::deref),
16022 (BinaryLogicalNode::evaluate), (ConditionalNode::~ConditionalNode),
16023 (ConditionalNode::ref), (ConditionalNode::deref), (ConditionalNode::evaluate),
16024 (AssignNode::~AssignNode), (AssignNode::ref), (AssignNode::deref),
16025 (AssignNode::evaluate), (CommaNode::~CommaNode), (CommaNode::ref),
16026 (CommaNode::deref), (CommaNode::evaluate), (StatListNode::~StatListNode),
16027 (StatListNode::ref), (StatListNode::deref), (StatListNode::execute),
16028 (StatListNode::processVarDecls), (AssignExprNode::~AssignExprNode),
16029 (AssignExprNode::ref), (AssignExprNode::deref), (AssignExprNode::evaluate),
16030 (VarDeclNode::VarDeclNode), (VarDeclNode::~VarDeclNode), (VarDeclNode::ref),
16031 (VarDeclNode::deref), (VarDeclNode::evaluate), (VarDeclNode::processVarDecls),
16032 (VarDeclListNode::~VarDeclListNode), (VarDeclListNode::ref),
16033 (VarDeclListNode::deref), (VarDeclListNode::evaluate),
16034 (VarDeclListNode::processVarDecls), (VarStatementNode::~VarStatementNode),
16035 (VarStatementNode::ref), (VarStatementNode::deref), (VarStatementNode::execute),
16036 (VarStatementNode::processVarDecls), (BlockNode::~BlockNode), (BlockNode::ref),
16037 (BlockNode::deref), (BlockNode::execute), (BlockNode::processVarDecls),
16038 (EmptyStatementNode::execute), (ExprStatementNode::~ExprStatementNode),
16039 (ExprStatementNode::ref), (ExprStatementNode::deref),
16040 (ExprStatementNode::execute), (IfNode::~IfNode), (IfNode::ref), (IfNode::deref),
16041 (IfNode::execute), (IfNode::processVarDecls), (DoWhileNode::~DoWhileNode),
16042 (DoWhileNode::ref), (DoWhileNode::deref), (DoWhileNode::execute),
16043 (DoWhileNode::processVarDecls), (WhileNode::~WhileNode), (WhileNode::ref),
16044 (WhileNode::deref), (WhileNode::execute), (WhileNode::processVarDecls),
16045 (ForNode::~ForNode), (ForNode::ref), (ForNode::deref), (ForNode::execute),
16046 (ForNode::processVarDecls), (ForInNode::ForInNode), (ForInNode::~ForInNode),
16047 (ForInNode::ref), (ForInNode::deref), (ForInNode::execute),
16048 (ForInNode::processVarDecls), (ContinueNode::execute), (BreakNode::execute),
16049 (ReturnNode::~ReturnNode), (ReturnNode::ref), (ReturnNode::deref),
16050 (ReturnNode::execute), (WithNode::~WithNode), (WithNode::ref), (WithNode::deref),
16051 (WithNode::execute), (WithNode::processVarDecls),
16052 (CaseClauseNode::~CaseClauseNode), (CaseClauseNode::ref),
16053 (CaseClauseNode::deref), (CaseClauseNode::evaluate),
16054 (CaseClauseNode::evalStatements), (CaseClauseNode::processVarDecls),
16055 (ClauseListNode::~ClauseListNode), (ClauseListNode::ref),
16056 (ClauseListNode::deref), (ClauseListNode::evaluate),
16057 (ClauseListNode::processVarDecls), (CaseBlockNode::~CaseBlockNode),
16058 (CaseBlockNode::ref), (CaseBlockNode::deref), (CaseBlockNode::evaluate),
16059 (CaseBlockNode::evalBlock), (CaseBlockNode::processVarDecls),
16060 (SwitchNode::~SwitchNode), (SwitchNode::ref), (SwitchNode::deref),
16061 (SwitchNode::execute), (SwitchNode::processVarDecls), (LabelNode::~LabelNode),
16062 (LabelNode::ref), (LabelNode::deref), (LabelNode::execute),
16063 (LabelNode::processVarDecls), (ThrowNode::~ThrowNode), (ThrowNode::ref),
16064 (ThrowNode::deref), (ThrowNode::execute), (CatchNode::~CatchNode),
16065 (CatchNode::ref), (CatchNode::deref), (CatchNode::execute),
16066 (CatchNode::processVarDecls), (FinallyNode::~FinallyNode), (FinallyNode::ref),
16067 (FinallyNode::deref), (FinallyNode::execute), (FinallyNode::processVarDecls),
16068 (TryNode::~TryNode), (TryNode::ref), (TryNode::deref), (TryNode::execute),
16069 (TryNode::processVarDecls), (ParameterNode::~ParameterNode),
16070 (ParameterNode::ref), (ParameterNode::deref), (ParameterNode::append),
16071 (ParameterNode::evaluate), (FunctionBodyNode::FunctionBodyNode),
16072 (FunctionBodyNode::~FunctionBodyNode), (FunctionBodyNode::ref),
16073 (FunctionBodyNode::deref), (FunctionBodyNode::execute),
16074 (FunctionBodyNode::processFuncDecl), (FunctionBodyNode::processVarDecls),
16075 (FuncDeclNode::~FuncDeclNode), (FuncDeclNode::ref), (FuncDeclNode::deref),
16076 (FuncDeclNode::processFuncDecl), (FuncExprNode::~FuncExprNode),
16077 (FuncExprNode::ref), (FuncExprNode::deref), (FuncExprNode::evaluate),
16078 (SourceElementNode::~SourceElementNode), (SourceElementNode::ref),
16079 (SourceElementNode::deref), (SourceElementNode::execute),
16080 (SourceElementNode::processFuncDecl), (SourceElementNode::processVarDecls),
16081 (SourceElementsNode::~SourceElementsNode), (SourceElementsNode::ref),
16082 (SourceElementsNode::deref), (SourceElementsNode::execute),
16083 (SourceElementsNode::processFuncDecl), (SourceElementsNode::processVarDecls),
16084 (ProgramNode::ProgramNode), (ProgramNode::~ProgramNode):
16085 * src/kdelibs/kjs/nodes.h:
16086 * src/kdelibs/kjs/number_object.cpp: (NumberInstanceImp::NumberInstanceImp),
16087 (NumberPrototypeImp::NumberPrototypeImp),
16088 (NumberProtoFuncImp::NumberProtoFuncImp), (NumberProtoFuncImp::implementsCall),
16089 (NumberProtoFuncImp::call), (NumberObjectImp::NumberObjectImp),
16090 (NumberObjectImp::get), (NumberObjectImp::getValueProperty),
16091 (NumberObjectImp::implementsConstruct), (NumberObjectImp::construct),
16092 (NumberObjectImp::implementsCall), (NumberObjectImp::call):
16093 * src/kdelibs/kjs/number_object.h:
16094 * src/kdelibs/kjs/object.cpp: (Object::Object), (Object::~Object),
16095 (Object::operator=), (Object::classInfo), (Object::inherits),
16096 (Object::dynamicCast), (Object::prototype), (Object::className), (Object::get),
16097 (Object::put), (Object::canPut), (Object::hasProperty), (Object::deleteProperty),
16098 (Object::defaultValue), (Object::implementsConstruct), (Object::construct),
16099 (Object::implementsCall), (Object::call), (Object::implementsHasInstance),
16100 (Object::hasInstance), (Object::scope), (Object::setScope), (Object::propList),
16101 (Object::internalValue), (Object::setInternalValue), (ObjectImp::ObjectImp),
16102 (ObjectImp::~ObjectImp), (ObjectImp::mark), (ObjectImp::classInfo),
16103 (ObjectImp::inherits), (ObjectImp::type), (ObjectImp::prototype),
16104 (ObjectImp::setPrototype), (ObjectImp::className), (ObjectImp::get),
16105 (ObjectImp::getDirect), (ObjectImp::put), (ObjectImp::canPut),
16106 (ObjectImp::hasProperty), (ObjectImp::deleteProperty),
16107 (ObjectImp::deleteAllProperties), (ObjectImp::defaultValue),
16108 (ObjectImp::findPropertyHashEntry), (ObjectImp::implementsConstruct),
16109 (ObjectImp::construct), (ObjectImp::implementsCall), (ObjectImp::call),
16110 (ObjectImp::implementsHasInstance), (ObjectImp::hasInstance), (ObjectImp::scope),
16111 (ObjectImp::setScope), (ObjectImp::propList), (ObjectImp::internalValue),
16112 (ObjectImp::setInternalValue), (ObjectImp::toPrimitive), (ObjectImp::toBoolean),
16113 (ObjectImp::toNumber), (ObjectImp::toInteger), (ObjectImp::toInt32),
16114 (ObjectImp::toUInt32), (ObjectImp::toUInt16), (ObjectImp::toString),
16115 (ObjectImp::toObject), (Error::create):
16116 * src/kdelibs/kjs/object.h:
16117 * src/kdelibs/kjs/object_object.cpp: (ObjectPrototypeImp::ObjectPrototypeImp),
16118 (ObjectProtoFuncImp::ObjectProtoFuncImp), (ObjectProtoFuncImp::implementsCall),
16119 (ObjectProtoFuncImp::call), (ObjectObjectImp::ObjectObjectImp),
16120 (ObjectObjectImp::implementsConstruct), (ObjectObjectImp::construct),
16121 (ObjectObjectImp::implementsCall), (ObjectObjectImp::call):
16122 * src/kdelibs/kjs/object_object.h:
16123 * src/kdelibs/kjs/operations.cpp: (KJS::isPosInf), (KJS::isNegInf), (KJS::equal),
16124 (KJS::strictEqual), (KJS::relation), (KJS::maxInt), (KJS::minInt), (KJS::add),
16126 * src/kdelibs/kjs/operations.h:
16127 * src/kdelibs/kjs/regexp.cpp: (RegExp::RegExp), (RegExp::~RegExp),
16128 (RegExp::match), (RegExp::test):
16129 * src/kdelibs/kjs/regexp.h:
16130 * src/kdelibs/kjs/regexp_object.cpp: (RegExpPrototypeImp::RegExpPrototypeImp),
16131 (RegExpProtoFuncImp::RegExpProtoFuncImp), (RegExpProtoFuncImp::implementsCall),
16132 (RegExpProtoFuncImp::call), (RegExpImp::RegExpImp), (RegExpImp::~RegExpImp),
16133 (RegExpObjectImp::RegExpObjectImp), (RegExpObjectImp::~RegExpObjectImp),
16134 (RegExpObjectImp::registerRegexp), (RegExpObjectImp::arrayOfMatches),
16135 (RegExpObjectImp::get), (RegExpObjectImp::implementsConstruct),
16136 (RegExpObjectImp::construct), (RegExpObjectImp::implementsCall),
16137 (RegExpObjectImp::call):
16138 * src/kdelibs/kjs/regexp_object.h:
16139 * src/kdelibs/kjs/string_object.cpp: (StringInstanceImp::StringInstanceImp),
16140 (StringPrototypeImp::StringPrototypeImp), (StringPrototypeImp::get),
16141 (StringProtoFuncImp::StringProtoFuncImp), (StringProtoFuncImp::implementsCall),
16142 (StringProtoFuncImp::call), (StringObjectImp::StringObjectImp),
16143 (StringObjectImp::implementsConstruct), (StringObjectImp::construct),
16144 (StringObjectImp::implementsCall), (StringObjectImp::call),
16145 (StringObjectFuncImp::StringObjectFuncImp),
16146 (StringObjectFuncImp::implementsCall), (StringObjectFuncImp::call):
16147 * src/kdelibs/kjs/string_object.h:
16148 * src/kdelibs/kjs/testkjs.cpp: (TestFunctionImp::call), (main):
16149 * src/kdelibs/kjs/types.cpp: (Reference::Reference), (Reference::~Reference),
16150 (Reference::operator=), (Reference::dynamicCast), (ListIterator::ListIterator),
16151 (ListIterator::operator=), (ListIterator::~ListIterator),
16152 (ListIterator::operator->), (ListIterator::operator*),
16153 (ListIterator::operator++), (ListIterator::operator--),
16154 (ListIterator::operator==), (ListIterator::operator!=), (List::List),
16155 (List::~List), (List::operator=), (List::dynamicCast), (List::append),
16156 (List::prepend), (List::appendList), (List::prependList), (List::removeFirst),
16157 (List::removeLast), (List::remove), (List::clear), (List::copy), (List::begin),
16158 (List::end), (List::isEmpty), (List::size), (List::at), (List::operator[]),
16159 (List::empty), (Completion::Completion), (Completion::~Completion),
16160 (Completion::operator=), (Completion::dynamicCast), (Completion::complType),
16161 (Completion::value), (Completion::target), (Completion::isValueCompletion):
16162 * src/kdelibs/kjs/types.h:
16163 * src/kdelibs/kjs/ustring.cpp: (UChar::UChar), (UChar::toLower),
16164 (UChar::toUpper), (UString::from), (UString::ascii), (UString::operator=),
16165 (UString::is8Bit), (UString::toDouble), (KJS::operator==):
16166 * src/kdelibs/kjs/ustring.h:
16168 2002-03-19 Richard Williamson <rjw@apple.com>
16170 Fixed NSPopupButton performance bottleneck.
16172 * src/kdelibs/khtml/rendering/render_form.cpp: (RenderSelect::layout):
16173 * src/kwq/KWQComboBox.mm: (QComboBox::insertItem):
16174 * src/kwq/KWQKComboBox.mm: (KComboBox::~KComboBox), (KComboBox::doneLoading),
16175 (KComboBox::setSize):
16176 * src/kwq/kdeui/kcombobox.h:
16177 * src/kwq/qt/qcombobox.h:
16179 2002-03-19 Richard Williamson <rjw@apple.com>
16181 Changed float width cache to use shorts.
16183 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo _initializeCaches]),
16185 * src/kwq/KWQMetrics.h:
16187 2002-03-19 Richard Williamson <rjw@apple.com>
16189 Improved cache-miss case for non-latin1 characters.
16191 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo initWithFont:]), (-[KWQLayoutInfo
16192 layoutManager]), (-[KWQLayoutInfo textStorage]), (-[KWQLayoutInfo
16193 _initializeCaches]), (_rectForString), (-[KWQLayoutInfo setColor:]),
16194 (-[KWQLayoutInfo attributes]), (-[KWQLayoutInfo dealloc]):
16195 * src/kwq/KWQMetrics.h:
16196 * src/kwq/kwqdebug.h:
16198 2002-03-18 Darin Adler <darin@apple.com>
16200 * src/kwq/KWQListImpl.mm: (KWQListImpl::sort): Use insertion sort for
16201 small lists. Also special case for lists of size 2 and under.
16203 2002-03-18 Richard Williamson <rjw@apple.com>
16205 Added comments about new layout scheme. Cleaned up code.
16206 Improved core measurement routine.
16208 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::boundingRect):
16209 * src/kwq/kwqdebug.h:
16211 2002-03-18 Darin Adler <darin@apple.com>
16213 * src/kwq/KWQString.mm: (QString::latin1): Handle null case properly.
16214 We must return "", not 0.
16216 2002-03-18 Darin Adler <darin@apple.com>
16218 Redo inlining of QChar and QString and some other small speed improvements.
16219 Sadly, this doesn't seem to make things measurably faster, but I decided to
16220 commit my work rather than discarding it; it doesn't make things slower.
16222 * src/kwq/qt/qstring.h:
16223 * src/kwq/KWQChar.mm:
16224 * src/kwq/KWQString.mm:
16225 Do a lot more inlining. Also, the CFStringRef inside a QString is now never
16226 nil, so we can get rid of many checks for nil.
16228 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::width): Use _rectForString() a
16229 couple more places.
16231 2002-03-18 Richard Williamson <rjw@apple.com>
16233 Changed to use non direct _rectForString() function. Avoids
16234 unnecessary NSString allocation.
16236 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::boundingRect):
16238 2002-03-18 Darin Adler <darin@apple.com>
16240 * src/kwq/KWQFontMetrics.mm: (QFontMetricsPrivate::getInfo),
16241 (QFontMetrics::width), (QFontMetrics::_width), (QFontMetrics::boundingRect),
16242 (QFontMetrics::size): Don't make the info object right away, in case the
16243 metrics object is only used to compute ascent and descent.
16245 2002-03-17 Richard Williamson <rjw@apple.com>
16247 Implementation of replacement code for NSLayoutManager. Huge
16250 * src/kdelibs/khtml/rendering/render_text.cpp: (RenderText::calcMinMaxWidth),
16251 (RenderText::width):
16252 * src/kwq/KWQFontMetrics.mm: (ROUND_TO_INT), (__IFInitATSGlyphVector),
16253 (__IFResetATSGlyphVector), (__IFFillStyleWithAttributes), (-[KWQLayoutInfo
16254 drawString:atPoint:withFont:color:]), (+[KWQLayoutInfo
16255 drawString:atPoint:withFont:color:]), (-[KWQLayoutInfo
16256 drawUnderlineForString:atPoint:withFont:color:]), (+[KWQLayoutInfo
16257 drawUnderlineForString:atPoint:withFont:color:]), (-[KWQLayoutInfo
16258 initWithFont:]), (-[KWQLayoutInfo _initializeCaches]), (_rectForString),
16259 (-[KWQLayoutInfo rectForString:]), (-[KWQLayoutInfo attributes]),
16260 (-[KWQLayoutInfo lineHeight]), (-[KWQLayoutInfo font]), (-[KWQLayoutInfo
16261 dealloc]), (QFontMetrics::_width):
16262 * src/kwq/KWQMetrics.h:
16263 * src/kwq/Makefile.am:
16264 * src/kwq/qt/qfontmetrics.h:
16266 2002-03-16 Richard Williamson <rjw@apple.com>
16268 Fixed error handling. Removed ObjC code for url handle client from KHTMLPart.
16269 Need to sanitize KHTMLPart further.
16271 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::openURL), (KHTMLPart::closeURL),
16272 (KHTMLPart::requestFrameName), (KHTMLPart::requestFrame), (KHTMLPart::overURL):
16273 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidCancelLoading:]),
16274 (-[URLLoadClient IFURLHandleResourceDidFinishLoading:data:]), (-[URLLoadClient
16275 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[URLLoadClient
16276 IFURLHandle:resourceDidFailLoadingWithResult:]):
16277 * src/kwq/external.h:
16279 2002-03-15 Richard Williamson <rjw@apple.com>
16281 Fixed crasher initializing items in popup button.
16282 Increased fragment cache initial size.
16284 * src/kwq/KWQComboBox.mm: (QComboBox::init), (QComboBox::~QComboBox),
16285 (QComboBox::insertItem):
16286 * src/kwq/KWQTextStorage.mm: (-[KWQTextStorage _buildFragmentForString:]):
16287 * src/kwq/qt/qcombobox.h:
16289 2002-03-15 Richard Williamson <rjw@apple.com>
16291 More string usage optimizations. Got another 10% or so.
16293 * src/kdelibs/khtml/css/cssstyleselector.cpp: (checkPseudoState),
16294 (khtml::applyRule):
16295 * src/kdelibs/khtml/rendering/render_text.cpp: (RenderText::calcMinMaxWidth),
16296 (RenderText::width):
16298 2002-03-15 Darin Adler <darin@apple.com>
16300 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::descent): Oops, removed a - sign
16301 that I should have left in there.
16303 2002-03-15 Darin Adler <darin@apple.com>
16305 Some more optimizations. Carves another 6% or so off of NSView.html.
16307 * src/kwq/KWQChar.mm: (QChar::QChar): Handle characters > 0x7F correctly.
16308 (QChar::cell): Remove unnecessary & operation.
16309 (QChar::row): Remove unnecessary & operation.
16310 (QChar::latin1): Do a simpler check rather than calling row().
16311 (QChar::operator char): Do the same work as latin1 inline.
16312 (operator==) (operator!=), (operator>=), (operator>), (operator<=), (operator<):
16313 Handle characters > 0x7F correctly.
16315 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::ascent), (QFontMetrics::descent):
16316 Cache the ascent and descent rather than computing it each time we are called.
16318 2002-03-15 Darin Adler <darin@apple.com>
16320 Optimizations for creating empty QFont objects, measuring certain single
16321 characters, and copying QFontMetrics objects. Makes loading NSView.html about
16324 * src/kwq/qt/qfontmetrics.h: Use a ref-counted pointer so QFontMetrics objects
16325 for the same QFont can share data.
16327 * src/kwq/KWQFont.mm: (loadDefaultFont): New, used to load the default
16328 font used for default-initialized QFont objects.
16329 (QFont::_initializeWithFont): Don't recompute the family name, point size, or
16331 (QFont::setFamily), (QFont::setPixelSizeFloat), (QFont::setWeight),
16332 (QFont::setItalic): autorelease the font, as we do in the destructor, since
16333 someone could still be using the result of getFont.
16334 (QFont::operator==): Add a comment about a problem with this function.
16336 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::QFontMetrics): Add a refCount, and
16337 a cached width for space and lower-case "x", the two single characters that
16338 are often measured.
16339 (QFontMetrics::~QFontMetrics): Simplify.
16340 (QFontMetrics::operator=): Just copy the underlying data pointer rather than
16341 making our own KWQLayoutInfo object.
16342 (QFontMetrics::baselineOffset): Make const.
16343 (QFontMetrics::width): Add the caching for space and "x".
16345 2002-03-15 Richard Williamson <rjw@apple.com>
16347 Optimizations that remove unnecessary cfstring allocations of local scope
16348 strings. QString::gstring_toQString and QString::gstring_toCFString were
16349 added to simplify the reuse of a static CFString as the backing store for
16350 local QStrings. Hit the top two problem areas. Many more gains to be had
16351 by using this technique.
16353 * src/kdelibs/khtml/css/cssstyleselector.cpp:
16354 (CSSStyleSelector::checkOneSelector):
16355 * src/kdelibs/khtml/rendering/render_text.cpp: (RenderText::calcMinMaxWidth):
16356 * src/kwq/KWQString.mm: (QString::gstring_toQString),
16357 (QString::gstring_toCFString):
16358 * src/kwq/qt/qstring.h:
16360 2002-03-14 Richard Williamson <rjw@apple.com>
16362 Fixed another problem in QString::find().
16363 Added dangerous but fast string allocation optimization to render_text.cpp.
16365 * src/kdelibs/khtml/rendering/render_text.cpp: (RenderText::calcMinMaxWidth):
16366 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::_width):
16367 * src/kwq/KWQString.mm: (QString::find):
16368 * src/kwq/KWQTextStorage.mm: (-[KWQTextStorage _buildFragmentForString:]),
16369 (-[KWQTextStorage setString:]):
16370 * src/kwq/qt/qfontmetrics.h:
16372 2002-03-14 Richard Williamson <rjw@apple.com>
16374 Fixed optimized find() implementation. I had the sense of caseSensitive inverted.
16376 * src/kwq/KWQString.mm: (QString::find):
16378 2002-03-14 Richard Williamson <rjw@apple.com>
16380 Attempted implementation of space optimizations. Disabled for now.
16382 * src/kwq/KWQFontMetrics.mm: (+[KWQLayoutInfo _dumpLayoutCache:]),
16383 (-[KWQLayoutInfo rectForString:]):
16384 * src/kwq/KWQMetrics.h:
16385 * src/kwq/KWQTextStorage.h:
16386 * src/kwq/KWQTextStorage.mm: (-[KWQTextStorage _buildFragmentForString:]),
16387 (-[KWQTextStorage getFragmentForString:]), (-[KWQTextStorage
16388 initWithFontAttribute:]), (-[KWQTextStorage addLayoutManager:]):
16390 2002-03-14 Richard Williamson <rjw@apple.com>
16392 Implemented a progressively cache fragment.
16394 * src/kwq/KWQFontMetrics.mm: (-[KWQSmallLayoutFragment setGlyphRange:]),
16395 (-[KWQSmallLayoutFragment setBoundingRect:]), (-[KWQSmallLayoutFragment
16396 boundingRect]), (-[KWQLargeLayoutFragment glyphRange]), (-[KWQLargeLayoutFragment
16397 setGlyphRange:]), (-[KWQLargeLayoutFragment setBoundingRect:]),
16398 (-[KWQLargeLayoutFragment boundingRect]), (-[KWQLargeLayoutFragment compare:]),
16399 (+[KWQLayoutInfo drawString:atPoint:withFont:color:]), (+[KWQLayoutInfo
16400 drawUnderlineForString:atPoint:withFont:color:]), (+[KWQLayoutInfo
16401 _dumpLayoutCache:]), (-[KWQLayoutInfo rectForString:]):
16402 * src/kwq/KWQMetrics.h:
16403 * src/kwq/KWQTextStorage.h:
16404 * src/kwq/KWQTextStorage.mm: (-[KWQTextStorage getFragmentForString:]),
16405 (-[KWQTextStorage addFragmentForString:]):
16407 2002-03-13 Richard Williamson <rjw@apple.com>
16409 Added font cache. Attempted to reduce size of fragment cache, but
16410 malloc forces a minimum of 30 bytes for our 14 byte objects.
16412 * src/kwq/KWQFont.mm: (-[IFFontCacheKey dealloc]), (-[IFFontCacheKey
16413 copyWithZone:]), (-[IFFontCacheKey hash]), (-[IFFontCacheKey string]),
16414 (-[IFFontCacheKey isEqual:]), (QFont::getFont):
16415 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutFragment setGlyphRangeLength:]):
16416 * src/kwq/KWQMetrics.h:
16417 * src/kwq/KWQTextStorage.mm: (-[KWQTextStorage addFragmentForString:]):
16419 2002-03-13 Richard Williamson <rjw@apple.com>
16421 Re-worked fragment cache to minimize memory usage.
16423 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutFragment glyphRange]),
16424 (-[KWQLayoutFragment setGlyphRangeLength:]), (-[KWQLayoutFragment
16425 setBoundingRectSize:]), (-[KWQLayoutFragment boundingRect]), (+[KWQLayoutInfo
16426 drawString:atPoint:withFont:color:]), (+[KWQLayoutInfo
16427 drawUnderlineForString:atPoint:withFont:color:]), (-[KWQLayoutInfo
16428 initWithFont:]), (-[KWQLayoutInfo layoutManager]), (-[KWQLayoutInfo
16429 textStorage]), (-[KWQLayoutInfo rectForString:]):
16430 * src/kwq/KWQMetrics.h:
16431 * src/kwq/KWQTextStorage.h:
16432 * src/kwq/KWQTextStorage.mm: (-[KWQTextStorage getFragmentForString:]),
16433 (-[KWQTextStorage addFragmentForString:]), (-[KWQTextStorage
16434 initWithFontAttribute:]), (-[KWQTextStorage dealloc]), (-[KWQTextStorage
16435 length]), (-[KWQTextStorage setAttributes:]), (-[KWQTextStorage setString:]),
16436 (-[KWQTextStorage string]):
16438 2002-03-13 Kenneth Kocienda <kocienda@apple.com>
16440 Updated for new didRedirectToURL callback. This is a partial fix for this bug:
16441 Radar 2879234 (Redirected URLs not used for subsequent GETs)
16443 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
16444 IFURLHandle:didRedirectToURL:]):
16445 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
16447 2002-03-12 Richard Williamson <rjw@apple.com>
16449 * src/kwq/KWQString.mm: (QString::find), (QString::contains),
16450 (QString::compareToLatin1):
16452 2002-03-11 Richard Williamson <rjw@apple.com>
16454 Re-implemented QPainter::drawTiledPixmap to use core graphics patterns. Currently this depends
16455 on SPI. The performance boost is huge osx.macnn.com draws 40x faster now.
16457 * src/kwq/KWQPainter.mm: (QPainter::drawTiledPixmap):
16459 2002-03-08 Richard Williamson <rjw@apple.com>
16461 Re-implemented KWQFont to lazily request font from NSFontManager instead of
16462 user converFont:. I did this after sampling loads of http://www.apple.com/retail/theater
16463 and found that converting fonts was very expensive.
16465 * src/kwq/KWQFont.mm: (QFont::defaultNSFont), (QFont::_initializeWithFont),
16466 (QFont::QFont), (QFont::_free), (QFont::getFont), (QFont::pixelSize),
16467 (QFont::family), (QFont::setFamily), (QFont::setPixelSizeFloat),
16468 (QFont::setWeight), (QFont::weight), (QFont::setItalic), (QFont::italic),
16469 (QFont::bold), (QFont::operator!=):
16470 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::QFontMetrics):
16471 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::requestFrame):
16472 * src/kwq/KWQPainter.mm: (QPainter::drawText), (QPainter::drawUnderlineForText):
16473 * src/kwq/qt/qfont.h:
16475 2002-03-08 Richard Williamson <rjw@apple.com>
16477 Instrumentation of the text fragment metrics cache.
16478 Added _FAST_QSTRING_TO_NSSTRING.
16480 * src/kwq/KWQFontMetrics.mm: (-[KWQLayoutFragment initWithString:attributes:]),
16481 (-[KWQLayoutFragment boundingRect]), (-[KWQLayoutFragment compare:]),
16482 (+[KWQLayoutInfo _dumpLayoutCache:]), (+[KWQLayoutInfo _dumpAllLayoutCaches]),
16483 (-[KWQLayoutInfo rectForString:]), (QFontMetrics::width),
16484 (QFontMetrics::boundingRect), (QFontMetrics::size):
16485 * src/kwq/KWQMetrics.h:
16486 * src/kwq/qt/qstring.h:
16488 2002-03-08 John Sullivan <sullivan@apple.com>
16490 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::openURL), (KHTMLPart::end):
16491 Changed openURL() and end() messages to use debug levels. You
16492 can see these by setting your WebKitLogLevel mask to include
16495 2002-03-07 John Sullivan <sullivan@apple.com>
16497 * src/kwq/kwqdebug.h: New debug level constants, kept in
16498 synch with WebKitDebug.h
16500 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
16501 IFURLHandleResourceDidBeginLoading:]), (-[KHTMLPartLoadClient
16502 IFURLHandleResourceDidCancelLoading:]), (-[KHTMLPartLoadClient
16503 IFURLHandleResourceDidFinishLoading:data:]), (-[KHTMLPartLoadClient
16504 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[KHTMLPartLoadClient
16505 IFURLHandle:resourceDidFailLoadingWithResult:]):
16506 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]),
16507 (-[URLLoadClient IFURLHandleResourceDidCancelLoading:]), (-[URLLoadClient
16508 IFURLHandleResourceDidFinishLoading:data:]), (-[URLLoadClient
16509 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[URLLoadClient
16510 IFURLHandle:resourceDidFailLoadingWithResult:]), (Loader::load),
16511 (Loader::servePendingRequests):
16512 * src/kwq/KWQView.mm: (-[KWQHTMLView layout]), (-[KWQHTMLView drawRect:]):
16513 Changed numeric debug levels to symbolic ones.
16515 2002-03-07 Don Melton <gramps@apple.com>
16517 Removed unused file in kdelibs that I missed in previous commit.
16519 * src/kdelibs/khtml/test/layout.html:
16521 2002-03-06 Don Melton <gramps@apple.com>
16523 Removed unused files in kdelibs.
16525 * src/kdelibs/AUTHORS:
16526 * src/kdelibs/README:
16527 * src/kdelibs/khtml/CHANGES:
16528 * src/kdelibs/khtml/DESIGN.html:
16529 * src/kdelibs/khtml/README.HTMLWidget:
16530 * src/kdelibs/khtml/README.tags:
16531 * src/kdelibs/khtml/SECURITY:
16532 * src/kdelibs/khtml/TODO:
16533 * src/kdelibs/khtml/design.h:
16534 * src/kdelibs/khtml/domtreeview.cpp:
16535 * src/kdelibs/khtml/domtreeview.h:
16536 * src/kdelibs/khtml/ecma/AUTHORS:
16537 * src/kdelibs/khtml/ecma/README:
16538 * src/kdelibs/khtml/ecma/THANKS:
16539 * src/kdelibs/khtml/ecma/TODO:
16540 * src/kdelibs/khtml/ecma/jsk.html:
16541 * src/kdelibs/khtml/ecma/testecma.cpp:
16542 * src/kdelibs/khtml/html/dtd.dtd:
16543 * src/kdelibs/khtml/java/KJAS_GRAMMAR.txt:
16544 * src/kdelibs/khtml/java/README:
16545 * src/kdelibs/khtml/java/TODO:
16546 * src/kdelibs/khtml/java/build.xml:
16547 * src/kdelibs/khtml/java/javaembed.cpp:
16548 * src/kdelibs/khtml/java/kjava.jar:
16549 * src/kdelibs/khtml/java/kjava.policy.in:
16550 * src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletClassLoader.java:
16551 * src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletContext.java:
16552 * src/kdelibs/khtml/java/org/kde/kjas/server/KJASAppletStub.java:
16553 * src/kdelibs/khtml/java/org/kde/kjas/server/KJASConsole.java:
16554 * src/kdelibs/khtml/java/org/kde/kjas/server/KJASProtocolHandler.java:
16555 * src/kdelibs/khtml/java/org/kde/kjas/server/KJASSecurityManager.java:
16556 * src/kdelibs/khtml/java/org/kde/kjas/server/KJASSoundPlayer.java:
16557 * src/kdelibs/khtml/java/org/kde/kjas/server/Main.java:
16558 * src/kdelibs/khtml/java/tests/badapplets/BadApplet.jar:
16559 * src/kdelibs/khtml/java/tests/badapplets/BadApplet.java:
16560 * src/kdelibs/khtml/java/tests/badapplets/applet.html:
16561 * src/kdelibs/khtml/java/tests/good_sites:
16562 * src/kdelibs/khtml/java/tests/testkjavaappletserver.cpp:
16563 * src/kdelibs/khtml/khtml.desktop:
16564 * src/kdelibs/khtml/khtml.rc:
16565 * src/kdelibs/khtml/khtml_browser.rc:
16566 * src/kdelibs/khtml/khtml_ext.cpp:
16567 * src/kdelibs/khtml/khtml_factory.cpp:
16568 * src/kdelibs/khtml/khtml_find.cpp:
16569 * src/kdelibs/khtml/khtml_find.h:
16570 * src/kdelibs/khtml/khtml_pagecache.cpp:
16571 * src/kdelibs/khtml/khtml_pagecache.h:
16572 * src/kdelibs/khtml/khtml_part.cpp:
16573 * src/kdelibs/khtml/khtml_popupmenu.rc:
16574 * src/kdelibs/khtml/khtml_run.cpp:
16575 * src/kdelibs/khtml/khtml_run.h:
16576 * src/kdelibs/khtml/khtmldefaults.h:
16577 * src/kdelibs/khtml/khtmlimage.cpp:
16578 * src/kdelibs/khtml/khtmlimage.desktop:
16579 * src/kdelibs/khtml/khtmlimage.h:
16580 * src/kdelibs/khtml/pics/hi16-action-images_display.png:
16581 * src/kdelibs/khtml/pics/hi22-action-images_display.png:
16582 * src/kdelibs/khtml/pics/hi32-action-images_display.png:
16583 * src/kdelibs/khtml/test/README:
16584 * src/kdelibs/khtml/test/URL1.html:
16585 * src/kdelibs/khtml/test/URL2.html:
16586 * src/kdelibs/khtml/test/align.html:
16587 * src/kdelibs/khtml/test/align1.html:
16588 * src/kdelibs/khtml/test/align2.html:
16589 * src/kdelibs/khtml/test/anchor1.html:
16590 * src/kdelibs/khtml/test/anchor2.html:
16591 * src/kdelibs/khtml/test/badpages.html:
16592 * src/kdelibs/khtml/test/buggy.html:
16593 * src/kdelibs/khtml/test/button.html:
16594 * src/kdelibs/khtml/test/color.html:
16595 * src/kdelibs/khtml/test/fixed-background.html:
16596 * src/kdelibs/khtml/test/image.gif:
16597 * src/kdelibs/khtml/test/image_map.html:
16598 * src/kdelibs/khtml/test/index.html:
16599 * src/kdelibs/khtml/test/java.html:
16600 * src/kdelibs/khtml/test/javascript.html:
16601 * src/kdelibs/khtml/test/jsplugins.html:
16602 * src/kdelibs/khtml/test/konqi.gif:
16603 * src/kdelibs/khtml/test/lake.class:
16604 * src/kdelibs/khtml/test/listing.html:
16605 * src/kdelibs/khtml/test/lists.html:
16606 * src/kdelibs/khtml/test/nav_bar.gif:
16607 * src/kdelibs/khtml/test/nbsp.html:
16608 * src/kdelibs/khtml/test/notitle.html:
16609 * src/kdelibs/khtml/test/object.html:
16610 * src/kdelibs/khtml/test/pseudo.html:
16611 * src/kdelibs/khtml/test/renders.html:
16612 * src/kdelibs/khtml/test/supsub.html:
16613 * src/kdelibs/khtml/test/testpages.html:
16614 * src/kdelibs/khtml/test/textarea.html:
16615 * src/kdelibs/khtml/test/title.html:
16616 * src/kdelibs/khtml/testcss.cpp:
16617 * src/kdelibs/khtml/testkhtml.cpp:
16618 * src/kdelibs/khtml/testkhtml.h:
16619 * src/kdelibs/khtml/testrender.cpp:
16620 * src/kdelibs/khtml/testrender.h:
16621 * src/kdelibs/kjs/README:
16622 * src/kdelibs/kjs/THANKS:
16623 * src/kdelibs/kjs/create_hash_table:
16624 * src/kdelibs/kjs/keywords.table:
16626 2002-03-06 Don Melton <gramps@apple.com>
16628 Cleaned up all our changes to kdelibs, removed bitrot, and replaced use
16629 of _KWQ_ with new APPLE_CHANGES define.
16631 * src/kdelibs/khtml/css/csshelper.cpp: (khtml::computeLengthFloat),
16632 (khtml::setFontSize):
16633 * src/kdelibs/khtml/css/cssstyleselector.cpp:
16634 (CSSStyleSelector::CSSStyleSelector), (khtml::applyRule):
16635 * src/kdelibs/khtml/dom/dom_misc.cpp:
16636 * src/kdelibs/khtml/dom/dom_misc.h:
16637 * src/kdelibs/khtml/dom/html_document.cpp: (HTMLDocument::cookie),
16638 (HTMLDocument::setCookie):
16639 * src/kdelibs/khtml/dom/html_element.cpp:
16640 * src/kdelibs/khtml/ecma/kjs_binding.h:
16641 * src/kdelibs/khtml/ecma/kjs_css.cpp: (DOMCSSStyleDeclarationFunc::tryExecute),
16642 (DOMStyleSheetListFunc::tryExecute), (DOMMediaListFunc::tryExecute),
16643 (DOMCSSStyleSheetFunc::tryExecute), (DOMCSSRuleListFunc::tryExecute),
16644 (DOMCSSRuleFunc::tryExecute), (DOMCSSPrimitiveValueFunc::tryExecute),
16645 (DOMCSSValueListFunc::tryExecute):
16646 * src/kdelibs/khtml/ecma/kjs_css.h:
16647 * src/kdelibs/khtml/ecma/kjs_dom.cpp: (DOMNodeFunc::tryExecute),
16648 (DOMNodeListFunc::tryExecute), (DOMDocFunction::DOMDocFunction),
16649 (DOMDocFunction::tryExecute), (DOMElementFunction::DOMElementFunction),
16650 (DOMElementFunction::tryExecute),
16651 (DOMDOMImplementationFunction::DOMDOMImplementationFunction),
16652 (DOMDOMImplementationFunction::tryExecute),
16653 (DOMNamedNodeMapFunction::DOMNamedNodeMapFunction),
16654 (DOMNamedNodeMapFunction::tryExecute):
16655 * src/kdelibs/khtml/ecma/kjs_dom.h:
16656 * src/kdelibs/khtml/ecma/kjs_window.cpp: (Window::isSafeScript):
16657 * src/kdelibs/khtml/html/html_formimpl.cpp: (HTMLFormElementImpl::formData),
16658 (HTMLSelectElementImpl::state), (HTMLSelectElementImpl::restoreState):
16659 * src/kdelibs/khtml/html/html_headimpl.cpp: (HTMLLinkElementImpl::detach),
16660 (HTMLStyleElementImpl::detach), (HTMLTitleElementImpl::setTitle):
16661 * src/kdelibs/khtml/html/html_objectimpl.cpp:
16662 (HTMLEmbedElementImpl::parseAttribute):
16663 * src/kdelibs/khtml/html/html_tableimpl.cpp:
16664 (HTMLTableElementImpl::parseAttribute),
16665 (HTMLTablePartElementImpl::parseAttribute):
16666 * src/kdelibs/khtml/html/htmlparser.cpp: (KHTMLParser::parseToken),
16667 (KHTMLParser::insertNode), (KHTMLParser::getElement),
16668 (KHTMLParser::processCloseTag), (KHTMLParser::popBlock),
16669 (KHTMLParser::popOneBlock):
16670 * src/kdelibs/khtml/html/htmltokenizer.cpp: (HTMLTokenizer::parseSpecial),
16671 (HTMLTokenizer::scriptHandler), (HTMLTokenizer::parseComment),
16672 (HTMLTokenizer::parseTag), (HTMLTokenizer::processToken):
16673 * src/kdelibs/khtml/html/htmltokenizer.h:
16674 * src/kdelibs/khtml/java/kjavaprocess.h:
16675 * src/kdelibs/khtml/khtml_part.h:
16676 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::~KHTMLView), (KHTMLView::init),
16677 (printRenderTree), (KHTMLView::drawContents), (KHTMLView::layout),
16678 (KHTMLView::viewportMousePressEvent), (KHTMLView::viewportMouseDoubleClickEvent),
16679 (KHTMLView::viewportMouseMoveEvent), (KHTMLView::viewportMouseReleaseEvent),
16680 (KHTMLView::addFormCompletionItem):
16681 * src/kdelibs/khtml/khtmlview.h:
16682 * src/kdelibs/khtml/misc/decoder.cpp: (Decoder::setEncoding), (Decoder::decode):
16683 * src/kdelibs/khtml/misc/helper.cpp: (khtml::setNamedColor):
16684 * src/kdelibs/khtml/misc/loader.h:
16685 * src/kdelibs/khtml/rendering/bidi.cpp: (RenderFlow::layoutInlineChildren):
16686 * src/kdelibs/khtml/rendering/render_applet.cpp: (RenderApplet::RenderApplet):
16687 * src/kdelibs/khtml/rendering/render_body.cpp: (RenderBody::layout):
16688 * src/kdelibs/khtml/rendering/render_box.cpp: (RenderBox::printBackground):
16689 * src/kdelibs/khtml/rendering/render_flow.cpp: (RenderFlow::print):
16690 * src/kdelibs/khtml/rendering/render_form.cpp:
16691 (RenderFormElement::baselinePosition), (RenderFormElement::slotClicked),
16692 (RenderCheckBox::RenderCheckBox), (RenderCheckBox::performAction),
16693 (RenderRadioButton::RenderRadioButton), (RenderRadioButton::slotClicked),
16694 (RenderSubmitButton::RenderSubmitButton), (RenderSubmitButton::baselinePosition),
16695 (RenderLineEdit::RenderLineEdit), (RenderLineEdit::calcMinMaxWidth),
16696 (RenderLineEdit::performAction), (RenderFileButton::RenderFileButton),
16697 (RenderSelect::RenderSelect), (RenderSelect::layout),
16698 (RenderSelect::createListBox), (RenderSelect::createComboBox),
16699 (RenderTextArea::RenderTextArea), (RenderTextArea::calcMinMaxWidth),
16700 (RenderTextArea::layout):
16701 * src/kdelibs/khtml/rendering/render_form.h:
16702 * src/kdelibs/khtml/rendering/render_frames.cpp:
16703 (RenderPartObject::updateWidget):
16704 * src/kdelibs/khtml/rendering/render_hr.cpp: (RenderHR::print):
16705 * src/kdelibs/khtml/rendering/render_image.cpp: (RenderImage::printObject):
16706 * src/kdelibs/khtml/rendering/render_list.cpp: (RenderListMarker::printObject):
16707 * src/kdelibs/khtml/rendering/render_style.h:
16708 * src/kdelibs/khtml/rendering/render_table.cpp: (RenderTable::calcFinalColMax),
16709 (RenderTable::layoutRows):
16710 * src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration),
16711 (TextSlaveArray::findFirstMatching), (RenderText::print):
16712 * src/kdelibs/khtml/xml/dom_docimpl.cpp: (DocumentImpl::recalcStyle):
16713 * src/kdelibs/khtml/xml/dom_nodeimpl.cpp: (NodeImpl::renderer):
16714 * src/kdelibs/khtml/xml/dom_nodeimpl.h:
16715 * src/kdelibs/khtml/xml/dom_stringimpl.cpp: (DOMStringImpl::toLengthList):
16717 2002-03-06 Maciej Stachowiak <mjs@apple.com>
16719 * src/kwq/KWQKURL.mm: (KURL::KURL): If resolving a relative URL
16720 fails, assume it's absolute and possibly malformed, rather than
16721 appending it to the path of the previous URL. This fixes a
16722 CPU-spinning hang that John and Richard found.
16724 2002-03-05 Richard Williamson <rjw@apple.com>
16726 Pass errors correctly to browser.
16727 Removed old notification code.
16728 Added support for IFError.
16729 Lots of little cleanups.
16731 * src/kwq/KWQComboBox.mm: (QComboBox::setCurrentItem):
16732 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
16733 IFURLHandleResourceDidBeginLoading:]), (-[KHTMLPartLoadClient
16734 IFURLHandleResourceDidCancelLoading:]), (-[KHTMLPartLoadClient
16735 IFURLHandleResourceDidFinishLoading:data:]), (-[KHTMLPartLoadClient
16736 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[KHTMLPartLoadClient
16737 IFURLHandle:resourceDidFailLoadingWithResult:]), (KHTMLPart::openURL),
16738 (KHTMLPart::closeURL):
16739 * src/kwq/KWQKloader.mm: (-[URLLoadClient
16740 IFURLHandle:resourceDidFailLoadingWithResult:]):
16741 * src/kwq/WCError.h:
16742 * src/kwq/WCWebDataSource.h:
16743 * src/kwq/external.h:
16745 2002-03-05 Richard Williamson <rjw@apple.com>
16747 With fonts now being correctly specified we're exercising some new code paths. This introduced a new
16748 class of weird string bugs. Turns out that CFString is doing some mojo that I suspect is a performance
16749 optimization. Constants strings appears to be uniqued and hard-wired to have a -1 retain count. It
16750 looks like strings created by preferences are uniqued in this manner. This plays havoc with our
16751 copy-on-write QString implementation. The following GDB exercise illustrates the problem:
16753 (gdb) po (id)[(id)[NSUserDefaults standardUserDefaults] objectForKey:(id)[NSString stringWithCString: "WebKitFixedFont"]]
16755 (gdb) p (int)[(id)[(id)[NSUserDefaults standardUserDefaults] objectForKey:(id)[NSString stringWithCString: "WebKitFixedFont"]] retainCount]
16757 (gdb) p (id)[(id)[NSUserDefaults standardUserDefaults] objectForKey:(id)[NSString stringWithCString: "WebKitFixedFont"]]
16758 $27 = (objc_object *) 0x40172a4
16759 (gdb) p (void)[$27 retain]
16761 (gdb) p (int)[$27 retainCount]
16763 (gdb) p (void)[$27 release]
16765 (gdb) p (int)[$27 retainCount]
16768 So, it appears that these strings are permanently allocated. It'd be interesting to find out what is in the uniqued string cache, and how big it is.
16770 I've fixed the problem by special casing our copy-on-write trigger to also check for -1.
16772 * src/kwq/KWQString.mm: (QString::_copyIfNeededInternalString):
16774 2002-03-04 Richard Williamson <rjw@apple.com>
16776 Changes to support 'provisional' data sources.
16777 API changes to IFBaseWebController, removed redundant methods.
16779 * src/kwq/KWQKHTMLPart.mm: (WCSetIFWebDataSourceMakeFunc), (-[KHTMLPartLoadClient
16780 IFURLHandleResourceDidBeginLoading:]), (-[KHTMLPartLoadClient
16781 IFURLHandleResourceDidCancelLoading:]), (-[KHTMLPartLoadClient
16782 IFURLHandleResourceDidFinishLoading:data:]), (-[KHTMLPartLoadClient
16783 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[KHTMLPartLoadClient
16784 IFURLHandle:resourceDidFailLoadingWithResult:]),
16785 (KHTMLPart::khtmlMouseReleaseEvent), (KHTMLPart::submitForm),
16786 (KHTMLPart::requestFrame):
16787 * src/kwq/external.h:
16789 2002-02-28 Richard Williamson <rjw@apple.com>
16791 Finished up progress notification for main document.
16792 Made the IFLoadProgress allocator accessible to KHTMLPart.mm.
16794 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
16795 IFURLHandleResourceDidFinishLoading:data:]), (-[KHTMLPartLoadClient
16796 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[KHTMLPartLoadClient
16797 setDataSource:]), (KHTMLPart::openURL):
16798 * src/kwq/KWQKloader.mm: (-[URLLoadClient
16799 IFURLHandleResourceDidFinishLoading:data:]), (-[URLLoadClient
16800 IFURLHandle:resourceDataDidBecomeAvailable:]):
16801 * src/kwq/WCLoadProgress.h:
16803 2002-02-27 Kenneth Kocienda <kocienda@apple.com>
16805 I have changed the way that WebCore is glued to WebFoundation and WebKit.
16806 If you used or relied upon any code in the following files, you should
16807 now use the IF* equivalents straight up.
16809 - Labyrinth/WebCore/include/WCBackForwardList.h
16810 - Labyrinth/WebCore/include/WCURICache.h
16811 - Labyrinth/WebCore/include/WCURICacheData.h
16812 - Labyrinth/WebCore/include/WCURIEntry.h
16813 - Labyrinth/WebCore/include/WCURIEntry.h
16815 All changes in this commit are related to making dependant code work with the new convention.
16817 * include/WCBackForwardList.h:
16818 * include/WCURICache.h:
16819 * include/WCURICacheData.h:
16820 * include/WCURIEntry.h:
16821 * include/WCURLHandle.h:
16822 * src/kwq/KWQKHTMLPart.h:
16823 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
16824 IFURLHandleResourceDidBeginLoading:]), (-[KHTMLPartLoadClient
16825 IFURLHandleResourceDidCancelLoading:]), (-[KHTMLPartLoadClient
16826 IFURLHandleResourceDidFinishLoading:data:]), (-[KHTMLPartLoadClient
16827 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[KHTMLPartLoadClient
16828 IFURLHandle:resourceDidFailLoadingWithResult:]), (KHTMLPart::slotData),
16829 (KHTMLPart::openURL):
16830 * src/kwq/KWQKjobclasses.mm:
16831 * src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]),
16832 (-[URLLoadClient IFURLHandleResourceDidCancelLoading:]), (-[URLLoadClient
16833 IFURLHandleResourceDidFinishLoading:data:]), (-[URLLoadClient
16834 IFURLHandle:resourceDataDidBecomeAvailable:]), (-[URLLoadClient
16835 IFURLHandle:resourceDidFailLoadingWithResult:]):
16836 * src/kwq/Makefile.am:
16837 * src/kwq/kio/jobclasses.h:
16839 2002-02-27 Maciej Stachowiak <mjs@apple.com>
16841 Replace QDir and QFile with clean-room implementations. Add glob
16842 support ot QRegExp reimplementation.
16844 * src/kwq/KWQDir.mm: (QDir::KWQDirPrivate::KWQDirPrivate),
16845 (QDir::KWQDirPrivate::~KWQDirPrivate), (QDir::QDir), (QDir::~QDir),
16846 (QDir::absPath), (QDir::absFilePath), (QDir::cdUp), (QDir::exists),
16847 (QDir::entryList), (QDir::operator=), (QDir::swap):
16848 * src/kwq/KWQFile.mm: (QFile::KWQFilePrivate::KWQFilePrivate),
16849 (QFile::KWQFilePrivate::~KWQFilePrivate), (QFile::QFile), (QFile::~QFile),
16850 (QFile::exists), (QFile::open), (QFile::close), (QFile::readBlock),
16852 * src/kwq/KWQRegExp.mm: (QRegExp::KWQRegExpPrivate::KWQRegExpPrivate),
16853 (RegExpFromGlob), (QRegExp::KWQRegExpPrivate::compile), (QRegExp::QRegExp):
16854 * src/kwq/KWQStrList.h:
16855 * src/kwq/Makefile.am:
16856 * src/kwq/qt/_qdir.h:
16857 * src/kwq/qt/_qfile.h:
16858 * src/kwq/qt/_qfileinfo.h:
16859 * src/kwq/qt/qdir.h:
16860 * src/kwq/qt/qfile.h:
16861 * src/kwq/qt/qiodevice.h:
16862 * src/kwq/qt/qregexp.h:
16864 2002-02-25 Maciej Stachowiak <mjs@apple.com>
16866 Fix two significant memory leaks in QList found by our automated
16867 leak-checking code.
16869 * src/kwq/KWQListImpl.mm: (KWQListNode::~KWQListNode),
16870 (KWQListImpl::KWQListPrivate::copyList),
16871 (KWQListImpl::KWQListPrivate::~KWQListPrivate), (KWQListImpl::sort):
16873 Fix a tiny bug tweaked by the new regexp code - we need to flush
16874 the cache after calling out to QRegExp::match because it might
16875 make calls on the string which create a cache. Caught by the
16878 * src/kwq/KWQString.mm: (QString::replace):
16880 2002-02-24 Maciej Stachowiak <mjs@apple.com>
16882 Reimplemented QRegExp in terms of POSIX regexp facilities. This
16883 will only support Latin1, however, it won't support all languages.
16885 * src/kwq/qt/qregexp.h:
16886 * src/kwq/KWQRegExp.mm: (QRegExp::KWQRegExpPrivate::KWQRegExpPrivate),
16887 (QRegExp::KWQRegExpPrivate::compile),
16888 (QRegExp::KWQRegExpPrivate::~KWQRegExpPrivate), (QRegExp::QRegExp),
16889 (QRegExp::~QRegExp), (QRegExp::operator=), (QRegExp::pattern), (QRegExp::match):
16891 Reimplement QValueList as a doubly-linked list, using a generic
16892 implementation class and a templatized facade.
16894 * src/kwq/qt/qvaluelist.h:
16895 * src/kwq/KWQValueListImpl.h:
16896 * src/kwq/KWQValueListImpl.mm: (KWQValueListNodeImpl::KWQValueListNodeImpl),
16897 (KWQValueListNodeImpl::~KWQValueListNodeImpl),
16898 (KWQValueListIteratorImpl::KWQValueListIteratorImpl),
16899 (KWQValueListIteratorImpl::~KWQValueListIteratorImpl),
16900 (KWQValueListIteratorImpl::operator=), (KWQValueListIteratorImpl::operator==),
16901 (KWQValueListIteratorImpl::operator!=), (KWQValueListIteratorImpl::node),
16902 (KWQValueListIteratorImpl::operator++), (KWQValueListIteratorImpl::operator--),
16903 (KWQValueListImpl::KWQValueListPrivate::KWQValueListPrivate),
16904 (KWQValueListImpl::KWQValueListPrivate::~KWQValueListPrivate),
16905 (KWQValueListImpl::KWQValueListPrivate::copyList),
16906 (KWQValueListImpl::KWQValueListPrivate::deleteList),
16907 (KWQValueListImpl::KWQValueListImpl), (KWQValueListImpl::~KWQValueListImpl),
16908 (KWQValueListImpl::clear), (KWQValueListImpl::count),
16909 (KWQValueListImpl::isEmpty), (KWQValueListImpl::appendNode),
16910 (KWQValueListImpl::prependNode), (KWQValueListImpl::removeEqualNodes),
16911 (KWQValueListImpl::containsEqualNodes), (KWQValueListImpl::removeIterator),
16912 (KWQValueListImpl::fromLast), (KWQValueListImpl::firstNode),
16913 (KWQValueListImpl::lastNode), (KWQValueListImpl::begin), (KWQValueListImpl::end),
16914 (KWQValueListImpl::nodeAt), (KWQValueListImpl::operator=),
16915 (KWQValueListImpl::copyOnWrite):
16916 * src/kwq/Makefile.am:
16918 * src/kwq/kio/netaccess.h: Don't declare private copy constructor
16919 - this class needs to be copyable to be stored in a QValueList!
16921 Hack these scripts a bit so the large tables they generate are
16924 * src/kwq/make-charset-table.pl:
16925 * src/kdelibs/khtml/css/makeprop:
16926 * src/kdelibs/khtml/css/makevalues:
16927 * src/kdelibs/khtml/misc/makeattrs:
16928 * src/kdelibs/khtml/misc/maketags:
16930 2002-02-23 Maciej Stachowiak <mjs@apple.com>
16932 * src/kwq/WCLoadProgress.h: Add the forgotten WCLoadProgress.h.
16934 2002-02-22 Maciej Stachowiak <mjs@apple.com>
16938 * src/Makefile.am: Enable prebinding, set first segment address to
16939 0x2200000 to avoid colliding with apps or our other
16940 frameworks. Change other link flags to support prebinding.
16942 Set up some hacks to avoid link-time dependency on
16943 WebKit. Prebinding is incompatible with - undefined suppress, so
16944 we can't have WebCore depend on symbols provided by WebKit any
16947 * src/kwq/KWQKHTMLPart.h:
16948 * src/kwq/KWQKloader.mm: (WCSetIFLoadProgressMakeFunc), (-[URLLoadClient
16949 WCURLHandleResourceDidFinishLoading:data:userData:]), (-[URLLoadClient
16950 WCURLHandle:resourceDataDidBecomeAvailable:userData:]):
16951 * src/kwq/WCPluginWidget.h:
16952 * src/kwq/WCPluginWidget.mm: (WCSetIFPluginMakeFunc),
16953 (WCPluginWidget::WCPluginWidget):
16955 2002-02-22 Richard Williamson <rjw@apple.com>
16957 Added data: to IFURLHandleResourceDidFinishLoading:
16959 * include/WCURLHandle.h:
16960 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
16961 WCURLHandleResourceDidFinishLoading:data:userData:]):
16962 * src/kwq/KWQKloader.mm: (-[URLLoadClient
16963 WCURLHandleResourceDidFinishLoading:data:userData:]):
16965 2002-02-22 Kenneth Kocienda <kocienda@apple.com>
16967 Sent handle an autorelease message.
16969 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
16970 WCURLHandleResourceDidCancelLoading:userData:]), (-[KHTMLPartLoadClient
16971 WCURLHandleResourceDidFinishLoading:userData:]), (-[KHTMLPartLoadClient
16972 WCURLHandle:resourceDidFailLoadingWithResult:userData:]):
16973 * src/kwq/KWQKloader.mm: (-[URLLoadClient
16974 WCURLHandleResourceDidCancelLoading:userData:]), (-[URLLoadClient
16975 WCURLHandleResourceDidFinishLoading:userData:]), (-[URLLoadClient
16976 WCURLHandle:resourceDidFailLoadingWithResult:userData:]):
16978 2002-02-21 Maciej Stachowiak <mjs@apple.com>
16980 * src/kwq/KWQString.mm: (QString::fill): Fix a bug that was
16981 triggering assertion failures in CF.
16983 * src/kdelibs/kjs/kjs-test: Turn off some environment variables to
16984 make the tests pass.
16986 2002-02-21 Richard Williamson <rjw@apple.com>
16988 Stop mostly working.
16990 * src/kwq/KWQKjobclasses.mm:
16991 * src/kwq/KWQKloader.mm: (-[URLLoadClient
16992 WCURLHandleResourceDidCancelLoading:userData:]), (-[URLLoadClient
16993 WCURLHandleResourceDidFinishLoading:userData:]), (-[URLLoadClient
16994 WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
16995 (Loader::servePendingRequests):
16996 * src/kwq/kio/jobclasses.h:
16998 2002-02-21 Maciej Stachowiak <mjs@apple.com>
17000 * src/kwq/KWQString.mm: (QString::fromCFString): Don't pass a
17001 length to CFStringCreateMutableCopy, since that makes the string
17002 fixed-length, which makes assertions fail when in debugging mode.
17004 2002-02-20 Richard Williamson <rjw@apple.com>
17006 Some groundwork to bring WebFoundation callbacks up to
17009 * src/kdelibs/khtml/misc/loader.h:
17010 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
17011 WCURLHandleResourceDidBeginLoading:userData:]), (-[KHTMLPartLoadClient
17012 WCURLHandleResourceDidCancelLoading:userData:]), (-[KHTMLPartLoadClient
17013 WCURLHandleResourceDidFinishLoading:userData:]), (-[KHTMLPartLoadClient
17014 WCURLHandle:resourceDataDidBecomeAvailable:userData:]), (-[KHTMLPartLoadClient
17015 WCURLHandle:resourceDidFailLoadingWithResult:userData:]), (KHTMLPart::openURL),
17016 (KHTMLPart::closeURL), (KHTMLPart::write), (KHTMLPart::checkCompleted):
17017 * src/kwq/KWQKloader.mm: (CachedCSSStyleSheet::CachedCSSStyleSheet),
17018 (CachedScript::CachedScript), (CachedImage::CachedImage), (-[URLLoadClient
17019 initWithLoader:dataSource:]), (-[URLLoadClient
17020 WCURLHandleResourceDidBeginLoading:userData:]), (-[URLLoadClient
17021 WCURLHandleResourceDidCancelLoading:userData:]), (-[URLLoadClient
17022 WCURLHandleResourceDidFinishLoading:userData:]), (-[URLLoadClient
17023 WCURLHandle:resourceDataDidBecomeAvailable:userData:]), (-[URLLoadClient
17024 WCURLHandle:resourceDidFailLoadingWithResult:userData:]), (Loader::load),
17025 (Loader::servePendingRequests), (Cache::requestImage),
17026 (Cache::requestStyleSheet), (Cache::requestScript):
17027 * src/kwq/kio/jobclasses.h:
17029 2002-02-20 Maciej Stachowiak <mjs@apple.com>
17031 * src/kdelibs/kjs/kjs-test:
17032 * src/kwq/KWQKURL.mm: (KURL::setQuery):
17034 2002-02-18 Kenneth Kocienda <kocienda@apple.com>
17037 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseMoveEvent):
17038 * src/kwq/KWQView.mm: (-[KWQHTMLView mouseUp:]), (-[KWQHTMLView mouseDown:]):
17039 * src/kwq/kde/_kurl.cpp: (KURL::htmlRef):
17041 2002-02-18 Richard Williamson <rjw@apple.com>
17043 Fixed the prefences won't stay in front problem after John found
17044 and correctly diagnosed the problem.
17046 * src/kwq/KWQWidget.mm: (QWidget::show), (QWidget::hide):
17048 2002-02-18 Richard Williamson <rjw@apple.com>
17050 Performance measurement.
17052 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin), (KHTMLPart::write):
17054 2002-02-16 Maciej Stachowiak <mjs@apple.com>
17056 Reimplement KURL in terms of CFURL (many workarounds needed to
17057 account for differing semantics).
17059 * src/kwq/kdecore/kurl.h:
17060 * src/kwq/KWQKURL.mm: (KURL::KWQKURLPrivate::KWQKURLPrivate),
17061 (KURL::KWQKURLPrivate::~KWQKURLPrivate), (KURL::KWQKURLPrivate::init),
17062 (KURL::KWQKURLPrivate::makeRef), (CFStringToQString), (escapeQString),
17063 (pathEndsWithSlash), (KWQCFURLCopyEscapedPath),
17064 (KURL::KWQKURLPrivate::decompose), (KURL::KWQKURLPrivate::compose), (KURL::KURL),
17065 (KURL::~KURL), (KURL::isEmpty), (KURL::isMalformed), (KURL::hasPath),
17066 (KURL::url), (KURL::protocol), (KURL::host), (KURL::port), (KURL::pass),
17067 (KURL::user), (KURL::ref), (KURL::query), (KURL::path), (KURL::setProtocol),
17068 (KURL::setHost), (KURL::setPort), (KURL::setRef), (KURL::setQuery),
17069 (KURL::setPath), (KURL::prettyURL), (KURL::operator=), (KURL::decode_string),
17070 (KURL::copyOnWrite):
17071 * src/kwq/Makefile.am: Add new file to build.
17073 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin,
17074 KHTMLPart::submitForm): Don't
17076 Minor tweaks to make it all build:
17078 * src/kwq/kde/_kurl.cpp:
17079 * src/kwq/qt/_qurl.cpp:
17080 * src/kwq/qt/_qurl.h:
17082 2002-02-16 Richard Williamson <rjw@apple.com>
17084 Fixed problem with default text not showing up in text area.
17085 Fixed problem with scroll widgets not showing up in select list.
17087 * src/kdelibs/khtml/rendering/render_form.cpp: (RenderSelect::layout):
17088 * src/kwq/KWQListBox.mm: (QListBox::QListBox):
17089 * src/kwq/KWQTextArea.mm: (-[KWQTextArea _createTextView]), (-[KWQTextArea
17090 initWithFrame:widget:]), (-[KWQTextArea setFrame:]):
17092 2002-02-15 Richard Williamson <rjw@apple.com>
17094 Lots of changes to support forms.
17096 * src/kdelibs/khtml/rendering/render_form.cpp: (RenderFormElement::slotClicked),
17097 (RenderCheckBox::performAction), (RenderRadioButton::slotClicked),
17098 (RenderSelect::RenderSelect), (RenderSelect::layout),
17099 (RenderSelect::performAction), (RenderTextArea::layout), (RenderTextArea::text),
17100 (RenderTextArea::performAction):
17101 * src/kdelibs/khtml/rendering/render_form.h:
17102 * src/kwq/KWQCheckBox.mm: (QCheckBox::QCheckBox), (QCheckBox::isChecked):
17103 * src/kwq/KWQComboBox.mm: (QComboBox::indexOfCurrentItem):
17104 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::requestFrame):
17105 * src/kwq/KWQListBox.h:
17106 * src/kwq/KWQListBox.mm: (-[KWQBrowserDelegate initWithListBox:]),
17107 (-[KWQBrowserDelegate browser:numberOfRowsInColumn:]), (-[KWQBrowserDelegate
17108 browser:willDisplayCell:atRow:column:]), (-[KWQBrowserDelegate
17109 browserSingleClick:]), (-[KWQBrowserDelegate browserDoubleClick:]),
17110 (QListBox::QListBox), (QListBox::~QListBox), (QListBox::count),
17111 (QListBox::scrollBarWidth), (QListBox::clear), (QListBox::setSelectionMode),
17112 (QListBox::currentItem), (QListBox::insertItem), (QListBox::setSelected),
17113 (QListBox::isSelected), (QListBoxItem::QListBoxItem),
17114 (QListBoxItem::~QListBoxItem), (QListBoxItem::setSelectable),
17115 (QListBoxItem::width), (QListBoxItem::height):
17116 * src/kwq/KWQNSTextField.mm: (-[KWQNSTextField action:]), (-[KWQNSTextField
17117 controlTextDidEndEditing:]):
17118 * src/kwq/KWQScrollView.mm: (QScrollView::addChild):
17119 * src/kwq/KWQTextArea.mm: (-[KWQTextArea initWithFrame:]), (-[KWQTextArea
17120 _createTextView]), (-[KWQTextArea initWithFrame:widget:]), (-[KWQTextArea
17121 textDidEndEditing:]), (-[KWQTextArea setFrame:]):
17122 * src/kwq/KWQTextEdit.mm: (QMultiLineEdit::setCursorPosition),
17123 (QMultiLineEdit::getCursorPosition):
17124 * src/kwq/KWQView.mm: (-[KWQNSButton stateChanged:]), (-[KWQNSComboBox
17125 initWithFrame:widget:]), (-[KWQNSComboBox action:]):
17126 * src/kwq/KWQWidget.mm: (QWidget::endEditing):
17127 * src/kwq/qt/qcheckbox.h:
17128 * src/kwq/qt/qcombobox.h:
17129 * src/kwq/qt/qobject.h:
17131 2002-02-13 Richard Williamson <rjw@apple.com>
17133 Use NSSwitchButtons for check boxes.
17135 * src/kwq/KWQCheckBox.mm: (QCheckBox::QCheckBox):
17137 2002-02-13 Richard Williamson <rjw@apple.com>
17139 Removed dead code from setView.
17141 * src/kwq/KWQWidget.mm: (QWidget::setView):
17143 2002-02-12 Richard Williamson <rjw@apple.com>
17145 Made basic forms work.
17147 * src/kdelibs/khtml/rendering/render_form.cpp:
17148 (RenderFormElement::performAction), (RenderLineEdit::RenderLineEdit),
17149 (RenderLineEdit::performAction):
17150 * src/kdelibs/khtml/rendering/render_form.h:
17151 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent),
17152 (KHTMLPart::submitForm):
17153 * src/kwq/KWQLineEdit.mm: (QLineEdit::text):
17154 * src/kwq/KWQNSTextField.mm: (-[KWQNSTextField initWithFrame:widget:]),
17155 (-[KWQNSTextField action:]), (-[KWQNSTextField controlTextDidEndEditing:]),
17156 (-[KWQNSTextField setMaximumLength:]), (-[KWQNSTextField maximumLength]):
17157 * src/kwq/KWQObject.mm: (QObject::emitAction), (QObject::performAction):
17158 * src/kwq/KWQWidget.mm: (QWidget::setView), (QWidget::endEditing):
17159 * src/kwq/kwqdebug.mm: (KWQGetLogLevel):
17160 * src/kwq/qt/qlineedit.h:
17161 * src/kwq/qt/qobject.h:
17162 * src/kwq/qt/qwidget.h:
17164 2002-02-12 Maciej Stachowiak <mjs@apple.com>
17166 Make some tweaks to glue together KDE's and CF's concepts of URLs
17167 a bit better. In particular, CF thinks "file:/some/path" is an
17168 invalid URL, while KDE thinks this is the canonical form for a
17171 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::openURL), (KHTMLPart::closeURL),
17172 (KHTMLPart::checkCompleted):
17173 * src/kwq/KWQKjobclasses.mm:
17175 2002-02-12 Maciej Stachowiak <mjs@apple.com>
17177 Reimplemented QList, QVector and QCollection from
17178 scratch. Implemented copy-on-write optimization for QMap.
17180 Minimally reimplement QCollection.
17182 * src/kwq/qt/qcollection.h:
17183 * src/kwq/KWQCollection.mm: (QCollection::QCollection), (QCollection::operator=),
17184 (QCollection::~QCollection), (QCollection::autoDelete),
17185 (QCollection::setAutoDelete):
17187 * src/kwq/qt/qdict.h, src/kwq/qt/qptrdict.h: Include
17188 qcollection.h, not _qcollection.h
17190 Reimplement QList as a doubly-linked list.
17192 * src/kwq/qt/qlist.h:
17193 * src/kwq/KWQListImpl.h:
17194 * src/kwq/KWQListImpl.mm: (KWQListImpl::KWQListPrivate::copyList),
17195 (KWQListImpl::KWQListPrivate::KWQListPrivate),
17196 (KWQListImpl::KWQListPrivate::~KWQListPrivate),
17197 (KWQListIteratorImpl::KWQListIteratorPrivate::KWQListIteratorPrivate),
17198 (KWQListImpl::KWQListImpl), (KWQListImpl::~KWQListImpl), (KWQListImpl::isEmpty),
17199 (KWQListImpl::count), (KWQListImpl::clear), (KWQListImpl::sort),
17200 (KWQListImpl::at), (KWQListImpl::insert), (KWQListImpl::remove),
17201 (KWQListImpl::removeFirst), (KWQListImpl::removeLast), (KWQListImpl::removeRef),
17202 (KWQListImpl::getLast), (KWQListImpl::current), (KWQListImpl::first),
17203 (KWQListImpl::last), (KWQListImpl::next), (KWQListImpl::prev),
17204 (KWQListImpl::take), (KWQListImpl::append), (KWQListImpl::prepend),
17205 (KWQListImpl::containsRef), (KWQListImpl::assign), (KWQListImpl::addIterator),
17206 (KWQListImpl::removeIterator), (KWQListIteratorImpl::KWQListIteratorImpl),
17207 (KWQListIteratorImpl::~KWQListIteratorImpl), (KWQListIteratorImpl::count),
17208 (KWQListIteratorImpl::toFirst), (KWQListIteratorImpl::toLast),
17209 (KWQListIteratorImpl::current), (KWQListIteratorImpl::operator--),
17210 (KWQListIteratorImpl::operator++), (KWQListIteratorImpl::operator=):
17212 Reimplement QVector in terms of CFArray.
17214 * src/kwq/qt/qvector.h:
17215 * src/kwq/KWQVectorImpl.h:
17216 * src/kwq/KWQVectorImpl.mm: (KWQVectorImpl::KWQVectorPrivate::KWQVectorPrivate),
17217 (KWQVectorImpl::KWQVectorPrivate::~KWQVectorPrivate),
17218 (KWQVectorImpl::KWQVectorImpl), (KWQVectorImpl::~KWQVectorImpl),
17219 (KWQVectorImpl::clear), (KWQVectorImpl::isEmpty), (KWQVectorImpl::count),
17220 (KWQVectorImpl::size), (KWQVectorImpl::remove), (KWQVectorImpl::resize),
17221 (KWQVectorImpl::insert), (KWQVectorImpl::at), (KWQVectorImpl::assign),
17222 (KWQVectorImpl::KWQVectorImpl::swap):
17224 Implemented copy-on-write optimization for QMap. This had the
17225 pleasant side effect of improving the separation between pointer
17226 manipulation and key/value manipulation.
17228 * src/kwq/qt/qmap.h:
17229 * src/kwq/KWQMapImpl.h:
17230 * src/kwq/KWQMapImpl.mm: (KWQMapImpl::KWQMapPrivate::KWQMapPrivate),
17231 (KWQMapImpl::KWQMapPrivate::~KWQMapPrivate), (KWQMapImpl::KWQMapImpl),
17232 (KWQMapImpl::~KWQMapImpl), (KWQMapImpl::copyOnWrite), (KWQMapImpl::copyTree),
17233 (KWQMapImpl::rebalanceAfterInsert), (KWQMapImpl::rebalanceAfterRemove),
17234 (KWQMapImpl::findInternal), (KWQMapImpl::insertInternal),
17235 (KWQMapImpl::removeInternal), (KWQMapImpl::swap), (KWQMapImpl::countInternal),
17236 (KWQMapImpl::clearInternal), (KWQMapImpl::beginInternal),
17237 (KWQMapImpl::endInternal):
17239 * src/kwq/Makefile.am: Add new files to build.
17241 * src/kdelibs/khtml/rendering/render_text.cpp
17242 (TextSlaveArray::findFirstMatching): Fix two places where the KDE
17243 code was depending on implementation details of QVector.
17245 2002-02-07 Richard Williamson <rjw@apple.com>
17247 More changes to IFLocationChangeHandler API.
17249 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent):
17251 2002-02-07 Richard Williamson <rjw@apple.com>
17253 Factored URL loading code out and moved to IFBaseWebController.
17256 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent),
17257 (KHTMLPart::requestFrame):
17259 2002-02-06 Richard Williamson <rjw@apple.com>
17261 Fixed allocation problems.
17263 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent),
17264 (KHTMLPart::requestFrame):
17266 2002-02-05 Richard Williamson <rjw@apple.com>
17268 Updated part to use 'official' controller APIs.
17270 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::~KHTMLPart),
17271 (KHTMLPart::khtmlMouseReleaseEvent), (KHTMLPart::requestFrame),
17272 (KHTMLPart::checkCompleted):
17274 2002-02-05 Richard Williamson <rjw@apple.com>
17276 Changes to support dynamic scroll bars in frames/iframes.
17278 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent):
17279 * src/kwq/KWQScrollView.mm: (QScrollView::addChild),
17280 (QScrollView::resizeContents), (QScrollView::updateContents),
17281 (QScrollView::repaintContents):
17282 * src/kwq/KWQWidget.mm: (QWidget::resize), (QWidget::move),
17283 (QWidget::internalSetGeometry):
17285 2002-02-05 Kenneth Kocienda <kocienda@apple.com>
17287 Changes to move these last bits of code to the new cache API.
17289 * src/kwq/KWQKjobclasses.mm:
17290 * src/kwq/WKPluginView.h:
17291 * src/kwq/WKPluginView.mm: (-[WKPluginView drawRect:]), (-[WKPluginView
17292 WCURLHandleResourceDidBeginLoading:userData:]), (-[WKPluginView
17293 WCURLHandleResourceDidCancelLoading:userData:]), (-[WKPluginView
17294 WCURLHandleResourceDidFinishLoading:userData:]), (-[WKPluginView
17295 WCURLHandle:resourceDataDidBecomeAvailable:userData:]), (-[WKPluginView
17296 WCURLHandle:resourceDidFailLoadingWithResult:userData:]):
17298 2002-02-04 Maciej Stachowiak <mjs@apple.com>
17300 Fix everything for WK --> IF rename.
17302 * src/kwq/KWQKHTMLPart.h:
17303 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent),
17304 (KHTMLPart::requestFrame), (KHTMLPart::checkCompleted):
17306 2002-02-01 Kenneth Kocienda <kocienda@apple.com>
17308 More cleanups to the no-copy NSData API.
17309 This time the callback from the cache/loader has been
17311 - (void)WKURLHandle:(WKURLHandle *)sender resourceDataDidBecomeAvailable:(UInt8 *)bytes offset:(unsigned)offset length:(unsigned)length;
17313 - (void)WKURLHandle:(WKURLHandle *)sender resourceDataDidBecomeAvailable:(NSData *)data;
17314 This was made possible by some rearrangement in the private API.
17316 * include/WCURLHandle.h:
17317 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
17318 WCURLHandle:resourceDataDidBecomeAvailable:userData:]):
17319 * src/kwq/KWQKloader.mm: (-[URLLoadClient
17320 WCURLHandle:resourceDataDidBecomeAvailable:userData:]):
17322 2002-02-01 Richard Williamson <rjw@apple.com>
17324 Added support for dynamic scrolling frames. Also added first callback for
17325 WKLocationChangeHandler.
17327 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::end), (KHTMLPart::khtmlMouseReleaseEvent),
17328 (KHTMLPart::checkCompleted):
17330 2002-02-01 Kenneth Kocienda <kocienda@apple.com>
17332 Made some cleanups to the no-copy NSData API, and those changes
17333 make the use of the no-copy functionality in this client code
17336 * include/WCURLHandle.h:
17337 * src/kwq/KWQKloader.mm: (-[URLLoadClient
17338 WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]):
17340 2002-01-31 Richard Williamson <rjw@apple.com>
17342 Added QString constructor, fixed javascript at head of document bug.
17344 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::openURL), (KHTMLPart::closeURL),
17345 (KHTMLPart::write):
17346 * src/kwq/KWQString.mm: (QString::QString):
17347 * src/kwq/qt/qstring.h:
17349 2002-01-31 Richard Williamson <rjw@apple.com>
17351 * src/kdelibs/khtml/html/html_headimpl.cpp: (HTMLStyleElementImpl::detach):
17352 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::write):
17354 2002-01-31 Kenneth Kocienda <kocienda@apple.com>
17356 Changes to incorporate use of the no-copy NSData object.
17358 * include/WCURLHandle.h:
17359 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
17360 WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]):
17361 * src/kwq/KWQKloader.mm: (-[URLLoadClient
17362 WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]):
17364 2002-01-30 Richard Williamson <rjw@apple.com>
17366 Cleaned up frame code a bit. Fixed duplicate content problem.
17368 * src/kdelibs/khtml/html/html_headimpl.cpp: (HTMLLinkElementImpl::detach):
17369 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::layout):
17370 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::~KHTMLPart), (KHTMLPart::openURL),
17371 (KHTMLPart::requestFrame):
17373 2002-01-30 Kenneth Kocienda <kocienda@apple.com>
17375 Added *.lo, *.la, and .libs to .cvsignore files
17379 * src/kdelibs/khtml/css/.cvsignore:
17380 * src/kdelibs/khtml/misc/.cvsignore:
17381 * src/kdelibs/kjs/.cvsignore:
17383 2002-01-29 Richard Williamson <rjw@apple.com>
17385 Fixed QConstString to make a copy on initial chars.
17388 * src/kwq/KWQString.mm: (QString::_copyIfNeededInternalString),
17389 (QString::insert), (QString::remove), (QString::replace), (QString::truncate),
17390 (QConstString::QConstString):
17391 * src/kwq/qt/qstring.h:
17393 2002-01-29 Richard Williamson <rjw@apple.com>
17395 * src/kwq/KWQString.mm: (QString::_copyIfNeededInternalString),
17396 (QString::insert), (QString::remove), (QString::replace), (QString::truncate),
17397 (QConstString::QConstString):
17398 * src/kwq/qt/qstring.h:
17400 2002-01-29 Kenneth Kocienda <kocienda@apple.com>
17402 - Added in a dummy protocol to clean up a warning that results
17403 from calling a method on an id.
17404 - Cleaned up handle variable in KWQKHTMLPart. This can now be freed
17405 once we get a proper notification that a load is done.
17406 - Support for reading text encoding from HTTP headers added back in.
17408 * include/WCURLHandle.h:
17409 * src/kwq/KWQKHTMLPart.mm: (encodingFromContentType), (KHTMLPart::slotData),
17410 (KHTMLPart::openURL), (KHTMLPart::closeURL):
17412 2002-01-29 Richard Williamson <rjw@apple.com>
17414 First pass as frame code. Still needs cleanup.
17416 * src/kdelibs/khtml/dom/dom_misc.cpp: (DomShared::ref), (DomShared::deref):
17417 * src/kdelibs/khtml/dom/dom_misc.h:
17418 * src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::~KHTMLView):
17419 * src/kwq/KWQComboBox.mm: (QComboBox::setCurrentItem):
17420 * src/kwq/KWQKHTMLPart.h:
17421 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::~KHTMLPart), (KHTMLPart::begin),
17422 (KHTMLPart::end), (KHTMLPart::xmlDocImpl), (KHTMLPart::khtmlMouseReleaseEvent),
17423 (KHTMLPart::requestFrameName), (KHTMLPart::requestFrame),
17424 (KHTMLPart::requestObject), (KHTMLPart::checkCompleted):
17426 2002-01-29 Kenneth Kocienda <kocienda@apple.com>
17428 Checked in the missing file
17430 * include/WCURLHandle.h:
17432 2002-01-29 Kenneth Kocienda <kocienda@apple.com>
17434 Changed over to the new cache loader in WebFoundation
17436 * src/kwq/KWQKHTMLPart.h:
17437 * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient init]), (-[KHTMLPartLoadClient
17438 WCURLHandleResourceDidBeginLoading:userData:]), (-[KHTMLPartLoadClient
17439 WCURLHandleResourceDidCancelLoading:userData:]), (-[KHTMLPartLoadClient
17440 WCURLHandleResourceDidFinishLoading:userData:]), (-[KHTMLPartLoadClient
17441 WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
17442 (-[KHTMLPartLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
17443 (-[KHTMLPartLoadClient dealloc]), (KHTMLPart::slotData), (KHTMLPart::openURL):
17444 * src/kwq/KWQKjobclasses.mm:
17445 * src/kwq/KWQKloader.mm: (-[URLLoadClient initWithLoader:]), (-[URLLoadClient
17446 WCURLHandleResourceDidBeginLoading:userData:]), (-[URLLoadClient
17447 WCURLHandleResourceDidCancelLoading:userData:]), (-[URLLoadClient
17448 WCURLHandleResourceDidFinishLoading:userData:]), (-[URLLoadClient
17449 WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
17450 (-[URLLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
17451 (-[URLLoadClient dealloc]):
17452 * src/kwq/kio/jobclasses.h:
17454 2002-01-29 Maciej Stachowiak <mjs@apple.com>
17456 Reimplement QDict, QMap, QPtrDict and QSortedList.
17458 Reimplement QDict in terms of CFDictionary:
17460 * src/kwq/qt/qdict.h:
17461 * src/kwq/KWQDictImpl.h:
17462 * src/kwq/KWQDictImpl.mm: (KWQDictImpl::KWQDictImpl), (KWQDictImpl::insert),
17463 (KWQDictImpl::remove), (KWQDictImpl::find),
17464 (KWQDictIteratorImpl::KWQDictIteratorImpl),
17465 (KWQDictIteratorImpl::currentStringKey):
17467 Reimplement QMap as a right-threaded red-black tree, splitting
17468 the work between template classes that manipulate keys and values
17469 and non-template base classes that handle all the pointer
17472 * src/kwq/qt/qmap.h:
17473 * src/kwq/KWQMapImpl.h:
17474 * src/kwq/KWQMapImpl.mm: (KWQMapNodeImpl::KWQMapNodeImpl),
17475 (KWQMapNodeImpl::left), (KWQMapNodeImpl::right), (KWQMapNodeImpl::predecessor),
17476 (KWQMapNodeImpl::successor), (KWQMapIteratorImpl::KWQMapIteratorImpl),
17477 (KWQMapIteratorImpl::incrementInternal), (KWQMapImpl::KWQMapImpl),
17478 (KWQMapImpl::rotateRight), (KWQMapImpl::rotateLeft),
17479 (KWQMapImpl::rebalanceAfterInsert), (KWQMapImpl::rebalanceAfterRemove),
17480 (KWQMapImpl::findInternal), (KWQMapImpl::insertInternal),
17481 (KWQMapImpl::removeInternal), (KWQMapImpl::swap), (KWQMapImpl::countInternal),
17482 (KWQMapImpl::clearInternal), (KWQMapImpl::beginInternal),
17483 (KWQMapImpl::endInternal):
17485 Reimplement QPtrDict in terms of CFDictionary:
17487 * src/kwq/qt/qptrdict.h:
17488 * src/kwq/KWQPtrDictImpl.h:
17489 * src/kwq/KWQPtrDictImpl.mm:
17490 (KWQPtrDictImpl::KWQPtrDictPrivate::KWQPtrDictPrivate),
17491 (KWQPtrDictImpl::KWQPtrDictPrivate::~KWQPtrDictPrivate),
17492 (KWQPtrDictImpl::KWQPtrDictImpl), (KWQPtrDictImpl::~KWQPtrDictImpl),
17493 (invokeDeleteFuncOnValue), (KWQPtrDictImpl::clear), (KWQPtrDictImpl::count),
17494 (KWQPtrDictImpl::insert), (KWQPtrDictImpl::remove), (KWQPtrDictImpl::find),
17495 (KWQPtrDictImpl::swap), (KWQPtrDictImpl::assign), (KWQPtrDictImpl::take),
17496 (KWQPtrDictIteratorImpl::KWQPtrDictIteratorPrivate::KWQPtrDictIteratorPrivate),
17497 (KWQPtrDictIteratorImpl::KWQPtrDictIteratorPrivate::~KWQPtrDictIteratorPrivate),
17498 (KWQPtrDictIteratorImpl::KWQPtrDictIteratorImpl),
17499 (KWQPtrDictIteratorImpl::~KWQPtrDictIteratorImpl),
17500 (KWQPtrDictIteratorImpl::count), (KWQPtrDictIteratorImpl::current),
17501 (KWQPtrDictIteratorImpl::currentKey), (KWQPtrDictIteratorImpl::toFirst),
17502 (KWQPtrDictIteratorImpl::operator++):
17504 Reimplement QSortedList:
17506 * src/kwq/qt/qsortedlist.h:
17508 * src/kwq/KWQArrayImpl.mm: Remove stray include.
17510 * src/kwq/Makefile.am: Add new files to build.
17512 * src/kwq/qt/_qdict.h, src/kwq/qt/_qgdict.h,
17513 src/kwq/qt/_qptrdict.h: Avoid causing problems when the relevant
17514 defines are not defined.
17516 2002-01-22 Richard Williamson <rjw@apple.com>
17518 Implemented KWQDesktopWidget to represent main screen. Used by javascript.
17520 * src/kwq/KWQApplication.mm: (KWQDesktopWidget::width),
17521 (KWQDesktopWidget::height), (QApplication::desktop):
17523 2002-01-21 Maciej Stachowiak <mjs@apple.com>
17525 Reimplemented QArray, QBuffer, QStack and QStringList; also fixed
17526 some files for borrowed switchability, and fixed some bugs found
17527 by my new test cases.
17529 # Reimplement QArray:
17531 * src/kwq/qt/qarray.h:
17532 * src/kwq/KWQArrayImpl.h:
17533 * src/kwq/KWQArrayImpl.mm: (KWQArrayImpl::KWQArrayPrivate::KWQArrayPrivate),
17534 (KWQArrayImpl::KWQArrayPrivate::~KWQArrayPrivate), (KWQArrayImpl::KWQArrayImpl),
17535 (KWQArrayImpl::~KWQArrayImpl), (KWQArrayImpl::operator=), (KWQArrayImpl::at),
17536 (KWQArrayImpl::data), (KWQArrayImpl::size), (KWQArrayImpl::resize),
17537 (KWQArrayImpl::duplicate), (KWQArrayImpl::fill), (KWQArrayImpl::operator==):
17539 # Reimplement QBuffer:
17541 * src/kwq/qt/qbuffer.h:
17542 * src/kwq/KWQBuffer.mm: (QBuffer::QBuffer), (QBuffer::~QBuffer),
17543 (QBuffer::buffer), (QBuffer::size), (QBuffer::isOpen), (QBuffer::open),
17544 (QBuffer::close), (QBuffer::writeBlock):
17545 * src/kwq/qt/qiodevice.h:
17547 # Reimplement QStringList:
17549 * src/kwq/KWQStringList.mm: (QStringToCFString), (QStringList::split),
17550 (QStringList::QStringList), (QStringList::~QStringList), (QStringList::join),
17551 (QStringList::operator=):
17553 # Reimplement QStack:
17554 * src/kwq/qt/qstack.h:
17556 * src/kwq/Makefile.am: Add new files to build.
17558 * src/kwq/KWQString.mm: (QString::find): Fix bug which returned
17559 the very first occurence in the string even when the optional
17560 starting point was passed in. Some of my new regression tests
17563 # Temporarily work around uses of non-kwq APIs:
17565 * src/kwq/WKPluginWidget.h:
17566 * src/kwq/qt/_qfile.cpp
17567 * src/kwq/qt/_qbuffer.cpp
17569 # Guard contents of all these with the appropriate USING ifdef:
17571 * src/kwq/KWQStrList.h:
17572 * src/kwq/qt/_qarray.h:
17573 * src/kwq/qt/_qgarray.h:
17574 * src/kwq/qt/_qstrlist.h:
17576 2002-01-19 Maciej Stachowiak <mjs@apple.com>
17578 * src/kdelibs/kjs/Makefile.am: Fix testkjs build.
17580 Fix a couple more static initialization problems:
17581 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::urlCursor):
17582 * src/kwq/KWQRegion.mm: (QRegion::QRegion), (QRegion::operator=):
17584 * src/.cvsignore, src/kdelibs/.cvsignore,
17585 src/kdelibs/khtml/css/.cvsignore,
17586 src/kdelibs/khtml/misc/.cvsignore, src/kdelibs/kjs/.cvsignore:
17587 Ignore stamp files.
17589 2002-01-18 Richard Williamson <rjw@apple.com>
17591 First pass at new view/datasource/controller API.
17593 * src/kwq/KWQApplication.mm: (QApplication::QApplication),
17594 (QApplication::setMainWidget), (QApplication::exec):
17595 * src/kwq/KWQRegion.mm: (QRegion::QRegion), (QRegion::~QRegion),
17596 (QRegion::contains), (QRegion::isNull):
17597 * src/kwq/Makefile.am:
17598 * src/kwq/_KWQOwner.h:
17599 * src/kwq/_KWQOwner.m:
17600 * src/kwq/qt/qnamespace.h:
17602 2002-01-18 Maciej Stachowiak <mjs@apple.com>
17604 Avoid static initialization of objects as much as possible. Order
17605 of static initializers is unpredictable and we had some
17606 cross-dependencies, so avoid this practice as much as possible to
17607 fix various startup crashes.
17609 * src/kwq/KWQApplication.mm: (QApplication::palette),
17610 (QApplication::globalStrut):
17611 * src/kwq/KWQChar.mm:
17612 * src/kwq/KWQColor.mm:
17613 * src/kwq/KWQCursor.mm: (QCursor::QCursor), (QCursor::~QCursor):
17614 * src/kwq/KWQEvent.mm:
17615 * src/kwq/KWQKConfigBase.mm: (KConfigBase::readEntry),
17616 (KConfigBase::readColorEntry), (KConfigBase::readListEntry):
17617 * src/kwq/KWQKHTMLSettings.mm: (KHTMLSettings::encoding):
17618 * src/kwq/KWQKJavaEmbed.mm: (KJavaEmbed::sizeHint),
17619 (KJavaEmbed::minimumSizeHint):
17620 * src/kwq/KWQKLocale.mm: (KLocale::language):
17621 * src/kwq/KWQKMimeType.mm: (KMimeType::findByURL), (KMimeType::name):
17622 * src/kwq/KWQKPrinter.mm: (KPrinter::margins):
17623 * src/kwq/KWQKProtocolManager.mm: (KProtocolManager::httpProxy):
17624 * src/kwq/KWQKWinModule.mm: (KWinModule::workArea):
17625 * src/kwq/KWQKjobclasses.mm:
17626 * src/kwq/KWQKnetaccess.mm:
17627 * src/kwq/KWQPart.mm: (KParts::Part::widget), (KParts::ReadOnlyPart::url):
17628 * src/kwq/KWQPixmap.mm: (QPixmap::mask):
17629 * src/kwq/KWQToolTip.mm: (QToolTip::palette):
17630 * src/kwq/kde/_kurl.cpp:
17631 * src/kwq/kdecore/kurl.h:
17633 2002-01-17 Maciej Stachowiak <mjs@apple.com>
17635 Fix a couple of problems that kept `make -j3' from working from a
17636 clean start (use stamp files to serialize build a bit more where
17640 * src/kdelibs/khtml/css/Makefile.am:
17641 * src/kdelibs/khtml/misc/Makefile.am:
17642 * src/kdelibs/kjs/Makefile.am:
17644 2002-01-17 Maciej Stachowiak <mjs@apple.com>
17646 * src/kwq/Makefile.am: Fix another bonehead mistake.
17648 2002-01-17 Maciej Stachowiak <mjs@apple.com>
17650 Fix bonehead mistakes in last checkin which were killing Jersey.
17652 * src/kdelibs/khtml/ecma/Makefile.am:
17653 * src/kdelibs/khtml/html/Makefile.am:
17654 * src/kdelibs/khtml/rendering/Makefile.am:
17655 * src/kwq/kde/Makefile.am:
17657 2002-01-17 Maciej Stachowiak <mjs@apple.com>
17659 More build system speedups; instead of building static libraries
17660 in each directory, build relocatble object files, using the magic
17661 of incremental linking.
17664 * src/kdelibs/khtml/Makefile.am:
17665 * src/kdelibs/khtml/css/Makefile.am:
17666 * src/kdelibs/khtml/dom/Makefile.am:
17667 * src/kdelibs/khtml/ecma/Makefile.am:
17668 * src/kdelibs/khtml/html/Makefile.am:
17669 * src/kdelibs/khtml/java/Makefile.am:
17670 * src/kdelibs/khtml/misc/Makefile.am:
17671 * src/kdelibs/khtml/rendering/Makefile.am:
17672 * src/kdelibs/khtml/xml/Makefile.am:
17673 * src/kdelibs/kjs/Makefile.am:
17674 * src/kwq/Makefile.am:
17675 * src/kwq/kde/Makefile.am:
17676 * src/kwq/qt/Makefile.am:
17678 2002-01-17 Maciej Stachowiak <mjs@apple.com>
17680 Build speedups: Don't use libtool, and don't link static libraries
17684 * src/kdelibs/khtml/Makefile.am:
17685 * src/kdelibs/khtml/css/Makefile.am:
17686 * src/kdelibs/khtml/dom/Makefile.am:
17687 * src/kdelibs/khtml/ecma/Makefile.am:
17688 * src/kdelibs/khtml/html/Makefile.am:
17689 * src/kdelibs/khtml/java/Makefile.am:
17690 * src/kdelibs/khtml/misc/Makefile.am:
17691 * src/kdelibs/khtml/rendering/Makefile.am:
17692 * src/kdelibs/khtml/xml/Makefile.am:
17693 * src/kdelibs/kjs/Makefile.am:
17694 * src/kwq/Makefile.am:
17695 * src/kwq/kde/Makefile.am:
17696 * src/kwq/qt/Makefile.am:
17698 2002-01-16 Maciej Stachowiak <mjs@apple.com>
17700 * src/kwq/qt/_qpoint.h, src/kwq/qt/_qrect.h, src/kwq/qt/_qsize.h,
17701 src/kwq/qt/qpoint.h, src/kwq/qt/qrect.h, src/kwq/qt/qsize.h: Make
17702 QPoint, QRect and QSize easily turn-off-able again.
17704 2002-01-15 Maciej Stachowiak <mjs@apple.com>
17706 * src/kdelibs/kjs/Makefile.am: Add missing files to BUILT_SOURCES
17707 and build rules to fix `make -j3'
17709 2002-01-14 Maciej Stachowiak <mjs@apple.com>
17714 * include/.cvsignore:
17715 * include/Makefile.am:
17716 * include/private/.cvsignore:
17717 * include/private/Makefile.am:
17722 * src/kdelibs/.cvsignore:
17723 * src/kdelibs/Makefile.am:
17724 * src/kdelibs/kdecore/.cvsignore:
17725 * src/kdelibs/kdecore/Makefile.am:
17726 * src/kdelibs/kdecore/Makefile.in:
17727 * src/kdelibs/khtml/.cvsignore:
17728 * src/kdelibs/khtml/Makefile.am:
17729 * src/kdelibs/khtml/Makefile.in:
17730 * src/kdelibs/khtml/css/.cvsignore:
17731 * src/kdelibs/khtml/css/Makefile.am:
17732 * src/kdelibs/khtml/css/Makefile.in:
17733 * src/kdelibs/khtml/dom/.cvsignore:
17734 * src/kdelibs/khtml/dom/Makefile.am:
17735 * src/kdelibs/khtml/dom/Makefile.in:
17736 * src/kdelibs/khtml/ecma/.cvsignore:
17737 * src/kdelibs/khtml/ecma/Makefile.am:
17738 * src/kdelibs/khtml/ecma/Makefile.in:
17739 * src/kdelibs/khtml/html/.cvsignore:
17740 * src/kdelibs/khtml/html/Makefile.am:
17741 * src/kdelibs/khtml/html/Makefile.in:
17742 * src/kdelibs/khtml/java/.cvsignore:
17743 * src/kdelibs/khtml/java/ChangeLog:
17744 * src/kdelibs/khtml/java/Makefile.am:
17745 * src/kdelibs/khtml/java/Makefile.in:
17746 * src/kdelibs/khtml/java/tests/Makefile.am:
17747 * src/kdelibs/khtml/misc/.cvsignore:
17748 * src/kdelibs/khtml/misc/Makefile.am:
17749 * src/kdelibs/khtml/misc/Makefile.in:
17750 * src/kdelibs/khtml/pics/Makefile.am:
17751 * src/kdelibs/khtml/rendering/.cvsignore:
17752 * src/kdelibs/khtml/rendering/Makefile.am:
17753 * src/kdelibs/khtml/rendering/Makefile.in:
17754 * src/kdelibs/khtml/xml/.cvsignore:
17755 * src/kdelibs/khtml/xml/Makefile.am:
17756 * src/kdelibs/khtml/xml/Makefile.in:
17757 * src/kdelibs/kjs/.cvsignore:
17758 * src/kdelibs/kjs/ChangeLog:
17759 * src/kdelibs/kjs/Makefile.am:
17760 * src/kdelibs/kjs/Makefile.in:
17761 * src/kdelibs/kjs/kjs-test:
17762 * src/kdelibs/kjs/kjs-test.chk:
17763 * src/kwq/.cvsignore:
17764 * src/kwq/Makefile.am:
17765 * src/kwq/Makefile.in:
17766 * src/kwq/_KWQOwner.m: (-[_KWQOwner backForwardUriDone:]):
17767 * src/kwq/kde/.cvsignore:
17768 * src/kwq/kde/Makefile.am:
17769 * src/kwq/kde/Makefile.in:
17770 * src/kwq/kdecore/.cvsignore:
17771 * src/kwq/kdecore/Makefile.in:
17772 * src/kwq/khtml/khtml_factory.h:
17773 * src/kwq/qt/.cvsignore:
17774 * src/kwq/qt/Makefile.am:
17775 * src/kwq/qt/Makefile.in:
17777 2002-01-09 Richard Williamson <rjw@apple.com>
17779 Re-implemented underlining. Now it REALLY works, honest.
17781 * src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
17782 * src/kwq/KWQFontMetrics.mm: (+[KWQLayoutInfo
17783 drawUnderlineForString:atPoint:withFont:color:]):
17784 * src/kwq/KWQMetrics.h:
17785 * src/kwq/KWQPainter.mm: (QPainter::drawUnderlineForText):
17786 * src/kwq/qt/qpainter.h:
17788 2001-12-20 Richard Williamson <rjw@apple.com>
17790 More tweaks to text layout and underlining.
17792 * src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
17793 * src/kwq/KWQFontMetrics.mm: (QFontMetrics::baselineOffset),
17794 (QFontMetrics::ascent), (QFontMetrics::descent), (QFontMetrics::height),
17795 (QFontMetrics::width):
17796 * src/kwq/KWQPainter.mm: (QPainter::drawText):
17797 * src/kwq/qt/qfontmetrics.h:
17799 2001-12-18 Maciej Stachowiak <mjs@apple.com>
17801 * src/kwq/KWQCString.mm: (QCString::QCString),
17802 (QCString::isEmpty), (QCString::isNull), (QCString::length): Fix
17803 some bugs found by the test suite in the emptiness/null semantics.
17805 Reimplement QPoint, QSize and QRect:
17807 * src/kwq/qt/qpoint.h, src/kwq/qt/qrect.h, src/kwq/qt/qsize.h:
17809 * src/kwq/KWQPoint.mm: (QPoint::QPoint), (QPoint::x), (QPoint::y),
17810 (QPoint::manhattanLength), (operator+), (operator-), (operator<<):
17811 Fresh implementations.
17812 * src/kwq/KWQRect.mm: (QRect::QRect), (QRect::isNull), (QRect::isValid),
17813 (QRect::x), (QRect::y), (QRect::left), (QRect::top), (QRect::right),
17814 (QRect::bottom), (QRect::width), (QRect::height), (QRect::topLeft),
17815 (QRect::size), (QRect::setWidth), (QRect::setHeight), (QRect::intersect),
17816 (QRect::intersects), (QRect::operator&), (operator==), (operator!=),
17817 (operator<<): Likewise.
17818 * src/kwq/KWQSize.mm: (QSize::QSize), (QSize::isValid), (QSize::width),
17819 (QSize::height), (QSize::setWidth), (QSize::setHeight), (QSize::expandedTo),
17820 (operator+), (operator==), (operator!=), (operator<<): Likewise.
17821 * src/kwq/qt/_qpoint.cpp, src/kwq/qt/_qrect.cpp,
17822 src/kwq/qt/_qsize.cpp: Disable the whole file contents when
17824 * src/kwq/Makefile.in: Add new files to build.
17826 Start moving away from QShared so we can remove it:
17828 * src/kwq/qt/qbrush.h, src/kwq/KWQBrush.mm: (QBrush::QBrush),
17830 (QBrush::setColor), (QBrush::style), (QBrush::setStyle),
17831 (QBrush::operator==), (QBrush::operator!=): Don't use shared data
17832 for this simple value object, the optimization value is
17833 quastionable anyway.
17834 * src/kwq/qt/qpen.h, src/kwq/KWQPen.mm: (QPen::QPen),
17835 (QPen::color), (QPen::width), (QPen::style),
17836 (QPen::setColor), (QPen::setWidth), (QPen::setStyle),
17837 (QPen::operator==): Likewise.
17838 * src/kwq/KWQPainter.mm: (QPainter::setPen), (QPainter::setBrush):
17839 Update for changes to pen.
17840 * src/kwq/KWQRefPtr.h: New reference-counted pointer template.
17841 * src/kwq/qt/qguardedptr.h, src/kwq/KWQGuardedPtr.mm:
17842 (QGuardedPtrPrivate::QGuardedPtrPrivate): Use KWQRefPtr instead of
17844 * src/kwq/qt/qvariant.h, src/kwq/KWQVariant.mm:
17845 (QVariant::QVariant), (QVariant::~QVariant),
17846 (QVariant::operator=): Use KWQRefPtr instead of
17848 * src/kwq/qt/qnamespace.h: Remove private constructor and
17849 destructor since people want to subclass this.
17851 * src/kwq/_KWQOwner.h: Add include guards and standard license.
17853 * src/kdelibs/khtml/ecma/kjs_binding.h: Add include of qvariant.h,
17854 how could stuff ever compile without this?
17856 2001-12-18 Richard Williamson <rjw@apple.com>
17858 Finally fixed underlining.
17860 * src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
17861 * src/kwq/KWQFontMetrics.mm:
17863 2001-12-18 Maciej Stachowiak <mjs@apple.com>
17865 * src/kwq/Makefile.in: Re-apply my changes, which accidentally got
17868 2001-12-13 Maciej Stachowiak <mjs@apple.com>
17870 Changes for international character set support. Still needs work,
17871 but no worse than before. amazon.co.jp renders almost correctly.
17873 * src/kwq/KWQCharsets.h, src/kwq/KWQCharsets.mm:
17874 (KWQCFStringEncodingFromIANACharsetName,
17875 KWQCFStringEncodingFromMIB, KWQCFStringEncodingToIANACharsetName,
17876 KWQCFStringEncodingToMIB): New functions that translate between
17877 the Qt concept of charaxcter sets and the
17878 (buildDictionaries): static helper function for the above.
17879 * src/kwq/KWQtextcodec.mm: (codecForCFStringEncoding,
17880 QTextCodec::codecForMib), QTextCodec::codecForName,
17881 QTextCodec::codecForLocale, QTextCodec::name,QTextCodec::mibEnum):
17882 Implement for real.
17883 * src/kwq/KWQKCharsets.mm: (KCharsets::codecForName,
17884 KCharsets::charsetForEncoding, KCharsets::charsetForEncoding):
17885 Implement for real.
17886 * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::slotData): Get encoding
17887 from headers if present.
17888 (encodingFromContentType): Helper function for the above.
17889 (KHTMLPart::begin): Reinitialize decoder for every page.
17890 (KHTMLPart::write): Minor bug fix.
17891 (KHTMLPart::setEncoding): Implement.
17892 (KHTMLPart::khtmlMouseMoveEvent,
17893 KHTMLPart::khtmlMouseReleaseEvent, KHTMLPart::checkCompleted):
17894 Simplify ifdefs to make prepare-ChangeLog happy.
17895 * src/kwq/qt/qstring.h, src/kwq/KWQString.mm:
17896 (QString::fromCFString): New convenience method to create a
17897 QString from an immutable CFString by copying,
17898 * src/kwq/character-sets.txt: IANA document describing character
17900 * src/kwq/make-charset-table.pl, src/kwq/make-mac-encodings.c:
17901 Helper programs to construct charset tables from IANA document.
17902 * src/kwq/Makefile.in: Update to handle the autogenerated code.
17903 * src/kwq/.cvsignore: Ignore new autogenerated files.
17905 * src/kdelibs/khtml/misc/decoder.cpp: (Decoder::decode): Fix
17906 decoding when the encoding is specified in the http headers (which
17907 seems like it could never have worked in KDE).
17909 * include/WCBackForwardList.h, include/WCURICache.h,
17910 include/WCURICacheData.h, include/WCURIEntry.h: Fix prototypes of
17911 C functions with no arguments to use (void), not (), to avoid
17912 warnings in WebKit.
17914 2001-12-11 Chris Blumenberg <cblu@apple.com>
17917 * src/kwq/KWQKHTMLPart.mm:
17919 2001-12-11 Chris Blumenberg <cblu@apple.com>
17921 * src/kwq/KWQKHTMLPart.mm:
17923 2001-12-10 Kenneth Kocienda <kocienda@apple.com>
17925 Went back and did a better job of cleaning up the warnings
17926 that resulted from comparing signed and unsigned numbers.
17928 * src/kwq/KWQString.mm: (QString::insert), (QString::remove),
17929 (QString::truncate):
17931 2001-12-07 Richard Williamson <richwill@richwill.com>
17933 Fixed bug that was highlighted when we turned on warnings.
17935 * src/kwq/KWQFontMetrics.mm:
17936 * src/kwq/KWQMetrics.h:
17938 2001-12-07 Kenneth Kocienda <kocienda@apple.com>
17940 Fixed small bug in a comparison that was making -Wall complain
17942 * src/kwq/KWQString.mm: