1. 20 Jan, 2003 2 commits
    • hyatt's avatar
      Gah. Fix positioned objects and floating objects so that they · 0f6efab4
      hyatt authored
      	don't append themselves to the list of runs in normal flow.
      	An astoundingly basic bug. :(
      
              Reviewed by john
      
              * khtml/rendering/bidi.cpp:
              (appendRunsForObject):
              * khtml/rendering/render_flow.cpp:
              (RenderFlow::addChildToFlow):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3357 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0f6efab4
    • hyatt's avatar
      Fixes for 3150561 (blog articles vanish on stylesheet switch) and · ed93ca74
      hyatt authored
              and 3150560 (crash changing fixed positioned element to normal
              positioning dynamically).
      
              This change makes layers able to deal with dynamic changes in
              position that cause you to have to either remove a layer from
              the hierarchy while preserving the children or to insert a
              layer into the hierarchy in between a parent and its descendants.
      
      	This patch also rewrites :hover/:active so that they can actually
      	be used in selectors other than the rightmost selector (e.g., so you
      	can write a rule like "li:hover > a").
      
      	Also, layers will now properly clear out their hover/active state
      	when the mouse is no longer inside them.
      
      	With these fixes, Eric Meyer's "Pure CSS Menus" work (perfectly)
      	and the repainting problems on sites like brainjar.com and
      	diveintomark.org and wired.com are fixed.
      
              Reviewed by mjs and john.
      
              * khtml/css/css_stylesheetimpl.h:
              * khtml/css/cssparser.cpp:
              (StyleBaseImpl::parseSelector):
              * khtml/css/cssparser.h:
              * khtml/css/cssstyleselector.cpp:
              * khtml/css/cssstyleselector.h:
              * khtml/dom/html_head.cpp:
              (HTMLLinkElement::setDisabled):
              * khtml/rendering/render_box.cpp:
              (RenderBox::setStyle):
              * khtml/rendering/render_box.h:
              * khtml/rendering/render_container.cpp:
              (RenderContainer::appendChildNode):
              (RenderContainer::insertChildNode):
              * khtml/rendering/render_flow.cpp:
              (RenderFlow::setStyle):
              * khtml/rendering/render_flow.h:
              * khtml/rendering/render_layer.cpp:
              (RenderLayer::addChild):
              (RenderLayer::removeOnlyThisLayer):
              (RenderLayer::insertOnlyThisLayer):
              (RenderLayer::clearOtherLayersHoverActiveState):
              (RenderLayer::clearHoverAndActiveState):
              (RenderLayer::nodeAtPoint):
              (RenderLayer::constructZTree):
              * khtml/rendering/render_layer.h:
              * khtml/rendering/render_object.cpp:
              (RenderObject::addLayers):
              (RenderObject::moveLayers):
              (RenderObject::findNextLayer):
              (RenderObject::setStyle):
              (RenderObject::setHoverAndActive):
              * khtml/rendering/render_object.h:
              * khtml/rendering/render_style.cpp:
              (RenderStyle::diff):
              * khtml/rendering/render_style.h:
              * khtml/xml/dom_docimpl.cpp:
              (DocumentImpl::DocumentImpl):
              * khtml/xml/dom_docimpl.h:
              * khtml/xml/dom_elementimpl.cpp:
              (ElementImpl::recalcStyle):
              * khtml/xml/dom_nodeimpl.cpp:
              (NodeBaseImpl::setActive):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3356 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ed93ca74
  2. 18 Jan, 2003 2 commits
    • mjs's avatar
      Reviewed by John. · 48a4a372
      mjs authored
      	- fixed 3149511 - Blogger.com window closes after update is posted
      
              * khtml/ecma/kjs_window.cpp:
              (WindowFunc::tryCall): For now, don't allow closing the window at
      	all if it wasn't opened by JavaScript, since we don't support the
      	history object and so can't tell if the window has only one
      	history item.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3355 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      48a4a372
    • mjs's avatar
      Reviewed by John. · 0a04d8f2
      mjs authored
      	- fixed 3123041 - VIP: Spewage at bottom of oregonlive.com and other similar pages
      
              * WebView.subproj/WebUserAgentSpoofTable.gperf: Added nj.com to spoof list
      	below oregonlive.com (which was already in there). Added comment explaining the
      	need to spoof a bit more.
              * WebView.subproj/WebUserAgentSpoofTable.c:
              (hash):
              (_web_findSpoofTableEntry): Regenerated.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3354 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0a04d8f2
  3. 17 Jan, 2003 9 commits
    • darin's avatar
      Reviewed by Dave. · f34db7c8
      darin authored
      	- fixed the crashing so the layout tests work
      
              * khtml/rendering/render_layer.h: Add a node pointer result.
              * khtml/rendering/render_layer.cpp: (RenderLayer::elementList):
      	Return the node pointer so we can destroy it when done with it.
      
              * khtml/rendering/render_object.h: Make renderArena() const.
              * khtml/rendering/render_object.cpp: (RenderObject::renderArena): Make it const.
      
              * kwq/KWQRenderTreeDebug.cpp: (writeLayers): Free the Z layer list when done.
      	Without this things just crashed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3353 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f34db7c8
    • rjw's avatar
      Fixed 3126141. Allow pages with plugins to be cached. This is safe · 2684cf6a
      rjw authored
              because plugins are cleanly started/stopped when their containing views are
              added/removed from the view hierarchy.
      
              Reviewed by trey.
      
              * kwq/KWQKHTMLPart.mm:
              (KWQKHTMLPart::canCachePage):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3352 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2684cf6a
    • hyatt's avatar
      The new table code from Lars. Also includes bug fixes for · be02abb2
      hyatt authored
      	percentage height children in table cells, for positioning
      	of tables, and for width distribution of percentage width
      	cells.
      
              Reviewed by darin
      
              * ForwardingHeaders/rendering/table_layout.h: Added.
              * WebCore.pbproj/project.pbxproj:
              * khtml/css/cssparser.cpp:
              (StyleBaseImpl::parseValue):
              * khtml/css/cssstyleselector.cpp:
              * khtml/css/cssvalues.c:
              (findValue):
              * khtml/css/cssvalues.h:
              * khtml/css/cssvalues.in:
              * khtml/css/html4.css:
              * khtml/dom/html_table.cpp:
              (HTMLTableElement::insertRow):
              (HTMLTableElement::deleteRow):
              (HTMLTableRowElement::insertCell):
              (HTMLTableRowElement::deleteCell):
              (HTMLTableSectionElement::insertRow):
              (HTMLTableSectionElement::deleteRow):
              * khtml/html/html_tableimpl.cpp:
              (HTMLTableElementImpl::HTMLTableElementImpl):
              (HTMLTableElementImpl::setTFoot):
              (HTMLTableElementImpl::setTBody):
              (HTMLTableElementImpl::createTHead):
              (HTMLTableElementImpl::createTFoot):
              (HTMLTableElementImpl::insertRow):
              (HTMLTableElementImpl::deleteRow):
              (HTMLTableElementImpl::addChild):
              (HTMLTableElementImpl::parseAttribute):
              (HTMLTableElementImpl::attach):
              (HTMLTablePartElementImpl::parseAttribute):
              (HTMLTableSectionElementImpl::HTMLTableSectionElementImpl):
              (HTMLTableSectionElementImpl::~HTMLTableSectionElementImpl):
              (HTMLTableSectionElementImpl::insertRow):
              (HTMLTableSectionElementImpl::deleteRow):
              (HTMLTableSectionElementImpl::numRows):
              (HTMLTableRowElementImpl::rowIndex):
              (HTMLTableRowElementImpl::insertCell):
              (HTMLTableRowElementImpl::deleteCell):
              (HTMLTableCellElementImpl::HTMLTableCellElementImpl):
              (HTMLTableCellElementImpl::parseAttribute):
              (HTMLTableCellElementImpl::attach):
              (HTMLTableColElementImpl::HTMLTableColElementImpl):
              (HTMLTableColElementImpl::parseAttribute):
              * khtml/html/html_tableimpl.h:
              * khtml/html/htmlparser.cpp:
              (KHTMLParser::insertNode):
              (KHTMLParser::getElement):
              * khtml/rendering/bidi.cpp:
              (RenderFlow::layoutInlineChildren):
              * khtml/rendering/render_body.cpp:
              (RenderBody::availableHeight):
              * khtml/rendering/render_body.h:
              * khtml/rendering/render_box.cpp:
              (RenderBox::contentWidth):
              (RenderBox::contentHeight):
              (RenderBox::calcReplacedWidth):
              (RenderBox::calcReplacedHeight):
              (RenderBox::availableHeight):
              (RenderBox::calcAbsoluteVertical):
              * khtml/rendering/render_box.h:
              * khtml/rendering/render_flow.cpp:
              (RenderFlow::layoutBlockChildren):
              (RenderFlow::leftOffset):
              (RenderFlow::rightOffset):
              (RenderFlow::addOverHangingFloats):
              (RenderFlow::calcBlockMinMaxWidth):
              (RenderFlow::calcMinMaxWidth):
              * khtml/rendering/render_form.cpp:
              * khtml/rendering/render_form.h:
              * khtml/rendering/render_frames.cpp:
              * khtml/rendering/render_frames.h:
              * khtml/rendering/render_object.cpp:
              (RenderObject::createObject):
              (RenderObject::paddingTop):
              (RenderObject::paddingBottom):
              (RenderObject::paddingLeft):
              (RenderObject::paddingRight):
              * khtml/rendering/render_object.h:
              * khtml/rendering/render_replaced.cpp:
              (RenderReplaced::calcMinMaxWidth):
              * khtml/rendering/render_root.cpp:
              (RenderRoot::RenderRoot):
              (RenderRoot::layout):
              (RenderRoot::paintObject):
              * khtml/rendering/render_root.h:
              * khtml/rendering/render_style.cpp:
              (StyleSurroundData::StyleSurroundData):
              * khtml/rendering/render_style.h:
              * khtml/rendering/render_table.cpp:
              (RenderTable::RenderTable):
              (RenderTable::~RenderTable):
              (RenderTable::setStyle):
              (RenderTable::position):
              (RenderTable::addChild):
              (RenderTable::calcWidth):
              (RenderTable::layout):
              (RenderTable::setCellWidths):
              (RenderTable::paint):
              (RenderTable::calcMinMaxWidth):
              (RenderTable::splitColumn):
              (RenderTable::appendColumn):
              (RenderTable::colElement):
              (RenderTable::recalcSections):
              (RenderTable::removeChildNode):
              (RenderTable::dump):
              (RenderTableSection::RenderTableSection):
              (RenderTableSection::~RenderTableSection):
              (RenderTableSection::detach):
              (RenderTableSection::setStyle):
              (RenderTableSection::addChild):
              (RenderTableSection::ensureRows):
              (RenderTableSection::addCell):
              (RenderTableSection::setCellWidths):
              (RenderTableSection::calcRowHeight):
              (RenderTableSection::layoutRows):
              (RenderTableSection::paint):
              (RenderTableSection::recalcCells):
              (RenderTableSection::clearGrid):
              (RenderTableSection::removeChildNode):
              (RenderTableSection::dump):
              (RenderTableRow::RenderTableRow):
              (RenderTableRow::detach):
              (RenderTableRow::setStyle):
              (RenderTableRow::addChild):
              (RenderTableRow::removeChildNode):
              (RenderTableRow::dump):
              (RenderTableRow::layout):
              (RenderTableCell::RenderTableCell):
              (RenderTableCell::detach):
              (RenderTableCell::updateFromElement):
              (RenderTableCell::getCellPercentageHeight):
              (RenderTableCell::setCellPercentageHeight):
              (RenderTableCell::calcMinMaxWidth):
              (RenderTableCell::baselinePosition):
              (RenderTableCell::setStyle):
              (RenderTableCell::paint):
              (RenderTableCell::paintBoxDecorations):
              (RenderTableCell::dump):
              (RenderTableCol::RenderTableCol):
              (RenderTableCol::updateFromElement):
              (RenderTableCol::addChild):
              (RenderTableCol::dump):
              * khtml/rendering/render_table.h:
              * khtml/rendering/table_layout.cpp: Added.
              (FixedTableLayout::FixedTableLayout):
              (FixedTableLayout::~FixedTableLayout):
              (FixedTableLayout::calcWidthArray):
              (FixedTableLayout::calcMinMaxWidth):
              (FixedTableLayout::layout):
              (AutoTableLayout::AutoTableLayout):
              (AutoTableLayout::~AutoTableLayout):
              (AutoTableLayout::recalcColumn):
              (AutoTableLayout::fullRecalc):
              (AutoTableLayout::calcMinMaxWidth):
              (AutoTableLayout::calcEffectiveWidth):
              (AutoTableLayout::insertSpanCell):
              (AutoTableLayout::layout):
              (AutoTableLayout::calcPercentages):
              * khtml/rendering/table_layout.h: Added.
              * khtml/xml/dom_docimpl.cpp:
              (DocumentImpl::createHTMLElement):
              * khtml/xml/dom_nodeimpl.cpp:
              (NodeImpl::NodeImpl):
              (NodeImpl::dump):
              * khtml/xml/dom_nodeimpl.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3351 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      be02abb2
    • darin's avatar
      Reviewed by Dave. · 1bb17f28
      darin authored
      	- clean room rewrite of QCString::operator<<.
      
              * kwq/KWQCString.mm: (operator<<): Rewrote it.
      
      	- update format of render tree dumping for real use
      
              * khtml/rendering/render_layer.h: Added elementList().
              * khtml/rendering/render_layer.cpp: (RenderLayer::elementList): Added.
      
              * kwq/KWQRenderTreeDebug.cpp:
              (operator<<): Added an overload for writing out QRect.
              (writeIndent): Added.
              (write): Use the overload for QRect, also reorganize to dump layers.
              (writeLayers): Use this to dump the layers.
              (externalRepresentation): Call writeLayers instead of write.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3350 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1bb17f28
    • cblu's avatar
      WebFoundation: · d3ed1c91
      cblu authored
      	Fixed: 3143656 - crash in MIMETypeForFile when a large QT movie is dragged over window
      
      	Removed all unnecessary content sniffing as that work is already done in WebResourceLoad.
      
              Reviewed by darin.
      
              * CacheLoader.subproj/WebResourceLoad.m:
              (-[WebResourceLoad _sendResponseMetadataCallbackCheckingPreconditions:]): only sniff here, call _web_guessedMIMEType
              * Misc.subproj/WebMultipartForm.m: include WebNSDataExtras
              * Misc.subproj/WebNSDataExtras.h: Added.
              * Misc.subproj/WebNSDataExtras.m: Added.
              (-[NSMutableData _web_appendFormat:]):
              (-[NSMutableData _web_appendEncodedString:format:arguments:]):
              (-[NSMutableData _web_appendEncodedString:format:]):
              (-[NSData _web_guessedMIMEType]): was _guessMIMEType in WebResourceLoad
              * Misc.subproj/WebNSMutableDataExtras.h: Removed.
              * Misc.subproj/WebNSMutableDataExtras.m: Removed.
              * Misc.subproj/WebNSStringExtras.h: removed 2 unneeded methods
              * Misc.subproj/WebNSStringExtras.m:
              * ProtocolHandlers.subproj/WebFileProtocolHandler.m:
              (-[WebFileProtocolHandler didLoadData:]): get the MIME type from the extension, don't sniff
              * ProtocolHandlers.subproj/WebSimpleHTTPProtocolHandler.m:
              (-[WebSimpleHTTPProtocolHandler _extractResponseStatusLineFromBytes:length:]): don't sniff
              * WebFoundation.pbproj/project.pbxproj:
      
      WebKit:
      
      	Fixed: 3143656 - crash in MIMETypeForFile when a large QT movie is dragged over window
      
              Reviewed by darin.
      
              * WebView.subproj/WebControllerPrivate.m:
              (+[WebController _MIMETypeForFile:]): rewrote, now calls _web_guessedMIMEType
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d3ed1c91
    • darin's avatar
      Reviewed by Ken. · 1bd92ea0
      darin authored
      	- removed unused KWQDrawUtil code
      
              * ForwardingHeaders/qdrawutil.h: Emptied this file out.
      
              * kwq/KWQDrawUtil.h: Removed.
              * kwq/KWQDrawUtil.mm: Removed.
              * WebCore.pbproj/project.pbxproj: Removed KWQDrawUtil.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3348 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1bd92ea0
    • darin's avatar
      WebCore: · 39628ea0
      darin authored
              Reviewed by John.
      
      	- updated copyright to include expat copyrights
      
              * WebCore.pbproj/project.pbxproj: Added expat copyrights on the end.
      	Got text of copyrights from Acknowledgments.rtf in WebBrowser.
      
      WebBrowser:
      
              Reviewed by John.
      
      	- updated acknowledgments to latest text from legal that mentions expat
      
              * Help/English.lproj/Acknowledgments.rtf: New drop from legal.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3347 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      39628ea0
    • darin's avatar
      WebKit: · 5930f7b4
      darin authored
      	- compressed all our non-compressed TIFF files
      
              * Resources/nullplugin.tiff:
              * Resources/url_icon.tiff:
      
      WebBrowser:
      
      	- compressed all our non-compressed TIFF files
      
              * Preferences.subproj/AppearancePreferences.tiff:
              * Preferences.subproj/BookmarkPreferences.tiff:
              * Preferences.subproj/GeneralPreferences.tiff:
              * Preferences.subproj/SecurityPreferences.tiff:
              * Resources/Images/Activity_Stop.tif:
              * Resources/Images/AddLink.tif:
              * Resources/Images/AddLinkDisabled.tif:
              * Resources/Images/AddLinkPressed.tif:
              * Resources/Images/AddressBook.tiff:
              * Resources/Images/Back.tif:
              * Resources/Images/BackDisabled.tif:
              * Resources/Images/BackPressed.tif:
              * Resources/Images/BookmarksButton.tif:
              * Resources/Images/BookmarksButton_Pressed.tif:
              * Resources/Images/BookmarksButton_Rollover.tif:
              * Resources/Images/BookmarksButton_Selected.tif:
              * Resources/Images/BookmarksButton_Selected_Pressed.tif:
              * Resources/Images/BookmarksDragBadge1-2.tif:
              * Resources/Images/BookmarksDragBadge3.tif:
              * Resources/Images/BookmarksDragBadge4.tif:
              * Resources/Images/BookmarksDragBadge5.tif:
              * Resources/Images/BookmarksDragImage.tif:
              * Resources/Images/Bug_Report.tif:
              * Resources/Images/Bug_Report_Pressed.tif:
              * Resources/Images/DarkMetalSwatch.tif:
              * Resources/Images/Download_Clear.tif:
              * Resources/Images/Download_ClearDisabled.tif:
              * Resources/Images/Download_ClearPressed.tif:
              * Resources/Images/Download_Reload.tif:
              * Resources/Images/Download_ReloadPressed.tif:
              * Resources/Images/Download_Reveal.tif:
              * Resources/Images/Download_RevealPressed.tif:
              * Resources/Images/Download_Stop.tif:
              * Resources/Images/Download_StopPressed.tif:
              * Resources/Images/FavoriteDrag_Caps.tif:
              * Resources/Images/FavoriteDrag_Middle.tif:
              * Resources/Images/FavoritePressed_Caps.tif:
              * Resources/Images/FavoritePressed_Middle.tif:
              * Resources/Images/FavoriteRollover_Caps.tif:
              * Resources/Images/FavoriteRollover_Middle.tif:
              * Resources/Images/FavoritesBar.tif:
              * Resources/Images/FavoritesBarClipIndicator.tiff:
              * Resources/Images/FavoritesBarClipIndicatorPressed.tiff:
              * Resources/Images/FavoritesFolderArrow.tif:
              * Resources/Images/FavoritesFolderArrowWhite.tif:
              * Resources/Images/FontBigger.tif:
              * Resources/Images/FontBiggerDisabled.tif:
              * Resources/Images/FontBiggerPressed.tif:
              * Resources/Images/FontSmaller.tif:
              * Resources/Images/FontSmallerDisabled.tif:
              * Resources/Images/FontSmallerPressed.tif:
              * Resources/Images/Forward.tif:
              * Resources/Images/ForwardDisabled.tif:
              * Resources/Images/ForwardPressed.tif:
              * Resources/Images/History.tif:
              * Resources/Images/Home.tif:
              * Resources/Images/HomeDisabled.tif:
              * Resources/Images/HomePressed.tif:
              * Resources/Images/LibrarySelection.tif:
              * Resources/Images/LibrarySelectionGray.tif:
              * Resources/Images/Location_Left.tif:
              * Resources/Images/Location_Left_Progress.tif:
              * Resources/Images/Location_Middle.tif:
              * Resources/Images/Location_Middle_Progress.tif:
              * Resources/Images/Location_Right_Progress.tif:
              * Resources/Images/Lock.tif:
              * Resources/Images/NewFolder.tif:
              * Resources/Images/NewFolder_Disabled.tif:
              * Resources/Images/NewFolder_Pressed.tif:
              * Resources/Images/Reload.tif:
              * Resources/Images/ReloadDisabled.tif:
              * Resources/Images/ReloadPressed.tif:
              * Resources/Images/Search_Left.tif:
              * Resources/Images/Search_Left_Progress.tif:
              * Resources/Images/Search_Middle.tif:
              * Resources/Images/Search_Middle_Progress.tif:
              * Resources/Images/Search_Right.tif:
              * Resources/Images/Search_Right_Progress.tif:
              * Resources/Images/Search_SnapBack.tif:
              * Resources/Images/Search_SnapBackPressed.tif:
              * Resources/Images/Stop.tif:
              * Resources/Images/StopDisabled.tif:
              * Resources/Images/StopPressed.tif:
              * Resources/Images/folder16.tiff:
              * Resources/Images/rendezvous.tiff:
              * Resources/Images/tiny_menu.tiff:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3346 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5930f7b4
    • mjs's avatar
      Reviewed by Dave. · 760b2e8f
      mjs authored
      	- fixed 3148141 - crash in KJS::WindowFunc::tryCall leaving certain site
      
              * kwq/KWQKHTMLPart.mm:
              (KWQKHTMLPart::setView): If setting the view to nil and we have a
      	document, detach the document. This means that we are removing a
      	frame from the tree, so we want to run it's onUnload handler now,
      	rather than later when things are no longer fully hooked up.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3345 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      760b2e8f
  4. 16 Jan, 2003 12 commits
    • rjw's avatar
      Fixed 3148932. Account for zero width characters · 77a985bc
      rjw authored
              in <pre> fixed-width optimization.
      
              Reviewed by hyatt.
      
              * khtml/rendering/render_text.cpp:
              (RenderText::widthFromCache):
      
              Reviewed by Richard (written by Mike S.)  'Clean' implementations of these
              functions that were too similar to the Qt implementations.
      
              * kwq/KWQString.mm:
              (QString::left):
              (QString::right):
              (QString::mid):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3344 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      77a985bc
    • mjs's avatar
      Reviewed by Darin. · bfdaa330
      mjs authored
      	- fixed 3144771 - Crash in KJS::WindowFunc::tryCall leaving www.smogcheck.org
      
      	I fixed this by making sure we couldn't send the unload event twice, which was
      	happening before in certain circumstances.
      
              * khtml/khtml_part.cpp:
              (KHTMLPart::closeURL): When emitting load event, note that unload
      	event has not yet been sent.
              (KHTMLPart::checkEmitLoadEvent): Note when unload event has been
      	sent to avoid sending it twice.
              * khtml/khtmlpart_p.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3343 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bfdaa330
    • mjs's avatar
      Reviewed by Darin. · 01106a97
      mjs authored
      	- made minor tweaks to work better with Mozilla's JavaScript tests.
      
              * kjs/testkjs.cpp:
              (VersionFunctionImp::call): Implemented
              (main): Ignore files named -f (hack to match -f <filename syntax
      	that moz JavaScript tests expect). Also use return code 3 instead
      	of 1 for uncaught exception.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3342 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      01106a97
    • darin's avatar
      * kjs/number_object.cpp: (NumberObjectImp::construct): · 69a82b6b
      darin authored
      	Fix build, remove stray space.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3339 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      69a82b6b
    • darin's avatar
      Reviewed by Maciej. · 389288b2
      darin authored
      	- rolled in a change from the KJS folks
      
              * kjs/number_object.h: Use ObjectImp *, not Object, for the proto.
              * kjs/number_object.cpp:
              (NumberInstanceImp::NumberInstanceImp): Use ObjectImp *, not Object, for the proto.
              (NumberPrototypeImp::NumberPrototypeImp): Pass ObjectImp.
              (NumberObjectImp::construct): Use ObjectImp.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3338 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      389288b2
    • darin's avatar
      Removed the Safari-49 markers to reduce confusion since · 361e7403
      darin authored
      49 was never used and includes changes that were not in 51.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3337 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      361e7403
    • darin's avatar
      * WebView.subproj/WebController.h: Fixed a comment that was out of date. · e579e0b7
      darin authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3336 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e579e0b7
    • cblu's avatar
      Fixed comment. · 9442c951
      cblu authored
              Reviewed by NOBODY (OOPS!).
      
              * Plugins.subproj/WebBaseNetscapePluginView.m:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3335 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9442c951
    • cblu's avatar
      Fixed: 3125743 - right-click doesn't count as ctrl-click in Flash · f8ae501e
      cblu authored
      	AppKit doesn't call mouseDown or mouseUp on right-click. Simulate control-click mouseDown and mouseUp so plug-ins get the right-click event as they do in Carbon
      
              Reviewed by darin.
      
              * Plugins.subproj/WebBaseNetscapePluginView.m:
              (-[WebBaseNetscapePluginView rightMouseDown:]):
              (-[WebBaseNetscapePluginView rightMouseUp:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3334 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f8ae501e
    • darin's avatar
      WebCore: · 615a7e07
      darin authored
              Reviewed by John.
      
      	- added an API for dumping the external representation of the render tree for testing
      
              * kwq/KWQRenderTreeDebug.h: Added.
              * kwq/KWQRenderTreeDebug.cpp: Added.
      
              * kwq/KWQTextStream.h: Added more overloads for operator<<.
              * kwq/KWQTextStream.mm: (QTextStream::operator<<): Implemented them.
      
              * kwq/WebCoreBridge.h: Added renderTreeAsExternalRepresentation.
              * kwq/WebCoreBridge.mm: (-[WebCoreBridge renderTreeAsExternalRepresentation]): Added.
      
      	- removed remnants of an earlier more-naive cut at this same sort of thing
      	- removed ForwardingHeaders from the project since that doesn't really help Project Builder
      
              * kwq/WebCoreTestController.h: Removed.
              * kwq/WebCoreTestController.m: Removed.
              * WebCore.exp: Removed WebCoreTestController.
              * WebCore-combined.exp: Re-generated.
              * WebCore.pbproj/project.pbxproj: Removed WebCoreTestController and ForwardingHeaders.
      
      WebKit:
      
              Reviewed by John.
      
      	- added an API for dumping the external representation of the render tree for testing
      
              * Misc.subproj/WebCoreStatistics.h: Added renderTreeAsExternalRepresentation.
              * Misc.subproj/WebCoreStatistics.m: (-[WebFrame renderTreeAsExternalRepresentation]): Added.
      
      	- removed remnants of an earlier more-naive cut at this same sort of thing
      
              * Misc.subproj/WebTestController.h: Removed.
              * Misc.subproj/WebTestController.m: Removed.
              * WebKit.exp: Removed WebTestController.
              * WebKit.pbproj/project.pbxproj: Removed WebTestController.
      
      	- other changes
      
              * WebCoreSupport.subproj/WebBridge.m: Had added new copyright date to touch a file.
      	That's not needed any more, but the date should be updated anyway.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3333 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      615a7e07
    • sheridan's avatar
      Safari-53u; tree is open · f7bab12f
      sheridan authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3332 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f7bab12f
    • sheridan's avatar
      Safari-52 stamp · de81c91e
      sheridan authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3330 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      de81c91e
  5. 15 Jan, 2003 4 commits
    • mjs's avatar
      Reviewed by Darin. · a7881fc9
      mjs authored
      	- fixed 3143418 - controller assert in WebStandardPanels _didStartLoadingURL
      	- fixed 3141212 - crash in kjs garbage collection (contextimp mark)
      
              * WebCoreSupport.subproj/WebBridge.m:
              (-[WebBridge startLoadingResource:withURL:]): If the data source
      	doesn't have a controller, then block the load.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3329 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a7881fc9
    • trey's avatar
      3144458 - user's credentials are present in a form that is revisited via b/f or history · 2c65ac11
      trey authored
      	We now never save/restore password fields.  Also if the page has a form with a password
      	field that would be submitted securely, we do not save anything on that page.
      
              Reviewed by Darin.
      
              * force-clean-timestamp:  PB isn't smart enough to know what to rebuild.
              * khtml/html/html_formimpl.cpp:
              (HTMLFormElementImpl::formWouldHaveSecureSubmission):  Utility function.
              (HTMLFormElementImpl::attach):  Tell doc if we've added a secure form.
              (HTMLFormElementImpl::parseAttribute):  Tell doc if form became secure.
              (HTMLInputElementImpl::state):  Assert that we never save password fields.
              (HTMLInputElementImpl::restoreState):  Assert that we never restore password fields.
              (HTMLInputElementImpl::attach):  Tell doc if we've added a password field.
              * khtml/html/html_formimpl.h:
              * khtml/xml/dom_docimpl.cpp:
              (DocumentImpl::DocumentImpl):  Init count of secure forms, password fields.
              (DocumentImpl::passwordFieldAdded):
              (DocumentImpl::passwordFieldRemoved):
              (DocumentImpl::hasPasswordField):  New methods to count password fields.
              (DocumentImpl::secureFormAdded):
              (DocumentImpl::secureFormRemoved):
              (DocumentImpl::hasSecureForm):  New methods to count secure forms.
              * khtml/xml/dom_docimpl.h:
              * kwq/KWQKHTMLPart.mm:
              (KWQKHTMLPart::canCachePage):   Never let pages with password fields in the page cache.
              (KWQKHTMLPart::saveDocumentState):  Do not save form state if page has a form with
      	a password field that would be submitted securely
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3328 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2c65ac11
    • darin's avatar
      Reviewed by Ken. · 13748990
      darin authored
      	- rolled in a change from the KJS folks
      
      	Fixes a bug where the date functions would not accept non-strings.
      	And provides a bit of a speedup.
      
              * kjs/date_object.h: Change parameter type for parseDate.
              * kjs/date_object.cpp:
              (DateObjectFuncImp::call): Always call toString, don't check the type.
              (KJS::parseDate): Take a UString parameter, not a String parameter.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3327 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      13748990
    • darin's avatar
      WebCore: · c12a0350
      darin authored
              Reviewed by Ken.
      
      	- fixed problem where Content-Type was coming in with suffixes like "charset"
      
              * kwq/WebCoreBridge.h: Add contentType and refresh parameters, and remove "headers"
      	parameter, from openURL method.
              * kwq/WebCoreBridge.mm:
              (-[WebCoreBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): Get the
      	content type from a parameter, and the refresh header from a separate parameter rather
      	than extracting both from a headers dictionary.
      
      WebKit:
      
              Reviewed by Ken.
      
      	- fixed problem where Content-Type was going into WebCore with suffixes like "charset"
      
              * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady:]):
      	Pass in contentType from the response, rather than the "Content-Type" header.
      	Also pass in the refresh header separately.
      
              * English.lproj/StringsNotToBeLocalized.txt: Updated for above change.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3326 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c12a0350
  6. 14 Jan, 2003 7 commits
    • darin's avatar
      Reviewed by Maciej. · 5c611c4d
      darin authored
      	- fixed 3147036 -- words separated only by newlines are getting rammed together on XML page
      	- fixed 3147032 -- preformatted text is missing much whitespace on XML page
      
              * khtml/xml/xml_tokenizer.cpp: (XMLHandler::characters): Don't try to strip whitespace at all,
      	because it needs to be in the DOM.
      
      	- add support for more MIME types
      
              * khtml/khtml_part.cpp: (KHTMLPart::begin): Add "application/xml" and "application/xhtml+xml".
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3325 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5c611c4d
    • mjs's avatar
      WebFoundation: · 69012bc6
      mjs authored
              Reviewed by Darin, Dave and Trey, and given the seal of approval by Don.
      
      	Added a new NSFileManager extension method which can be used to
      	remove a file but will refuse to remove a directory. Used it
      	wherever we remove files but not directories.
      
              * Misc.subproj/WebNSFileManagerExtras.h:
              * Misc.subproj/WebNSFileManagerExtras.m:
      	(-[NSFileManager _web_removeFileOnlyAtPath:]): New method that
      	removes a file using unlink(2), which means we can't possibly remove a directory.
      	Also unlink ._ file if we are on a filesystem that doesn't support a resource fork.
              * Database.subproj/WebFileDatabase.m:
              (-[WebFileDatabase _truncateToSizeLimit:]):  Use the new method.
              (-[WebFileDatabase performRemoveObjectForKey:]): Use the new method.
      
      WebKit:
      
              Reviewed by Darin, Dave and Trey, and given the seal of approval by Don.
      
      	Use new safer file removal call that does not handle directories.
      
              * Downloads.subproj/WebDownloadHandler.m:
      	(-[WebDownloadHandler cleanUpAfterFailure]): Use
      	_web_removeFileOnlyAtPath:
              * Plugins.subproj/WebBaseNetscapePluginStream.m:
              (-[WebBaseNetscapePluginStream dealloc]): Use _web_removeFileOnlyAtPath:
              (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Use _web_removeFileOnlyAtPath:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3324 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      69012bc6
    • darin's avatar
      Reviewed by Dave. · a15075e3
      darin authored
              * Plugins.subproj/WebBaseNetscapePluginStream.m:
              (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
      	Fixed uninitialized variable warning so builds work again.
      
              * WebView.subproj/WebDataSourcePrivate.m: (+[WebDataSource _repTypes]): Added "application/xml".
              * WebView.subproj/WebViewPrivate.m: (+[WebView _viewTypes]): Added "application/xml".
      
      	* English.lproj/Localizable.strings: Regenerated.
      	* English.lproj/StringsNotToBeLocalized.txt: Updated for above change.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3323 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a15075e3
    • hyatt's avatar
      Make FOUC work with XML. · bcb09ec8
      hyatt authored
              Reviewed by darin.
      
              * khtml/html/html_baseimpl.cpp:
              (HTMLBodyElementImpl::attach):
              * khtml/xml/dom_xmlimpl.cpp:
              (ProcessingInstructionImpl::ProcessingInstructionImpl):
              (ProcessingInstructionImpl::checkStyleSheet):
              (ProcessingInstructionImpl::isLoading):
              (ProcessingInstructionImpl::sheetLoaded):
              (ProcessingInstructionImpl::setStyleSheet):
              * khtml/xml/dom_xmlimpl.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3322 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bcb09ec8
    • darin's avatar
      Reviewed by Maciej. · 0bb44c36
      darin authored
      	- first cut at XML parsing with expat
      
              * khtml/khtml_part.cpp: (KHTMLPart::begin): Remove APPLE_CHANGES and use the XML
      	code for text/xml documents.
      
              * WebCore.pbproj/project.pbxproj: Added the ForwardingHeaders to the project.
      	Added new QXml files, removed old ones.
      
              * kwq/KWQXml.h: Removed.
              * kwq/KWQXml.mm: Removed.
      
              * kwq/KWQXmlAttributes.h: Added.
              * kwq/KWQXmlAttributes.mm: Added.
              * kwq/KWQXmlDefaultHandler.h: Added.
              * kwq/KWQXmlDefaultHandler.mm: Added.
              * kwq/KWQXmlSimpleReader.h: Added.
              * kwq/KWQXmlSimpleReader.mm: Added.
      
              * kwq/KWQString.h: Add fromUtf8 functions.
              * kwq/KWQString.mm: (QString::fromUtf8): Added. Simple implementation just
      	calls fromStringWithEncoding. We may need something more efficient later,
      	at least for all-ASCII text.
      
      	- other changes
      
              * khtml/khtml_part.h: Fix spelling of occurrence.
      
              * khtml/misc/decoder.cpp: (Decoder::decode): Turn on Japanese auto-detect.
      	It doesn't seem to work yet, but this does no harm.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3321 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0bb44c36
    • rjw's avatar
      Fix for 3139120. This patch was contributed by Mitz Pettel. It correctly · 2028aa44
      rjw authored
              handles the visually ordered encodings.  The patch also picks up changes
              from kde that accounts for european numbers correctly in bidiReorderLine().
      
              Reviewed by Dave.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3319 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2028aa44
    • darin's avatar
      Reviewed by Trey, John, and Maciej, and given the seal of approval by Don. · 31d40d53
      darin authored
      	- fixed 3143317 -- plug-in supplied URLs cause correspondingly named files in /tmp to be deleted
      	- fixed 3143330 -- plug-in supplied URLs can overwrite files used in other windows by same plug-in
      
              * Plugins.subproj/WebBaseNetscapePluginStream.h: Make path be a char * rather than an NSString.
              * Plugins.subproj/WebBaseNetscapePluginStream.m:
              (-[WebBaseNetscapePluginStream dealloc]): Use unlink() to delete the temporary file we made.
      	Since we created the file, we know it doesn't have any fancy stuff like a resource fork.
              (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Create the file with mkstemp instead of
      	trying to come up with our own filename. This eliminates the need to delete an old file (because we
      	are guaranteed the file is new) and also mkstemp opens the file for us, so we just need to write
      	the contents.
      
              * English.lproj/StringsNotToBeLocalized.txt: Updated for above changes.
      
              - unrelated change to help with other bug analysis
      
              * WebView.subproj/WebBaseResourceHandleDelegate.m: Added assertions.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3318 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      31d40d53
  7. 13 Jan, 2003 4 commits
    • cblu's avatar
      WebFoundation: · bd135e16
      cblu authored
      	Fix for checking and creating proper download filenames.
      
              Reviewed by mjs, kocienda, trey.
      
              * CacheLoader.subproj/WebResourceResponse.h:
              * CacheLoader.subproj/WebResourceResponse.m: removed the filename method. That is now a category in WebKit
              * CacheLoader.subproj/WebResourceResponsePrivate.h:
              * Misc.subproj/WebNSStringExtras.h:
              * Misc.subproj/WebNSStringExtras.m:
              (-[NSString _web_filenameByFixingIllegalCharacters]): new, turns "/" into "-", strips leading dots
              * ProtocolHandlers.subproj/WebHTTPProtocolHandler.m:
              (-[WebHTTPProtocolHandler setResponseMetadata:]): don't parse out the content disposition. This is done in WebKit.
      
      WebKit:
      
      	Fix for checking and creating proper download filenames.
      
              Reviewed by mjs, kocienda, trey.
      
              * WebKit.pbproj/project.pbxproj:
              * WebView.subproj/WebControllerPolicyDelegate.h: changes for renamed savePathForResponse:andRequest: method
              * WebView.subproj/WebDefaultPolicyDelegate.m: changes for renamed savePathForResponse:andRequest: method
              (-[WebDefaultPolicyDelegate savePathForResponse:andRequest:]): renamed
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient continueAfterContentPolicy:response:]): changes for renamed savePathForResponse:andRequest: method
      
      WebBrowser:
      
      	Fix for checking and creating proper download filenames.
      
              Reviewed by mjs, kocienda, trey.
      
              * BrowserDocument.m:
              (-[BrowserDocument pageName]): call _web_filenameByFixingIllegalCharacters on the web page title when saving the document
              * BrowserWebController.m:
              (-[BrowserWebController savePathForResponse:andRequest:]): renamed, removed temporary that checks for invalid filename. That work is done in WebKit.
              * HTMLSourceDocument.m:
              (-[HTMLSourceDocument displayName]): call suggestedFilenameForSaving
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3316 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bd135e16
    • darin's avatar
      * kjs/ustring.h: Fix spelling of occurrence. · b87b8515
      darin authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3315 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b87b8515
    • darin's avatar
      Reviewed by Ken. · 908cf2a7
      darin authored
      	- fixed 3143781 -- submitting the same form twice doesn't work properly
      	(example at directory.apple.com)
      
              * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::submitForm): Only run the "don't submit the same
      	form twice" logic when the form is one that affects the frame that the form is in.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3314 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      908cf2a7
    • darin's avatar
      Reviewed by Maciej. · 60414e6b
      darin authored
      	- turned more recursion into iteration, and fixed some backwards stuff
      
              * kjs/grammar.y: Use the normal idiom for CaseClauses and FormalParameterList
      	rather than using append().
              * kjs/grammar.cpp: Regenerated.
      
              * kjs/nodes.h: Change ClauseListNode and ParameterNode to use the normal idiom,
      	and got rid of append methods. Also added friend declarations and calls to reverseList().
              * kjs/nodes.cpp:
              (StatListNode::ref): Iteration, not recursion.
              (StatListNode::deref): Iteration, not recursion.
              (StatListNode::execute): Iteration, not recursion.
              (StatListNode::processVarDecls): Iteration, not recursion.
              (CaseClauseNode::reverseList): Added.
              (ClauseListNode::ref): Iteration, not recursion.
              (ClauseListNode::deref): Iteration, not recursion.
              (ClauseListNode::processVarDecls): Iteration, not recursion.
              (CaseBlockNode::reverseLists): Added.
              (ParameterNode::ref): Iteration, not recursion.
              (ParameterNode::deref): Iteration, not recursion.
              (FuncDeclNode::reverseParameterList): Added.
              (FuncExprNode::reverseParameterList): Added.
              (SourceElementsNode::ref): Iteration, not recursion.
              (SourceElementsNode::deref): Iteration, not recursion.
              (SourceElementsNode::execute): Use variable name of n to match other functions.
              (SourceElementsNode::processFuncDecl): Ditto.
              (SourceElementsNode::processVarDecls): Ditto.
      
              * kjs/nodes2string.cpp:
              (SourceStream::operator<<): Used a switch statement for a bit of added clarity.
              (ElementNode::streamTo): Iteration, not recursion.
              (PropertyValueNode::streamTo): Iteration, not recursion.
              (ArgumentListNode::streamTo): Iteration, not recursion.
              (StatListNode::streamTo): Iteration, not recursion, and fixed order.
              (VarDeclListNode::streamTo): Iteration, not recursion.
              (ClauseListNode::streamTo): Used for statement to match other functions.
              (CaseBlockNode::streamTo): Used for statement to match other functions.
              (ParameterNode::streamTo): Iteration, not recursion.
              (SourceElementsNode::streamTo): Iteration, not recursion, and fixed order that has been
      	backwards since I changed how this works in nodes.cpp.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      60414e6b