Web Inspector: Breakpoints are not correctly restored on reload.
https://bugs.webkit.org/show_bug.cgi?id=94209

Reviewed by Pavel Feldman.

Source/WebCore:

BreakpointManager now resets uiLocations on workspace reset (was doing it on GlobalObjectCleared).
Breakpoint manager now calls restoreBreakpoints automatically when uiSourceCode is added to workspace.

* inspector/front-end/BreakpointManager.js:
(WebInspector.BreakpointManager):
(WebInspector.BreakpointManager.prototype._uiSourceCodeAdded):
(WebInspector.BreakpointManager.prototype._workspaceReset):
* inspector/front-end/UISourceCode.js:
(WebInspector.UISourceCode):
* inspector/front-end/inspector.js:

LayoutTests:

restoreBreakpoints is not called inside the test anymore to test that it is called automatically.

* inspector/debugger/breakpoint-manager-expected.txt:
* inspector/debugger/breakpoint-manager.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125767 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Update pixel test expectations for layout test fast/dom/
https://bugs.webkit.org/show_bug.cgi?id=94177

Unreviewed, rebaseline.

Some tests have wrong pixel test results. They should be replaced.

And, two tests related image seem to fail. Alt text should be displayed
if src attribute is not set.

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-08-16

* platform/efl/TestExpectations: Added two tests related to display alt text without src.
* platform/efl/fast/dom/34176-expected.png:
* platform/efl/fast/dom/Element/class-attribute-whitespace-expected.png:
* platform/efl/fast/dom/HTMLElement/bdo-expected.png:
* platform/efl/fast/dom/HTMLHeadElement/head-link-style-href-check-expected.png:
* platform/efl/fast/dom/HTMLLinkElement/pending-stylesheet-count-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-optimums-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.png:
* platform/efl/fast/dom/HTMLMeterElement/meter-styles-expected.png:
* platform/efl/fast/dom/HTMLObjectElement/vspace-hspace-as-number-expected.png:
* platform/efl/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png:
* platform/efl/fast/dom/HTMLTableElement/colSpan-expected.png:
* platform/efl/fast/dom/HTMLTableElement/createCaption-expected.png:
* platform/efl/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
* platform/efl/fast/dom/Range/surroundContents-1-expected.png:
* platform/efl/fast/dom/Window/open-existing-pop-up-blocking-expected.png:
* platform/efl/fast/dom/blur-contenteditable-expected.png:
* platform/efl/fast/dom/children-nodes-expected.png:
* platform/efl/fast/dom/clone-contents-0-end-offset-expected.png:
* platform/efl/fast/dom/css-rule-functions-expected.png:
* platform/efl/fast/dom/focus-contenteditable-expected.png:
* platform/efl/fast/dom/gc-10-expected.png:
* platform/efl/fast/dom/importNodeHTML-expected.png:
* platform/efl/fast/dom/importNodeXML-expected.png:
* platform/efl/fast/dom/row-inner-text-expected.png:
* platform/efl/fast/dom/scroll-reveal-left-overflow-expected.png:
* platform/efl/fast/dom/scroll-reveal-top-overflow-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125768 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: enable instrumentation of platform code
https://bugs.webkit.org/show_bug.cgi?id=94125

Reviewed by Pavel Feldman.

