Home | History | Annotate | Download | only in WebCore
      1 2002-12-03  David Hyatt  <hyatt (a] apple.com>
      2 
      3 	Fix for 3078227, hanging in table code.  Make sure <form>s
      4 	don't get wrapped in anonymous rows and cells.
      5 	
      6         Reviewed by: rjw
      7 
      8         * khtml/rendering/render_table.cpp:
      9         (RenderTable::addChild):
     10         (RenderTableSection::addChild):
     11         (RenderTableRow::addChild):
     12 
     13 2002-12-03  David Hyatt  <hyatt (a] apple.com>
     14 
     15 	Backing out a file that I did not intend to check in.
     16 
     17         * khtml/misc/loader.cpp:
     18 
     19 2002-12-03  Richard Williamson   <rjw (a] apple.com>
     20 
     21         D'oh.  Fixed last minute change that broke the build.
     22         
     23         * kwq/KWQFont.mm:
     24         (QFont::getNSFont):
     25 
     26 2002-12-03  David Hyatt  <hyatt (a] apple.com>
     27 
     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.
     31 	
     32         Reviewed by: darin
     33 
     34         * khtml/html/html_tableimpl.cpp:
     35         (HTMLTableRowElementImpl::addChild):
     36         * khtml/misc/loader.cpp:
     37         * khtml/rendering/render_root.cpp:
     38         (RenderRoot::layout):
     39         * kwq/KWQKHTMLPart.h:
     40         * kwq/KWQKHTMLPart.mm:
     41         (KWQKHTMLPart::KWQKHTMLPart):
     42         (KWQKHTMLPart::paint):
     43 
     44 2002-12-03  Richard Williamson   <rjw (a] apple.com>
     45 
     46         Fixed 3019986.  Use an array of font families instead of a single
     47         font family to support CSS family lists.
     48         r=hyatt
     49                 
     50         * kwq/KWQFont.h:
     51         * kwq/KWQFont.mm:
     52         (QFont::getNSFont):
     53         * kwq/KWQFontMetrics.mm:
     54         (QFontMetrics::width):
     55         (QFontMetrics::floatWidth):
     56         (QFontMetrics::floatCharacterWidths):
     57         * kwq/KWQPainter.mm:
     58         (QPainter::drawText):
     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:]):
     65 
     66 2002-12-03  David Hyatt  <hyatt (a] apple.com>
     67 
     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
     70 	<tbody> and <table>.
     71 
     72 	r=gramps
     73 	
     74         * khtml/html/dtd.cpp:
     75         (DOM::checkChild):
     76         * khtml/html/html_tableimpl.cpp:
     77         (HTMLTableRowElementImpl::addChild):
     78         * khtml/html/html_tableimpl.h:
     79 
     80 2002-12-03  David Hyatt  <hyatt (a] apple.com>
     81 
     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.
     85 
     86 	<a><h4>...</h4></a>
     87 
     88 	r=mjs
     89 	
     90         * khtml/rendering/render_object.cpp:
     91         (RenderObject::nodeAtPoint):
     92 
     93 2002-12-03  David Hyatt  <hyatt (a] apple.com>
     94 
     95 	Eliminate the KONQBLOCK hack.  Fixes ipodhacks.com (a mislayout
     96 	caused by malformed html... <table><br>...)
     97 
     98 	r=mjs
     99 	
    100         * khtml/css/html4.css:
    101         * khtml/html/dtd.cpp:
    102         (DOM::checkChild):
    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:
    110         (hash_tag):
    111         (findTag):
    112         * khtml/misc/htmltags.h:
    113         * khtml/misc/htmltags.in:
    114         * khtml/rendering/render_flow.cpp:
    115         (RenderFlow::layoutBlockChildren):
    116 
    117 2002-12-02  David Hyatt  <hyatt (a] apple.com>
    118 
    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.
    122 
    123 	r=kocienda on the patch.
    124 	
    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:
    133 
    134 2002-12-02  David Hyatt  <hyatt (a] apple.com>
    135 
    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
    141 	in both modes.
    142 
    143 	This fixes aintitcool.com.
    144 	
    145         * khtml/rendering/render_flow.cpp:
    146         (RenderFlow::layoutBlockChildren):
    147 
    148 2002-12-01  David Hyatt  <hyatt (a] apple.com>
    149 
    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.
    155 	
    156         * khtml/misc/loader.cpp:
    157         (CachedObject::ref):
    158         (CachedObject::setSize):
    159         (m_tail):
    160         (LRUList::~LRUList):
    161         (Cache::flush):
    162         (FastLog2):
    163         (Cache::getLRUListFor):
    164         (Cache::removeFromLRUList):
    165         (Cache::insertInLRUList):
    166         (Cache::adjustSize):
    167         * khtml/misc/loader.h:
    168 
    169 2002-11-29  Don Melton  <gramps (a] apple.com>
    170 
    171         * khtml/css/html4.css:
    172 
    173         Finally tweak headline font sizes and margins to match Gecko and CSS
    174         standard:
    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
    179 
    180 2002-11-27  David Hyatt  <hyatt (a] apple.com>
    181 
    182 	Fix DHTML on phoenix.com.  Add support for window.addEventListener
    183 	and window.removeEventListener.
    184 	
    185         * khtml/ecma/kjs_window.cpp:
    186         (Window::get):
    187         (WindowFunc::tryCall):
    188         * khtml/ecma/kjs_window.h:
    189         * khtml/ecma/kjs_window.lut.h:
    190 
    191 2002-11-27  Maciej Stachowiak  <mjs (a] apple.com>
    192 
    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.
    196 	
    197         * khtml/ecma/kjs_html.cpp:
    198         (KJS::HTMLDocument::putValue):
    199 
    200 2002-11-27  David Hyatt  <hyatt (a] apple.com>
    201 
    202 	Fix <br clear=""> and <br clear> to just behave like <br>
    203 	rather than <br clear="all">.  Matches behavior in other
    204 	browsers.
    205 	
    206         * khtml/html/html_inlineimpl.cpp:
    207         (HTMLBRElementImpl::parseAttribute):
    208 
    209 2002-11-27  David Hyatt  <hyatt (a] apple.com>
    210 
    211         Numerous overflow: hidden improvements to fix espn.com.
    212 
    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,
    217 	so later.)
    218 
    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).
    225 	
    226         * ChangeLog:
    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:
    233 
    234 2002-11-27  David Hyatt  <hyatt (a] apple.com>
    235 
    236         * khtml/rendering/render_box.cpp:
    237         (RenderBox::getClipRect):
    238         (RenderBox::calcAbsoluteVertical):
    239         * khtml/rendering/render_layer.cpp:
    240         (RenderLayer::paint):
    241 
    242 2002-11-27  David Hyatt  <hyatt (a] apple.com>
    243 
    244 	Fix for 3105502.  drop-downs wrapping to next line.
    245 	
    246         * khtml/css/html4.css:
    247 
    248 2002-11-26  David Hyatt  <hyatt (a] apple.com>
    249 
    250 	Smarter block inside inline handling.  Eliminate whitespace
    251 	that is in between blocks inside inilnes.
    252 	
    253         * khtml/xml/dom_textimpl.cpp:
    254         (TextImpl::attach):
    255 
    256 2002-11-26  David Hyatt  <hyatt (a] apple.com>
    257 
    258 	Don't let blocks inside inlines collapse with their surroundings
    259 	ever.
    260 	
    261         * khtml/rendering/render_flow.cpp:
    262         (RenderFlow::layoutBlockChildren):
    263 
    264 2002-11-26  David Hyatt  <hyatt (a] apple.com>
    265 
    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.
    270 	
    271         * khtml/rendering/render_flow.cpp:
    272         (RenderFlow::layoutBlockChildren):
    273 
    274 2002-11-26  David Hyatt  <hyatt (a] apple.com>
    275 
    276 	Fix the font family stuff to be refcounted, so copying
    277 	fonts stays cheap.  Re-enabling it.
    278 
    279 	Patch the render_arena code with some debugging info
    280 	to help detect when memory gets trashed.
    281 
    282 	Fix the background painting code to deal with negative
    283 	x and y bakcground positions.  Fixes the brain on
    284 	brainjar.com.
    285 	
    286         * khtml/css/cssstyleselector.cpp:
    287         * khtml/rendering/render_arena.cpp:
    288         (RenderArena::free):
    289         * khtml/rendering/render_box.cpp:
    290         (RenderBox::paintBackground):
    291         * kwq/KWQFont.h:
    292         * kwq/KWQFont.mm:
    293         (QFontFamily::QFontFamily):
    294         (QFontFamily::operator=):
    295 
    296 === Alexander-34 ===
    297 
    298 2002-11-26  David Hyatt  <hyatt (a] apple.com>
    299 
    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).
    304 
    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.
    308 	
    309         * khtml/css/cssstyleselector.cpp:
    310 
    311 2002-11-26  David Hyatt  <hyatt (a] apple.com>
    312 
    313 	Fix render object removal to remerge adjacent anonymous inline boxes
    314 	when an intervening block box gets removed.
    315 	
    316         * khtml/rendering/render_flow.cpp:
    317         (RenderFlow::removeChild):
    318         * khtml/rendering/render_flow.h:
    319 
    320 2002-11-25  Richard Williamson   <rjw (a] apple.com>
    321 
    322         Cleanup up leaking objects in page cache.
    323         
    324         * kwq/KWQKHTMLPart.mm:
    325         (KWQKHTMLPart::openURLFromPageCache):
    326         * kwq/WebCoreBridge.mm:
    327         (-[KWQPageState initWithDocument:DOM::URL:windowProperties:KJS::locationProperties:KJS::]):
    328         (-[KWQPageState dealloc]):
    329 
    330 2002-11-25  Richard Williamson   <rjw (a] apple.com>
    331 
    332         Added check for non-nil doc.
    333         
    334         * kwq/KWQKHTMLPart.mm:
    335         (KWQKHTMLPart::setView):
    336 
    337 2002-11-25  David Hyatt  <hyatt (a] apple.com>
    338 
    339 	Fix for the DHTML on hrweb.  With these changes it works
    340 	except for some odd vertical spacing issues.
    341 	
    342         * khtml/rendering/render_flow.cpp:
    343         (RenderFlow::addChildToFlow):
    344         (RenderFlow::makeChildrenNonInline):
    345 
    346 2002-11-25  Richard Williamson   <rjw (a] apple.com>
    347 
    348         Tweaked some debugging info.
    349         
    350         * khtml/xml/dom_docimpl.cpp:
    351         (DocumentImpl::~DocumentImpl):
    352         (DocumentImpl::detach):
    353 
    354 2002-11-25  Chris Blumenberg  <cblu (a] apple.com>
    355 
    356 	Use ^= to refer to OBJECTs with TYPEs that start with "image/". This is better than hard-coding image mime types.
    357 
    358         * khtml/css/html4.css:
    359 
    360 2002-11-25  Chris Blumenberg  <cblu (a] apple.com>
    361 
    362 	Fixed: 2987001 - spurious mime-type errors from <object> images
    363 
    364 	KHTML didn't seem to have any clean support for OBJECT tags that are images. Added support for that.
    365 
    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
    375 
    376 2002-11-25  David Hyatt  <hyatt (a] apple.com>
    377 
    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
    381 	a lot faster.
    382 	
    383         * khtml/ecma/kjs_html.cpp:
    384         (KJS::HTMLDocument::hasProperty):
    385         (KJS::HTMLDocument::tryGet):
    386 
    387 2002-11-25  David Hyatt  <hyatt (a] apple.com>
    388 
    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.
    392 	
    393         * khtml/ecma/kjs_html.cpp:
    394         (KJS::HTMLDocument::tryGet):
    395         * khtml/html/html_miscimpl.cpp:
    396         (HTMLCollectionImpl::nextItem):
    397 
    398 2002-11-25  David Hyatt  <hyatt (a] apple.com>
    399 
    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
    402 	WebKit.
    403 	
    404         * khtml/css/cssstyleselector.cpp:
    405         * khtml/rendering/font.cpp:
    406         (Font::update):
    407         * khtml/rendering/font.h:
    408         * khtml/xml/dom_docimpl.cpp:
    409         (DocumentImpl::recalcStyle):
    410         * kwq/KWQFont.h:
    411         * kwq/KWQFont.mm:
    412         (QFontFamily::QFontFamily):
    413         (QFontFamily::operator=):
    414         (QFontFamily::family):
    415         (QFontFamily::setFamily):
    416         (QFontFamily::operator==):
    417         (QFont::QFont):
    418         (QFont::family):
    419         (QFont::setFamily):
    420         (QFont::getNSFontWithFamily):
    421 
    422 2002-11-25  Richard Williamson   <rjw (a] apple.com>
    423 
    424         Changes for back/forward.  Currently disabled.
    425 
    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]):
    454         (attributedString):
    455         (-[KWQPageState initWithDocument:DOM::URL:windowProperties:KJS::locationProperties:KJS::]):
    456         (-[KWQPageState dealloc]):
    457         (-[KWQPageState DOM::]):
    458         (-[KWQPageState URL]):
    459         (-[KWQPageState KJS::]):
    460 
    461 2002-11-25  David Hyatt  <hyatt (a] apple.com>
    462 
    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.
    466 	
    467         * khtml/ecma/kjs_html.cpp:
    468         (getForm):
    469         (KJS::HTMLElement::pushEventHandlerScope):
    470         * khtml/html/html_elementimpl.h:
    471 
    472 2002-11-25  David Hyatt  <hyatt (a] apple.com>
    473 
    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
    477 	away.
    478 	
    479         * khtml/rendering/render_flow.cpp:
    480         (RenderFlow::layoutBlockChildren):
    481 
    482 2002-11-25  David Hyatt  <hyatt (a] apple.com>
    483 
    484 	Don't add in the halfleading for align=texttop. That's incorrect.
    485 	
    486         * khtml/rendering/render_object.cpp:
    487         (RenderObject::getVerticalPosition):
    488 
    489 2002-11-24  Maciej Stachowiak  <mjs (a] apple.com>
    490 
    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:
    494 
    495 	- fixed 3084916 - blank page at aol
    496 	- fixed 3093162 - golfswitch doesn't work
    497 	
    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
    509 	changes.
    510         * khtml/rendering/render_image.cpp:
    511         (RenderImage::notifyFinished): Deliver the appropriate choice of
    512 	LOAD_EVENT or ERROR_EVENT.
    513 
    514 2002-11-24  David Hyatt  <hyatt (a] apple.com>
    515 
    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.
    519 
    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.
    523 
    524 	Now if you open an <i> or a <b> and just leave it open across
    525 	blocks, this will work.
    526 
    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.
    533 
    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.
    537 	
    538         * khtml/html/dtd.cpp:
    539         (DOM::checkChild):
    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):
    549         (cloneInline):
    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:]):
    563 
    564 2002-11-24  Chris Blumenberg  <cblu (a] apple.com>
    565 
    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.
    567 
    568         * kwq/WebCoreBridge.h:
    569         * kwq/WebCoreBridge.mm:
    570         (-[WebCoreBridge elementAtPoint:]):
    571 
    572 2002-11-24  Darin Adler  <darin (a] apple.com>
    573 
    574         * force-js-clean-timestamp: Touch for ScopeChain change.
    575 
    576 2002-11-24  Maciej Stachowiak  <mjs (a] apple.com>
    577 
    578 	- fixed 3067939 - no support for window.document.lastModified
    579 	
    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.
    584 
    585 2002-11-24  Maciej Stachowiak  <mjs (a] apple.com>
    586 
    587 	- fixed 3081946 - bookmarklet reports the wrong "windowfull" size
    588 
    589 	This isn't really beta 1 material but the fix was so tirivial I
    590 	couldn't resist.
    591 	
    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
    595 	both.
    596 
    597 2002-11-22  Darin Adler  <darin (a] apple.com>
    598 
    599         * khtml/ecma/kjs_window.cpp: Remove _COLLECTOR hack.
    600 
    601         * kwq/WebCoreJavaScript.h:
    602         * kwq/WebCoreJavaScript.mm:
    603         (+[WebCoreJavaScript rootObjectClasses]):
    604 	Update for name change -- root object classes, not all live object classes.
    605 
    606         * force-js-clean-timestamp: Make sure we don't have more build problems.
    607 
    608 2002-11-22  David Hyatt  <hyatt (a] apple.com>
    609 
    610 	Fix for 3107658, text doubling problem caused by layers being
    611 	constructed for <td>s.  Just disallow positioning of <td>.
    612 	
    613         * khtml/rendering/render_box.cpp:
    614         (RenderBox::setStyle):
    615         * khtml/rendering/render_flow.cpp:
    616         (RenderFlow::setStyle):
    617 
    618 2002-11-22  David Hyatt  <hyatt (a] apple.com>
    619 
    620 	Oops. I meant to do that for <input type=button> and not
    621 	<button>.  Just do it for <select>s for now.
    622 	
    623         * khtml/rendering/render_box.cpp:
    624         (RenderBox::calcReplacedWidth):
    625 
    626 2002-11-22  David Hyatt  <hyatt (a] apple.com>
    627 
    628 	Make <select>s and <button>s ignore a CSS-specified width if that
    629 	width is smaller than their intrinsic width.
    630 
    631 	Fixes the <select> at the top of livepage.apple.com.
    632 	
    633         * khtml/rendering/render_box.cpp:
    634         (RenderBox::calcReplacedWidth):
    635 
    636 2002-11-22  Darin Adler  <darin (a] apple.com>
    637 
    638 	- started checking in all our generated source files for the benefit of B&I
    639 
    640         * .cvsignore:
    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.
    664         * kwq/.cvsignore:
    665         * kwq/KWQCharsetData.c: Added.
    666 
    667 2002-11-22  David Hyatt  <hyatt (a] apple.com>
    668 
    669 	Fix for the table/form regressions.  Also landing beginnings
    670 	of the block/inline work.
    671 	
    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:
    678 
    679 2002-11-22  Darin Adler  <darin (a] apple.com>
    680 
    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.
    686 
    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.
    690 
    691 2002-11-22  David Hyatt  <hyatt (a] apple.com>
    692 
    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.
    698 	
    699         * khtml/html/dtd.cpp:
    700         (DOM::checkChild):
    701         * khtml/html/html_elementimpl.cpp:
    702         (HTMLElementImpl::isInline):
    703         * khtml/html/html_elementimpl.h:
    704         * khtml/xml/dom_nodeimpl.h:
    705 
    706 2002-11-21  Darin Adler  <darin (a] apple.com>
    707 
    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.
    713 
    714         * force-js-clean-timestamp: Not sure this is required, but better safe than sorry.
    715 
    716 2002-11-21  Maciej Stachowiak  <mjs (a] apple.com>
    717 
    718         * force-js-clean-timestamp: Touch so other people's builds work.
    719 
    720 2002-11-21  David Hyatt  <hyatt (a] apple.com>
    721 
    722 	Nested <a>s are never allowed.  Make sure to always pop the
    723 	<a> blocks.
    724 	
    725         * khtml/html/htmlparser.cpp:
    726         (KHTMLParser::getElement):
    727 
    728 2002-11-21  David Hyatt  <hyatt (a] apple.com>
    729 
    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.
    733 	
    734         * khtml/rendering/render_table.cpp:
    735         (RenderTableCell::repaint):
    736 
    737 2002-11-21  David Hyatt  <hyatt (a] apple.com>
    738 
    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.
    743 	
    744         * khtml/html/dtd.cpp:
    745         (DOM::checkChild):
    746 
    747 2002-11-21  Maciej Stachowiak  <mjs (a] apple.com>
    748 
    749         * Makefile.am: Pass symroots for this tree to pbxbuild.
    750 
    751 2002-11-21  David Hyatt  <hyatt (a] apple.com>
    752 
    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.
    757 	
    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:
    764 
    765 === Alexander-33 ===
    766 
    767 2002-11-21  Richard Williamson   <rjw (a] apple.com>
    768 
    769         Fixed from SK's copy/paste whitespace issue.
    770         This fixes 3076236 and a regression due to additional whitespace
    771         in the DOM.
    772         
    773         * kwq/WebCoreBridge.mm:
    774         (attributedString):
    775 
    776 2002-11-21  David Hyatt  <hyatt (a] apple.com>
    777 
    778 	Fix mac.com regression (and weather.com regression).
    779 	
    780         * khtml/rendering/bidi.cpp:
    781         (RenderFlow::findNextLineBreak):
    782 
    783 2002-11-21  Richard Williamson   <rjw (a] apple.com>
    784 
    785         Fixed performance regression!  Argh.
    786         
    787         * khtml/rendering/font.cpp:
    788         (Font::width):
    789 
    790 2002-11-21  Darin Adler  <darin (a] apple.com>
    791 
    792         * force-js-clean-timestamp: Trigger a rebuild because of the
    793 	size change in ValueImp.
    794 
    795 2002-11-21  Darin Adler  <darin (a] apple.com>
    796 
    797 	- fixed 3107286 -- REGRESSION: unrepro assertion failure in KWQKHTMLPart.mm keyEvent
    798 
    799         * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::keyEvent):
    800 	Handle case of nil document as well as case of nil focus node.
    801 
    802         * kwq/WebCoreBridge.mm: Tweak whitespace.
    803 
    804 2002-11-20  Darin Adler  <darin (a] apple.com>
    805 
    806 	- fixed 3107383 -- clicking link on cnet.com leads to assertion failure
    807 
    808 	When we removed a frame, we were leaving behind an empty WebView. Yuck.
    809 
    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.
    814         * kwq/KWQWidget.mm:
    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.
    820 
    821 2002-11-20  Darin Adler  <darin (a] apple.com>
    822 
    823         * force-js-clean-timestamp: Again.
    824 
    825 2002-11-20  David Hyatt  <hyatt (a] apple.com>
    826 
    827 	Fix the mac.com line-breaking bug.  This was not a regression
    828 	but was present in Konq.
    829 	
    830         * khtml/rendering/bidi.cpp:
    831         (RenderFlow::findNextLineBreak):
    832 
    833 2002-11-20  Maciej Stachowiak  <mjs (a] apple.com>
    834 
    835         * force-js-clean-timestamp: Work around PB lameness yet again.
    836 
    837 2002-11-19  Darin Adler  <darin (a] apple.com>
    838 
    839         * force-js-clean-timestamp: Make other people's builds work.
    840 
    841 2002-11-19  David Hyatt  <hyatt (a] apple.com>
    842 
    843 	I screwed up the line breaking for inline replaced elements.
    844 	
    845         * khtml/rendering/render_flow.cpp:
    846         (RenderFlow::calcInlineMinMaxWidth):
    847 
    848 2002-11-19  Darin Adler  <darin (a] apple.com>
    849 
    850 	- another atomic identifier scrub pass; make the conversion to Identifier explicit
    851 
    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.
    856 
    857 2002-11-19  David Hyatt  <hyatt (a] apple.com>
    858 
    859 	Fix for 3049663.  Table cells don't grow to accommodate block
    860 	overflow.
    861 	
    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:
    870 
    871 2002-11-19  Darin Adler  <darin (a] apple.com>
    872 
    873 	- next step towards atomic identifiers; Identifier is no longer derived from UString
    874 
    875         * khtml/ecma/kjs_binding.cpp:
    876         (Identifier::string): Added.
    877         (Identifier::qstring): Added.
    878 
    879         * khtml/ecma/kjs_binding.h:
    880         * khtml/ecma/kjs_css.cpp:
    881         (jsNameToProp):
    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:
    905         (Plugins::get):
    906         (MimeTypes::get):
    907         (Plugin::get):
    908         * khtml/ecma/kjs_window.cpp:
    909         (WindowFunc::tryCall):
    910         (FrameArray::get):
    911 	Use lengthPropertyName instead of "length" for better speed.
    912 
    913 2002-11-19  David Hyatt  <hyatt (a] apple.com>
    914 
    915 	Fix backgrounds not painting in deployment builds.
    916         * khtml/rendering/render_box.cpp:
    917         (RenderBox::paintBackground):
    918 
    919 2002-11-19  Darin Adler  <darin (a] apple.com>
    920 
    921 	- a first step towards atomic identifiers in JavaScript
    922 
    923 	Most places that work with identifiers now use Identifier
    924 	instead of UString.
    925 
    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:
    946 
    947 2002-11-18  Darin Adler  <darin (a] apple.com>
    948 
    949         * force-js-clean-timestamp: Another Object change.
    950 
    951 2002-11-18  David Hyatt  <hyatt (a] apple.com>
    952 
    953 	Implement phased painting to correct the paint order of blocks,
    954 	floats, and inlines.
    955 	
    956         * khtml/rendering/render_body.cpp:
    957         (RenderBody::paintBoxDecorations):
    958         * khtml/rendering/render_body.h:
    959         * khtml/rendering/render_box.cpp:
    960         (RenderBox::paint):
    961         (RenderBox::paintBoxDecorations):
    962         (RenderBox::paintBackground):
    963         * khtml/rendering/render_box.h:
    964         * khtml/rendering/render_br.h:
    965         * khtml/rendering/render_flow.cpp:
    966         (RenderFlow::paint):
    967         (RenderFlow::paintObject):
    968         (RenderFlow::paintFloats):
    969         (RenderFlow::addChild):
    970         * khtml/rendering/render_flow.h:
    971         * khtml/rendering/render_html.cpp:
    972         (RenderHtml::setStyle):
    973         (RenderHtml::paint):
    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:
   1021 
   1022 2002-11-18  Darin Adler  <darin (a] apple.com>
   1023 
   1024         * force-js-clean-timestamp: I changed the size of ObjectImp.
   1025 
   1026 2002-11-18  David Hyatt  <hyatt (a] apple.com>
   1027 
   1028 	Fix crazyapplerumors.com.  I had the logic backwards. CSS
   1029 	padding beats cellpadding.
   1030 	
   1031         * khtml/rendering/render_table.cpp:
   1032         (RenderTableCell::paddingTop):
   1033         (RenderTableCell::paddingBottom):
   1034         (RenderTableCell::paddingLeft):
   1035         (RenderTableCell::paddingRight):
   1036 
   1037 2002-11-18  David Hyatt  <hyatt (a] apple.com>
   1038 
   1039 	Fix crash on espn.com.
   1040 	
   1041         * khtml/rendering/render_object.cpp:
   1042         (RenderObject::setLayouted):
   1043 
   1044 2002-11-18  David Hyatt  <hyatt (a] apple.com>
   1045 
   1046 	Fix my <konqblock> regression on ign.com.
   1047 	
   1048         * khtml/html/htmlparser.cpp:
   1049         (KHTMLParser::insertNode):
   1050 
   1051 2002-11-18  Maciej Stachowiak  <mjs (a] apple.com>
   1052 
   1053         * force-js-clean-timestamp: Rebuild for JSC changes.
   1054 
   1055 2002-11-18  Darin Adler  <darin (a] apple.com>
   1056 
   1057         * force-js-clean-timestamp: Touch files to make the build work.
   1058 
   1059 2002-11-18  Richard Williamson   <rjw (a] apple.com>
   1060 
   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.
   1064 
   1065         * khtml/css/cssstyleselector.cpp:
   1066 
   1067 2002-11-18  David Hyatt  <hyatt (a] apple.com>
   1068 
   1069 	Fix render_body's repaint method.
   1070 	
   1071         * khtml/rendering/render_body.cpp:
   1072         (RenderBody::repaint):
   1073         * khtml/rendering/render_body.h:
   1074 
   1075 2002-11-18  Maciej Stachowiak  <mjs (a] apple.com>
   1076 
   1077 	- fixed 3103711 - Alexander does not complete JavaScript iBench
   1078 	
   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.
   1083 
   1084 2002-11-18  David Hyatt  <hyatt (a] apple.com>
   1085 
   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
   1092 	page to repaint).
   1093 
   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.
   1097 	
   1098         * khtml/rendering/render_style.cpp:
   1099         (RenderStyle::diff):
   1100 
   1101 2002-11-17  David Hyatt  <hyatt (a] apple.com>
   1102 
   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).
   1109 	
   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):
   1117 
   1118 2002-11-17  David Hyatt  <hyatt (a] apple.com>
   1119 
   1120 	More refinements to immediate painting code.  Still doesn't
   1121 	fix the scrollbar problem though. :(
   1122 	
   1123         * khtml/html/html_documentimpl.cpp:
   1124         (HTMLDocumentImpl::close):
   1125         * khtml/khtmlview.cpp:
   1126         (KHTMLView::init):
   1127         (KHTMLView::timerEvent):
   1128 
   1129 2002-11-17  David Hyatt  <hyatt (a] apple.com>
   1130 
   1131 	Make immediate repainting of the root element more robust.
   1132 	
   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):
   1140 
   1141 2002-11-17  Darin Adler  <darin (a] apple.com>
   1142 
   1143 	- moved all NSURL and CFURL use out of WebCore
   1144 
   1145         * kwq/KWQKURL.h: Remove getNSURL() and getNSURLFromString().
   1146         * kwq/KWQKURL.mm: Ditto.
   1147 
   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.
   1169         * kwq/KWQLoader.mm:
   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
   1177 	are now strings.
   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.
   1183 
   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.
   1187 
   1188 2002-11-17  David Hyatt  <hyatt (a] apple.com>
   1189 
   1190 	Add support for specifying whether repaint should be immediate or
   1191 	not.  Default to async for now to maintain current behavior.
   1192 
   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).
   1198 	
   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:
   1222 
   1223 2002-11-17  Maciej Stachowiak  <mjs (a] apple.com>
   1224 
   1225 	- fixed 2949193 - implement onKeyDown, onKeyPress, and onKeyUp event handlers
   1226 	
   1227         * khtml/html/html_formimpl.cpp:
   1228         (HTMLGenericFormElementImpl::defaultEventHandler):
   1229         * kwq/KWQEvent.h:
   1230         * kwq/KWQEvent.mm:
   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
   1248 	KWQ part.
   1249 	* kwq/WebCoreBridgePrivate.h: Added.
   1250         * WebCore.pbproj/project.pbxproj: Added new file.
   1251 
   1252 2002-11-17  David Hyatt  <hyatt (a] apple.com>
   1253 
   1254 	Don't discard linefeeds after elements with no close tag
   1255 	(e.g., <img> or <input>).
   1256 	
   1257         * khtml/html/htmltokenizer.cpp:
   1258         (HTMLTokenizer::parseTag):
   1259 
   1260 2002-11-17  David Hyatt  <hyatt (a] apple.com>
   1261 
   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).
   1266 	
   1267         * khtml/css/html4.css:
   1268 
   1269 2002-11-17  David Hyatt  <hyatt (a] apple.com>
   1270 
   1271 	Fix for 3038168.  Duh.  Remember to be case-insensitive when
   1272 	checking the type of the <style> attribute.
   1273 	
   1274         * khtml/html/html_headimpl.cpp:
   1275         (HTMLStyleElementImpl::parseAttribute):
   1276 
   1277 2002-11-17  David Hyatt  <hyatt (a] apple.com>
   1278 
   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
   1283 	too early.
   1284 
   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.
   1291 
   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.
   1296 	
   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):
   1307 
   1308 2002-11-16  David Hyatt  <hyatt (a] apple.com>
   1309 
   1310 	Fix for 3078240, <pre> should not establish its own text-align,
   1311 	but should instead inherit from its parent.
   1312 	
   1313         * khtml/css/html4.css:
   1314 
   1315 2002-11-16  David Hyatt  <hyatt (a] apple.com>
   1316 
   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).
   1320 
   1321 	This should fix a bunch of bugs, e.g., especially if you ever
   1322 	did the following: 
   1323 	<td><pre><span>foo</span>
   1324 	   more text after the newline</pre></td>
   1325 
   1326 	The new code now properly handles building up the correct min/max
   1327 	width for the <pre>.
   1328 
   1329 	If anyone recalls seeing any bugs like this, let me know and
   1330 	I can close them.
   1331 	
   1332         * khtml/rendering/render_flow.cpp:
   1333         (RenderFlow::calcInlineMinMaxWidth):
   1334         * khtml/rendering/render_text.cpp:
   1335         (RenderText::trimmedMinMaxWidth):
   1336         (RenderText::calcMinMaxWidth):
   1337 
   1338 2002-11-16  David Hyatt  <hyatt (a] apple.com>
   1339 
   1340 	Fix more edge cases with whitespace handling that caused some
   1341 	lines to be too long (and unselectable).
   1342 	
   1343         * khtml/rendering/bidi.cpp:
   1344         (appendRunsForObject):
   1345 
   1346 2002-11-16  David Hyatt  <hyatt (a] apple.com>
   1347 
   1348 	Make <caption> error-handling more robust.
   1349 
   1350 	Specifically, handle <tr> and <td> misplaced inside
   1351 	<caption>s and still make them be part of the table.
   1352 	
   1353         * khtml/html/htmlparser.cpp:
   1354         (KHTMLParser::insertNode):
   1355 
   1356 2002-11-16  David Hyatt  <hyatt (a] apple.com>
   1357 
   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.
   1361 
   1362 	Fixes www.eflightpacks.com (the top frame was shoved down because
   1363 	the <p> margin didn't collapse away).
   1364 	
   1365         * khtml/rendering/render_flow.cpp:
   1366         (RenderFlow::layoutBlockChildren):
   1367 
   1368 2002-11-16  David Hyatt  <hyatt (a] apple.com>
   1369 
   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>).
   1373 
   1374 	This fixes bug 3063699.
   1375 	
   1376         * khtml/html/htmlparser.cpp:
   1377         (KHTMLParser::processCloseTag):
   1378         (KHTMLParser::popBlock):
   1379 
   1380 2002-11-15  David Hyatt  <hyatt (a] apple.com>
   1381 
   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
   1385 	be reflowed.
   1386 
   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).
   1392 	
   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):
   1405 
   1406 2002-11-15  David Hyatt  <hyatt (a] apple.com>
   1407 
   1408 	Fix the problem where the last lines of paragrpahs were getting
   1409 	justified incorrectly.
   1410 	
   1411         * khtml/rendering/bidi.cpp:
   1412         (RenderFlow::findNextLineBreak):
   1413 
   1414 2002-11-15  David Hyatt  <hyatt (a] apple.com>
   1415 
   1416 	Fix bustage with <nobr> tags.  Inline nowrap elements were
   1417 	breaking on images when they shouldn't have.
   1418 	
   1419         * khtml/rendering/render_flow.cpp:
   1420         (RenderFlow::calcInlineMinMaxWidth):
   1421 
   1422 2002-11-15  Ken Kocienda  <kocienda (a] apple.com>
   1423 
   1424 	Fix for this bug:
   1425 
   1426 	Radar 3102708 (REGRESSION: assertion failure backing up to page)
   1427 
   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).
   1432 
   1433         * kwq/KWQKURL.h:
   1434         * kwq/KWQKURL.mm:
   1435         (KURL::getNSURL): Now calls through to KURL::getNSURLFromString
   1436         (KURL::encode_string)
   1437         (KURL::getNSURLFromString): New function to handle NSURL creation
   1438         * kwq/KWQLoader.mm:
   1439         (KWQCheckCacheObjectStatus)
   1440 
   1441 2002-11-15  David Hyatt  <hyatt (a] apple.com>
   1442 
   1443 	Fix asserts in tables.
   1444 	
   1445         * khtml/rendering/render_table.cpp:
   1446         (RenderTableRow::layout):
   1447 
   1448 2002-11-15  David Hyatt  <hyatt (a] apple.com>
   1449 
   1450 	Fix for whitespace regressions that caused text overlapping
   1451 	and text spilling.
   1452 	
   1453         * khtml/rendering/bidi.cpp:
   1454         (appendRunsForObject):
   1455 
   1456 2002-11-15  David Hyatt  <hyatt (a] apple.com>
   1457 
   1458 	Fix newlines getting stripped out of textareas by not making
   1459 	rendertext objects for children of textareas.
   1460 	
   1461         * khtml/rendering/render_form.h:
   1462         * khtml/rendering/render_object.h:
   1463         * khtml/xml/dom_textimpl.cpp:
   1464         (TextImpl::attach):
   1465 
   1466 2002-11-15  David Hyatt  <hyatt (a] apple.com>
   1467 
   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.
   1473 
   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.
   1478 
   1479 	This collection of hacks makes travelocity render correctly on the
   1480 	PLT.
   1481 	
   1482         * khtml/css/html4.css:
   1483         * khtml/html/dtd.cpp:
   1484         (DOM::checkChild):
   1485         * khtml/html/html_tableimpl.cpp:
   1486         (HTMLTableElementImpl::addChild):
   1487         * khtml/html/htmlparser.cpp:
   1488         (KHTMLParser::parseToken):
   1489         (KHTMLParser::insertNode):
   1490 
   1491 2002-11-15  David Hyatt  <hyatt (a] apple.com>
   1492 
   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.
   1496 	
   1497         * khtml/rendering/render_html.cpp:
   1498         (RenderHtml::printBoxDecorations):
   1499 
   1500 2002-11-15  Darin Adler  <darin (a] apple.com>
   1501 
   1502         * kwq/KWQWindowWidget.mm: (KWQWindowWidget::setFrameGeometry):
   1503 	Oops. Make that display:YES.
   1504 
   1505 2002-11-15  Darin Adler  <darin (a] apple.com>
   1506 
   1507 	- fixed 3090219 -- Window jumps up and down when loading nikon page
   1508 
   1509         * kwq/KWQWindowWidget.mm: (KWQWindowWidget::setFrameGeometry):
   1510 	Don't pass display:NO when resizing the window.
   1511 
   1512 2002-11-15  Ken Kocienda  <kocienda (a] apple.com>
   1513 
   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.
   1519 
   1520 	This enables me to fix this bug:
   1521 	Radar 3050437 (Clicking link leads to page with garbled content)
   1522 
   1523 	Note, however, that my fix for 3050437 relies on this bug remaining unfixed:
   1524 
   1525 	Radar 3102332 (Square bracket characters "sneak through" CFURL illegal character checks)
   1526 
   1527         * kwq/KWQKURL.mm:
   1528         (KURL::getNSURL)
   1529 
   1530 2002-11-15  Darin Adler  <darin (a] apple.com>
   1531 
   1532 	- fixed 3027460 -- text areas don't have focus rectangles
   1533 	- fixed 2937204 -- text areas have solid black borders
   1534 
   1535         * kwq/KWQSignal.mm: (KWQSignal::disconnect):
   1536 	Add a special case so we don't hear about finishedParsing all the time.
   1537 
   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.
   1549 
   1550         * WebCore.pbproj/project.pbxproj: PB is a cruel master.
   1551 
   1552 2002-11-15  Maciej Stachowiak  <mjs (a] apple.com>
   1553 
   1554         * khtml/html/html_formimpl.cpp:
   1555         (HTMLInputElementImpl::attach): Removed a stray printf.
   1556 
   1557 2002-11-14  Darin Adler  <darin (a] apple.com>
   1558 
   1559 	- fixed most of the problems with OPTGROUP
   1560 
   1561         * khtml/html/htmlparser.cpp: (KHTMLParser::insertNode):
   1562 	Make OPTGROUPs pop out of other unclosed OPTGROUPs, not just out of options.
   1563 
   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,
   1568 	with bold font.
   1569         (-[KWQListBoxTableViewDelegate tableView:shouldSelectRow:]): Return YES only
   1570 	for the plain strings, that way you can't select the group labels.
   1571 
   1572         * WebCore.pbproj/project.pbxproj: Let PB do its thing.
   1573 
   1574 2002-11-14  David Hyatt  <hyatt (a] apple.com>
   1575 
   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.
   1579 	
   1580         * khtml/html/html_formimpl.cpp:
   1581         (HTMLInputElementImpl::parseAttribute):
   1582         (HTMLInputElementImpl::attach):
   1583 
   1584 2002-11-14  David Hyatt  <hyatt (a] apple.com>
   1585 
   1586 	Move text measurement and layout beyond onload.  This
   1587 	shoudl speed up i-bench substantially and morrison's
   1588 	PLT test slightly.
   1589 
   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.
   1593 	
   1594         * khtml/html/dtd.cpp:
   1595         (DOM::checkChild):
   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):
   1602 
   1603 2002-11-14  Richard Williamson  <rjw (a] apple.com>
   1604 
   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.
   1609         
   1610         * khtml/khtml_part.cpp:
   1611         (lastSlaveAt):
   1612 
   1613 2002-11-14  Darin Adler  <darin (a] apple.com>
   1614 
   1615 	- fixed 3095854 -- small select boxes get no scrollbar
   1616 
   1617         * kwq/KWQListBox.mm: (QListBox::sizeForNumberOfLines):
   1618 	Always use a minimum of 4 lines.
   1619 
   1620 === Alexander-32 ===
   1621 
   1622 2002-11-14  Darin Adler  <darin (a] apple.com>
   1623 
   1624 	- fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing
   1625 
   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.
   1629 
   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.
   1634 
   1635         * kwq/WebCoreBridge.h: Add reload parameter.
   1636         * kwq/WebCoreBridge.mm: (-[WebCoreBridge openURL:reload:headers:]): Stuff the reload
   1637 	parameter into the URLArgs.
   1638 
   1639 2002-11-14  Darin Adler  <darin (a] apple.com>
   1640 
   1641 	- fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com
   1642 
   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.
   1647 
   1648         * WebCore.pbproj/project.pbxproj: Oh, that Project Builder.
   1649 
   1650 2002-11-13  Darin Adler  <darin (a] apple.com>
   1651 
   1652 	- fixed 3100895 -- REGRESSION: Crash (was assertion) on http://www.w3.org/Style/CSS/
   1653 
   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.
   1658 
   1659 2002-11-13  Darin Adler  <darin (a] apple.com>
   1660 
   1661 	- fixed another crash on http://www.w3.org/Style/CSS/, but still not done
   1662 
   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.
   1676 
   1677         * khtml/misc/makeattrs: Fixed handling of failure case.
   1678         * khtml/misc/maketags: Ditto.
   1679 
   1680         * WebCore.pbproj/project.pbxproj: Project Builder wanted to touch this.
   1681 
   1682 2002-11-13  Darin Adler  <darin (a] apple.com>
   1683 
   1684 	- fixed 3100895 -- REGRESSION: Assertion on http://www.w3.org/Style/CSS/
   1685 
   1686 	A few arena-related fixes.
   1687 
   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.
   1694 
   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.
   1698 
   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.
   1702 
   1703 2002-11-13  Darin Adler  <darin (a] apple.com>
   1704 
   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.
   1708 
   1709         * WebCore.pbproj/project.pbxproj: Tweak.
   1710 
   1711 2002-11-13  Darin Adler  <darin (a] apple.com>
   1712 
   1713 	- fixed 3083982 -- Logging into AOL gives null view
   1714 
   1715 	Turns out AOL was using a refresh header, which we were not supporting.
   1716 
   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.
   1722 
   1723         * kwq/KWQKHTMLPart.h: Declare addMetaData.
   1724         * kwq/KWQKHTMLPart.mm:
   1725         (KWQKHTMLPart::slotData): Call receivedFirstData instead of doing the same
   1726 	thing ourselves.
   1727         (KWQKHTMLPart::addMetaData): Added. Puts metadata into the job.
   1728 
   1729         * kwq/KWQKHTMLPartBrowserExtension.mm:
   1730         (KHTMLPartBrowserExtension::createNewWindow): Fix bug where this was calling
   1731 	openURL: but meant to call loadURL:.
   1732 
   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.
   1737 
   1738 	- other things
   1739 
   1740         * kwq/KWQListImpl.mm: (KWQListImpl::~KWQListImpl): I overlooked something
   1741 	while doing my "bug fix" in here a while back. Change an assignment statement
   1742 	to an assert.
   1743 
   1744 2002-11-13  David Hyatt  <hyatt (a] apple.com>
   1745 
   1746 	Fix for floats. Force relayout if collapsing margins
   1747 	have to adjust the position of an object.
   1748 	
   1749         * khtml/rendering/render_flow.cpp:
   1750         (RenderFlow::layoutBlockChildren):
   1751 
   1752 2002-11-13  David Hyatt  <hyatt (a] apple.com>
   1753 
   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).
   1757 	
   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:
   1782 
   1783 2002-11-13  Ken Kocienda  <kocienda (a] apple.com>
   1784 
   1785 	Bump WebCore cache to 4 MB (was 1 MB).
   1786 
   1787         * khtml/misc/loader.cpp
   1788 
   1789 2002-11-13  Maciej Stachowiak  <mjs (a] apple.com>
   1790 
   1791 	- fixed 3050447 - Policy handlers have no way of telling client
   1792 	that the proposed navigation is a form post
   1793 	
   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
   1802 	they are not POSTs.
   1803         (KWQKHTMLPart::urlSelected): Adjusted for bridge API change.
   1804         * kwq/WebCoreBridge.h: Add triggeringEvent: parameter to postURL:
   1805 	and isFormSubmission: parameter to loadURL:.
   1806 
   1807 2002-11-12  David Hyatt  <hyatt (a] apple.com>
   1808 
   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
   1811 	the whole canvas.
   1812 	
   1813         * khtml/rendering/render_box.cpp:
   1814         (RenderBox::printBackground):
   1815         * khtml/rendering/render_html.cpp:
   1816         (RenderHtml::printBoxDecorations):
   1817 
   1818 2002-11-12  David Hyatt  <hyatt (a] apple.com>
   1819 
   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>.
   1823 	
   1824         * khtml/rendering/render_flow.cpp:
   1825         (RenderFlow::calcInlineMinMaxWidth):
   1826 
   1827 2002-11-12  David Hyatt  <hyatt (a] apple.com>
   1828 
   1829 	Fix for 2953367, padding is incorrectly inherited into table cells
   1830 	and also incorrectly overrides cellpadding on the table itself.
   1831 	Fixes dailyf1.com.
   1832 	
   1833         * khtml/css/html4.css:
   1834         * khtml/html/html_tableimpl.cpp:
   1835         (HTMLTableElementImpl::parseAttribute):
   1836         (HTMLTableCellElementImpl::init):
   1837         * khtml/html/html_tableimpl.h:
   1838 
   1839 2002-11-12  David Hyatt  <hyatt (a] apple.com>
   1840 
   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
   1844 	this change.
   1845 	
   1846         * khtml/khtml_part.cpp:
   1847         (KHTMLPart::begin):
   1848 
   1849 2002-11-12  David Hyatt  <hyatt (a] apple.com>
   1850 
   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).
   1855 	
   1856         * khtml/xml/dom_docimpl.cpp:
   1857         (DocumentImpl::recalcStyleSelector):
   1858 
   1859 2002-11-12  Richard Williamson  <rjw (a] apple.com>
   1860 
   1861         Oops, removed debugging.
   1862         
   1863         * khtml/rendering/font.cpp:
   1864         (Font::drawText):
   1865 
   1866 2002-11-12  Richard Williamson  <rjw (a] apple.com>
   1867 
   1868         Implemented letter-spacing and word-spacing CSS properties.
   1869         
   1870         * khtml/rendering/font.cpp:
   1871         (Font::drawText):
   1872         (Font::floatWidth):
   1873         (Font::floatCharacterWidths):
   1874         * kwq/KWQFontMetrics.h:
   1875         * kwq/KWQFontMetrics.mm:
   1876         (QFontMetrics::width):
   1877         (QFontMetrics::floatWidth):
   1878         (QFontMetrics::floatCharacterWidths):
   1879         * kwq/KWQPainter.h:
   1880         * kwq/KWQPainter.mm:
   1881         (QPainter::drawText):
   1882         * kwq/WebCoreTextRenderer.h:
   1883 
   1884 2002-11-12  David Hyatt  <hyatt (a] apple.com>
   1885 
   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.
   1889 	
   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):
   1902 
   1903 2002-11-12  Darin Adler  <darin (a] apple.com>
   1904 
   1905         * kwq/KWQCursor.mm: (QCursor::QCursor): Use nil instead of [NSCursor arrowCursor].
   1906 	This will probably fix the performance regression.
   1907 
   1908 2002-11-12  Darin Adler  <darin (a] apple.com>
   1909 
   1910 	- fixed 3080250 -- Hands-free crash at wired.com in
   1911 	KHTMLPart::slotChildStarted
   1912 
   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.
   1918 
   1919         * kwq/KWQSlot.mm: Tweaks.
   1920 
   1921 2002-11-12  David Hyatt  <hyatt (a] apple.com>
   1922 
   1923 	This patch lands a rewrite of whitespace-handling in the
   1924 	layout engine and adds support for the CSS2 white-space
   1925 	property.  
   1926 
   1927 	It also includes a rewrite of inlines' min/max width 
   1928 	calculations (for both flow inlines and raw text).
   1929 
   1930 	A problem with <form> margins has been fixed (this is a
   1931 	regression I caused with my collapsing margin checkin).
   1932 
   1933         * WebCore.pbproj/project.pbxproj:
   1934         * khtml/css/html4.css:
   1935         * khtml/html/dtd.cpp:
   1936         (DOM::checkChild):
   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.
   1968         (CeilingLog2):
   1969         (InitArenaPool):
   1970         (ArenaAllocate):
   1971         (ArenaGrow):
   1972         (FreeArenaList):
   1973         (ArenaRelease):
   1974         (FreeArenaPool):
   1975         (FinishArenaPool):
   1976         (ArenaFinish):
   1977         * khtml/misc/arena.h: Added.
   1978         * khtml/rendering/bidi.cpp:
   1979         (BidiIterator::detach):
   1980         (throw):
   1981         (BidiIterator::operator delete):
   1982         (appendRunsForObject):
   1983         (appendRun):
   1984         (RenderFlow::bidiReorderLine):
   1985         (deleteMidpoints):
   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):
   2019         (throw):
   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:
   2033         (throw):
   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):
   2052         (throw):
   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:
   2070         (NodeImpl::detach):
   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):
   2078         (TextImpl::attach):
   2079         * khtml/xml/dom_textimpl.h:
   2080 
   2081 2002-11-12  Darin Adler  <darin (a] apple.com>
   2082 
   2083 	- fixed 3094819 -- Crash in -[KWQObjectTimerTarget timerFired]
   2084 
   2085         * kwq/KWQObject.mm: (QObject::~QObject): Call the _destroyed signal.
   2086         (QObject::killTimers): Simplify the code a bit using makeObjectsPerformSelector:.
   2087 
   2088 2002-11-12  Darin Adler  <darin (a] apple.com>
   2089 
   2090 	- fixed 3079499 -- blank page at http://www.sonyericsson.com/T68i/
   2091 
   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.
   2098 
   2099 	- fixed double calls to openURL I noticed
   2100 
   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.
   2104 
   2105         * kwq/KWQKHTMLPart.mm: Tweaks.
   2106 
   2107 2002-11-12  Darin Adler  <darin (a] apple.com>
   2108 
   2109 	- fixed 3083043 -- Alex doesn't decode % sequences in javascript: URLs
   2110 
   2111 	Some places here did KURL::decode_string, but others didn't.
   2112 
   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.
   2119 
   2120 2002-11-11  Darin Adler  <darin (a] apple.com>
   2121 
   2122         * kwq/KWQWidget.mm: (QWidget::setCursor): Remove printf I left
   2123 	in by accident.
   2124 
   2125 2002-11-11  Darin Adler  <darin (a] apple.com>
   2126 
   2127 	- tighten up cursor handling a bit more
   2128 
   2129         * kwq/KWQWidget.mm:
   2130         (QWidget::setCursor): Use setDocumentCursor: instead of our own protocol.
   2131         (QWidget::cursor): Use documentCursor instead of storing our own cursor.
   2132 
   2133         * kwq/WebCoreFrameView.h: Remove setCursor: method.
   2134 
   2135 2002-11-11  Darin Adler  <darin (a] apple.com>
   2136 
   2137 	- fixed 3084704 -- crash in HTMLTokenizer on page with JavaScript
   2138 	HTMLDocument::Close inside a <script>
   2139 
   2140 	I think it's going to work this time. The key was to hook up the
   2141 	KHTML submitFormAgain machinery.
   2142 
   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().
   2148 
   2149         * kwq/KWQSlot.mm:
   2150         (KWQSlot::KWQSlot): Add support for the submitFormAgain slot.
   2151         (KWQSlot::call): Ditto.
   2152 
   2153 2002-11-11  Darin Adler  <darin (a] apple.com>
   2154 
   2155 	- fixed 3092421 -- javascript: URL that opens window crashes Alex if typed into empty window
   2156 
   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
   2163 	_ownsView flag.
   2164         (KWQKHTMLPart::createDummyDocument): Create a dummy view too.
   2165 
   2166         * kwq/KWQDummyView.h: Added.
   2167         * kwq/KWQDummyView.m: Added.
   2168         * WebCore.pbproj/project.pbxproj: Added KWQDummyView.
   2169 
   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.
   2178 
   2179 2002-11-11  Trey Matteson  <trey (a] apple.com>
   2180 
   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:
   2187 
   2188 2002-11-11  Darin Adler  <darin (a] apple.com>
   2189 
   2190 	- fixed 3097253 -- text tagged <small> inside <h1> is too small
   2191 
   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".
   2195 
   2196 2002-11-11  Darin Adler  <darin (a] apple.com>
   2197 
   2198         * kwq/WebCoreBridge.h: Remove unused modifierTrackingEnabled method.
   2199 
   2200 2002-11-08  Maciej Stachowiak  <mjs (a] apple.com>
   2201 
   2202 	- fixed 3096451 - REGRESSION: clicking on link to open window only
   2203 	works when pop-up suppression is off
   2204 	
   2205         * khtml/ecma/kjs_binding.cpp:
   2206         (ScriptInterpreter::ScriptInterpreter): Initialize m_timerCallback
   2207 	to false.
   2208 
   2209 b2002-11-08  Darin Adler  <darin (a] apple.com>
   2210 
   2211         * kwq/KWQComboBox.mm: Bump fudge factor up one pixel. You could see
   2212 	it was wrong with strings like "0".
   2213 
   2214 2002-11-08  Darin Adler  <darin (a] apple.com>
   2215 
   2216 	- fixed 3090452 -- REGRESSION: orbitz Box extends way over margins
   2217 
   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.
   2225 
   2226 2002-11-08  Richard Williamson   <rjw (a] apple.com>
   2227 
   2228         Cleanup of fix to 3083281.  Never call stopAnimating from
   2229         QPixmap's destructor.  With the fix it wouldn't have been
   2230         called anyway.
   2231         
   2232         * kwq/KWQPixmap.mm:
   2233         (QPixmap::~QPixmap):
   2234 
   2235 2002-11-08  Darin Adler  <darin (a] apple.com>
   2236 
   2237         * kwq/WebCoreBridge.mm: (attributedString): Remove some dead code.
   2238 
   2239 2002-11-07  Darin Adler  <darin (a] apple.com>
   2240 
   2241         * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::slotData):
   2242 	Add an assert in the hopes of catching bug 3084704 a little earlier.
   2243 
   2244 2002-11-07  Richard Williamson  <rjw (a] apple.com>
   2245 
   2246         Don't stop animating unless we're the last referee. (3083281)
   2247         
   2248         * kwq/KWQPixmap.mm:
   2249         (QPixmap::~QPixmap):
   2250 
   2251 === Alexander-31 ===
   2252 
   2253 2002-11-06  Richard Williamson  <rjw (a] apple.com>
   2254 
   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.
   2258         
   2259         * kwq/KWQChar.mm:
   2260         (QChar::isSpace):
   2261 
   2262 2002-11-05  Darin Adler  <darin (a] apple.com>
   2263 
   2264 	- fixed 3092722 -- assertion failed
   2265 
   2266         * kwq/KWQResourceLoader.mm: (-[KWQResourceLoader reportError]):
   2267 	Removed the assertion. It wasn't needed.
   2268 
   2269 2002-11-05  Darin Adler  <darin (a] apple.com>
   2270 
   2271 	- re-fixed 3070484 -- icon rollovers are very slow on Mac OS X website
   2272 
   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.
   2275 
   2276         * khtml/khtml_part.cpp:
   2277         (KHTMLPart::init):
   2278         (KHTMLPart::~KHTMLPart):
   2279         (KHTMLPart::slotLoaderRequestStarted):
   2280         (KHTMLPart::slotLoaderRequestDone):
   2281         * kwq/KWQSignal.h:
   2282         * kwq/KWQSignal.mm:
   2283         (KWQSignal::call):
   2284         * kwq/KWQSignalStubs.mm:
   2285         (Loader::requestDone):
   2286         (Loader::requestFailed):
   2287         (Loader::requestStarted):
   2288         * kwq/KWQSlot.h:
   2289         * kwq/KWQSlot.mm:
   2290         (KWQSlot::KWQSlot):
   2291         (KWQSlot::call):
   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.
   2294 
   2295 2002-11-05  Maciej Stachowiak  <mjs (a] apple.com>
   2296 
   2297 	- fixed 3027404 - pop-up ads not always suppressed
   2298 	
   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.
   2306 
   2307 2002-11-04  Richard Williamson  <rjw (a] apple.com>
   2308 
   2309         Changes to support cursive letter forms.
   2310         
   2311         * kwq/KWQChar.mm:
   2312         * kwq/WebCoreUnicode.h:
   2313 
   2314 2002-11-04  Darin Adler  <darin (a] apple.com>
   2315 
   2316 	- fixed 3091714 -- reproducible assert cachedObject->response
   2317 	in KWQCheckCacheObjectStatus
   2318 
   2319         * khtml/misc/loader.cpp: (Loader::slotFinished):
   2320 	For APPLE_CHANGES, don't finish the load if it's an error.
   2321 
   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.
   2330 
   2331         * khtml/khtml_part.cpp:
   2332         (KHTMLPart::init): Put the slotLoaderRequestStarted and
   2333 	slotLoaderRequestDone connect lines inside ifdefs.
   2334         (KHTMLPart::~KHTMLPart): Same for disconnect.
   2335 
   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.
   2343         * kwq/KWQSlot.mm:
   2344         (KWQSlot::KWQSlot): Ditto.
   2345         (KWQSlot::call): Ditto.
   2346 
   2347 2002-11-04  Maciej Stachowiak  <mjs (a] apple.com>
   2348 
   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.
   2352 	
   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:]):
   2365 
   2366 2002-11-03  Darin Adler  <darin (a] apple.com>
   2367 
   2368 	- fixed 3091300 -- "prelighting" on local page is still slow, despite recent bug fix
   2369 
   2370 	Turns out all updating would be slow if any resources on the page failed to load.
   2371 
   2372         * kwq/WebCoreResourceLoader.h: Add reportError, distinct from
   2373 	cancel and finish.
   2374         * kwq/KWQResourceLoader.mm: (-[KWQResourceLoader reportError]):
   2375 	Set the error boolean on the job and then call through to [finish].
   2376 
   2377 2002-11-03  Darin Adler  <darin (a] apple.com>
   2378 
   2379 	- fixed 3091275 -- can't type into Answer field in RealOne Player order form
   2380 
   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.
   2385 
   2386 2002-11-01  Darin Adler  <darin (a] apple.com>
   2387 
   2388 	- applied the same "subclass responsibility" pattern here as in
   2389 	some of the other WebCore classes
   2390 
   2391         * kwq/WebCoreImageRendererFactory.h: Move the subclass responsibility into a protocol.
   2392         * kwq/WebCoreImageRendererFactory.m: Remove now-unneeded stubs.
   2393 
   2394 2002-11-01  Richard Williamson   <rjw (a] apple.com>
   2395 
   2396         Removed old implementation.
   2397         
   2398         * kwq/KWQChar.mm:
   2399         (QChar::direction):
   2400         
   2401         Renamed JoiningCenter -> JoiningCausing.
   2402         
   2403         * kwq/WebCoreUnicode.h:
   2404 
   2405 2002-11-01  Darin Adler  <darin (a] apple.com>
   2406 
   2407 	- fixed 3062598 -- meta refresh of 0.1s fails
   2408 
   2409 	KHTML was using an integer for the delay.
   2410 
   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.
   2419 
   2420         * khtml/xml/dom_docimpl.cpp: (DocumentImpl::processHttpEquiv):
   2421 	Use a double when parsing meta refresh.
   2422 
   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.
   2425 
   2426 2002-11-01  Darin Adler  <darin (a] apple.com>
   2427 
   2428 	- fixed 3090249 -- random crash on page load
   2429 	- fixed 3090286 -- assert _job in KWQResourceLoader cancel
   2430 
   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.
   2434 
   2435 2002-10-31  Darin Adler  <darin (a] apple.com>
   2436 
   2437 	- fixed huge leak when doing page load test
   2438 
   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
   2444 	are deallocated.
   2445 
   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.
   2452 
   2453 2002-10-31  Richard Williamson  <rjw (a] apple.com>
   2454 
   2455         Turned on use of lookup tables.
   2456         
   2457         * kwq/KWQChar.mm:
   2458         (QChar::direction):
   2459         (QChar::mirrored):
   2460         (QChar::mirroredChar):
   2461 
   2462 2002-10-31  Maciej Stachowiak  <mjs (a] apple.com>
   2463 
   2464 	- fixed 3075803 - yahoo customize layout - delete, ordering of items doesn't work
   2465 	
   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
   2470 	are changed.
   2471 
   2472 === Alexander-30 ===
   2473 
   2474 2002-10-30  Maciej Stachowiak  <mjs (a] apple.com>
   2475 
   2476 	- fixed 3049853 - Javascript: setInterval incorrectly acts as single shot
   2477 	
   2478         * kwq/KWQObject.mm:
   2479         (QObject::startTimer): Set a recurring timer instead of
   2480 	single-shot, to match QObject semantics.
   2481 
   2482 2002-10-30  Richard Williamson  <rjw (a] apple.com>
   2483 
   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.
   2489         
   2490         * WebCore.exp:
   2491         * WebCore.pbproj/project.pbxproj:
   2492         * kwq/KWQChar.mm:
   2493         (QChar::direction):
   2494         * kwq/KWQString.h:
   2495         * kwq/WebCoreUnicode.cpp: Added.
   2496         * kwq/WebCoreUnicode.h: Added.
   2497 
   2498 2002-10-30  Darin Adler  <darin (a] apple.com>
   2499 
   2500 	- fixed crash when you open an empty window and just hit tab, tab, tab
   2501 
   2502         * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::nextKeyViewInFrame): Check for nil.
   2503 
   2504 2002-10-30  Darin Adler  <darin (a] apple.com>
   2505 
   2506 	- fixed 3083982 -- Logging into AOL gives null view, crash
   2507 
   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.
   2511 
   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
   2515 	job is deallocated.
   2516 
   2517         * kwq/KWQLoader.mm: (KWQServeRequest): Use KWQResourceLoader, now with a home in
   2518 	a separate file.
   2519 
   2520         * kwq/KWQResourceLoader.h: Added.
   2521         * kwq/KWQResourceLoader.mm: Added.
   2522         * WebCore.pbproj/project.pbxproj: Added KWQResourceLoader files.
   2523 
   2524 2002-10-30  Darin Adler  <darin (a] apple.com>
   2525 
   2526 	- fixed 3086564 -- REGRESSION: meta-refresh to the same page doesn't refresh
   2527 
   2528 	The key is to get args.reload passed through to the bridge.
   2529 
   2530         * kwq/WebCoreBridge.h: Add reload parameter to loadURL:.
   2531 
   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.
   2537         
   2538 	- fixed a memory problem with the use of NSBrowser in KWQListBox
   2539         - fixed 2863040 -- multiple default items in select list not selected
   2540 
   2541 	Switched to use NSTableView instead of NSBrowser. This should also create
   2542 	a measurable speedup due to other changes to this class.
   2543 
   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
   2559 	selection.
   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.
   2572 
   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.
   2577 
   2578 	- fixed 3067572 -- javascript: URLs typed into page address field or
   2579 	bookmarks don't work in empty window
   2580 
   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.
   2583 
   2584         * kwq/KWQKHTMLPart.h: Added createDummyDocument().
   2585         * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::createDummyDocument): Create an empty
   2586 	DOM document if there isn't one already.
   2587 
   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.
   2592 
   2593 	- other stuff
   2594 
   2595         * kwq/WebCoreBridge.mm: (-[WebCoreBridge DOMDocument]): Removed a stray printf.
   2596 
   2597         * kwq/KWQTextArea.mm: Tweaked code a little.
   2598 
   2599 2002-10-28  Darin Adler  <darin (a] apple.com>
   2600 
   2601         * khtml/khtml_part.cpp: (KHTMLPart::checkCompleted):
   2602 	Update so it handles nil for the view.
   2603 
   2604 2002-10-28  Darin Adler  <darin (a] apple.com>
   2605 
   2606 	- fixed 3070484 -- icon rollovers are very slow on Mac OS X website
   2607 
   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.
   2610 
   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.
   2616 
   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.
   2622 
   2623         * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::KWQKHTMLPart): Call Cache::init().
   2624 
   2625         * kwq/KWQLoader.h: Add a class KWQLoader, with three signals in it.
   2626         * kwq/KWQLoader.mm: (KWQLoader::KWQLoader): Initialize the three signals.
   2627 
   2628         * kwq/KWQSignalStubs.mm:
   2629         (Loader::requestDone): Emit the signal using KWQLoader.
   2630         (Loader::requestFailed): Ditto.
   2631         (Loader::requestStarted): Ditto.
   2632 
   2633         * kwq/KWQSlot.h: Add an overload for slots with loader and cached object
   2634 	parameters so we can handle the new slots.
   2635         * kwq/KWQSlot.mm:
   2636         (KWQSlot::KWQSlot): Added slotLoaderRequestDone and slotLoaderRequestStarted.
   2637         (KWQSlot::call): Added the new overload to handle those two signals.
   2638 
   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.
   2642 
   2643         * kwq/KWQObject.mm: (QObject::connect): Remove the special casing that
   2644 	prevents complaints about slotLoaderRequestDone and slotLoaderRequestStarted,
   2645 	since we support those now.
   2646 
   2647 2002-10-28  Darin Adler  <darin (a] apple.com>
   2648 
   2649 	- fixed storage leak of items in QListBox
   2650 
   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().
   2657 
   2658 2002-10-28  Chris Blumenberg  <cblu (a] apple.com>
   2659 
   2660 	Lowercase the text encoding name.
   2661 
   2662         * kwq/KWQCharsets.mm:
   2663         (KWQCFStringEncodingFromIANACharsetName):
   2664 
   2665 2002-10-28  Richard Williamson   <rjw (a] apple.com>
   2666     
   2667         Fixed 3086188 - REGRESSION: Justified text is broken
   2668         
   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.
   2674         
   2675         * kwq/KWQChar.mm:
   2676         (QChar::direction):
   2677 
   2678 2002-10-28  Chris Blumenberg  <cblu (a] apple.com>
   2679 
   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
   2682 
   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
   2687 
   2688 2002-10-28  Don Melton  <gramps (a] apple.com>
   2689 
   2690         * khtml/html/htmlparser.cpp:
   2691         (KHTMLParser::insertNode):
   2692         * khtml/html/htmltokenizer.cpp:
   2693         (HTMLTokenizer::write):
   2694 
   2695 	Backed our Dave's whitespace hack because it was adding newlines, i.e.
   2696 	vertical margins, to web pages all over.
   2697 
   2698 2002-10-28  Darin Adler  <darin (a] apple.com>
   2699 
   2700 	- fixed 3015800 -- bad URL error - unescaped # in URL
   2701 
   2702 	Actually this has to be fixed both here and in NSURLExtras.
   2703 
   2704         * kwq/KWQKURL.mm: Set the "BadChar" flag for "#" so we escape any
   2705 	"#" characters we see after the first one.
   2706 
   2707 2002-10-27  Darin Adler  <darin (a] apple.com>
   2708 
   2709 	- fixed 3058845 -- <input type=file> uses hard-coded width of 200
   2710 	pixels for filename
   2711 
   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:.
   2725 
   2726 2002-10-27  Don Melton  <gramps (a] apple.com>
   2727 
   2728         * khtml/ecma/kjs_navigator.cpp:
   2729         (Navigator::getValueProperty):
   2730 
   2731 	Tweaked AppName, Product, and Vendor logic.
   2732 
   2733 2002-10-27  Darin Adler  <darin (a] apple.com>
   2734 
   2735         * kwq/KWQLoader.mm: (KWQServeRequest): Add a missing "delete job" for one
   2736 	particular failure case.
   2737 
   2738 2002-10-26  Darin Adler  <darin (a] apple.com>
   2739 
   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
   2742 
   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.
   2745 
   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
   2763 	m_size directly.
   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.
   2769 
   2770         * kwq/KWQLineEdit.mm:
   2771         * kwq/KWQTextField.h:
   2772         * kwq/KWQTextField.mm:
   2773 	Renamed the Objective C class KWQNSTextField to KWQTextField.
   2774 
   2775 2002-10-26  Darin Adler  <darin (a] apple.com>
   2776 
   2777 	- removed forwarding headers that are not actually needed
   2778 
   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.
   2801 
   2802 2002-10-26  Darin Adler  <darin (a] apple.com>
   2803 
   2804 	- fixed a couple of files accidentally checked in with KWQQ names
   2805 
   2806         * ForwardingHeaders/qasyncio.h: Change names.
   2807         * ForwardingHeaders/qstylesheet.h: Ditto.
   2808         * WebCore.pbproj/project.pbxproj: Ditto.
   2809         * kwq/KWQMovie.h: Ditto.
   2810 
   2811 2002-10-26  Darin Adler  <darin (a] apple.com>
   2812 
   2813 	- changed to use #if APPLE_CHANGES and #if !APPLE_CHANGES consistently
   2814 
   2815 	We no longer do #ifdef APPLE_CHANGES or #ifndef APPLE_CHANGES.
   2816 
   2817         * lots of files
   2818 
   2819 2002-10-26  Darin Adler  <darin (a] apple.com>
   2820 
   2821         - changed naming scheme in KWQ for files like qstring.h
   2822 
   2823         Now use names like KWQString.h and a forwarding header called qstring.h.
   2824         
   2825         * tons of files
   2826 
   2827 2002-10-26  Darin Adler  <darin (a] apple.com>
   2828 
   2829 	- fixed 3068404 -- eliminate all user-visible messages from WebCore
   2830 
   2831         * khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): Use runJavaScriptPrompt
   2832 	function instead of the more generic QInputDialog.
   2833 
   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.
   2843 
   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.
   2848 
   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
   2851 	auto-detect.
   2852 
   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.
   2856 
   2857         * kwq/KWQKHTMLPartImpl.h: Added runJavaScriptPrompt.
   2858         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::runJavaScriptPrompt): Moved the code
   2859 	here that used to be in KWQInputDialog.
   2860 
   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.
   2871 
   2872         * kwq/WebCoreViewFactory.h: Add new API for above.
   2873 
   2874         * ForwardingHeaders/qinputdialog.h: Added empty file.
   2875 
   2876         * kwq/qt/qinputdialog.h: Removed.
   2877         * kwq/KWQInputDialog.mm: Removed.
   2878         * WebCore.pbproj/project.pbxproj: Removed QInputDialog files.
   2879 
   2880 2002-10-25  Darin Adler  <darin (a] apple.com>
   2881 
   2882 	Remove some user-visible strings. We can't have any strings that need
   2883 	localization in WebCore, given our translation strategy.
   2884 
   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.
   2895 
   2896         * ForwardingHeaders/kmessagebox.h: Added (empty file).
   2897 
   2898         * kwq/KWQKHTMLPartImpl.h: Added new runJavaScript functions.
   2899         * kwq/KWQKHTMLPartImpl.mm:
   2900         (KWQKHTMLPartImpl::runJavaScriptAlert): Added.
   2901         (KWQKHTMLPartImpl::runJavaScriptConfirm): Added.
   2902 
   2903         * kwq/WebCoreViewFactory.h: Added runJavaScriptAlertPanelWithMessage and
   2904 	runJavaScriptConfirmPanelWithMessage.
   2905 
   2906         * kwq/kdeui/kmessagebox.h: Removed.
   2907         * kwq/KWQKMessageBox.mm: Removed.
   2908         * WebCore.pbproj/project.pbxproj: Removed the KMessageBox files.
   2909 
   2910 2002-10-25  Richard Williamson   <rjw (a] apple.com>
   2911 
   2912         Removed debug logging.
   2913         
   2914         * khtml/rendering/font.cpp:
   2915         (Font::drawText):
   2916 
   2917 2002-10-25  Richard Williamson   <rjw (a] apple.com>
   2918 
   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.
   2922         
   2923         * khtml/rendering/font.cpp:
   2924         (Font::drawText):
   2925         * kwq/KWQChar.mm:
   2926         (QChar::direction):
   2927         * kwq/KWQPainter.mm:
   2928         (QPainter::drawText):
   2929         * kwq/WebCoreTextRenderer.h:
   2930         * kwq/qt/qpainter.h:
   2931 
   2932 2002-10-25  Chris Blumenberg  <cblu (a] apple.com>
   2933 
   2934 	Cleaned up the frame searching shenanigans. Things are much cleaner and clearer now.
   2935 
   2936         * kwq/KWQKHTMLPartBrowserExtension.mm:
   2937         (KHTMLPartBrowserExtension::createNewWindow): call findFrameNamed
   2938         * kwq/KWQKHTMLPartImpl.mm:
   2939         (KWQKHTMLPartImpl::bridgeForFrameName): call findOrCreateFramedNamed
   2940         * kwq/WebCoreBridge.h:
   2941 
   2942 2002-10-25  Maciej Stachowiak  <mjs (a] apple.com>
   2943 
   2944 	- fixed 3065638 - "undefined" output to screen on empty document.write()
   2945 	
   2946         * khtml/ecma/kjs_html.cpp:
   2947         (KJS::HTMLDocFunction::tryCall): Don;t assume there is at least
   2948 	one argument.
   2949 
   2950 2002-10-25  Maciej Stachowiak  <mjs (a] apple.com>
   2951 
   2952 	- fixed 3048031 - innerHTML is incorrectly null
   2953 	
   2954         * kwq/KWQString.mm:
   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.
   2960 
   2961 2002-10-24  Richard Williamson   <rjw (a] apple.com>
   2962 
   2963         Updated to reflect new calling parameter semantic of floatCharacterWidths(),
   2964         which now returns the entire array of widths up the last character requested.
   2965         
   2966         * khtml/rendering/render_text.cpp:
   2967         (TextSlave::checkSelectionPoint):
   2968 
   2969 2002-10-24  David Hyatt  <hyatt (a] apple.com>
   2970 
   2971 	<pre>, <xmp> and <plaintext> should all have a top margin of 1em.
   2972 	Fixes a bunch of sites that use <pre>.
   2973 	
   2974         * khtml/css/html4.css:
   2975 
   2976 2002-10-24  Chris Blumenberg  <cblu (a] apple.com>
   2977 
   2978 	Removed didAddSubview calls because that can easily be done in WebKit. Duh!
   2979 
   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:
   2987 
   2988 2002-10-24  Darin Adler  <darin (a] apple.com>
   2989 
   2990 	A step in the direction of making KWQ headers much nicer.
   2991 	Move all empty headers out of kwq, and into ForwardingHeaders.
   2992 
   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.
   3023 
   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.
   3050 
   3051         * WebCore.pbproj/project.pbxproj: Removed all the above headers from
   3052 	the project.
   3053 
   3054 2002-10-24  Darin Adler  <darin (a] apple.com>
   3055 
   3056         * ForwardingHeaders/private/qucomextra_p.h: Emptied this out.
   3057         * kwq/qt/private/qucomextra_p.h: Removed.
   3058 
   3059 2002-10-24  David Hyatt  <hyatt (a] apple.com>
   3060 
   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.
   3065 	
   3066         * khtml/html/html_documentimpl.cpp:
   3067         (HTMLDocumentImpl::close):
   3068 
   3069 === Alexander-29 ===
   3070 
   3071 2002-10-24  Chris Blumenberg  <cblu (a] apple.com>
   3072 
   3073 	Use "MIMEType" instead of "serviceType".
   3074 
   3075         * kwq/KWQKHTMLPartImpl.mm:
   3076         (KWQKHTMLPartImpl::createPart):
   3077         * kwq/WebCoreBridge.h:
   3078 
   3079 2002-10-24  Darin Adler  <darin (a] apple.com>
   3080 
   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.
   3084 
   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.
   3092 
   3093 2002-10-23  Chris Blumenberg  <cblu (a] apple.com>
   3094 
   3095 	WebKit now gets called when render_frame subviews are added.
   3096 
   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
   3102 
   3103 2002-10-23  Chris Blumenberg  <cblu (a] apple.com>
   3104 
   3105 	Change for plug-in package API changes.
   3106 
   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
   3111 
   3112 2002-10-23  Darin Adler  <darin (a] apple.com>
   3113 
   3114 	- finished up the job of moving the file button to WebKit
   3115 
   3116 	I did this mainly for localization reasons.
   3117 
   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.
   3136 
   3137         * kwq/KWQSlot.mm:
   3138         (KWQSlot::KWQSlot): Remove handling for RenderFileButton slotReturnPressed.
   3139         (KWQSlot::call): Ditto.
   3140 
   3141         * kwq/WebCoreViewFactory.h: Remove bestSize. Add setVisualFrame, visualFrame, and
   3142 	bestVisualFrameSize.
   3143 
   3144         * kwq/KWQInputDialog.mm: Tweaked includes. Long-term we want to use "", not <>.
   3145         * kwq/KWQKConfigBase.mm: Ditto.
   3146         * kwq/KWQKHTMLPartImpl.mm: Ditto.
   3147 
   3148 2002-10-23  Chris Blumenberg  <cblu (a] apple.com>
   3149 
   3150 	Call the arguments for plug-ins "attributes" everywhere.
   3151 
   3152         * kwq/KWQKHTMLPartImpl.mm:
   3153         (KWQKHTMLPartImpl::createPart):
   3154         * kwq/KWQKJavaAppletWidget.mm:
   3155         (KJavaAppletWidget::showApplet):
   3156         * kwq/WebCoreBridge.h:
   3157 
   3158 2002-10-23  Chris Blumenberg  <cblu (a] apple.com>
   3159 
   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. 
   3161 
   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
   3173 
   3174 2002-10-23  Darin Adler  <darin (a] apple.com>
   3175 
   3176 	- fixed 3080478 -- reproducible incomplete load on apple.com
   3177 
   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.
   3184 
   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.
   3188 
   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.
   3193 
   3194         * kwq/qt/qxml.h: Add more stubs.
   3195         * kwq/KWQxml.mm: Ditto.
   3196 
   3197         * kwq/WebCoreViewFactory.h: Add [WebCoreViewFactory fileButton], the
   3198 	WebCoreFileButton protocol, and WebCoreFileButtonFilenameChanged.
   3199         * kwq/WebCoreViewFactory.m: Add WebCoreFileButtonFilenameChanged.
   3200         * WebCore.exp: Export _WebCoreFileButtonFilenameChanged.
   3201 
   3202 2002-10-22  Maciej Stachowiak  <mjs (a] apple.com>
   3203 
   3204 	Forgot to check this in earlier:
   3205 
   3206 	- fixed 3077084 - debugging output when suppressing or allowing
   3207 	pop-ups
   3208 	
   3209         * khtml/ecma/kjs_window.cpp:
   3210         (WindowFunc::tryCall):
   3211         * kwq/KWQLogging.h:
   3212         * kwq/KWQLogging.m:
   3213 
   3214 2002-10-22  David Hyatt  <hyatt (a] apple.com>
   3215 
   3216 	Get XML files closer.  An XML doc is at least made.  No
   3217 	parsing works yet though.
   3218 	
   3219         * kwq/KWQKHTMLPartImpl.mm:
   3220         (KWQKHTMLPartImpl::setPolicyBaseURL):
   3221         * kwq/WebCoreBridge.h:
   3222         * kwq/WebCoreBridge.mm:
   3223         (-[WebCoreBridge setContentType:]):
   3224 
   3225 2002-10-22  Chris Blumenberg  <cblu (a] apple.com>
   3226 
   3227 	Fixed: 3023814 - contexual menus and dragging doesn't work for some images
   3228 
   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.
   3230 
   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
   3240 
   3241 2002-10-22  David Hyatt  <hyatt (a] apple.com>
   3242 
   3243 	Fix slashdot.  Make sure the KONQBLOCK hack just throws away
   3244 	margins at the tops and bottoms of kids.
   3245 	
   3246         * khtml/css/html4.css:
   3247         * khtml/rendering/render_flow.cpp:
   3248         (RenderFlow::layoutBlockChildren):
   3249 
   3250 2002-10-22  David Hyatt  <hyatt (a] apple.com>
   3251 
   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.
   3256 	
   3257         * khtml/rendering/render_flow.cpp:
   3258         (RenderFlow::layoutBlockChildren):
   3259 
   3260 2002-10-22  David Hyatt  <hyatt (a] apple.com>
   3261 
   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.
   3265 	
   3266         * khtml/rendering/render_flow.cpp:
   3267         (RenderFlow::layoutBlockChildren):
   3268 
   3269 2002-10-22  David Hyatt  <hyatt (a] apple.com>
   3270 
   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.
   3274 
   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.
   3278 	
   3279         * khtml/css/html4.css:
   3280         * khtml/rendering/render_flow.cpp:
   3281         (RenderFlow::layoutBlockChildren):
   3282         (RenderFlow::addChild):
   3283 
   3284 2002-10-22  David Hyatt  <hyatt (a] apple.com>
   3285 
   3286 	Fix a typo in my change to the h1 rule.
   3287 	
   3288         * khtml/css/html4.css:
   3289 
   3290 2002-10-22  David Hyatt  <hyatt (a] apple.com>
   3291 
   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.
   3296 
   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.
   3301 
   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
   3308 	with (sigh).
   3309 	
   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:
   3325 
   3326 2002-10-21  Darin Adler  <darin (a] apple.com>
   3327 
   3328         * kwq/KWQInputDialog.mm: (QInputDialog::getText): Call the view factory to do the
   3329 	heavy lifting.
   3330 
   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.
   3335 
   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.
   3339 
   3340 2002-10-21  David Hyatt  <hyatt (a] apple.com>
   3341 
   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.
   3345 	
   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:
   3360 
   3361 2002-10-21  Darin Adler  <darin (a] apple.com>
   3362 
   3363 	Remove closeEntireTree now that deferred close takes care of that case.
   3364 
   3365         * khtml/html/htmlparser.cpp: (KHTMLParser::startBody):
   3366         * khtml/rendering/render_object.h:
   3367 
   3368 2002-10-21  Darin Adler  <darin (a] apple.com>
   3369 
   3370 	- fixed 3075041 -- text larger/smaller increment too large when font-size specified as %
   3371 
   3372         * khtml/css/cssstyleselector.cpp: Don't apply the zoom factor to a font size that
   3373 	already has the zoom factor applied.
   3374 
   3375 2002-10-21  Darin Adler  <darin (a] apple.com>
   3376 
   3377         * khtml/khtmlview.cpp: (KHTMLView::clear): Default to fast scrolling.
   3378 	I'm pretty sure this was just backwards here.
   3379 
   3380 2002-10-21  David Hyatt  <hyatt (a] apple.com>
   3381 
   3382 	DLs are supposed to have margins.
   3383 	
   3384         * khtml/css/html4.css:
   3385 
   3386 2002-10-21  David Hyatt  <hyatt (a] apple.com>
   3387 
   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.
   3392 	Wheee.
   3393 	
   3394         * khtml/rendering/render_flow.cpp:
   3395         (RenderFlow::layoutBlockChildren):
   3396 
   3397 2002-10-20  Darin Adler  <darin (a] apple.com>
   3398 
   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.
   3402 
   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.
   3406 
   3407 2002-10-20  Darin Adler  <darin (a] apple.com>
   3408 
   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.
   3411 
   3412         * khtml/rendering/render_image.cpp: (RenderImage::updateFromElement):
   3413 	Roll back the change.
   3414 
   3415 2002-10-20  David Hyatt  <hyatt (a] apple.com>
   3416 
   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.
   3420 	
   3421         * khtml/rendering/render_flow.cpp:
   3422         (RenderFlow::layoutBlockChildren):
   3423         (RenderFlow::checkClear):
   3424         (RenderFlow::addChild):
   3425 
   3426 2002-10-20  Darin Adler  <darin (a] apple.com>
   3427 
   3428 	- fixed 3007961 -- Crash in DOM::HTMLImageElementImpl::parseAttribute
   3429 
   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.
   3434 
   3435 2002-10-20  Chris Blumenberg  <cblu (a] apple.com>
   3436 
   3437 	Fixed possible build failure.
   3438 
   3439         * kwq/KWQDOMNode.cpp:
   3440         (isImage): remove unused variable.
   3441 
   3442 2002-10-20  Chris Blumenberg  <cblu (a] apple.com>
   3443 
   3444 	Partial fix for:
   3445 	3023814 - contexual menus and dragging doesn't work for some images
   3446 
   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?
   3448 
   3449         * kwq/KWQDOMNode.cpp:
   3450         (isImage): Also return true if the node is an INPUT tag with TYPE set to "image"
   3451 
   3452 2002-10-20  Darin Adler  <darin (a] apple.com>
   3453 
   3454 	- fixed 3076390 -- crash in DOM::DocumentImpl::setParsing loading thread detail page
   3455 	at groups.apple.com
   3456 
   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.
   3459 
   3460 2002-10-20  Darin Adler  <darin (a] apple.com>
   3461 
   3462 	- fixed 3079864 -- REGRESSION: assertion failure on any page with a form element
   3463 
   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*.
   3467 
   3468 	- fixed a crash I observed when clicking on an about:blank page
   3469 
   3470         * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): Check for nil renderer.
   3471 
   3472 2002-10-19  Darin Adler  <darin (a] apple.com>
   3473 
   3474 	- fixed 3075032 -- textarea contents sometimes aren't shown
   3475 
   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
   3481 	that on Monday.
   3482 
   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.
   3490 
   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.
   3494 
   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.
   3502 
   3503 2002-10-19  David Hyatt  <hyatt (a] apple.com>
   3504 
   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
   3509 	problem on our end.
   3510 
   3511         * khtml/html/htmlparser.cpp:
   3512         (KHTMLParser::insertNode):
   3513         * khtml/html/htmltokenizer.cpp:
   3514         (HTMLTokenizer::write):
   3515 
   3516 2002-10-18  Richard Williamson   <rjw (a] apple.com>
   3517 
   3518         Fixed khtml to ignore <title> tags after the first tag.
   3519         
   3520         Fixed setting document.title from JavaScript.
   3521         
   3522         * khtml/dom/html_document.cpp:
   3523         (HTMLDocument::setTitle):
   3524         * khtml/html/html_headimpl.cpp:
   3525         (HTMLTitleElementImpl::insertedIntoDocument):
   3526         (HTMLTitleElementImpl::childrenChanged):
   3527 
   3528 2002-10-18  Darin Adler  <darin (a] apple.com>
   3529 
   3530 	- fixed 3078293 -- Implement evaluateJavaScript on WebController
   3531 
   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.
   3535 
   3536 2002-10-18  Darin Adler  <darin (a] apple.com>
   3537 
   3538         * kwq/WebCoreBridge.h:
   3539         * kwq/WebCoreBridge.mm:
   3540         (-[WebCoreBridge stringByEvaluatingJavaScriptFromString:]):
   3541 	Changed to return a string and changed name.
   3542 
   3543 2002-10-18  David Hyatt  <hyatt (a] apple.com>
   3544 
   3545 	The collapsing margin rewrite. Also fixes a bug where
   3546 	we stay in quirks mode for strict HTML4 dtds when we
   3547 	shouldn't.
   3548 	
   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:
   3556 
   3557 2002-10-18  Darin Adler  <darin (a] apple.com>
   3558 
   3559         * Makefile.am: Move dependency so clean happens before build.
   3560 
   3561 2002-10-17  Richard Williamson  <rjw (a] apple.com>
   3562 
   3563         Support for drawing frame borders and frame resizing. (fixes 2982466).
   3564 
   3565         * khtml/rendering/render_frames.cpp:
   3566         (RenderFrameSet::userResize):
   3567         * kwq/WebCoreBridge.h:
   3568         * kwq/WebCoreBridge.mm:
   3569         (-[WebCoreBridge frameBorderStyle]):
   3570         * kwq/qt/qframe.h:
   3571 
   3572 2002-10-17  Darin Adler  <darin (a] apple.com>
   3573 
   3574 	- fixed 2807340 -- Alex is case sensitive for anchors, but
   3575 	should not be in quirks mode (other browsers aren't)
   3576 
   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.
   3579 
   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.
   3589 
   3590         * khtml/khtml_part.cpp: (KHTMLPart::gotoAnchor):
   3591 	Pass false for the new caseSensitive parameter to namedItem when the document
   3592 	mode is not strict.
   3593 
   3594         * kwq/KWQListBox.mm: (QListBox::sizeForNumberOfLines): Removed a stray NSLog
   3595 	that I left in by accident.
   3596 
   3597 2002-10-17  Darin Adler  <darin (a] apple.com>
   3598 
   3599 	- fixed 3052547 -- <select> doesn't size properly (size > 1)
   3600 
   3601         * khtml/rendering/render_form.cpp:
   3602         (RenderLineEdit::slotReturnPressed): #if !APPLE_CHANGES around some unused
   3603 	code in here.
   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.
   3607 
   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.
   3612 
   3613 2002-10-17  Darin Adler  <darin (a] apple.com>
   3614 
   3615 	- fixed 3078245 -- REGRESSION: lightgrey displays as black, used
   3616 	to display as white, should display light gray
   3617 
   3618         * kwq/KWQColor.mm: (getNamedColors): For every color with the name
   3619 	"gray" in it, also include the version spelled "grey" as other
   3620 	browsers seem to.
   3621 
   3622 2002-10-17  David Hyatt  <hyatt (a] apple.com>
   3623 
   3624 	Make navigator.product dynamic based off user agent (i.e.,
   3625 	make it participate in spoofing too).
   3626 	
   3627         * khtml/ecma/kjs_navigator.cpp:
   3628         (Navigator::getValueProperty):
   3629 
   3630 === Alexander-28 ===
   3631 
   3632 2002-10-17  Darin Adler  <darin (a] apple.com>
   3633 
   3634 	- fixed 3077856 -- REGRESSION: scroll to fragment doesn't work
   3635 	(except when Alex started from command line)
   3636 
   3637         * kwq/kparts/browserextension.h: Initialize reload to false. It was
   3638 	uninitialized, and when true was preventing anchor navigation from working.
   3639 
   3640 2002-10-17  Darin Adler  <darin (a] apple.com>
   3641 
   3642 	- fixed 3075992 -- Hang in khtml::RenderFlow::lowestPosition() trying to
   3643 	render http://avoyagetoarcturus.blogspot.com/
   3644 
   3645         * khtml/rendering/render_flow.cpp:
   3646         (RenderFlow::lowestPosition): Don't recurse on the same child twice.
   3647         (RenderFlow::rightmostPosition): Ditto.
   3648 
   3649 2002-10-17  David Hyatt  <hyatt (a] apple.com>
   3650 
   3651 	Fix bayarea.com.  My implementation of offsetParent was
   3652 	flawed.  And to think I was blaming Gecko... ;)
   3653 	
   3654         * khtml/rendering/render_object.cpp:
   3655         (RenderObject::offsetParent):
   3656 
   3657 2002-10-16  Darin Adler  <darin (a] apple.com>
   3658 
   3659 	- fixed 3061103 -- Line-breaks lost when submitting after pasting text from
   3660 	MSIE into Alexander textarea
   3661 
   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.
   3667 
   3668 2002-10-16  Richard Williamson  <rjw (a] apple.com>
   3669 
   3670         Fixed a few regressions in drawing of frame resize handle
   3671         in preparation for drawing frame borders and completing
   3672         2982466.
   3673         
   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):
   3681         * kwq/KWQWidget.mm:
   3682         (QWidget::enableFlushDrawing):
   3683         
   3684         Use static_cast everywhere DOM::NodeImpl is cast to
   3685         subclass.
   3686         
   3687         * kwq/WebCoreDOMNode.mm:
   3688         (-[WebCoreDOMNode DOM::]):
   3689         (-[WebCoreDOMNodeList DOM::]):
   3690         (-[WebCoreDOMNamedNodeMap DOM::]):
   3691         (-[WebCoreDOMAttr DOM::]):
   3692 
   3693 2002-10-16  David Hyatt  <hyatt (a] apple.com>
   3694 
   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).
   3698 	
   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:
   3705 
   3706 2002-10-16  Darin Adler  <darin (a] apple.com>
   3707 
   3708 	- fixed 3072542 -- double "&" in submit button
   3709 
   3710         * khtml/rendering/render_form.cpp: (RenderSubmitButton::rawText):
   3711 	Don't double the "&" character, not needed for KWQ.
   3712 
   3713 2002-10-16  David Hyatt  <hyatt (a] apple.com>
   3714 
   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.
   3720 
   3721 	With this fix, all objects on mrskin finally show up.  Yeehah.
   3722 	brainjar.com's brain is back too.
   3723 
   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
   3727 	content.
   3728 	
   3729         * khtml/rendering/render_container.cpp:
   3730         (RenderContainer::addChild):
   3731         (RenderContainer::appendChildNode):
   3732         (RenderContainer::insertChildNode):
   3733         * khtml/rendering/render_image.cpp:
   3734         (RenderImage::setStyle):
   3735 
   3736 2002-10-16  Darin Adler  <darin (a] apple.com>
   3737 
   3738 	- fixed 3045570 -- can't select a printer at inkfinder.com
   3739 
   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.
   3743 
   3744         * kwq/KWQKHTMLPartImpl.h: Add openURL.
   3745         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::openURL):
   3746 	Tell the bridge to load the URL.
   3747 
   3748         * kwq/mac-encodings.txt: Tweak Korean encoding names.
   3749 
   3750 2002-10-16  David Hyatt  <hyatt (a] apple.com>
   3751 
   3752 	A very substantial change.  Absolute/fixed positioned elements that
   3753 	are NOT renderflows were not getting layers constructed for them.
   3754 	They do now.
   3755 
   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.
   3760 	
   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):
   3774 
   3775 2002-10-16  Richard Williamson  <rjw (a] apple.com>
   3776 
   3777         Removed bogus code.
   3778         
   3779         * kwq/KWQKHistoryProvider.mm:
   3780 
   3781 2002-10-15  Richard Williamson  <rjw (a] apple.com>
   3782 
   3783         * kwq/WebCoreBridge.mm:
   3784         (attributedString):
   3785         Don't convert element unless it has a renderer.
   3786 
   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:
   3812         API cleanup.
   3813 
   3814 2002-10-15  David Hyatt  <hyatt (a] apple.com>
   3815 
   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
   3821 	margins together.
   3822 	
   3823         * khtml/rendering/render_flow.cpp:
   3824         (RenderFlow::layout):
   3825         (RenderFlow::layoutBlockChildren):
   3826 
   3827 2002-10-15  Darin Adler  <darin (a] apple.com>
   3828 
   3829 	WebCore support for using referrer even in loads that are not initiated
   3830 	by WebCore itself.
   3831 
   3832         * kwq/KWQKHTMLPartBrowserExtension.mm:
   3833         (KHTMLPartBrowserExtension::createNewWindow): Don't pass a referrer.
   3834 	We get the referrer from the part.
   3835 
   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.
   3847 
   3848         * kwq/KWQLoaderImpl.mm: (KWQServeRequest): Don't pass a referrer when starting
   3849 	a load.
   3850         * kwq/WebCoreBridge.h: Add referrer method. Remove referrer parameter from
   3851 	many other methods.
   3852         * kwq/WebCoreBridge.mm: (-[WebCoreBridge referrer]): Added.
   3853 
   3854 2002-10-15  Darin Adler  <darin (a] apple.com>
   3855 
   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
   3859 
   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.
   3865 
   3866 2002-10-15  Darin Adler  <darin (a] apple.com>
   3867 
   3868         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::urlSelected):
   3869 	Move the special case of a different anchor within the same
   3870 	page into WebKit from here.
   3871 
   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.
   3875 
   3876         * kwq/WebCoreBridge.h: Removed addBackForwardItemWithURL:anchor:
   3877 	and added URL method.
   3878         * kwq/WebCoreBridge.mm: (-[WebCoreBridge URL]): Added.
   3879 
   3880 2002-10-15  Darin Adler  <darin (a] apple.com>
   3881 
   3882 	- fixed 3074558 -- frames multiply at: http://www.iarsn.com/
   3883 
   3884 	The key was to make the name attribute work properly.
   3885 
   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.
   3895 
   3896         * kwq/KWQKHTMLPartImpl.mm: Remove old bogusish comment.
   3897 
   3898 2002-10-15  Richard Williamson  <rjw (a] apple.com>
   3899 
   3900         Added text color to attributed string conversion.
   3901         
   3902         * kwq/WebCoreBridge.mm:
   3903         (attributedString):
   3904 
   3905 2002-10-15  Richard Williamson  <rjw (a] apple.com>
   3906 
   3907         Added API to get attributed string from bridge.
   3908         Added API to get selection in terms of the DOM API
   3909         from the bridge.
   3910         
   3911         * kwq/WebCoreBridge.h:
   3912         * kwq/WebCoreBridge.mm:
   3913         (attributedString):
   3914         (-[WebCoreBridge selectionStart]):
   3915         (-[WebCoreBridge selectionStartOffset]):
   3916         (-[WebCoreBridge selectionEnd]):
   3917         (-[WebCoreBridge selectionEndOffset]):
   3918 
   3919 2002-10-15  Darin Adler  <darin (a] apple.com>
   3920 
   3921 	- fixed 3054791 -- crash in WebCoreSettings _updateAllViews changing font
   3922 
   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.
   3927 
   3928 2002-10-15  Ken Kocienda  <kocienda (a] apple.com>
   3929 
   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 
   3934 	Hyatt.
   3935 
   3936         * khtml/rendering/render_flow.cpp:
   3937         (RenderFlow::layoutBlockChildren):
   3938 
   3939 2002-10-14  David Hyatt  <hyatt (a] apple.com>
   3940 
   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).
   3944 	
   3945         * khtml/rendering/render_flow.cpp:
   3946         (RenderFlow::RenderFlow):
   3947         (RenderFlow::layout):
   3948         (RenderFlow::layoutBlockChildren):
   3949         * khtml/rendering/render_flow.h:
   3950 
   3951 2002-10-14  David Hyatt  <hyatt (a] apple.com>
   3952 
   3953 	Adding helper functions for handling of collapsing margins.
   3954 	Not used yet.
   3955 	
   3956         * khtml/rendering/render_object.h:
   3957 
   3958 2002-10-14  Darin Adler  <darin (a] apple.com>
   3959 
   3960 	Fixed problems with named colors.
   3961 
   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.
   3965 
   3966 2002-10-14  David Hyatt  <hyatt (a] apple.com>
   3967 
   3968 	Really fixing zeldman.com this time.  This disabling stuff
   3969 	is complicated! :)
   3970 	
   3971         * khtml/html/html_headimpl.cpp:
   3972         (HTMLLinkElementImpl::parseAttribute):
   3973         (HTMLLinkElementImpl::setStyleSheet):
   3974         (HTMLLinkElementImpl::sheetLoaded):
   3975 
   3976 2002-10-14  David Hyatt  <hyatt (a] apple.com>
   3977 
   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).
   3981 
   3982 	Fixes zeldman.com.
   3983 	
   3984         * khtml/html/html_headimpl.cpp:
   3985         (HTMLLinkElementImpl::parseAttribute):
   3986 
   3987 2002-10-14  David Hyatt  <hyatt (a] apple.com>
   3988 
   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.
   3993 
   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.
   3997 	
   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):
   4005 
   4006 2002-10-11  Richard Williamson   <rjw (a] apple.com>
   4007 
   4008         Remove debugging.
   4009         
   4010         * kwq/WebCoreDOMDocument.mm:
   4011         (+[WebCoreDOMDocument documentWithImpl:DOM::]):
   4012         * kwq/WebCoreDOMNode.mm:
   4013         (-[WebCoreDOMNode lastChild]):
   4014 
   4015 2002-10-11  Richard Williamson   <rjw (a] apple.com>
   4016 
   4017         More DOM/attributed string work.  Still need to fix more
   4018         inappropriate casting problems.
   4019         
   4020         * khtml/dom/dom_node.cpp:
   4021         (Node::lastChild):
   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:]):
   4036         (attributedString):
   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:]):
   4076         (recursive_toHTML):
   4077         (attributedString):
   4078 
   4079 2002-10-11  David Hyatt  <hyatt (a] apple.com>
   4080 
   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
   4084 	rendering objects. 
   4085 	
   4086         * khtml/rendering/render_object.cpp:
   4087         (RenderObject::createObject):
   4088 
   4089 === Alexander-27 ===
   4090 
   4091 2002-10-10  Darin Adler  <darin (a] apple.com>
   4092 
   4093 	- fixed 3047782 -- Alexander rejects some color strings that other browsers accept
   4094 
   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.
   4098 
   4099         * kwq/KWQColor.mm:
   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.
   4104 
   4105 2002-10-10  David Hyatt  <hyatt (a] apple.com>
   4106 
   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.
   4111 
   4112 	This fix makes chrysler.com work again (and doubtless many other
   4113 	messed up DHTML sites).
   4114 	
   4115         * khtml/rendering/render_layer.cpp:
   4116         (RenderLayer::constructZTree):
   4117         (RenderLayer::RenderZTreeNode::constructLayerList):
   4118 
   4119 2002-10-09  Richard Williamson  <rjw (a] apple.com>
   4120 
   4121         Implemented string conversion functions.
   4122         
   4123         * kwq/WebCoreDOMDocument.mm:
   4124         (domStringToNSString):
   4125         (NSStringToDOMString):
   4126 
   4127 2002-10-09  Darin Adler  <darin (a] apple.com>
   4128 
   4129 	- fixed 3069264 -- REGRESSION: windows created for links with
   4130 	target=blank start out hidden (window menu only)
   4131 
   4132         * kwq/WebCoreBridge.h: Removed openNewWindowWithURL:referrer:frameName: and
   4133 	added createWindowWithURL:referrer:frameName: and showWindow.
   4134 
   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
   4140 	is wrong.
   4141 
   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.
   4147 
   4148 2002-10-09  Darin Adler  <darin (a] apple.com>
   4149 
   4150 	- fixed 3069749 -- crash in QString during third run of cvs-base
   4151 
   4152         * kwq/KWQString.mm:
   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.
   4160 
   4161 2002-10-09  Darin Adler  <darin (a] apple.com>
   4162 
   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
   4165 	his machines?
   4166 
   4167         * kwq/KWQString.mm: (_allocateNode): Fix typo in comment.
   4168 
   4169         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::bridgeForFrameName): Tweak.
   4170 
   4171 2002-10-09  David Hyatt  <hyatt (a] apple.com>
   4172 
   4173 	This was an unintentional checkin. backing out.
   4174 	
   4175         * khtml/xml/dom_elementimpl.cpp:
   4176         (NamedAttrMapImpl::removeNamedItem):
   4177 
   4178 2002-10-08  Richard Williamson   <rjw (a] apple.com>
   4179 
   4180         Added bridge method set the selection.
   4181         
   4182         * kwq/WebCoreBridge.h:
   4183         * kwq/WebCoreBridge.mm:
   4184         (-[WebCoreBridge setSelectionFrom:startOffset:to:endOffset:]):
   4185 
   4186 2002-10-08  Richard Williamson   <rjw (a] apple.com>
   4187 
   4188         Added bridge method to get the DOM document.
   4189         
   4190         * kwq/WebCoreBridge.h:
   4191         * kwq/WebCoreBridge.mm:
   4192         (-[WebCoreBridge DOMDocument]):
   4193         * kwq/WebCoreDOM.h:
   4194 
   4195 2002-10-08  Richard Williamson   <rjw (a] apple.com>
   4196 
   4197         More DOM implementation.
   4198         
   4199         * khtml/dom/dom_text.h:
   4200         * khtml/dom/dom_xml.h:
   4201         * khtml/xml/dom_textimpl.h:
   4202         * khtml/xml/dom_xmlimpl.h:
   4203         * kwq/WebCoreDOM.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:
   4221 
   4222 2002-10-08  Richard Williamson   <rjw (a] apple.com>
   4223 
   4224         Implemented WebCoreDOMElement.
   4225         Fixed extra deref of impl in subclasses
   4226         of WebCoreDOMNode.
   4227         
   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:
   4253 
   4254 2002-10-08  Richard Williamson   <rjw (a] apple.com>
   4255 
   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 
   4261         
   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.
   4368 
   4369 2002-10-09  David Hyatt  <hyatt (a] apple.com>
   4370 
   4371 	Fix a bug in my event handling code for layers.   This makes
   4372 	the links on ESPN.com work again (bug 3051636).  Yay!
   4373 	
   4374         * khtml/rendering/render_layer.cpp:
   4375         (RenderLayer::constructZTree):
   4376         * khtml/xml/dom_elementimpl.cpp:
   4377         (NamedAttrMapImpl::removeNamedItem):
   4378         * kwq/qt/qrect.h:
   4379 
   4380 2002-10-07  Darin Adler  <darin (a] apple.com>
   4381 
   4382 	- fixed 3037353 -- align="middle" elements not horizontally centered
   4383 
   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.
   4387 
   4388 2002-10-07  Darin Adler  <darin (a] apple.com>
   4389 
   4390 	WebCore part of implementation of multipart forms posting.
   4391 
   4392         * kwq/WebCoreBridge.h: Add a contentType parameter to the bridge's
   4393 	[postWithURL:referrer:data:] method.
   4394 
   4395         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::submitForm):
   4396 	Extract the content type from the args, and pass it along to the bridge.
   4397 
   4398 2002-10-07  Darin Adler  <darin (a] apple.com>
   4399 
   4400 	- fixed 3011025 -- Page up/down is not working when text area has focus
   4401 
   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.
   4409 
   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
   4412 	for bug 2753974.
   4413 
   4414 2002-10-07  Richard Williamson   <rjw (a] apple.com>
   4415 
   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.  
   4419         
   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:
   4433 
   4434 2002-10-06  Darin Adler  <darin (a] apple.com>
   4435 
   4436 	- fixed 3046737 -- infinite loop in font name matching code on some pages
   4437 
   4438         * kwq/KWQString.mm: (QString::replace): Removed the incorrect early exit if
   4439 	the passed in string was the empty string.
   4440 
   4441 2002-10-04  Darin Adler  <darin (a] apple.com>
   4442 
   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.
   4446 
   4447 2002-10-03  Darin Adler  <darin (a] apple.com>
   4448 
   4449 	- fixed 3065730 -- Crash loading "My T-Mobile" page (in khtml::Decoder::decode)
   4450 
   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.
   4453 
   4454 2002-10-03  Darin Adler  <darin (a] apple.com>
   4455 
   4456 	Add API to execute JavaScript.
   4457 
   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.
   4463 
   4464 === Alexander-26 ===
   4465 
   4466 2002-10-02  Darin Adler  <darin (a] apple.com>
   4467 
   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.
   4471 
   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.
   4478 
   4479         * kwq/KWQKHTMLPartImpl.h: Remove overURL.
   4480         * kwq/KWQKHTMLPartImpl.mm: Ditto.
   4481 
   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.
   4484 
   4485         * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): Add code to
   4486 	set up WebCoreElementLinkTarget.
   4487 
   4488 2002-10-01  Darin Adler  <darin (a] apple.com>
   4489 
   4490 	- fixed 3055076 -- window.scroll does a window.scrollby, not a window.scrollto
   4491 
   4492         * khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): Moved a case so that the
   4493 	scroll code would scroll to, not by.
   4494 
   4495 2002-10-01  David Hyatt  <hyatt (a] apple.com>
   4496 
   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.
   4500 	
   4501         * khtml/xml/dom_docimpl.cpp:
   4502         (DocumentImpl::attrName):
   4503 
   4504 2002-10-01  David Hyatt  <hyatt (a] apple.com>
   4505 
   4506 	Make sure to keep the fix checked in for 1.18.  That fix is
   4507 	good.
   4508 	
   4509         * khtml/rendering/render_table.cpp:
   4510         (RenderTable::addColInfo):
   4511 
   4512 2002-10-01  David Hyatt  <hyatt (a] apple.com>
   4513 
   4514 	Backing out change to render_table.cpp.  The original logic
   4515 	(in version 1.16) is correct.
   4516 	
   4517         * khtml/rendering/render_table.cpp:
   4518         (RenderTable::addColInfo):
   4519 
   4520 2002-09-30  Darin Adler  <darin (a] apple.com>
   4521 
   4522         * kwq/qt/qobject.h: Add the destroyed signal.
   4523         * kwq/KWQObject.mm:
   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.
   4527 
   4528         * kwq/qt/qguardedptr.h:
   4529         * kwq/KWQGuardedPtr.mm:
   4530         * kwq/KWQSignal.h:
   4531         * kwq/KWQSlot.h:
   4532 	Rearrange includes so qobject.h can include KWQSignal.h.
   4533 
   4534         * kwq/KWQSignal.mm: Tweak.
   4535 
   4536         * kwq/KWQSlot.mm: Added support for the parentDestroyed slot in KJS::WindowQObject
   4537 	and the slotWidgetDestructed slot in khtml::RenderWidget.
   4538 
   4539 2002-09-28  Darin Adler  <darin (a] apple.com>
   4540 
   4541 	Turn -Werror back on. There must have been some miscommunication
   4542 	about the fat build; this was supposed to have been on.
   4543 
   4544         * WebCore.pbproj/project.pbxproj: Add -Werror back.
   4545 
   4546         * kwq/WebCoreHistory.h: Add missing method to fix warning.
   4547         * kwq/KWQKHistoryProvider.mm: Tweak.
   4548 
   4549 2002-09-28  Darin Adler  <darin (a] apple.com>
   4550 
   4551 	Give the next fat build a better chance of working with the
   4552 	new gcc without turning -Werror off.
   4553 
   4554         * khtml/css/cssparser.cpp: Use a macro to disable inlining.
   4555         * khtml/html/htmltokenizer.cpp: Ditto.
   4556         * khtml/misc/htmlhashes.cpp: Ditto.
   4557 
   4558 2002-09-28  Darin Adler  <darin (a] apple.com>
   4559 
   4560 	- fixed 3022441 -- scroll bar is missing in window created with window.open
   4561 
   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".
   4565 
   4566 2002-09-28  Darin Adler  <darin (a] apple.com>
   4567 
   4568 	- fixed 2886111 -- changing font or size preference causes open
   4569 	windows to redraw incorrectly
   4570 
   4571         * khtml/rendering/render_table.cpp: (RenderTable::addColInfo):
   4572 	Fix logic about when a recalc of the minWidth and maxWidth is needed.
   4573 
   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.
   4577 
   4578         * khtml/khtmlview.h: Added unscheduleRelayout.
   4579         * khtml/khtmlview.cpp: (KHTMLView::unscheduleRelayout): Added.
   4580 
   4581         * kwq/KWQKHTMLPartImpl.h: Added forceLayout.
   4582         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::forceLayout): Call
   4583 	both layout and unscheduleRelayout.
   4584 
   4585         * kwq/WebCoreBridge.h: Add setNeedsLayout.
   4586         * kwq/WebCoreBridge.mm:
   4587         (-[WebCoreBridge forceLayout]): Call KWQKHTMLPartImpl::forceLayout.
   4588         (-[WebCoreBridge setTextSizeMultiplier:]): Call forceLayout.
   4589 
   4590 2002-09-27  Darin Adler  <darin (a] apple.com>
   4591 
   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.
   4595 
   4596 2002-09-27  Darin Adler  <darin (a] apple.com>
   4597 
   4598 	- fixed 2937198 -- Checkboxes and radiobuttons don't align with title control in forms
   4599 
   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.
   4604 
   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.
   4609 
   4610 2002-09-27  Chris Blumenberg  <cblu (a] apple.com>
   4611 
   4612 	WebPlugin clean up.
   4613 
   4614         * kwq/KWQKConfigBase.mm:
   4615         (KConfig::readEntry):
   4616         * kwq/WebCoreViewFactory.h:
   4617 
   4618 2002-09-27  Richard Williamson   <rjw (a] apple.com>
   4619 
   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.
   4624         
   4625         * khtml/khtml_part.cpp:
   4626         (KHTMLPart::begin):
   4627         * kwq/KWQKHTMLPartImpl.h:
   4628         * kwq/KWQKHTMLPartImpl.mm:
   4629         (KWQKHTMLPartImpl::requestedURLString):
   4630         * kwq/KWQKHistoryProvider.mm:
   4631         * kwq/WebCoreBridge.h:
   4632         * kwq/WebCoreHistory.h:
   4633 
   4634 2002-09-28  David Hyatt  <hyatt (a] apple.com>
   4635 
   4636 	Fix for 3058119, doctype of HTML docs should be null.
   4637 	
   4638         * khtml/dom/dom_doc.cpp:
   4639 
   4640 2002-09-28  David Hyatt  <hyatt (a] apple.com>
   4641 
   4642 	DOM compliance. Fix for 3058100, hasFeature of HTML returns
   4643 	false. Oops.
   4644 	
   4645         * khtml/xml/dom_docimpl.cpp:
   4646         (DOMImplementationImpl::hasFeature):
   4647 
   4648 2002-09-27  Darin Adler  <darin (a] apple.com>
   4649 
   4650 	- fixed 3060487 -- error connecting member slot to signal (KWQObject)
   4651 
   4652         * kwq/KWQObject.mm: (QObject::connect): Add slotShowDocument to the list of slots that
   4653 	we don't care about hooking up.
   4654 
   4655 2002-09-26  Darin Adler  <darin (a] apple.com>
   4656 
   4657 	- fixed 2953256 -- JavaScript window.moveTo() and window.moveBy() methods do not work
   4658 
   4659         * kwq/KWQWindowWidget.mm: (KWQWindowWidget::frameGeometry): Fix calculation.
   4660 	It was returning the bottom left coordinate instead of the top left.
   4661 
   4662 2002-09-26  Darin Adler  <darin (a] apple.com>
   4663 
   4664 	- fixed 3060459 -- REGRESSION: crash leaving page that sets cookie in JavaScript
   4665 	unload handler
   4666 
   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.
   4670 
   4671         * khtml/dom/html_document.h: Add setPolicyBaseURL.
   4672         * khtml/dom/html_document.cpp: (HTMLDocument::setPolicyBaseURL): Call the impl.
   4673 
   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.
   4678 
   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.
   4686 
   4687 2002-09-26  Darin Adler  <darin (a] apple.com>
   4688 
   4689         * kwq/WebCoreBridge.h: Use NSString for encoding name, not CFStringEncoding.
   4690         * kwq/WebCoreBridge.mm:
   4691         (-[WebCoreBridge addData:withOverrideEncoding:]): Ditto.
   4692 
   4693 2002-09-26  Chris Blumenberg  <cblu (a] apple.com>
   4694 
   4695 	Added WebCoreElementImageLocationKey to the element dictionary.
   4696 
   4697         * kwq/WebCoreBridge.h:
   4698         * kwq/WebCoreBridge.mm:
   4699         (-[WebCoreBridge elementAtPoint:]):
   4700 
   4701 === Alexander-25 ===
   4702 
   4703 2002-09-25  David Hyatt  <hyatt (a] apple.com>
   4704 
   4705 	Implement scrollX and scrollY on the window object.  This
   4706 	gets brainjar closer to reality. :)
   4707 	
   4708         * khtml/ecma/kjs_window.cpp:
   4709         (Window::get):
   4710         * khtml/ecma/kjs_window.h:
   4711 
   4712 2002-09-25  Darin Adler  <darin (a] apple.com>
   4713 
   4714 	Fix error with the color "indigo".
   4715 
   4716         * kwq/KWQColor.mm: (getNamedColors): There were some spaces in our
   4717 	color table so we wouldn't handle indianred or indigo.
   4718 
   4719 2002-09-25  Maciej Stachowiak  <mjs (a] apple.com>
   4720 
   4721 	- fixed 2854536 - New cookie policy: "accept cookies only from the
   4722 	same domain as the main page"
   4723 	
   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:]):
   4732 
   4733 2002-09-24  Darin Adler  <darin (a] apple.com>
   4734 
   4735 	- fixed 3057928 -- lstat private/etc/localtime repeatedly reported
   4736 	by fs_usage when mouse is moved
   4737 
   4738         * WebCore-tests.exp: Remove now-unneeded external entry points
   4739 	for QTime, QDate, QDateTime.
   4740 
   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.
   4746 
   4747 2002-09-24  David Hyatt  <hyatt (a] apple.com>
   4748 
   4749 	Make sure we dispatch both a capturing and a bubbling event
   4750 	to target nodes. DOM lvl 2 event compliance.
   4751 	
   4752         * ChangeLog:
   4753         * khtml/xml/dom_nodeimpl.cpp:
   4754         (NodeImpl::dispatchGenericEvent):
   4755 
   4756 2002-09-24  Richard Williamson   <rjw (a] apple.com>
   4757 
   4758         Fixed 3055078.  Ensure file: URLs have // before path.
   4759         
   4760         * kwq/KWQKURL.mm:
   4761         (KURL::parse):
   4762 
   4763 2002-09-24  David Hyatt  <hyatt (a] apple.com>
   4764 
   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.
   4768 	
   4769         * khtml/html/html_elementimpl.cpp:
   4770         (HTMLElementImpl::parseAttribute):
   4771 
   4772 2002-09-24  David Hyatt  <hyatt (a] apple.com>
   4773 
   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.).
   4777 
   4778 	This fixes the drawing of the outline on the brainjar.com
   4779 	DHTML menus.
   4780 	
   4781         * khtml/khtmlview.cpp:
   4782         (KHTMLView::dispatchMouseEvent):
   4783 
   4784 2002-09-24  David Hyatt  <hyatt (a] apple.com>
   4785 
   4786 	Make sure that changes to the CLASS attribute mark the
   4787 	element as changed (as if a CSS property were added or
   4788 	removed).
   4789 
   4790 	This makes the brainjar.com rollovers work much better.
   4791 	
   4792         * khtml/html/html_elementimpl.cpp:
   4793         (HTMLElementImpl::parseAttribute):
   4794 
   4795 2002-09-24  Chris Blumenberg  <cblu (a] apple.com>
   4796 
   4797 	Renamed element info keys to WebElement* instead of WebContextMenuElement*
   4798 
   4799         * kwq/WebCoreBridge.h:
   4800         * kwq/WebCoreBridge.mm:
   4801         (-[WebCoreBridge elementAtPoint:]):
   4802 
   4803 2002-09-24  Darin Adler  <darin (a] apple.com>
   4804 
   4805 	- fixed 3056579 -- various crashes at http://www.auspost.com.au/
   4806 
   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.
   4811 
   4812         * kwq/KWQString.mm:
   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.
   4816 
   4817 2002-09-24  Darin Adler  <darin (a] apple.com>
   4818 
   4819 	Remove the focus border hack, which was no longer doing us any good.
   4820 
   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.
   4827 
   4828 2002-09-24  Darin Adler  <darin (a] apple.com>
   4829 
   4830         * kwq/mac-encodings.txt: Remove constant for Japanese auto-detect.
   4831 
   4832 2002-09-24  Darin Adler  <darin (a] apple.com>
   4833 
   4834         * kwq/KWQFileButton.mm: (KWQFileButton::paint): Fix typo.
   4835 
   4836 2002-09-24  Darin Adler  <darin (a] apple.com>
   4837 
   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".
   4841 
   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.
   4850 
   4851 2002-09-23  David Hyatt  <hyatt (a] apple.com>
   4852 
   4853 	Found the problem with the CSS W3C page.
   4854 	
   4855         * khtml/xml/dom_docimpl.cpp:
   4856         (DocumentImpl::recalcStyleSelector):
   4857 
   4858 2002-09-23  Darin Adler  <darin (a] apple.com>
   4859 
   4860 	WebCore part of fixes for proper layering when drawing subframes.
   4861 
   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.
   4865 
   4866         * kwq/KWQScrollView.mm: (QScrollView::updateContents): Call setNeedsDisplayInRect
   4867 	instead of displayRect.
   4868 
   4869         * kwq/KWQPainter.mm:
   4870         (QPainter::drawRect): Use NSRectFill and NSFrameRect instead of NSBezierPath.
   4871         (QPainter::fillRect): Ditto.
   4872 
   4873 2002-09-23  David Hyatt  <hyatt (a] apple.com>
   4874 
   4875 	Don't let alternate stylesheets delay render tree construction.
   4876 	
   4877         * khtml/html/html_headimpl.cpp:
   4878         (HTMLLinkElementImpl::HTMLLinkElementImpl):
   4879         (HTMLLinkElementImpl::process):
   4880         (HTMLLinkElementImpl::setStyleSheet):
   4881         (HTMLLinkElementImpl::sheetLoaded):
   4882         * khtml/html/html_headimpl.h:
   4883 
   4884 \2002-09-23  David Hyatt  <hyatt (a] apple.com>
   4885 
   4886 	Make overflow:auto and scroll map to hidden until we figure
   4887 	out something better.
   4888 	
   4889         * khtml/css/cssstyleselector.cpp:
   4890  
   4891 2002-09-23  Darin Adler  <darin (a] apple.com>
   4892 
   4893 	More refinement of the AppKit hackery.
   4894 
   4895         * khtml/rendering/render_replaced.cpp:
   4896         (RenderWidget::printObject): Pass in the painter and rect.
   4897 
   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.
   4900 
   4901         * kwq/KWQFileButton.h: Change paint to take painter and rect.
   4902         * kwq/KWQFileButton.mm: (KWQFileButton::paint): Use painter.
   4903 
   4904         * kwq/qt/qpainter.h: Added paintingDisabled() function.
   4905         * kwq/KWQPainter.mm: (QPainter::paintingDisabled): Added.
   4906 
   4907 2002-09-22  Darin Adler  <darin (a] apple.com>
   4908 
   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.
   4912 
   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.
   4923 
   4924 2002-09-21  Darin Adler  <darin (a] apple.com>
   4925 
   4926 	- fixed 3057265 -- REGRESSION: Crash loading http://www.undetectables.co.uk/
   4927 
   4928         * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest):
   4929 	Remove special case for javascript and about:blank that was leading to a crash.
   4930 
   4931 2002-09-21  Darin Adler  <darin (a] apple.com>
   4932 
   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.
   4936 
   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.
   4941 
   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().
   4945 
   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.
   4949 
   4950         * kwq/qt/qlineedit.h: Remove paint() override.
   4951         * kwq/KWQLineEdit.mm: Remove paint().
   4952 
   4953         * kwq/KWQFileButton.mm: (KWQFileButton::clicked): Fix typo. Was calling paint
   4954 	instead of clicked on the base class.
   4955 
   4956         * kwq/KWQNSTextField.h: Remove paint method.
   4957         * kwq/KWQNSTextField.mm:
   4958         (-[KWQNSTextField display]): Add a display method that does nothing to work around
   4959 	bug 2753974.
   4960         (-[KWQSecureTextField display]): Ditto.
   4961 
   4962 	* khtml/rendering/render_frames.cpp: (RenderFrameSet::userResize): Remove call to flushDrawing.
   4963 
   4964 2002-09-20  Richard Williamson   <rjw (a] apple.com>
   4965 
   4966         Don't modify selection if no appropriate DOM::Node under
   4967         mouse.
   4968         
   4969         * khtml/khtml_part.cpp:
   4970         (KHTMLPart::khtmlMouseMoveEvent):
   4971 
   4972 2002-09-20  Richard Williamson   <rjw (a] apple.com>
   4973 
   4974         Assume triple click for selection if click count >= 3,
   4975         not == 3, as in OS X.
   4976         
   4977         * khtml/khtml_part.cpp:
   4978         (KHTMLPart::khtmlMousePressEvent):
   4979 
   4980 2002-09-20  Richard Williamson   <rjw (a] apple.com>
   4981 
   4982         Fixed crasher in findTextSlave.
   4983         * khtml/rendering/render_text.cpp:
   4984         (RenderText::findTextSlave):
   4985 
   4986         Added error checks.
   4987         * khtml/khtml_part.cpp:
   4988         (startAndEndLineNodesIncludingNode):
   4989 
   4990 2002-09-20  Richard Williamson   <rjw (a] apple.com>
   4991 
   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.
   4997         
   4998         * khtml/khtml_events.cpp:
   4999         * khtml/khtml_events.h:
   5000         * khtml/khtml_part.cpp:
   5001         (KHTMLPart::customEvent):
   5002         (firstSlaveAt):
   5003         (lastSlaveAt):
   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:]):
   5016 
   5017 2002-09-20  Darin Adler  <darin (a] apple.com>
   5018 
   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.
   5029 
   5030         * kwq/KWQKFileItem.mm: Our "nonimplementation" is good enough. Stop complaining.
   5031         * kwq/KWQKnetaccess.mm: Ditto. Also just extract path when asked to download.
   5032 
   5033 2002-09-20  Darin Adler  <darin (a] apple.com>
   5034 
   5035 	Some first steps toward implementing input=file.
   5036 
   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.
   5042 
   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.
   5048 
   5049 2002-09-20  Darin Adler  <darin (a] apple.com>
   5050 
   5051 	- fixed 3056605 -- REGRESSION: blank page at http://www.2ch.net/2ch.html
   5052 
   5053         * kwq/mac-encodings.txt: When people say ShiftJIS, they really mean
   5054 	DOSJapanese. So do what they mean, not what they say.
   5055 
   5056 2002-09-20  Darin Adler  <darin (a] apple.com>
   5057 
   5058 	- fixed 3055339 -- repro crash in RenderPartObject::updateWidget()
   5059 
   5060         * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest):
   5061 	Only create a new part if we have no old part.
   5062 
   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.
   5066 
   5067 2002-09-19  Richard Williamson   <rjw (a] apple.com>
   5068 
   5069         Implemented double and triple click selection.
   5070         
   5071         * khtml/khtml_events.h:
   5072         * khtml/khtml_part.cpp:
   5073         (KHTMLPart::customEvent):
   5074         (KHTMLPart::khtmlMouseDoubleClickEvent):
   5075         (firstSlaveAt):
   5076         (lastSlaveAt):
   5077         (KHTMLPart::khtmlMouseTripleClickEvent):
   5078         * khtml/khtml_part.h:
   5079         * khtml/rendering/render_text.h:
   5080         * kwq/WebCoreBridge.mm:
   5081         (-[WebCoreBridge mouseUp:]):
   5082 
   5083 2002-09-19  Darin Adler  <darin (a] apple.com>
   5084 
   5085 	- fixed 3045651 -- null-dereference in DOM::CharacterDataImpl constructor
   5086 	setting up text area element
   5087 
   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.
   5091 
   5092         * WebCore.pbproj/project.pbxproj: Let PB sort things as it likes.
   5093 
   5094 === Alexander-24 ===
   5095 
   5096 2002-09-18  Darin Adler  <darin (a] apple.com>
   5097 
   5098 	- fixed 3037974 -- successful Find does not deselect text field
   5099 
   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.
   5103 
   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.
   5112 
   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.
   5117 
   5118         * kwq/KWQNSTextField.mm:
   5119         (-[KWQNSTextField becomeFirstResponder]): Call setDocumentFocus.
   5120         (-[KWQSecureTextField becomeFirstResponder]): Call setDocumentFocus.
   5121 
   5122         * kwq/qt/qwidget.h: Removed endEditing().
   5123         * kwq/KWQWidget.mm: (QWidget::clearFocus): Call clearDocumentFocus.
   5124 	(QWidget::endEditing): Removed.
   5125 
   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.
   5133 
   5134 2002-09-18  Darin Adler  <darin (a] apple.com>
   5135 
   5136 	- fixed 3027470 -- hitting tab when the google.com text field is selected
   5137 	(all bars hidden) makes border flash
   5138 
   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.
   5144 
   5145 2002-09-17  Darin Adler  <darin (a] apple.com>
   5146 
   5147 	- fixed 3025022 -- Crash in KWQKHTMLPartImpl::redirectionTimerStartedOrStopped()
   5148 
   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.
   5152 
   5153 	- fixed 3028476 -- illegal instruction crash in KWQTimerCallback timerFired
   5154 
   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.
   5163 
   5164         * kwq/KWQObject.mm:
   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.
   5173 
   5174 2002-09-17  Darin Adler  <darin (a] apple.com>
   5175 
   5176 	- fixed 3050818 -- Crash in relative-KURL constructor at site with _ in host name
   5177 
   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.
   5180 
   5181 2002-09-17  Richard Williamson   <rjw (a] apple.com>
   5182 
   5183         * khtml/khtmlview.cpp:
   5184         (KHTMLView::viewportMouseTripleClickEvent):
   5185         Added implementation.  Same as viewportMouseReleaseEvent
   5186         except dispatches additional MouseTripleClickEvent event.
   5187         
   5188         (KHTMLView::viewportMouseDoubleClickEvent):
   5189         Send extra release event.  This emulates Qt
   5190         behavior.
   5191 
   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
   5197         confused.
   5198         
   5199         * kwq/KWQColor.mm:
   5200         (QColor::hsv):
   5201         Fixed divide by 0 problem.
   5202         
   5203 2002-09-17  Darin Adler  <darin (a] apple.com>
   5204 
   5205 	- fixed 2936933 -- Pages that claim to be UTF-8 but contain invalid
   5206 	sequences do not render at all
   5207 
   5208 	Misc. speed improvements. Total 2.6% speedup for cvs-base.
   5209 
   5210 	Improvements for signals.
   5211 
   5212         * kwq/KWQChar.mm:
   5213         (QChar::isSpace): Add fast case for ASCII.
   5214         (QChar::lower): Add fast case for ASCII.
   5215         (QChar::upper): Add fast case for ASCII.
   5216 
   5217         * kwq/qt/qcolor.h: Just store RGB values, not NSColor objects.
   5218         * kwq/KWQColor.mm:
   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.
   5223 
   5224         * kwq/KWQKHTMLPartImpl.mm:
   5225         (moveWidgetsAside): Use isWidget() instead of dynamic_cast.
   5226 
   5227         * kwq/KWQSignal.h: use a QValueList instead of a fixed-size array.
   5228         * kwq/KWQSignal.mm:
   5229         (KWQSignal::connect): Append to list.
   5230         (KWQSignal::disconnect): Remove from list.
   5231         (KWQSignal::call): Use the QValueList.
   5232 
   5233         * kwq/KWQSlot.mm:
   5234         (KWQSlot::call): Use static_cast instead of dynamic_cast where possible.
   5235 
   5236         * kwq/qt/qstring.h: Add return value to forceUnicode.
   5237         * kwq/KWQString.mm:
   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
   5242 	up both of them.
   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.
   5249 
   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.
   5254 
   5255 2002-09-17  Richard Williamson   <rjw (a] apple.com>
   5256 
   5257         * khtml/css/cssstyleselector.cpp:
   5258         Fixed bug in KHTML that incorrectly modified '//' in fragment part of URL.
   5259         
   5260         * kwq/KWQKHistoryProvider.mm:
   5261         Use string based API to add entry.  May eventually remove NSURL from
   5262         history entirely.
   5263         
   5264         * kwq/KWQKURL.mm:
   5265         (KURL::canonicalURL):
   5266         Simply return the urlString.
   5267 
   5268         (KURL::parse):
   5269         Added "/" to http and https empty path URLs.
   5270         
   5271         * kwq/KWQString.mm:
   5272         (QString::mid):
   5273         Optimize ascii case.
   5274         
   5275         * kwq/WebCoreHistory.h:
   5276         * kwq/WebCoreHistory.m:
   5277         (-[WebCoreHistory addEntryForURLString:]):
   5278         Use string based API to add entry.
   5279         
   5280         * kwq/kdecore/kurl.h:
   5281         Defined methods to access canonical components,
   5282         currently conditionally excluded.
   5283         
   5284 2002-09-16  David Hyatt  <hyatt (a] apple.com>
   5285 
   5286 	Fix the stylesheet loading regression on rubyfruit.
   5287 	
   5288         * khtml/html/html_headimpl.cpp:
   5289         (HTMLStyleElementImpl::HTMLStyleElementImpl):
   5290         (HTMLStyleElementImpl::childrenChanged):
   5291         (HTMLStyleElementImpl::isLoading):
   5292         * khtml/html/html_headimpl.h:
   5293 
   5294 2002-09-13  David Hyatt  <hyatt (a] apple.com>
   5295 
   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).
   5300 
   5301 	Unpatched widgets include the password field, the listbox, and the
   5302 	textarea.  
   5303 
   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.
   5307 
   5308 	Event handling will also be incorrect and will need to be patched
   5309 	separately.
   5310 	
   5311         * khtml/rendering/render_body.cpp:
   5312         (RenderBody::printBoxDecorations):
   5313         * khtml/rendering/render_replaced.cpp:
   5314         (RenderWidget::printObject):
   5315         * kwq/KWQButton.mm:
   5316         (QButton::QButton):
   5317         (QButton::paint):
   5318         (-[KWQNSButton drawRect:]):
   5319         (-[KWQNSButton paint]):
   5320         * kwq/KWQComboBox.mm:
   5321         (-[KWQNSPopUpButton drawRect:]):
   5322         (-[KWQNSPopUpButton paint]):
   5323         (QComboBox::QComboBox):
   5324         (QComboBox::insertItem):
   5325         (QComboBox::paint):
   5326         * kwq/KWQLineEdit.mm:
   5327         (QLineEdit::paint):
   5328         * kwq/KWQNSTextField.h:
   5329         * kwq/KWQNSTextField.mm:
   5330         (-[KWQNSTextField paint]):
   5331         * kwq/qt/qbutton.h:
   5332         * kwq/qt/qcombobox.h:
   5333         * kwq/qt/qlineedit.h:
   5334         * kwq/qt/qwidget.h:
   5335 
   5336 2002-09-13  Richard Williamson (Home)  <rjw (a] apple.com>
   5337 
   5338         Fixed navigation to link on mouse up after drag.
   5339         
   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. 
   5345         
   5346         (KHTMLView::viewportMouseReleaseEvent):
   5347 
   5348         * kwq/WebCoreBridge.mm:
   5349         (-[WebCoreBridge mouseUp:]):
   5350         (-[WebCoreBridge mouseDown:]):
   5351         Changed double click to be on mouse up with click count of two.
   5352 
   5353 2002-09-13  Darin Adler  <darin (a] apple.com>
   5354 
   5355 	Fix crash in slot code.
   5356 
   5357         * kwq/KWQSignal.mm: (KWQSignal::call): Copy the slots before
   5358 	calling through in case we are destroyed by the called function.
   5359 
   5360 2002-09-13  Darin Adler  <darin (a] apple.com>
   5361 
   5362 	Here's the *real* mistake that killed plugins. I accidentally
   5363 	stopped creating objects at all! Duh. Fixed now.
   5364 
   5365         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::createPart):
   5366 	Make a part for a plugin if we need one. Not a KHTMLPart, but
   5367 	a KWQPluginPart.
   5368 
   5369 2002-09-13  Darin Adler  <darin (a] apple.com>
   5370 
   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
   5374 	is working now.
   5375 
   5376 2002-09-13  Richard Williamson (Home)  <rjw (a] apple.com>
   5377 
   5378         Made justified text work correctly in khtml for rendering
   5379         and selection.  Optimized selection point calculation by
   5380         only doing characters measurements once.
   5381         
   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:
   5396 
   5397 2002-09-13  Darin Adler  <darin (a] apple.com>
   5398 
   5399 	Quiet error messages related to the slot/signal changes.
   5400 
   5401         * khtml/khtml_part.cpp:
   5402         (KHTMLPart::startAutoScroll): Ifdef this out.
   5403         (KHTMLPart::stopAutoScroll): Ditto.
   5404 
   5405         * kwq/KWQObject.mm:
   5406         (QObject::connect): Add two more expected members to the list for
   5407 	setStatusBarText and slotViewCleared.
   5408 
   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.
   5411         * kwq/KWQSignal.mm:
   5412         (KWQSignal::connect): Support multiple slots.
   5413         (KWQSignal::disconnect): Support multiple slots.
   5414         (KWQSignal::call): Support multiple slots.
   5415 
   5416 2002-09-13  Darin Adler  <darin (a] apple.com>
   5417 
   5418 	Fix assertion that happens on any page that has a non-HTML frame.
   5419 
   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.
   5423 
   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.
   5429 
   5430         * kwq/KWQObject.mm:
   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.
   5434 
   5435         * kwq/KWQSignal.h: Add support for signals that take bool and KIO::Job *.
   5436         * kwq/KWQSignal.mm:
   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 *.
   5440 
   5441         * kwq/KWQSlot.h: Add support for slots that take bool and KIO::Job *.
   5442         * kwq/KWQSlot.mm:
   5443         (KWQSlot::KWQSlot): Add four new members.
   5444         (KWQSlot::call): Add overloads for bool and KIO::Job * and support for the new
   5445 	members.
   5446 
   5447 2002-09-12  Darin Adler  <darin (a] apple.com>
   5448 
   5449         * kwq/KWQAssertions.h: Update assertions from from the copy in WebFoundation.
   5450         * WebCorePrefix.h: Remove NSURLPathUtilities.h include.
   5451 
   5452 	Use even more of the KHTML code so we get referrers in one more place.
   5453 
   5454         * kwq/WebCoreBridge.h: Add referrer to createChildFrameNamed.
   5455 
   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.
   5461 
   5462         * khtml/rendering/render_frames.h: Less APPLE_CHANGES.
   5463         * khtml/rendering/render_frames.cpp: Less APPLE_CHANGES.
   5464 
   5465         * kwq/kparts/browserextension.h: Add lockHistory/setLockHistory and
   5466 	openURLNotify.
   5467 
   5468         * kwq/khtml/khtml_ext.h: Add openURLNotify.
   5469         * kwq/KWQKHTMLPartImpl.h: Add openURLNotify.
   5470         * kwq/KWQKHTMLPartBrowserExtension.mm:
   5471         (KHTMLPartBrowserExtension::openURLNotify): Implement.
   5472 
   5473         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::createPart):
   5474 	Changed name from requestFrame. Do less work.
   5475 
   5476         * kwq/qt/qtimer.h: Add singleShot.
   5477         * kwq/KWQTimer.mm:
   5478         (+[KWQSingleShotTimerTarget targetWithQObject:member:]): Added.
   5479 	Used to implement singleShot.
   5480         (-[KWQSingleShotTimerTarget dealloc]): Ditto.
   5481         (-[KWQSingleShotTimerTarget timerFired:]): Ditto.
   5482         (QTimer::singleShot): Added.
   5483 
   5484         * kwq/qt/qmap.h: Add contains.
   5485 
   5486         * kwq/qt/qvaluelist.h: Add iterator return value for append and prepend.
   5487         * kwq/KWQValueListImpl.h: Add iterator return value for appendNode
   5488 	and prependNode.
   5489         * kwq/KWQValueListImpl.mm:
   5490         (KWQValueListImpl::appendNode): Add iterator.
   5491         (KWQValueListImpl::prependNode): Add iterator.
   5492 
   5493         * kwq/kparts/part.h: Add openURL.
   5494 
   5495 2002-09-12  Richard Williamson  <rjw (a] apple.com>
   5496 
   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.
   5501         
   5502         * khtml/rendering/render_root.cpp:
   5503         (enclosingPositionedRect):
   5504         (RenderRoot::setSelection):
   5505         (RenderRoot::clearSelection):
   5506         * khtml/rendering/render_root.h:
   5507         
   5508         Added additional absolute position property to render node
   5509         stuff for debug render tree view.
   5510         
   5511         * kwq/WebCoreBridge.h:
   5512         * kwq/WebCoreBridge.mm:
   5513         (-[WebCoreBridge copyRenderNode:copier:]):
   5514 
   5515 2002-09-12  David Hyatt  <hyatt (a] apple.com>
   5516 
   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. ;)
   5520 	
   5521         * khtml/rendering/render_body.cpp:
   5522         (RenderBody::printBoxDecorations):
   5523         * khtml/rendering/render_html.cpp:
   5524         (RenderHtml::printBoxDecorations):
   5525 
   5526 2002-09-12  David Hyatt  <hyatt (a] apple.com>
   5527 
   5528 	Make fixed positioned elements work when you scroll.  We were
   5529 	just missing the implementation of a QScrollView method.
   5530 	
   5531         * kwq/KWQScrollView.mm:
   5532         (QScrollView::setStaticBackground):
   5533 
   5534 2002-09-12  David Hyatt  <hyatt (a] apple.com>
   5535 
   5536 	Fix a bug in KHTML that leads it to claim cached @imported stylesheets
   5537 	are not loaded (when in fact they are).
   5538 
   5539 	This fixes the W3C CSS page.
   5540 	
   5541         * khtml/css/css_ruleimpl.cpp:
   5542         (CSSImportRuleImpl::init):
   5543 
   5544 2002-09-12  Chris Blumenberg  <cblu (a] apple.com>
   5545 
   5546 	Fixed livepage crash. It is naughty to divide by 0 so we now check before doing that.
   5547 
   5548         * khtml/rendering/render_box.cpp:
   5549         (RenderBox::printBackground):
   5550 
   5551 2002-09-12  David Hyatt  <hyatt (a] apple.com>
   5552 
   5553 	Fix crash on trekweb.com.  My simplified FOUC code was a little
   5554 	bit too simple. ;)
   5555 	
   5556         * khtml/html/html_headimpl.cpp:
   5557         (HTMLLinkElementImpl::setStyleSheet):
   5558         (HTMLStyleElementImpl::childrenChanged):
   5559 
   5560 2002-09-12  David Hyatt  <hyatt (a] apple.com>
   5561 
   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.
   5565 
   5566 	This fix also causes the textfields on mrskin.com to show up
   5567 	again.
   5568 	
   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:
   5578 
   5579 2002-09-11  Maciej Stachowiak  <mjs (a] apple.com>
   5580 
   5581 	Don't show the window here any more, now that WebBrowser will set
   5582 	it up to be shown properly itself.
   5583 	
   5584         * kwq/KWQKHTMLPartBrowserExtension.mm:
   5585         (KHTMLPartBrowserExtension::createNewWindow):
   5586 
   5587 2002-09-11  David Hyatt  <hyatt (a] apple.com>
   5588 
   5589 	Fix horizontal scrolling.  The HTML render object lies.  It lies, 
   5590 	I tell you.
   5591 	
   5592         * khtml/rendering/render_layer.cpp:
   5593         (RenderLayer::constructZTree):
   5594 
   5595 2002-09-11  David Hyatt  <hyatt (a] apple.com>
   5596 
   5597 	Fix clipping to work with layers.  This fixes the marquee
   5598 	(once again) on livepage.apple.com.
   5599 	
   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):
   5618 
   5619 2002-09-11  Darin Adler  <darin (a] apple.com>
   5620 
   5621         * kwq/KWQAssertions.h: Updated copy of the assertions macros (made by script).
   5622 
   5623 2002-09-11  Darin Adler  <darin (a] apple.com>
   5624 
   5625 	- fixed 3047552 -- crash using CFNotification calls on an NSNotification
   5626 
   5627         * kwq/KWQWindowWidget.mm:
   5628         (KWQWindowWidget::KWQWindowWidget): Create a KWQWindowWidgetDeleter, and
   5629 	hook it up to the notification.
   5630         (KWQWindowWidget::~KWQWindowWidget): Disconnect the KWQWindowWidgetDeleter
   5631 	and release it.
   5632         (-[KWQWindowWidgetDeleter initWithWindowWidget:]): Store a pointer.
   5633         (-[KWQWindowWidgetDeleter deleteWindowWidget]): Do a delete.
   5634 
   5635 2002-09-11  Darin Adler  <darin (a] apple.com>
   5636 
   5637 	- fixed 3021137 -- changing font prefs doesn't redraw frames
   5638 	other than the main frame
   5639 
   5640         * kwq/WebCoreSettings.m: Renamed to WebCoreSettings.mm.
   5641         * kwq/WebCoreSettings.mm: Renamed from WebCoreSettings.m so I could
   5642 	use C++.
   5643         (-[WebCoreSettings _updateAllViews]): Iterate over all KWQKHTMLPartImpl
   5644 	instances, calling setNeedsReapplyStyles on each one.
   5645         * WebCore.pbproj/project.pbxproj: Updated for name change.
   5646 
   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.
   5656 
   5657         * kwq/WebCoreBridge.h: Add setNeedsReapplyStyles; already implemented
   5658 	in WebKit.
   5659 
   5660         * khtml/khtml_part.cpp:
   5661         (KHTMLPart::findFrame): Remove APPLE_CHANGES.
   5662         (KHTMLPart::frameExists): Remove APPLE_CHANGES.
   5663         (KHTMLPart::frames): Remove APPLE_CHANGES.
   5664 
   5665 2002-09-10  Darin Adler  <darin (a] apple.com>
   5666 
   5667 	WebCore part of support for the "Referer" header.
   5668 
   5669         * khtml/khtml_part.cpp:
   5670         (KHTMLPart::urlSelected): Use much more of this function.
   5671         (KHTMLPart::submitForm): Use much more of this function.
   5672 
   5673         * kwq/KWQKHTMLPartBrowserExtension.mm:
   5674         (KHTMLPartBrowserExtension::createNewWindow): Parse the
   5675 	referrer out of the URLArgs and pass it along.
   5676 
   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
   5685 	through the bridge.
   5686         (KWQKHTMLPartImpl::urlSelected): Remove code that duplicates
   5687 	what's in KHTMLPart. Also pass referrer from args through the
   5688 	bridge as above.
   5689         (KWQKHTMLPartImpl::submitForm): Ditto.
   5690 
   5691         * kwq/kdeui/kmessagebox.h: Add information member function.
   5692         * kwq/KWQKMessageBox.mm: (KMessageBox::information): Implement.
   5693 
   5694         * kwq/kdecore/kurl.h: Add encode_string member function.
   5695         * kwq/KWQKURL.mm:
   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.
   5701 
   5702         * kwq/KWQLoaderImpl.mm: (KWQServeRequest): Pass referrer through
   5703 	the bridge.
   5704 
   5705         * kwq/WebCoreBridge.h: Add referrer parameters to loadURL, postWithURL,
   5706 	openNewWindowWithURL, and startLoadingResource.
   5707 
   5708         * kwq/kparts/browserextension.h: Implement setDoPost, setContentType,
   5709 	const version of metaData().
   5710 
   5711         * kwq/qt/qstring.h: Implement fromLatin1(const char *, int).
   5712 
   5713         * WebCore-tests.exp: Not sure why, but I needed to remove isMalformed,
   5714 	and the tests seem to still work with it removed.
   5715 
   5716 2002-09-11  David Hyatt  <hyatt (a] apple.com>
   5717 
   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.
   5724 
   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).
   5729 
   5730 	Next up will be fixing the clipping bug on livepage.apple.com.
   5731 	
   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:
   5744 
   5745 2002-09-10  David Hyatt  <hyatt (a] apple.com>
   5746 
   5747 	Get more elements on mrskin painting as well as the menus
   5748 	on brainjar.com.
   5749 	
   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:
   5757 
   5758 2002-09-10  David Hyatt  <hyatt (a] apple.com>
   5759 
   5760 	Fix the CSS clip property.
   5761 	
   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:
   5777 
   5778 2002-09-10  Richard Williamson  <rjw (a] apple.com>
   5779 
   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.
   5783         
   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:
   5795         * kwq/KWQEvent.mm:
   5796         (QMouseEvent::QMouseEvent):
   5797         * kwq/WebCoreBridge.mm:
   5798         (-[WebCoreBridge mouseUp:]):
   5799         (-[WebCoreBridge mouseDown:]):
   5800         * kwq/qt/qevent.h:
   5801 
   5802 2002-09-10  David Hyatt  <hyatt (a] apple.com>
   5803 
   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).
   5808 	
   5809         * khtml/html/html_headimpl.cpp:
   5810         (HTMLLinkElementImpl::process):
   5811         (HTMLLinkElementImpl::setStyleSheet):
   5812         (HTMLLinkElementImpl::sheetLoaded):
   5813         (HTMLStyleElementImpl::childrenChanged):
   5814         (HTMLStyleElementImpl::sheetLoaded):
   5815 
   5816 2002-09-10  Maciej Stachowiak  <mjs (a] apple.com>
   5817 
   5818 	WebCore part of fix for:
   5819 
   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
   5824 
   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:.
   5833 
   5834 2002-09-10  Darin Adler  <darin (a] apple.com>
   5835 
   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).
   5838 
   5839         * khtml/khtml_part.cpp:
   5840         (KHTMLPart::findFrame): Back to the old way.
   5841         (KHTMLPart::frameExists): Ditto.
   5842         (KHTMLPart::frames): Ditto.
   5843 
   5844 2002-09-10  Darin Adler  <darin (a] apple.com>
   5845 
   5846 	- fixed 2942809 -- remove all direct access to "WebKit" defaults from WebCore
   5847 
   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.
   5865 
   5866         * WebCore.exp: Add WebCoreSettings to the exported class list.
   5867 
   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.
   5876 
   5877 	- fixed 3015877 -- either wean WebCore from _web_URLFromString, or make it public API in WebFoundation
   5878 
   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.
   5883 
   5884 	After fixing the above bugs, I noticed that I could remove the WebFoundation dependency.
   5885 
   5886         * WebCore.pbproj/project.pbxproj: Remove WebFoundation framework.
   5887 
   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.
   5891 
   5892 	Do some preparation work for implementing "referrer".
   5893 
   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.
   5898 
   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.
   5914 
   5915 	Other changes.
   5916 
   5917         * kwq/KWQApplication.mm:
   5918         (QApplication::setOverrideCursor): Don't report an error for this, it's OK
   5919 	to do nothing.
   5920         (QApplication::restoreOverrideCursor): Ditto.
   5921 
   5922 2002-09-09  Richard Williamson  <rjw (a] apple.com>
   5923 
   5924         Implemented disable images automatically (2896319).
   5925 
   5926         * kwq/KWQKHTMLSettings.mm:
   5927         (KHTMLSettings::autoLoadImages):
   5928 
   5929 2002-09-09  Darin Adler  <darin (a] apple.com>
   5930 
   5931         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyView):
   5932 	Remove stray printf.
   5933 
   5934 2002-09-09  David Hyatt  <hyatt (a] apple.com>
   5935 
   5936 	Switching over to the layer system for the handling of mouse
   5937 	events.
   5938 	
   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:]):
   5955         * kwq/qt/qrect.h:
   5956 
   5957 2002-09-09  Darin Adler  <darin (a] apple.com>
   5958 
   5959         * khtml/rendering/render_layer.h: Add a call to delete to fix a storage leak.
   5960 
   5961 2002-09-09  Darin Adler  <darin (a] apple.com>
   5962 
   5963         * khtml/misc/helper.cpp: (khtml::setNamedColor): Add a missing return I spotted.
   5964 
   5965         * kwq/KWQApplication.mm:
   5966         * kwq/KWQChar.mm:
   5967         * kwq/KWQCompletion.mm:
   5968         * kwq/KWQCursor.mm:
   5969         * kwq/KWQEvent.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:
   5985         * kwq/KWQString.mm:
   5986         * kwq/KWQWidget.mm:
   5987         * kwq/KWQbrowserinterface.mm:
   5988         * kwq/KWQtextstream.mm:
   5989         * kwq/KWQxml.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.
   5994 
   5995         * kwq/KWQLogging.h:
   5996         * kwq/KWQLogging.m:
   5997 	Removed the NeverImplemented logging channel. The distinction is no longer worth
   5998 	keeping around. We use NotYetImplemented instead.
   5999 
   6000 2002-09-08  Darin Adler  <darin (a] apple.com>
   6001 
   6002 	Switch over to new assertion/logging scheme.
   6003 
   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.
   6011 
   6012         * kwq/KWQApplication.mm:
   6013         * kwq/KWQChar.mm:
   6014         * kwq/KWQColor.mm:
   6015         * kwq/KWQComboBox.mm:
   6016         * kwq/KWQCompletion.mm:
   6017         * kwq/KWQCursor.mm:
   6018         * kwq/KWQDrawUtil.mm:
   6019         * kwq/KWQEvent.mm:
   6020         * kwq/KWQFontInfo.mm:
   6021         * kwq/KWQFontMetrics.mm:
   6022         * kwq/KWQFrame.mm:
   6023         * kwq/KWQHBox.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:
   6033         * kwq/KWQKJob.mm:
   6034         * kwq/KWQKLocale.mm:
   6035         * kwq/KWQKMimeType.mm:
   6036         * kwq/KWQKPartsEvent.mm:
   6037         * kwq/KWQKSimpleConfig.mm:
   6038         * kwq/KWQKURL.mm:
   6039         * kwq/KWQKWin.mm:
   6040         * kwq/KWQKWinModule.mm:
   6041         * kwq/KWQKjobclasses.mm:
   6042         * kwq/KWQKnetaccess.mm:
   6043         * kwq/KWQLabel.mm:
   6044         * kwq/KWQLineEdit.mm:
   6045         * kwq/KWQListBox.mm:
   6046         * kwq/KWQListImpl.mm:
   6047         * kwq/KWQLoaderImpl.mm:
   6048         * kwq/KWQObject.mm:
   6049         * kwq/KWQPaintDeviceMetrics.mm:
   6050         * kwq/KWQPainter.mm:
   6051         * kwq/KWQPixmap.mm:
   6052         * kwq/KWQRegion.mm:
   6053         * kwq/KWQScrollView.mm:
   6054         * kwq/KWQSlot.mm:
   6055         * kwq/KWQString.mm:
   6056         * kwq/KWQTimer.mm:
   6057         * kwq/KWQWidget.mm:
   6058         * kwq/KWQbrowserinterface.mm:
   6059         * kwq/KWQtextcodec.mm:
   6060         * kwq/KWQtextstream.mm:
   6061         * kwq/KWQxml.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.
   6070 
   6071 2002-09-08  David Hyatt  <hyatt (a] apple.com>
   6072 
   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).
   6076 
   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).
   6081 	
   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:]):
   6126         * kwq/qt/qrect.h:
   6127 
   6128 2002-09-06  Maciej Stachowiak  <mjs (a] apple.com>
   6129 
   6130         Fix another instance of the same problem:
   6131 
   6132 	* kwq/KWQString.mm:
   6133         (QString::detach):
   6134 
   6135 2002-09-06  Maciej Stachowiak  <mjs (a] apple.com>
   6136 
   6137 	Fix optimized build:
   6138 	
   6139         * kwq/KWQString.mm:
   6140         (QString::detachInternal): Uselessly Initialize newData to NULL
   6141 	since the compiler can't tell that FATAL won't return.
   6142 
   6143 2002-09-06  Darin Adler  <darin (a] apple.com>
   6144 
   6145         * kwq/WebCoreResourceLoader.h:
   6146 	Define WebCoreResourceHandle protocol.
   6147 
   6148         * kwq/kio/jobclasses.h:
   6149         * kwq/KWQKjobclasses.mm:
   6150         * kwq/KWQLoaderImpl.mm: (KWQServeRequest):
   6151         * kwq/WebCoreBridge.h:
   6152 	Use WebCoreResourceHandle instead of WebResourceHandle.
   6153 
   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
   6156 	a handle.
   6157 
   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.
   6161 
   6162         * kwq/KWQCharsets.mm: Formatting tweaks.
   6163 
   6164 2002-09-06  Richard Williamson  <rjw (a] apple.com>
   6165 
   6166         Start using khtml's 'toAdd' parameter to justify text.
   6167         
   6168         * khtml/rendering/font.cpp:
   6169         (Font::drawText):
   6170         
   6171         Normalize all calls to get width to minimize use of
   6172         ObjC.  Will make it easier to use IMPL cache later.
   6173         
   6174         * kwq/KWQFontMetrics.mm:
   6175         (QFontMetrics::width):
   6176         (QFontMetrics::floatWidth):
   6177         (QFontMetrics::floatCharacterWidth):
   6178         
   6179         Pass additional 'toAdd' parameter.
   6180         
   6181         * kwq/KWQPainter.mm:
   6182         (QPainter::drawText):
   6183         * kwq/qt/qpainter.h:
   6184         
   6185         Remove methods now that width calls are normalized to single
   6186         method.
   6187         * kwq/WebCoreTextRenderer.h:
   6188 
   6189 
   6190 === Alexander-22 ===
   6191 
   6192 2002-09-05  Richard Williamson  <rjw (a] apple.com>
   6193 
   6194         Add the first child text node of the element to the
   6195         element dictionary.  This will be used as a link 'label'.
   6196         
   6197         * kwq/WebCoreBridge.h:
   6198         * kwq/WebCoreBridge.mm:
   6199         (-[WebCoreBridge elementAtPoint:]):
   6200 
   6201 2002-09-05  Richard Williamson  <rjw (a] apple.com>
   6202     
   6203         Removed debugging.
   6204         
   6205         * khtml/khtml_part.cpp:
   6206         (KHTMLPart::closeURL):
   6207 
   6208 2002-09-05  Richard Williamson  <rjw (a] apple.com>
   6209 
   6210         Always call KHTMLPart::closeURL when a new document is loaded.
   6211         
   6212         Added support for saving and restoring document state in
   6213         the back/forward list.  Document state includes form data.
   6214         
   6215         * khtml/khtml_part.cpp:
   6216         (KHTMLPart::openURL):
   6217         (KHTMLPart::closeURL):
   6218         (KHTMLPart::begin):
   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]):
   6227 
   6228 2002-09-04  Darin Adler  <darin (a] apple.com>
   6229 
   6230         * WebCore.pbproj/project.pbxproj:
   6231         * kwq/KWQObject.mm:
   6232         * kwq/KWQPainter.mm:
   6233         * kwq/KWQTimer.mm:
   6234         * kwq/WebCoreCookieAdapter.h:
   6235         * kwq/WebCoreImageRenderer.h:
   6236         * kwq/WebCoreImageRendererFactory.h:
   6237 	Tweaks, no substantive changes.
   6238 
   6239 2002-09-02  David Hyatt  <hyatt (a] apple.com>
   6240 
   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.
   6243 	
   6244         * khtml/rendering/render_layer.cpp:
   6245         (RenderLayer::constructZTree):
   6246 
   6247 2002-08-31  Darin Adler  <darin (a] apple.com>
   6248 
   6249 	- fixed 3038336 -- repro crash in QTextDecoder trying to display UTF-16 file
   6250 
   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.
   6254 
   6255         * kwq/KWQKHTMLSettings.mm: (KHTMLSettings::encoding): Just return "latin1",
   6256 	not "NSISOLatin1StringEncoding".
   6257 
   6258         * kwq/KWQString.mm: (QString::fromStringWithEncoding): Pass true for the
   6259 	"pay attention to BOM" flag.
   6260 
   6261         * khtml/rendering/render_object.cpp: Take out unneeded APPLE_CHANGES.
   6262 
   6263 2002-08-30  Ken Kocienda  <kocienda (a] apple.com>
   6264 
   6265 	Fixed a problem in this function where broken UTF-8 would cause a crash.
   6266 
   6267         * WebCore.pbproj/project.pbxproj:
   6268         * kwq/KWQString.mm:
   6269         (QString::fromStringWithEncoding)
   6270 
   6271 2002-08-30  Richard Williamson  <rjw (a] apple.com>
   6272 
   6273         Removed debugging log.
   6274         
   6275         * kwq/KWQString.mm:
   6276         (QString::fromStringWithEncoding):
   6277 
   6278 2002-08-30  Richard Williamson  <rjw (a] apple.com>
   6279 
   6280         Made decoder more robust wrt nulls in content.  Changed use
   6281         of QCString to null safe QString rather than modify
   6282         content.
   6283         
   6284         * khtml/misc/decoder.cpp:
   6285         (Decoder::decode):
   6286         (Decoder::flush):
   6287         * khtml/misc/decoder.h:
   6288         * kwq/KWQString.mm:
   6289         (QString::fromStringWithEncoding):
   6290 
   6291 2002-08-30  Darin Adler  <darin (a] apple.com>
   6292 
   6293 	- fixed 3027407 -- Console error refers to closed bug
   6294 
   6295         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::bridgeForFrameName):
   6296 	Update bug number from 2959902 to 2942073.
   6297 
   6298 	- fixed 3027532 -- can't tab into or out of textareas
   6299 	
   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
   6306 	identical purposes.
   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.
   6322 
   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.
   6327 
   6328         * kwq/qt/qwidget.h: Make focusPolicy virtual.
   6329 
   6330         * kwq/qt/qfont.h:
   6331         * kwq/KWQFont.mm: (QFont::getNSFont): Add this helper function
   6332 	so we don't have to repeat this in multiple places.
   6333 
   6334         * kwq/KWQLineEdit.mm: (QLineEdit::setFont): Use QFont::getNSFont.
   6335 
   6336         * force-clean-timestamp: For you poor bastards who aren't using the new
   6337 	Project Builder yet.
   6338 
   6339 2002-08-30  Darin Adler  <darin (a] apple.com>
   6340 
   6341         * WebCore.pbproj/project.pbxproj: Allowed the new Project Builder to put in
   6342 	encodings for each file.
   6343 
   6344 2002-08-29  David Hyatt  <hyatt (a] apple.com>
   6345 
   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
   6349 	their positions.
   6350 
   6351 	Implemented all the code for layer construction and for keeping
   6352 	the layer tree in sync with the render object tree.  
   6353 
   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
   6356 	painting.
   6357 
   6358 	This change requires a clean of WebCore.
   6359 	
   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):
   6380 
   6381 === Alexander-21 ===
   6382 
   6383 2002-08-28  David Hyatt  <hyatt (a] apple.com>
   6384 
   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.)
   6388 	
   6389         * khtml/rendering/render_layer.cpp:
   6390         (sortByZOrder):
   6391         (RenderLayer::RenderZTreeNode::constructLayerList):
   6392         * khtml/rendering/render_layer.h:
   6393 
   6394 2002-08-28  Richard Williamson  <rjw (a] apple.com>
   6395 
   6396         More tweaks to ccs.
   6397         Added underline to visited links.
   6398         Made outline for active normal and visited links gray.
   6399         
   6400         * khtml/css/html4.css:
   6401 
   6402 2002-08-28  Richard Williamson  <rjw (a] apple.com>
   6403 
   6404         Fixed outline of for active link style.
   6405         
   6406         * khtml/css/html4.css:
   6407         * kwq/KWQPainter.mm:
   6408         (QPainter::drawLine):
   6409 
   6410 2002-08-28  David Hyatt  <hyatt (a] apple.com>
   6411 
   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.
   6414 
   6415 	Also wrote the ztree construction function (not used yet) and
   6416 	stubbed out the display list flattening routines.
   6417 	
   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:
   6426 
   6427 2002-08-28  Darin Adler  <darin (a] apple.com>
   6428 
   6429 	- fixed 2977587 -- JavaScript code that reads the values of text areas
   6430 	misses the last line if no trailing CR
   6431 
   6432         * kwq/KWQTextArea.mm: (-[KWQTextArea paragraphs]):
   6433 
   6434 2002-08-28  David Hyatt  <hyatt (a] apple.com>
   6435 
   6436 	Putting design notes and API details for the layering system
   6437 	into the header file.
   6438 	
   6439         * khtml/rendering/render_layer.h:
   6440 
   6441 2002-08-28  Darin Adler  <darin (a] apple.com>
   6442 
   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.
   6445 
   6446 2002-08-28  Darin Adler  <darin (a] apple.com>
   6447 
   6448 	- fixed 3032148 -- Button not disabled in page
   6449 
   6450         * kwq/KWQWidget.mm: (QWidget::setEnabled): Call setEnabled:
   6451 	on the NSView if it implements it.
   6452 
   6453 2002-08-28  Darin Adler  <darin (a] apple.com>
   6454 
   6455 	- fixed 3030212 -- Problems rendering pages that specify "x-mac-roman" character
   6456 	set (like our Danish help pages)
   6457 
   6458         * kwq/mac-encodings.txt: Added x-mac-roman as an alias for macintosh.
   6459 
   6460 2002-08-27  Darin Adler  <darin (a] apple.com>
   6461 
   6462         * force-clean-timestamp: Dave's changes require a full build. I found out the
   6463 	hard way, by debugging for a while.
   6464 
   6465 2002-08-27  Richard Williamson <rjw (a] apple.com>
   6466 
   6467         * kwq/WebCoreBridge.h:
   6468         
   6469         Fixed constants to conform to WebKit.  These need to be shared.
   6470 
   6471 2002-08-27  David Hyatt  <hyatt (a] apple.com>
   6472 
   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.
   6477 
   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.
   6482 
   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
   6487 	views.
   6488 	
   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.
   6506 
   6507 2002-08-27  Darin Adler  <darin (a] apple.com>
   6508 
   6509 	- fixed 3031952 -- null-dereference in dispatchToUInt32 closing window
   6510 
   6511         * khtml/ecma/kjs_window.cpp: (History::getValueProperty):
   6512 	Use Undefined(), not Value() for an error result. Value() is pure evil.
   6513 
   6514 2002-08-27  Darin Adler  <darin (a] apple.com>
   6515 
   6516 	- fixed 3021018 -- Crash selecting from popup just after choosing radio button
   6517 
   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.
   6523 
   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.
   6530 
   6531         * kwq/WebCoreBridge.h: Add defersLoading and setDefersLoading. Both are already
   6532 	in WebKit.
   6533 
   6534 2002-08-26  David Hyatt  <hyatt (a] apple.com>
   6535 
   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).
   6540 	
   6541         * khtml/css/html4.css:
   6542 
   6543 2002-08-26  Darin Adler  <darin (a] apple.com>
   6544 
   6545         * khtml/rendering/render_list.cpp:
   6546 	Make file match the original KDE more closely (no substantive change).
   6547 
   6548 2002-08-26  Richard Williamson  <rjw (a] apple.com>
   6549 
   6550         * WebCore.exp:
   6551 
   6552         Added WebCoreHistory
   6553         
   6554         * WebCore.pbproj/project.pbxproj:
   6555 
   6556         Added WebCoreHistory
   6557         
   6558         * kwq/KWQKHistoryProvider.mm:
   6559         Use WebCoreHistory to determine visited link.
   6560         
   6561         * kwq/WebCoreHistory.h: Added.
   6562         * kwq/WebCoreHistory.m: Added.
   6563         
   6564         Stage 1.  Use WebKit's WebHistory.  Writing
   6565         of history and initialization still handled
   6566         by Alex until stage 2.
   6567         
   6568         (+[WebCoreHistory setSharedHistory:]):
   6569         (+[WebCoreHistory sharedHistory]):
   6570         (-[WebCoreHistory containsURL:]):
   6571 
   6572         * kwq/KWQString.mm:
   6573         (QString::compare):
   6574 
   6575         Optimization, use strcmp when both src and dst have valid ascii.
   6576         
   6577 
   6578 2002-08-26  David Hyatt  <hyatt (a] apple.com>
   6579 
   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
   6583 	  <ol> bullets.
   6584 	
   6585         * khtml/rendering/render_list.cpp:
   6586         (RenderListMarker::printObject):
   6587         * kwq/KWQPainter.mm:
   6588         (QPainter::drawText):
   6589 
   6590 2002-08-24  Darin Adler  <darin (a] apple.com>
   6591 
   6592 	- fixed 3032072 -- Crash on reload in DOM::DocumentImpl::~DocumentImpl [unified]()
   6593 
   6594 	This was a tough one to debug.
   6595 	Turned out to be a subtle bug in our new QConstString implementation.
   6596 
   6597         * kwq/KWQString.mm:
   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.
   6609 
   6610 	Fixed a separate QString problem; I think I may have introduced this one.
   6611 
   6612         * kwq/KWQString.mm:
   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.
   6619 
   6620 	Fixed a small storage leak.
   6621 
   6622         * khtml/css/css_valueimpl.cpp: (CSSPrimitiveValueImpl::cleanup): Added braces to
   6623 	fix obviously-incorrect if/else grouping.
   6624 
   6625 2002-08-23  Darin Adler  <darin (a] apple.com>
   6626 
   6627 	Got the kurl-test in the Tests directory working again.
   6628 
   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.
   6631 
   6632 2002-08-23  Darin Adler  <darin (a] apple.com>
   6633 
   6634 	- fixed 3032058 -- Links on local developer doc pages all broken (all local files?)
   6635 
   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.
   6638 
   6639         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyViewInFrame): Add a nil check.
   6640 	I ran into this because my frame failed to load.
   6641 
   6642 2002-08-23  Maciej Stachowiak  <mjs (a] apple.com>
   6643 
   6644 	A few more KURL changes that reduce it down to background noise
   6645 	level.
   6646 
   6647 	For me this gave another 1-2% improvement on cvs-base.
   6648 
   6649         * kwq/kdecore/kurl.h:
   6650         * kwq/KWQKURL.mm:
   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
   6653 	create a QString.
   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.
   6668 
   6669 2002-08-22  Darin Adler  <darin (a] apple.com>
   6670 
   6671         * force-clean-timestamp: Without this, I crash on startup.
   6672 
   6673 2002-08-22  Maciej Stachowiak  <mjs (a] apple.com>
   6674 
   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.
   6678 
   6679 	For me this gave a ~5% performance improvement on cvs-base.
   6680 	
   6681         * kwq/KWQKURL.mm:
   6682         (KURL::KURL):
   6683         (KURL::hasPath):
   6684         (KURL::protocol):
   6685         (KURL::host):
   6686         (KURL::port):
   6687         (KURL::pass):
   6688         (KURL::user):
   6689         (KURL::ref):
   6690         (KURL::query):
   6691         (KURL::path):
   6692         (KURL::setProtocol):
   6693         (KURL::setHost):
   6694         (KURL::setPort):
   6695         (KURL::setRef):
   6696         (KURL::setQuery):
   6697         (KURL::setPath):
   6698         (KURL::prettyURL):
   6699         (KURL::decode_string):
   6700         (escapeBadChars):
   6701         (KURL::parse):
   6702         (KURL::getNSURL):
   6703         * kwq/kdecore/kurl.h:
   6704         * khtml/khtml_part.cpp:
   6705         (KHTMLPart::end): Don't call KURL::clearCaches() any more.
   6706 
   6707 2002-08-22  Darin Adler  <darin (a] apple.com>
   6708 
   6709         * kwq/KWQButton.mm: (QButton::~QButton): Disconnect the view
   6710 	from the widget by doing setTarget:nil.
   6711         * kwq/KWQComboBox.mm: (QComboBox::~QComboBox): Ditto.
   6712 
   6713 2002-08-22  David Hyatt  <hyatt (a] apple.com>
   6714 
   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.
   6717 	
   6718         * khtml/css/html4.css:
   6719 
   6720 2002-08-22  Richard Williamson  <rjw (a] apple.com>
   6721 
   6722         New faster char * append (actually insert) for mjs.
   6723         
   6724         * kwq/KWQString.mm:
   6725         (QString::insert):
   6726         * kwq/qt/qstring.h:
   6727 
   6728 2002-08-22  Darin Adler  <darin (a] apple.com>
   6729 
   6730 	Some small QString improvements.
   6731 
   6732         * kwq/qt/qstring.h: Add printf attribute to sprintf member function.
   6733         * kwq/KWQString.mm:
   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.
   6748 
   6749 === Alexander-20 ===
   6750 
   6751 2002-08-22  Darin Adler  <darin (a] apple.com>
   6752 
   6753 	Fixed a one-click crasher that Ken and Don told me about.
   6754 
   6755         * kwq/KWQObject.mm: (QObject::QObject): Initialize m_eventFilterObject.
   6756 
   6757 2002-08-21  Darin Adler  <darin (a] apple.com>
   6758 
   6759 	- fixed 3021908 -- text areas should be plain text only
   6760 
   6761         * kwq/KWQTextArea.mm:
   6762         (-[KWQTextArea _createTextView]): setRichText:NO
   6763         (-[KWQTextArea dealloc]): Release the text view so we don't leak.
   6764 
   6765 2002-08-21  Darin Adler  <darin (a] apple.com>
   6766 
   6767         * kwq/KWQNSViewExtras.m: (-[NSClipView _KWQ_scrollRectToVisible:inView:]):
   6768 	Use bounds, not visibleRect. Seems to work better.
   6769 
   6770 2002-08-21  John Sullivan  <sullivan (a] apple.com>
   6771 
   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.
   6775 
   6776         * kwq/KWQKHTMLPartImpl.mm:
   6777         (KWQKHTMLPartImpl::overURL):
   6778 
   6779 2002-08-21  Darin Adler  <darin (a] apple.com>
   6780 
   6781 	Fix for two problems with password fields.
   6782 
   6783 	   1) Return wasn't working.
   6784  	   2) They were wrapping instead of scrolling.
   6785 
   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.
   6792 
   6793 2002-08-21  David Hyatt  <hyatt (a] apple.com>
   6794 
   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.
   6798 	
   6799         * khtml/html/html_tableimpl.cpp:
   6800         (HTMLTablePartElementImpl::parseAttribute):
   6801 
   6802 2002-08-21  Darin Adler  <darin (a] apple.com>
   6803 
   6804 	- fixed 3027927 -- selected text fields do not cause the web view to scroll to reveal them
   6805 
   6806         * kwq/KWQNSTextField.mm:
   6807         (-[KWQNSTextField becomeFirstResponder]): Call [self _KWQ_scrollFrameToVisible].
   6808         (-[KWQSecureTextField becomeFirstResponder]): Call [self _KWQ_scrollFrameToVisible].
   6809 
   6810         * kwq/KWQNSViewExtras.h: Added. New scrolling functions.
   6811         * kwq/KWQNSViewExtras.m: Added. New scrolling functions.
   6812         * WebCore.pbproj/project.pbxproj: Added KWQNSViewExtras.
   6813 
   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.
   6818 
   6819 	Unrelated change.
   6820 
   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.
   6824 
   6825 2002-08-21  Darin Adler  <darin (a] apple.com>
   6826 
   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.
   6830 
   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).
   6834 
   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
   6846 	a look at it.
   6847 
   6848         * kwq/qt/qwidget.h: Added new virtual baselinePosition function.
   6849         * kwq/KWQWidget.mm: (QWidget::baselinePosition): Default for baseline is the bottom.
   6850 
   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.
   6857 
   6858         * kwq/qt/qbutton.h:
   6859         * kwq/KWQButton.mm: Moved all the code that's push-button specific into QPushButton.
   6860 
   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).
   6871 
   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).
   6880 
   6881         * force-clean-timestamp: Yes, again.
   6882 
   6883 2002-08-20  Darin Adler  <darin (a] apple.com>
   6884 
   6885 	- fix 3028936 -- fields are not submitting the correct data if they are selected
   6886 	when you submit
   6887 
   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.
   6893 
   6894 2002-08-20  David Hyatt  <hyatt (a] apple.com>
   6895 
   6896 	Fix background positioning so that it works with table cells.
   6897 	This fixes the tabs on www.msn.com.
   6898 	
   6899         * khtml/rendering/render_box.cpp:
   6900         (RenderBox::printBackground):
   6901         * khtml/rendering/render_table.h:
   6902 
   6903 2002-08-20  Darin Adler  <darin (a] apple.com>
   6904 
   6905 	WebCore part of support for tabbing into and out of the toolbar.
   6906 
   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.
   6915 
   6916         * kwq/KWQNSTextField.mm: Update to call nextKeyViewForWidget.
   6917 
   6918         * kwq/WebCoreBridge.h: Added nextKeyViewInsideWebViews, previousKeyViewInsideWebViews,
   6919 	nextKeyViewOutsideWebViews, and previousKeyViewOutsideWebViews.
   6920 
   6921         * kwq/WebCoreBridge.mm:
   6922         (-[WebCoreBridge nextKeyViewInsideWebViews]): Call nextKeyViewInFrameHierarchy.
   6923         (-[WebCoreBridge previousKeyViewInsideWebViews]): Call nextKeyViewInFrameHierarchy.
   6924 
   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.
   6927 
   6928         * kwq/qt/qstring.h:
   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.
   6933 
   6934         * kwq/KWQDictImpl.mm:
   6935         * kwq/KWQKURL.mm:
   6936         * kwq/KWQStringList.mm:
   6937         * kwq/KWQtextcodec.mm:
   6938         * kwq/WebCoreBridge.mm:
   6939 	Use getCFString, not getCFMutableString.
   6940 
   6941 2002-08-19  Darin Adler  <darin (a] apple.com>
   6942 
   6943         * force-clean-timestamp: Richard's changes require a clean build.
   6944 
   6945 2002-08-19  Richard Williamson  <rjw (a] apple.com>
   6946 
   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().
   6958         
   6959         There appear to be a few small lingering leaks
   6960         that I need to track down.
   6961         
   6962         * WebCore-tests.exp:
   6963         
   6964         Added symbols for qstring-test.cpp.
   6965         
   6966         * khtml/css/cssstyleselector.cpp:
   6967         
   6968         Removed old string optimization hack.
   6969         
   6970         * kwq/KWQString.mm:
   6971         
   6972         Rewrite.
   6973         (_isOnStack):
   6974         (countInstance):
   6975         (allocatedBuffers):
   6976         (ALLOC_CHAR):
   6977         (REALLOC_CHAR):
   6978         (DELETE_CHAR):
   6979         (ALLOC_QCHAR):
   6980         (REALLOC_QCHAR):
   6981         (DELETE_QCHAR):
   6982         (_printQStringAllocationStatistics):
   6983         (ucstrcmp):
   6984         (ucstrncmp):
   6985         (ucstrnicmp):
   6986         (ok_in_base):
   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):
   7008         (QString::QString):
   7009         (QString::operator=):
   7010         (QString::at):
   7011         (QString::unicode):
   7012         (QString::compare):
   7013         (QString::startsWith):
   7014         (QString::endsWith):
   7015         (QString::latin1):
   7016         (QString::isNull):
   7017         (QString::find):
   7018         (QString::findRev):
   7019         (QString::contains):
   7020         (QString::toShort):
   7021         (QString::toUShort):
   7022         (QString::toInt):
   7023         (QString::toUInt):
   7024         (QString::toLong):
   7025         (QString::toULong):
   7026         (QString::toDouble):
   7027         (QString::findArg):
   7028         (QString::arg):
   7029         (QString::left):
   7030         (QString::right):
   7031         (QString::mid):
   7032         (QString::copy):
   7033         (QString::lower):
   7034         (QString::stripWhiteSpace):
   7035         (QString::simplifyWhiteSpace):
   7036         (QString::deref):
   7037         (QString::setUnicode):
   7038         (QString::setLatin1):
   7039         (QString::sprintf):
   7040         (QString::append):
   7041         (QString::insert):
   7042         (QString::detachInternal):
   7043         (QString::detach):
   7044         (QString::remove):
   7045         (QString::replace):
   7046         (QString::forceUnicode):
   7047         (QString::setLength):
   7048         (QString::truncate):
   7049         (QString::fill):
   7050         (QString::operator+=):
   7051         (QString::convertToQCString):
   7052         (operator==):
   7053         (QConstString::QConstString):
   7054         (QConstString::~QConstString):
   7055         (_initializeHandleNodeBlock):
   7056         (_allocatePageNode):
   7057         (_initializeHandleNodes):
   7058         (_allocateNode):
   7059         (allocateHandle):
   7060         (freeHandle):
   7061         
   7062         * kwq/qt/qstring.h:
   7063         Rewrite
   7064         
   7065 2002-08-19  Maciej Stachowiak  <mjs (a] apple.com>
   7066 
   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.
   7071 	
   7072 2002-08-19  Darin Adler  <darin (a] apple.com>
   7073 
   7074 	Fixed tab cycle on slashdot.org and elsewhere by being stricter about what is
   7075 	included in the tab cycle.
   7076 
   7077         * kwq/KWQWidget.mm: (QWidget::focusPolicy): Use the same rule as AppKit.
   7078 
   7079 2002-08-19  David Hyatt  <hyatt (a] apple.com>
   7080 
   7081 	Tweak baselines to look a little better for form controls.
   7082 	This will be redone by Darin to really baseline align... this
   7083 	is just temporary.
   7084 
   7085 	Also adding 3px margins to <input> and <textarea> and <select>.
   7086 	
   7087         * khtml/css/html4.css:
   7088         * khtml/rendering/render_form.cpp:
   7089         (RenderButton::baselinePosition):
   7090         (RenderSelect::baselinePosition):
   7091 
   7092 2002-08-19  Darin Adler  <darin (a] apple.com>
   7093 
   7094 	- fixed 3027791 -- Crash when pressing "tab" after going to http://slashdot.org/
   7095 
   7096         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyViewInFrame): Add null check.
   7097 
   7098 2002-08-19  Darin Adler  <darin (a] apple.com>
   7099 
   7100 	Put in more robust version of the next/previous key view checking
   7101 	that matches what I did in WebHTMLView.
   7102 
   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.
   7114 
   7115 	Unrelated change.
   7116 
   7117         * kwq/mac-encodings.txt: Add an encoding name of gb18030, since I saw mention of it in bug 3002016.
   7118 
   7119 2002-08-19  Darin Adler  <darin (a] apple.com>
   7120 
   7121 	Support so that WebKit can tab into a web view's fields.
   7122 
   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
   7128 	width and height.
   7129         (-[WebCoreBridge nextKeyView]): Call nextKeyView() with node == 0.
   7130         (-[WebCoreBridge previousKeyView]): Call nextKeyView() with node == 0.
   7131 
   7132 2002-08-19  Darin Adler  <darin (a] apple.com>
   7133 
   7134 	First cut at implementation of "tab to change focus": Lots of loose ends, but it's
   7135 	going well.
   7136 
   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.
   7152 
   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.
   7156 
   7157         * kwq/KWQKHTMLPartImpl.mm:
   7158         (KWQKHTMLPartImpl::nextKeyViewInFrame): Added.
   7159         (KWQKHTMLPartImpl::nextKeyView): Added.
   7160 
   7161         * kwq/qt/qwidget.h: Remove unneeded parameters from constructor. Also added a
   7162 	constructor that takes an NSView.
   7163         * kwq/KWQWidget.mm:
   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.
   7169 
   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.
   7173 
   7174 	Other changes related to KWQKHTMLPartImpl improvements.
   7175 
   7176         * kwq/KWQKHTMLPartBrowserExtension.mm:
   7177         * kwq/KWQKHTMLPartImpl.mm:
   7178         * kwq/KWQLoaderImpl.mm:
   7179         * kwq/WebCoreBridge.mm:
   7180 	Update for KWQKHTMLPartImpl member name changes.
   7181 
   7182 	Various improvements for other widget implementations.
   7183 
   7184         * kwq/qt/qbutton.h:
   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
   7190 	can override it.
   7191         (-[KWQButtonAdapter initWithQButton:]): Added.
   7192         (-[KWQButtonAdapter action:]): Just call clicked().
   7193 
   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
   7196 	QButton contructor.
   7197 
   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.
   7201 
   7202         * kwq/KWQRadioButton.mm:
   7203         (QRadioButton::QRadioButton): Don't pass unused parent pointer to
   7204 	QButton contructor.
   7205 
   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().
   7216 
   7217         * kwq/kdeui/kcombobox.h: Empty this out and make it use only inlines.
   7218 
   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
   7222 	intended to fix.
   7223 
   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.
   7227 
   7228         * kwq/kdeui/klineedit.h: Empty this out and make it use only inlines.
   7229 
   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.
   7237 
   7238         * WebCore.pbproj/project.pbxproj: Remove KWQKComboBox.mm, KWQKLineEdit.mm,
   7239 	and KWQScrollBar.h.
   7240         * kwq/KWQKComboBox.mm: Removed.
   7241         * kwq/KWQKLineEdit.mm: Removed.
   7242         * kwq/KWQScrollBar.h: Removed. Unused.
   7243 
   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
   7247 	initWithWidget.
   7248 
   7249         * kwq/KWQView.h: Eliminated KWQNSButton, KWQNSComboBox, and KWQNSScrollView.
   7250         * kwq/KWQView.mm: Ditto.
   7251 
   7252 	Housekeeping.
   7253 
   7254         * force-clean-timestamp: Yes, again.
   7255 
   7256         * khtml/khtml_part.h: Rearrange APPLE_CHANGES a bit.
   7257 
   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.
   7260 
   7261 2002-08-16  Darin Adler  <darin (a] apple.com>
   7262 
   7263         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::userAgent):
   7264 	Call bridge's userAgentForURL: method.
   7265         * kwq/WebCoreBridge.h: Added userAgentForURL: to the protocol
   7266 
   7267 2002-08-16  Darin Adler  <darin (a] apple.com>
   7268 
   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.
   7273 
   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.
   7278 
   7279         * kwq/KWQKHTMLPartImpl.h: Add userAgent member function.
   7280         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::userAgent): Added.
   7281 
   7282         * WebCore.pbproj/project.pbxproj: Removed KWQKProtocolManager.mm.
   7283         * kwq/KWQKProtocolManager.mm: Removed.
   7284         * kwq/kio/kprotocolmanager.h: Made empty.
   7285 
   7286 2002-08-16  Maciej Stachowiak  <mjs (a] apple.com>
   7287 
   7288         * force-clean-timestamp: Need to rebuild for JavaScriptCore changes.
   7289 
   7290 2002-08-16  Darin Adler  <darin (a] apple.com>
   7291 
   7292 	- fixed 3023851 -- screen garbage created by scrolling text
   7293 
   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).
   7299 
   7300         * khtml/rendering/render_box.cpp: (RenderBox::calcClip):
   7301 	Call addClip instead of clipRegion(), intersect(), setClipRegion().
   7302 
   7303         * kwq/qt/qpainter.h: Added addClip(), removed clipRegion(), setClipRegion().
   7304         * kwq/KWQPainter.mm: (QPainter::addClip): Calls [NSBezierPath clipRect:].
   7305 
   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().
   7308         * kwq/KWQRegion.mm:
   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].
   7315 
   7316 2002-08-16  Darin Adler  <darin (a] apple.com>
   7317 
   7318 	- fixed 3026042 -- hide frames button at developer documentation doesn't work
   7319 
   7320 	This regression was introduced by the anchor changes we made just after
   7321 	the Alexander-15 release.
   7322 
   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.
   7326 
   7327 2002-08-16  Maciej Stachowiak  <mjs (a] apple.com>
   7328 
   7329         * force-clean-timestamp: rebuild for JavaScriptCore changes.
   7330 
   7331 2002-08-16  David Hyatt  <hyatt (a] apple.com>
   7332 
   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.
   7336 	
   7337         * khtml/html/htmlparser.cpp:
   7338         (KHTMLParser::~KHTMLParser):
   7339         (KHTMLParser::reset):
   7340         (KHTMLParser::parseToken):
   7341         (KHTMLParser::insertNode):
   7342         * khtml/html/htmlparser.h:
   7343 
   7344 2002-08-15  Darin Adler  <darin (a] apple.com>
   7345 
   7346 	- fixed 2983959 -- pages that try to use JavaScript to focus fail to do so
   7347 
   7348         * kwq/KWQWidget.mm: (QWidget::setFocus): Call makeFirstResponder.
   7349 
   7350 2002-08-15  Darin Adler  <darin (a] apple.com>
   7351 
   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.
   7355 
   7356 	Got rid of the old Action system altogether, using signals now.
   7357 
   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
   7362 	the moment.
   7363         (RenderSubmitButton::baselinePosition): Just call the RenderButton version.
   7364 
   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.
   7373 
   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.
   7377 
   7378         * kwq/KWQListBox.h:
   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.
   7383 
   7384         * kwq/qt/qobject.h: Remove Actions, ACTION_TEXT_AREA_END_EDITING,
   7385 	ACTION_LISTBOX_CLICKED, ACTION_COMBOBOX_CLICKED, emitAction, performAction,
   7386 	and target.
   7387         * kwq/KWQObject.mm:
   7388         (QObject::connect): Remove the target hack, no longer needed.
   7389         (QObject::QObject): Remove target initialization.
   7390 
   7391         * kwq/KWQSlot.mm: (KWQSlot::KWQSlot), (KWQSlot::call):
   7392 	Added selected and selectionChanged slots.
   7393 
   7394         * kwq/KWQTextArea.mm:
   7395         (-[KWQTextArea textDidEndEditing:]): Removed code to emit the
   7396 	ACTION_TEXT_AREA_END_EDITING action, which was no longer used.
   7397 
   7398         * force-clean-timestamp: Yes, again.
   7399 
   7400 2002-08-15  Darin Adler  <darin (a] apple.com>
   7401 
   7402 	- fixed 3017376 -- button height is too tall
   7403 
   7404 	Reworked how widget sizing and positioning is done for a few of the most important
   7405 	widget types.
   7406 
   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.
   7419 
   7420         * kwq/qt/qbutton.h:
   7421         * kwq/KWQButton.mm:
   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.
   7449 
   7450         * kwq/qt/qwidget.h:
   7451         * kwq/KWQWidget.mm:
   7452         (QWidget::setFrameGeometry): New name for internalSetGeometry, now public.
   7453 
   7454 	- fixed 3010695 -- Slashdot.org starts with password field focused, but shouldn't
   7455 
   7456 	Added KWQSecureTextField to work around the bug.
   7457 
   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
   7462 	initializer.
   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
   7470 	place.
   7471         (-[KWQNSTextField setFrameSize:]): Added. Calls updateSecureFieldFrame.
   7472         (-[KWQNSTextField setPasswordMode:]): Change all the details, but this does the same
   7473 	thing it used to.
   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
   7479 	font.
   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
   7485 	bug in AppKit.
   7486         (-[KWQSecureTextField setFrameSize:]): Set flag to trigger selectText check.
   7487 
   7488 	- fixed 3025166 -- check boxes and radio buttons on google.com's preferences pages
   7489 	are not "linked"
   7490 
   7491 	We were not emitting onClicked for check boxes.
   7492 
   7493         * kwq/KWQView.h: No need to pass frames any more. Default is empty.
   7494         * kwq/KWQView.mm:
   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.
   7506 
   7507 	- fixed 3025211 -- find person in Apple directory never displays person information
   7508 
   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.
   7512 
   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.
   7520 
   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.
   7525 
   7526         * kwq/KWQKHTMLPartImpl.mm:
   7527         (KHTMLPart::started): Added. Calls slotChildStarted on parent.
   7528         (KHTMLPart::completed): Added slotParentCompleted calls.
   7529 
   7530         * kwq/qt/qobject.h: Add sender() and KWQObjectSenderScope.
   7531         * kwq/KWQObject.mm:
   7532         (KWQObjectSenderScope::KWQObjectSenderScope): Added. Sets sender() and saves the old value.
   7533         (KWQObjectSenderScope::~KWQObjectSenderScope): Added. Resets sender().
   7534 
   7535         * kwq/KWQSignal.h:
   7536         * kwq/KWQSlot.h:
   7537         * kwq/KWQSignal.mm: (KWQSignal::call): Added overloads for calling signals with int and
   7538 	QString parameters. Also set up sender() using KWQObjectSenderScope.
   7539 
   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.
   7542 
   7543         * kwq/KWQsignals.mm:
   7544         (Tokenizer::Tokenizer): Construct the finishedParsing signal.
   7545         (Tokenizer::finishedParsing): Emit the finishedParsing signal.
   7546 
   7547 	- fixed 3025170 -- right sides of borders placed incorrectly around table cells
   7548 
   7549 	There was some silly code that I just removed.
   7550 
   7551         * khtml/rendering/render_table.cpp:
   7552         (RenderTable::addColInfo): Turn off the half-assed collapse borders stuff here.
   7553 
   7554 	- other changes
   7555 
   7556         * force-clean-timestamp: Big changes; full rebuild needed.
   7557 
   7558         * khtml/khtmlview.cpp: (KHTMLView::~KHTMLView): Make the code to kill
   7559 	the timers be unconditional, just in case.
   7560 
   7561         * kwq/KWQCharsets.mm: (buildDictionaries): Remove UTF-16 special case since it's now
   7562 	in the character sets table.
   7563 
   7564         * kwq/qt/qpoint.h:
   7565         * kwq/KWQPoint.mm:
   7566         (QPoint::QPoint): Converts from NSPoint.
   7567         (QPoint::operator NSPoint): Converts to NSPoint.
   7568         * kwq/qt/qrect.h:
   7569         * kwq/KWQRect.mm:
   7570         (QRect::QRect): Converts from NSRect.
   7571         (QRect::isEmpty): Fix backwards logic.
   7572         (QRect::operator NSRect): Converts to NSRect.
   7573         * kwq/qt/qsize.h:
   7574         * kwq/KWQSize.mm:
   7575         (QSize::QSize): Converts from NSSize.
   7576         (QSize::operator NSSize): Converts to NSSize.
   7577 
   7578         * kwq/qt/qpushbutton.h:
   7579         * kwq/KWQPushButton.mm: Removed unused methods.
   7580 
   7581         * kwq/KWQRegion.mm: Use new QPoint/NSPoint/QRect/NSRect functions.
   7582 
   7583         * kwq/KWQScrollView.mm: (QScrollView::addChild): Update comment.
   7584 
   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.
   7589 
   7590         * kwq/KWQTextEdit.mm: (QTextEdit::QTextEdit): Don't pass an empty frame any more.
   7591 
   7592         * kwq/KWQWindowWidget.h:
   7593         * kwq/KWQWindowWidget.mm: Update for name change.
   7594 
   7595         * kwq/WebCoreTestController.h: Placeholder for the feature I should be working on.
   7596 
   7597 === Alexander-19 ===
   7598 
   7599 === Alexander-18 ===
   7600 
   7601 2002-08-15  Maciej Stachowiak  <mjs (a] apple.com>
   7602 
   7603         * force-clean-timestamp: Need to rebuild for JavaScriptCore
   7604 	changes.
   7605 
   7606 2002-08-14  David Hyatt  <hyatt (a] apple.com>
   7607 
   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.
   7613 	
   7614         * khtml/rendering/render_table.cpp:
   7615         (RenderTable::layoutRows):
   7616 
   7617 2002-08-14  David Hyatt  <hyatt (a] apple.com>
   7618 
   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!
   7622 	
   7623         * khtml/html/html_baseimpl.cpp:
   7624         (HTMLBodyElementImpl::parseAttribute):
   7625 
   7626 2002-08-14  David Hyatt  <hyatt (a] apple.com>
   7627 
   7628 	Ensure that a rendering object gets built for <fieldset>
   7629 	elements.  Content inside a <fieldset> was being discarded
   7630 	and not rendered.
   7631 
   7632 	This fixes the top frame on blogger comment posting so that
   7633 	it shows up properly.
   7634 	
   7635         * khtml/html/html_formimpl.cpp:
   7636         (HTMLFieldSetElementImpl::attach):
   7637         * khtml/html/html_formimpl.h:
   7638 
   7639 2002-08-14  Darin Adler  <darin (a] apple.com>
   7640 
   7641 	Fix the build.
   7642 
   7643         * khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::putValue):
   7644 	Add braces and fix a syntax error.
   7645 
   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.
   7649 
   7650         * kwq/make-charset-table.pl: Allow comments.
   7651 
   7652 2002-08-14  Maciej Stachowiak  <mjs (a] apple.com>
   7653 
   7654 	Fixed a JavaScript object leak that was plaguing ign.com and
   7655 	livepage.apple.com, among other things.
   7656 	
   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.
   7661 
   7662 2002-08-14  Maciej Stachowiak  <mjs (a] apple.com>
   7663 
   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
   7668 	better later).
   7669 
   7670 2002-08-13  Maciej Stachowiak  <mjs (a] apple.com>
   7671 
   7672 	Add the ability to determine the classes of live JavaScript
   7673 	objects, to help with leak fixing.
   7674 
   7675         * kwq/WebCoreJavaScript.h:
   7676         * kwq/WebCoreJavaScript.mm:
   7677         (+[WebCoreJavaScript liveObjectClasses]):
   7678 
   7679 2002-08-13  David Hyatt  <hyatt (a] apple.com>
   7680 
   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.  
   7685 
   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.
   7690 
   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
   7696 	after my changes.)
   7697 
   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.
   7701 	
   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:
   7712 
   7713 2002-08-13  Darin Adler  <darin (a] apple.com>
   7714 
   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.
   7719 
   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.
   7727 
   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.
   7732 
   7733 2002-08-13  Darin Adler  <darin (a] apple.com>
   7734 
   7735 	- fixed 3023439 -- support for windows-874 charset for thai
   7736 
   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.
   7740 
   7741 2002-08-13  Darin Adler  <darin (a] apple.com>
   7742 
   7743 	Some QRegion fixes inspired by Dave's clipping work.
   7744 
   7745         * kwq/qt/qregion.h: Add setClip, remove getNSBezierPath.
   7746         * kwq/KWQRegion.mm:
   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
   7758 	paths in the array.
   7759         (QRegion::setClip): Call setClip on the first path, and addClip on the others.
   7760 
   7761         * kwq/KWQPainter.mm: (QPainter::setClipRegion): Use QRegion::setClip().
   7762 
   7763 2002-08-12  David Hyatt  <hyatt (a] apple.com>
   7764 
   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.
   7768 	
   7769         * khtml/rendering/render_flow.cpp:
   7770         (RenderFlow::layoutBlockChildren):
   7771 
   7772 2002-08-12  David Hyatt  <hyatt (a] apple.com>
   7773 
   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.
   7778 	
   7779         * kwq/KWQPainter.mm:
   7780         (QPainter::xForm):
   7781         (QPainter::save):
   7782         (QPainter::restore):
   7783         (QPainter::setClipRegion):
   7784         * kwq/qt/qregion.h:
   7785 
   7786 2002-08-12  David Hyatt  <hyatt (a] apple.com>
   7787 
   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
   7794 	of 0 for inlines).
   7795 	
   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):
   7807 
   7808 2002-08-12  Darin Adler  <darin (a] apple.com>
   7809 
   7810         * khtml/misc/loader.cpp: (Cache::insertInLRUList):
   7811 	Add missing piece of the last check-in.
   7812 
   7813 2002-08-12  Darin Adler  <darin (a] apple.com>
   7814 
   7815 	At Ken's urging, fixed the loader cache to be more efficient.
   7816 	Gives 1% on the cvs-base test.
   7817 
   7818         * force-clean-timestamp: This requires a full rebuild.
   7819 
   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.
   7843 
   7844         * kwq/KWQLoaderImpl.mm: (KWQCheckIfReloading):
   7845         * kwq/WebCoreBridge.h:
   7846 	Change dataSourceIsReloading to isReloading.
   7847 
   7848 2002-08-12  David Hyatt  <hyatt (a] apple.com>
   7849 
   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.
   7853 
   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).
   7857 	
   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:
   7865 
   7866 2002-08-12  Darin Adler  <darin (a] apple.com>
   7867 
   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.
   7871 
   7872 2002-08-12  Darin Adler  <darin (a] apple.com>
   7873 
   7874 	- re-fixed 2948387 -- stop button flashes to "go" two extra times while loading citibank.com
   7875 
   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.
   7879 
   7880         * khtml/khtml_part.cpp: (KHTMLPart::scheduleRedirection): Remove APPLE_CHANGES so we don't
   7881 	try to redirect until the page is complete.
   7882 
   7883 === Alexander-17 ===
   7884 
   7885 2002-08-10  Ken Kocienda  <kocienda (a] apple.com>
   7886 
   7887 	Check box in target setting panel to enable prebinding.
   7888 
   7889         * WebCore.pbproj/project.pbxproj
   7890 
   7891 2002-08-10  Ken Kocienda  <kocienda (a] apple.com>
   7892 
   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.
   7895 
   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:
   7904 
   7905 2002-08-09  Darin Adler  <darin (a] apple.com>
   7906 
   7907         * force-clean-timestamp: JavaScriptCore headers changed that require a full build here.
   7908 
   7909 2002-08-09  Darin Adler  <darin (a] apple.com>
   7910 
   7911 	- fixed 3018063 -- frame problems at directory.apple.com
   7912         - fixed 3021484 -- Go to "xxxx" mouseover status message should not show ".."
   7913 
   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.
   7916 
   7917         * khtml/khtml_part.cpp: (KHTMLPart::openURLInFrame): Don't compile this
   7918 	function at all any more.
   7919 
   7920         * kwq/KWQKHTMLPartBrowserExtension.mm:
   7921         (KHTMLPartBrowserExtension::openURLRequest): Call the impl's openURLRequest
   7922 	instead of calling the part's openURLInFrame. Clearer.
   7923 
   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.
   7937 
   7938 2002-08-09  Darin Adler  <darin (a] apple.com>
   7939 
   7940 	- fixed 2945441 -- base target is ignored
   7941 
   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.
   7946 
   7947 === milestone 0.5 ===
   7948 
   7949 === Alexander-16 ===
   7950 
   7951 2002-08-09  Darin Adler  <darin (a] apple.com>
   7952 
   7953 	- fixed 3020594 -- crash in KWQKHTMLPartImpl::end() visiting particular page
   7954 
   7955         * khtml/khtml_part.cpp: (KHTMLPart::end): Our hacked alternative to a signal
   7956 	requires a NULL check.
   7957 
   7958 2002-08-08  Maciej Stachowiak  <mjs (a] apple.com>
   7959 
   7960 	Fix to get onLoad to fire, so the iBench test works.
   7961 	
   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
   7970 	parent.
   7971         (KWQKHTMLPartImpl::requestFrame): Initialize m_part
   7972         * kwq/WebCoreBridge.h: createChildFrameNamed method now returns
   7973 	the bridge for the child frame.
   7974 
   7975 2002-08-08  Richard Williamson  <rjw (a] apple.com>
   7976 
   7977         Move stuff out of core into kit.
   7978         
   7979         * kwq/WebCoreBridge.mm:
   7980         (-[WebCoreBridge drawRect:withPainter:]):
   7981         * kwq/WebCoreTextRendererFactory.h:
   7982         * kwq/WebCoreTextRendererFactory.m:
   7983 
   7984 2002-08-08  Darin Adler  <darin (a] apple.com>
   7985 
   7986 	- fixed 3019353 -- Japanese (Autodetect) encoding not properly supported
   7987 
   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.
   7990 
   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".
   7996 
   7997 	Placeholders for the "drawing observer" method that I'll be using
   7998 	to implement the "dump page as diffable text" feature.
   7999 
   8000         * kwq/WebCoreTestController.h: Added.
   8001         * kwq/WebCoreTestController.m: Added.
   8002         * WebCore.exp: Mention new class.
   8003         * WebCore.pbproj/project.pbxproj: Mention new files.
   8004 
   8005 2002-08-08  Maciej Stachowiak  <mjs (a] apple.com>
   8006 
   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
   8009 	in WebKit.
   8010 
   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.
   8017 
   8018 2002-08-08  Richard Williamson  <rjw (a] apple.com>
   8019 
   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.
   8025         
   8026         * kwq/WebCoreBridge.mm:
   8027         (-[WebCoreBridge drawRect:withPainter:]):
   8028         * kwq/WebCoreTextRendererFactory.h:
   8029         * kwq/WebCoreTextRendererFactory.m:
   8030         (-[WebCoreTextRendererFactory endCoalesceTextDrawing]):
   8031         (-[WebCoreTextRendererFactory startCoalesceTextDrawing]):
   8032 
   8033 2002-08-07  Maciej Stachowiak  <mjs (a] apple.com>
   8034 
   8035 	WebCore work for:
   8036 
   8037 	- fixed 2956008 - Need API for getting/setting text encoding for current page
   8038 
   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.
   8049 
   8050 2002-08-07  David Hyatt  <hyatt (a] apple.com>
   8051 
   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.
   8055 	
   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:
   8068 
   8069 2002-08-07  Darin Adler  <darin (a] apple.com>
   8070 
   8071 	- fixed 3017499 -- One-click crasher at hondamotorcycle.com
   8072 
   8073         * kwq/KWQKURL.mm: (operator==): Just compare the strings.
   8074 	Faster and safer.
   8075 
   8076 2002-08-07  Richard Williamson  <rjw (a] apple.com>
   8077         
   8078         Removed debug log.
   8079         
   8080         * kwq/KWQFrame.mm:
   8081         (QFrame::setFrameStyle):
   8082         * kwq/WebCoreBridge.mm:
   8083         (-[WebCoreBridge drawRect:withPainter:]):
   8084 
   8085 2002-08-07  Darin Adler  <darin (a] apple.com>
   8086 
   8087         * kwq/KWQKURL.mm: (KURL::KWQKURLPrivate::decompose): Use CFURLCopyPath
   8088 	instead calling _NSParseStringToGenericURLComponents.
   8089 
   8090 2002-08-07  Richard Williamson  <rjw (a] apple.com>
   8091 
   8092         Turned off temporary debugging I accidentally checked in.
   8093         
   8094         * kwq/WebCoreBridge.mm:
   8095         (-[WebCoreBridge drawRect:withPainter:]):
   8096 
   8097 2002-08-06  David Hyatt  <hyatt (a] apple.com>
   8098 
   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.
   8102 		
   8103         * khtml/khtml_part.cpp:
   8104         (KHTMLPart::reparseConfiguration):
   8105         * khtml/xml/dom_docimpl.cpp:
   8106         (DocumentImpl::setUserStyleSheet):
   8107         * kwq/WebCoreBridge.mm:
   8108         (-[WebCoreBridge reapplyStyles]):
   8109 
   8110 2002-08-06  David Hyatt  <hyatt (a] apple.com>
   8111 
   8112 	Enable user stylesheet support.  It works from a fresh start but
   8113 	is not yet completely dynamic.
   8114 	
   8115         * khtml/khtml_part.cpp:
   8116         (KHTMLPart::setUserStyleSheet):
   8117         * kwq/KWQKHTMLSettings.mm:
   8118         (KHTMLSettings::userStyleSheet):
   8119 
   8120 2002-08-06  Darin Adler  <darin (a] apple.com>
   8121 
   8122 	- fixed 2965321 -- Crash on window close in kthml::Loader::cancelRequests from particular page
   8123 
   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.
   8129 
   8130 2002-08-06  John Sullivan  <sullivan (a] apple.com>
   8131 
   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.
   8136 
   8137 2002-08-06  Darin Adler  <darin (a] apple.com>
   8138 
   8139         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::overURL):
   8140 	Fix crash in overURL, another case just like bug 3006336.
   8141 
   8142 2002-08-06  Richard Williamson  <rjw (a] apple.com>
   8143 
   8144         Frame resizing related changes.  Frames are now resizable
   8145         w/ a resize bar.  Still need to draw frame borders.
   8146         
   8147         * khtml/rendering/render_frames.cpp:
   8148         (RenderFrameSet::userResize):
   8149         (RenderFrame::slotViewCleared):
   8150         * kwq/KWQFrame.mm:
   8151         (QFrame::setFrameStyle):
   8152         (QFrame::frameStyle):
   8153         (QFrame::frameWidth):
   8154         * kwq/KWQWidget.mm:
   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:]):
   8164         * kwq/qt/qframe.h:
   8165         * kwq/qt/qwidget.h:
   8166 
   8167 2002-08-06  Maciej Stachowiak  <mjs (a] apple.com>
   8168 
   8169 	Removed some APPLE_CHANGES no longer needed after the part change.
   8170 	
   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.
   8178 
   8179 2002-08-06  David Hyatt  <hyatt (a] apple.com>
   8180 
   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.)
   8185 	
   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):
   8194 
   8195 2002-08-06  John Sullivan  <sullivan (a] apple.com>
   8196 
   8197 	WebCore part of fix for 2915396 -- implement larger/smaller font
   8198 	or page zoom functionality
   8199 
   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
   8203 	our model.
   8204 
   8205 2002-08-06  Darin Adler  <darin (a] apple.com>
   8206 
   8207         * kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::urlSelected):
   8208 	Put in a check for nil that I missed.
   8209 
   8210 2002-08-06  Darin Adler  <darin (a] apple.com>
   8211 
   8212 	- fixed 2948805 -- Need WebKit API for larger/smaller font feature
   8213 
   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.
   8222 	No longer needed.
   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.
   8244 
   8245 2002-08-05  Maciej Stachowiak  <mjs (a] apple.com>
   8246 
   8247 	Fixed crashers and leaks that come up when changing the view
   8248 	associated with a part.
   8249 	
   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.
   8253 
   8254         * kwq/WebCoreBridge.mm:
   8255         (-[WebCoreBridge createKHTMLViewWithNSView:width:height:marginWidth:marginHeight:]):
   8256 	Destroy the old view if we own it.
   8257 
   8258 2002-08-05  Darin Adler  <darin (a] apple.com>
   8259 
   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.
   8268 
   8269 2002-08-05  Maciej Stachowiak  <mjs (a] apple.com>
   8270 
   8271 	- fixed 3007072 - need to be able to build fat
   8272 	
   8273         * WebCore.pbproj/project.pbxproj: Fixed DeploymentFat build.
   8274 
   8275 2002-08-05  Darin Adler  <darin (a] apple.com>
   8276 
   8277 	- fixed 3016374 -- Change font default from small back to medium
   8278 
   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.
   8289 
   8290 	Do a little bit of wiring for the "text size multiplier" feature.
   8291 
   8292         * kwq/WebCoreBridge.h:
   8293         * kwq/WebCoreBridge.mm: (-[WebCoreBridge setTextSizeMultiplier:]): Added.
   8294 
   8295 2002-08-05  Darin Adler  <darin (a] apple.com>
   8296 
   8297 	- fixed 3009321 -- bookmark and history menus show black square for (tm)
   8298 
   8299         * khtml/html/htmltokenizer.cpp:
   8300         (HTMLTokenizer::parseSpecial): Call fixUpChar.
   8301         (HTMLTokenizer::parseText): Call fixUpChar.
   8302         (HTMLTokenizer::parseTag): Call fixUpChar.
   8303 
   8304 2002-08-05  Darin Adler  <darin (a] apple.com>
   8305 
   8306         - fixed 3016795 -- http://www.google.co.il/ fails to decode
   8307 
   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.
   8311 
   8312 2002-08-05  Maciej Stachowiak  <mjs (a] apple.com>
   8313 
   8314         * kwq/KWQKHTMLPartImpl.mm:
   8315         (KWQKHTMLPartImpl::slotData): Simplified a bit.
   8316 
   8317 2002-08-05  Maciej Stachowiak  <mjs (a] apple.com>
   8318 
   8319         Merged KHTMLPart::end method with khtml original.
   8320 
   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.
   8328         * kwq/KWQKURL.mm:
   8329         (KURL::encodedHtmlRef): Implemented.
   8330         (KURL::htmlRef): Implemented.
   8331         * kwq/WebCoreBridge.h:
   8332         * kwq/WebCoreBridge.mm:
   8333 	(-[WebCoreBridge scrollToBaseAnchor]): Removed. No longer needed.
   8334 	
   8335 2002-08-05  Maciej Stachowiak  <mjs (a] apple.com>
   8336 
   8337         Merged KHTMLPart::openURL method with khtml original.
   8338 
   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.
   8345 
   8346 2002-08-05  Maciej Stachowiak  <mjs (a] apple.com>
   8347 
   8348         Merged KHTMLPart::begin method with khtml original.
   8349 
   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
   8359 	string.
   8360         * kwq/kdecore/kurl.h: Implemented isValid as inline method.
   8361 
   8362 2002-08-04  David Hyatt  <hyatt (a] apple.com>
   8363 
   8364 	Fix my bungled CSS for input fields in the user agent style
   8365 	sheet.
   8366 	
   8367         * khtml/css/html4.css:
   8368 
   8369 2002-08-03  Darin Adler  <darin (a] apple.com>
   8370 
   8371 	- fixed 2943519 - &#149; is rendered as an asterisk rather than a bullet
   8372 
   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.
   8379 
   8380 2002-08-02  Darin Adler  <darin (a] apple.com>
   8381 
   8382 	- fixed 3015522 -- crash decoding http://www.haaretz.co.il/
   8383 
   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
   8388 	us crash.
   8389 
   8390 	- fixed 2949235 -- checkboxes in wrong place until you scroll away and back
   8391 
   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.
   8395 
   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.
   8399 
   8400         * khtml/rendering/render_root.cpp: (RenderRoot::layout): Call a KWQ function
   8401 	so we can do some work at layout time.
   8402 
   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.
   8407 
   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.
   8413 
   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.
   8419         * kwq/KWQObject.mm:
   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.
   8425 
   8426         * khtml/khtml_part.cpp:
   8427         (KHTMLPart::init): Move the code that connects the redirection timer out
   8428 	of APPLE_CHANGES.
   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.
   8439 
   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.
   8445 
   8446         * khtml/misc/loader.h: Simplify APPLE_CHANGES ifdefs since all slots are now public.
   8447 
   8448        * force-clean-timestamp: Touch this since header files were changed.
   8449 
   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.
   8458 
   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.
   8466 
   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.
   8470 
   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.
   8480 
   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.
   8485 
   8486         * kwq/qt/qtimer.h:
   8487         * kwq/KWQTimer.mm:
   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.
   8496 
   8497         * kwq/WebCoreBridge.h: Changed name of gotoAnchor to scrollToAnchor. Added client redirect
   8498 	methods.
   8499         * kwq/WebCoreBridge.mm: (-[WebCoreBridge scrollToAnchor:]): Changed name.
   8500 
   8501 2002-08-02  David Hyatt  <hyatt (a] apple.com>
   8502 
   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.
   8514 	
   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:
   8522         * kwq/KWQButton.mm:
   8523         (QButton::QButton):
   8524         (QButton::sizeHint):
   8525         * kwq/KWQComboBox.mm:
   8526         (QComboBox::init):
   8527         * kwq/KWQLineEdit.mm:
   8528         (QLineEdit::cursorPosition):
   8529         (QLineEdit::setFont):
   8530         * kwq/KWQNSTextField.mm:
   8531         (-[KWQNSTextField initWithFrame:widget:]):
   8532         * kwq/KWQView.mm:
   8533         (-[KWQNSButtonCell cellSizeForBounds:]):
   8534         (+[KWQNSButton initialize]):
   8535         * kwq/WebCoreTextRendererFactory.h:
   8536         * kwq/WebCoreTextRendererFactory.m:
   8537         (-[WebCoreTextRendererFactory fontWithFamily:traits:size:]):
   8538         * kwq/qt/qbutton.h:
   8539         * kwq/qt/qlineedit.h:
   8540 
   8541 2002-08-01  Darin Adler  <darin (a] apple.com>
   8542 
   8543         - fixed 2841277 -- support for charset=gb2312
   8544 
   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
   8547 	character set.
   8548 
   8549 2002-08-01  Maciej Stachowiak  <mjs (a] apple.com>
   8550 
   8551 	Remove KWQKHTMLPartImpl's setBaseURL method and m_baseURL field,
   8552 	since nothing should really need them any more.
   8553 	
   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.
   8561 
   8562 2002-08-01  Richard Williamson  <rjw (a] apple.com>
   8563 
   8564         Added method to allow WebKit to direct khtml to
   8565         goto to an anchor point.  Need for back/forward.
   8566         
   8567         * kwq/KWQKHTMLPartImpl.mm:
   8568         (KWQKHTMLPartImpl::urlSelected):
   8569         * kwq/WebCoreBridge.h:
   8570         * kwq/WebCoreBridge.mm:
   8571         (-[WebCoreBridge gotoAnchor:]):
   8572 
   8573 2002-08-01  Ken Kocienda  <kocienda (a] apple.com>
   8574 
   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.
   8577 
   8578         * khtml/misc/loader.cpp
   8579 
   8580 === Alexander-15 ===
   8581 
   8582 2002-08-01  Maciej Stachowiak  <mjs (a] apple.com>
   8583 
   8584         Restored the original KHTMLPart::write() now that none of our
   8585 	changes in the impl version are beneficial in any way.
   8586 
   8587 	* khtml/khtml_part.cpp:
   8588         (KHTMLPart::write): Restore original code in lieue of calling impl
   8589 	version.
   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.
   8595 
   8596 2002-08-01  Maciej Stachowiak  <mjs (a] apple.com>
   8597 
   8598 	Removed m_documentSource and remaining ill-conceived uses thereof.
   8599 	
   8600         * kwq/KWQKHTMLPartImpl.h:
   8601         * kwq/KWQKHTMLPartImpl.mm:
   8602         (KWQKHTMLPartImpl::openURL): Don't initialize it.
   8603         (KWQKHTMLPartImpl::write): Don't use it.
   8604 
   8605 2002-08-01  Maciej Stachowiak  <mjs (a] apple.com>
   8606 
   8607         Remove stuff formerly useful for "View Reconstructed Source"
   8608 	feature but now useless.
   8609 
   8610 	* kwq/KWQKHTMLPartImpl.h:
   8611         * kwq/KWQKHTMLPartImpl.mm:
   8612 	(KWQKHTMLPartImpl::documentSource): Removed.
   8613         * kwq/WebCoreBridge.h:
   8614         * kwq/WebCoreBridge.mm:
   8615 	(-[WebCoreBridge documentTextFromDOM]): Removed.
   8616 
   8617 2002-07-31  Darin Adler  <darin (a] apple.com>
   8618 
   8619         * kwq/qt/qptrvector.h:
   8620         * kwq/qt/qvector.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.
   8626 
   8627         * WebCore-tests.exp: Remove old QVector entry points and add new ones.
   8628 
   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.
   8633 
   8634         * khtml/css/cssparser.cpp: Removed the APPLE_CHANGES around a change that's
   8635 	fine for non-Apple use as well.
   8636 
   8637 2002-07-30  Maciej Stachowiak  <mjs (a] apple.com>
   8638 
   8639 	Fixes of various bugs that prevented Alexander from running the
   8640 	Mozilla page load test.
   8641 
   8642 	- fixed 3008682 - Alexander cannot run Mozilla-PLT
   8643 
   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
   8649 	to a const char *.
   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.
   8657 
   8658 2002-07-30  Richard Williamson  <rjw (a] apple.com>
   8659 
   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.
   8666         
   8667         * kwq/KWQColor.mm:
   8668         (decodeColorFromHexColorString):
   8669 
   8670 2002-07-30  David Hyatt  <hyatt (a] apple.com>
   8671 
   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. :)
   8674 	
   8675         * khtml/rendering/render_table.cpp:
   8676         (RenderTable::addColumns):
   8677         (RenderTable::addColInfo):
   8678 
   8679 2002-07-30  David Hyatt  <hyatt (a] apple.com>
   8680 
   8681 	Backing myself out again.  No crashes, but now pages stall.
   8682 	#*^&*#@^%*&!!!!
   8683 	
   8684         * khtml/rendering/render_table.cpp:
   8685         (RenderTable::recalcColInfo):
   8686         (RenderTable::addColInfo):
   8687 
   8688 2002-07-30  David Hyatt  <hyatt (a] apple.com>
   8689 
   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
   8693 	information.
   8694 	
   8695         * khtml/rendering/render_table.cpp:
   8696         (RenderTable::addColumns):
   8697         (RenderTable::recalcColInfo):
   8698         (RenderTable::addColInfo):
   8699         (RenderTable::calcMinMaxWidth):
   8700         * khtml/rendering/render_table.h:
   8701 
   8702 2002-07-30  Richard Williamson  <rjw (a] apple.com>
   8703 
   8704         Inline critical function.
   8705         
   8706         * kwq/KWQString.mm:
   8707         (compareToLatinCharacter):
   8708 
   8709 2002-07-30  Richard Williamson  <rjw (a] apple.com>
   8710 
   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.
   8714         
   8715         * khtml/css/cssparser.cpp:
   8716 
   8717 2002-07-30  Darin Adler  <darin (a] apple.com>
   8718 
   8719         * khtml/css/makevalues: Fail if we don't find gperf.
   8720 
   8721 2002-07-30  David Hyatt  <hyatt (a] apple.com>
   8722 
   8723 	Back myself out. I seem to have stumbled onto another bug.
   8724 	Until I figure it out, turn this back off.
   8725 	
   8726         * khtml/rendering/render_table.cpp:
   8727         (RenderTable::addColumns):
   8728         (RenderTable::addColInfo):
   8729 
   8730 2002-07-30  David Hyatt  <hyatt (a] apple.com>
   8731 
   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).
   8735 	Yay!
   8736 	
   8737         * khtml/rendering/render_table.cpp:
   8738         (RenderTable::recalcColInfo):
   8739         (RenderTable::addColInfo):
   8740 
   8741 2002-07-29  David Hyatt  <hyatt (a] apple.com>
   8742 
   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.
   8747 
   8748 	Also removing the #ifndef around the layout scheduler.  This fixes
   8749 	:hover feedback and reflows from things like the marquee on
   8750 	livepage.apple.com.
   8751 	
   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:
   8758 
   8759 2002-07-29  Darin Adler  <darin (a] apple.com>
   8760 
   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
   8763 
   8764         * force-clean-timestamp: Make everyone do a make clean because dependencies won't do
   8765 	the right thing.
   8766 
   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. 
   8771 
   8772         * kwq/WebCoreBridge.mm: (-[WebCoreBridge jumpToSelection]): Go straight to the impl.
   8773 
   8774         * WebCore-tests.exp: One new export needed for tests with change to qstring.h.
   8775 
   8776         * kwq/qt/qevent.h:
   8777         * kwq/KWQEvent.mm: Removed unused stuff.
   8778 
   8779         * kwq/KWQKHTMLPartImpl.h: Removed redirectURL(); we now use KHTMLPart::slotRedirect().
   8780 
   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.
   8787 
   8788         * kwq/kdeui/kmessagebox.h:
   8789         * kwq/KWQKMessageBox.mm: (KMessageBox::questionYesNo): Added dontAskAgain string parameter.
   8790 	Before, it was being turned into a bool!
   8791 
   8792         * kwq/KWQKProtocolManager.mm: Tweak and add FIXME.
   8793 
   8794         * kwq/qt/qstring.h: Remove implicit conversion to const char *, which causes only pain.
   8795         * kwq/KWQString.mm:
   8796         (QString::find): Add caseSensitive parameter to the QString overload of this.
   8797         (QString::contains): Add a QString version of this.
   8798 
   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.
   8801 
   8802 2002-07-29  Richard Williamson  <rjw (a] apple.com>
   8803 
   8804         Fixed 3009074.  Added KHTMLPart::jumpToSelection and related scaffolding (part impl, bridge, etc.)
   8805         
   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]):
   8815 
   8816 2002-07-29  Richard Williamson  <rjw (a] apple.com>
   8817 
   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.
   8822 
   8823         * kwq/KWQString.mm:
   8824         (compareToLatinCharacter):
   8825         (QString::find):
   8826 
   8827 2002-07-26  David Hyatt  <hyatt (a] apple.com>
   8828 
   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.
   8834 	
   8835         * kwq/KWQKProtocolManager.mm:
   8836         (KProtocolManager::userAgentForHost):
   8837 
   8838 2002-07-26  David Hyatt  <hyatt (a] apple.com>
   8839 
   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.
   8845 	
   8846         * khtml/rendering/render_table.cpp:
   8847         (RenderTableCell::calcMinMaxWidth):
   8848 
   8849 2002-07-25  Darin Adler  <darin (a] apple.com>
   8850 
   8851         * WebCore.pbproj/project.pbxproj: Add DeploymentFat build style.
   8852 
   8853 	- fixed 3007532 -- Main documentation frame doesn't load on Apple docs page
   8854 
   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.
   8859 
   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.
   8864 
   8865         * kwq/KWQKHTMLPartImpl.h:
   8866         * kwq/KWQKHTMLPartImpl.mm: Removed paint, buildViewsNotYetAddedSet, viewsNotYetAdded,
   8867 	and addedWidget.
   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.
   8871 
   8872         * kwq/KWQWidget.mm: (QWidget::internalSetGeometry): Left in a couple of asserts that
   8873 	were useful in narrowing this one down.
   8874 
   8875 2002-07-25  David Hyatt  <hyatt (a] apple.com>
   8876 
   8877 	Floated images using "align" should have margins to prevent the text from running right
   8878 	up against them.  Matches IE and Mozilla behavior.
   8879 	
   8880         * khtml/css/html4.css:
   8881 
   8882 2002-07-25  David Hyatt  <hyatt (a] apple.com>
   8883 
   8884 	Fix <blockquote> tags to have top and bottom margins of 1em.  This matches the <blockquote>
   8885 	behavior in Gecko.
   8886 	
   8887         * khtml/css/html4.css:
   8888 
   8889 2002-07-25  Darin Adler  <darin (a] apple.com>
   8890 
   8891 	- fixed 2965269 -- sizes reported to progress handler from KWQCheckCacheObjectStatus for images are wrong
   8892 	- fixed 3006054 -- assert error failingURL != nil
   8893 
   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.
   8898 
   8899         * kwq/kio/jobclasses.h:
   8900         * kwq/KWQKjobclasses.mm: Store a KURL instead of an NSURL, because KURL can hold any string.
   8901 
   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
   8905 	accept a string.
   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.
   8909 
   8910         * kwq/WebCoreBridge.h: Add a [reportError:] method.
   8911 
   8912 2002-07-25  David Hyatt  <hyatt (a] apple.com>
   8913 
   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.
   8918 	
   8919         * khtml/rendering/render_object.cpp:
   8920         (RenderObject::getVerticalPosition):
   8921 
   8922 2002-07-25  Chris Blumenberg  <cblu (a] apple.com>
   8923 
   8924         * kwq/WebCoreBridge.h:
   8925         * kwq/WebCoreBridge.mm:
   8926         (-[WebCoreBridge elementAtPoint:]): renamed
   8927 
   8928 2002-07-25  David Hyatt  <hyatt (a] apple.com>
   8929 
   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.  
   8935 	
   8936         * khtml/rendering/render_box.h:
   8937         * khtml/rendering/render_flow.cpp:
   8938         (RenderFlow::layoutBlockChildren):
   8939         (RenderFlow::addOverHangingFloats):
   8940 	
   8941 2002-07-24  David Hyatt  <hyatt (a] apple.com>
   8942 
   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.
   8948 	
   8949         * khtml/rendering/render_flow.cpp:
   8950         (RenderFlow::layout):
   8951 
   8952 2002-07-24  Darin Adler  <darin (a] apple.com>
   8953 
   8954         * khtml/khtml_part.cpp: (KHTMLPart::clear): Remove code that reset m_frameNameId,
   8955 	to complete Maciej's change to fix bug 3006354.
   8956 
   8957 2002-07-24  Darin Adler  <darin (a] apple.com>
   8958 
   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
   8961 	
   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]).
   8967 
   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.
   8977 
   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.
   8982 
   8983         * kwq/qt/qfontmetrics.h:
   8984         * kwq/KWQFontMetrics.mm: (QFontMetrics::xHeight): Added.
   8985         * kwq/WebCoreTextRenderer.h: Added xHeight.
   8986 
   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'.
   8991 
   8992         * kwq/WebCoreBridge.mm: (-[WebCoreBridge reapplyStyles]): Fixed backwards
   8993 	if that prevented font changes from being reflected in the browser window.
   8994 
   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.
   9003 
   9004         * WebCore.pbproj/project.pbxproj: Rearrange some of the files.
   9005 
   9006 2002-07-24  Richard Williamson  <rjw (a] apple.com>
   9007 
   9008         Support for find in HTML.
   9009 
   9010         * kwq/WebCoreBridge.h:
   9011         * kwq/WebCoreBridge.mm:
   9012         (-[WebCoreBridge searchFor:direction:caseSensitive:]):
   9013 
   9014 2002-07-24  Darin Adler  <darin (a] apple.com>
   9015 
   9016 	- fixed 2949235 -- checkboxes in wrong place until you scroll away and back
   9017 
   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.
   9020 
   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.
   9029 
   9030         * kwq/KWQScrollView.mm: (QScrollView::addChild): Added call to KWQKHTMLPartImpl::addedWidget.
   9031         * kwq/WebCoreBridge.mm: (-[WebCoreBridge drawRect:withPainter:]): Calls KWQKHTMLPartImpl::paint.
   9032 
   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.
   9036 
   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.
   9040 
   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.
   9045 
   9046         * force-clean-timestamp: Needed to do this because I changed header files.
   9047 
   9048 2002-07-24  Darin Adler  <darin (a] apple.com>
   9049 
   9050 	- fixed 3006329 - space should be stripped from beginning of relative url
   9051 
   9052         * kwq/KWQKURL.mm: (KURL::normalizeRelativeURLString): Added a call to stripWhiteSpace.
   9053 
   9054 2002-07-24  Maciej Stachowiak  <mjs (a] apple.com>
   9055 
   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.
   9061 	
   9062         * khtml/khtmlpart_p.h: Make m_frameNameId static.
   9063         * khtml/khtml_part.cpp: Initialize it here.
   9064 
   9065 2002-07-24  Darin Adler  <darin (a] apple.com>
   9066 
   9067 	- fixed 3006336 -- crash in _NSDescriptionWithLocaleFunc
   9068 
   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().
   9072 
   9073 2002-07-23  Chris Blumenberg  <cblu (a] apple.com>
   9074 
   9075 	More plumbing for contextual menu support.
   9076 
   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
   9082 
   9083 2002-07-23  Darin Adler  <darin (a] apple.com>
   9084 
   9085         * WebCore.pbproj/project.pbxproj: Fix file reference types to be more consistent.
   9086 
   9087         * khtml/html/htmltokenizer.cpp:
   9088         (HTMLTokenizer::parseTag): Changed indenting to use spaces, makes our diff with
   9089 	KDE smaller.
   9090         (HTMLTokenizer::end): Remove unneeded APPLE_CHANGES.
   9091 
   9092         * kwq/KWQDOMNode.cpp: Tweak.
   9093         * kwq/KWQDOMNode.h: Tweak.
   9094 
   9095 2002-07-23  David Hyatt  <hyatt (a] apple.com>
   9096 
   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
   9101 	a complete comment.
   9102 
   9103 	This is bug 34302 on bugs.kde.org, for those who are curious.
   9104 	
   9105         * khtml/html/htmltokenizer.cpp:
   9106         (HTMLTokenizer::parseTag):
   9107 
   9108 2002-07-23  Chris Blumenberg  <cblu (a] apple.com>
   9109 
   9110 	Initial plumbing for contextual menu support.
   9111 
   9112         * WebCore.pbproj/project.pbxproj:
   9113         * kwq/KWQDOMNode.cpp: Added.
   9114         (isImage):
   9115         * kwq/KWQDOMNode.h: Added.
   9116         * kwq/WebCoreBridge.h:
   9117         * kwq/WebCoreBridge.mm:
   9118         (-[WebCoreBridge _URLForDOMString:]): added
   9119         (-[WebCoreBridge _elementInfoForMouseEvent:]): added
   9120 
   9121 2002-07-23  Richard Williamson  <rjw (a] apple.com>
   9122 
   9123         Turn on find related code in part in preparation for
   9124         implementing find in WebKit.
   9125         
   9126         * khtml/khtml_part.cpp:
   9127         (KHTMLPart::init):
   9128         (KHTMLPart::clear):
   9129         (KHTMLPart::findTextNext):
   9130 
   9131 2002-07-23  David Hyatt  <hyatt (a] apple.com>
   9132 
   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! 
   9135 
   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):
   9142 
   9143 2002-07-23  Darin Adler  <darin (a] apple.com>
   9144 
   9145 	- fixed 3004818 -- relative urls are assembled incorrectly at ticketmaster
   9146 	- fixed 2999279 -- Invalid URI in request at subpage of swatch.com
   9147 
   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.
   9150 
   9151         * kwq/KWQKURL.mm:
   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.
   9157 
   9158 2002-07-23  David Hyatt  <hyatt (a] apple.com>
   9159 
   9160         * khtml/rendering/font.cpp:
   9161 	Fix deployment build bustage by including <algorithm>.
   9162 	
   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.
   9169 	
   9170 2002-07-23  Darin Adler  <darin (a] apple.com>
   9171 
   9172         * Makefile.am: Clean based on all, not all-am, so it happens before subdirs
   9173 	if any.
   9174 
   9175 2002-07-23  Darin Adler  <darin (a] apple.com>
   9176 
   9177 	Changes require a make clean because of the Project Builder bug.
   9178 	So I added the "make clean timestamp" hackery.
   9179 
   9180         * .cvsignore: Ignore the new clean timestamp.
   9181         * force-clean-timestamp: Added.
   9182         * Makefile.am: Add rules for making clean happen.
   9183 
   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.
   9188 
   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.
   9195 
   9196         * kwq/WebCoreTextRenderer.h: Change underline-drawing to use a UniChar array.
   9197 
   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.
   9204 
   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.
   9207 
   9208         * khtml/css/cssstyleselector.cpp: No need for APPLE_CHANGES for
   9209 	this change any more.
   9210 
   9211         * kwq/kdecore/kcharsets.h:
   9212         * kwq/KWQKCharsets.mm: Remove unused functions.
   9213 
   9214         * kwq/khtml/khtml_settings.h:
   9215         * kwq/KWQKHTMLSettings.mm: Remove unused functions.
   9216 
   9217         * kwq/qt/qfont.h:
   9218         * kwq/KWQFont.mm: Simplify.
   9219 
   9220         * kwq/KWQPaintDeviceMetrics.mm: Simplify.
   9221 
   9222         * kwq/qt/qtextcodec.h:
   9223         * kwq/KWQtextcodec.mm: (QTextCodec::codecForName): Remove unused parameter.
   9224 
   9225 2002-07-23  David Hyatt  <hyatt (a] apple.com>
   9226 
   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
   9231 	business parsing.
   9232 	
   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:
   9241 
   9242 === Alexander-14 ===
   9243 
   9244 2002-07-23  David Hyatt  <hyatt (a] apple.com>
   9245 
   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.  
   9253 
   9254 	Silly me.  marvel.com and matadorrecords.com should be ok now.
   9255 	
   9256 2002-07-22  Darin Adler  <darin (a] apple.com>
   9257 
   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.
   9262 
   9263         * khtml/xml/dom_stringimpl.cpp: Add comments to APPLE_CHANGES.
   9264 
   9265         * khtml/xml/xml_tokenizer.cpp: (XMLTokenizer::end): Remove APPLE_CHANGES.
   9266         * kwq/KWQsignals.mm: Add a new signal dummy function.
   9267 
   9268         * kwq/WebCoreJavaScript.h: Fix header.
   9269         * kwq/WebCoreJavaScript.mm: Fix header.
   9270 
   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.
   9274 
   9275         * English.lproj/InfoPlist.strings: Fixed a spelling error.
   9276 
   9277         * kwq/WebCoreTextRendererFactory.h: Tweak.
   9278 
   9279 2002-07-22  Maciej Stachowiak  <mjs (a] apple.com>
   9280 
   9281 	Fixed Radar 3004897 - assert at mapquest
   9282 
   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
   9286 	floating in space.
   9287         * kwq/KWQKHTMLPartImpl.mm:
   9288         (KWQKHTMLPartImpl::requestFrame): Add an assertion that no frame
   9289 	of the requested name already exists.
   9290 
   9291 2002-07-22  David Hyatt  <hyatt (a] apple.com>
   9292 
   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.
   9299 	
   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):
   9306 
   9307 2002-07-22  David Hyatt  <hyatt (a] apple.com>
   9308 
   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.
   9314 	
   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
   9321 	proposed spec.
   9322 	
   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.
   9331 	
   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.
   9342 	
   9343 2002-07-22  Maciej Stachowiak  <mjs (a] apple.com>
   9344 
   9345         Merged WebCoreBridge and WebCoreFrameBridge.
   9346 
   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.
   9364 
   9365 2002-07-21  Maciej Stachowiak  <mjs (a] apple.com>
   9366 
   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.
   9370 
   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
   9376 	transition.
   9377         (KWQKHTMLPartImpl::findFrame): Call bridge, not committedBridge.
   9378         (KWQKHTMLPartImpl::frames): Likewise.
   9379 
   9380 2002-07-21  Darin Adler  <darin (a] apple.com>
   9381 
   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.
   9384 
   9385         * WebCore.pbproj/project.pbxproj: Add KWQStyle.mm, remove KWQStyle.h, moving contents
   9386 	into qstyle.h.
   9387 
   9388         * kwq/KWQApplication.mm: (QApplication::globalStrut): Remove _logNotYetImplemented().
   9389 
   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.
   9394 
   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.
   9405 
   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.
   9410 
   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.
   9414 
   9415         * kwq/WebCoreBridge.mm: (-[WebCoreBridge isFrameSet]): Call straight to impl.
   9416 
   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().
   9422 
   9423 2002-07-21  Maciej Stachowiak  <mjs (a] apple.com>
   9424 
   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
   9429 	this case.
   9430 
   9431 	Also, change some fprintf diagnostics of things that should never
   9432 	happen into assertions, since I actually ran into one.
   9433 	
   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.
   9444 
   9445 2002-07-21  David Hyatt  <hyatt (a] apple.com>
   9446 
   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.
   9453 	
   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. :)
   9460 	
   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).
   9467 
   9468 	On Ian Hickson's simple import test suite, we now pass tests 35 and
   9469 	36 (where before both were failed).
   9470 	
   9471 2002-07-21  Maciej Stachowiak  <mjs (a] apple.com>
   9472 
   9473         * Makefile.am: Remove products from symroots on `make clean'.
   9474 
   9475 2002-07-21  Maciej Stachowiak  <mjs (a] apple.com>
   9476 
   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.
   9480 
   9481 2002-07-21  David Hyatt  <hyatt (a] apple.com>
   9482 
   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.
   9489 
   9490 	This speeds up the Bugzilla forms page on cvs-base by 60%.
   9491 	
   9492         * khtml/rendering/render_form.cpp:
   9493         (RenderSelect::updateFromElement):
   9494 	Patched to make calls to beginBatchInsert and endBatchInsert
   9495 	on KListBox.
   9496 	
   9497         * kwq/KWQListBox.h:
   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
   9505 	do this now.
   9506 	
   9507 2002-07-20  David Hyatt  <hyatt (a] apple.com>
   9508 
   9509 	This patch fixes the FOUC (flash of unstyled content) problem.
   9510 	
   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.  
   9516 	
   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.
   9523 	
   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).
   9530 	
   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.
   9536 	
   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.
   9546 	
   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.
   9553 	
   9554 2002-07-20  Darin Adler  <darin (a] apple.com>
   9555 
   9556         * khtml/css/css_ruleimpl.cpp: (CSSImportRuleImpl::~CSSImportRuleImpl):
   9557 	Fix a potential leak by doing setParent(0) here just as is done in
   9558 	CSSMediaRuleImpl.
   9559 
   9560         * kwq/WebCoreBridge.h: Fix a misspelling of visible.
   9561 
   9562 2002-07-20  Maciej Stachowiak  <mjs (a] apple.com>
   9563 
   9564 	Changed the code to handle "icon" and "SHORTCUT ICON" links
   9565 	separately, and give higher priority to the former.
   9566 
   9567 	- fixed 3003672 - Assertion failure related to iconloader on metafilter
   9568 	
   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
   9577 	URL.
   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
   9584 	of a no-op.
   9585 
   9586 2002-07-19  Chris Blumenberg  <cblu (a] apple.com>
   9587 
   9588 	Per darin, only define loadIcon in KWQKHTMLPartImpl
   9589 
   9590         * khtml/html/html_headimpl.cpp:
   9591         (HTMLLinkElementImpl::process):
   9592         * khtml/khtml_part.cpp:
   9593         * khtml/khtml_part.h:
   9594 
   9595 2002-07-19  Chris Blumenberg  <cblu (a] apple.com>
   9596 
   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
   9606 
   9607 2002-07-19  Darin Adler  <darin (a] apple.com>
   9608 
   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.
   9612 
   9613 2002-07-19  Maciej Stachowiak  <mjs (a] apple.com>
   9614 
   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.
   9621 
   9622 2002-07-18  David Hyatt  <hyatt (a] apple.com>
   9623 
   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.
   9628         
   9629 2002-07-18  David Hyatt  <hyatt (a] apple.com>
   9630 
   9631         Small change that gives us 25% speedup (uncached) on the cvs-base suite.
   9632 
   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).
   9636         
   9637 === Alexander-13 ===
   9638 
   9639 2002-07-17  Darin Adler  <darin (a] apple.com>
   9640 
   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.
   9644 
   9645 2002-07-16  Maciej Stachowiak  <mjs (a] apple.com>
   9646 
   9647         Moved URL mouseover status to KWQKHTMLPartImpl, and made it
   9648 	responsive to modifier key presses, if enabled. Fixes:
   9649 
   9650 	Radar 2980152 - Link mouseover status messages are not localizable
   9651 	Radar 2982043 - Link mouse-over status should change in response to modifier keys
   9652 
   9653 	* khtml/khtml_part.cpp:
   9654         (KHTMLPart::overURL): Remove extensive APPLE_CHANGES, and just call the
   9655 	impl method.
   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.
   9662 
   9663 2002-07-16  Richard Williamson  <rjw (a] apple.com>
   9664 
   9665         Fixed field length test.  We were testing >= instead of >.
   9666         * kwq/KWQNSTextField.mm:
   9667         (-[KWQNSTextFieldFormatter isPartialStringValid:newEditingString:errorDescription:]):
   9668 
   9669 2002-07-16  Darin Adler  <darin (a] apple.com>
   9670 
   9671 	- fixed 2997244 -- crash when visiting cnn.com followed by another page
   9672 
   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.
   9675 
   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.
   9679 
   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.
   9683 
   9684         * kwq/WebCoreBridge.h: Remove now-unneeded childFrameNamed method.
   9685 
   9686 2002-07-16  Darin Adler  <darin (a] apple.com>
   9687 
   9688 	- fixed 2998692 -- crash when you type "googl" into the page address
   9689 
   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.
   9693 
   9694 2002-07-16  Darin Adler  <darin (a] apple.com>
   9695 
   9696         * almost every file: Renamed IF* -> Web*.
   9697 
   9698 2002-07-15  Darin Adler  <darin (a] apple.com>
   9699 
   9700 	A teeny weeny bit of refactoring.
   9701 
   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:.
   9707 
   9708 2002-07-15  Richard Williamson  <rjw (a] apple.com>
   9709 
   9710         Added isFrameSet method.
   9711         
   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]):
   9723 
   9724 2002-07-15  Darin Adler  <darin (a] apple.com>
   9725 
   9726         * WebCore.pbproj/project.pbxproj: Removed KWQKPrinter.mm.
   9727         * kwq/KWQKPrinter.mm: Removed.
   9728 
   9729 2002-07-15  Darin Adler  <darin (a] apple.com>
   9730 
   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>.
   9738 
   9739 2002-07-15  Darin Adler  <darin (a] apple.com>
   9740 
   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.
   9749 
   9750         * kwq/WebCoreTextRenderer.h: Remove two unused drawString methods and one
   9751 	unused widthForCharacters method.
   9752 
   9753 2002-07-14  Darin Adler  <darin (a] apple.com>
   9754 
   9755         * kwq/WebCoreFrame.mm: (-[WebCoreFrame dealloc]): Fix NULL-dereferencing
   9756 	problem that was hidden by the "leak the world" bug in WebBrowser.
   9757 
   9758 2002-07-14  Maciej Stachowiak  <mjs (a] apple.com>
   9759 
   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).
   9763 
   9764 	* kwq/KWQButton.mm:
   9765         (QButton::setText):
   9766         (QButton::text):
   9767         * kwq/KWQLineEdit.mm:
   9768         (QLineEdit::setEchoMode):
   9769         (QLineEdit::setText):
   9770         (QLineEdit::text):
   9771         (QLineEdit::setMaxLength):
   9772         (QLineEdit::isReadOnly):
   9773         (QLineEdit::setReadOnly):
   9774         (QLineEdit::maxLength):
   9775         (QLineEdit::selectAll):
   9776         (QLineEdit::edited):
   9777         (QLineEdit::setEdited):
   9778 
   9779 2002-07-14  Darin Adler  <darin (a] apple.com>
   9780 
   9781         * WebCore-tests.exp: Tests needed access to QPoint, QString, and KURL symbols
   9782 	that were formerly exported for the benefit of WebKit.
   9783 
   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.
   9786 
   9787 2002-07-14  Darin Adler  <darin (a] apple.com>
   9788 
   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
   9791 	in QPainter.
   9792 
   9793         * WebCore.exp: Export the new classes WebCoreCache and WebCoreJavaScript.
   9794 	Don't export any C++ symbols at all.
   9795 
   9796         * WebCore.pbproj/project.pbxproj: Remove KWQWMatrix.mm, add WebCoreCache.*
   9797 	and WebCoreJavaScript.*.
   9798 
   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.
   9809 
   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.
   9817 
   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.
   9820 
   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.
   9832 
   9833         * kwq/KWQView.h: Tweaked.
   9834         * kwq/KWQView.mm: Removed [KWQView drawRect:].
   9835 
   9836         * kwq/KWQWMatrix.mm: Removed.
   9837 
   9838         * kwq/qt/qwidget.h: Removed paint() virtual function.
   9839         * kwq/KWQWidget.mm: Removed QWidget::paint().
   9840 
   9841         * kwq/WebCoreBridge.h: Added new methods installInFrame:, removeFromFrame,
   9842 	mouseDown:, mouseUp:, mouseMoved:, mouseDragged:, copyDOMTree:, and copyRenderTree:.
   9843 
   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.
   9864 
   9865         * kwq/WebCoreCache.h: Added. Allows control of the WebCore cache; previously done directly
   9866 	in IFCache in WebKit.
   9867         * kwq/WebCoreCache.mm: Added.
   9868 
   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.
   9872 
   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.
   9876 
   9877 2002-07-13  Darin Adler  <darin (a] apple.com>
   9878 
   9879         * WebCore.pbproj/project.pbxproj: Add a few files that are sources
   9880 	although they should not be compiled for any target.
   9881 
   9882         * kwq/qt/qpushbutton.h: Simplified.
   9883         * kwq/KWQPushButton.mm: (QPushButton::QPushButton): Implemented text parameter.
   9884 
   9885 2002-07-13  Darin Adler  <darin (a] apple.com>
   9886 
   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.
   9891 
   9892         * Makefile.am: Remove embed.am support.
   9893 
   9894         * WebCore.pbproj/project.pbxproj: Remove other search paths, and
   9895 	add ForwardingHeaders directory as a search path. Add qucomextra_p.h.
   9896 	
   9897         * khtml/ecma/kjs_navigator.cpp: Made gratuitous changes to touch this
   9898 	file to make things build without requiring clean rebuild.
   9899 
   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.
   9903 
   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.
   9916 
   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.
   9921 
   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.
   9926 
   9927         * kwq/qt/qstring.h: Remove QSTRING_TO_NSSTRING family of macros.
   9928 
   9929         * kwq/KWQInvisibleButton.mm:
   9930         * kwq/KWQKHTMLPart.mm:
   9931         * kwq/KWQKHTMLPartBrowserExtension.mm:
   9932         * kwq/KWQKJavaAppletWidget.mm:
   9933         * kwq/KWQKloader.mm:
   9934         * kwq/KWQView.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.
   9944 
   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.
   9950 
   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.
   9955 
   9956         * kwq/kdecore/kglobal.h: Simplify.
   9957         * kwq/KWQKGlobal.mm: Simplify.
   9958         * kwq/qt/qlineedit.h: Simplify.
   9959         * kwq/KWQLineEdit.mm: Simplify.
   9960 
   9961         * kwq/KWQPaintDeviceMetrics.mm: Remove unneeded import.
   9962         * kwq/qt/qbutton.h: Remove unneeded destructor.
   9963 
   9964 2002-07-13  Richard Williamson  <rjw (a] apple.com>
   9965 
   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):
   9982         
   9983         * kwq/KWQWidget.mm:
   9984         (QWidget::frameGeometry):
   9985         Use the IFWebView's geometry.
   9986         
   9987         * kwq/WebCoreBridge.h:
   9988         * kwq/WebCoreBridge.mm:
   9989         (-[WebCoreBridge _drawRect:withPainter:]):
   9990         (-[WebCoreBridge drawRect:]):
   9991         (-[WebCoreBridge adjustFrames:]):
   9992         Added adjustFrames:.  Factored some code.
   9993         
   9994         * kwq/qt/qpainter.h:
   9995         Added setPaintingDisabled.
   9996 
   9997         * khtml/html/html_baseimpl.cpp:
   9998         (HTMLFrameElementImpl::attach):
   9999         (HTMLIFrameElementImpl::attach):
   10000         Removed uniqueness check.  Need to revisit vis-a-vis provisional ds.
   10001         
   10002 2002-07-12  Darin Adler  <darin (a] apple.com>
   10003 
   10004         * WebCore.pbproj/project.pbxproj: Add WebCoreFrame.mm, also export all
   10005 	the WebCore headers as Private so WebKit can see them.
   10006 
   10007         * khtml/khtmlview.cpp: (KHTMLView::drawContents): Remove APPLE_CHANGES
   10008 	since we don't use this function any more.
   10009 
   10010         * kwq/KWQDef.h: Since <sys/types.h> now includes ushort and uint, update
   10011 	code here to take that into account.
   10012 
   10013         * kwq/KWQKHTMLPartImpl.h: Added getView().
   10014         * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::getView): Added. Used by bridge.
   10015 
   10016         * kwq/qt/qpainter.h:
   10017         * kwq/KWQPainter.mm: Simplify a bit, and remove some unused stuff.
   10018 
   10019         * kwq/WebCoreBridge.h: Add reapplyStyles, forceLayout, drawRect:.
   10020         * kwq/WebCoreBridge.mm:
   10021         (-[WebCoreBridge reapplyStyles]): Added.
   10022         (-[WebCoreBridge forceLayout]): Added.
   10023         (-[WebCoreBridge drawRect:]): Added.
   10024 
   10025         * kwq/WebCoreFrame.h: Make this a class as well as an interface.
   10026         * kwq/WebCoreFrame.mm: Added.
   10027 
   10028         * WebCore.exp: Since WebCoreFrame is now a class as well as a protocol,
   10029 	export it so we can subclass.
   10030 
   10031 2002-07-12  Darin Adler  <darin (a] apple.com>
   10032 
   10033 	Build WebCore with Project Builder instead of make.
   10034 	Also wean WebCore from peeking inside the WebKit bundle.
   10035 
   10036         * WebCore.pbproj/.cvsignore: Added.
   10037         * WebCore.pbproj/project.pbxproj: Added.
   10038 
   10039         * Makefile.am: Removed rules about building the framework,
   10040 	and just use pbxbuild instead.
   10041 
   10042         * dummy.mm: Removed.
   10043 
   10044         * khtml/Makefile.am: Removed everything but SUBDIRS.
   10045         * khtml/css/Makefile.am: Removed everything but the rules for
   10046 	generated sources.
   10047         * khtml/dom/Makefile.am: Removed.
   10048         * khtml/ecma/Makefile.am: Removed everything but the rules for
   10049 	generated sources.
   10050         * khtml/html/Makefile.am: Removed everything but the rules for
   10051 	generated sources.
   10052         * khtml/misc/Makefile.am: Removed everything but the rules for
   10053 	generated sources.
   10054         * khtml/rendering/Makefile.am: Removed.
   10055         * khtml/xml/Makefile.am: Removed.
   10056         * kwq/Makefile.am: Removed everything but the rules for
   10057 	generated sources.
   10058 
   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.
   10064 
   10065         * kwq/qt/qpixmap.h:
   10066         * kwq/KWQPixmap.mm: Changed convertToImage() to an inline since we
   10067 	never need to implement it.
   10068 
   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.
   10074 
   10075         * kwq/KWQScrollBar.h: Fixed header guard.
   10076 
   10077         * .cvsignore:
   10078         * kwq/.cvsignore:
   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.
   10085 
   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.
   10092 
   10093 2002-07-11  Maciej Stachowiak  <mjs (a] apple.com>
   10094 
   10095         Fixed Radar 2953254 - JavaScript window.scroll() and
   10096 	window.scrollBy() do not work
   10097 
   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
   10102 	for JS scrolling.
   10103 
   10104 2002-07-10  Darin Adler  <darin (a] apple.com>
   10105 
   10106 	- fixed 2978796 -- Client-side image map not working
   10107 
   10108         * kwq/KWQRegion.mm: (QRegion::QRegion): Implement constructor that
   10109 	takes a QPointArray.
   10110 
   10111         * kwq/qt/qarray.h: Fix some const loopholes.
   10112 
   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 *.
   10118 
   10119 2002-07-10  Maciej Stachowiak  <mjs (a] apple.com>
   10120 
   10121         WebCore part of fix for:
   10122 
   10123 	Radar 2953250 - JavaScript window.focus() and window.blur()
   10124 	methods don't work
   10125 
   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.
   10134 
   10135 2002-07-10  Darin Adler  <darin (a] apple.com>
   10136 
   10137 	- fixed 2979153 -- charset sjis page is gibberish
   10138 
   10139         * kwq/character-sets.txt: Add x-sjis as an alias for Shift JIS.
   10140 
   10141 2002-07-10  Darin Adler  <darin (a] apple.com>
   10142 
   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.
   10150 
   10151         * kwq/qt/qpixmap.h: Make needCopyOnWrite mutable so we can set it on the source
   10152 	when copying or assigning.
   10153 
   10154 2002-07-10  Darin Adler  <darin (a] apple.com>
   10155 
   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.
   10159 
   10160 2002-07-07  Maciej Stachowiak  <mjs (a] apple.com>
   10161 
   10162         WebCore part of fix for Radar 2953431 - JavaScript window.close()
   10163 	method is not working
   10164 
   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.
   10178 
   10179 2002-07-06  Darin Adler  <darin (a] apple.com>
   10180 
   10181         * kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::write): Remove reference
   10182 	to nonexistent class in a comment.
   10183         * kwq/KWQKHTMLPartImpl.h: Remove unused and unimplemented getDataSource().
   10184 
   10185 2002-07-04  Maciej Stachowiak  <mjs (a] apple.com>
   10186 
   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.
   10191 	
   10192         * khtml/khtml_part.cpp:
   10193         (KHTMLPart::overURL):
   10194         (KHTMLPart::khtmlMouseMoveEvent):
   10195         * khtml/khtml_part.h:
   10196 
   10197 2002-07-03  Darin Adler  <darin (a] apple.com>
   10198 
   10199 	A small KURL speed improvement.
   10200 
   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.
   10207 
   10208         * kwq/KWQKURL.mm:
   10209         (KURL::KURL): Make the default constructor faster by not running all the
   10210 	normalize code on the empty string.
   10211 
   10212 === Alexander-11 ===
   10213 
   10214 2002-07-03  Maciej Stachowiak  <mjs (a] apple.com>
   10215 
   10216         WebCore part of fixes for:
   10217 
   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
   10223 
   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.
   10231         * kwq/KWQKWin.mm:
   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.
   10238 
   10239 2002-07-03  Richard Williamson  <rjw (a] apple.com>
   10240 
   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.
   10247         
   10248         * kwq/KWQWidget.mm:
   10249         (QWidget::internalSetGeometry):
   10250 
   10251 2002-07-03  Maciej Stachowiak  <mjs (a] apple.com>
   10252 
   10253 	WebKit part of fix for:
   10254 
   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
   10258 
   10259 	Also fixed:
   10260 
   10261 	Radar 2980091 - KHTMLPart::findFrame() and KHTML::frameExists()
   10262 	should search all frames, not just child frames
   10263 	
   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.
   10275 
   10276 2002-07-02  Darin Adler  <darin (a] apple.com>
   10277 
   10278 	- fixed 2978806 -- Crash going to ebay home page
   10279 
   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
   10282 	the iterator.
   10283 
   10284 2002-07-01  Maciej Stachowiak  <mjs (a] apple.com>
   10285 
   10286         Fixed Radar 2953256 - JavaScript window.moveTo() and
   10287 	window.moveBy() methods do not work
   10288 
   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
   10291 	features.
   10292 	
   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.
   10319 
   10320 2002-07-01  Darin Adler  <darin (a] apple.com>
   10321 
   10322         * khtml/css/cssparser.cpp:
   10323         * khtml/misc/htmlhashes.cpp:
   10324 	Remove workaround for a PFE bug that no longer affects us.
   10325 
   10326         * khtml/xml/dom_nodeimpl.h:
   10327         * khtml/xml/dom_nodeimpl.cpp:
   10328 	Remove some unneeded APPLE_CHANGES.
   10329 
   10330         * WebCore.exp: One less symbol to export.
   10331 
   10332 2002-06-29  Maciej Stachowiak  <mjs (a] apple.com>
   10333 
   10334         WebCore part of fix for:
   10335 
   10336 	Radar 2942074 - JavaScript size, positioning and feature
   10337 	parameters to window.open are ignored
   10338 
   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.
   10347 
   10348 2002-06-28  Richard Williamson  <rjw (a] apple.com>
   10349 
   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
   10353         measurements.
   10354         
   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:
   10366 
   10367 2002-06-27  Chris Blumenberg  <cblu (a] apple.com>
   10368 
   10369 	Added an APPLE_CHANGES to fix 2894742. The attributes of an EMBED tag
   10370 	must override the attributes of PARAM tags.
   10371 
   10372         * khtml/rendering/render_frames.cpp:
   10373         (RenderPartObject::updateWidget):
   10374 
   10375 2002-06-27  Darin Adler  <darin (a] apple.com>
   10376 
   10377 	- fixed 2973342 -- copied text seems to have an extra blank line between paragraphs
   10378 
   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>
   10382 
   10383 2002-06-27  Darin Adler  <darin (a] apple.com>
   10384 
   10385 	Fix Java. My changes this morning broke it.
   10386 
   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.
   10391 
   10392 	Some QFont fixes.
   10393 
   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.
   10402 
   10403 === Alexander-10 ===
   10404 
   10405 2002-06-27  Richard Williamson  <rjw (a] apple.com>
   10406 
   10407         Method name changes in preparation for fixing
   10408         TextSlave::checkSelectionPoint().
   10409         
   10410         * kwq/WebCoreTextRenderer.h:
   10411 
   10412 2002-06-27  Richard Williamson  <rjw (a] apple.com>
   10413 
   10414         Removed calls to old method.
   10415         
   10416         * kwq/KWQPainter.mm:
   10417         (QPainter::drawText):
   10418         * kwq/WebCoreTextRenderer.h:
   10419         Removed old methods.
   10420 
   10421 2002-06-27  Darin Adler  <darin (a] apple.com>
   10422 
   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.
   10427 
   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
   10432 	KDE original.
   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.
   10437 
   10438         * kwq/WebCoreViewFactory.h: Add baseURL parameter.
   10439         * kwq/WebCoreViewFactory.m:
   10440         (-[WebCoreViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]): Add baseURL parameter.
   10441 
   10442         * kwq/kdecore/kurl.h: Fix NSURL definition to fit idiom.
   10443         * kwq/qt/qmap.h: Added the const version of the [] operator.
   10444 
   10445         * khtml/ecma/kjs_navigator.cpp: Tweak whitespace.
   10446         * khtml/html/html_documentimpl.cpp: Tweak to make it a little closer to original.
   10447 
   10448         * kwq/KWQKCookieJar.h: Reduce includes.
   10449         * kwq/KWQKCookieJar.mm: Move includes in here.
   10450 
   10451         * kwq/WebCoreCookieAdapter.h: Fix comment that emacs munged.
   10452 
   10453 2002-06-27  Richard Williamson  <rjw (a] apple.com>
   10454 
   10455         * kwq/WebCoreBridge.h:
   10456         * kwq/WebCoreBridge.mm:
   10457         (-[WebCoreBridge selectAll]):
   10458         Select all using the part.
   10459 
   10460 2002-06-27  Maciej Stachowiak  <mjs (a] apple.com>
   10461 
   10462 	WebCore part of fixes for JavaScript cookie bugs:
   10463 	
   10464 	2943749 - JavaScript navigator.cookieEnabled property is always "true"
   10465 	2856039 - JavaScript document.cookies property is not implemented
   10466 	
   10467 	Thereby also fixing:
   10468 	
   10469 	2944378 - Trying to log into my Yahoo web mail account sent
   10470 	Alexander into a loop
   10471 	
   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
   10492 
   10493 2002-06-27  Chris Blumenberg  <cblu (a] apple.com>
   10494 
   10495 	Fix to support sending PARAM tags to the Java plug-in.
   10496 
   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
   10507 
   10508 2002-06-26  Richard Williamson  <rjw (a] apple.com>
   10509 
   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
   10514         problems.
   10515         
   10516         khtml redraw the entire visible region when selection changes.
   10517         This could be optimzed.
   10518         
   10519         * khtml/rendering/font.cpp:
   10520         (Font::drawText):
   10521         (Font::width):
   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:
   10532 
   10533 2002-06-26  Maciej Stachowiak  <mjs (a] apple.com>
   10534 
   10535         Implement KHTMLPart::findFrame() to fix the following Radar bugs:
   10536         
   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
   10539         
   10540         * khtml/khtml_part.cpp:
   10541         (KHTMLPart::findFrame):
   10542         * kwq/KWQKHTMLPart.mm:
   10543         (KWQKHTMLPartImpl::findFrame):
   10544         * kwq/KWQKHTMLPartImpl.h:
   10545 
   10546 2002-06-26  Darin Adler  <darin (a] apple.com>
   10547 
   10548 	- fixed 2969378 -- "A with hat" characters (Unicode 00C2) showing up at Zingermans.com
   10549 
   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.
   10552 
   10553         * kwq/KWQtextcodec.mm: (QTextCodec::fromUnicode): Fix implementation so it will convert
   10554 	the specified encoding instead of always Latin-1.
   10555 
   10556 2002-06-26  Darin Adler  <darin (a] apple.com>
   10557 
   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.
   10561 
   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
   10566         if it's nil.
   10567 
   10568 2002-06-25  Richard Williamson  <rjw (a] apple.com>
   10569         
   10570         Support for khtml style selection drawing.  Ugly,
   10571         we'll want to make this more Mac like.
   10572 
   10573         * khtml/rendering/font.cpp:
   10574         (Font::drawText):
   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):
   10581             Implemented.
   10582         * kwq/qt/qfontmetrics.h:
   10583             Added QFontMetrics::charWidth.
   10584 
   10585 2002-06-25  Richard Williamson  <rjw (a] apple.com>
   10586 
   10587         Support for rudimentary plain text 'copy'.
   10588         
   10589         * kwq/WebCoreBridge.h:
   10590         * kwq/WebCoreBridge.mm:
   10591         (-[WebCoreBridge selectedText]):
   10592 
   10593 2002-06-25  Richard Williamson  <rjw (a] apple.com>
   10594 
   10595         Enabled progressive image loading code.
   10596 
   10597         * khtml/misc/loader.cpp:
   10598         (CachedImage::data):
   10599         * kwq/KWQPixmap.mm:
   10600         (QPixmap::QPixmap):
   10601 
   10602 2002-06-25  Darin Adler  <darin (a] apple.com>
   10603 
   10604 	Removed remaining uses of BORROWED defines.
   10605 	Made some simplifications and formatting fixes. All safe.
   10606 
   10607         * kwq/KWQArrayImpl.h:
   10608         * kwq/KWQArrayImpl.mm:
   10609         * kwq/KWQChar.mm:
   10610         * kwq/KWQCharsets.mm:
   10611         * kwq/KWQFile.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:
   10622         * kwq/qt/qfile.h:
   10623         * kwq/qt/qregexp.h:
   10624         * kwq/qt/qtextcodec.h:
   10625 
   10626         * WebCore-tests.exp: Small change to exports for the array test.
   10627 
   10628 2002-06-24  Chris Blumenberg  <cblu (a] apple.com>
   10629 
   10630 	Changed the plug-in view constructor to take NSURL's rather
   10631 	than URL strings.	
   10632 
   10633         * kwq/KWQKHTMLPart.mm:
   10634         (KWQKHTMLPartImpl::requestObject):
   10635         * kwq/WebCoreViewFactory.h:
   10636         * kwq/WebCoreViewFactory.m:
   10637 
   10638 2002-06-24  Darin Adler  <darin (a] apple.com>
   10639 
   10640         * khtml/khtmlview.cpp: (KHTMLView::~KHTMLView): Put APPLE_CHANGES
   10641         later in the sequence so we don't deref the part before the code
   10642         gets to run.
   10643 
   10644         * kwq/kwqdebug.h: Re-add the __format__ attribute, now that Radar
   10645         2920557 is fixed.
   10646 
   10647 2002-06-21  Darin Adler  <darin (a] apple.com>
   10648 
   10649         * kwq/KWQFont.mm: Made it store a copy of the family name instead of
   10650 	storing a reference to the mutable CFString.
   10651 
   10652         * kwq/KWQPainter.mm:
   10653         (QPainter::drawPixmap): Simplified.
   10654         (QPainter::drawTiledPixmap): Used the new [tileInRect:].
   10655 
   10656         * kwq/WebCoreImageRenderer.h: Added [tileInRect:], removed [drawInRect:],
   10657 	and also removed view parameter from [beginAnimation].
   10658 	
   10659         * kwq/qt/qpixmap.h: Removed unneeded getImageRenderer().
   10660 
   10661 2002-06-21  Darin Adler  <darin (a] apple.com>
   10662 
   10663         - fixed 2964718 -- crash in KWQCheckCacheObjectStatus
   10664 
   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.
   10668 
   10669 2002-06-20  Darin Adler  <darin (a] apple.com>
   10670 
   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.
   10676 
   10677 	* kwq/KWQRefPtr.h: Streamlined implementation that inlines
   10678 	a bit less and is more efficient for creating empty pointers.
   10679 
   10680 	* kwq/KWQStyle.h: Removed unused stuff.
   10681 
   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.
   10686 
   10687 	* khtml/khtmlview.cpp: (KHTMLView::~KHTMLView):
   10688 	Remove unneeded APPLE_CHANGES -- no need to nil something out in
   10689 	a destructor.
   10690 
   10691 === Alexander-9 ===
   10692 
   10693 2002-06-19  Richard Williamson  <rjw (a] apple.com>
   10694 
   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.
   10703 
   10704 2002-06-19  Richard Williamson  <rjw (a] apple.com>
   10705 
   10706 	* khtml/khtmlview.cpp: (KHTMLView::~KHTMLView): 
   10707 	    Tweak
   10708 	* khtml/rendering/render_image.cpp:
   10709 	(RenderImage::setPixmap):
   10710 	    Call stopAnimations when a image changes, i.e. may be changed
   10711 	    by JS.
   10712 	* kwq/KWQPixmap.mm:
   10713 	(QPixmap::stopAnimations):
   10714 	    Call image renderer's stopAnimation.
   10715 	* kwq/qt/qpixmap.h:
   10716         Added stopAnimations.
   10717         
   10718 2002-06-19  Darin Adler  <darin (a] apple.com>
   10719 
   10720 	- fixed 2956444 -- mac os x feedback form missing textarea
   10721 
   10722 	* kwq/WebCoreFrameView.h: Added.
   10723 
   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.
   10731 
   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.
   10738 
   10739 	Other changes:
   10740 
   10741 	* kwq/kwqdebug.h: Cloned improved assert code from WebFoundation.
   10742 
   10743 	* kwq/KWQTextArea.h: Removed unused isReadOnly/setReadOnly.
   10744 	* kwq/KWQTextArea.mm: Removed unused isReadOnly/setReadOnly.
   10745 
   10746 	* kwq/WebCoreViewFactory.h: Removed extraneous import and WebCoreCursorSetting
   10747 	API from here.
   10748 
   10749 	* kwq/KWQTextEdit.mm: Tweaked.
   10750 	* kwq/kparts/part.h: Tweaked.
   10751 
   10752 2002-06-18  Kenneth Kocienda  <kocienda (a] apple.com>
   10753 
   10754         Fix for this bug:
   10755 
   10756         Radar 2928483 (activity viewer does not show all the pieces of a web page when the page is cached)
   10757 
   10758 	* khtml/misc/loader.cpp:
   10759 	(DocLoader::requestImage): Added APPLE_CHANGES call to the KWQCheckCacheObjectStatus function 
   10760                                    described below 
   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
   10768 
   10769 2002-06-18  Darin Adler  <darin (a] apple.com>
   10770 
   10771 	* kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::~KWQKHTMLPartImpl):
   10772 	Remove an NSLog I left in by accident.
   10773 
   10774 2002-06-17  Richard Williamson  <rjw (a] apple.com>
   10775 
   10776     Fixed window.open regression.
   10777     Partial fix to targeting frame of new name.
   10778     
   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:
   10787 
   10788 2002-06-17  Darin Adler  <darin (a] apple.com>
   10789 
   10790 	Fixed a storage leak.
   10791 
   10792 	* kwq/WebCoreBridge.mm: (-[WebCoreBridge documentTextFromDOM]): Add a missing autorelease.
   10793 
   10794 	Remove a bunch of loader-related APPLE_CHANGES.
   10795 
   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.
   10802 
   10803 	* kwq/KWQLoaderImpl.h:
   10804 	* kwq/KWQKloader.mm: (KWQServeRequest): Replaces the KWQLoaderImpl class. The rest of what
   10805 	was in this class was obsolete.
   10806 
   10807 2002-06-17  Richard Williamson  <rjw (a] apple.com>
   10808 
   10809     Fixed www.2cpu.com regression.  QWidget::_displayRect was displaying the wrong
   10810     view.  This was a regression that would impact all DHTML.
   10811 
   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:
   10820 
   10821 2002-06-17  Darin Adler  <darin (a] apple.com>
   10822 
   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.
   10825 
   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.
   10829 
   10830 2002-06-16  Darin Adler  <darin (a] apple.com>
   10831 
   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.
   10836 
   10837 	* kwq/WebCoreFrame.h: Added [WebCoreFrame bridge] for the case above.
   10838 	Note that it always gives the "committed" bridge, not the provisional one.
   10839 
   10840 2002-06-16  Darin Adler  <darin (a] apple.com>
   10841 
   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".
   10845 
   10846 	Also fixed the build, because a clean build failed.
   10847 
   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.
   10856 
   10857 	* kwq/WebCoreBridge.h: Removed frame-related operations, now they are on WebCoreFrame.
   10858 	Broke out WebCoreResourceLoader into its own file. Added comments.
   10859 
   10860 	* kwq/WebCoreFrame.h: Added.
   10861 
   10862 	* kwq/WebCoreResourceLoader.h: Added.
   10863 	* kwq/KWQKloader.mm: Include WebCoreResourceLoader.h now that it's broken out.
   10864 
   10865 	* WebCore-tests.exp: Tests still need QString::latin1(), although we don't need
   10866 	to export it for WebKit any more.
   10867 
   10868 2002-06-16  Darin Adler  <darin (a] apple.com>
   10869 
   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.
   10872 
   10873 	* kwq/kio/jobclasses.h:
   10874 	* kwq/KWQKjobclasses.mm:
   10875 	(TransferJob::setHandle): Replaced the old TransferJob::begin with this.
   10876 
   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.
   10886 
   10887 	* kwq/WebCoreBridge.h: Remove unneeded methods. Added [WebCoreBridge startLoadingResource:withURL:].
   10888 
   10889 2002-06-15  Darin Adler  <darin (a] apple.com>
   10890 
   10891 	Fix frame-related calls. I was always searching all the frames, which was disastrous.
   10892 	Also do name changes.
   10893 
   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.
   10898 
   10899 	* kwq/KWQScrollView.mm: (QScrollView::addChild): Asserts I used while debugging.
   10900 
   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.)
   10904 
   10905 2002-06-15  Darin Adler  <darin (a] apple.com>
   10906 
   10907 	* kwq/KWQKloader.mm:
   10908 	(-[KWQURLLoadClient IFURLHandle:didRedirectToURL:]):
   10909 	Rolled out an assert I added by accident that will break Deployment builds.
   10910 
   10911 2002-06-15  Darin Adler  <darin (a] apple.com>
   10912 
   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.
   10919 
   10920 2002-06-15  Darin Adler  <darin (a] apple.com>
   10921 
   10922 	* kwq/KWQKloader.mm: (-[KWQURLLoadClient initWithLoader:bridge:]):
   10923         Fix bridge/m_bridge typo that was responsible for at least some of the breakage
   10924         I caused.
   10925 
   10926 2002-06-15  Richard Williamson  <rjw (a] apple.com>
   10927 
   10928     Fixed factoring problem.
   10929     
   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:
   10945 
   10946 2002-06-15  Darin Adler  <darin (a] apple.com>
   10947 
   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".
   10951 
   10952 2002-06-15  Darin Adler  <darin (a] apple.com>
   10953 
   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.
   10957 
   10958 	* kwq/WCLoadProgress.h: Removed.
   10959 	* kwq/WCWebDataSource.h: Removed.
   10960 	* kwq/KWQKHTMLPart.mm: Removed import of WCWebDataSource.h.
   10961 
   10962 	* *.mm: Changed all includes to imports using a perl script.
   10963 
   10964 2002-06-15  Darin Adler  <darin (a] apple.com>
   10965 
   10966 	- fixed 2942808 -- remove all calls to WebKit from WebCore
   10967 
   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.
   10970 
   10971 	* WebCore.exp: Remove exports that are no longer needed, now that
   10972 	WebKit is using the bridge to get at more things.
   10973 
   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.
   10981 
   10982 	* kwq/KWQKHTMLPart.mm: Remove getDataSource.
   10983 
   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.
   11003 
   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.
   11010 
   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.
   11020 
   11021 	* kwq/external.h: Removed.
   11022 
   11023 2002-06-15  Maciej Stachowiak  <mjs (a] apple.com>
   11024 
   11025 	Get current bits per pixel from CoreGraphics, thereby fixing
   11026         
   11027         Radar 2943736 - JavaScript screen.colorDepth and screen.pixelDepth properties always returns 32, 
   11028         regardless of real depth
   11029         
   11030         * kwq/KWQPaintDeviceMetrics.mm:
   11031 	(QPaintDeviceMetrics::depth):
   11032 
   11033 2002-06-15  Maciej Stachowiak  <mjs (a] apple.com>
   11034 
   11035 	Removed product and vendor properties, thereby fixing:
   11036         
   11037         Radar 2943751 - JavaScript navigator.product property is "Konqueror/khtml"
   11038         Radar 2943753 - JavaScript navigator.vendor property is "KDE"
   11039         
   11040         * khtml/ecma/kjs_navigator.cpp:
   11041 	(Navigator::getValueProperty): Return undefined for the above mentioned properties.
   11042 
   11043 2002-06-15  Maciej Stachowiak  <mjs (a] apple.com>
   11044 
   11045         Implemented functionality needed for missing Screen properties, thereby fixing the following
   11046         bugs:
   11047         
   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
   11052         
   11053 	* kwq/KWQKWinModule.mm:
   11054 	(KWinModule::workArea): Return the correct screen size to fix the above bugs.
   11055 
   11056 2002-06-14  Richard Williamson  <rjw (a] apple.com>
   11057 
   11058     Changed IFResourceProgressHandler to pass back resource handle instead of
   11059     string description.  This will address the needs descibed in 2954160.
   11060 
   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):
   11069 	* kwq/external.h:
   11070 
   11071 2002-06-14  Darin Adler  <darin (a] apple.com>
   11072 
   11073 	* kwq/KWQDateTime.mm: Add ifdefs needed to make Deployment build compile.
   11074 
   11075 2002-06-14  Darin Adler  <darin (a] apple.com>
   11076 
   11077 	Worked on eliminating calls to WebKit. About 3/4 done.
   11078 
   11079 	* WebCore.exp: Export new WebCoreBridge class, fewer other things.
   11080 
   11081 	* WebCorePrefix.h: #include <ostream> in debug builds; we couldn't
   11082 	before because of a PFE bug that has since been fixed (2920556).
   11083 
   11084 	* khtml/html/html_objectimpl.cpp: (HTMLObjectElementImpl::attach):
   11085 	Add a comment explaining our latest change here.
   11086 
   11087 	* khtml/khtml_part.cpp: (KHTMLPart::~KHTMLPart): Fix storage leak
   11088 	by deleting m_hostExtension.
   11089 
   11090 	* khtml/misc/loader.h: Set type properly on client member so we
   11091 	don't have to do so much casting.
   11092 
   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
   11101 	function.
   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.
   11108 
   11109 	* kwq/KWQKHTMLPartBrowserExtension.mm:
   11110 	(KHTMLPartBrowserExtension::createNewWindow): Use WebCoreBridge.
   11111 
   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.
   11115 
   11116 	* kwq/qt/qscrollview.h:
   11117 	* kwq/KWQScrollView.mm: Used helper functions to do the "documentView"
   11118 	selector thing more consistently.
   11119 
   11120 	* kwq/KWQWidget.mm: Get interface for changing the cursor from
   11121 	WebCoreViewFactory.h instead of from external.h.
   11122 
   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.
   11129 
   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.
   11141 
   11142 2002-06-14  Richard Williamson  <rjw (a] apple.com>
   11143 
   11144     Name change view -> webView.
   11145     
   11146 	* kwq/KWQKHTMLPart.mm:
   11147 	(KWQKHTMLPartImpl::requestFrame):
   11148 	* kwq/external.h:
   11149 
   11150 2002-06-14  Chris Blumenberg  <cblu (a] apple.com>
   11151 
   11152 	Put #ifndef APPLE_CHANGES around one line that
   11153 	was causing EMBED and OBJECT tags to not have render objects.
   11154 
   11155 	* khtml/html/html_objectimpl.cpp:
   11156 	(HTMLObjectElementImpl::attach):
   11157 
   11158 2002-06-14  Chris Blumenberg  <cblu (a] apple.com>
   11159 
   11160 	Committing Richard's changes to KWQPainter
   11161 
   11162 2002-06-13  Richard Williamson  <rjw (a] apple.com>
   11163 
   11164     More cleanup to deal with special case of provisional view
   11165     not being in a scrollview.
   11166     
   11167 	* kwq/KWQScrollView.mm:
   11168 	(QScrollView::contentsWidth):
   11169 	(QScrollView::contentsHeight):
   11170 	(QScrollView::contentsX):
   11171 	(QScrollView::contentsY):
   11172 
   11173 2002-06-13  Richard Williamson  <rjw (a] apple.com>
   11174 
   11175     
   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
   11179 
   11180 2002-06-12  Kenneth Kocienda  <kocienda (a] apple.com>
   11181 
   11182 	* kwq/kwqdebug.h: Made assertion failure console message bolder and easier to see.
   11183 
   11184 2002-06-11  Darin Adler  <darin (a] apple.com>
   11185 
   11186 	* kwq/KWQKURL.mm:
   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.
   11192 
   11193 2002-06-10  Darin Adler  <darin (a] apple.com>
   11194 
   11195 	* khtml/css/cssstyleselector.cpp: Fix uninitialized variable warning.
   11196 
   11197 2002-06-10  Darin Adler  <darin (a] apple.com>
   11198 
   11199 	Merged in changes from KDE 3.0.1.
   11200 
   11201 	* kwq/kdecore/kurl.h:
   11202 	* kwq/KWQKURL.mm: (operator==): New, needed by some 3.0.1 code.
   11203 
   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.
   11208 
   11209 	* kwq/qt/qstring.h:
   11210 	* kwq/KWQString.mm: (QConstString::QConstString): Change parameter to const QChar *
   11211 	to match Qt so we compile.
   11212 
   11213 	* kwq/qt/qtextedit.h:
   11214 	* kwq/KWQTextEdit.mm: (QTextEdit::setTabStopWidth): Add unimplemented placeholder,
   11215 	needed by some 3.0.1 code.
   11216 
   11217 	* kwq/qt/qvaluelist.h:
   11218 	* kwq/KWQValueListImpl.h:
   11219 	* kwq/KWQValueListImpl.mm: Simplify implementation.
   11220 
   11221 	* WebCore-tests.exp: Update for changes in QValueList implementation.
   11222 
   11223 	* kwq/kdecore/klibloader.h: Add include of <kio/global.h> to make something compile.
   11224 
   11225 	* kwq/khtml/java/kjavaappletcontext.h: Add JType and constructor that takes DCOPObject*.
   11226 
   11227 	* kwq/kio/global.h: Add KIO::CacheControl.
   11228 
   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.
   11326 
   11327 2002-06-07  Darin Adler  <darin (a] apple.com>
   11328 
   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.
   11331 
   11332 2002-06-07  Maciej Stachowiak  <mjs (a] apple.com>
   11333 
   11334 	* Makefile.am: Rename libwebcore.dylib to libwebcore.a; since this
   11335 	target is just a fake for dependency purposes, it doesn't matter
   11336 	what it's called.
   11337 	* .cvsignore: Update ignorance.
   11338 
   11339 2002-06-07  Darin Adler  <darin (a] apple.com>
   11340 
   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.
   11345 
   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:
   11353 	* kwq/KWQKURL.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++.
   11362 
   11363 2002-06-07  Darin Adler  <darin (a] apple.com>
   11364 
   11365 	* kwq/KWQPtrDictImpl.h: Use CoreFoundation.h -- new compiler
   11366 	is picky about the difference between struct and typedef.
   11367 
   11368 	* kwq/KWQValueListImpl.h: Add a friend declaration that we need
   11369 	because the new compiler is more strict.
   11370 
   11371 	- fix 2949882 -- joecartoon.com crashes
   11372 
   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.
   11376 
   11377 2002-06-07  Chris Blumenberg  <cblu (a] apple.com>
   11378 
   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.
   11383 
   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):
   11392 	* kwq/external.h:
   11393 
   11394 === Alexander-8 ===
   11395 
   11396 2002-06-07  Darin Adler  <darin (a] apple.com>
   11397 
   11398 	Try to make Jersey work again.
   11399 
   11400 	* kwq/KWQInvisibleButton.h: Simplify includes.
   11401 	* kwq/KWQInvisibleButton.mm: Simplify includes.
   11402 
   11403 2002-06-05  Darin Adler  <darin (a] apple.com>
   11404 
   11405 	Some fixes to speed up the citibank.com page, and other related changes.
   11406 
   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
   11409 	sure it's correct.
   11410 
   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
   11414 	be inline.
   11415 
   11416 	* kwq/KWQListImpl.mm:
   11417 	(copyList): Now a static function rather than a member of the now-defunct
   11418 	private class.
   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.
   11439 
   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.
   11442 
   11443 	* kwq/qt/qbuffer.h: Initialize opened to false. This was causing a test failure.
   11444 
   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
   11448 	iterator inline.
   11449 
   11450 	* kwq/KWQPtrDictImpl.h: Remove unneeded include.
   11451 
   11452 	* WebCore-tests.exp: Update for changes in the entry points
   11453 	used by the tests.
   11454 
   11455 2002-06-05  Richard Williamson  <rjw (a] apple.com>
   11456 
   11457     Fixed 2938552.  This required an implementation of KHTMLPart::frames which
   11458     is used by the JS window.frames property.
   11459     
   11460 	* khtml/khtml_part.cpp:
   11461 	(KHTMLPart::frames):
   11462 	* kwq/KWQKHTMLPart.mm:
   11463 	(KWQKHTMLPartImpl::frames):
   11464 	* kwq/KWQKHTMLPartImpl.h:
   11465 
   11466 2002-06-05  Richard Williamson  <rjw (a] apple.com>
   11467 
   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.
   11470 
   11471 	* khtml/khtml_part.cpp:
   11472 	(KHTMLPart::parentPart):
   11473 	* kwq/KWQKHTMLPart.mm:
   11474 	(KWQKHTMLPartImpl::parentPart):
   11475 	* kwq/KWQKHTMLPartImpl.h:
   11476 
   11477 2002-06-05  Richard Williamson  <rjw (a] apple.com>
   11478 
   11479     Cleaned up call to frameNamed:.  Now use frame relative naming.
   11480     Fixed various frame related bugs.
   11481     
   11482 	* kwq/KWQKHTMLPart.mm:
   11483 	(KWQKHTMLPartImpl::urlSelected):
   11484 	* kwq/external.h:
   11485 
   11486 2002-06-04  Richard Williamson  <rjw (a] apple.com>
   11487 
   11488 	* kwq/KWQKHTMLPart.mm:
   11489 	(KWQKHTMLPartImpl::timerEvent):
   11490 	(KWQKHTMLPartImpl::redirectURL):
   11491 	
   11492 	Renamed redirectJS to redirectURL to more correctly reflect it's
   11493 	function.
   11494 	
   11495 	(KWQKHTMLPartImpl::urlSelected):
   11496 
   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.
   11499 
   11500 	* kwq/KWQKHTMLPartImpl.h:
   11501 	* kwq/external.h:
   11502 
   11503 2002-06-04  Richard Williamson  <rjw (a] apple.com>
   11504 
   11505     More exclusion for pre 6C48.
   11506     
   11507 	* kwq/KWQPixmap.mm:
   11508 	(QPixmap::QPixmap):
   11509 
   11510 2002-06-04  Kenneth Kocienda  <kocienda (a] apple.com>
   11511 
   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.
   11514 
   11515 2002-06-04  Richard Williamson  <rjw (a] apple.com>
   11516 
   11517     Changes to support progressive image loading.  Currently disabled
   11518     until 2945218 is fixed.
   11519     
   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:
   11527 
   11528 2002-06-04  Darin Adler  <darin (a] apple.com>
   11529 
   11530 	- fixed 2943897 -- Initial uncached load of amazon.com renders partial page.
   11531 
   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
   11536 	encoding is.
   11537 
   11538 2002-06-03  Darin Adler  <darin (a] apple.com>
   11539 
   11540 	* LICENSE: Add 2002.
   11541         
   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.
   11547 
   11548 	* kwq/Makefile.am:
   11549 	* kwq/KWQKApplication.mm: Removed.
   11550 	* kwq/kdecore/kapp.h: Removed.
   11551 
   11552 2002-06-03  Darin Adler  <darin (a] apple.com>
   11553 
   11554 	A few more unused things.
   11555 
   11556 	* kwq/Makefile.am: Removed KWQKProcess.mm
   11557 	* kwq/KWQKProcess.mm: Removed.
   11558 	* kwq/KWQStrList.h: Removed.
   11559 	* kwq/kdecore/kprocess.h: Removed.
   11560 
   11561 2002-06-03  Darin Adler  <darin (a] apple.com>
   11562 
   11563 	Forgot one file.
   11564 
   11565 	* kwq/qt/qframe.h: Added.
   11566 
   11567 2002-06-03  Darin Adler  <darin (a] apple.com>
   11568 
   11569 	Get rid of many unneeded APPLE_CHANGES.
   11570 	Also get rid of _KWQ_ and _KWQ_PEDANTIC_.
   11571 
   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.
   11575 
   11576 	* khtml/html/htmlparser.cpp:
   11577 	* khtml/html/htmltokenizer.cpp:
   11578 	Simplified APPLE_CHANGES for better merging.
   11579 
   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.
   11598 
   11599 	* khtml/misc/loader.cpp: (CachedImage::pixmap): Turned off more of
   11600 	the QMovie code.
   11601 
   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.
   11607 
   11608 	* kwq/KWQApplication.mm: (QApplication::sendEvent): Implemented.
   11609 	* kwq/KWQChar.mm: (QChar::direction): Improved implementation.
   11610 
   11611 	* kwq/KWQCollection.h: Removed.
   11612 	* kwq/KWQIcon.h: Removed.
   11613 
   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.
   11619 
   11620 	* kwq/KWQObject.mm: (QObject::event): Added, does nothing.
   11621 	(QObject::inherits): Put in real implementation (good enough for us).
   11622 
   11623 	* kwq/WCWebDataSource.h: Removed extern declaration of global.
   11624 
   11625 	* kwq/KWQCursor.mm: (QCursor::handle): Made the handle be an
   11626 	NSCursor *.
   11627 
   11628 	* kwq/external.h: Moved [IFWebView setFrameSize:] here.
   11629 	Got rid of IFAnimatedImage.
   11630 
   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.
   11635 
   11636 	* kwq/KWQBuffer.mm:
   11637 	* kwq/KWQCString.mm:
   11638 	* kwq/KWQCollection.mm:
   11639 	* kwq/KWQCompletion.h:
   11640 	* kwq/KWQCompletion.mm:
   11641 	* kwq/KWQFrame.h:
   11642 	* kwq/KWQFrame.mm:
   11643 	* kwq/KWQHBox.mm:
   11644 	* kwq/KWQKFileItem.mm:
   11645 	* kwq/KWQKIconLoader.mm:
   11646 	* kwq/KWQKLineEdit.mm:
   11647 	* kwq/KWQKProtocolManager.mm:
   11648 	* kwq/KWQLabel.mm:
   11649 	* kwq/KWQListBox.h:
   11650 	* kwq/KWQMovie.mm:
   11651 	* kwq/KWQWidget.mm:
   11652 	* kwq/KWQxml.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:
   11670 	* kwq/qt/qxml.h:
   11671 	* kwq/kparts/browserinterface.h:
   11672 	* kwq/kparts/factory.h:
   11673 	* kwq/kparts/part.h:
   11674 	* kwq/qt/qarray.h:
   11675 	* kwq/qt/qcollection.h:
   11676 	* kwq/qt/qcstring.h:
   11677 	* kwq/qt/qcursor.h:
   11678 	* kwq/qt/qdict.h:
   11679 	* kwq/qt/qhbox.h:
   11680 	* kwq/qt/qlabel.h:
   11681 	* kwq/qt/qlist.h:
   11682 	* kwq/qt/qmap.h:
   11683 	* kwq/qt/qmovie.h:
   11684 	* kwq/qt/qobject.h:
   11685 	* kwq/qt/qpaintdevicemetrics.h:
   11686 	* kwq/qt/qpainter.h:
   11687 	* kwq/qt/qpoint.h:
   11688 	* kwq/qt/qradiobutton.h:
   11689 	* kwq/qt/qrect.h:
   11690 	* kwq/qt/qregion.h:
   11691 	* kwq/qt/qscrollview.h:
   11692 	* kwq/qt/qsize.h:
   11693 	* kwq/qt/qstack.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:
   11699 	* kwq/qt/qxml.h:
   11700 	Removed unused stuff.
   11701 
   11702 	* kwq/KWQListBox.mm:
   11703 	* kwq/KWQMapImpl.h:
   11704 	* kwq/KWQMapImpl.mm:
   11705 	* kwq/KWQPainter.mm:
   11706 	* kwq/KWQPoint.mm:
   11707 	* kwq/KWQRadioButton.mm:
   11708 	* kwq/KWQRect.mm:
   11709 	* kwq/KWQRegion.mm:
   11710 	* kwq/KWQScrollBar.h:
   11711 	* kwq/KWQScrollView.mm:
   11712 	* kwq/KWQSize.mm:
   11713 	* kwq/KWQStringList.mm:
   11714 	* kwq/KWQbrowserinterface.mm:
   11715 	Simplified.
   11716 
   11717 	* kwq/kdecore/kurl.h:
   11718 	Added include to match what's expected by clients.
   11719 
   11720 	* kwq/qt/qobjectlist.h: Added. Empty file to make includers happy.
   11721 
   11722 	* kwq/khtml/khtml_printsettings.h: Added. Empty file.
   11723 	* kwq/qt/qobjectlist.h: Added. Empty file.
   11724 
   11725 	* kwq/kio/kssl/ksslkeygen.h: Define just enough to make callers
   11726 	happy.
   11727 
   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.
   11731 
   11732 2002-06-01  Darin Adler  <darin (a] apple.com>
   11733 
   11734 	* kwq/KWQPtrDictImpl.mm: (KWQPtrDictPrivate::~KWQPtrDictPrivate):
   11735 	Fix compile error.
   11736 
   11737 2002-05-31  Darin Adler  <darin (a] apple.com>
   11738 
   11739 	Fix infinite loop while cancelling bug that was caused by dictionary
   11740 	iterators not getting updated when keys are removed.
   11741 
   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
   11751 	private storage.
   11752 	(KWQPtrDictIteratorPrivate::dictDestroyed): Clear out the dict pointer
   11753 	and set the count to 0.
   11754 
   11755 	* kwq/KWQPtrDictImpl.h: Move private classes out so they can get at each
   11756 	other without being friends of each other.
   11757 
   11758 	* kwq/qt/qptrdict.h: Simplify a bit.
   11759 
   11760 2002-05-31  Darin Adler  <darin (a] apple.com>
   11761 
   11762 	* khtml/khtmlview.h: Add KWQKHTMLPartImpl as friend class, remove khtml_part.h
   11763 	include that we added inside APPLE_CHANGES.
   11764 
   11765 	* kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::end): Reinstate a line of code that
   11766 	required friend status.
   11767 
   11768 	* kwq/KWQView.mm: Add include of khtml_part.h.
   11769 
   11770 2002-05-31  Darin Adler  <darin (a] apple.com>
   11771 
   11772 	* kwq/kwqdebug.h: Don't use displayableString; it's an SPI and those
   11773 	are no nos inside WebCore.
   11774 
   11775 2002-05-31  Darin Adler  <darin (a] apple.com>
   11776 
   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.
   11784 
   11785 	* kwq/kio/job.h: Simplify.
   11786 	* kwq/KWQKJob.mm: Simplify.
   11787 
   11788 	* kwq/kio/scheduler.h: Emptied this file out.
   11789 	* kwq/KWQKScheduler.mm: Removed.
   11790 	* kwq/Makefile.am: Removed KWQKScheduler.mm.
   11791 
   11792 2002-05-31  Darin Adler  <darin (a] apple.com>
   11793 
   11794 	Remove some unused stuff; total of 1000s of lines.
   11795 
   11796 	* Makefile.am: Removed some strange uses of "./" and
   11797 	improved stamp-related rules.
   11798 
   11799 	* WebCore-tests.exp: Removed QDir functions.
   11800 
   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.
   11809 
   11810 	* khtml/css/Makefile.am:
   11811 	* khtml/misc/Makefile.am:
   11812 	Improve stamp-related rules.
   11813 
   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.
   11819 
   11820 	* kwq/KWQApplication.mm:
   11821 	* kwq/KWQFontInfo.mm:
   11822 	* kwq/KWQInputDialog.mm:
   11823 	* kwq/KWQKFileDialog.mm:
   11824 	* kwq/KWQKHTMLPartBrowserExtension.mm:
   11825 	* kwq/KWQKWin.mm:
   11826 	* kwq/KWQKWinModule.mm:
   11827 	* kwq/KWQKstddirs.mm:
   11828 	* kwq/KWQPixmap.mm:
   11829 	Simplified, removed unused code, minor tweaks.
   11830 
   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.
   11850 
   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.
   11855 
   11856 	* kwq/KWQEvent.mm: Initialize event type in QEvent subclasses.
   11857 
   11858 	* kwq/WebCoreImageRenderer.h: Added NSObject and NSCopying protocols to
   11859 	the WebCoreImageRenderer protocol.
   11860 
   11861 	* kwq/kwqdebug.h: Use displayableString in DEBUG_OBJECT for better logging.
   11862 
   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:
   11874 	* kwq/qt/qbrush.h:
   11875 	* kwq/qt/qbutton.h:
   11876 	* kwq/qt/qcheckbox.h:
   11877 	* kwq/qt/qcollection.h:
   11878 	* kwq/qt/qcolor.h:
   11879 	* kwq/qt/qcombobox.h:
   11880 	* kwq/qt/qcursor.h:
   11881 	* kwq/qt/qdrawutil.h:
   11882 	* kwq/qt/qevent.h:
   11883 	* kwq/qt/qfont.h:
   11884 	* kwq/qt/qfontdatabase.h:
   11885 	* kwq/qt/qfontinfo.h:
   11886 	* kwq/qt/qimage.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.
   11894 
   11895 	* khtml/khtml_part.cpp:
   11896 	(KHTMLPart::khtmlMouseMoveEvent): Add missing parenthesis.
   11897 
   11898 2002-05-30  Maciej Stachowiak  <mjs (a] apple.com>
   11899 
   11900 	WebCore part of fixes for:
   11901 
   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
   11906 	
   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.
   11923 	* kwq/KWQView.mm:
   11924 	(-[KWQHTMLView setCursor:]): Fixes to set cursor properly even if
   11925 	none was set.	
   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.
   11929 
   11930 2002-05-30  Darin Adler  <darin (a] apple.com>
   11931 
   11932 	Cut down our copied and pasted code even more.
   11933 
   11934 	* WebCore.exp: Change what's exported for things that moved from
   11935 	KHTMLPart into KWQKHTMLPartImpl.
   11936 
   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.
   11947 
   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.
   11955 
   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.
   11965 
   11966 	* kwq/kparts/historyprovider.h: Add HistoryProvider::insert.
   11967 	* kwq/KWQKHistoryProvider.mm: Add HistoryProvider::insert.
   11968 
   11969 	* kwq/KWQKLocale.mm: (KLocale::language): Simplify.
   11970 
   11971 	* kwq/KWQListBox.h:
   11972 	* kwq/KWQNSTextField.h:
   11973 	Use import instead of include for Cocoa.h.
   11974 
   11975 	* kwq/KWQScrollView.mm: (QScrollView::contentsToViewport): Implement this.
   11976 
   11977 	* kwq/external.h: Add declarations so this can be included cleanly.
   11978 
   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.
   11981 
   11982 	* kwq/kparts/part.h: Put ref/deref and event/customEvent in here so they don't need
   11983 	to be added to KHTMLPart.
   11984 
   11985 	* kwq/kio/scheduler.h: Add <qtimer.h> include to help us build (not sure if it's
   11986 	really needed.
   11987 	* kwq/kparts/partmanager.h: Add <qdatetime.h> include to help us build (not sure if it's
   11988 	really needed.
   11989 
   11990 === Alexander-7 ===
   11991 
   11992 2002-05-29  Richard Williamson  <rjw (a] apple.com>
   11993 
   11994     Changes to support animated image rendering.
   11995     Moved image rendering into webkit.
   11996     
   11997 	* WebCore.exp:
   11998 	* kwq/KWQPainter.mm:
   11999 	(QPainter::drawPixmap):
   12000 	(QPainter::drawTiledPixmap):
   12001 	(QPainter::translate):
   12002 	(QPainter::scale):
   12003 	(QPainter::begin):
   12004 	(QPainter::end):
   12005 	* kwq/KWQPixmap.mm:
   12006 	(QPixmap::QPixmap):
   12007 	(QPixmap::~QPixmap):
   12008 	(QPixmap::isNull):
   12009 	(QPixmap::size):
   12010 	(QPixmap::rect):
   12011 	(QPixmap::width):
   12012 	(QPixmap::height):
   12013 	(QPixmap::resize):
   12014 	(QPixmap::operator=):
   12015 	* kwq/Makefile.am:
   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:
   12024 
   12025 2002-05-28  Richard Williamson  <rjw (a] apple.com>
   12026 
   12027     Moved cancellation check before creation on job instance,
   12028     preventing leak.
   12029     
   12030 	* kwq/KWQKloader.mm:
   12031 	(Loader::servePendingRequests):
   12032 
   12033 2002-05-28  Richard Williamson  <rjw (a] apple.com>
   12034 
   12035     Fixed edge case cancellation problem (actually happens a lot).
   12036     No new loads are allowed after a data source has been
   12037     set as "stopping".
   12038     
   12039 	* kwq/KWQKloader.mm:
   12040 	(Loader::servePendingRequests):
   12041 	* kwq/external.h:
   12042 
   12043 2002-05-28  Richard Williamson  <rjw (a] apple.com>
   12044 
   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.
   12048 
   12049 	* kwq/KWQKjobclasses.mm:
   12050 	* kwq/KWQKloader.mm:
   12051 	(Loader::servePendingRequests):
   12052 
   12053 2002-05-28  Chris Blumenberg  <cblu (a] apple.com>
   12054 
   12055 	Added framework-header-stamp
   12056 
   12057 	* .cvsignore:
   12058 
   12059 2002-05-27  John Sullivan  <sullivan (a] apple.com>
   12060 
   12061 	* Resources/linkCursor.tiff: Added. Maciej forgot to cvs add
   12062 	this new file. I stole the one from haircut.
   12063 
   12064 2002-05-27  Maciej Stachowiak  <mjs (a] apple.com>
   12065 
   12066 	Fixed the vexing and long-standing:
   12067 
   12068 	Radar 2894699 - Crash at: http://cb.apple.com/jsplugins.html
   12069 	
   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
   12074 	well.
   12075 
   12076 2002-05-26  Maciej Stachowiak  <mjs (a] apple.com>
   12077 
   12078 	Webcore part of fix for:
   12079 
   12080 	Radar 2884085 - add support for changing cursor over links
   12081 
   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
   12092 	arrow cursor.
   12093 	* kwq/KWQKHTMLSettings.mm:
   12094 	(KHTMLSettings::changeCursor): Return TRUE; we always want cursor
   12095 	tracking.
   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.
   12106 
   12107 2002-05-25  Maciej Stachowiak  <mjs (a] apple.com>
   12108 
   12109 	Changed WebCore to build as a framework, not a dylib, so resources
   12110 	can be added to it.
   12111 
   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.
   12120 
   12121 === 0.3 ===
   12122 
   12123 2002-05-24  Shelley A Sheridan  <sheridan (a] apple.com>
   12124 
   12125 	* ChangeLog:
   12126 
   12127 === Alexander-6 ===
   12128 
   12129 2002-05-23  Maciej Stachowiak  <mjs (a] apple.com>
   12130 
   12131 	Fixes for the following (the first bug also requires WebKit and
   12132 	WebBrowser changes):
   12133 	
   12134 	Radar 2896391 - command-click should open link in new window
   12135 	Radar 2935858 - two mails for each mailto:
   12136 
   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
   12143 	command-clicked.
   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.
   12150 
   12151 2002-05-23  Kenneth Kocienda  <kocienda (a] apple.com>
   12152 
   12153         More work to fix this bug:
   12154 
   12155         Radar 2883631 (need to implement support for META HTTP_EQUIV=REFRESH)
   12156 
   12157         There was yet two more cases where the refresh timers were getting clobbered.
   12158         Fixed.
   12159 
   12160 	* khtml/ecma/kjs_window.cpp:
   12161 	(WindowQObject::parentDestroyed)
   12162 	* khtml/khtmlview.cpp:
   12163 	(KHTMLView::clear)
   12164 
   12165 2002-05-23  Richard J. Williamson  <rjw (a] apple.com>
   12166 
   12167     Fixed crasher 2935757.  I still need to investigate the root cause
   12168     of this problem.
   12169     
   12170 	* khtml/rendering/render_text.cpp:
   12171 	(RenderText::setText):
   12172 
   12173 2002-05-23  Kenneth Kocienda  <kocienda (a] apple.com>
   12174 
   12175         Fixes for these bugs:
   12176 
   12177         Radar 2883631 (need to implement support for META HTTP_EQUIV=REFRESH)
   12178         Radar 2935472 (Non-standard html pages don't always get decoded)
   12179 
   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
   12191 
   12192 2002-05-23  Shelley A Sheridan  <sheridan (a] apple.com>
   12193 
   12194 	* ChangeLog:
   12195 
   12196 === Alexander-5 ===
   12197 
   12198 2002-05-23  Maciej Stachowiak  <mjs (a] apple.com>
   12199 
   12200 	Notify when loads of sub-URLs start and stop, so panels for these
   12201 	can be attached to the right windows.
   12202 
   12203 	* kwq/KWQKloader.mm:
   12204 	(-[URLLoadClient IFURLHandleResourceDidBeginLoading:]):
   12205 	(-[URLLoadClient IFURLHandleResourceDidCancelLoading:]):
   12206 	(-[URLLoadClient IFURLHandleResourceDidFinishLoading:data:]):
   12207 	(-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
   12208 	(-[URLLoadClient IFURLHandle:didRedirectToURL:]):
   12209 	* kwq/external.h:
   12210 
   12211 2002-05-22  Richard J. Williamson  <rjw (a] apple.com>
   12212     
   12213 
   12214     Additional additional callback when resource is first loaded.
   12215         
   12216 	* kwq/KWQKloader.mm:
   12217 	(-[URLLoadClient IFURLHandleResourceDidBeginLoading:]):
   12218 
   12219 2002-05-21  Richard J. Williamson  <rjw (a] apple.com>
   12220 
   12221     Lots of changes for DHTML.
   12222     Bugs fixes, and fixes to regressions.
   12223     
   12224 	* khtml/misc/decoder.cpp:
   12225 	(Decoder::decode):
   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):
   12233 	* kwq/qt/qevent.h:
   12234 	* kwq/qt/qstring.h:
   12235 	* libwebcore.exp:
   12236 
   12237 2002-05-21  Kenneth Kocienda  <kocienda (a] apple.com>
   12238 
   12239         Fix for this bug:
   12240 
   12241         Radar 2924728 (post form fails at pt.apple.com; succeeds at macosx.apple.com)
   12242 
   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.
   12247 
   12248 	* kwq/KWQKHTMLPart.mm:
   12249 	(KHTMLPart::submitForm)
   12250 
   12251 2002-05-21  Kenneth Kocienda  <kocienda (a] apple.com>
   12252 
   12253         Merged these four include files into the precompiled header.
   12254         These are used for the enhanced assertion/debuggin support I
   12255         added yesterday.
   12256 
   12257         <signal.h>
   12258         <sys/types.h>
   12259         <sys/time.h>
   12260         <sys/resource.h>
   12261 
   12262 	* WebCorePrefix.h
   12263 
   12264 2002-05-20  Darin Adler  <darin (a] apple.com>
   12265 
   12266 	Forgot one file.
   12267 
   12268 	* khtml/khtml_part.moc: Added.
   12269 
   12270 2002-05-20  Darin Adler  <darin (a] apple.com>
   12271 
   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.
   12274 
   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.
   12280 
   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.
   12285 
   12286 	* khtml/khtml_ext.h: Removed.
   12287 	* khtml/khtml_factory.h: Removed.
   12288 
   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.
   12293 
   12294 	* kwq/KWQDateTime.mm:
   12295 	Simplify things like copy constructors.
   12296 
   12297 	* kwq/kdeui/kcursor.h:
   12298 	* kwq/KWQKCursor.mm:
   12299 	Add handCursor.
   12300 
   12301 	* kwq/KWQKHTMLFactory.mm:
   12302 	Put in real implementations, not just placeholders.
   12303 
   12304 	* kwq/KWQKHTMLPartBrowserExtension.mm:
   12305 	* kwq/KWQKInstance.mm:
   12306 	* kwq/KWQPart.mm:
   12307 	* kwq/KWQbrowserextension.mm:
   12308 	Empty these files out, nothing in them is needed any more.
   12309 
   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
   12318 
   12319 	* kwq/kdecore/kurl.h:
   12320 	* kwq/KWQKURL.mm:
   12321 	(KURL::encodedHtmlRef):
   12322 	(KURL::htmlRef):
   12323 	Placeholders for these two, called in KHTMLPart, but maybe not really needed.
   12324 
   12325 	* kwq/KWQKloader.mm:
   12326 	(Cache::preloadScript):
   12327 	(Cache::preloadStyleSheet):
   12328 	Empty functions for these, called in KHTMLPart but no implementation needed.
   12329 
   12330 	* kwq/qt/qtimer.h:
   12331 	* kwq/KWQTimer.mm:
   12332 	(QTimer::isActive):
   12333 	(QTimer::start):
   12334 	(QTimer::stop):
   12335 	More timer functions.
   12336 
   12337 	* kwq/qt/qscrollview.h: Add one more function.
   12338 
   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.
   12345 
   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.
   12350 
   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.
   12368 
   12369 	* libwebcoretests.exp: Remove one export that's no longer needed.
   12370 
   12371 2002-05-20  Richard J. Williamson  <rjw (a] apple.com>
   12372 
   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:
   12385 
   12386 2002-05-20  Kenneth Kocienda  <kocienda (a] apple.com>
   12387 
   12388 	* kwq/kwqdebug.h: Now includes <sys/time.h> to prevent possible
   12389         build breakage in the inclusion of <sys/resource.h>
   12390 
   12391 2002-05-20  Kenneth Kocienda  <kocienda (a] apple.com>
   12392 
   12393         Changed assertion failure code to send a SIGQUIT instead
   12394         of raising an NSException.
   12395 
   12396 	* kwq/kwqdebug.h
   12397 
   12398 2002-05-19  Darin Adler  <darin (a] apple.com>
   12399 
   12400 	* khtml/rendering/render_object.cpp: (RenderObject::drawBorder):
   12401 	Add missing break statement so borders don't draw strangely.
   12402 
   12403 	* khtml/rendering/render_style.h: Remove unneeded QColor workaround,
   12404 	now that we handle invalid colors properly.
   12405 
   12406 	* kwq/KWQColor.mm:
   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.
   12421 
   12422 	* kwq/KWQCursor.mm: Simplify cursor globals.
   12423 
   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.
   12432 
   12433 	* kwq/KWQPen.mm: (QPen::QPen): (QPen::setStyle): Remove use of MPenStyle.
   12434 
   12435 	* kwq/KWQPixmap.mm: (QPixmap::QPixmap): Add comments.
   12436 
   12437 	* kwq/qt/qcolor.h: Simplify ifdefs, remove cname, _initialize, globals_init, and
   12438 	initGlobalColors.
   12439 
   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.
   12444 
   12445 	* kwq/qt/qpen.h: QPainter is no longer a friend class. Remove linest.
   12446 
   12447 2002-05-17  Darin Adler  <darin (a] apple.com>
   12448 
   12449 	* khtml/rendering/render_list.cpp: (RenderListItem::setStyle):
   12450 	OK. This time it's correct.
   12451 
   12452 2002-05-17  Darin Adler  <darin (a] apple.com>
   12453 
   12454 	* khtml/rendering/render_list.cpp: (RenderListItem::setStyle):
   12455 	Roll the change out while I see why it causes a crash.
   12456 
   12457 2002-05-17  Darin Adler  <darin (a] apple.com>
   12458 
   12459 	* khtml/rendering/render_list.cpp: (RenderListItem::setStyle):
   12460 	Remove an old incorrect fix for a style leak in here and put in
   12461 	a new correct fix.
   12462 
   12463 2002-05-16  Richard J. Williamson  <rjw (a] apple.com>
   12464 
   12465 	Fixed 2896350.  Ignore DPI in images and render directly at pixel size.
   12466 	
   12467 	* kwq/KWQPainter.mm:
   12468 	(QPainter::drawPixmap):
   12469 	* kwq/KWQPixmap.mm:
   12470 	(QPixmap::QPixmap):
   12471 
   12472 2002-05-16  Richard J. Williamson  <rjw (a] apple.com>
   12473 
   12474 	Fixed 2925638.  Don't send last progress message from resourceDataDidBecomeAvailable,
   12475 	it is sent from IFURLHandleResourceDidFinishLoading, avoiding duplication.
   12476 	
   12477 	* kwq/KWQKloader.mm:
   12478 	(-[URLLoadClient IFURLHandle:resourceDataDidBecomeAvailable:]):
   12479 
   12480 2002-05-15  Richard J. Williamson  <rjw (a] apple.com>
   12481     
   12482     Alerts, useful for validating that js handlers work.
   12483     Validated that onsubmit is working.
   12484     
   12485 	* kwq/KWQKMessageBox.mm:
   12486 	(KMessageBox::error):
   12487 	(KMessageBox::warningYesNo):
   12488 	(KMessageBox::questionYesNo):
   12489 	(KMessageBox::sorry):
   12490 
   12491 2002-05-15  Darin Adler  <darin (a] apple.com>
   12492 
   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.
   12495 
   12496 2002-05-15  Kenneth Kocienda  <kocienda (a] apple.com>
   12497 
   12498 	* kwq/KWQInvisibleButton.h: Changed an #include of Cocoa.h to an #import
   12499 
   12500 2002-05-15  Darin Adler  <darin (a] apple.com>
   12501 
   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.
   12512 
   12513 2002-05-14  Richard J. Williamson  <rjw (a] apple.com>
   12514 
   12515     Added another symbol for stack based event constructor.
   12516     Change to support onLoad.
   12517     
   12518 	* kwq/KWQKHTMLPart.mm:
   12519 	(KHTMLPart::end):    
   12520 	* libwebcore.exp:
   12521 
   12522 2002-05-14  Chris Blumenberg  <cblu (a] apple.com>
   12523 
   12524 	Changed slotData to slotData(NSString *encoding, const char *bytes, int length)
   12525 
   12526 	* khtml/khtml_part.h:
   12527 	* kwq/KWQKHTMLPart.mm:
   12528 	(KHTMLPart::slotData):
   12529 	* libwebcore.exp:
   12530 
   12531 2002-05-14  Darin Adler  <darin (a] apple.com>
   12532 
   12533 	Fixed 2925291 -- CSS2 test page causes infinite recursion, crash
   12534 
   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.
   12539 
   12540 2002-05-14  Darin Adler  <darin (a] apple.com>
   12541 
   12542 	* kwq/KWQListImpl.mm: (KWQListIteratorImpl::KWQListIteratorImpl):
   12543 	Add a missing check for a null pointer.
   12544 
   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.
   12548 
   12549 2002-05-13  Darin Adler  <darin (a] apple.com>
   12550 
   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.
   12553 
   12554 2002-05-13  Darin Adler  <darin (a] apple.com>
   12555 
   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.
   12560 
   12561 	* khtml/ecma/kjs_html.h: Use a QGuardedPtr to the DocumentImpl instead of using
   12562 	a Document object.
   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
   12566 	that can become 0.
   12567 	(Image::Image): Newly out of line. Changed because the "doc" pointer is now a
   12568 	pointer to the DocumentImpl, not the Document.
   12569 
   12570 	Since the solution used QGuardedPtr, I had to implement it.
   12571 
   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.
   12578 
   12579 	* kwq/qt/qobject.h:
   12580 	* kwq/KWQObject.mm: (QObject::QObject): Create the one-element list that's used
   12581 	by the QGuardedPtr instances.
   12582 
   12583 	Since the above code needed to copy a QPtrListIterator, I needed to support that.
   12584 
   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.
   12589 
   12590 2002-05-13  Maciej Stachowiak  <mjs (a] apple.com>
   12591 
   12592 	Removed libjpeg dependency. Turns out we don't need it.
   12593 	
   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.
   12598 
   12599 2002-05-10  Richard J. Williamson  <rjw (a] apple.com>
   12600 
   12601 	Made log output match webkit logging.
   12602 
   12603 	* kwq/kwqdebug.mm:
   12604 	(KWQLog):
   12605 
   12606 2002-05-10  Chris Blumenberg  <cblu (a] apple.com>
   12607 
   12608 	Changed WCIFWebDataSourceMake to wrap around [IFWebDataSource initWithURL: attributes: flags:]
   12609 	instead of initWithHandle. 
   12610 
   12611 	* kwq/KWQKHTMLPart.mm:
   12612 	(KHTMLPart::requestFrame):
   12613 	(KHTMLPart::submitForm):
   12614 	* kwq/WCWebDataSource.h:
   12615 	* libwebcore.exp:
   12616 
   12617 2002-05-10  Darin Adler  <darin (a] apple.com>
   12618 
   12619 	* kwq/WebCoreTextRenderer.h:
   12620 
   12621 2002-05-09  Richard J. Williamson  <rjw (a] apple.com>
   12622 
   12623     Added new method to avoid creation of NSString.
   12624     
   12625         - (void)drawCharacters:(const UniChar *)characters length: (unsigned)length atPoint:(NSPoint)point withColor:(NSColor *)color;
   12626 
   12627 	* kwq/KWQPainter.mm:
   12628 	(QPainter::drawText):
   12629 	* kwq/WebCoreTextRenderer.h:
   12630 
   12631 2002-05-09  Kenneth Kocienda  <kocienda (a] apple.com>
   12632 
   12633         Fix for this bug:
   12634 
   12635         Radar 2890624 (need to remove workaround for double free of image data from QPixmap)
   12636 
   12637         The appropriate, bug-free AppKit code is now available to us on Jaguar. 
   12638         Rolling out the workaround.
   12639 
   12640 	* kwq/KWQPixmap.mm:
   12641 	(QPixmap::QPixmap)
   12642 
   12643 === Alexander-3 ===
   12644 
   12645 2002-05-07  Darin Adler  <darin (a] apple.com>
   12646 
   12647 	* kwq/KWQFontMetrics.mm: Fixed storage leak by initializing refCount.
   12648 
   12649 2002-05-07  Darin Adler  <darin (a] apple.com>
   12650 
   12651 	Move more plugin code into WebKit.
   12652 
   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.
   12655 
   12656 	* libwebcore.exp: Names of what exported changed.
   12657 	* kwq/Makefile.am: Source file names changed.
   12658 
   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.
   12665 
   12666 	* kwq/KWQFontMetrics.mm:
   12667 	* kwq/KWQPainter.mm:
   12668 	Updated for IF -> WebCore name change.
   12669 
   12670 	* kwq/WebCoreViewFactory.h: Added.
   12671 	* kwq/WebCoreViewFactory.m: Added.
   12672 
   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.
   12676 
   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.
   12682 
   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.
   12689 
   12690 2002-05-06  Darin Adler  <darin (a] apple.com>
   12691 
   12692 	* WebCorePrefix.h: Added.
   12693 
   12694 	* .cvsignore: Ignore the .pfe files in this directory.
   12695 
   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>
   12700 
   12701 	* kwq/KWQFont.mm:
   12702 	* kwq/KWQFontMetrics.mm:
   12703 	* kwq/KWQKGlobal.mm:
   12704 	* kwq/KWQListImpl.mm:
   12705 	* kwq/KWQPtrDictImpl.h:
   12706 	* kwq/KWQVectorImpl.mm:
   12707 	* kwq/kwqdebug.h:
   12708 	* kwq/qt/qcolor.h:
   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.
   12716 
   12717 	* kwq/qt/qpoint.h:
   12718 	* kwq/KWQPointArray.mm: (QPointArray::setPoints):
   12719 	Work around bug with va_arg and PFE by not using varargs here.
   12720 
   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).
   12725 
   12726 	* kwq/KWQView.mm: (-[KWQHTMLView layout]), (-[KWQHTMLView drawRect:]):
   12727 	Switch from xNDEBUG to NDEBUG.
   12728 
   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.
   12731 
   12732 	* kwq/kwqdebug.h: Get rid of format attribute because of bug 2920557.
   12733 	Switch from xNDEBUG to NDEBUG.
   12734 
   12735 	* kwq/kwqdebug.mm: Switch from xNDEBUG to NDEBUG.
   12736 
   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.
   12739 
   12740 2002-05-06  Richard J. Williamson  <rjw (a] apple.com>
   12741         
   12742         Changes to support dhmtl.
   12743         Changes to support targeting (regression after 3.0 merge).
   12744 
   12745 	* khtml/khtmlview.cpp:
   12746 	* kwq/KWQEvent.mm:
   12747 	* kwq/KWQKHTMLPart.mm:
   12748 	* kwq/KWQObject.mm:
   12749 	* kwq/KWQWidget.mm:
   12750 	* kwq/qt/qevent.h:
   12751 	* kwq/qt/qobject.h:
   12752 	* kwq/qt/qwidget.h:
   12753 
   12754 2002-05-03  Darin Adler  <darin (a] apple.com>
   12755 
   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.
   12761 
   12762 2002-05-03  Darin Adler  <darin (a] apple.com>
   12763 
   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.
   12770 
   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
   12773 	case.
   12774 
   12775 	* kwq/qt/qfont.h: Simplify a lot. Doesn't hold an NSFont any more.
   12776 	* kwq/KWQFont.mm:
   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.
   12791 
   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.
   12802 
   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.
   12809 
   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.
   12814 
   12815 	* libwebcore.exp: Export the IFTextRendererFactory class.
   12816 
   12817 2002-04-26  Darin Adler  <darin (a] apple.com>
   12818 
   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).
   12822 
   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.
   12826 
   12827 2002-04-26  Darin Adler  <darin (a] apple.com>
   12828 
   12829 	Pay no attention to the man who is not supposed to be working.
   12830 
   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.
   12842 
   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.
   12859 
   12860 	* kwq/kwqdebug.mm: Make some globals private.
   12861 
   12862 2002-04-25  Darin Adler  <darin (a] apple.com>
   12863 
   12864 	* kwq/KWQMetrics.h: Add NSObject to required protocols for
   12865 	the KWQLayoutFragment protocol so we can retain and release.
   12866 
   12867 	* kwq/KWQTextStorage.mm: (-[KWQTextStorage _buildFragmentForString:]):
   12868 	Removed a cast to NSObject * that worked around the lack of the above.
   12869 
   12870 2002-04-25  Richard Williamson  <rjw (a] apple.com>
   12871 
   12872         Little changes in preparation for events.
   12873 
   12874 	* khtml/ecma/kjs_proxy.cpp:
   12875 	(KJSProxyImpl::createHTMLEventHandler):
   12876 	* kwq/KWQKHTMLPart.mm:
   12877 	(KHTMLPart::createHTMLEventListener):
   12878 
   12879 2002-04-25  Darin Adler  <darin (a] apple.com>
   12880 
   12881 	Add a workaround for Radar 2912404 (kCFStringEncodingInvalidId is negative even
   12882 	though CFStringEncoding is unsigned)
   12883 
   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.
   12892 
   12893 2002-04-25  Darin Adler  <darin (a] apple.com>
   12894 
   12895 	Rework plugin code to prepare to move more of it into WebKit.
   12896 
   12897 	* khtml/rendering/render_applet.cpp:
   12898 	(RenderApplet::RenderApplet): Create a widget for the applet using
   12899 	the new simpler API.
   12900 
   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.
   12905 
   12906 	* kwq/KWQKHTMLPart.mm: (KHTMLPart::requestObject): Use the new simpler
   12907 	IFPluginWidgetCreate API instead of the older WCPluginWidget one.
   12908 
   12909 	* kwq/qt/qstring.h: Add simpler conversions to/from NSString.
   12910 	* kwq/KWQString.mm: (QString::fromNSString): New.
   12911 
   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.
   12916 
   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.
   12925 
   12926 	* libwebcore.exp: Update for new function names.
   12927 
   12928 2002-04-24  Chris Blumenberg  <cblu (a] apple.com>
   12929 
   12930 	Renamed [IFWebDataSource frame] to [IFWebDataSource webFrame]
   12931 
   12932 	* kwq/KWQKHTMLPart.mm:
   12933 	(KHTMLPart::submitForm):
   12934 	(KHTMLPart::khtmlMouseReleaseEvent):
   12935 	* kwq/external.h:
   12936 
   12937 === Alexander 0.3c2 (v1) ===
   12938 
   12939 2002-04-24  Darin Adler  <darin (a] apple.com>
   12940 
   12941 	Get rid of all NEED_BOGUS_XXX.
   12942 
   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.
   12949 
   12950 	* kwq/KWQDef.h: Remove XEvent define (inside NEED_BOGUS_X_DEFINES).
   12951 
   12952 	* kwq/qt/qtextstream.h: Don't look at NEED_BOGUS_TEXTSTREAMS.
   12953 	* kwq/KWQtextstream.mm: Don't look at NEED_BOGUS_TEXTSTREAMS.
   12954 
   12955 	* khtml/java/javaembed.h: Made this just a QWidget typedef for now.
   12956 	* khtml/java/kjavaappletwidget.cpp: ifdef out the unused setWindow function.
   12957 
   12958 2002-04-23  Darin Adler  <darin (a] apple.com>
   12959 
   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.
   12966 
   12967 	* kwq/khtml/khtml_settings.h:
   12968 	* kwq/KWQKHTMLSettings.mm:
   12969 	Remove some unused stuff: charset(), setCharset(), availableFamilies(),
   12970 	fontSizes(), SCREEN_RESOLUTION.
   12971 
   12972 2002-04-23  Kenneth Kocienda  <kocienda (a] apple.com>
   12973 
   12974         Reviewed by: Darin Adler
   12975 
   12976         Fix for Radar 2908403 (Fix names in WebFoundation extensions code)
   12977 
   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.
   12982 
   12983         The file here was changed to use the new names.
   12984 
   12985 	* kwq/KWQTextArea.mm:
   12986 	(-[KWQTextArea paragraphs])
   12987 
   12988 2002-04-23  Kenneth Kocienda  <kocienda (a] apple.com>
   12989 
   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. :)
   12994 
   12995 2002-04-22  Darin Adler  <darin (a] apple.com>
   12996 
   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.
   13000 
   13001 	Not sure why this worked better on Puma, but now it's fine on
   13002 	both Puma and Jaguar.
   13003 
   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.
   13010 
   13011 2002-04-22  Darin Adler  <darin (a] apple.com>
   13012 
   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
   13017 	constructor.
   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.
   13027 
   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.
   13031 
   13032 2002-04-22  Chris Blumenberg  <cblu (a] apple.com>
   13033 
   13034 	Added a new method to WCPluginDatabase allHandledMIMETypes.
   13035 	It returns an  array of the mime types that plug-ins handle.
   13036 
   13037 	* kwq/WCPluginDatabase.h:
   13038 	* kwq/WCPluginDatabase.mm:
   13039 	(-[WCPluginDatabase allHandledMIMETypes]):
   13040 
   13041 2002-04-20  Darin Adler  <darin (a] apple.com>
   13042 
   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.
   13046 
   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.
   13051 
   13052 	* kwq/kdecore/kurl.h:
   13053 	* kwq/KWQKURL.mm: (KURL::getNSURL): New.
   13054 
   13055 2002-04-19  Kenneth Kocienda  <kocienda (a] apple.com>
   13056 
   13057         Changes to support submission of forms using HTTP POST.
   13058                 
   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.
   13062         This fixes:
   13063 
   13064         Radar 2903602 (IFWebDataSource API must passes attributes and flags to IFURLHandle)
   13065 
   13066         Fixed handling of password fields:
   13067 
   13068         Radar 2903605 (WebCore form processing drops out password input data)
   13069         
   13070         Added some hacks to get form <input type=image ...> working correctly:
   13071 
   13072         Radar 2907198 (Forms not getting submitted correctly when <input type=image>)
   13073         
   13074         
   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]):
   13082 	* kwq/Makefile.am:
   13083         * kwq/KWQInvisibleButton.h: Added
   13084         * kwq/KWQInvisibleButton.mm: Added
   13085 
   13086 2002-04-18  Darin Adler  <darin (a] apple.com>
   13087 
   13088 	Fixes for compiling with gcc3 and more warnings.
   13089 
   13090 	* khtml/html/.cvsignore: Add kentities.c; I could have sworn I did this
   13091 	already.
   13092 	* khtml/html/Makefile.am: Remove erroneous duplicate definition of
   13093 	CLEAN_FILES.
   13094 
   13095 	* libwebcore.exp:
   13096 	* libwebcoretests.exp:
   13097 	Rebuilt these lists from scratch. Almost everything in here is different
   13098 	since the C++ name mangling rules changed.
   13099 
   13100 	* khtml/css/cssparser.cpp:
   13101 	* khtml/misc/htmlhashes.cpp:
   13102 	Disable inlining in part of this file as a workaround for Radar 2905890.
   13103 
   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>.
   13107 
   13108 	* kwq/KWQBitmap.mm:
   13109 	* kwq/KWQFrame.mm:
   13110 	* kwq/KWQLineEdit.mm:
   13111 	Removed some unused copy constructors and assignment operators to avoid
   13112 	warnings in them.
   13113 
   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.
   13122 
   13123 	* kwq/KWQCString.mm: (operator<<):
   13124 	* kwq/KWQPoint.mm: (operator<<):
   13125 	* kwq/KWQRect.mm: (operator<<):
   13126 	* kwq/KWQSize.mm: (operator<<):
   13127 	* kwq/qt/qarray.h:
   13128 	* kwq/qt/qcstring.h:
   13129 	* kwq/qt/qdatetime.h:
   13130 	* kwq/qt/qdict.h:
   13131 	* kwq/qt/qlist.h:
   13132 	* kwq/qt/qmap.h:
   13133 	* kwq/qt/qpainter.h:
   13134 	* kwq/qt/qpoint.h:
   13135 	* kwq/qt/qptrdict.h:
   13136 	* kwq/qt/qrect.h:
   13137 	* kwq/qt/qsize.h:
   13138 	* kwq/qt/qstack.h:
   13139 	* kwq/qt/qvaluelist.h:
   13140 	* kwq/qt/qvector.h:
   13141 	Say std::ostream instead of just ostream.
   13142 
   13143 	* kwq/KWQCharsets.mm: Fix a const problem.
   13144 
   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.
   13149 
   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.
   13153 
   13154 	* kwq/KWQFontMetrics.mm: (__IFFillStyleWithAttributes),
   13155 	(-[KWQLayoutInfo drawString:atPoint:withFont:color:]),
   13156 	(-[KWQLayoutInfo _initializeCaches]),
   13157 	(_rectForString):
   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.
   13167 
   13168 	* kwq/KWQPixmap.mm: (QPixmap::QPixmap): Explicitly initialize the underlying
   13169 	QPaintDevice.
   13170 	(QPixmap::size), (QPixmap::rect): Add type casts where necessary to make
   13171 	the stricter gcc3 happy.
   13172 	
   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 *.
   13178 
   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.
   13182 
   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.
   13186 
   13187 	* kwq/KWQTextStorage.mm: (-[KWQTextStorage _buildFragmentForString:]):
   13188 	Add a cast to make gcc3 happy.
   13189 
   13190 	* kwq/KWQVariant.mm: Say "friend class" instead of "friend".
   13191 
   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.
   13196 
   13197 	* kwq/KWQView.mm: (-[KWQHTMLView mouseUp:]), (-[KWQHTMLView mouseDown:]):
   13198 	Add casts to make gcc3 happy.
   13199 
   13200 	* kwq/KWQWidget.mm: (QWidget::frameGeometry), (QWidget::mapToGlobal),
   13201 	(QWidget::minimumSizeHint): Add casts to make gcc3 happy. Also another
   13202 	workaround for Radar 2905835.
   13203 
   13204 	* kwq/WCPlugin.mm: (-[WCPlugin load]): Add tons of type casts so we don't have
   13205 	to mix void * with function pointer types.
   13206 
   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
   13211 	function pointer.
   13212 
   13213 	* kwq/external.h: Add some missing interfaces that the pickier gcc3 needed to see.
   13214 
   13215 	* kwq/kwqdebug.mm: Don't compile the file if xNDEBUG is set. Otherwise we get
   13216 	a warning in here.
   13217 
   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.
   13220 
   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.
   13228 
   13229 2002-04-17  Darin Adler  <darin (a] apple.com>
   13230 
   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.
   13233 
   13234 	* kwq/qt/qarray.h:
   13235 	* kwq/qt/qcstring.h:
   13236 	* kwq/qt/qlist.h:
   13237 	* kwq/qt/qmap.h:
   13238 	* kwq/qt/qpainter.h:
   13239 	* kwq/qt/qpoint.h:
   13240 	* kwq/qt/qrect.h:
   13241 	* kwq/qt/qsize.h:
   13242 	* kwq/qt/qvaluelist.h:
   13243 	Call it std::ostream instead of ostream.
   13244 
   13245 2002-04-17  Darin Adler  <darin (a] apple.com>
   13246 
   13247 	Fix build problem.
   13248 
   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.
   13253 
   13254 	* kentities.gperf: Removed.
   13255 	* khtml/html/kentities.gperf: Added.
   13256 
   13257 	* .cvsignore: Don't ignore kentities.c.
   13258 	* khtml/html/.cvsignore: Ignore kentities.c.
   13259 
   13260 2002-04-17  Darin Adler  <darin (a] apple.com>
   13261 
   13262 	* .cvsignore: Ignore new generated files at this level.
   13263 
   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.
   13268 
   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
   13272 	kentitices.c file.
   13273 
   13274 	* dummy.mm: Moved here from src by hand.
   13275 	* kentities.gperf: Moved here from src/kdelibs/kdecore by hand.
   13276 
   13277 	* khtml/html/Makefile.am: Add WebCore directory to includes so the
   13278 	include of "kentities.c" will work.
   13279 
   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.
   13284 
   13285 	* kwq/khtml/java/javaembed.h: Removed. We use the one in the real
   13286 	khtml directory.
   13287 
   13288 	* kwq/kwqdebug.h: Rolled over Chris's changes, which were done after
   13289 	the cvs surgery was done.
   13290 
   13291 2002-04-17  Chris Blumenberg  <cblu (a] apple.com>
   13292 
   13293 	Added a debug bit mask for plugins and downloads.
   13294 
   13295 	* src/kwq/kwqdebug.h:
   13296 
   13297 2002-04-16  Darin Adler  <darin (a] apple.com>
   13298 
   13299 	* src/kdelibs/khtml/khtml_part.cpp: Added. Not used yet, but maybe we'll use
   13300 	part of it some time soon.
   13301 
   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.
   13305 
   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.
   13318 
   13319 	* src/libwebcore.exp: Update for function name changes.
   13320 
   13321 	* src/kwq/khtml/khtml_settings.h:
   13322 	* src/kwq/KWQKHTMLSettings.mm: (KHTMLSettings::changeCursor): Add const.
   13323 
   13324 	* src/kwq/KWQView.mm: (-[KWQHTMLView layout]): No need to check xmlDocImpl()
   13325 	and renderer() for NULL now, because KHTMLView::layout does.
   13326 
   13327 	* src/kwq/KWQKloader.mm: (Loader::load): Use type instead of id.
   13328 
   13329 2002-04-16  Darin Adler  <darin (a] apple.com>
   13330 
   13331 	* src/kwq/kio/jobclasses.h:
   13332 	* src/kwq/KWQKjobclasses.mm: (TransferJob::setError): New.
   13333 
   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.
   13337 
   13338 	* src/kwq/KWQKHTMLPart.mm: Removed some unused code.
   13339 
   13340 2002-04-16  Kenneth Kocienda  <kocienda (a] apple.com>
   13341 
   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.
   13346 
   13347 	* src/kwq/KWQKHTMLPart.mm: (WCSetIFWebDataSourceMakeFunc):
   13348 	* src/kwq/KWQKloader.mm: (-[URLLoadClient
   13349 	IFURLHandle:resourceDidFailLoadingWithResult:]):
   13350 
   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).
   13354         
   13355 	* src/kwq/WCError.h: Removed.
   13356 	* src/libwebcore.exp:
   13357 
   13358 2002-04-15  Darin Adler  <darin (a] apple.com>
   13359 
   13360 	* src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
   13361 	Remove some minor gratuitous diffs vs. KDE.
   13362 
   13363 2002-04-15  Richard Williamson  <rjw (a] apple.com>
   13364 
   13365         Updated to reflect changes in KDE.
   13366         
   13367 	* src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
   13368 
   13369 2002-04-15  Darin Adler  <darin (a] apple.com>
   13370 
   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.
   13388 
   13389 2002-04-15  Darin Adler  <darin (a] apple.com>
   13390 
   13391 	Fix text to it displays at the right font size.
   13392 
   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.
   13399 
   13400 2002-04-15  Darin Adler  <darin (a] apple.com>
   13401 
   13402 	More fixes so text displays (still at wrong font size).
   13403 
   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.
   13408 
   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 *.
   13411 
   13412 2002-04-15  Darin Adler  <darin (a] apple.com>
   13413 
   13414 	Merged changes from KDE 3.0 final. Other fixes to get things compiling.
   13415 
   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
   13422 	if necessary.
   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):
   13427 	Fix mismerge.
   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().
   13432 
   13433 2002-04-15  Darin Adler  <darin (a] apple.com>
   13434 
   13435         Merged changes from previous merge pass.
   13436 
   13437         2002-03-25  Darin Adler  <darin (a] apple.com>
   13438 
   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.
   13441 
   13442 	* src/kwq/KWQEvent.mm: (QFocusEvent::reason): New.
   13443 	* src/kwq/KWQPainter.mm: (QPainter::drawText): New overload.
   13444 
   13445         2002-03-25  Darin Adler  <darin (a] apple.com>
   13446 
   13447 	* src/kdelibs/khtml/rendering/font.cpp: (Font::width): Make it call _width so we
   13448         don't lose the optimization.
   13449         
   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.
   13466         
   13467 	* src/kwq/qt/qapplication.h: style() returns a QStyle &.
   13468 	* src/kwq/qt/qpalette.h: Add Highlight and HighlightedText.
   13469 
   13470         2002-03-24  Darin Adler  <darin (a] apple.com>
   13471 
   13472         More compiling. Still won't link.
   13473 
   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
   13481         QDesktopWidget.
   13482 	* src/kwq/qt/qnamespace.h: Add MetaButton.
   13483 	* src/kwq/qt/qtooltip.h: Add a maybeTip virtual function member and a virtual
   13484         destructor.
   13485 
   13486         2002-03-24  Darin Adler  <darin (a] apple.com>
   13487 
   13488         Some fixes to get more stuff to compile.
   13489 
   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.
   13501         
   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().
   13513         
   13514 	* src/kwq/KWQApplication.mm: Change KWQDesktopWidget to QDesktopWidget.
   13515 
   13516 2002-04-11  Chris Blumenberg  <set EMAIL_ADDRESS environment variable>
   13517 
   13518         Added a symbol for WCPluginDatabase.
   13519 
   13520 	* src/libwebcore.exp:
   13521 
   13522 2002-04-08  Maciej Stachowiak  <mjs (a] apple.com>
   13523 
   13524 	Fix Radar 2896001 (crashes in KURL):
   13525 
   13526 	* src/kwq/KWQKURL.mm: (KURL::KWQKURLPrivate::KWQKURLPrivate):
   13527 	Initialize refCount to 0 in the copy constructor.
   13528 
   13529 2002-04-08  Chris Blumenberg  <cblu (a] apple.com>
   13530 
   13531 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::requestObject):
   13532 	* src/kwq/WCPluginWidget.h:
   13533 	* src/kwq/WCPluginWidget.mm: (WCPluginWidget::WCPluginWidget):
   13534 
   13535         Support new stream requests from plug-ins that are relative URL's.
   13536 
   13537 2002-04-05  Chris Blumenberg  <cblu (a] apple.com>
   13538 
   13539 	* src/libwebcore.exp:
   13540 
   13541 	Added symbol for IFNullPluginView
   13542 
   13543 2002-04-05  Richard Williamson  <rjw (a] apple.com>
   13544 
   13545         Various scrolling, hit detection, and goto anchor fixes to account for frames being
   13546         translated in scroll views.
   13547         
   13548 	* src/kwq/KWQScrollView.mm: (QScrollView::setContentsPos),
   13549 	(QScrollView::viewportToContents):
   13550 
   13551 2002-04-05  Chris Blumenberg  <cblu (a] apple.com>
   13552 
   13553 	* src/kwq/WCPluginWidget.h:
   13554 	* src/kwq/WCPluginWidget.mm: (WCSetIFNullPluginMakeFunc),
   13555 	(WCPluginWidget::WCPluginWidget), (WCIFPluginMakeFunction),
   13556 	(WCIFNullPluginMakeFunction):
   13557 
   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. 
   13561 
   13562 2002-04-05  Richard Williamson  <rjw (a] apple.com>
   13563 
   13564         Hacks to support:
   13565         
   13566         1.  Not loading a document when a link is to an anchor on same page.
   13567         2.  Correctly targeting frames.
   13568         
   13569         Our documentation is actually useable now.
   13570         
   13571 	* src/kwq/KWQKHTMLPart.mm: (splitUrlTarget), (KHTMLPart::khtmlMouseReleaseEvent):
   13572 	* src/kwq/external.h:
   13573 
   13574 2002-04-05  Darin Adler  <darin (a] apple.com>
   13575 
   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.
   13580 
   13581 2002-04-05  Richard Williamson  <rjw (a] apple.com>
   13582 
   13583         More bulletproofing to deal with cleanup during deallocation.
   13584         
   13585 	* src/kdelibs/khtml/html/htmlparser.cpp: (KHTMLParser::popOneBlock):
   13586 	* src/kdelibs/khtml/html/htmltokenizer.cpp: (HTMLTokenizer::processToken):
   13587 
   13588 2002-04-05  Maciej Stachowiak  <mjs (a] apple.com>
   13589 
   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.
   13593 
   13594 2002-04-04  Richard Williamson  <rjw (a] apple.com>
   13595 
   13596         Extra bulletproofing to prevent script execution when in partially
   13597         dealloced state.
   13598         
   13599 	* src/kdelibs/khtml/html/htmltokenizer.cpp: (HTMLTokenizer::scriptExecution):
   13600 
   13601 2002-04-04  Chris Blumenberg  <cblu (a] apple.com>
   13602 
   13603 	* src/kwq/WCPlugin.mm: (-[WCPlugin load]):
   13604 	* src/kwq/npapi.h:
   13605 	* src/kwq/npapi.mm: (NPN_GetJavaEnv), (NPN_GetJavaPeer):
   13606 
   13607 	Added stubs for NPN_GetJavaEnv and NPN_GetJavaPeer. This fixes a flash crasher.
   13608 
   13609 2002-04-04  Chris Blumenberg  <cblu (a] apple.com>
   13610 
   13611 	* src/kdelibs/khtml/rendering/render_frames.cpp:
   13612 	(RenderPartObject::updateWidget):
   13613 	* src/kwq/WCPluginWidget.mm: (WCPluginWidget::WCPluginWidget):
   13614 
   13615 	Moved the removal of __KHTML__ EMBED to attributes WCPluginWidget. One less APPLE_CHANGES.
   13616 
   13617 2002-04-04  Darin Adler  <darin (a] apple.com>
   13618 
   13619 	Redo clobbered fixes for problems that show up only when xNDEBUG is set
   13620 
   13621 	* src/kwq/KWQApplication.mm: (QApplication::sendEvent):
   13622 	* src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]):
   13623 	Remove or ifdef otherwise-unused variables.
   13624 
   13625 	* src/kwq/KWQFontMetrics.mm: (_rectForString):
   13626 	Add missing semicolons.
   13627 
   13628 2002-04-04  Darin Adler  <darin (a] apple.com>
   13629 
   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.
   13633 
   13634 2002-04-03  Richard Williamson  <rjw (a] apple.com>
   13635 
   13636         Added support for finalURL in data source.
   13637         
   13638 	* src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
   13639 	* src/kwq/external.h:
   13640 
   13641 2002-04-03  Darin Adler  <darin (a] apple.com>
   13642 
   13643 	* src/Makefile.am: Concatenate libwebcore.exp and libwebcoretests.exp.
   13644 	* src/libwebcore.exp: Update with exports that are needed when inlining is
   13645         turned off.
   13646 	* src/libwebcoretests.exp: Added. Exports that we need to run the test in the
   13647         Tests directory.
   13648         * .cvsignore: Ignore the concatenated file.
   13649 
   13650 2002-04-03  Darin Adler  <darin (a] apple.com>
   13651 
   13652 	* src/Makefile.am: Don't strip at all if STRIP_FLAGS are empty.
   13653 	* src/kwq/qt/qtextcodec.h: Remove stray undef.
   13654 
   13655 2002-04-03  Kenneth Kocienda  <kocienda (a] apple.com>
   13656 
   13657         Updated debugging log messages to use new varargs macros.
   13658 
   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]),
   13665 	(_rectForString):
   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
   13681 	mouseDragged:]):
   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):
   13687 
   13688 2002-04-03  Darin Adler  <darin (a] apple.com>
   13689 
   13690 	Fix problems that show up only when xNDEBUG is set.
   13691 
   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.
   13696 
   13697 	* src/kwq/KWQFontMetrics.mm: (_rectForString):
   13698 	* src/kwq/KWQPainter.mm: (QPainter::setRasterOp), (QPainter::translate),
   13699 	(QPainter::scale):
   13700 	Add missing semicolons.
   13701 
   13702 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin):
   13703 	Fix an ifdef.
   13704 
   13705 2002-04-03  Darin Adler  <darin (a] apple.com>
   13706 
   13707 	* src/Makefile.am: Use nmedit and strip to remove the symbols
   13708 	we don't want to export.
   13709 
   13710 	* src/libwebcore.exp: Added. List of symbols exported.
   13711 
   13712 2002-04-03  Maciej Stachowiak  <mjs (a] apple.com>
   13713 
   13714 	* src/Makefile.am: Pave the way for cutting down the exports
   13715 	list. Also, make the embed target when installing libwebcore.
   13716 
   13717 2002-04-03  Maciej Stachowiak  <mjs (a] apple.com>
   13718 
   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.
   13722 
   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.
   13726 
   13727 	* src/kwq/external.h: Prototype IFWebDataSource's frameExists:
   13728 	method here.
   13729 
   13730 2002-04-03  Maciej Stachowiak  <mjs (a] apple.com>
   13731 
   13732 	Fixed Radar 2893298 (KURL rejects spaces and other illegal but
   13733 	unambiguous characters, leading to load failures).
   13734 
   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).
   13740 
   13741 	(KURL::KWQKURLPrivate::KWQKURLPrivate,
   13742 	KURL::KWQKURLPrivate::compose): out of paranoia, make sure urlRef
   13743 	is set to NULL if not a valid value.
   13744 
   13745 2002-04-03  Maciej Stachowiak  <mjs (a] apple.com>
   13746 
   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.
   13750 
   13751 2002-04-02  Darin Adler  <darin (a] apple.com>
   13752 
   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.
   13756 
   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.
   13768 
   13769 2002-04-02  Richard Williamson  <rjw (a] apple.com>
   13770 
   13771         Fixed a fix, shoulda' been a #ifndef to exclude unnecessary code.
   13772         
   13773 	* src/kdelibs/khtml/rendering/render_replaced.cpp: (RenderWidget::detach):
   13774 
   13775 2002-04-02  Richard Williamson  <rjw (a] apple.com>
   13776 
   13777         More noisy bulletproofing.  Still need to find source of problem.
   13778         
   13779 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::~KHTMLPart), (KHTMLPart::slotData),
   13780 	(KHTMLPart::write), (KHTMLPart::end):
   13781 
   13782 2002-04-02  Darin Adler  <darin (a] apple.com>
   13783 
   13784         Fix some small storage leaks.
   13785 
   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
   13791         the old cursor.
   13792         Also removed a lot of unused code in here.
   13793         
   13794 	* src/kwq/KWQKURL.mm: Minor code cleanup.
   13795 
   13796 2002-04-02  Richard Williamson  <rjw (a] apple.com>
   13797 
   13798         Added ref() of part from KHTMView.
   13799         Added log to catch m_doc == 0 case.  Should never happen.
   13800         
   13801 	* src/kdelibs/khtml/khtmlview.cpp: (KHTMLView::KHTMLView),
   13802 	(KHTMLView::~KHTMLView):
   13803 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::write):
   13804 
   13805 2002-04-02  Richard Williamson  <rjw (a] apple.com>
   13806 
   13807         Removed unnecessary and erroneous call to CGContextSetCharacterSpacing.
   13808         
   13809 	* src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo _initializeCaches]):
   13810 
   13811 2002-04-01  Maciej Stachowiak  <mjs (a] apple.com>
   13812 
   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.
   13818 
   13819 2002-04-01  Richard Williamson  <rjw (a] apple.com>
   13820 
   13821         Added log to catch more problems with NS/CFURL.
   13822         
   13823 	* src/kwq/KWQKjobclasses.mm:
   13824 
   13825 2002-04-01  Richard Williamson  <rjw (a] apple.com>
   13826 
   13827         Cleaned up lots of potentially stale references to controller.
   13828         Added ref count to part.
   13829         
   13830 	* src/kwq/KWQKHTMLPart.h:
   13831 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::init):
   13832 	* src/kwq/KWQKloader.mm: (-[URLLoadClient
   13833 	IFURLHandle:resourceDataDidBecomeAvailable:]):
   13834 
   13835 2002-04-01  Richard Williamson  <rjw (a] apple.com>
   13836 
   13837         Changes to support correct behavior is i/frame margins and
   13838         scroll views.
   13839         
   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:
   13844 
   13845 2002-04-01  Kenneth Kocienda  <kocienda (a] apple.com>
   13846 
   13847         The guts of the fix for this bug:
   13848 
   13849         Radar 2879234 (Redirected URLs not used for subsequent GETs)
   13850 
   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.
   13854 
   13855 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin), (KHTMLPart::setBaseURL):
   13856 
   13857 2002-04-01  Darin Adler  <darin (a] apple.com>
   13858 
   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.
   13863 
   13864 2002-04-01  Darin Adler  <darin (a] apple.com>
   13865 
   13866 	* src/kwq/KWQDef.h: Use KWQ_UNSIGNED_TYPES_DEFINED for compatibility with code
   13867         in JavaScriptCore that has to do the same thing.
   13868 
   13869 2002-04-01  Darin Adler  <darin (a] apple.com>
   13870 
   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.
   13879         
   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.
   13883          
   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.
   13890 
   13891 	* src/kdelibs/khtml/rendering/render_form.cpp: Fixed spelling error.
   13892 
   13893 2002-03-31  Maciej Stachowiak  <mjs (a] apple.com>
   13894 
   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:
   13897 	
   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.
   13902 
   13903 2002-03-31  Darin Adler  <darin (a] apple.com>
   13904 
   13905 	* src/kwq/KWQString.mm: (QString::toDouble): Fix to properly handle
   13906         an empty string.
   13907 
   13908 2002-03-30  Darin Adler  <darin (a] apple.com>
   13909 
   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.
   13915 
   13916 	* src/kwq/KWQKHTMLPart.h: Add setTitle. Also clean up ifdefs.
   13917 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::setTitle): New. Calls
   13918 	[IFWebDataSource _setTitle].
   13919 
   13920 	* src/kwq/kparts/part.h: Removed setWindowCaption.
   13921 	* src/kwq/KWQPart.mm: Removed setWindowCaption.
   13922 
   13923 	* src/kwq/external.h: Add [IFWebDataSource _setTitle].
   13924 
   13925 2002-03-30  Richard Williamson  <rjw (a] apple.com>
   13926 
   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.
   13930         
   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):
   13935 
   13936 2002-03-30  Richard Williamson  <rjw (a] apple.com>
   13937 
   13938         Added log to note cases of NSURL (CFURL) being unable to
   13939         correctly initialize from URLs.  This log will likely indicate
   13940         bugs in CFURL.
   13941         
   13942 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::requestFrame):
   13943 
   13944 2002-03-30  Richard Williamson  <rjw (a] apple.com>
   13945 
   13946         Twiddling with baselines.  kde 2.2 appears to not line up baselines correctly.
   13947         Need to experiment with kde 3.
   13948         
   13949         Removed copy of function prototype, instead included the correct header.
   13950  
   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.
   13953        
   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):
   13960 
   13961 2002-03-30  Darin Adler  <darin (a] apple.com>
   13962 
   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.
   13967 
   13968 	* src/kwq/KWQFont.mm: (QFont::getFont): Use lossyCString instead of cString for
   13969         debugging messages.
   13970         
   13971 2002-03-30  Maciej Stachowiak  <mjs (a] apple.com>
   13972 
   13973 	* src/Makefile.am: Link against JavaScriptCore.framework instead
   13974 	of the defunct libJavaScriptCore.dylib.
   13975 
   13976 2002-03-29  Darin Adler  <darin (a] apple.com>
   13977 
   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.
   13981 
   13982 2002-03-29  Richard Williamson  <rjw (a] apple.com>
   13983 
   13984         More fixes for cancelling.  Fixed some code that appears to have been
   13985         mis-merged after the KDE 3 beta 2 landing.
   13986         
   13987 	* src/kwq/KWQKloader.mm: (-[URLLoadClient initWithLoader:dataSource:])
   13988 
   13989 2002-03-29  Darin Adler  <darin (a] apple.com>
   13990 
   13991 	* src/kwq/KWQKloader.mm: (Cache::getStatistics), (Cache::flushAll):
   13992         Fix both of these to work when cache is not yet allocated.
   13993 
   13994 2002-03-29  Richard Williamson  <rjw (a] apple.com>
   13995 
   13996         Hooked up redirect.
   13997         
   13998 	* src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
   13999 	* src/kwq/external.h:
   14000 
   14001 2002-03-29  Kenneth Kocienda  <kocienda (a] apple.com>
   14002 
   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.
   14006         
   14007 	* src/kwq/KWQPixmap.mm: (QPixmap::QPixmap):
   14008 
   14009 2002-03-28  Richard Williamson  <rjw (a] apple.com>
   14010 
   14011         Fixed basic font horkage caused by removal of KDE font matching code.  We
   14012         now work correctly for the basic font families.
   14013         
   14014 	* src/kwq/KWQFont.mm: (QFont::getFont):
   14015 
   14016 2002-03-28  Darin Adler  <darin (a] apple.com>
   14017 
   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.
   14021 
   14022 2002-03-28  Maciej Stachowiak  <mjs (a] apple.com>
   14023 
   14024 	Fix Radar 2890340 (JavaScript doesn't work)
   14025 
   14026 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::executeScript): Implement
   14027 	the other overloaded version of this function. This is needed for
   14028 	JavaScript to work.
   14029 
   14030 2002-03-28  Darin Adler  <darin (a] apple.com>
   14031 
   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.
   14039 
   14040 2002-03-28  Richard Williamson  <rjw (a] apple.com>
   14041 
   14042         Fixed crasher.  Removed unnecessary cleanup to widget that was called after the
   14043         widget was already disposed.
   14044         
   14045 	* src/kdelibs/khtml/rendering/render_replaced.cpp: (RenderWidget::detach):
   14046 
   14047 2002-03-27  Richard Williamson  <rjw (a] apple.com>
   14048 
   14049         Removed problematic code.  Not sure why it was necessary.  For now
   14050         it prevents crasher.
   14051         
   14052 	* src/kdelibs/khtml/rendering/render_table.cpp: (RenderTable::addColInfo):
   14053 
   14054 2002-03-27  Darin Adler  <darin (a] apple.com>
   14055 
   14056 	* src/kwq/KWQListImpl.mm: (KWQListImpl::insert): Fix disastrous name
   14057         collision which could lead to infinite loops.
   14058 
   14059 2002-03-27  Darin Adler  <darin (a] apple.com>
   14060 
   14061 	* src/kwq/KWQCString.mm: (QCString::isEmpty): The || should be &&.
   14062 
   14063 2002-03-27  Darin Adler  <darin (a] apple.com>
   14064 
   14065 	* src/kdelibs/khtml/css/css_valueimpl.cpp:
   14066 	(FontFamilyValueImpl::FontFamilyValueImpl): Disable misguided font matching
   14067         code in khtml.
   14068         
   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.
   14072 
   14073 2002-03-27  Kenneth Kocienda  <kocienda (a] apple.com>
   14074 
   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.
   14078         
   14079 	* src/kwq/KWQKloader.mm: (-[URLLoadClient
   14080 	IFURLHandle:resourceDataDidBecomeAvailable:]):
   14081 
   14082 2002-03-27  Darin Adler  <darin (a] apple.com>
   14083 
   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.
   14086 
   14087 2002-03-26  Maciej Stachowiak  <mjs (a] apple.com>
   14088 
   14089 	Removed kjs from here - it's now been moved to JavaScriptCore at
   14090 	the top level.
   14091 
   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.
   14154 
   14155 2002-03-26  Maciej Stachowiak  <mjs (a] apple.com>
   14156 
   14157 	Removed all the borrowed Qt code.
   14158 
   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
   14162 	subdirectories.
   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.
   14227 
   14228 2002-03-26  Kenneth Kocienda  <kocienda (a] apple.com>
   14229 
   14230 	* src/Makefile.am:
   14231 
   14232 2002-03-26  Darin Adler  <darin (a] apple.com>
   14233 
   14234 	* src/kwq/KWQKjobclasses.mm: (TransferJobPrivate::TransferJobPrivate):
   14235         Nil out the handle so we don't autorelease garbage.
   14236         
   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.
   14242 
   14243 2002-03-26  Richard Williamson  <rjw (a] apple.com>
   14244 
   14245         Fixed leak of decoder.  This caused us to leak the entire
   14246         document text for every load!
   14247         
   14248 	* src/kwq/KWQKHTMLPart.mm:
   14249 
   14250 2002-03-26  Darin Adler  <darin (a] apple.com>
   14251 
   14252 	* src/kdelibs/khtml/rendering/render_list.cpp: (RenderListItem::setStyle):
   14253         Fix a leak (missing delete).
   14254 
   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.
   14261 
   14262 2002-03-26  Darin Adler  <darin (a] apple.com>
   14263 
   14264 	* src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo dealloc]): Free the
   14265         style groups, styles, and glyph vectors.
   14266        
   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.
   14270 
   14271 	* src/kwq/KWQCString.mm: (QCString::isEmpty): Faster version that
   14272         doesn't call strlen.
   14273          
   14274 2002-03-25  Richard Williamson  <rjw (a] apple.com>
   14275 
   14276         Removed conditional check that prevent layout of iframes.  I don't
   14277         understand why the check was being done.
   14278         
   14279 	* src/kdelibs/khtml/rendering/render_flow.cpp: (RenderFlow::layout):
   14280 
   14281 2002-03-25  Maciej Stachowiak  <mjs (a] apple.com>
   14282 
   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.
   14286 
   14287 2002-03-25  Chris Blumenberg  <cblu (a] apple.com>
   14288 
   14289 	* src/kwq/WCPlugin.mm: (-[WCPlugin load]):
   14290 	
   14291 	Temporary special case workaround for this Java plug-in bug:
   14292 	2885120
   14293 
   14294 2002-03-25  Maciej Stachowiak  <mjs (a] apple.com>
   14295 
   14296 	Improved KURL performance:
   14297 
   14298 	* src/kwq/kdecore/kurl.h, src/kwq/KWQKURL.mm: 
   14299 	(KURL::normalizeURLString): New function to cache rewritten URL
   14300 	strings.
   14301 	(RelativeURLKeyRetainCallBack, RelativeURLKeyReleaseCallBack,
   14302 	RelativeURLKeyCopyDescriptionCallBack,
   14303 	RelativeURLKeyEqualCallBack, RelativeURLKeyHashCallBack,
   14304 	KURL::normalizeRelativeURLString): Cache results of relative URL
   14305 	resolution.
   14306 	(KURL::clearCaches): function to clear the caches so they don't
   14307 	grow forever.
   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.
   14316 	
   14317 	* src/kwq/KWQKloader.mm: (Cache::requestImage, Cache::requestStyleSheet,
   14318 	Cache::requestScript): Don't redundantly check if KURL isMalformed.
   14319 
   14320 	* src/kwq/KWQKHTMLPart.mm (KHTMLPart::end): Clear KURL caches at
   14321 	the end of each page load.
   14322 
   14323 2002-03-24  Darin Adler  <darin (a] apple.com>
   14324 
   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.
   14328 
   14329 2002-03-24  Darin Adler  <darin (a] apple.com>
   14330 
   14331         Add tail pointer to KWQListImpl, since that shows up on so many profiles.
   14332 
   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.
   14347         
   14348 	* src/kwq/KWQString.mm: (QString::operator=): Remove unneeded line of code.
   14349 
   14350 2002-03-24  Richard Williamson  <rjw (a] apple.com>
   14351 
   14352         A number of fixes to support non-latin1 decoding 
   14353         and font measurement/drawing.
   14354         
   14355 	* src/kwq/KWQFontMetrics.mm: (_rectForString):
   14356 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::slotData):
   14357 	* src/kwq/KWQMetrics.h:
   14358 
   14359 2002-03-24  Richard Williamson  <rjw (a] apple.com>
   14360 
   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?]
   14365         
   14366 	* src/kwq/KWQKHTMLSettings.mm: (KHTMLSettings::availableFamilies):
   14367 
   14368 2002-03-24  Richard Williamson  <rjw (a] apple.com>
   14369 
   14370         Fixed big leak in QString assignment operator.
   14371         Updated comments.  Removed old fprintfs.
   14372         Added some frame debugging logs.
   14373         
   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:
   14381 
   14382 2002-03-23  Darin Adler  <darin (a] apple.com>
   14383 
   14384         Fixed problem with extra empty items in menus.
   14385 
   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.
   14391 
   14392 2002-03-22  Darin Adler  <darin (a] apple.com>
   14393 
   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.
   14398 
   14399 	* src/kdelibs/kjs/.cvsignore: Ignore kjs-test output.
   14400 
   14401 2002-03-22  Maciej Stachowiak  <mjs (a] apple.com>
   14402 
   14403 	Fix some things that were making automake complain.
   14404 
   14405 	* src/kdelibs/kjs/Makefile.am:
   14406 	* src/kwq/Makefile.am:
   14407 
   14408 2002-03-22  Darin Adler  <darin (a] apple.com>
   14409 
   14410 	* src/kdelibs/khtml/css/cssstyleselector.cpp: (khtml::applyRule):
   14411 	Fix boolean logic mistake from the original KDE sources.
   14412 
   14413 2002-03-22  Darin Adler  <darin (a] apple.com>
   14414 
   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.
   14419 
   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.
   14433 
   14434 2002-03-22  John Sullivan  <sullivan (a] apple.com>
   14435 
   14436 	Made changing font sizes work immediately (other than an
   14437 	unrelated crash).
   14438 
   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.
   14444 
   14445 	* src/kwq/khtml/khtml_settings.h: Added "mutable" keyword
   14446 	to declaration of m_fontSizes, so the other change would compile.
   14447 
   14448 2002-03-22  Kenneth Kocienda  <kocienda (a] apple.com>
   14449 
   14450         Moved KWQKloader to the new thread-safe API for accessing handle attributes.
   14451 
   14452 	* src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandleResourceDidBeginLoading:]),
   14453 	(-[URLLoadClient IFURLHandleResourceDidCancelLoading:]), (-[URLLoadClient
   14454 	IFURLHandleResourceDidFinishLoading:data:]), (-[URLLoadClient
   14455 	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[URLLoadClient
   14456 	IFURLHandle:resourceDidFailLoadingWithResult:]):
   14457 
   14458 2002-03-22  Richard Williamson  <rjw (a] apple.com>
   14459 
   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.
   14465         
   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:
   14472 
   14473 2002-03-22  Maciej Stachowiak  <mjs (a] apple.com>
   14474 
   14475 	Fixed the following post-merge crashers:
   14476 
   14477 	2885602 - Alexander crashes when clicking on a particular link in Google groups
   14478 	2885564 - Alexander crashes on load failures
   14479 	
   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.
   14484 
   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.
   14489 	
   14490 2002-03-20  Maciej Stachowiak  <mjs (a] apple.com>
   14491 
   14492 	Merged the following changes from LABYRINTH_KDE_3_MERGE branch:
   14493 
   14494 	2002-03-20  Maciej Stachowiak  <mjs (a] apple.com>
   14495 
   14496 		* src/kdelibs/khtml/rendering/render_applet.cpp:
   14497 		(RenderApplet::RenderApplet): Handle Java parameters properly,
   14498 		with Chris's assistance.
   14499 
   14500 	2002-03-20  Maciej Stachowiak  <mjs (a] apple.com>
   14501 
   14502 		Merged accumlated changes from HEAD, up to
   14503 		MERGED_TO_KDE_3_MERGE_BRANCH tag.
   14504 
   14505 	2002-03-19  Maciej Stachowiak  <mjs (a] apple.com>
   14506 
   14507 		Fixed two more crashers. Tree now looks pretty stable.
   14508 
   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
   14512 		being destroyed.
   14513 
   14514 		* src/kwq/KWQListImpl.mm: (KWQListImpl::getFirst): Return
   14515 		d->head->data, not d->head. Whoops!
   14516 
   14517 	2002-03-19  Maciej Stachowiak  <mjs (a] apple.com>
   14518 
   14519 		Fixed two crashers:
   14520 
   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.
   14524 
   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).
   14528 
   14529 	2002-03-19  Maciej Stachowiak  <mjs (a] apple.com>
   14530 
   14531 		Changes needed to get WebCore to link: implement all the missing functions.
   14532 	
   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:
   14609 
   14610 	2002-03-18  Maciej Stachowiak  <mjs (a] apple.com>
   14611 
   14612 		Changes needed to get kwq compiling (doesn't link yet, though).
   14613 
   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:
   14644 		
   14645 	2002-03-16  Maciej Stachowiak  <mjs (a] apple.com>
   14646 
   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.
   14653 
   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:
   14803 		
   14804 	2002-03-14  Maciej Stachowiak  <mjs (a] apple.com>
   14805 
   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!
   14809 
   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:
   14823 		
   14824 	2002-03-14  Maciej Stachowiak  <mjs (a] apple.com>
   14825 
   14826 		Hand-merge KDE3 beta 2 changes into this frankenstein file.
   14827 
   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):
   14850 		
   14851 	2002-03-13  Maciej Stachowiak  <mjs (a] apple.com>
   14852 
   14853 		Merge KDE3 beta 2 changes into this frankenstein file.
   14854 
   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),
   14871 		(Cache::flush):
   14872 
   14873 	2002-03-13  Maciej Stachowiak  <mjs (a] apple.com>
   14874 
   14875 		Clean up this frankenstein file in preparation for merging KDE
   14876 		beta 2 changes.
   14877 
   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):
   14885 
   14886 	2002-03-13  Maciej Stachowiak  <mjs (a] apple.com>
   14887 
   14888 		Remove files from build that are no longer in KDE 3 beta 2:
   14889 
   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:
   14899 		
   14900 	2002-03-08  Don Melton  <gramps (a] apple.com>
   14901 
   14902 		Merged kdelibs from KDE 3 beta 2 into our 2.2.1-based sources.
   14903 
   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),
   15033 		(DOM::operator==):
   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),
   16125 		(KJS::mult):
   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:
   16167 
   16168 2002-03-19  Richard Williamson  <rjw (a] apple.com>
   16169 
   16170         Fixed NSPopupButton performance bottleneck.
   16171         
   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:
   16178 
   16179 2002-03-19  Richard Williamson  <rjw (a] apple.com>
   16180     
   16181         Changed float width cache to use shorts.
   16182 
   16183 	* src/kwq/KWQFontMetrics.mm: (-[KWQLayoutInfo _initializeCaches]),
   16184 	(_rectForString):
   16185 	* src/kwq/KWQMetrics.h:
   16186 
   16187 2002-03-19  Richard Williamson  <rjw (a] apple.com>
   16188 
   16189         Improved cache-miss case for non-latin1 characters.
   16190         
   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:
   16197 
   16198 2002-03-18  Darin Adler  <darin (a] apple.com>
   16199 
   16200 	* src/kwq/KWQListImpl.mm: (KWQListImpl::sort): Use insertion sort for
   16201 	small lists. Also special case for lists of size 2 and under.
   16202 
   16203 2002-03-18  Richard Williamson  <rjw (a] apple.com>
   16204 
   16205         Added comments about new layout scheme.  Cleaned up code.
   16206         Improved core measurement routine.
   16207 
   16208 	* src/kwq/KWQFontMetrics.mm: (QFontMetrics::boundingRect):
   16209 	* src/kwq/kwqdebug.h:
   16210 
   16211 2002-03-18  Darin Adler  <darin (a] apple.com>
   16212 
   16213 	* src/kwq/KWQString.mm: (QString::latin1): Handle null case properly.
   16214 	We must return "", not 0.
   16215 
   16216 2002-03-18  Darin Adler  <darin (a] apple.com>
   16217 
   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.
   16221 
   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.
   16227 
   16228 	* src/kwq/KWQFontMetrics.mm: (QFontMetrics::width): Use _rectForString() a
   16229         couple more places.
   16230 
   16231 2002-03-18  Richard Williamson  <rjw (a] apple.com>
   16232 
   16233         Changed to use non direct _rectForString() function.   Avoids
   16234         unnecessary NSString allocation.
   16235         
   16236 	* src/kwq/KWQFontMetrics.mm: (QFontMetrics::boundingRect):
   16237 
   16238 2002-03-18  Darin Adler  <darin (a] apple.com>
   16239 
   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.
   16244 
   16245 2002-03-17  Richard Williamson  <rjw (a] apple.com>
   16246 
   16247         Implementation of replacement code for NSLayoutManager.  Huge
   16248         performance gains.
   16249         
   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:
   16265 
   16266 2002-03-16  Richard Williamson  <rjw (a] apple.com>
   16267 
   16268         Fixed error handling.  Removed ObjC code for url handle client from KHTMLPart.
   16269         Need to sanitize KHTMLPart further.
   16270         
   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:
   16278 
   16279 2002-03-15  Richard Williamson  <rjw (a] apple.com>
   16280 
   16281         Fixed crasher initializing items in popup button.
   16282         Increased fragment cache initial size.
   16283         
   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:
   16288 
   16289 2002-03-15  Richard Williamson  <rjw (a] apple.com>
   16290 
   16291         More string usage optimizations.  Got another 10% or so.
   16292         
   16293 	* src/kdelibs/khtml/css/cssstyleselector.cpp: (checkPseudoState),
   16294 	(khtml::applyRule):
   16295 	* src/kdelibs/khtml/rendering/render_text.cpp: (RenderText::calcMinMaxWidth),
   16296 	(RenderText::width):
   16297 
   16298 2002-03-15  Darin Adler  <darin (a] apple.com>
   16299 
   16300 	* src/kwq/KWQFontMetrics.mm: (QFontMetrics::descent): Oops, removed a - sign
   16301 	that I should have left in there.
   16302 
   16303 2002-03-15  Darin Adler  <darin (a] apple.com>
   16304 
   16305 	Some more optimizations. Carves another 6% or so off of NSView.html.
   16306 
   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.
   16314 
   16315 	* src/kwq/KWQFontMetrics.mm: (QFontMetrics::ascent), (QFontMetrics::descent):
   16316 	Cache the ascent and descent rather than computing it each time we are called.
   16317 
   16318 2002-03-15  Darin Adler  <darin (a] apple.com>
   16319 
   16320 	Optimizations for creating empty QFont objects, measuring certain single
   16321 	characters, and copying QFontMetrics objects. Makes loading NSView.html about
   16322 	18% faster.
   16323 
   16324 	* src/kwq/qt/qfontmetrics.h: Use a ref-counted pointer so QFontMetrics objects
   16325 	for the same QFont can share data.
   16326 
   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
   16330 	traits.
   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.
   16335 
   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".
   16344 
   16345 2002-03-15  Richard Williamson  <rjw (a] apple.com>
   16346 
   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.
   16352         
   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:
   16359 
   16360 2002-03-14  Richard Williamson  <rjw (a] apple.com>
   16361 
   16362         Fixed another problem in QString::find().
   16363         Added dangerous but fast string allocation optimization to render_text.cpp.
   16364         
   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:
   16371 
   16372 2002-03-14  Richard Williamson  <rjw (a] apple.com>
   16373 
   16374         Fixed optimized find() implementation.  I had the sense of caseSensitive inverted.
   16375         
   16376 	* src/kwq/KWQString.mm: (QString::find):
   16377 
   16378 2002-03-14  Richard Williamson  <rjw (a] apple.com>
   16379 
   16380         Attempted implementation of space optimizations.  Disabled for now.
   16381         
   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:]):
   16389 
   16390 2002-03-14  Richard Williamson  <rjw (a] apple.com>
   16391 
   16392         Implemented a progressively cache fragment.
   16393         
   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:]):
   16406 
   16407 2002-03-13  Richard Williamson  <rjw (a] apple.com>
   16408 
   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.
   16411         
   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:]):
   16418 
   16419 2002-03-13  Richard Williamson  <rjw (a] apple.com>
   16420 
   16421         Re-worked fragment cache to minimize memory usage.
   16422         
   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]):
   16437 
   16438 2002-03-13  Kenneth Kocienda  <kocienda (a] apple.com>
   16439 
   16440 	Updated for new didRedirectToURL callback. This is a partial fix for this bug:
   16441 	Radar 2879234 (Redirected URLs not used for subsequent GETs)
   16442 
   16443 	* src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
   16444 	IFURLHandle:didRedirectToURL:]):
   16445 	* src/kwq/KWQKloader.mm: (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
   16446 
   16447 2002-03-12  Richard Williamson  <rjw (a] apple.com>
   16448 
   16449 	* src/kwq/KWQString.mm: (QString::find), (QString::contains),
   16450 	(QString::compareToLatin1):
   16451 
   16452 2002-03-11  Richard Williamson  <rjw (a] apple.com>
   16453 
   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.
   16456 
   16457 	* src/kwq/KWQPainter.mm: (QPainter::drawTiledPixmap):
   16458 
   16459 2002-03-08  Richard Williamson  <rjw (a] apple.com>
   16460 
   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.
   16464 
   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:
   16474 
   16475 2002-03-08  Richard Williamson  <rjw (a] apple.com>
   16476 
   16477         Instrumentation of the text fragment metrics cache.
   16478         Added _FAST_QSTRING_TO_NSSTRING.
   16479         
   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:
   16487 
   16488 2002-03-08  John Sullivan  <sullivan (a] apple.com>
   16489 
   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 
   16493 	0x00000008
   16494 
   16495 2002-03-07  John Sullivan  <sullivan (a] apple.com>
   16496 
   16497 	* src/kwq/kwqdebug.h: New debug level constants, kept in
   16498 	synch with WebKitDebug.h
   16499 
   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.
   16514 
   16515 2002-03-07  Don Melton  <gramps (a] apple.com>
   16516 
   16517 	Removed unused file in kdelibs that I missed in previous commit.
   16518 
   16519 	* src/kdelibs/khtml/test/layout.html:
   16520 
   16521 2002-03-06  Don Melton  <gramps (a] apple.com>
   16522 
   16523 	Removed unused files in kdelibs.
   16524 
   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:
   16625 
   16626 2002-03-06  Don Melton  <gramps (a] apple.com>
   16627 
   16628 	Cleaned up all our changes to kdelibs, removed bitrot, and replaced use
   16629 	of _KWQ_ with new APPLE_CHANGES define.
   16630 
   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):
   16716 
   16717 2002-03-06  Maciej Stachowiak  <mjs (a] apple.com>
   16718 
   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.
   16723 
   16724 2002-03-05  Richard Williamson  <rjw (a] apple.com>
   16725 
   16726         Pass errors correctly to browser.
   16727         Removed old notification code.
   16728         Added support for IFError.
   16729         Lots of little cleanups.
   16730         
   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:
   16744 
   16745 2002-03-05  Richard Williamson  <rjw (a] apple.com>
   16746 
   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:
   16752         
   16753         (gdb) po (id)[(id)[NSUserDefaults standardUserDefaults] objectForKey:(id)[NSString stringWithCString: "WebKitFixedFont"]]
   16754         Andale Mono
   16755         (gdb) p (int)[(id)[(id)[NSUserDefaults standardUserDefaults] objectForKey:(id)[NSString stringWithCString: "WebKitFixedFont"]] retainCount]
   16756         $28 = -1
   16757         (gdb) p (id)[(id)[NSUserDefaults standardUserDefaults] objectForKey:(id)[NSString stringWithCString: "WebKitFixedFont"]]
   16758         $27 = (objc_object *) 0x40172a4
   16759         (gdb) p (void)[$27 retain]
   16760         $29 = void
   16761         (gdb) p (int)[$27 retainCount]
   16762         $30 = -1
   16763         (gdb) p (void)[$27 release]
   16764         $33 = void
   16765         (gdb) p (int)[$27 retainCount]
   16766         $32 = -1
   16767         
   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.
   16769         
   16770         I've fixed the problem by special casing our copy-on-write trigger to also check for -1.
   16771 
   16772 	* src/kwq/KWQString.mm: (QString::_copyIfNeededInternalString):
   16773 
   16774 2002-03-04  Richard Williamson  <rjw (a] apple.com>
   16775  
   16776         Changes to support 'provisional' data sources.
   16777         API changes to IFBaseWebController, removed redundant methods.
   16778  
   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:
   16788 
   16789 2002-02-28  Richard Williamson  <rjw (a] apple.com>
   16790 
   16791         Finished up progress notification for main document.  
   16792         Made the IFLoadProgress allocator accessible to KHTMLPart.mm.
   16793         
   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:
   16802 
   16803 2002-02-27  Kenneth Kocienda  <kocienda (a] apple.com>
   16804 
   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. 
   16808 
   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
   16814 
   16815 	All changes in this commit are related to making dependant code work with the new convention.
   16816 
   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:
   16838 
   16839 2002-02-27  Maciej Stachowiak  <mjs (a] apple.com>
   16840 
   16841 	Replace QDir and QFile with clean-room implementations. Add glob
   16842 	support ot QRegExp reimplementation.
   16843 
   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),
   16851 	(QFile::size):
   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:
   16863 
   16864 2002-02-25  Maciej Stachowiak  <mjs (a] apple.com>
   16865 
   16866 	Fix two significant memory leaks in QList found by our automated
   16867 	leak-checking code.
   16868 
   16869 	* src/kwq/KWQListImpl.mm: (KWQListNode::~KWQListNode),
   16870 	(KWQListImpl::KWQListPrivate::copyList),
   16871 	(KWQListImpl::KWQListPrivate::~KWQListPrivate), (KWQListImpl::sort):
   16872 
   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
   16876 	regression tests.
   16877 	
   16878 	* src/kwq/KWQString.mm: (QString::replace): 
   16879 	
   16880 2002-02-24  Maciej Stachowiak  <mjs (a] apple.com>
   16881 
   16882 	Reimplemented QRegExp in terms of POSIX regexp facilities. This
   16883 	will only support Latin1, however, it won't support all languages.
   16884 	
   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):
   16890 
   16891 	Reimplement QValueList as a doubly-linked list, using a generic
   16892 	implementation class and a templatized facade.
   16893 	
   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:
   16917 
   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!
   16920 
   16921 	Hack these scripts a bit so the large tables they generate are
   16922 	constant data.
   16923 	
   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:
   16929 
   16930 2002-02-23  Maciej Stachowiak  <mjs (a] apple.com>
   16931 
   16932 	* src/kwq/WCLoadProgress.h: Add the forgotten WCLoadProgress.h.
   16933 
   16934 2002-02-22  Maciej Stachowiak  <mjs (a] apple.com>
   16935 
   16936 	Fix prebinding:
   16937 
   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.
   16941 
   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
   16945 	more:
   16946 	
   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):
   16954 
   16955 2002-02-22  Richard Williamson  <rjw (a] apple.com>
   16956 
   16957         Added data: to IFURLHandleResourceDidFinishLoading:
   16958         
   16959 	* include/WCURLHandle.h:
   16960 	* src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
   16961 	WCURLHandleResourceDidFinishLoading:data:userData:]):
   16962 	* src/kwq/KWQKloader.mm: (-[URLLoadClient
   16963 	WCURLHandleResourceDidFinishLoading:data:userData:]):
   16964 
   16965 2002-02-22  Kenneth Kocienda  <kocienda (a] apple.com>
   16966 
   16967 	Sent handle an autorelease message.
   16968 
   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:]):
   16977 
   16978 2002-02-21  Maciej Stachowiak  <mjs (a] apple.com>
   16979 
   16980 	* src/kwq/KWQString.mm: (QString::fill): Fix a bug that was
   16981 	triggering assertion failures in CF.
   16982 	
   16983 	* src/kdelibs/kjs/kjs-test: Turn off some environment variables to
   16984 	make the tests pass.
   16985 
   16986 2002-02-21  Richard Williamson  <rjw (a] apple.com>
   16987 
   16988     Stop mostly working.
   16989     
   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:
   16997 
   16998 2002-02-21  Maciej Stachowiak  <mjs (a] apple.com>
   16999 
   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.
   17003 
   17004 2002-02-20  Richard Williamson  <rjw (a] apple.com>
   17005 
   17006     Some groundwork to bring WebFoundation callbacks up to 
   17007     WebKit.
   17008     
   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:
   17028 
   17029 2002-02-20  Maciej Stachowiak  <mjs (a] apple.com>
   17030 
   17031 	* src/kdelibs/kjs/kjs-test:
   17032 	* src/kwq/KWQKURL.mm: (KURL::setQuery):
   17033 
   17034 2002-02-18  Kenneth Kocienda  <kocienda (a] apple.com>
   17035 
   17036 	* src/Makefile.am:
   17037 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseMoveEvent):
   17038 	* src/kwq/KWQView.mm: (-[KWQHTMLView mouseUp:]), (-[KWQHTMLView mouseDown:]):
   17039 	* src/kwq/kde/_kurl.cpp: (KURL::htmlRef):
   17040 
   17041 2002-02-18  Richard Williamson  <rjw (a] apple.com>
   17042 
   17043         Fixed the prefences won't stay in front problem after John found 
   17044         and correctly diagnosed the problem.
   17045         
   17046 	* src/kwq/KWQWidget.mm: (QWidget::show), (QWidget::hide):
   17047 
   17048 2002-02-18  Richard Williamson  <rjw (a] apple.com>
   17049 
   17050         Performance measurement.
   17051         
   17052 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin), (KHTMLPart::write):
   17053 
   17054 2002-02-16  Maciej Stachowiak  <mjs (a] apple.com>
   17055 
   17056 	Reimplement KURL in terms of CFURL (many workarounds needed to
   17057 	account for differing semantics).
   17058 
   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.
   17072 
   17073 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin,
   17074 	KHTMLPart::submitForm): Don't 
   17075 
   17076 	Minor tweaks to make it all build:
   17077 
   17078 	* src/kwq/kde/_kurl.cpp:
   17079 	* src/kwq/qt/_qurl.cpp:
   17080 	* src/kwq/qt/_qurl.h:
   17081 
   17082 2002-02-16  Richard Williamson  <rjw (a] apple.com>
   17083 
   17084         Fixed problem with default text not showing up in text area.
   17085         Fixed problem with scroll widgets not showing up in select list.
   17086         
   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:]):
   17091 
   17092 2002-02-15  Richard Williamson  <rjw (a] apple.com>
   17093     
   17094     Lots of changes to support forms.
   17095 
   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:
   17130 
   17131 2002-02-13  Richard Williamson  <rjw (a] apple.com>
   17132     
   17133     Use NSSwitchButtons for check boxes.
   17134 
   17135 	* src/kwq/KWQCheckBox.mm: (QCheckBox::QCheckBox):
   17136 
   17137 2002-02-13  Richard Williamson  <rjw (a] apple.com>
   17138 
   17139     Removed dead code from setView.
   17140     
   17141 	* src/kwq/KWQWidget.mm: (QWidget::setView):
   17142 
   17143 2002-02-12  Richard Williamson  <rjw (a] apple.com>
   17144 
   17145     Made basic forms work.
   17146 
   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:
   17163 
   17164 2002-02-12  Maciej Stachowiak  <mjs (a] apple.com>
   17165 
   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
   17169 	file URL.
   17170 
   17171 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::openURL), (KHTMLPart::closeURL),
   17172 	(KHTMLPart::checkCompleted):
   17173 	* src/kwq/KWQKjobclasses.mm:
   17174 
   17175 2002-02-12  Maciej Stachowiak  <mjs (a] apple.com>
   17176 
   17177 	Reimplemented QList, QVector and QCollection from
   17178 	scratch. Implemented copy-on-write optimization for QMap.
   17179 
   17180 	Minimally reimplement QCollection.
   17181 
   17182 	* src/kwq/qt/qcollection.h:
   17183 	* src/kwq/KWQCollection.mm: (QCollection::QCollection), (QCollection::operator=),
   17184 	(QCollection::~QCollection), (QCollection::autoDelete),
   17185 	(QCollection::setAutoDelete):
   17186 
   17187 	* src/kwq/qt/qdict.h, src/kwq/qt/qptrdict.h: Include
   17188 	qcollection.h, not _qcollection.h
   17189 
   17190 	Reimplement QList as a doubly-linked list.
   17191 	
   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=):
   17211 
   17212 	Reimplement QVector in terms of CFArray.
   17213 	
   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):
   17223 
   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.
   17227 
   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):
   17238 
   17239 	* src/kwq/Makefile.am: Add new files to build.
   17240 
   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.
   17244 
   17245 2002-02-07  Richard Williamson  <rjw (a] apple.com>
   17246 
   17247     More changes to IFLocationChangeHandler API.
   17248 
   17249 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent):
   17250 
   17251 2002-02-07  Richard Williamson  <rjw (a] apple.com>
   17252 
   17253     Factored URL loading code out and moved to IFBaseWebController.
   17254     
   17255 	* ChangeLog:
   17256 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent),
   17257 	(KHTMLPart::requestFrame):
   17258 
   17259 2002-02-06  Richard Williamson  <rjw (a] apple.com>
   17260 
   17261     Fixed allocation problems.
   17262     
   17263 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent),
   17264 	(KHTMLPart::requestFrame):
   17265 
   17266 2002-02-05  Richard Williamson  <rjw (a] apple.com>
   17267 
   17268     Updated part to use 'official' controller APIs.
   17269     
   17270 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::~KHTMLPart),
   17271 	(KHTMLPart::khtmlMouseReleaseEvent), (KHTMLPart::requestFrame),
   17272 	(KHTMLPart::checkCompleted):
   17273 
   17274 2002-02-05  Richard Williamson  <rjw (a] apple.com>
   17275 
   17276     Changes to support dynamic scroll bars in frames/iframes.
   17277 
   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):
   17284 
   17285 2002-02-05  Kenneth Kocienda  <kocienda (a] apple.com>
   17286 
   17287 	Changes to move these last bits of code to the new cache API.
   17288 
   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:]):
   17297 
   17298 2002-02-04  Maciej Stachowiak  <mjs (a] apple.com>
   17299 
   17300 	Fix everything for WK --> IF rename.
   17301 
   17302 	* src/kwq/KWQKHTMLPart.h:
   17303 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::khtmlMouseReleaseEvent),
   17304 	(KHTMLPart::requestFrame), (KHTMLPart::checkCompleted):
   17305 
   17306 2002-02-01  Kenneth Kocienda  <kocienda (a] apple.com>
   17307 
   17308 	More cleanups to the no-copy NSData API.
   17309 	This time the callback from the cache/loader has been
   17310 	simplified from:
   17311 	- (void)WKURLHandle:(WKURLHandle *)sender resourceDataDidBecomeAvailable:(UInt8 *)bytes offset:(unsigned)offset length:(unsigned)length;
   17312 	to:
   17313 	- (void)WKURLHandle:(WKURLHandle *)sender resourceDataDidBecomeAvailable:(NSData *)data;
   17314 	This was made possible by some rearrangement in the private API.
   17315 
   17316 	* include/WCURLHandle.h:
   17317 	* src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient
   17318 	WCURLHandle:resourceDataDidBecomeAvailable:userData:]):
   17319 	* src/kwq/KWQKloader.mm: (-[URLLoadClient
   17320 	WCURLHandle:resourceDataDidBecomeAvailable:userData:]):
   17321 
   17322 2002-02-01  Richard Williamson  <rjw (a] apple.com>
   17323 
   17324     Added support for dynamic scrolling frames.  Also added first callback for
   17325     WKLocationChangeHandler.
   17326     
   17327 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::end), (KHTMLPart::khtmlMouseReleaseEvent),
   17328 	(KHTMLPart::checkCompleted):
   17329 
   17330 2002-02-01  Kenneth Kocienda  <kocienda (a] apple.com>
   17331 
   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
   17334         much cleaner.
   17335         
   17336 	* include/WCURLHandle.h:
   17337 	* src/kwq/KWQKloader.mm: (-[URLLoadClient
   17338 	WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]):
   17339 
   17340 2002-01-31  Richard Williamson  <rjw (a] apple.com>
   17341 
   17342     Added QString constructor, fixed javascript at head of document bug.
   17343     
   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:
   17348 
   17349 2002-01-31  Richard Williamson  <rjw (a] apple.com>
   17350 
   17351 	* src/kdelibs/khtml/html/html_headimpl.cpp: (HTMLStyleElementImpl::detach):
   17352 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::write):
   17353 
   17354 2002-01-31  Kenneth Kocienda  <kocienda (a] apple.com>
   17355 
   17356         Changes to incorporate use of the no-copy NSData object.
   17357 
   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:]):
   17363 
   17364 2002-01-30  Richard Williamson  <rjw (a] apple.com>
   17365     
   17366     Cleaned up frame code a bit.  Fixed duplicate content problem.
   17367 
   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):
   17372 
   17373 2002-01-30  Kenneth Kocienda  <kocienda (a] apple.com>
   17374 
   17375         Added *.lo, *.la, and .libs to .cvsignore files
   17376         
   17377 	* .cvsignore:
   17378 	* src/.cvsignore:
   17379 	* src/kdelibs/khtml/css/.cvsignore:
   17380 	* src/kdelibs/khtml/misc/.cvsignore:
   17381 	* src/kdelibs/kjs/.cvsignore:
   17382 
   17383 2002-01-29  Richard Williamson  <rjw (a] apple.com>
   17384 
   17385     Fixed QConstString to make a copy on initial chars.
   17386     
   17387 	* ChangeLog:
   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:
   17392 
   17393 2002-01-29  Richard Williamson  <rjw (a] apple.com>
   17394 
   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:
   17399 
   17400 2002-01-29  Kenneth Kocienda  <kocienda (a] apple.com>
   17401 
   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.
   17407         
   17408 	* include/WCURLHandle.h:
   17409 	* src/kwq/KWQKHTMLPart.mm: (encodingFromContentType), (KHTMLPart::slotData),
   17410 	(KHTMLPart::openURL), (KHTMLPart::closeURL):
   17411 
   17412 2002-01-29  Richard Williamson  <rjw (a] apple.com>
   17413 
   17414     First pass as frame code.  Still needs cleanup.
   17415     
   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):
   17425 
   17426 2002-01-29  Kenneth Kocienda  <kocienda (a] apple.com>
   17427 
   17428         Checked in the missing file
   17429         
   17430 	* include/WCURLHandle.h:
   17431 
   17432 2002-01-29  Kenneth Kocienda  <kocienda (a] apple.com>
   17433 
   17434         Changed over to the new cache loader in WebFoundation
   17435         
   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:
   17453 
   17454 2002-01-29  Maciej Stachowiak  <mjs (a] apple.com>
   17455 
   17456 	Reimplement QDict, QMap, QPtrDict and QSortedList.
   17457 
   17458 	Reimplement QDict in terms of CFDictionary:
   17459 	
   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):
   17466 
   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
   17470 	manipulation:
   17471 	
   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):
   17484 
   17485 	Reimplement QPtrDict in terms of CFDictionary:
   17486 
   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++):
   17503 
   17504 	Reimplement QSortedList:
   17505 	
   17506 	* src/kwq/qt/qsortedlist.h:
   17507 
   17508 	* src/kwq/KWQArrayImpl.mm: Remove stray include.
   17509 
   17510 	* src/kwq/Makefile.am: Add new files to build.
   17511 
   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.
   17515 
   17516 2002-01-22  Richard Williamson  <rjw (a] apple.com>
   17517 
   17518     Implemented KWQDesktopWidget to represent main screen.  Used by javascript.
   17519     
   17520 	* src/kwq/KWQApplication.mm: (KWQDesktopWidget::width),
   17521 	(KWQDesktopWidget::height), (QApplication::desktop):
   17522 
   17523 2002-01-21  Maciej Stachowiak  <mjs (a] apple.com>
   17524 
   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.
   17528 
   17529 	# Reimplement QArray:
   17530 
   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==):
   17538 
   17539 	# Reimplement QBuffer:
   17540 
   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:
   17546 
   17547 	# Reimplement QStringList:
   17548 
   17549 	* src/kwq/KWQStringList.mm: (QStringToCFString), (QStringList::split),
   17550 	(QStringList::QStringList), (QStringList::~QStringList), (QStringList::join),
   17551 	(QStringList::operator=):
   17552 
   17553 	# Reimplement QStack:
   17554 	* src/kwq/qt/qstack.h:
   17555 
   17556 	* src/kwq/Makefile.am: Add new files to build.
   17557 
   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
   17561 	picked this up.
   17562 
   17563 	# Temporarily work around uses of non-kwq APIs:
   17564 	
   17565 	* src/kwq/WKPluginWidget.h:
   17566 	* src/kwq/qt/_qfile.cpp
   17567 	* src/kwq/qt/_qbuffer.cpp
   17568 	
   17569 	# Guard contents of all these with the appropriate USING ifdef:
   17570 	
   17571 	* src/kwq/KWQStrList.h:
   17572 	* src/kwq/qt/_qarray.h:
   17573 	* src/kwq/qt/_qgarray.h:
   17574 	* src/kwq/qt/_qstrlist.h:
   17575 	
   17576 2002-01-19  Maciej Stachowiak  <mjs (a] apple.com>
   17577 
   17578 	* src/kdelibs/kjs/Makefile.am: Fix testkjs build.
   17579 
   17580 	Fix a couple more static initialization problems:
   17581 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::urlCursor):
   17582 	* src/kwq/KWQRegion.mm: (QRegion::QRegion), (QRegion::operator=):
   17583 
   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.
   17588 
   17589 2002-01-18  Richard Williamson  <rjw (a] apple.com>
   17590 
   17591     First pass at new view/datasource/controller API.
   17592 
   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:
   17601 
   17602 2002-01-18  Maciej Stachowiak  <mjs (a] apple.com>
   17603 
   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.
   17608 
   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:
   17632 
   17633 2002-01-17  Maciej Stachowiak  <mjs (a] apple.com>
   17634 
   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
   17637 	needed)
   17638 
   17639 	* src/Makefile.am:
   17640 	* src/kdelibs/khtml/css/Makefile.am:
   17641 	* src/kdelibs/khtml/misc/Makefile.am:
   17642 	* src/kdelibs/kjs/Makefile.am:
   17643 
   17644 2002-01-17  Maciej Stachowiak  <mjs (a] apple.com>
   17645 
   17646 	* src/kwq/Makefile.am: Fix another bonehead mistake.
   17647 
   17648 2002-01-17  Maciej Stachowiak  <mjs (a] apple.com>
   17649 
   17650 	Fix bonehead mistakes in last checkin which were killing Jersey.
   17651 
   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:
   17656 
   17657 2002-01-17  Maciej Stachowiak  <mjs (a] apple.com>
   17658 
   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.
   17662 
   17663 	* src/Makefile.am:
   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:
   17677 
   17678 2002-01-17  Maciej Stachowiak  <mjs (a] apple.com>
   17679 
   17680 	Build speedups: Don't use libtool, and don't link static libraries
   17681 	into each other.
   17682 	
   17683 	* src/Makefile.am
   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:
   17697 
   17698 2002-01-16  Maciej Stachowiak  <mjs (a] apple.com>
   17699 
   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.
   17703 
   17704 2002-01-15  Maciej Stachowiak  <mjs (a] apple.com>
   17705 
   17706 	* src/kdelibs/kjs/Makefile.am: Add missing files to BUILT_SOURCES
   17707 	and build rules to fix `make -j3'
   17708 
   17709 2002-01-14  Maciej Stachowiak  <mjs (a] apple.com>
   17710 
   17711 	* .cvsignore:
   17712 	* Makefile.am:
   17713 	* Makefile.in:
   17714 	* include/.cvsignore:
   17715 	* include/Makefile.am:
   17716 	* include/private/.cvsignore:
   17717 	* include/private/Makefile.am:
   17718 	* lib/.cvsignore:
   17719 	* lib/Makefile.in:
   17720 	* src/.cvsignore:
   17721 	* src/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:
   17776 
   17777 2002-01-09  Richard Williamson  <rjw (a] apple.com>
   17778 
   17779         Re-implemented underlining.  Now it REALLY works, honest.
   17780         
   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:
   17787 
   17788 2001-12-20  Richard Williamson  <rjw (a] apple.com>
   17789         
   17790         More tweaks to text layout and underlining.
   17791 
   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:
   17798 
   17799 2001-12-18  Maciej Stachowiak  <mjs (a] apple.com>
   17800 
   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.
   17804 
   17805 	Reimplement QPoint, QSize and QRect:
   17806 
   17807 	* src/kwq/qt/qpoint.h, src/kwq/qt/qrect.h, src/kwq/qt/qsize.h:
   17808 	Update.
   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
   17823 	building.
   17824 	* src/kwq/Makefile.in: Add new files to build.
   17825 	
   17826 	Start moving away from QShared so we can remove it:
   17827 
   17828 	* src/kwq/qt/qbrush.h, src/kwq/KWQBrush.mm: (QBrush::QBrush),
   17829 	(QBrush::color),
   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
   17843 	QShared.
   17844 	* src/kwq/qt/qvariant.h, src/kwq/KWQVariant.mm:
   17845 	(QVariant::QVariant), (QVariant::~QVariant),
   17846 	(QVariant::operator=): Use KWQRefPtr instead of
   17847 	QShared.
   17848 	* src/kwq/qt/qnamespace.h: Remove private constructor and
   17849 	destructor since people want to subclass this.
   17850 
   17851 	* src/kwq/_KWQOwner.h: Add include guards and standard license.
   17852 
   17853 	* src/kdelibs/khtml/ecma/kjs_binding.h: Add include of qvariant.h,
   17854 	how could stuff ever compile without this?
   17855 
   17856 2001-12-18  Richard Williamson  <rjw (a] apple.com>
   17857 
   17858         Finally fixed underlining.
   17859         
   17860 	* src/kdelibs/khtml/rendering/render_text.cpp: (TextSlave::printDecoration):
   17861 	* src/kwq/KWQFontMetrics.mm:
   17862 
   17863 2001-12-18  Maciej Stachowiak  <mjs (a] apple.com>
   17864 
   17865 	* src/kwq/Makefile.in: Re-apply my changes, which accidentally got
   17866 	clobbered.
   17867 
   17868 2001-12-13  Maciej Stachowiak  <mjs (a] apple.com>
   17869 
   17870 	Changes for international character set support. Still needs work,
   17871 	but no worse than before. amazon.co.jp renders almost correctly.
   17872 	
   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
   17899 	sets.
   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.
   17904 	
   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).
   17908 
   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.
   17913 
   17914 2001-12-11  Chris Blumenberg  <cblu (a] apple.com>
   17915 
   17916 	* ChangeLog:
   17917 	* src/kwq/KWQKHTMLPart.mm:
   17918 
   17919 2001-12-11  Chris Blumenberg  <cblu (a] apple.com>
   17920 
   17921 	* src/kwq/KWQKHTMLPart.mm:
   17922 
   17923 2001-12-10  Kenneth Kocienda  <kocienda (a] apple.com>
   17924 
   17925         Went back and did a better job of cleaning up the warnings
   17926         that resulted from comparing signed and unsigned numbers.
   17927 
   17928 	* src/kwq/KWQString.mm: (QString::insert), (QString::remove),
   17929 	(QString::truncate):
   17930 
   17931 2001-12-07  Richard Williamson  <richwill (a] richwill.com>
   17932 
   17933         Fixed bug that was highlighted when we turned on warnings.
   17934         
   17935 	* src/kwq/KWQFontMetrics.mm:
   17936 	* src/kwq/KWQMetrics.h:
   17937 
   17938 2001-12-07  Kenneth Kocienda  <kocienda (a] apple.com>
   17939 
   17940         Fixed small bug in a comparison that was making -Wall complain
   17941 
   17942 	* src/kwq/KWQString.mm:
   17943 
   17944