Timeline



Dec 27, 2012:

11:44 PM Changeset in webkit [138523] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

One more unreviwed holiday MIPS and SH4 buildfixes after r138516.

  • jit/ThunkGenerators.cpp:
11:37 PM Changeset in webkit [138522] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

Unreviwed holiday ARM and SH4 buildfixes after r138516.

  • jit/ThunkGenerators.cpp:

(JSC::nativeForGenerator):

7:53 PM Changeset in webkit [138521] by fsamuel@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Add context to the console message generated by Document::printNavigationErrorMessage.
https://bugs.webkit.org/show_bug.cgi?id=105774

Patch by Mike West <mkwst@chromium.org> on 2012-12-27
Reviewed by Darin Adler.

  • fast/frames/sandboxed-iframe-close-top-noclose-expected.txt:
  • fast/frames/sandboxed-iframe-history-denied-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-parent-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-targetlink-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-top-by-name-denied-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-top-denied-expected.txt:
  • fast/frames/seamless/seamless-window-location-sandbox-expected.txt:
  • http/tests/security/no-popup-from-sandbox-top-expected.txt:
  • http/tests/security/frameNavigation/not-opener-expected.txt:
  • http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt:
  • http/tests/security/frameNavigation/xss-DENIED-targeted-link-navigation-expected.txt:
  • platform/chromium/http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt:
  • platform/chromium/http/tests/security/no-popup-from-sandbox-top-expected.txt:

Update test expectations with new error message.

7:35 PM Changeset in webkit [138520] by weinig@apple.com
  • 25 edits in trunk/Source/WebKit2

Convert a few other WebProcess managers to be WebProcessSupplements
https://bugs.webkit.org/show_bug.cgi?id=105812

Reviewed by Dan Bernstein.

  • WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:

(WebKit::WebApplicationCacheManager::supplementName):

  • WebProcess/ApplicationCache/WebApplicationCacheManager.h:

(WebApplicationCacheManager):

  • WebProcess/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::supplementName):

  • WebProcess/Authentication/AuthenticationManager.h:

(AuthenticationManager):

  • WebProcess/Cookies/WebCookieManager.cpp:

(WebKit::WebCookieManager::supplementName):

  • WebProcess/Cookies/WebCookieManager.h:

(WebCookieManager):

  • WebProcess/Geolocation/WebGeolocationManager.cpp:

(WebKit::WebGeolocationManager::supplementName):

  • WebProcess/Geolocation/WebGeolocationManager.h:

(WebGeolocationManager):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setAlwaysAcceptCookies):
(WebKit::InjectedBundle::clearApplicationCache):
(WebKit::InjectedBundle::setAppCacheMaximumSize):
(WebKit::InjectedBundle::webNotificationID):

  • WebProcess/MediaCache/WebMediaCacheManager.cpp:

(WebKit::WebMediaCacheManager::supplementName):

  • WebProcess/MediaCache/WebMediaCacheManager.h:

(WebMediaCacheManager):

  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:

(WebKit::NotificationPermissionRequestManager::permissionLevel):
(WebKit::NotificationPermissionRequestManager::setPermissionLevelForTesting):
(WebKit::NotificationPermissionRequestManager::removeAllPermissionsForTesting):
(WebKit::NotificationPermissionRequestManager::didReceiveNotificationPermissionDecision):

  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::supplementName):
(WebKit::WebNotificationManager::initialize):

  • WebProcess/Notifications/WebNotificationManager.h:

(WebNotificationManager):

  • WebProcess/ResourceCache/WebResourceCacheManager.cpp:

(WebKit::WebResourceCacheManager::supplementName):

  • WebProcess/ResourceCache/WebResourceCacheManager.h:

(WebResourceCacheManager):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):

  • WebProcess/WebCoreSupport/WebGeolocationClient.cpp:

(WebKit::WebGeolocationClient::geolocationDestroyed):
(WebKit::WebGeolocationClient::startUpdating):
(WebKit::WebGeolocationClient::stopUpdating):

  • WebProcess/WebCoreSupport/WebNotificationClient.cpp:

(WebKit::WebNotificationClient::show):
(WebKit::WebNotificationClient::cancel):
(WebKit::WebNotificationClient::clearNotifications):
(WebKit::WebNotificationClient::notificationObjectDestroyed):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::downloadsAuthenticationManager):

  • WebProcess/WebProcess.h:

(WebKit::WebProcess::textCheckerState):
(WebKit::WebProcess::networkAccessManager):
(WebKit::WebProcess::soupRequestManager):

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess):

  • WebProcess/win/WebProcessWin.cpp:

(WebKit::WebProcess::platformInitializeWebProcess):

7:17 PM Changeset in webkit [138519] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

Fix styling/formatting errors, pointed out by Darin Adler while reviewing
https://bugs.webkit.org/show_bug.cgi?id=105752

No functional changes, thus no new tests.

  • dom/VisitedLinkState.cpp:

(WebCore::VisitedLinkState::VisitedLinkState): Fixed up constructor syntax.
(WebCore::linkHashForElement): Expanded abbreviation.

6:45 PM Changeset in webkit [138518] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] Regression(138462) Sometimes garbage in snapshots
https://bugs.webkit.org/show_bug.cgi?id=105803

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2012-12-27
Reviewed by Kenneth Rohde Christiansen.

Instead of creating temporary buffer and then creating cairo surface
from it, create cairo surface 1st and use surface image internal buffer
to read pixels from GL buffer.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::takeSnapshot):

  • UIProcess/API/efl/SnapshotImageGL.cpp:

(getImageSurfaceFromFrameBuffer):

  • UIProcess/API/efl/SnapshotImageGL.h:
4:39 PM Changeset in webkit [138517] by mkwst@chromium.org
  • 16 edits in trunk

Add context to the console message generated by Document::printNavigationErrorMessage.
https://bugs.webkit.org/show_bug.cgi?id=105774

Reviewed by Darin Adler.

Source/WebCore:

When blocking frame navigations, we should give developers more
contextual detail about why the navigation has been blocked. This patch
adds context specifically for sandboxed frames', and gives a slightly
more detailed generic response for all other blockages.

No new tests; the changes to the error message are covered via
rebaselines to existing navigation tests.

  • dom/Document.cpp:

(WebCore::printNavigationErrorMessage):
(WebCore::Document::canNavigate):

Pass in a 'reason' parameter when calling printNavigationErrorMessage
to report a blocked navigation.

LayoutTests:

  • fast/frames/sandboxed-iframe-close-top-noclose-expected.txt:
  • fast/frames/sandboxed-iframe-history-denied-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-parent-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-targetlink-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-top-by-name-denied-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-top-denied-expected.txt:
  • fast/frames/seamless/seamless-window-location-sandbox-expected.txt:
  • http/tests/security/no-popup-from-sandbox-top-expected.txt:
  • http/tests/security/frameNavigation/not-opener-expected.txt:
  • http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt:
  • http/tests/security/frameNavigation/xss-DENIED-targeted-link-navigation-expected.txt:
  • platform/chromium/http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt:
  • platform/chromium/http/tests/security/no-popup-from-sandbox-top-expected.txt:

Update test expectations with new error message.

3:12 PM Changeset in webkit [138516] by fpizlo@apple.com
  • 16 edits in trunk/Source/JavaScriptCore

All JIT stubs should go through the getCTIStub API
https://bugs.webkit.org/show_bug.cgi?id=105750

Reviewed by Sam Weinig.

Previously JITThunks had two sets of thunks: one static set stored in a struct,
which was filled by JIT::privateCompileCTITrampolines, and another set stored in
a HashMap. Moreover, the code to generate the code for the CTI trampoline struct
had loads of copy-paste between JSVALUE32_64 and JSVALUE64, and was total
unmodular with respect to calls versus constructors, among other things.

This changeset removes this struct and rationalizes the code that generates those
thunks. All of thunks are now generated through the getCTIStub HashMap API. All
thunks for the baseline JIT now use the JSInterfaceJIT and have their codegen
located in ThunkGenerators.cpp. All thunks now share as much code as possible -
it turns out that they are almost 100% identical between 32_64 and 64, so that
works out great. A bunch of call vs. construct duplication was eliminated. And,
most of the call link versus virtual call duplication was also eliminated.

This does not change behavior but it does make it easier to add more thunks in
the future.

  • bytecode/CallLinkInfo.cpp:

(JSC::CallLinkInfo::unlink):

  • jit/JIT.cpp:

(JSC::JIT::linkFor):

  • jit/JIT.h:

(JIT):

  • jit/JITCall.cpp:

(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCallSlowCase):

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCallSlowCase):

  • jit/JITInlines.h:

(JSC):

  • jit/JITOpcodes.cpp:

(JSC):
(JSC::JIT::privateCompileCTINativeCall):

  • jit/JITOpcodes32_64.cpp:

(JSC):

  • jit/JITStubs.cpp:

(JSC::tryCacheGetByID):

  • jit/JITThunks.cpp:

(JSC::JITThunks::JITThunks):
(JSC::JITThunks::ctiNativeCall):
(JSC::JITThunks::ctiNativeConstruct):
(JSC):
(JSC::JITThunks::hostFunctionStub):

  • jit/JITThunks.h:

(JSC):
(JITThunks):

  • jit/JSInterfaceJIT.h:

(JSInterfaceJIT):
(JSC::JSInterfaceJIT::emitJumpIfNotJSCell):
(JSC):
(JSC::JSInterfaceJIT::emitFastArithIntToImmNoCheck):
(JSC::JSInterfaceJIT::emitJumpIfNotType):
(JSC::JSInterfaceJIT::emitGetFromCallFrameHeaderPtr):
(JSC::JSInterfaceJIT::emitPutToCallFrameHeader):
(JSC::JSInterfaceJIT::emitPutImmediateToCallFrameHeader):
(JSC::JSInterfaceJIT::emitPutCellToCallFrameHeader):
(JSC::JSInterfaceJIT::preserveReturnAddressAfterCall):
(JSC::JSInterfaceJIT::restoreReturnAddressBeforeReturn):
(JSC::JSInterfaceJIT::restoreArgumentReference):

  • jit/ThunkGenerators.cpp:

(JSC::generateSlowCaseFor):
(JSC):
(JSC::linkForGenerator):
(JSC::linkCallGenerator):
(JSC::linkConstructGenerator):
(JSC::virtualForGenerator):
(JSC::virtualCallGenerator):
(JSC::virtualConstructGenerator):
(JSC::stringLengthTrampolineGenerator):
(JSC::nativeForGenerator):
(JSC::nativeCallGenerator):
(JSC::nativeConstructGenerator):
(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):
(JSC::fromCharCodeThunkGenerator):
(JSC::sqrtThunkGenerator):
(JSC::floorThunkGenerator):
(JSC::ceilThunkGenerator):
(JSC::roundThunkGenerator):
(JSC::expThunkGenerator):
(JSC::logThunkGenerator):
(JSC::absThunkGenerator):
(JSC::powThunkGenerator):

  • jit/ThunkGenerators.h:

(JSC):

  • runtime/Executable.h:

(NativeExecutable):
(JSC::NativeExecutable::nativeFunctionFor):
(JSC::NativeExecutable::offsetOfNativeFunctionFor):

3:11 PM WebKit Team edited by otte@gnome.org
update info about myself (diff)
2:57 PM Changeset in webkit [138515] by Dimitri Glazkov
  • 15 edits
    2 adds in trunk/Source/WebCore

Move visited link-checking (and caching) code out of SelectorChecker.
https://bugs.webkit.org/show_bug.cgi?id=105752

SelectorChecker knew too much about visited links and how links are stored in DOM. This change
moves the code to more relevant locations and moves the visited links cache all the way up to Document,
introducing VisitedLinkState class to manage the state of visited links.
Relanding without a null-ptr ref.

Reviewed by Antti Koivisto.

No change in behavior, covered by existing tests.

  • CMakeLists.txt: Added VisitedLinkState to build system.
  • GNUmakefile.list.am: Ditto.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • css/SelectorChecker.cpp: Moved visited-link state code out to VisitedLinkState class.
  • css/SelectorChecker.h: Ditto.
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::initElement): Changed callsite to use VisitedLinkState.

  • css/StyleResolver.h: Removed plumb-throughs that are now unnecessary.
  • dom/DOMAllInOne.cpp: Added VisitedLinkState to build system.
  • dom/Document.cpp: Added VisitedLinkState initalizer.
  • dom/Document.h: Added VisitedLinkState member.
  • dom/VisitedLinkState.cpp: Added.
  • dom/VisitedLinkState.h: Added.
  • history/CachedPage.cpp:

(WebCore::CachedPage::restore): Changed callsite to use VisitedLinkState.

  • page/Page.cpp:

(WebCore::Page::allVisitedStateChanged): Ditto.
(WebCore::Page::visitedStateChanged): Ditto.

2:06 PM Changeset in webkit [138514] by weinig@apple.com
  • 9 edits in trunk/Source/WebKit2

Actually make use of the WebProcessSupplements by adding a supplement map to WebProcess
https://bugs.webkit.org/show_bug.cgi?id=105804

Reviewed by Dan Bernstein.

This continues the work of adding extensibility to WebProcess by adding a supplement
map, and using it as proof of concept for WebDatabaseManager and WebKeyValueStorageManager.

  • A supplement is added to WebProcess by calling:

process->addSupplement<SupplementFoo>();

  • A supplement can be used accessed by calling:

process->supplement<SupplementFoo>();

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::clearAllDatabases):
(WebKit::InjectedBundle::setDatabaseQuota):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):
Switch to using the new supplement accessor.

  • WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp:

(WebKit::WebKeyValueStorageManager::supplementName):

  • WebProcess/KeyValueStorage/WebKeyValueStorageManager.h:
  • WebProcess/WebCoreSupport/WebDatabaseManager.cpp:

(WebKit::WebDatabaseManager::supplementName):

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:

Add static supplementName functions. We might want to merge this with
the message class name, but for now we have both.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
Add supplements the new way. This should eventually move to the caller
of WebProcess::initialize, so that we can reduce #ifdefs and ports have
a chance to customize.

(WebKit::WebProcess::initializeWebProcess):
Iterate the supplements to give each a chance to initialize.

  • WebProcess/WebProcess.h:

(WebKit::WebProcess::supplement):
(WebKit::WebProcess::addSupplement):
Add functions to add and get WebProcessSupplements.

1:15 PM Changeset in webkit [138513] by commit-queue@webkit.org
  • 13 edits
    3 copies
    4 adds in trunk

[EFL][WebGL] Implement EGL support with GLX.
https://bugs.webkit.org/show_bug.cgi?id=105602

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-27
Reviewed by Kenneth Rohde Christiansen.

.:

