1. 12 Dec, 2008 3 commits
    • weinig@apple.com's avatar
      2008-12-11 Sam Weinig <sam@webkit.org> · 0aaf82a4
      weinig@apple.com authored
              Reviewed by Geoffrey Garen.
      
              Remove dependancy on having the Instruction buffer in order to
              deref Structures used for property access and global resolves.
              Instead, we put references to the necessary Structures in axillary
              data structures on the CodeBlock. This is not an ideal solution,
              as we still pay for having the Structures in two places and we
              would like to eventually just hold on to offsets into the machine
              code buffer.
      
              - Also removes CodeBlock bloat in non-JIT by #ifdefing the JIT
                only data structures.
      
              * GNUmakefile.am:
              * JavaScriptCore.pri:
              * JavaScriptCore.scons:
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * JavaScriptCoreSources.bkl:
              * bytecode/CodeBlock.cpp:
              (JSC::isGlobalResolve):
              (JSC::isPropertyAccess):
              (JSC::instructionOffsetForNth):
              (JSC::printGlobalResolveInfo):
              (JSC::printStructureStubInfo):
              (JSC::CodeBlock::printStructures):
              (JSC::CodeBlock::dump):
              (JSC::CodeBlock::~CodeBlock):
              (JSC::CodeBlock::shrinkToFit):
              * bytecode/CodeBlock.h:
              (JSC::GlobalResolveInfo::GlobalResolveInfo):
              (JSC::getNativePC):
              (JSC::CodeBlock::instructions):
              (JSC::CodeBlock::getStubInfo):
              (JSC::CodeBlock::getBytecodeIndex):
              (JSC::CodeBlock::addPropertyAccessInstruction):
              (JSC::CodeBlock::addGlobalResolveInstruction):
              (JSC::CodeBlock::numberOfStructureStubInfos):
              (JSC::CodeBlock::addStructureStubInfo):
              (JSC::CodeBlock::structureStubInfo):
              (JSC::CodeBlock::addGlobalResolveInfo):
              (JSC::CodeBlock::globalResolveInfo):
              (JSC::CodeBlock::numberOfCallLinkInfos):
              (JSC::CodeBlock::addCallLinkInfo):
              (JSC::CodeBlock::callLinkInfo):
              * bytecode/Instruction.h:
              (JSC::PolymorphicAccessStructureList::PolymorphicStubInfo::set):
              (JSC::PolymorphicAccessStructureList::PolymorphicAccessStructureList):
              * bytecode/Opcode.h:
              (JSC::):
              * bytecode/StructureStubInfo.cpp: Copied from bytecode/CodeBlock.cpp.
              (JSC::StructureStubInfo::deref):
              * bytecode/StructureStubInfo.h: Copied from bytecode/CodeBlock.h.
              (JSC::StructureStubInfo::StructureStubInfo):
              (JSC::StructureStubInfo::initGetByIdSelf):
              (JSC::StructureStubInfo::initGetByIdProto):
              (JSC::StructureStubInfo::initGetByIdChain):
              (JSC::StructureStubInfo::initGetByIdSelfList):
              (JSC::StructureStubInfo::initGetByIdProtoList):
              (JSC::StructureStubInfo::initPutByIdTransition):
              (JSC::StructureStubInfo::initPutByIdReplace):
              (JSC::StructureStubInfo::):
              * bytecompiler/BytecodeGenerator.cpp:
              (JSC::BytecodeGenerator::emitResolve):
              (JSC::BytecodeGenerator::emitGetById):
              (JSC::BytecodeGenerator::emitPutById):
              (JSC::BytecodeGenerator::emitCall):
              (JSC::BytecodeGenerator::emitConstruct):
              (JSC::BytecodeGenerator::emitCatch):
              * interpreter/Interpreter.cpp:
              (JSC::Interpreter::tryCTICachePutByID):
              (JSC::Interpreter::tryCTICacheGetByID):
              (JSC::Interpreter::cti_op_get_by_id_self_fail):
              (JSC::getPolymorphicAccessStructureListSlot):
              (JSC::Interpreter::cti_op_get_by_id_proto_list):
              (JSC::Interpreter::cti_op_resolve_global):
              * jit/JIT.cpp:
              (JSC::JIT::JIT):
              (JSC::JIT::privateCompileMainPass):
              (JSC::JIT::privateCompileSlowCases):
              (JSC::JIT::privateCompile):
              * jit/JITPropertyAccess.cpp:
              (JSC::JIT::compileGetByIdHotPath):
              (JSC::JIT::compilePutByIdHotPath):
              (JSC::JIT::compileGetByIdSlowCase):
              (JSC::JIT::compilePutByIdSlowCase):
              (JSC::JIT::privateCompileGetByIdSelfList):
              (JSC::JIT::privateCompileGetByIdProtoList):
              (JSC::JIT::privateCompileGetByIdChainList):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39229 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0aaf82a4
    • slewis@apple.com's avatar
      2008-12-11 Stephanie Lewis <slewis@apple.com> · a7ce2734
      slewis@apple.com authored
              Reviewed by Geoff Garen
      
              Account for the size of the response and request headers as well as other overhead
              when calculating the size a resource takes up in the cache.  Halts unbounded 
              growth in the cache.  Reduced stress test memory high water marks by > 50%.
      
              Uses estimates gathered from the stress test to set the overhead size.  
              A version of the patch was created that calculated most of the sizes, but it was 
              decided that the patch was still at a basic level an estimate.  What gains it made
              in accuracy was offset by the complexity involved in creating and updating the
              estimate.
      
              * loader/Cache.cpp:
              (WebCore::Cache::resourceAccessed):
              (WebCore::Cache::TypeStatistic::addResource):
              (WebCore::Cache::dumpLRULists):
              * loader/CachedResource.cpp:
              (WebCore::CachedResource::overheadSize):
              * loader/CachedResource.h:
              (WebCore::CachedResource::size):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a7ce2734
    • cwzwarich@webkit.org's avatar
      2008-12-11 Cameron Zwarich <zwarich@apple.com> · c5be090b
      cwzwarich@webkit.org authored
              Rubber-stamped by Mark Rowe.
      
              Roll out r39212 due to assertion failures during layout tests, multiple
              layout test failures, memory leaks, and obvious incorrectness.
      
              WebKit/mac:
      
              * WebView/WebPreferenceKeysPrivate.h:
              * WebView/WebPreferences.mm:
              (-[WebPreferences fullDocumentTeardownEnabled]):
              * WebView/WebPreferencesPrivate.h:
      
              WebKit/win:
      
              * Interfaces/IWebPreferencesPrivate.idl:
              * WebPreferenceKeysPrivate.h:
              * WebPreferences.cpp:
              * WebPreferences.h:
      
              WebKitTools:
      
              * DumpRenderTree/LayoutTestController.cpp:
              (LayoutTestController::staticFunctions):
              * DumpRenderTree/LayoutTestController.h:
              * DumpRenderTree/mac/DumpRenderTree.mm:
              (resetWebViewToConsistentStateBeforeTesting):
              * DumpRenderTree/mac/LayoutTestControllerMac.mm:
              * DumpRenderTree/win/DumpRenderTree.cpp:
              (resetWebViewToConsistentStateBeforeTesting):
              * DumpRenderTree/win/LayoutTestControllerWin.cpp:
              (LayoutTestController::pauseTransitionAtTimeOnElementWithId):
      
              LayoutTests:
      
              * security/override-preferences-2-expected.txt: Removed.
              * security/override-preferences-2.html: Removed.
              * security/override-preferences-expected.txt: Removed.
              * security/override-preferences.html: Removed.
              * security/override-zzz-reset-expected.txt: Removed.
              * security/override-zzz-reset.html: Removed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c5be090b
  2. 11 Dec, 2008 28 commits
    • barraclough@apple.com's avatar
      2008-12-11 Gavin Barraclough <barraclough@apple.com> · 36be6616
      barraclough@apple.com authored
              Reviewed by Oliver Hunt.
      
              Remove CTI_ARGUMENTS mode, use va_start implementation on Windows,
              unifying JIT callback (cti_*) argument access on OS X & Windows
      
              No performance impact.
      
              * interpreter/Interpreter.h:
              * jit/JIT.cpp:
              (JSC::JIT::privateCompileCTIMachineTrampolines):
              * jit/JIT.h:
              * jit/JITInlineMethods.h:
              (JSC::JIT::emitCTICall):
              * jit/JITPropertyAccess.cpp:
              (JSC::JIT::privateCompilePutByIdTransition):
              * wtf/Platform.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39226 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      36be6616
    • zimmermann@webkit.org's avatar
      Reviewed by Holger Freyther. · cd723f7d
      zimmermann@webkit.org authored
      Fixes: https://bugs.webkit.org/show_bug.cgi?id=22814
      
      Add <wml> image element support. Based on HTML/SVGImage{Element/Loader}, with
      the only difference that WML defines a second source attribute 'localsrc', that
      takes precedence over the 'src' attribute. If loading the 'localsrc' attribute
      fails, the user agent should try loading the 'src' attribute. If both fail the
      'alt' fallback content will be used - just like in HTML.
      
      Fixes: fast/wml/img-localsrc.wml (<img> and 'localsrc' attribute)
             fast/wml/img-src-localsrc-alt.wml ('localsrc'/'src' fallback handling)
             fast/wml/img-src.wml (<img> and 'src' attribute)
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39225 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cd723f7d
    • slewis@apple.com's avatar
      2008-12-11 Stephanie Lewis <slewis@apple.com> · 62d9e0aa
      slewis@apple.com authored
              Fix build.
      
              * WebView/WebView.mm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39224 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      62d9e0aa
    • zecke@webkit.org's avatar
      Make webkit_web_view_set_window_features internal · c3981cfc
      zecke@webkit.org authored
          Calling this method will not result in a notify::window-features
          signal being emitted. This would allow replacing a
          WebKitWebWindowFeature on a WebKitWebView without anyone noticing
          and the client code would monitor the wrong object.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c3981cfc
    • zecke@webkit.org's avatar
      2008-12-11 Daniel Macks <dmacks@netspace.org> · af3c15c4
      zecke@webkit.org authored
              Reviewed by Darin Adler.
      
              https://bugs.webkit.org/show_bug.cgi?id=22714
      
              Put libtool macro files in subdir that it wants.
      
              * GNUmakefile.am:
              * configure.ac:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39222 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af3c15c4
    • zecke@webkit.org's avatar
      2008-12-11 Holger Hans Peter Freyther <zecke@selfish.org> · dfeac1ac
      zecke@webkit.org authored
              Reviewed by Darin Adler.
      
              https://bugs.webkit.org/show_bug.cgi?id=22043
      
              Do not run into the WebCore::DocumentLoader::updateLoading
              ASSERT on Gtk+/CURL when trying to load tests from our LayoutTests.
      
              Do not call setPrimaryLoadComplete when the
              activeDocumentLoader has already been replaced. This can happen
              when a script executed from within FramerLoader::didFinishLoading will
              navigate to another URL.
      
              The assertion is caused by existing tests (e.g.
              fast/history/clicked-link-is-visited.html) reproducing this with
              network backends not equal to curl is tough or maybe not
              even possible.
      
              * loader/DocumentLoader.cpp:
              (WebCore::DocumentLoader::setPrimaryLoadComplete):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39221 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dfeac1ac
    • slewis@apple.com's avatar
      2008-12-11 Stephanie Lewis <slewis@apple.com> · 36f6df3b
      slewis@apple.com authored
              Reviewed by Oliver Hunt.
      
              Empty Web cache before quitting a debug build in order
              to report accurate CachedResource leaks.
      
              * WebView/WebView.mm:
              (-[WebView _close]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      36f6df3b
    • zimmermann@webkit.org's avatar
      Reviewed by Eric Seidel. · fcd8b3c3
      zimmermann@webkit.org authored
      - Remove some dead, commented-out code from WMLAElement.
      - Add missing virtual destructor for <noop>, as suggested by Alexey.
      - Refactor addHTMLAlignment in a static helper function to share with WML.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39219 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fcd8b3c3
    • oliver@apple.com's avatar
      <rdar://problem/6302405> Crash (null-deref) when using :before pseudoselector... · 8f7b5da4
      oliver@apple.com authored
      <rdar://problem/6302405> Crash (null-deref) when using :before pseudoselector with content CSS rule in SVG
      <https://bugs.webkit.org/show_bug.cgi?id=22804>
      
      Reviewed by Adele Peterson.
      
      This issue was caused by css generated content resulting in non-svg flowboxes
      being injected into SVG content.  As SVG spec does not describe behaviour in
      this case, and neither Opera nor Firefox displays such generated content, so
      now we make svg text layout and rendering just ignore any such content.
      
      Test: svg/css/crash-css-generated-content.xhtml
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39218 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8f7b5da4
    • cwzwarich@webkit.org's avatar
      2008-12-11 Cameron Zwarich <zwarich@apple.com> · d96b94eb
      cwzwarich@webkit.org authored
              Reviewed by Dave Hyatt.
      
              Bug 21256: REGRESSION (r36906): horizontally repeating image leaves ghosts when vertical scrolling
              <https://bugs.webkit.org/show_bug.cgi?id=21256>
              <rdar://problem/6362978>
      
              The ScrollView refactoring in r36906 caused the ScrollView and the
              platform widget to disagree about whether optimizing scrolling via
              blitting is allowed. The easiest way to fix this is to make ScrollView
              simply ask the platform widget whether this is safe on platforms that
              are affected.
      
              It is not possible to write a layout test for this bug because it
              involves the back/forward cache.
      
              * platform/ScrollView.cpp:
              (WebCore::ScrollView::ScrollView):
              (WebCore::ScrollView::setCanBlitOnScroll):
              (WebCore::ScrollView::canBlitOnScroll):
              (WebCore::ScrollView::platformSetCanBlitOnScroll):
              (WebCore::ScrollView::platformCanBlitOnScroll):
              * platform/ScrollView.h:
              * platform/mac/ScrollViewMac.mm:
              (WebCore::ScrollView::platformSetCanBlitOnScroll):
              (WebCore::ScrollView::platformCanBlitOnScroll):
              * platform/wx/ScrollViewWx.cpp:
              (WebCore::ScrollView::platformSetCanBlitOnScroll):
              (WebCore::ScrollView::platformCanBlitOnScroll):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d96b94eb
    • andersca@apple.com's avatar
      2008-12-11 Anders Carlsson <andersca@apple.com> · 9733b047
      andersca@apple.com authored
              Fix Tiger build.
      
              * Misc/WebNSDataExtras.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39216 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9733b047
    • andersca@apple.com's avatar
      WebKit/mac: · 9bb4a91d
      andersca@apple.com authored
      2008-12-11  Anders Carlsson  <andersca@apple.com>
      
              Reviewed by Cameron Zwarich.
      
              https://bugs.webkit.org/show_bug.cgi?id=22797
              REGRESSION: Crash at http://news.cnet.com/8301-17939_109-10119149-2.html
      
              Make sure to protect the stream because destroyStream can otherwise cause it to be deleted.
              
              * Plugins/WebBaseNetscapePluginStream.mm:
              (WebNetscapePluginStream::destroyStreamWithReason):
      
      LayoutTests:
      
      2008-12-11  Anders Carlsson  <andersca@apple.com>
      
              Reviewed by Cameron Zwarich.
      
              https://bugs.webkit.org/show_bug.cgi?id=22797
              REGRESSION: Crash at http://news.cnet.com/8301-17939_109-10119149-2.html
              
              * http/tests/plugins/get-url-expected.txt: Added.
              * http/tests/plugins/get-url.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39215 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9bb4a91d
    • zimmermann@webkit.org's avatar
      Reviewed by Eric Seidel. · 806c1c18
      zimmermann@webkit.org authored
      Fix typo in doctype (correct wapforum.org URL)
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39214 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      806c1c18
    • zecke@webkit.org's avatar
      2008-12-11 Brent Fulgham <bfulgham@gmail.com> · 939645a4
      zecke@webkit.org authored
              Reviewed by Adam Roben.
      
              https://bugs.webkit.org/show_bug.cgi?id=22808
      
              Correct build break due to malformed XML in Visual Studio project
              following @r39205 change.
      
              * WebCore.vcproj/WebCore.vcproj: Correct file entry so project loads.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39213 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      939645a4
    • eric@webkit.org's avatar
      2008-12-10 Glenn Wilson <gwilson@google.com> · 4649b543
      eric@webkit.org authored
              Reviewed by Adam Roben.
      
              Added new methods for overriding default WebPreference values
              and for resetting preferences to their defaults.
              https://bugs.webkit.org/show_bug.cgi?id=20534
      
              * WebView/WebPreferenceKeysPrivate.h:
              * WebView/WebPreferences.mm:
              (-[WebPreferences resetToDefaults]): new method
              (-[WebPreferences overridePreference:flag:]): new method
              * WebView/WebPreferencesPrivate.h: new method signatures
      
      2008-12-10  Glenn Wilson  <gwilson@google.com>
      
              Reviewed by Adam Roben.
      
              Added support for overriding default preferences per-test.
              https://bugs.webkit.org/show_bug.cgi?id=20534
              Two new methods were added: resetToDefaults and overridePreference.
      
              * Interfaces/IWebPreferencesPrivate.idl: new method signatures
              * WebPreferenceKeysPrivate.h: added new key for internal state
              * WebPreferences.cpp: added new methods
              (WebPreferences::overridePreference): new method
              (WebPreferences::resetToDefaults): new method
              * WebPreferences.h: new method signatures
      
      2008-12-10  Glenn Wilson  <gwilson@google.com>
      
              Reviewed by Adam Roben.
      
              Changed LayoutTestController and DumpRenderTree to allow for manual
              overriding of default preferences at test time.  Also added support for
              resetting the preferences after each test.
              https://bugs.webkit.org/show_bug.cgi?id=20534
      
              * DumpRenderTree/LayoutTestController.cpp: Added callback method for overriding preferences
              * DumpRenderTree/LayoutTestController.h: Added signature for callback
              * DumpRenderTree/win/DumpRenderTree.cpp: Added calls to reset preferences after each test if necessary
              * DumpRenderTree/win/LayoutTestControllerWin.cpp: Added JS override function
              * DumpRenderTree/mac/DumpRenderTree.mm: Added calls to reset preferences after each test if necessary
              * DumpRenderTree/mac/LayoutTestControllerMac.mm: Added JS override function
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39212 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4649b543
    • cmarrin@apple.com's avatar
      Reviewed by Dave Hyatt. · eff4ef98
      cmarrin@apple.com authored
              Fixed https://bugs.webkit.org/show_bug.cgi?id=22738
      
              This gets rid of the per-animation timers which were used when an animation
              started, ended and looped. Their job is now done by the main AnimationController's
              timer. It is now set to fire as needed. For instance, if there is a delay, it will
              fire after the delay time and then every 30ms to run the animation. The start, loop
              and end events are generated as needed during the firing of this timer.
      
              I had to add one more bit of code. When animation timers used to fire the animation events.
              This would always happen from the RunLoop, so any style changes that happened in the
              event handler would get picked up on the next updateRendering() call. But now the start
              event is generated during the styleIsAvailable() call, which is in the middle of the 
              updateRendering() cycle. And calling an event handler in the middle of updateRendering()
              is not allowed and causes style changes to get missed. We already have a mechanism in
              AnimationController to defer updateRendering() calls. So I added logic to defer all
              event handling to there. Now, I put any request for event handling into a list and ask
              for a deferred updateRendering() call. When that deferred timer fires, I go through that
              list, send all the events and then call updateRendering().
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39211 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      eff4ef98
    • hausmann@webkit.org's avatar
      2008-12-11 Yael Aharon <yael.aharon@nokia.com> · 97d5ab98
      hausmann@webkit.org authored
              Reviewed by Simon Hausmann.
      
              Allow applications to save and restore their state between loads.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39210 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      97d5ab98
    • hausmann@webkit.org's avatar
      2008-12-11 Simon Hausmann <simon.hausmann@nokia.com> · b675898d
      hausmann@webkit.org authored
              Fix the Qt build with an empty filenameExtension() implementation.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39209 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b675898d
    • zecke@webkit.org's avatar
      Fix crash in the cairo implementation of the SVGPaintServer · 552528d2
      zecke@webkit.org authored
      For SVGFonts the RenderObject can be zero. The existing SVGFont
      test cases is exposing this bug. Qt and other ports have fixed
      this issue by adding null checks as well.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39208 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      552528d2
    • zecke@webkit.org's avatar
      2008-12-11 Holger Freyther <zecke@selfish.org> · efadb5b5
      zecke@webkit.org authored
              Reviewed by Simon Hausmann.
      
              https://bugs.webkit.org/show_bug.cgi?id=20953
      
              Make the Qt port follow the Win, Mac, Gtk+ port in regard to Font
              handling. FontQt.cpp from now on is only implementing the complex path. Create
              FontFallbackListQt.cpp and FontPlatformDataQt.cpp to work within
              the framework set by the Font code.
      
              Sharing the Font.cpp implementation allows the Qt port to support
              the CSS font faces and SVG fonts.
      
              Split out the Qt4.3 Font handling into FonQt43.cpp to allow to more
              easily deprecate it.
      
              This commit is removing a lot of #ifdefs from Font.h as the Qt Font
              implementation is now in line with the rest of WebCore.
      
              * WebCore.pro:
              * platform/graphics/Font.h: Remove #ifdefs
              (WebCore::Font::letterSpacing):
              (WebCore::Font::setLetterSpacing):
              (WebCore::Font::isPlatformFont):
              * platform/graphics/FontFallbackList.h:
              * platform/graphics/SimpleFontData.cpp:
              (WebCore::SimpleFontData::SimpleFontData):
              (WebCore::SimpleFontData::platformGlyphInit): There is no GlyphCache
              on Qt, move the initialisation over.
              (WebCore::SimpleFontData::~SimpleFontData):
              * platform/graphics/SimpleFontData.h:
              (WebCore::SimpleFontData::getQtFont):
              * platform/graphics/qt/FontCacheQt.cpp:
              (WebCore::FontCache::getCachedFontPlatformData): Remove unused parameter
              (WebCore::FontCache::releaseFontData): Add to build
              * platform/graphics/qt/FontCustomPlatformData.cpp:
              (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
              (WebCore::FontCustomPlatformData::fontPlatformData):
              (WebCore::createFontCustomPlatformData):
              * platform/graphics/qt/FontCustomPlatformData.h:
              * platform/graphics/qt/FontFallbackListQt.cpp: Added.
              (WebCore::FontFallbackList::FontFallbackList):
              (WebCore::FontFallbackList::invalidate):
              (WebCore::FontFallbackList::releaseFontData):
              (WebCore::FontFallbackList::determinePitch):
              (WebCore::FontFallbackList::fontDataAt):
              (WebCore::FontFallbackList::fontDataForCharacters):
              (WebCore::FontFallbackList::setPlatformFont):
              * platform/graphics/qt/FontPlatformData.h:
              (WebCore::FontPlatformData::font):
              (WebCore::FontPlatformData::size):
              * platform/graphics/qt/FontPlatformDataQt.cpp: Added.
              (WebCore::FontPlatformData::FontPlatformData):
              * platform/graphics/qt/FontQt.cpp:
              (WebCore::Font::drawComplexText):
              (WebCore::Font::floatWidthForComplexText):
              (WebCore::Font::offsetForPositionForComplexText):
              (WebCore::Font::selectionRectForComplexText):
              (WebCore::Font::font):
              * platform/graphics/qt/FontQt43.cpp: Added. Moved Qt4.3 code from FontQt.cpp
              (WebCore::Font::drawComplexText):
              (WebCore::Font::floatWidthForComplexText):
              (WebCore::Font::offsetForPositionForComplexText):
              (WebCore::Font::selectionRectForComplexText):
              * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
              (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData):
              (WebCore::GlyphPageTreeNode::pruneTreeFontData):
              * platform/graphics/qt/SimpleFontDataQt.cpp:
              (WebCore::SimpleFontData::determinePitch):
              (WebCore::SimpleFontData::containsCharacters):
              (WebCore::SimpleFontData::platformInit):
              (WebCore::SimpleFontData::platformGlyphInit):
              (WebCore::SimpleFontData::platformDestroy):
              * platform/qt/RenderThemeQt.cpp:
              (WebCore::RenderThemeQt::adjustButtonStyle): Avoid crashes.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39207 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      efadb5b5
    • zecke@webkit.org's avatar
      WebCorv · 9f5417c7
      zecke@webkit.org authored
      2008-12-11  Holger Freyther  <zecke@selfish.org>
      
              Reviewed by Simon Hausmann.
      
              https://bugs.webkit.org/show_bug.cgi?id=20953
      
              For Qt it is not pratical to have a FontCache and GlyphPageTreeNode
              implementation. This is one of the reasons why the Qt port is currently not
              using WebCore/platform/graphics/Font.cpp. By allowing to not use
              the simple/fast-path the Qt port will be able to use it.
      
              Introduce USE(FONT_FAST_PATH) and define it for every port but the
              Qt one.
      
              * platform/graphics/Font.cpp:
              (WebCore::Font::drawText):
              (WebCore::Font::floatWidth):
              (WebCore::Font::selectionRectForText):
              (WebCore::Font::offsetForPosition):
              * platform/graphics/Font.h:
      
      JavaScriptCore
      2008-12-11  Holger Freyther  <zecke@selfish.org>
      
              Reviewed by Simon Hausmann.
      
              https://bugs.webkit.org/show_bug.cgi?id=20953
      
              For Qt it is not pratical to have a FontCache and GlyphPageTreeNode
              implementation. This is one of the reasons why the Qt port is currently not
              using WebCore/platform/graphics/Font.cpp. By allowing to not use
              the simple/fast-path the Qt port will be able to use it.
      
              Introduce USE(FONT_FAST_PATH) and define it for every port but the
              Qt one.
      
              * wtf/Platform.h: Enable USE(FONT_FAST_PATH)
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39206 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9f5417c7
    • zecke@webkit.org's avatar
      2008-12-11 Holger Hans Peter Freyther <zecke@selfish.org> · e6ede5b2
      zecke@webkit.org authored
              Reviewed by Darin Adler.
      
              https://bugs.webkit.org/show_bug.cgi?id=20953
      
              Split out the font fast path from Fast.cpp into FontFastPath.cpp. This
              will allow the Qt port to share most of WebCore::Font
              implementation but the fast path. Qt does not provide the API to get
              individual Glyphs making the fast path hard to support.
      
      
              * GNUmakefile.am:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              * platform/graphics/Font.cpp:
              * platform/graphics/FontFastPath.cpp: Added.
              (WebCore::Font::glyphDataForCharacter):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e6ede5b2
    • zecke@webkit.org's avatar
      2008-12-04 Gabor Loki <loki@inf.u-szeged.hu> · 34cb0d07
      zecke@webkit.org authored
              Reviewed by Darin Adler and landed by Holger Freyther.
      
              <https://bugs.webkit.org/show_bug.cgi?id=22648>
              Fix threading on Qt-port and Gtk-port for Sampling tool.
      
              * wtf/ThreadingGtk.cpp:
              (WTF::waitForThreadCompletion):
              * wtf/ThreadingQt.cpp:
              (WTF::waitForThreadCompletion):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39204 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      34cb0d07
    • zecke@webkit.org's avatar
      2008-12-11 Robert Carr <racarr@svn.gnome.org> · e27e3243
      zecke@webkit.org authored
              Reviewed by Holger Freyther.
      
              https://bugs.webkit.org/show_bug.cgi?id=22560
      
              Code in PlatformScreenGtk for screenDepth and screenRect can not
              assume that the platformWindow for the widget has a valid "window"
              member. For example in the case of, a new browser view opening as a
              child of a GtkNotebook, but never being switched to, or manually
              realized. Solve by using the toplevel window of the widget, rather
              than the widget itself.
      
              * platform/gtk/PlatformScreenGtk.cpp:
              (WebCore::screenDepth):
              (WebCore::screenRect):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39203 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e27e3243
    • vestbo@webkit.org's avatar
      2008-12-08 Dean McNamee <deanm@chromium.org> · 674df225
      vestbo@webkit.org authored
              Reviewed by Darin Adler.
      
              Always append a trailing slash when using PHP's sys_get_temp_dir().
      
              This allows these tests to run on Linux, where this API returns the
              directory without a trailing slash.
      
              * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache-invalidation.php:
              * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache-timeout.php:
              * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache.php:
              * http/tests/xmlhttprequest/resources/portabilityLayer.php:
              * http/tests/xmlhttprequest/resources/reset-temp-file.php:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39202 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      674df225
    • vestbo@webkit.org's avatar
      2008-12-08 Tor Arne Vestbø <tavestbo@trolltech.com> · 70da8f0a
      vestbo@webkit.org authored
              Reviewed by Darin Adler and Holger Freyther.
      
              Make Widget::frameRectsChanged() and overrides non-const
      
              This will hopefully allow us to get rid of some of the mutables in
              the classes that react to the callback by changing their own state.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39201 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      70da8f0a
    • zecke@webkit.org's avatar
      Reimplement RenderTheme::caretBlinkInterval for Qt. · a01855a8
      zecke@webkit.org authored
      The QApplication::cursorFlashTime is in milliseconds and describes
      the whole cycle while WebCore expects half a cycle.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39200 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a01855a8
    • vestbo@webkit.org's avatar
      2008-12-09 Trenton Schulz <trenton.schulz@nokia.com> · 7551f1e3
      vestbo@webkit.org authored
              Reviewed by Tor Arne Vestbø.
      
              [Qt/Mac] Don't call HIGetScaleFactor() if we're not on Tiger or better
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39199 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7551f1e3
  3. 10 Dec, 2008 9 commits