- add PlatformInstrumentation class that exposes instrumentation methods that may be used by code under WebCore/platform;
- move TRACE_EVENT_XXX() macros into PlatformInstrumentation.h to minimize instrumentation hassle in the client code;
- implement PlatformInstrumentationClient by InspectorTimelineAgent;
- only install PlatformInstrumentationClient when we have outer events for which we expect low-level details

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::willDecodeImage): to be implemented by subsequent change;
(WebCore::InspectorTimelineAgent::didDecodeImage): to be implemented by subsequent change;
(WebCore::InspectorTimelineAgent::willResizeImage): to be implemented by subsequent change;
(WebCore::InspectorTimelineAgent::didResizeImage): to be implemented by subsequent change;
(WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):
(WebCore::InspectorTimelineAgent::clearRecordStack):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
* platform/PlatformInstrumentation.cpp: Added.
(WebCore):
(WebCore::PlatformInstrumentation::setClient):
* platform/PlatformInstrumentation.h: Added.
(WebCore):
(PlatformInstrumentationClient):
(PlatformInstrumentation):
(WebCore::PlatformInstrumentation::hasClient):
(WebCore::PlatformInstrumentation::willDecodeImage):
(WebCore::PlatformInstrumentation::didDecodeImage):
(WebCore::PlatformInstrumentation::willResizeImage):
(WebCore::PlatformInstrumentation::didResizeImage):
* platform/graphics/skia/NativeImageSkia.cpp:
(WebCore::NativeImageSkia::resizedBitmap): added calls to PlatformInstrumentation, removed TRACE_EVENT();
* platform/image-decoders/bmp/BMPImageDecoder.cpp:
(WebCore::BMPImageDecoder::frameBufferAtIndex): added calls to PlatformInstrumentation;
(WebCore::BMPImageDecoder::decode): removed TRACE_EVENT()
* platform/image-decoders/gif/GIFImageDecoder.cpp:
(WebCore::GIFImageDecoder::frameBufferAtIndex): added calls to PlatformInstrumentation;
(WebCore::GIFImageDecoder::decode): removed TRACE_EVENT()
* platform/image-decoders/ico/ICOImageDecoder.cpp:
(WebCore::ICOImageDecoder::frameBufferAtIndex): added calls to PlatformInstrumentation;
(WebCore::ICOImageDecoder::decode): removed TRACE_EVENT()
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(WebCore::JPEGImageDecoder::frameBufferAtIndex): added calls to PlatformInstrumentation;
(WebCore::JPEGImageDecoder::decode): removed TRACE_EVENT()
* platform/image-decoders/png/PNGImageDecoder.cpp:
(WebCore::PNGImageDecoder::frameBufferAtIndex): added calls to PlatformInstrumentation;
* platform/image-decoders/webp/WEBPImageDecoder.cpp:
(WebCore::WEBPImageDecoder::frameBufferAtIndex): added calls to PlatformInstrumentation;
(WebCore::WEBPImageDecoder::decode): removed TRACE_EVENT();
* inspector/InspectorInstrumentation.cpp: removed orphan event support;
(WebCore):
* inspector/InspectorInstrumentation.h: ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125769 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] WebGL and Canvas fail to display after being restored from page cache
https://bugs.webkit.org/show_bug.cgi?id=94105

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-08-16
Reviewed by George Staikos.

The EGLImage was being destroyed when releasing layer resources on the
compositing thread, but the WebKit thread layer never found out and
failed to create a new image.

Fixed by extending the release layer resources mechanism to also make a
pass on the WebKit thread so that thread's layers have a chance to
delete their textures and related resources.

Source/WebCore:

WebGL and canvas layers now take this opportunity to release their
textures so the EGLImage gets recreated when compositing commits
resume.

The only detail that deserves extra explanation is the ownership of the
EGLImage.

Since the EGLImage is created in updateTextureContentsIfNeeded() and
that one is always followed by commitPendingTextureUploads() which
transfers the EGLImage to the compositing thread layer's custody, the
EGLImage currently referenced by EGLImageLayerWebKitThread::m_image
should never be deleted by the WebKit thread layer.

Thus all we have to do in deleteFrontBuffer() is to set the m_image
member to 0 so the image gets recreated on the next commit. It will be
deleted by the part of releaseLayerResources() that executes on the
compositing thread (which, if you recall, was the original source of
this bug).

Reviewed internally by Filip Spacek.

PR 192899

Not currently testable by the BlackBerry testing infrastructure.

* platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
(WebCore::CanvasLayerWebKitThread::deleteTextures):
(WebCore):
* platform/graphics/blackberry/CanvasLayerWebKitThread.h:
(CanvasLayerWebKitThread):
* platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:
(WebCore::EGLImageLayerWebKitThread::~EGLImageLayerWebKitThread):
(WebCore::EGLImageLayerWebKitThread::deleteFrontBuffer):
* platform/graphics/blackberry/EGLImageLayerWebKitThread.h:
(EGLImageLayerWebKitThread):
* platform/graphics/blackberry/LayerWebKitThread.cpp:
(WebCore::LayerWebKitThread::releaseLayerResources):
(WebCore):
* platform/graphics/blackberry/LayerWebKitThread.h:
(LayerWebKitThread):
(WebCore::LayerWebKitThread::deleteTextures):
* platform/graphics/blackberry/WebGLLayerWebKitThread.cpp:
(WebCore::WebGLLayerWebKitThread::~WebGLLayerWebKitThread):
(WebCore::WebGLLayerWebKitThread::deleteTextures):
(WebCore):
* platform/graphics/blackberry/WebGLLayerWebKitThread.h:
(WebGLLayerWebKitThread):

Source/WebKit/blackberry:

Reviewed internally by Filip Spacek.

PR 192899

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPagePrivate::releaseLayerResources):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::releaseLayerResourcesCompositingThread):
(BlackBerry::WebKit::WebPagePrivate::suspendRootLayerCommit):
* Api/WebPage_p.h:
(WebPagePrivate):
* WebKitSupport/FrameLayers.cpp:
(BlackBerry::WebKit::FrameLayers::releaseLayerResources):
(WebKit):
* WebKitSupport/FrameLayers.h:
(FrameLayers):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125770 268f45cc-cd09-0410-ab3c-d52691b4dbfc