Adds support for EGL with GLX backend. EGL support can be enabled during compile time
by passing -DENABLE_EGL=ON as cmake config parameter.

  • Source/cmake/OptionsEfl.cmake:

Source/WebCore:

This is in preparation for adding GLES2 support.
This patch adds support for EGL with GLX backend. EGL support can be enabled during compile time
by passing -DENABLE_EGL=ON as cmake config parameter. This is disabled by default.

  • PlatformEfl.cmake:
  • platform/graphics/opengl/GLDefs.h:

(WebCore):

  • platform/graphics/opengl/GLPlatformContext.cpp:

(WebCore):
(WebCore::GLPlatformContext::createContext): Added GLX checks.
(WebCore::GLPlatformContext::createOffScreenContext): Added support for creating EGLOffscreen Context.
(WebCore::GLPlatformContext::createCurrentContextWrapper): Added support for creating EGLCurrentContextWrapper.

  • platform/graphics/opengl/GLPlatformContext.h:
  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore::GLPlatformSurface::createTransportSurface): Added support for creating EGLSurface.

  • platform/graphics/surfaces/egl/EGLContext.cpp: Added.

(WebCore):
(WebCore::isRobustnessExtSupported):
(WebCore::EGLCurrentContextWrapper::EGLCurrentContextWrapper):
(WebCore::EGLCurrentContextWrapper::handle):
(WebCore::EGLOffScreenContext::EGLOffScreenContext):
(WebCore::EGLOffScreenContext::initialize):
(WebCore::EGLOffScreenContext::~EGLOffScreenContext):
(WebCore::EGLOffScreenContext::isCurrentContext):
(WebCore::EGLOffScreenContext::platformMakeCurrent):
(WebCore::EGLOffScreenContext::platformReleaseCurrent):
(WebCore::EGLOffScreenContext::freeResources):
(WebCore::EGLOffScreenContext::destroy):

  • platform/graphics/surfaces/egl/EGLContext.h:

(WebCore):
(EGLCurrentContextWrapper):
(WebCore::EGLCurrentContextWrapper::~EGLCurrentContextWrapper):
(EGLOffScreenContext):

EGL implementation for Context Management.

  • platform/graphics/surfaces/egl/EGLSurface.cpp: Added.

(WebCore):
(WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface):
(WebCore::EGLWindowTransportSurface::~EGLWindowTransportSurface):
(WebCore::EGLWindowTransportSurface::configuration):
(WebCore::EGLWindowTransportSurface::swapBuffers):
(WebCore::EGLWindowTransportSurface::destroy):
(WebCore::EGLWindowTransportSurface::freeEGLResources):

  • platform/graphics/surfaces/egl/EGLSurface.h:

(WebCore):
(EGLWindowTransportSurface):

EGL implementation for Offscreen Surface. The surface is backed by native window.

  • platform/graphics/surfaces/egl/EGLConfigHelper.cpp: Added.

(WebCore):
(WebCore::SharedEGLDisplay::deref):
(WebCore::SharedEGLDisplay::sharedEGLDisplay):
(WebCore::SharedEGLDisplay::SharedEGLDisplay):
(WebCore::SharedEGLDisplay::cleanup):
(WebCore::SharedEGLDisplay::~SharedEGLDisplay):
(WebCore::EGLConfigHelper::EGLConfigHelper):
(WebCore::EGLConfigHelper::~EGLConfigHelper):
(WebCore::EGLConfigHelper::display):
(WebCore::EGLConfigHelper::pBufferContextConfig):
(WebCore::EGLConfigHelper::surfaceContextConfig):
(WebCore::EGLConfigHelper::nativeVisualId):
(WebCore::EGLConfigHelper::reset):
(WebCore::EGLConfigHelper::createConfig):

Helper class to initialize EGL resources and choose right EGL configuration.

1:08 PM Changeset in webkit [138512] by commit-queue@webkit.org
  • 15 edits
    2 deletes in trunk/Source/WebCore

Unreviewed, rolling out r138509.
http://trac.webkit.org/changeset/138509
https://bugs.webkit.org/show_bug.cgi?id=105806

Caused several tests to crash (Requested by fsamuel on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-27

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • css/SelectorChecker.cpp:

(WebCore::linkAttribute):
(WebCore):
(WebCore::SelectorChecker::determineLinkStateSlowCase):
(WebCore::SelectorChecker::allVisitedStateChanged):
(WebCore::SelectorChecker::visitedStateChanged):

  • css/SelectorChecker.h:

(SelectorChecker):
(WebCore::SelectorChecker::determineLinkState):
(WebCore):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::initElement):

  • css/StyleResolver.h:

(WebCore::StyleResolver::allVisitedStateChanged):
(WebCore::StyleResolver::visitedStateChanged):
(StyleResolver):

  • dom/DOMAllInOne.cpp:
  • dom/Document.cpp:

(WebCore::Document::Document):

  • dom/Document.h:

(WebCore):
(Document):

  • dom/VisitedLinkState.cpp: Removed.
  • dom/VisitedLinkState.h: Removed.
  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):

  • page/Page.cpp:

(WebCore::Page::allVisitedStateChanged):
(WebCore::Page::visitedStateChanged):

11:13 AM Changeset in webkit [138511] by weinig@apple.com
  • 12 edits
    1 add in trunk/Source/WebKit2

Add an initial stab at a generic supplemental interface for WebProcess
https://bugs.webkit.org/show_bug.cgi?id=105779

Reviewed by Darin Adler.

This starts the process of adding a mechanism to WebProcess to extend its
functionality without actually changing it (similar to the Supplement
mechanism in WebCore). This will make it possible for ports to add functionality
that might not be needed or wanted by other ports.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp:

(WebKit::WebKeyValueStorageManager::initialize):
(WebKit):

  • WebProcess/KeyValueStorage/WebKeyValueStorageManager.h:

(WebKeyValueStorageManager):
(WebKit::WebKeyValueStorageManager::localStorageDirectory):

  • WebProcess/WebCoreSupport/WebDatabaseManager.cpp:

(WebKit::WebDatabaseManager::WebDatabaseManager):
(WebKit::WebDatabaseManager::initialize):

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:

(WebDatabaseManager):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::keyValueStorageManager):
(WebKit):

  • WebProcess/WebProcess.h:

(WebProcess):

  • WebProcess/WebProcessSupplement.h: Added.

(WebKit):
(WebProcessSupplement):
(WebKit::WebProcessSupplement::~WebProcessSupplement):
(WebKit::WebProcessSupplement::initialize):

10:57 AM Changeset in webkit [138510] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Attempt to fix the tests.

  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):

10:41 AM Changeset in webkit [138509] by Dimitri Glazkov
  • 15 edits
    2 adds in trunk/Source/WebCore

Move visited link-checking (and caching) code out of SelectorChecker.
https://bugs.webkit.org/show_bug.cgi?id=105752

SelectorChecker knew too much about visited links and how links are stored in DOM. This change
moves the code to more relevant locations and moves the visited links cache all the way up to Document,
introducing VisitedLinkState class to manage the state of visited links.

Reviewed by Antti Koivisto.

No change in behavior, covered by existing tests.

  • CMakeLists.txt: Added VisitedLinkState to build system.
  • GNUmakefile.list.am: Ditto.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • css/SelectorChecker.cpp: Moved visited-link state code out to VisitedLinkState class.
  • css/SelectorChecker.h: Ditto.
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::initElement): Changed callsite to use VisitedLinkState.

  • css/StyleResolver.h: Removed plumb-throughs that are now unnecessary.
  • dom/DOMAllInOne.cpp: Added VisitedLinkState to build system.
  • dom/Document.cpp: Added VisitedLinkState initalizer.
  • dom/Document.h: Added VisitedLinkState member.
  • dom/VisitedLinkState.cpp: Added.
  • dom/VisitedLinkState.h: Added.
  • history/CachedPage.cpp:

(WebCore::CachedPage::restore): Changed callsite to use VisitedLinkState.

  • page/Page.cpp:

(WebCore::Page::allVisitedStateChanged): Ditto.
(WebCore::Page::visitedStateChanged): Ditto.

9:57 AM Changeset in webkit [138508] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[TexMap] Minor refactoring of TextureMapperLayer.
https://bugs.webkit.org/show_bug.cgi?id=105782

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-27
Reviewed by Darin Adler.

This patch has two refactorings.

  1. Replace TextureMapperPaintOptions from header to implementation file.
  2. Add non copyable property to TextureMapperLayer.

No new tests. Refactoring only.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(TextureMapperPaintOptions):
(WebCore::TextureMapperPaintOptions::TextureMapperPaintOptions):
(WebCore):

  • platform/graphics/texmap/TextureMapperLayer.h:

(WebCore):
(TextureMapperLayer):

8:35 AM Changeset in webkit [138507] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Use real worker in heap profiler instead of the fake one
(was accidentally switched to the fake worker).

  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotWorker):

8:32 AM Changeset in webkit [138506] by vsevik@chromium.org
  • 7 edits in trunk

Web Inspector: [Regression] Can not set breakpoints in scripts loaded with source map.
https://bugs.webkit.org/show_bug.cgi?id=105801

Reviewed by Alexander Pavlov.

Source/WebCore:

ResourceScriptMapping now pushes itself to script's source mappings in addScript method.
Binding script to uiSourceCode loaded later is only triggering updateLocations() now.

  • inspector/front-end/ResourceScriptMapping.js:

(WebInspector.ResourceScriptMapping.prototype.addScript):
(WebInspector.ResourceScriptMapping.prototype._bindUISourceCodeToScripts):

  • inspector/front-end/Script.js:

(WebInspector.Script.prototype.disableSourceMapping):
(WebInspector.Script.prototype.enableSourceMapping):
(WebInspector.Script.prototype.pushSourceMapping):
(WebInspector.Script.prototype.popSourceMapping):
(WebInspector.Script.prototype.updateLocations):

LayoutTests:

  • http/tests/inspector/compiler-script-mapping-expected.txt:
  • http/tests/inspector/compiler-script-mapping.html:
  • http/tests/inspector/debugger-test.js:

(initialize_DebuggerTest):

8:29 AM Changeset in webkit [138505] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] invalid use of incomplete type WebCore::ResourceResponse in webkitwebviewprivate.h
https://bugs.webkit.org/show_bug.cgi?id=105720

Patch by ChangSeok Oh <ChangSeok Oh> on 2012-12-27
Reviewed by Martin Robinson.

If the acceleration backend is clutter, then css_filter feature is disabled.
So ResourceResponse.h could not be reached with only existing headers
in webkitwebviewprivate.h. For this reason, I add ResourceResponse.h explicitly
to fix a build failure using incomplete type 'WebCore::ResourceResponse()'.

  • webkit/webkitwebviewprivate.h:
8:16 AM Changeset in webkit [138504] by Christophe Dumez
  • 4 edits in trunk

[EFL][WK2] Regression(135935) layout tests snapshots are flaky
https://bugs.webkit.org/show_bug.cgi?id=103468

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Make sure that we wait for pending repaints before taking a
snapshot to avoid flakiness in pixel / ref tests. We also
suspend all animations before taking the snapshot to make
sure we don't wait forever for repaint events to be processed.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::takeSnapshot):

LayoutTests:

Unskip a lot of ref tests for WebKit2 EFL now that they are no longer
flaky.

  • platform/efl-wk2/TestExpectations:
8:11 AM Changeset in webkit [138503] by fsamuel@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

Unreviewed rebaseline.

  • platform/chromium-win-xp/inspector/extensions/extensions-resources-expected.txt: Added.
8:03 AM Changeset in webkit [138502] by yurys@chromium.org
  • 4 edits in trunk

Web Inspector: remove support for legacy heap graph node format
https://bugs.webkit.org/show_bug.cgi?id=105802

Reviewed by Pavel Feldman.

Source/WebCore:

Removed support for old heap graph node format: we now always store edge count
in each node instead of the first edge index.

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype._buildEdgeIndexes):

LayoutTests:

  • inspector/profiler/heap-snapshot-comparison-dom-groups-change.html: switched to the new

heap graph node representation: store edge count for each node instead of the first edge
index.

7:57 AM Changeset in webkit [138501] by yurys@chromium.org
  • 7 edits in trunk

Web Inspector: move js heap snapshot preprocessing to JSHeapSnapshot
https://bugs.webkit.org/show_bug.cgi?id=105798

Reviewed by Pavel Feldman.

Source/WebCore:

HeapSnapshot.js refactorings:

  • moved _markInvisibleEdges implementation into JSHeapSnapshot
  • moved _calculateFlags implementation into JSHeapSnapshot
  • moved _flags array into JSHeapSnapshot
  • instead of returning node flags as a field on each node, requesting snapshot node flag constants from the heap snapshot worker and then checking for the flags in HeapSnapshotGridNodes now return two optional boolean fields on each node: canBeQueried and detachedDOMTreeNode
  • removed unused propertyAccessor property from serialized heap node
  • moved node and edge serialization from providers to the node and edge classes, js specific fields are serialized only for JSHeapSnapshotNode
  • renamed first() to rewind() on providers and iterators
  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshotEdge.prototype.serialize):
(WebInspector.HeapSnapshotEdgeIterator.prototype.rewind):
(WebInspector.HeapSnapshotRetainerEdge.prototype.serialize):
(WebInspector.HeapSnapshotRetainerEdgeIterator.prototype.rewind):
(WebInspector.HeapSnapshotNode.prototype.isUserObject):
(WebInspector.HeapSnapshotNode.prototype.serialize):
(WebInspector.HeapSnapshotNodeIterator.prototype.rewind):
(WebInspector.HeapSnapshot.prototype._init):
(WebInspector.HeapSnapshot.prototype._buildAggregates):
(WebInspector.HeapSnapshot.prototype._calculateClassesRetainedSize):
(WebInspector.HeapSnapshot.prototype._buildPostOrderIndex):
(WebInspector.HeapSnapshot.prototype._buildDominatorTree):
(WebInspector.HeapSnapshot.prototype._markInvisibleEdges):
(WebInspector.HeapSnapshot.prototype._calculateFlags):
(WebInspector.HeapSnapshot.prototype.userObjectsMapAndFlag):
(WebInspector.HeapSnapshot.prototype.):
(WebInspector.HeapSnapshot.prototype.createNodesProviderForClass):
(WebInspector.HeapSnapshot.prototype.updateStaticData):
(WebInspector.HeapSnapshotFilteredOrderedIterator.prototype._createIterationOrder):
(WebInspector.HeapSnapshotFilteredOrderedIterator.prototype.rewind):
(WebInspector.HeapSnapshotFilteredOrderedIterator.prototype.isEmpty):
(WebInspector.HeapSnapshotFilteredOrderedIterator.prototype.serializeItemsRange):
(WebInspector.HeapSnapshotFilteredOrderedIterator.prototype.sortAndRewind):

  • inspector/front-end/HeapSnapshotGridNodes.js:

(WebInspector.HeapSnapshotGenericObjectNode):
(WebInspector.HeapSnapshotObjectNode):

  • inspector/front-end/HeapSnapshotProxy.js:
  • inspector/front-end/JSHeapSnapshot.js:

(WebInspector.JSHeapSnapshot):
(WebInspector.JSHeapSnapshot.prototype._markInvisibleEdges):
(WebInspector.JSHeapSnapshot.prototype._calculateFlags):
(WebInspector.JSHeapSnapshot.prototype.userObjectsMapAndFlag):
(WebInspector.JSHeapSnapshot.prototype._flagsOfNode):
(WebInspector.JSHeapSnapshot.prototype._markDetachedDOMTreeNodes):
(WebInspector.JSHeapSnapshot.prototype._markQueriableHeapObjects):
(WebInspector.JSHeapSnapshot.prototype._markPageOwnedNodes):
(WebInspector.JSHeapSnapshotNode.prototype.isUserObject):
(WebInspector.JSHeapSnapshotNode.prototype.serialize):

LayoutTests:

  • inspector/profiler/heap-snapshot.html: updated test to match HeapSnapshot.js changes
6:13 AM Changeset in webkit [138500] by apavlov@chromium.org
  • 10 edits
    1 copy
    2 adds in trunk

Web Inspector: Refactor SourceMapParser to enable range-based sourcemap
https://bugs.webkit.org/show_bug.cgi?id=105764

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: inspector/styles/range-based-mapping.html

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/CompilerScriptMapping.js:

(WebInspector.CompilerScriptMapping):
(WebInspector.CompilerScriptMapping.prototype.loadSourceMapForScript):

  • inspector/front-end/SourceMap.js: Copied from Source/WebCore/inspector/front-end/CompilerScriptMapping.js.

(WebInspector.SourceMap):

Abstract. Renamed from SourceMapParser and supports only direct (generated -> originating source) mapping via findEntry()

(WebInspector.SourceMap.prototype.sources):
(WebInspector.SourceMap.prototype.sourceContent):
(WebInspector.SourceMap.prototype._parseMappingPayload):
(WebInspector.SourceMap.prototype._parseSections):
(WebInspector.SourceMap.prototype._parseMap):
(WebInspector.SourceMap.prototype._isSeparator):
(WebInspector.SourceMap.prototype._decodeVLQ):
(WebInspector.SourceMap.prototype._canonicalizeURL):
(WebInspector.SourceMap.StringCharIterator):
(WebInspector.SourceMap.StringCharIterator.prototype.next):
(WebInspector.SourceMap.StringCharIterator.prototype.peek):
(WebInspector.SourceMap.StringCharIterator.prototype.hasNext):
(WebInspector.PositionBasedSourceMap):

Extends SourceMap and provides direct (compiled -> original source)
and reverse (original -> compiled source) position mapping via findEntryReversed().

(WebInspector.PositionBasedSourceMap.prototype.findEntry):
(WebInspector.PositionBasedSourceMap.prototype.findEntryReversed):
(WebInspector.PositionBasedSourceMap.prototype._parseMap):
(WebInspector.RangeBasedSourceMap):

Extends SourceMap and provides direct range mapping
(compiled source position -> original source range) via findSourceRange().

(WebInspector.RangeBasedSourceMap.MappingComparator):
(WebInspector.RangeBasedSourceMap.prototype.findSourceRange):
(WebInspector.RangeBasedSourceMap.prototype._rangeForStartIndex):
(WebInspector.SourceRange):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:

LayoutTests:

  • http/tests/inspector/compiler-script-mapping-expected.txt:
  • http/tests/inspector/compiler-script-mapping.html:
  • inspector/styles/range-based-mapping-expected.txt: Added.
  • inspector/styles/range-based-mapping.html: Added.
5:37 AM Changeset in webkit [138499] by aandrey@chromium.org
  • 2 edits in trunk/LayoutTests

Forgot to SKIP a test on wincairo.

  • platform/wincairo/TestExpectations:
5:31 AM Changeset in webkit [138498] by aandrey@chromium.org
  • 2 edits in trunk/LayoutTests

Forgot to SKIP a test on QT.

  • platform/qt/TestExpectations:
3:48 AM Changeset in webkit [138497] by aandrey@chromium.org
  • 12 edits
    2 adds in trunk

Web Inspector: [Canvas] report if there is any uninstrumented canvas on a page
https://bugs.webkit.org/show_bug.cgi?id=105721

Reviewed by Yury Semikhatsky.

Source/WebCore:

Adding a method to the protocol to report if there is any uninstrumented canvas on a page.

Test: inspector/profiler/canvas2d/canvas-has-uninstrumented-canvases.html

  • inspector/InjectedScriptCanvasModuleSource.js:

(.):

  • inspector/Inspector.json:
  • inspector/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
(WebCore::InspectorCanvasAgent::enable):
(WebCore::InspectorCanvasAgent::disable):
(WebCore::InspectorCanvasAgent::hasUninstrumentedCanvases):
(WebCore):
(WebCore::InspectorCanvasAgent::captureFrame):
(WebCore::InspectorCanvasAgent::startCapturing):
(WebCore::InspectorCanvasAgent::stopCapturing):
(WebCore::InspectorCanvasAgent::getTraceLog):
(WebCore::InspectorCanvasAgent::replayTraceLog):
(WebCore::InspectorCanvasAgent::ensureHasUninstrumentedCanvasesCalculated):
(WebCore::InspectorCanvasAgent::checkIsEnabled):
(WebCore::InspectorCanvasAgent::reset):

  • inspector/InspectorCanvasAgent.h:

(WebCore):
(InspectorCanvasAgent):

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):

LayoutTests:

  • inspector/profiler/canvas-profiler-test.js:

(initialize_CanvasWebGLProfilerTest.InspectorTest.enableCanvasAgent):
(initialize_CanvasWebGLProfilerTest.InspectorTest.disableCanvasAgent):
(initialize_CanvasWebGLProfilerTest):

  • inspector/profiler/canvas2d/canvas-has-uninstrumented-canvases-expected.txt: Added.
  • inspector/profiler/canvas2d/canvas-has-uninstrumented-canvases.html: Added.
3:20 AM Changeset in webkit [138496] by vsevik@chromium.org
  • 30 edits
    2 adds in trunk

Web Inspector: Simplify script mappings by introducing DefaultScriptMapping.
https://bugs.webkit.org/show_bug.cgi?id=103038

Reviewed by Pavel Feldman.

Source/WebCore:

DefaultScriptMapping creates a uiSourceCode for each script and set itself as a mapping for the script.
Script can now have a stack of (possibly disabled) mappings, allowing to try several mappings when calculating uiLocation.
LiveEditSupport object is added on WebInspector to support live editing of readonly DefaultScriptMapping's uiSourceCodes.
DefaultScriptMapping is now the only mapping that creates temporary uiSourceCodes.

  • English.lproj/localizedStrings.js:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/BreakpointManager.js:

(WebInspector.BreakpointManager):
(WebInspector.BreakpointManager.sourceFileId):
(WebInspector.BreakpointManager.Breakpoint.prototype._breakpointStorageId):

  • inspector/front-end/CompilerScriptMapping.js:

(WebInspector.CompilerScriptMapping):
(WebInspector.CompilerScriptMapping.prototype.rawLocationToUILocation):
(WebInspector.CompilerScriptMapping.prototype.uiLocationToRawLocation):
(WebInspector.CompilerScriptMapping.prototype._reset):

  • inspector/front-end/DebuggerModel.js:

(WebInspector.DebuggerModel.prototype._parsedScriptSource):

  • inspector/front-end/DebuggerScriptMapping.js:

(WebInspector.DebuggerScriptMapping):

  • inspector/front-end/DefaultScriptMapping.js: Added.
  • inspector/front-end/LiveEditSupport.js: Added.
  • inspector/front-end/ResourceScriptMapping.js:

(WebInspector.ResourceScriptMapping.prototype.rawLocationToUILocation):
(WebInspector.ResourceScriptMapping.prototype.addScript):
(WebInspector.ResourceScriptMapping.prototype._uiSourceCodeAddedToWorkspace):
(WebInspector.ResourceScriptMapping.prototype._hasMergedToVM):
(WebInspector.ResourceScriptMapping.prototype._hasDivergedFromVM):
(WebInspector.ResourceScriptMapping.prototype._workspaceUISourceCodeForScript):
(WebInspector.ResourceScriptMapping.prototype._scriptsForUISourceCode):
(WebInspector.ResourceScriptMapping.prototype._bindUISourceCodeToScripts):
(WebInspector.ResourceScriptMapping.prototype._reset):

  • inspector/front-end/Script.js:

(WebInspector.Script):
(WebInspector.Script.prototype.):
(WebInspector.Script.prototype.editSource):
(WebInspector.Script.prototype.setIsDynamicScript):
(WebInspector.Script.prototype.isDynamicScript):
(WebInspector.Script.prototype.rawLocationToUILocation):
(WebInspector.Script.prototype._enabledSourceMappings):
(WebInspector.Script.prototype._sourceMappingsDiffer):
(WebInspector.Script.prototype.disableSourceMapping):
(WebInspector.Script.prototype.enableSourceMapping):
(WebInspector.Script.prototype.pushSourceMapping):
(WebInspector.Script.prototype.popSourceMapping):
(WebInspector.Script.prototype._updateLocations):
(WebInspector.Script.prototype.createLiveLocation):

  • inspector/front-end/ScriptSnippetModel.js:

(WebInspector.ScriptSnippetModel.prototype._projectWillReset):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._addUISourceCode):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
(WebInspector.ScriptsPanel.prototype._createSourceFrame):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/Workspace.js:

(WebInspector.Workspace.prototype.addTemporaryUISourceCode):

  • inspector/front-end/inspector.html:
  • inspector/front-end/inspector.js:

LayoutTests:

  • http/tests/inspector/compiler-script-mapping.html:
  • inspector/debugger/breakpoint-manager-expected.txt:
  • inspector/debugger/breakpoint-manager.html:
  • inspector/debugger/dynamic-script-tag-expected.txt:
  • inspector/debugger/live-edit-breakpoints-expected.txt:
  • inspector/debugger/live-edit-breakpoints.html:
  • inspector/debugger/pause-in-inline-script-expected.txt:
  • inspector/debugger/pause-in-inline-script.html:
  • inspector/debugger/resource-script-mapping-expected.txt:
  • inspector/debugger/resource-script-mapping.html:
  • inspector/debugger/scripts-panel.html:
3:05 AM Changeset in webkit [138495] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark http/tests/appcache/main-resource-redirect.html as crashing
for EFL WK2 after r138222.

  • platform/efl-wk2/TestExpectations:
1:53 AM Changeset in webkit [138494] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Web Inspector: console.profileEnd() crashes if called without arguments
https://bugs.webkit.org/show_bug.cgi?id=105759

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-27
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: inspector/profiler/cpu-profiler-parameterless-profile-end-crash.html

API allows to finish profile without specifying its name.
Profiler tracks profiles stack and finishes outermost profile.
Finished profile title will be used instead of user-specified one.

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::stop): Use title provided by profiler.

LayoutTests:

Added tests to check that browser do not crash.

  • inspector/profiler/cpu-profiler-parameterless-profile-end-crash-expected.txt: Added.
  • inspector/profiler/cpu-profiler-parameterless-profile-end-crash.html: Added.
1:12 AM Changeset in webkit [138493] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
12:38 AM Changeset in webkit [138492] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Create a GTK build system watchlist and add myself to it
https://bugs.webkit.org/show_bug.cgi?id=105769

Reviewed by Dirk Pranke.

Add a GTK build system watchlist, watching the configure.ac, GNUmakefile.am files
and the input GNUmakefile.features.am.in file. The GNUmakefile.list.am files are
omitted on purpose due to relatively high change rate they are exposed to.

The new watchlist would be of use to me as the GTK build system recently went
through a series of changes that included a changed policy on adding configuration
flags to configure.ac and subsequent additions to GNUmakefile.am files. A PSA on the
mailing list about this change will be published later, but I'd also like to be
notified of any pending changes to these files just so I can check the changes are
in compliance with the new policy.

  • Scripts/webkitpy/common/config/watchlist:

Dec 26, 2012:

11:31 PM Changeset in webkit [138491] by loislo@chromium.org
  • 2 edits in trunk/Tools

Unreviewed. Replace find("Tools") with rfind("Tools") because base dir of WebKit may have Tools word.
As example ..../DevTools/src/third_party/WebKit

  • Scripts/webkitpy/common/webkit_finder.py:

(WebKitFinder.webkit_base):

10:43 PM Changeset in webkit [138490] by jpetsovits@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Set load state for popups manually, in absence of a loader.
https://bugs.webkit.org/show_bug.cgi?id=105708
RIM PR 257216

Reviewed by George Staikos.
Internally reviewed by Chris Guan.

The WebPage class relies on the load state for various things,
among others it will only emit contents size changes after
layouts if a load state other than None is set.

Given that popups write the web page content itself with no
loader that would issue such notifications, the load state
should probably just be set manually in this case.

  • WebCoreSupport/PagePopupBlackBerry.cpp:

(WebCore::PagePopupBlackBerry::init):

6:29 PM Changeset in webkit [138489] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[Texmap] Instead of having multiple shaders sources with lots of duplication, we should have one shader source with MACRO variants
https://bugs.webkit.org/show_bug.cgi?id=104815

Patch by No'am Rosenthal <Noam Rosenthal> on 2012-12-26
Reviewed by Kenneth Rohde Christiansen.

Created templates for the vertex and fragment shaders, and added some MACROs in
TextureMapperShaderManager to allow GLSL precompiler-based configuration.

The template follows a pattern where the main function in the shader calls
applyFooBarIfNeeded(), while applyFooBar() is implemented. The Macros prepended to the template define whether applyIfNeeded resolves to the real function or to a noop.

In addition, made some small changes to the filter shaders so that they can use the same code as the normal shaders.

Covered by existing pixel/ref tests when run on Qt/EFL/GTK.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::optionsForFilterType):
(WebCore):
(WebCore::getPassesRequiredForFilter):
(WebCore::prepareFilterProgram):
(WebCore::TextureMapperGL::drawFiltered):
(WebCore::BitmapTextureGL::applyFilters):

Always draw using the drawQuad function, and use the new TextureMapperShaderManager::Options mask instead of the old ShaderKey.

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore):
(WebCore::getShaderSpec):
(WebCore::TextureMapperShaderManager::getShaderProgram):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(TextureMapperShaderProgram):
(TextureMapperShaderManager):

5:14 PM Changeset in webkit [138488] by thakis@chromium.org
  • 3 edits in trunk

[chromium] Disable unprefixed css transitions until they're functional
https://bugs.webkit.org/show_bug.cgi?id=105771

Reviewed by Eric Seidel.

Bug 105647 mentions that this is not fully implemented yet, and the
partial support breaks feature detection in modernizr and friends.

  • features.gypi:
4:38 PM Changeset in webkit [138487] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[TexMap] A Minor optimization of GraphicsLayerTransform.
https://bugs.webkit.org/show_bug.cgi?id=105758

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-26
Reviewed by Noam Rosenthal.

Only multiply the transformation matrices if the paramaters are actually
changed.

This optimizes the code path called from flushCompositingStateForThisLayerOnly(),
and potentially setAnimatedTransform().

No new tests. Refactoring only.

  • platform/graphics/GraphicsLayerTransform.cpp:

(WebCore::GraphicsLayerTransform::setPosition):
(WebCore::GraphicsLayerTransform::setSize):
(WebCore::GraphicsLayerTransform::setAnchorPoint):
(WebCore::GraphicsLayerTransform::setFlattening):
(WebCore::GraphicsLayerTransform::setLocalTransform):
(WebCore::GraphicsLayerTransform::setChildrenTransform):

3:24 PM Changeset in webkit [138486] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectations for bugs 105777 and 105778.

  • platform/mac/TestExpectations:
1:45 PM Changeset in webkit [138485] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

Unreviewed Xmas buildfix after r138479.

  • WebProcess/MediaCache/WebMediaCacheManager.h:
1:33 PM Changeset in webkit [138484] by eae@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Enable most sub-pixel tests on mac.

  • platform/mac/TestExpectations:
12:59 PM Changeset in webkit [138483] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[TexMap] Remove unused members and methods in TextureMapperLayer.
https://bugs.webkit.org/show_bug.cgi?id=105755

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-26
Reviewed by Noam Rosenthal.

No new tests. Refactoring only.

  • platform/graphics/texmap/TextureMapperLayer.h:

(TextureMapperLayer):
(State):
(WebCore::TextureMapperLayer::State::State):

12:13 PM Changeset in webkit [138482] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] MemoryPressureHandler: Occasional crashes in uninstall() when responding to memory pressure signal.
<http://webkit.org/b/105772>

Reviewed by Stephanie Lewis.

We can't synchronously dereference _cache_event_source in uninstall() just because m_installed
is true -- the block that initializes _cache_event_source is asynchronous and may not have executed.
Fix this by performing the uninstallation asynchronously on the main queue as well.

  • platform/mac/MemoryPressureHandlerMac.mm:

(WebCore::MemoryPressureHandler::uninstall):

11:49 AM Changeset in webkit [138481] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r137905.
http://trac.webkit.org/changeset/137905
https://bugs.webkit.org/show_bug.cgi?id=105765

Popover does not disappear when hovering another identifier in
sources panel. (Requested by vsevik on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-26

  • inspector/front-end/Popover.js:

(WebInspector.Popover.prototype._innerShow):

  • inspector/front-end/popover.css:

(.popover):

11:48 AM Changeset in webkit [138480] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Resources] Table lose focus (selection) after deleting cookie.
https://bugs.webkit.org/show_bug.cgi?id=105716

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-26
Reviewed by Yury Semikhatsky.

This makes deletion of a set of cookies (using keyboard) painful.

  • inspector/front-end/CookieItemsView.js: Call method instead of getter.
  • inspector/front-end/CookiesTable.js: Remember and use next selected

cookie value.

10:01 AM Changeset in webkit [138479] by weinig@apple.com
  • 7 edits in trunk/Source/WebKit2

Convert WebKeyValueStorageManager and WebMediaCacheManager to MessageReceiver
https://bugs.webkit.org/show_bug.cgi?id=105751

Reviewed by Andreas Kling.

  • WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp:

(WebKit::WebKeyValueStorageManager::WebKeyValueStorageManager):
(WebKit::WebKeyValueStorageManager::dispatchDidGetKeyValueStorageOrigins):
(WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins):
(WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin):
(WebKit::WebKeyValueStorageManager::deleteAllEntries):

  • WebProcess/KeyValueStorage/WebKeyValueStorageManager.h:

(WebKeyValueStorageManager): Remove unused m_originsLoaded member variable.

  • WebProcess/MediaCache/WebMediaCacheManager.cpp:

(WebKit::WebMediaCacheManager::WebMediaCacheManager):
(WebKit::WebMediaCacheManager::getHostnamesWithMediaCache):
(WebKit::WebMediaCacheManager::clearCacheForHostname):
(WebKit::WebMediaCacheManager::clearCacheForAllHostnames):

  • WebProcess/MediaCache/WebMediaCacheManager.h:

(WebMediaCacheManager):
Convert the managers to MessageReceiver.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::didReceiveMessage):

  • WebProcess/WebProcess.h:

(WebProcess):
Add the new managers.

9:00 AM Changeset in webkit [138478] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Caret doesn't update position when scrolling text in Input element
https://bugs.webkit.org/show_bug.cgi?id=105757

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2012-12-26
Reviewed by George Staikos.

PR 271627
Internally reviewed by George Staikos.

Call FrameSelection's updateAppearence instead of SelectionHandler's
selectionPositionChanged to update the caret position.

  • Api/InRegionScroller.cpp:

(BlackBerry::WebKit::InRegionScrollerPrivate::setLayerScrollPosition):

7:54 AM Changeset in webkit [138477] by yurys@chromium.org
  • 17 edits
    1 add in trunk

Web Inspector: extract JS heap profiler specifics into JSHeapSnapshot.js
https://bugs.webkit.org/show_bug.cgi?id=105768

Reviewed by Pavel Feldman.

Source/WebCore:

Inroduced JSHeapSnapshot, JSHeapSnapshotNode, JSHeapSnapshotEdge and JSHeapSnapshotRetainerEdge which
should encapsulate logic specific to JS-heap.
No behavioral changes, covered with existing heap profiler tests.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshotEdge.prototype.hasStringName):
(WebInspector.HeapSnapshotEdge.prototype.name):
(WebInspector.HeapSnapshotEdge.prototype.node):
(WebInspector.HeapSnapshotEdge.prototype.toString):
(WebInspector.HeapSnapshotRetainerEdge.prototype._node):
(WebInspector.HeapSnapshotRetainerEdge.prototype._edge):
(WebInspector.HeapSnapshotNode.prototype.className):
(WebInspector.HeapSnapshotNode.prototype.classIndex):
(WebInspector.HeapSnapshotNode.prototype.edges):
(WebInspector.HeapSnapshotNode.prototype.id):
(WebInspector.HeapSnapshotNode.prototype.retainers):
(WebInspector.HeapSnapshot.prototype.createNode):
(WebInspector.HeapSnapshot.prototype.createEdge):
(WebInspector.HeapSnapshot.prototype.createRetainingEdge):
(WebInspector.HeapSnapshot.prototype.rootNode):
(WebInspector.HeapSnapshot.prototype.aggregatesForDiff):
(WebInspector.HeapSnapshot.prototype._buildAggregates):
(WebInspector.HeapSnapshot.prototype._calculateClassesRetainedSize):
(WebInspector.HeapSnapshot.prototype._sortAggregateIndexes):
(WebInspector.HeapSnapshot.prototype._calculateDiffForClass):
(WebInspector.HeapSnapshot.prototype.createEdgesProvider):
(WebInspector.HeapSnapshot.prototype.createRetainingEdgesProvider):
(WebInspector.HeapSnapshot.prototype.createNodesProviderForDominator):
(WebInspector.HeapSnapshotNodesProvider.prototype.nodePosition):

  • inspector/front-end/HeapSnapshotLoader.js:

(WebInspector.HeapSnapshotLoader.prototype.buildSnapshot):

  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotWorker):

  • inspector/front-end/HeapSnapshotWorker.js:
  • inspector/front-end/JSHeapSnapshot.js: Added.

(WebInspector.JSHeapSnapshot):
(WebInspector.JSHeapSnapshot.prototype.createNode):
(WebInspector.JSHeapSnapshot.prototype.createEdge):
(WebInspector.JSHeapSnapshot.prototype.createRetainingEdge):
(WebInspector.JSHeapSnapshotNode):
(WebInspector.JSHeapSnapshotNode.prototype.canBeQueried):
(WebInspector.JSHeapSnapshotNode.prototype.isPageObject):
(WebInspector.JSHeapSnapshotNode.prototype.distanceToWindow):
(WebInspector.JSHeapSnapshotNode.prototype.className):
(WebInspector.JSHeapSnapshotNode.prototype.classIndex):
(WebInspector.JSHeapSnapshotNode.prototype.id):
(WebInspector.JSHeapSnapshotNode.prototype.isHidden):
(WebInspector.JSHeapSnapshotNode.prototype.isNative):
(WebInspector.JSHeapSnapshotNode.prototype.isSynthetic):
(WebInspector.JSHeapSnapshotNode.prototype.isWindow):
(WebInspector.JSHeapSnapshotNode.prototype.isDetachedDOMTreesRoot):
(WebInspector.JSHeapSnapshotNode.prototype.isDetachedDOMTree):
(WebInspector.JSHeapSnapshotEdge):
(WebInspector.JSHeapSnapshotEdge.prototype.clone):
(WebInspector.JSHeapSnapshotEdge.prototype.hasStringName):
(WebInspector.JSHeapSnapshotEdge.prototype.isElement):
(WebInspector.JSHeapSnapshotEdge.prototype.isHidden):
(WebInspector.JSHeapSnapshotEdge.prototype.isWeak):
(WebInspector.JSHeapSnapshotEdge.prototype.isInternal):
(WebInspector.JSHeapSnapshotEdge.prototype.isInvisible):
(WebInspector.JSHeapSnapshotEdge.prototype.isShortcut):
(WebInspector.JSHeapSnapshotEdge.prototype.name):
(WebInspector.JSHeapSnapshotEdge.prototype.toString):
(WebInspector.JSHeapSnapshotEdge.prototype._hasStringName):
(WebInspector.JSHeapSnapshotEdge.prototype._name):
(WebInspector.JSHeapSnapshotEdge.prototype._nameOrIndex):
(WebInspector.JSHeapSnapshotEdge.prototype._type):
(WebInspector.JSHeapSnapshotRetainerEdge):
(WebInspector.JSHeapSnapshotRetainerEdge.prototype.clone):
(WebInspector.JSHeapSnapshotRetainerEdge.prototype.isElement):
(WebInspector.JSHeapSnapshotRetainerEdge.prototype.isHidden):
(WebInspector.JSHeapSnapshotRetainerEdge.prototype.isInternal):
(WebInspector.JSHeapSnapshotRetainerEdge.prototype.isInvisible):
(WebInspector.JSHeapSnapshotRetainerEdge.prototype.isShortcut):
(WebInspector.JSHeapSnapshotRetainerEdge.prototype.isWeak):

  • inspector/front-end/ProfilesPanel.js:
  • inspector/front-end/WebKit.qrc:

Source/WebKit/chromium:

  • WebKit.gyp: added new file to JS heap profiler.

LayoutTests:

Inroduced JSHeapSnapshot, JSHeapSnapshotNode, JSHeapSnapshotEdge and JSHeapSnapshotRetainerEdge which
should encapsulate logic specific to JS-heap. The tests were switched to the new classes.

  • inspector/profiler/heap-snapshot-loader.html:
  • inspector/profiler/heap-snapshot-test.js:

(initialize_HeapSnapshotTest.InspectorTest.createJSHeapSnapshotMockObject):
(initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMockRaw):

  • inspector/profiler/heap-snapshot.html:
6:46 AM Changeset in webkit [138476] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

[WIN] Build fix for !USE(CFNETWORK) after r138413.

  • platform/network/NetworkStorageSession.h:

(WebCore):

4:07 AM Changeset in webkit [138475] by yurys@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: prepare HeapSnapshot.js for use with native heap snapshot
https://bugs.webkit.org/show_bug.cgi?id=105763

Reviewed by Alexander Pavlov.

HeapSnapshot.js now expects root node to be either the first or the last (real) one
in the list of all nodes.

  • inspector/HeapGraphSerializer.cpp:

(HeapGraphNode):
(WebCore::HeapGraphSerializer::serialize): reordered node and edge fields so that the go in
the same order as in the JS heap snapshot.

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype._buildAggregates):
(WebInspector.HeapSnapshot.prototype._buildDominatedNodes):

  • inspector/front-end/NativeHeapGraph.js:

(WebInspector.NativeHeapGraph):
(WebInspector.NativeHeapGraph.prototype.root): now there is explicit root node which is the last
one in the list, use it.
(WebInspector.NativeHeapGraph.prototype._calculateNodeEdgeIndexes):
(WebInspector.NativeHeapGraph.prototype._addDummyNode): fixed dummy node first edge index.
(WebInspector.NativeHeapGraph.Edge.prototype.target):
(WebInspector.NativeHeapGraph.Node.prototype.referencedNodes):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeSnapshotNode.prototype._addChildrenFromGraph): switched to use of the root node
(WebInspector.NativeHeapGraphDataGridRoot.prototype._populate):

2:27 AM Changeset in webkit [138474] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WTF

Fix build warning in OSAllocatorPosix.cpp
https://bugs.webkit.org/show_bug.cgi?id=105761

Reviewed by Kentaro Hara.

  • wtf/OSAllocatorPosix.cpp:

(WTF::OSAllocator::reserveUncommitted): Fix unused param warnings.

1:56 AM Changeset in webkit [138473] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Web Inspector]Remove Preview and Response tab from network panel in case websocket.
https://bugs.webkit.org/show_bug.cgi?id=105754

Patch by Pan Deng <pan.deng@intel.com> on 2012-12-26
Reviewed by Pavel Feldman.

Network item views for websocket is not consistent before/after receiving a frame.
This change keeps Headers, Frames and Cookies tab for websocket.

No new tests.

  • inspector/front-end/NetworkItemView.js:

(WebInspector.NetworkItemView):

Dec 25, 2012:

11:24 PM Changeset in webkit [138472] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/JavaScriptCore

[CMAKE] Remove header files in JavaScriptCore/CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=105753

Reviewed by Laszlo Gombos.

  • CMakeLists.txt: Remove header files in source list.
6:36 PM Changeset in webkit [138471] by weinig@apple.com
  • 4 edits in trunk/Source/WebKit2

Fix the Database manager assert, again.

  • WebProcess/WebCoreSupport/WebDatabaseManager.cpp:

(WebKit):
(WebKit::WebDatabaseManager::WebDatabaseManager):
(WebKit::WebDatabaseManager::initialize):

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:

(WebDatabaseManager):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess):

6:29 PM Changeset in webkit [138470] by charles.wei@torchmobile.com.cn
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Need to initialize the onLine in the global
https://bugs.webkit.org/show_bug.cgi?id=105749

Reviewed by George Staikos.

The NetworkStatus is initialized to online in the constructor by default,
we need to update it correctly with the network status at startup.

  • Api/BlackBerryGlobal.cpp:

(BlackBerry::WebKit::globalInitialize):

6:15 PM Changeset in webkit [138469] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Media controls are drawn on top of one another for media with unknown duration.
https://bugs.webkit.org/show_bug.cgi?id=105747

Patch by John Griggs <jgriggs@rim.com> on 2012-12-25
Reviewed by George Staikos.

No need to reposition controls when there is no timeline element, this mispositions them in the new design.

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::adjustMediaControlStyle):

6:04 PM Changeset in webkit [138468] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebKit2

Coordinated Graphics: Manage the lifecycle of CoordinatedGraphicsLayer explicitly.
https://bugs.webkit.org/show_bug.cgi?id=104990

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-25
Reviewed by Noam Rosenthal.

Send explicit commands to the UI process to create/delete compositing
layers, instead of having the UI process decide lazily when to create
them.

Avoid creating a compositing layer at all if it was deleted in the same
cycle.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::createCompositingLayer):
(WebKit):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(CoordinatedLayerTreeHostProxy):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::createCanvas):
(WebKit::LayerTreeRenderer::destroyCanvas):
(WebKit::LayerTreeRenderer::setLayerChildren):
(WebKit::LayerTreeRenderer::setLayerFilters):
(WebKit::LayerTreeRenderer::setLayerState):
(WebKit::LayerTreeRenderer::getLayerByIDIfExists):
(WebKit):
(WebKit::LayerTreeRenderer::createLayer):
(WebKit::LayerTreeRenderer::deleteLayer):
(WebKit::LayerTreeRenderer::setRootLayerID):
(WebKit::LayerTreeRenderer::createTile):
(WebKit::LayerTreeRenderer::removeTile):
(WebKit::LayerTreeRenderer::updateTile):
(WebKit::LayerTreeRenderer::ensureRootLayer):
(WebKit::LayerTreeRenderer::setLayerAnimations):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(LayerTreeRenderer):
(WebKit::LayerTreeRenderer::layerByID):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
(WebKit::CoordinatedLayerTreeHost::createCompositingLayers):
(WebKit):
(WebKit::CoordinatedLayerTreeHost::deleteCompositingLayers):
(WebKit::CoordinatedLayerTreeHost::detachLayer):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
5:56 PM Changeset in webkit [138467] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix Qt build.

  • WebProcess/WebPage/qt/WebPageQt.cpp:
5:37 PM Changeset in webkit [138466] by weinig@apple.com
  • 16 edits in trunk/Source/WebKit2

Reduce the number of includes in WebProcess.h
https://bugs.webkit.org/show_bug.cgi?id=105709

Reviewed by Dan Bernstein.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::downloadsAuthenticationManager):

  • NetworkProcess/NetworkProcess.h:

(WebKit):

  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:
  • WebProcess/FullScreen/WebFullScreenManager.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/Network/NetworkProcessConnection.cpp:
  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
  • WebProcess/WebPage/FindController.cpp:
  • WebProcess/WebPage/WebContextMenu.cpp:
  • WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::downloadsAuthenticationManager):
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::geolocationManager):
(WebKit):
(WebKit::WebProcess::applicationCacheManager):
(WebKit::WebProcess::resourceCacheManager):
(WebKit::WebProcess::cookieManager):
(WebKit::WebProcess::authenticationManager):
(WebKit::WebProcess::databaseManager):
(WebKit::WebProcess::notificationManager):
(WebKit::WebProcess::pluginProcessConnectionManager):
(WebKit::WebProcess::networkProcessConnectionClosed):
(WebKit::WebProcess::webResourceLoadScheduler):
(WebKit::WebProcess::pluginProcessCrashed):

  • WebProcess/WebProcess.h:

(WebCore):
(WebKit):
(WebProcess):

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

1:07 PM Changeset in webkit [138465] by fpizlo@apple.com
  • 11 edits
    3 adds in trunk/Source/JavaScriptCore

JITThunks should be in its own file
https://bugs.webkit.org/show_bug.cgi?id=105744

Rubber stamped by Sam Weinig.

Moved JITThunks into its own file and removed some static methods from it
that were not related to what JITThunks currently does. Performed various
pagan rituals to get it to build - apparently there is a circular dependency
between JSCell, Weak, and JITThunks, which magically resolves itself if you
make sure to first include Register.h. Making it so that fewer pagan rituals
need to be performed if this code changes in the future is covered by
https://bugs.webkit.org/show_bug.cgi?id=105696.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • jit/JITStubs.cpp:

(JSC::tryCachePutByID):
(JSC::tryCacheGetByID):

  • jit/JITStubs.h:

(JSC::JITStackFrame::returnAddressSlot):
(JSC::returnAddressIsInCtiTrampoline):

  • jit/JITThunks.cpp: Added.

(JSC::JITThunks::JITThunks):
(JSC::JITThunks::~JITThunks):
(JSC::JITThunks::ctiStub):
(JSC::JITThunks::hostFunctionStub):
(JSC::JITThunks::clearHostFunctionStubs):

  • jit/JITThunks.h: Added.

(JSC::JITThunks::ctiStringLengthTrampoline):
(JSC::JITThunks::ctiVirtualCallLink):
(JSC::JITThunks::ctiVirtualConstructLink):
(JSC::JITThunks::ctiVirtualCall):
(JSC::JITThunks::ctiVirtualConstruct):
(JSC::JITThunks::ctiNativeCall):
(JSC::JITThunks::ctiNativeConstruct):

  • jit/ThunkGenerator.h: Added.
  • jit/ThunkGenerators.cpp:
  • jit/ThunkGenerators.h:
  • runtime/JSGlobalData.h:
1:06 PM Changeset in webkit [138464] by akling@apple.com
  • 2 edits in trunk/Source/WebKit2

[WK2][Mac] Call Carbon resource APIs on main thread only.
<rdar://problem/11760262>
<http://webkit.org/b/105746>

Reviewed by Anders Carlsson.

The Carbon resource APIs are not thread-safe, so use a little libdispatch sugar to make
sure that plugin enumeration never calls them on a secondary thread.

  • Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:

(WebKit::getPluginInfoFromCarbonResourcesOnMainThread):
(WebKit::getPluginInfoFromCarbonResources):

9:08 AM Changeset in webkit [138463] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Build breaks with --no-input-type-color
https://bugs.webkit.org/show_bug.cgi?id=105740

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-25
Reviewed by Laszlo Gombos.

  • UIProcess/API/efl/EwkViewImpl.h: Add INPUT_TYPE_COLOR guard.

(EwkViewImpl):

4:28 AM Changeset in webkit [138462] by Christophe Dumez
  • 9 edits in trunk

[EFL][WK2] Refactor snapshot taking code
https://bugs.webkit.org/show_bug.cgi?id=105687

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Refactor EFL WK2 snapshot taking code to use
smart pointers when possible and follow naming
conventions.

  • UIProcess/API/C/efl/WKView.cpp:

(WKViewCreateSnapshot):

  • UIProcess/API/C/efl/WKView.h: Rename WKViewGetSnapshot

to WKViewCreateSnapshot to follow C API naming conventions,
since the returned value needs to be adopted.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::takeSnapshot):

  • UIProcess/API/efl/EwkViewImpl.h: Have takeSnapshot() return

a cairo_surface_t instead of a WKType. The value should be
converted to a WKType at C API level.
(EwkViewImpl):

  • UIProcess/API/efl/SnapshotImageGL.cpp: Use OwnArrayPtr for the

buffer to avoid manual memory handling. Remove useless call to
glBindTexture() since glReadPixels() reads pixels from the frame
buffer, not from the texture.
(getImageDataFromFrameBuffer):

  • UIProcess/API/efl/SnapshotImageGL.h: Rename getImageFromCurrentTexture

to getImageDataFromFrameBuffer for consistency since we technically
return the pixel data of the image and since glReadPixels does not
actually read from the texture. Have the function return a smart
pointer instead of a raw one to avoid manual memory handling.

Tools:

Call WKViewCreateSnapshot() instead of WKViewGetSnapshot()
since the function was renamed to follow naming style.

  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp:

(WTR::PlatformWebView::windowSnapshotImage):

3:08 AM Changeset in webkit [138461] by timothy_horton@apple.com
  • 12 edits in trunk/Source/WebKit2

PDFPlugin: Find-in-page
https://bugs.webkit.org/show_bug.cgi?id=105710
<rdar://problem/12555331>

Reviewed by Alexey Proskuryakov.

Make use of PDFLayerController's find-in-page functionality to mimic WebKit's.
Add two Plugin methods, countFindMatches and findString, and make use of them
if attempting to find-in-page within a PluginDocument.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::countFindMatches): Added. We don't support find-in-page for NetscapePlugin.
(WebKit::NetscapePlugin::findString): Added. We don't support find-in-page for NetscapePlugin.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h: Add countFindMatches and findString.
  • WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add requisite PDFLayerController interfaces.
  • WebProcess/Plugins/PDF/PDFPlugin.h: Add countFindMatches, findString, and nextMatchForString,

as well as storage for the most-recently-searched string.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::writeItemsToPasteboard):
(WebKit::PDFPlugin::countFindMatches):
(WebKit::PDFPlugin::nextMatchForString):
(WebKit::PDFPlugin::findString):

  • WebProcess/Plugins/PDF/SimplePDFPlugin.h: Add countFindMatches and findString.
  • WebProcess/Plugins/Plugin.h: Add countFindMatches and findString.
  • WebProcess/Plugins/PluginProxy.h: Add countFindMatches and findString, but since PDFPlugin

is in-process, we don't need to forward these calls to the PluginProcess.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::countFindMatches): Forward countFindMatches to the plugin.
(WebKit::PluginView::findString): Forward findString to the plugin.

  • WebProcess/Plugins/PluginView.h: Add countFindMatches and findString.
  • WebProcess/WebPage/FindController.cpp:

(WebKit::pluginViewForFrame): If the given frame hosts a PluginDocument, grab its PluginView.
(WebKit::FindController::countStringMatches): Forward countStringMatches to PluginView if necessary.
(WebKit::FindController::updateFindUIAfterPageScroll): Only use unmarkAllTextMatches if we're using
ordinary find-in-page and don't have a plugin. If we have a plugin, disable our overlay, as it must
be handled by the plugin itself, and request the number of matches for the search from the plugin.
(WebKit::FindController::findString): If necessary, forward findString to the plugin.
(WebKit::FindController::hideFindUI): Hide the search highlight by searching for an empty string.

1:26 AM Changeset in webkit [138460] by apavlov@chromium.org
  • 5 edits
    2 adds in trunk

Web Inspector: Crash when modifying a rule that has been removed through JavaScript
https://bugs.webkit.org/show_bug.cgi?id=105718

Reviewed by Yury Semikhatsky.

Source/WebCore:

CSSStyleRules should be stored by RefPtr's to avoid using stale pointers to deleted instances.

Test: inspector/styles/removed-rule-crash.html

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::ruleForId):
(WebCore::InspectorStyleSheet::revalidateStyle):
(WebCore::InspectorStyleSheet::buildArrayForRuleList):
(WebCore::InspectorStyleSheet::collectFlatRules):

  • inspector/InspectorStyleSheet.h:

(InspectorStyleSheet):

LayoutTests:

  • http/tests/inspector/elements-test.js: Add InspectorTest.toggleMatchedStyleProperty.

(initialize_ElementTest.InspectorTest.toggleMatchedStyleProperty): Added.

  • inspector/styles/removed-rule-crash-expected.txt: Added.
  • inspector/styles/removed-rule-crash.html: Added.
1:24 AM Changeset in webkit [138459] by apavlov@chromium.org
  • 2 edits
    3 adds in trunk/LayoutTests

Web Inspector: device-metrics-fit-window.html is failing on Chromium-Mac
https://bugs.webkit.org/show_bug.cgi?id=104362

Unreviewed expectations rebaseline.

  • platform/chromium-mac/platform/chromium/inspector/styles/device-metrics-fit-window-expected.txt: Added.
  • platform/chromium/TestExpectations:
1:13 AM Changeset in webkit [138458] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: [Console] Add "Replay XHR" context menu item for corresponding messages.
https://bugs.webkit.org/show_bug.cgi?id=105714

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-25
Reviewed by Pavel Feldman.

Expose "request" value from console message object and use it in console
context menu generator.

  • inspector/front-end/ConsoleMessage.js: Expose "request".
  • inspector/front-end/ConsoleView.js: Add "Replay XHR" menu item.
  • inspector/front-end/NetworkPanel.js: Fix whitespaces.
1:00 AM Changeset in webkit [138457] by apavlov@chromium.org
  • 63 edits in trunk/Source/WebCore

Web Inspector: Make InspectorState instances per-agent, corresponding to JSON map entries in the cookie
https://bugs.webkit.org/show_bug.cgi?id=105722

Reviewed by Yury Semikhatsky.

Inspector state cookie (in JSON format) has become a map (agent name -> "properties object")
to avoid cross-agent property name clashes in a single property namespace.
As such, InspectorState corresponds to a single "properties object" and is now per-agent,
managed by an InspectorCompositeState (which is owned by [Worker]InspectorController).
Since InspectorCompositeState maps "properties objects" by their agent names, InspectorStates are created
by InspectorCompositeState in the InspectorBaseAgentInterface ctor, using the respective agent name.

No new tests, no change in visible behavior.

  • inspector/InspectorAgent.cpp: Pass InspectorCompositeState rather than InspectorState.
  • inspector/InspectorAgent.h: Ditto.
  • inspector/InspectorApplicationCacheAgent.cpp: Ditto.
  • inspector/InspectorApplicationCacheAgent.h: Ditto.
  • inspector/InspectorBaseAgent.cpp: Ditto.

(WebCore::InspectorBaseAgentInterface::InspectorBaseAgentInterface):
Create InspectorState via InspectorCompositeState::createAgentState(agentName).

  • inspector/InspectorBaseAgent.h: Pass InspectorCompositeState rather than InspectorState.
  • inspector/InspectorCSSAgent.cpp: Ditto.
  • inspector/InspectorCSSAgent.h: Ditto.
  • inspector/InspectorCanvasAgent.cpp: Ditto.
  • inspector/InspectorCanvasAgent.h: Ditto.
  • inspector/InspectorConsoleAgent.cpp: Ditto.
  • inspector/InspectorConsoleAgent.h: Ditto.
  • inspector/InspectorController.cpp: Use InspectorCompositeState rather than InspectorState.
  • inspector/InspectorController.h: Ditto.
  • inspector/InspectorDOMAgent.cpp: Pass InspectorCompositeState rather than InspectorState.

(WebCore::InspectorDOMAgent::InspectorDOMAgent): Ditto.

  • inspector/InspectorDOMAgent.h: Ditto.
  • inspector/InspectorDOMDebuggerAgent.cpp: Ditto.
  • inspector/InspectorDOMDebuggerAgent.h: Ditto.
  • inspector/InspectorDOMStorageAgent.cpp: Ditto.
  • inspector/InspectorDOMStorageAgent.h: Ditto.
  • inspector/InspectorDatabaseAgent.cpp: Ditto.
  • inspector/InspectorDatabaseAgent.h: Ditto.
  • inspector/InspectorDebuggerAgent.cpp: Ditto.
  • inspector/InspectorDebuggerAgent.h: Ditto.
  • inspector/InspectorFileSystemAgent.cpp: Ditto.
  • inspector/InspectorFileSystemAgent.h: Ditto.
  • inspector/InspectorIndexedDBAgent.cpp: Ditto.
  • inspector/InspectorIndexedDBAgent.h: Ditto.
  • inspector/InspectorInputAgent.cpp: Ditto.
  • inspector/InspectorInputAgent.h: Ditto.
  • inspector/InspectorLayerTreeAgent.cpp: Ditto.
  • inspector/InspectorLayerTreeAgent.h: Ditto.
  • inspector/InspectorMemoryAgent.cpp: Ditto.
  • inspector/InspectorMemoryAgent.h: Ditto.
  • inspector/InspectorPageAgent.cpp: Ditto.
  • inspector/InspectorPageAgent.h: Ditto.
  • inspector/InspectorProfilerAgent.cpp: Ditto.
  • inspector/InspectorProfilerAgent.h: Ditto.
  • inspector/InspectorResourceAgent.cpp: Ditto.
  • inspector/InspectorResourceAgent.h: Ditto.
  • inspector/InspectorRuntimeAgent.cpp: Ditto.
  • inspector/InspectorRuntimeAgent.h: Ditto.
  • inspector/InspectorState.cpp: Introduce InspectorCompositeState, refactor.

(WebCore::InspectorState::updateCookie): Delegates to the owning InspectorCompositeState instance.
(WebCore::InspectorState::setFromCookie): Gets called from InspectorCompositeState::loadFromCookie().
(WebCore::InspectorState::remove): Don't forget to update the cookie.
(WebCore::InspectorCompositeState::createAgentState): Creates an InspectorState instance for a named agent.
(WebCore::InspectorCompositeState::loadFromCookie): Restores InspectorStates from a cookie.
(WebCore::InspectorCompositeState::inspectorStateUpdated): Delegate invoked from InspectorState::updateCookie().

  • inspector/InspectorState.h:

(InspectorStateUpdateListener): InspectorCompositeState API exposed to InspectorState.

  • inspector/InspectorTimelineAgent.cpp: Pass InspectorCompositeState rather than InspectorState.
  • inspector/InspectorTimelineAgent.h: Ditto.
  • inspector/InspectorWorkerAgent.cpp: Ditto.
  • inspector/InspectorWorkerAgent.h: Ditto.
  • inspector/PageConsoleAgent.cpp: Ditto.
  • inspector/PageConsoleAgent.h: Ditto.
  • inspector/PageDebuggerAgent.cpp: Ditto.
  • inspector/PageDebuggerAgent.h: Ditto.
  • inspector/PageRuntimeAgent.cpp: Ditto.
  • inspector/PageRuntimeAgent.h: Ditto.
  • inspector/WorkerConsoleAgent.cpp: Ditto.
  • inspector/WorkerConsoleAgent.h: Ditto.
  • inspector/WorkerDebuggerAgent.cpp: Ditto.
  • inspector/WorkerDebuggerAgent.h: Ditto.
  • inspector/WorkerInspectorController.cpp: Ditto.
  • inspector/WorkerInspectorController.h: Ditto.
  • inspector/WorkerRuntimeAgent.cpp: Ditto.
  • inspector/WorkerRuntimeAgent.h: Ditto.
12:12 AM Changeset in webkit [138456] by loislo@chromium.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed follow-up for r138455.

Dec 24, 2012:

11:53 PM Changeset in webkit [138455] by loislo@chromium.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed compilation fix for r138452.

11:41 PM Changeset in webkit [138454] by yurys@chromium.org
  • 7 edits in trunk/Source

Memory instrumentation: provide a way to mark a node as a root
https://bugs.webkit.org/show_bug.cgi?id=105737

Reviewed by Alexander Pavlov.

Source/WebCore:

Extended HeapGraphSerializer to add a fake root node with edges to all
real instrumentation roots.

  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphSerializer::reportNode):
(WebCore::HeapGraphSerializer::addRootNode):
(WebCore):

  • inspector/HeapGraphSerializer.h:

(HeapGraphSerializer):

Source/WTF:

Objects added using MemoryInstrumentation::addRootObject will be marked as roots.

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryInstrumentation::WrapperBase::process):
(WTF):
(WTF::MemoryInstrumentation::WrapperBase::processPointer):
(WTF::MemoryInstrumentation::WrapperBase::processRootObjectRef):

  • wtf/MemoryInstrumentation.h:

(WrapperBase):

  • wtf/MemoryObjectInfo.h: added root marker which can be used by the heap graph builder.

(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::isRoot):
(WTF::MemoryObjectInfo::markAsRoot):
(MemoryObjectInfo):

11:26 PM Changeset in webkit [138453] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: add message listener only in case of standalone test-runner.html
https://bugs.webkit.org/show_bug.cgi?id=105715

Reviewed by Pavel Feldman.

Tell InspectorFrontendAPI that it is launched by standalone test runner so that it
can decide whether message event listener should be added.

  • inspector/front-end/InspectorFrontendAPI.js:
  • inspector/front-end/test-runner.html:
11:01 PM Changeset in webkit [138452] by loislo@chromium.org
  • 10 edits in trunk

Web Inspector: Native Memory Instrumentation: propagate member type as edge type to the serialized heap graph.
https://bugs.webkit.org/show_bug.cgi?id=105725

Reviewed by Yury Semikhatsky.

Source/WebCore:

MemoryOwningType was renamed to MemberType.
Source argument were removed from reportEdge, reportLeaf and other edge related methods because it is not necessary.
MemberType argument was propagated from MemoryInstrumentation down to HeapGraphSerializer.

  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphEdge::HeapGraphEdge):
(HeapGraphEdge):
(WebCore::HeapGraphSerializer::HeapGraphSerializer):
(WebCore::HeapGraphSerializer::reportEdge):
(WebCore::HeapGraphSerializer::reportLeaf):
(WebCore::HeapGraphSerializer::serialize):

  • inspector/HeapGraphSerializer.h:

(HeapGraphSerializer):

  • inspector/MemoryInstrumentationImpl.cpp:

(WebCore::MemoryInstrumentationClientImpl::reportEdge):
(WebCore::MemoryInstrumentationClientImpl::reportLeaf):

  • inspector/MemoryInstrumentationImpl.h:

(MemoryInstrumentationClientImpl):

Source/WTF:

MemoryOwningType was renamed to MemberType.
Source argument were removed from reportEdge, reportLeaf and other edge related methods because it is not necessary.
MemberType argument was propagated from MemoryInstrumentation down to HeapGraphSerializer.

The changes covered by tests in TestWebKitAPI.

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryInstrumentation::reportEdge):
(WTF::MemoryInstrumentation::reportLinkToBuffer):
(WTF::MemoryClassInfo::addPrivateBuffer):

  • wtf/MemoryInstrumentation.h:

(MemoryInstrumentationClient):
(MemoryInstrumentation):
(WTF::MemoryInstrumentation::addRawBuffer):
(WTF::MemoryInstrumentation::MemberTypeTraits::addObject):
(WTF::MemoryInstrumentation::addObjectImpl):

Tools:

MemberType value names were adjusted according to Style Guide.
Existing tests were extended with link type validation.

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
10:16 PM Changeset in webkit [138451] by tasak@google.com
  • 3 edits
    2 adds in trunk

::first-letter { overflow: -webkit-paged-y } causes crash
https://bugs.webkit.org/show_bug.cgi?id=105393

Reviewed by Beth Dakin.

Source/WebCore:

Should check whether e is available or not before invoking
e->hasTagName in adjustRenderStyle in StyleResolver.cpp.

Test: fast/css/pseudo-element-opagedxy-crash.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):
If adjustRenderStyle is invoked in pseudoStyleForElement, the given
element is 0. So e is not available. However if the given style's
overflowY is OPAGEDX or OPAGEDY, adjustRenderStyle doesn't check
whether e is available or not before e->hasTagName.
This causes a crash.

LayoutTests:

  • fast/css/pseudo-element-opagedxy-crash-expected.txt: Added.
  • fast/css/pseudo-element-opagedxy-crash.html: Added.
9:23 PM Changeset in webkit [138450] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Web Inspector: add async API for passing renderer process memory stats
https://bugs.webkit.org/show_bug.cgi?id=105278

Patch by Alexei Filippov <alph@chromium.org> on 2012-12-24
Reviewed by Yury Semikhatsky.

On some platforms (e.g. Linux) it may take some time to collect
total process memory information as it involves an IPC out of a
sandboxed renderer process. So add an async way to collect the statistics.

Source/Platform:

  • chromium/public/Platform.h:

(Platform):
(ProcessMemorySizesCallback):
(WebKit::Platform::ProcessMemorySizesCallback::~ProcessMemorySizesCallback):
(WebKit::Platform::requestProcessMemorySizes):

Source/WebCore:

  • platform/MemoryUsageSupport.cpp:

(WebCore::MemoryUsageSupport::requestProcessMemorySizes):
(WebCore):

  • platform/MemoryUsageSupport.h:

(MemoryUsageSupport):
(ProcessMemorySizesCallback):
(WebCore::MemoryUsageSupport::ProcessMemorySizesCallback::~ProcessMemorySizesCallback):

  • platform/chromium/MemoryUsageSupportChromium.cpp:

(WebCore::MemoryUsageSupport::requestProcessMemorySizes):
(WebCore):

  • platform/qt/MemoryUsageSupportQt.cpp:

(WebCore::MemoryUsageSupport::requestProcessMemorySizes):
(WebCore):

6:17 PM Changeset in webkit [138449] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Remove wtf/Platform.h includes from {c|cpp} files
https://bugs.webkit.org/show_bug.cgi?id=105678

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2012-12-24
Reviewed by Kentaro Hara.

Remove wtf/Platform.h from the include list as it is already
included in config.h.

Source/JavaScriptCore:

  • disassembler/udis86/udis86.c:
  • disassembler/udis86/udis86_decode.c:
  • disassembler/udis86/udis86_input.c:
  • disassembler/udis86/udis86_itab_holder.c:
  • disassembler/udis86/udis86_syn-att.c:
  • disassembler/udis86/udis86_syn-intel.c:
  • disassembler/udis86/udis86_syn.c:
  • heap/VTableSpectrum.cpp:

Source/WebCore:

No new tests as there is no new functionality.

  • rendering/svg/RenderSVGRect.cpp:

Source/WebKit2:

  • Shared/qt/QtNetworkRequestData.cpp:
5:17 PM Changeset in webkit [138448] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

Follow up fixes for r137739
https://bugs.webkit.org/show_bug.cgi?id=104982

Reviewed by Ryosuke Niwa.

Applied darin's comments in https://bugs.webkit.org/show_bug.cgi?id=104982#c18

No tests. No change in behavior.

  • dom/ContainerNode.h:

(WebCore::ChildNodesLazySnapshot::nextNode):

11:37 AM Changeset in webkit [138447] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Update BB10 media render theme.
https://bugs.webkit.org/show_bug.cgi?id=105728

Patch by Tiancheng Jiang <tijiang@rim.com> on 2012-12-24
Reviewed by Rob Buis.

Internally reviewed by John Griggs.
Use GL renderer to paint media control.

  • css/mediaControlsBlackBerry.css:

(audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::paintMediaSliderTrack):
(WebCore::RenderThemeBlackBerry::paintMediaSliderThumb):

10:28 AM Changeset in webkit [138446] by mihnea@adobe.com
  • 2 edits
    1 add
    14 deletes in trunk/LayoutTests

[CSS Regions] Convert some fast/regions pixel tests to reftests
https://bugs.webkit.org/show_bug.cgi?id=80191

Reviewed by Tony Chang.

Convert fast/regions/bottom-overflow-out-of-first-region.html to a ref test.
Used a monospace font, removed text-align and margins for text flowing into regions so that
the text fits nicely in the two regions of the test.

  • fast/regions/bottom-overflow-out-of-first-region-expected.html: Added.
  • fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • fast/regions/bottom-overflow-out-of-first-region.html:
  • platform/chromium-linux/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-mac-lion/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-mac/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-mac/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/chromium-win/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-win/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/efl/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/gtk/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/mac/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/mac/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/qt/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/qt/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
10:19 AM Changeset in webkit [138445] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Assert fix take 2.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):

10:12 AM Changeset in webkit [138444] by weinig@apple.com
  • 3 edits in trunk/Source/WebKit2

Fix WebKit2 asserting on launch.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):

  • WebProcess/WebProcess.h:

(WebKit::WebProcess::databaseManager):
(WebProcess):

8:45 AM Changeset in webkit [138443] by commit-queue@webkit.org
  • 20 edits in trunk/Source/WebCore

Unreviewed, rolling out r138436.
http://trac.webkit.org/changeset/138436
https://bugs.webkit.org/show_bug.cgi?id=105723

Asserts on state restoration in debug builds (Requested by
apavlov on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-24

  • inspector/InspectorAgent.cpp:

(InspectorAgentState):
(WebCore::InspectorAgent::enable):
(WebCore::InspectorAgent::disable):
(WebCore::InspectorAgent::evaluateForTestInFrontend):
(WebCore::InspectorAgent::inspect):

  • inspector/InspectorApplicationCacheAgent.cpp:

(ApplicationCacheAgentState):
(WebCore::InspectorApplicationCacheAgent::restore):
(WebCore::InspectorApplicationCacheAgent::enable):

  • inspector/InspectorCSSAgent.cpp:

(CSSAgentState):
(WebCore::InspectorCSSAgent::restore):
(WebCore::InspectorCSSAgent::enable):
(WebCore::InspectorCSSAgent::disable):

  • inspector/InspectorCanvasAgent.cpp:

(CanvasAgentState):
(WebCore::InspectorCanvasAgent::restore):
(WebCore::InspectorCanvasAgent::enable):
(WebCore::InspectorCanvasAgent::disable):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorController.h:

(WebCore):
(InspectorController):

  • inspector/InspectorDOMStorageAgent.cpp:

(DOMStorageAgentState):
(WebCore::InspectorDOMStorageAgent::restore):
(WebCore::InspectorDOMStorageAgent::enable):
(WebCore::InspectorDOMStorageAgent::disable):

  • inspector/InspectorDatabaseAgent.cpp:

(DatabaseAgentState):
(WebCore):
(WebCore::InspectorDatabaseAgent::enable):
(WebCore::InspectorDatabaseAgent::disable):
(WebCore::InspectorDatabaseAgent::restore):

  • inspector/InspectorDebuggerAgent.cpp:

(WebCore::InspectorDebuggerAgent::disable):

  • inspector/InspectorFileSystemAgent.cpp:

(FileSystemAgentState):
(WebCore):
(WebCore::InspectorFileSystemAgent::enable):
(WebCore::InspectorFileSystemAgent::disable):
(WebCore::InspectorFileSystemAgent::clearFrontend):
(WebCore::InspectorFileSystemAgent::restore):

  • inspector/InspectorIndexedDBAgent.cpp:

(IndexedDBAgentState):
(WebCore):
(WebCore::InspectorIndexedDBAgent::restore):
(WebCore::InspectorIndexedDBAgent::enable):
(WebCore::InspectorIndexedDBAgent::disable):

  • inspector/InspectorLayerTreeAgent.cpp:

(LayerTreeAgentState):
(WebCore::InspectorLayerTreeAgent::restore):
(WebCore::InspectorLayerTreeAgent::enable):
(WebCore::InspectorLayerTreeAgent::disable):

  • inspector/InspectorPageAgent.cpp:

(PageAgentState):
(WebCore::InspectorPageAgent::restore):
(WebCore::InspectorPageAgent::webViewResized):
(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
(WebCore::InspectorPageAgent::removeScriptToEvaluateOnLoad):
(WebCore::InspectorPageAgent::setDeviceMetricsOverride):
(WebCore::InspectorPageAgent::setShowPaintRects):
(WebCore::InspectorPageAgent::setShowFPSCounter):
(WebCore::InspectorPageAgent::setScriptExecutionDisabled):
(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
(WebCore::InspectorPageAgent::applyScreenWidthOverride):
(WebCore::InspectorPageAgent::applyScreenHeightOverride):
(WebCore::InspectorPageAgent::didPaint):
(WebCore::InspectorPageAgent::didLayout):
(WebCore::InspectorPageAgent::setEmulatedMedia):
(WebCore::InspectorPageAgent::applyEmulatedMedia):

  • inspector/InspectorResourceAgent.cpp:

(ResourceAgentState):
(WebCore::InspectorResourceAgent::restore):
(WebCore::InspectorResourceAgent::~InspectorResourceAgent):
(WebCore::InspectorResourceAgent::enable):
(WebCore::InspectorResourceAgent::disable):

  • inspector/InspectorState.cpp:

(WebCore::InspectorState::InspectorState):
(WebCore::InspectorState::loadFromCookie):
(WebCore):
(WebCore::InspectorState::mute):
(WebCore::InspectorState::unmute):
(WebCore::InspectorState::updateCookie):
(WebCore::InspectorState::remove):

  • inspector/InspectorState.h:

(WebCore):
(InspectorState):
(WebCore::InspectorState::setLong):

  • inspector/InspectorTimelineAgent.cpp:

(TimelineAgentState):
(WebCore::InspectorTimelineAgent::restore):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):

  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):

  • inspector/WorkerInspectorController.h:

(WebCore):
(WorkerInspectorController):

7:59 AM Changeset in webkit [138442] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Keep LiveEdit API disabled when idle
https://bugs.webkit.org/show_bug.cgi?id=104039

Patch by Peter Rybin <prybin@chromium.org> on 2012-12-24
Reviewed by Pavel Feldman.

Guards are added to LiveEdit call

  • bindings/v8/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setScriptSource):

6:03 AM Changeset in webkit [138441] by jpetsovits@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix various RenderQueue bugs introduced by r138024.
https://bugs.webkit.org/show_bug.cgi?id=105717
RIM PR 269029

Reviewed by George Staikos.

Scroll/zoom jobs were pretty solid, but I managed to
leave some bugs in the region handling of RenderQueue's
renderRegularRenderJobs() function, causing us to skip
a desired blit or render operation in cases where the
region and tile tracking did not match up.

This commit fixes these errors.

  • WebKitSupport/RenderQueue.cpp:

(BlackBerry::WebKit::RenderQueue::renderRegularRenderJobs):

4:56 AM Changeset in webkit [138440] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[BlackBerry] DRT - Crashed when running pixels tests
https://bugs.webkit.org/show_bug.cgi?id=105711

RIM PR 270003

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2012-12-24
Reviewed by George Staikos.

Calling window->post() here will result in buffer swapping which is
only allowed in UI thread now, and I found we don't need to call it
for GL renderer.

  • DumpRenderTree/blackberry/PixelDumpSupportBlackBerry.cpp:

(createBitmapContextFromWebView):

4:37 AM Changeset in webkit [138439] by charles.wei@torchmobile.com.cn
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Close page popup when a page becomes invisible.
https://bugs.webkit.org/show_bug.cgi?id=105704

Reviewed by George Staikos.

Reviewed internally by Jakob Petsovits.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setVisible):

3:23 AM Changeset in webkit [138438] by commit-queue@webkit.org
  • 6 edits in trunk

Web Inspector: refactor TextEditorHighlighter's highlight attributes to dense array
https://bugs.webkit.org/show_bug.cgi?id=105626

Patch by Andrey Lushnikov <lushnikov@chromium.com> on 2012-12-24
Reviewed by Pavel Feldman.

Source/WebCore:

Refactor highlight attributes from sparse array to dense array.

No new tests: no behaviour changes, coverage provided by existing tests.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorMainPanel.prototype._paintLine):
(WebInspector.TextEditorMainPanel.prototype._closingBlockOffset):

  • inspector/front-end/TextEditorHighlighter.js:

(WebInspector.TextEditorHighlighter.prototype._highlightLines):

LayoutTests:

Fix tests according to new highlight attribute structure.

  • inspector/editor/highlighter-long-line.html:
  • inspector/editor/highlighter-test.js:

(initialize_HighlighterTests.InspectorTest.dumpTextModel):
(initialize_HighlighterTests):

2:03 AM Changeset in webkit [138437] by commit-queue@webkit.org
  • 2 edits in trunk

[EFL [WebGL] GLES2 detection is broken.
https://bugs.webkit.org/show_bug.cgi?id=105677

We use the logic in FindGLES.cmake to detect GLES2 support during compile time.
OPENGLES2_FOUND is never set, even though OPENGLES2_INCLUDE_DIR and OPENGLES2_LIBRARY
contain right information. The name passed to find_package_handle_standard_args seems to be the issue here.
This patch changes the name passed to find_package_handle_standard_args to OPENGLES2.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-24
Reviewed by Kenneth Rohde Christiansen.

  • Source/cmake/FindGLES.cmake:
1:07 AM Changeset in webkit [138436] by apavlov@chromium.org
  • 20 edits in trunk/Source/WebCore

Web Inspector: Make use of the new InspectorState::remove() in inspector agents
https://bugs.webkit.org/show_bug.cgi?id=105438

Reviewed by Yury Semikhatsky.

This patch introduces the following refactorings:

  • setting property values of InspectorState to "empty" objects has been replaced by removing them from the state;
  • InspectorState instance is no longer shared across agents, so that the property names can no longer clash. Instead, InspectorCompositeState creates and owns InspectorState instances for every agent;
  • agent-specific prefix has been stripped from most property names, where it looked synthetic.
  • updateCookie() is called from InspectorState::remove().

No new tests, as there is no visible change in the behavior.

  • inspector/InspectorAgent.cpp: Agent-specific property name prefix stripped.
  • inspector/InspectorApplicationCacheAgent.cpp: Ditto.
  • inspector/InspectorCSSAgent.cpp: Ditto.
  • inspector/InspectorCanvasAgent.cpp: Ditto.
  • inspector/InspectorController.cpp: Make use of InspectorCompositeState rather than InspectorState.
  • inspector/InspectorController.h: Ditto.
  • inspector/InspectorDOMStorageAgent.cpp: Agent-specific property name prefix stripped.
  • inspector/InspectorDatabaseAgent.cpp: Ditto.
  • inspector/InspectorDebuggerAgent.cpp: Ditto.

(WebCore::InspectorDebuggerAgent::disable):
Use "remove" instead of setting an empty object.

  • inspector/InspectorFileSystemAgent.cpp: Agent-specific property name prefix stripped.
  • inspector/InspectorIndexedDBAgent.cpp: Ditto.
  • inspector/InspectorLayerTreeAgent.cpp: Ditto.
  • inspector/InspectorPageAgent.cpp: Ditto.

(WebCore::InspectorPageAgent::disable):
Use "remove" instead of setting empty values for certain properties.
(WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
Remove unnecessary code (object is created and put into the map if none is found).

  • inspector/InspectorResourceAgent.cpp: Agent-specific property name prefix stripped.

(WebCore::InspectorResourceAgent::disable):
Use "remove" instead of setting an empty object for userAgentOverride.

  • inspector/InspectorState.cpp: Add InspectorCompositeState.

(WebCore::InspectorState::setFromCookie): Gets invoked from InspectorCompositeState::loadFromCookie().
(WebCore::InspectorState::updateCookie): Call updateCookie().
(WebCore::InspectorCompositeState::createAgentState): Creates an InspectorState instance to be passed to an agent.

  • inspector/InspectorState.h: Add InspectorCompositeState.

(WebCore::InspectorState::setLong): Fix cast.

  • inspector/InspectorTimelineAgent.cpp: Agent-specific property name prefix stripped.
  • inspector/WorkerInspectorController.cpp: Make use of InspectorCompositeState rather than InspectorState.
  • inspector/WorkerInspectorController.h: Ditto.
12:19 AM Changeset in webkit [138435] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

[Qt][Win] Unreviewed Xmas buildfix after r138433.

  • WebProcess/Cookies/WebCookieManager.h:

Dec 23, 2012:

10:10 PM Changeset in webkit [138434] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Fix the incorrect use of preprocessor statement in API header
https://bugs.webkit.org/show_bug.cgi?id=105675

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-23
Reviewed by Sam Weinig.

Remove a preprocessor statement in WKBundlePage.h

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageGetInspector):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
9:45 PM Changeset in webkit [138433] by weinig@apple.com
  • 13 edits in trunk/Source/WebKit2

Switch WebCookieManager and AuthenticationManager to use the ChildProcess rather than holding on to a Connection
https://bugs.webkit.org/show_bug.cgi?id=105703

Reviewed by Dan Bernstein.

Also switches WebCookieManager over to be a MessageReceiver while we are at it.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initialize):
(WebKit::NetworkProcess::didReceiveMessage):

  • NetworkProcess/NetworkProcess.h:

(WebKit):

  • WebProcess/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::AuthenticationManager):
(WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):

  • WebProcess/Authentication/AuthenticationManager.h:

(AuthenticationManager):

  • WebProcess/Cookies/WebCookieManager.cpp:

(WebKit):
(WebKit::WebCookieManager::WebCookieManager):
(WebKit::WebCookieManager::didReceiveMessage):
(WebKit::WebCookieManager::getHostnamesWithCookies):
(WebKit::WebCookieManager::cookiesDidChange):
(WebKit::WebCookieManager::dispatchCookiesDidChange):
(WebKit::WebCookieManager::getHTTPCookieAcceptPolicy):

  • WebProcess/Cookies/WebCookieManager.h:

(WebKit):
(WebCookieManager):

  • WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:

(WebKit::WebCookieManager::setCookiePersistentStorage):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setAlwaysAcceptCookies):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initialize):
(WebKit::WebProcess::didReceiveMessage):

  • WebProcess/WebProcess.h:

(WebProcess):
(WebKit::WebProcess::cookieManager):

9:05 PM Changeset in webkit [138432] by Dimitri Glazkov
  • 12 edits
    2 adds in trunk/Source/WebCore

Split fast-rejection filter logic off SelectorChecker.
https://bugs.webkit.org/show_bug.cgi?id=105660

The awesome Bloom filter and parent stack logic don't need to be in SelectorChecker. They nicely factor out
into their own pretty thing, named thereby SelectorFilter.

Reviewed by Eric Seidel.

No change in functionality, covered by existing tests.

  • CMakeLists.txt: Added SelectorFilter to build systems.
  • GNUmakefile.list.am: Ditto.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • css/CSSAllInOne.cpp: Ditto.
  • css/RuleSet.cpp: Changed to use SelectorFilter.

(WebCore::RuleData::RuleData): Ditto.

  • css/SelectorChecker.cpp: Ditto.
  • css/SelectorChecker.h: Ditto.

(SelectorChecker):

  • css/StyleResolver.cpp: Ditto.

(WebCore):
(WebCore::StyleResolver::pushParentElement): Ditto.
(WebCore::StyleResolver::popParentElement): Ditto.
(WebCore::StyleResolver::collectMatchingRulesForList): Ditto.

  • css/StyleResolver.h:

(StyleResolver): Ditto.

8:43 PM Changeset in webkit [138431] by mary.wu@torchmobile.com.cn
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] give url when createWindow
https://bugs.webkit.org/show_bug.cgi?id=105702
RIM bug# 257329

Reviewed by George Staikos.

This is to revert previous commit 575407238c35f1a0fa7ff7dd5dbbf6cc3ece1107
for integration issue of cascade and air, as old app side still use the url
to invoke. It would unrevert after resolving the integration issue.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchCreatePage):

8:38 PM Changeset in webkit [138430] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove unused reference to "class LayerChromium"
https://bugs.webkit.org/show_bug.cgi?id=105502

Patch by Qiankun Miao <qiankun.miao@intel.com> on 2012-12-23
Reviewed by Kentaro Hara.

class LayerChromium doesn't exist any more. Just remove the unused
code.

  • platform/graphics/chromium/Canvas2DLayerBridge.h:
6:57 PM Changeset in webkit [138429] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the Qt build.

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:
6:34 PM Changeset in webkit [138428] by weinig@apple.com
  • 11 edits in trunk/Source/WebKit2

Remove more special cased message receiving code from WebProcess
https://bugs.webkit.org/show_bug.cgi?id=105700

Reviewed by Dan Bernstein.

Makes WebApplicationCacheManager, WebResourceCacheManager and WebDatabaseManager
CoreIPC::MessageReceivers, removes them as special cases in WebProcess.

  • WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:

(WebKit::WebApplicationCacheManager::WebApplicationCacheManager):
(WebKit::WebApplicationCacheManager::getApplicationCacheOrigins):
(WebKit::WebApplicationCacheManager::deleteEntriesForOrigin):
(WebKit::WebApplicationCacheManager::deleteAllEntries):
(WebKit::WebApplicationCacheManager::setAppCacheMaximumSize):

  • WebProcess/ApplicationCache/WebApplicationCacheManager.h:

(WebKit):
(WebApplicationCacheManager):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::clearAllDatabases):
(WebKit::InjectedBundle::setDatabaseQuota):
(WebKit::InjectedBundle::clearApplicationCache):
(WebKit::InjectedBundle::setAppCacheMaximumSize):

  • WebProcess/ResourceCache/WebResourceCacheManager.cpp:

(WebKit::WebResourceCacheManager::WebResourceCacheManager):
(WebKit::WebResourceCacheManager::getCacheOrigins):
(WebKit::WebResourceCacheManager::clearCacheForOrigin):
(WebKit::WebResourceCacheManager::clearCacheForAllOrigins):

  • WebProcess/ResourceCache/WebResourceCacheManager.h:

(WebKit):
(WebResourceCacheManager):

  • WebProcess/WebCoreSupport/WebDatabaseManager.cpp:

(WebKit):
(WebKit::WebDatabaseManager::WebDatabaseManager):
(WebKit::WebDatabaseManager::getDatabasesByOrigin):
(WebKit::WebDatabaseManager::getDatabaseOrigins):
(WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin):
(WebKit::WebDatabaseManager::deleteDatabasesForOrigin):
(WebKit::WebDatabaseManager::deleteAllDatabases):
(WebKit::WebDatabaseManager::setQuotaForOrigin):
(WebKit::WebDatabaseManager::dispatchDidModifyOrigin):
(WebKit::WebDatabaseManager::dispatchDidModifyDatabase):

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:

(WebKit):
(WebDatabaseManager):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::didReceiveMessage):

  • WebProcess/WebProcess.h:

(WebProcess):
(WebKit::WebProcess::applicationCacheManager):
(WebKit::WebProcess::resourceCacheManager):
(WebKit::WebProcess::databaseManager):

5:29 PM Changeset in webkit [138427] by ap@apple.com
  • 39 edits in trunk/Source

<rdar://problem/12808377> Network process should respect cookie accept policy
https://bugs.webkit.org/show_bug.cgi?id=105684

Reviewed by Sam Weinig.

Source/WebCore:

Changed cookie change observer to not use platform strategies, to make it usable
in NetworkProcess. startObservingCookieChanges() now just takes a callback pointer.

  • WebCore.exp.in:
  • platform/CookiesStrategy.h:
  • platform/network/CookieStorage.h:
  • platform/network/cf/CookieStorageCFNet.cpp:

(WebCore::notifyCookiesChangedOnMainThread):
(WebCore::startObservingCookieChanges):

  • platform/network/mac/CookieStorageMac.mm:

(-[WebCookieStorageObjCAdapter notifyCookiesChangedOnMainThread]):
(-[WebCookieStorageObjCAdapter startListeningForCookieChangeNotificationsWithCallback:]):
(WebCore::startObservingCookieChanges):

Source/WebKit/efl:

  • WebCoreSupport/PlatformStrategiesEfl.cpp:
  • WebCoreSupport/PlatformStrategiesEfl.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit/gtk:

  • WebCoreSupport/PlatformStrategiesGtk.cpp:
  • WebCoreSupport/PlatformStrategiesGtk.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit/mac:

  • WebCoreSupport/WebPlatformStrategies.h:
  • WebCoreSupport/WebPlatformStrategies.mm:

CookiesStrategy no longer has notifyCookiesChanged().

Source/WebKit/qt:

  • WebCoreSupport/PlatformStrategiesQt.cpp:
  • WebCoreSupport/PlatformStrategiesQt.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit/win:

  • WebCoreSupport/WebPlatformStrategies.cpp:
  • WebCoreSupport/WebPlatformStrategies.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit/wince:

  • WebCoreSupport/PlatformStrategiesWinCE.cpp:
  • WebCoreSupport/PlatformStrategiesWinCE.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit2:

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initialize): Tell cookie manager which connection to
make calls on. Now that the code can run in either WebProcess or NetworkProcess,
it cannot use WebProcess singleton.
(WebKit::NetworkProcess::didReceiveMessage): Dispatch WebCookieManager messages.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initialize): Tell cookie manager which connection to
make calls on.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didReceiveAuthenticationChallenge): Changed to use
WebContext::networkingProcessConnection() instead of deciding upon the connection here.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didReceiveMessage): Call m_webContext->dispatchMessage),
as WebCookieManagerProxy handlers are registered on the context. This may seem wasteful,
but a lot of registered managers will need the ame handling soon.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::networkingProcessConnection): Added a way to get connection
to whichever process performs networking.
(WebKit::WebContext::removeNetworkProcessProxy): Invalidate cookie manager proxy,
so that expected responses could be cleared.
(WebKit::WebContext::disconnectProcess): Updated a FIXME.

  • UIProcess/WebContext.h: Deleted deprecatedSharedProcess().

(WebKit::WebContext::networkingProcessConnection): Added.
(WebKit::WebContext::sendToNetworkingProcess): Added.
(WebKit::WebContext::sendToNetworkingProcessRelaunchingIfNecessary): Added.

  • UIProcess/WebCookieManagerProxy.cpp:

(WebKit::WebCookieManagerProxy::shouldTerminate): Should not prevent WebProcess
termination when NetworkProcess is in use.
(WebKit::WebCookieManagerProxy::getHostnamesWithCookies): Removed a useless ASSERT
that neiter documents expectations nor helps find bugs. Send a message to correct
process, whether WebProcess or NetworkProcess.
(WebKit::WebCookieManagerProxy::deleteCookiesForHostname): Ditto.
(WebKit::WebCookieManagerProxy::deleteAllCookies): Ditto.
(WebKit::WebCookieManagerProxy::startObservingCookieChanges): Ditto.
(WebKit::WebCookieManagerProxy::stopObservingCookieChanges): Ditto.
(WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): Ditto.
(WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy): Ditto.

  • WebProcess/Cookies/WebCookieManager.h:
  • WebProcess/Cookies/WebCookieManager.cpp: Made the class usable in either WebProcess

or NetworkProcess.
(WebKit::WebCookieManager::setConnection): WebCookieManager now remembers which
connection to talk back on.
(WebKit::WebCookieManager::didReceiveMessage): Added an assertion that stored connection
matches the one being used to reciev messages.
(WebKit::WebCookieManager::getHostnamesWithCookies): Use the stored connection to
send a reply.
(WebKit::WebCookieManager::startObservingCookieChanges): Pass a callback function,
so that WebCore doesn't have to use a platform strategy.
(WebKit::WebCookieManager::cookiesDidChange): The new callback.
(WebKit::WebCookieManager::dispatchCookiesDidChange): Use the stored connection.
(WebKit::WebCookieManager::getHTTPCookieAcceptPolicy): Use the stored connection.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

Removed notifyCookiesChanged() which is no longer part of CookiesStrategy.

1:03 PM Changeset in webkit [138426] by weinig@apple.com
  • 10 edits in trunk/Source/WebKit2

Make CustomProtocolManager a MessageReceiver to remove more special casing
https://bugs.webkit.org/show_bug.cgi?id=105682

Reviewed by Dan Bernstein.

To avoid storing a Connection in CustomProtocolManager, which is not a great idea without
it being the Connection::Client and therefore getting death notifications, I also made
ChildProcess a MessageSender so that extensions to it, like CustomProtocolManager, can
easily send messages to the parent process.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
Initialize the shared CustomProtocolManager, which will add it to the MessageReceiverMap in
the ChildProcess.

(WebKit::NetworkProcess::didReceiveMessage):
Remove the special case for CustomProtocolManager.

(WebKit::NetworkProcess::initializeNetworkProcess):
Call connectionEstablished on the CustomProtocolManager to make it start working as a NSURLProtocol handler.

  • NetworkProcess/NetworkProcess.h:

Add overrides necessary for MessageSender.

  • PluginProcess/PluginProcess.h:

Ditto.

  • Shared/ChildProcess.h:

(ChildProcess):
Make ChildProcess a MessageSender.

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:

(CustomProtocolManager):
(WebKit::CustomProtocolManager::childProcess):

  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(-[WKCustomProtocol startLoading]):
(-[WKCustomProtocol stopLoading]):
(WebKit::CustomProtocolManager::CustomProtocolManager):
(WebKit::CustomProtocolManager::initialize):
(WebKit::CustomProtocolManager::connectionEstablished):
Make CustomProtocolManager a MessageReceiver and split initialization and the time when it can
start acting as protocol handler as these happen at different times now. It also now stores a
ChildProcess rather than a Connection.

  • SharedWorkerProcess/SharedWorkerProcess.h:

Add overrides necessary for MessageSender.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
Initialize the shared CustomProtocolManager, which will add it to the MessageReceiverMap in
the ChildProcess.

(WebKit::WebProcess::didReceiveMessage):
Remove the special case for CustomProtocolManager.

(WebKit::WebProcess::initializeCustomProtocolManager):
Call connectionEstablished on the CustomProtocolManager to make it start working as a NSURLProtocol handler.

  • WebProcess/WebProcess.h:

Add overrides necessary for MessageSender.

12:22 PM Changeset in webkit [138425] by Martin Robinson
  • 5 edits in trunk

[GTK] Remove plugin process configuration option
https://bugs.webkit.org/show_bug.cgi?id=105564

Reviewed by Carlos Garcia Campos.

Remove the --enable-plugin-process configuration option, opting instead to
always build the plugin process when building WebKit2. It isn't very interesting
for downstream to enable or disable the plugin process. It should always be
enabled for WebKit2 and it's better for us not to have to keep a disabled plugin
process building. Additionally, the in-process plugin isn't functional, since
plugins depend on GTK+ 2 and WebKit2 depends on GTK+ 3.

.:

  • configure.ac: Remove the configuration option.

Source/WebKit2:

  • GNUmakefile.am: Remove the option.
  • GNUmakefile.list.am: Remote the option.
9:52 AM Changeset in webkit [138424] by jpetsovits@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Specify tile usage enum for backingstore tiles.
https://bugs.webkit.org/show_bug.cgi?id=105688
RIM PR 262120

Reviewed by George Staikos.

This enables us to have separate tile sizes for
backingstore / root layer purposes and generic layers.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::tileSize):

9:35 AM Changeset in webkit [138423] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding crashing expectations for two tests that constantly crash
in debug builds.

  • platform/gtk/TestExpectations:
9:28 AM Changeset in webkit [138422] by danw@gnome.org
  • 4 edits
    1 add in trunk

Add a patch to fix libxml2 2.9.0 regression
https://bugs.webkit.org/show_bug.cgi?id=104494

Reviewed by Martin Robinson.

  • gtk/jhbuild.modules:
  • gtk/patches/libxml2-2.9.0-dtd.patch: patch from upstream

Unskip tests that were failing in libxml 2.9.0
https://bugs.webkit.org/show_bug.cgi?id=104494

Reviewed by Martin Robinson.

Added a patch from upstream to the jhbuild config to make all but
one of these pass again; the remaining one fails for a different
reason and is being tracked in a different bug.

  • platform/gtk/TestExpectations:
9:04 AM Changeset in webkit [138421] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

[Qt][Mac] Unreviewed fix the build after r138413
https://bugs.webkit.org/show_bug.cgi?id=105686

Don't use a temporary const reference so the compiler doesn't make a copy.
An example compile error (clang):
Source/WebCore/loader/CookieJar.cpp:73:67: error: copying parameter of type 'WebCore::NetworkStorageSession' invokes deleted constructor

return platformStrategies()->cookiesStrategy()->cookiesForDOM(SESSION(document), document->firstPartyForCookies(), url);

  • loader/CookieJar.cpp:

(WebCore::cookies):
(WebCore::setCookies):
(WebCore::cookiesEnabled):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::getRawCookies):
(WebCore::deleteCookie):

6:59 AM Changeset in webkit [138420] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening

Rebaseline fast/js/global-constructors.html after
r138393.

  • platform/efl/fast/js/global-constructors-expected.txt:
6:13 AM Changeset in webkit [138419] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed Xmas gardening after r138395.

  • platform/qt-5.0/fast/js/global-constructors-expected.txt:
5:16 AM Changeset in webkit [138418] by allan.jensen@digia.com
  • 2 edits in trunk/Tools

Unreviewed update of status to reviewer.

  • Scripts/webkitpy/common/config/committers.py:
1:28 AM Changeset in webkit [138417] by tkent@chromium.org
  • 7 edits in branches/chromium/1312

Merge 138365

Fix typing zero into multiple field input
https://bugs.webkit.org/show_bug.cgi?id=105501

Reviewed by Kent Tamura.

Source/WebCore:

We have a couple of problems when handling zero in a multiple fields
element.

  1. Typing '02' into a month field will set '12'.
  2. Typing '0' into 12 hour hour field will set '12' and move to the focus to the next field.

This change adds a type ahead buffer so we can handle these cases
properly. If the value in the type ahead buffer is valid we set it so a
change event will fire.

Added tests to *-multiple-fields-keyboard-events.html.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::didBlur): Clear the type ahead
buffer. handleKeyboardEvent() won't set the type ahead value if it is
not in range, so we set the value here.
(WebCore::DateTimeNumericFieldElement::handleKeyboardEvent):
(WebCore::DateTimeNumericFieldElement::setEmptyValue): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::setValueAsInteger):
(WebCore::DateTimeNumericFieldElement::stepDown): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::stepUp): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::typeAheadValue): Returns integer
value for the type ahead characters.
(WebCore):
(WebCore::DateTimeNumericFieldElement::visibleValue): If we have type
ahead characters, show that.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):

LayoutTests:

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events.html:

TBR=keishi@webkit.org
BUG=crbug.com/167020
Review URL: https://codereview.chromium.org/11665021

12:53 AM Changeset in webkit [138416] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK][jhbuild] Bump GStreamer to 1.0.4
https://bugs.webkit.org/show_bug.cgi?id=105640

Reviewed by Martin Robinson.

  • gtk/jhbuild.modules: Update GStreamer modules to 1.0.4.
Note: See TracTimeline for information about the timeline view.