Unreviewed build fix; remove unintentional semicolon.

* Modules/webaudio/AudioScheduledSourceNode.cpp:
(WebCore::AudioScheduledSourceNode::finish):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150933 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove leftover files for ENABLE_PAGE_POPUP and ENABLE_CALENDAR_PICKER
https://bugs.webkit.org/show_bug.cgi?id=116999

Reviewed by Anders Carlsson.

.:

* ManualTests/forms/calendar-picker-crash-by-type-change.html: Removed.
* ManualTests/forms/calendar-picker.html: Removed.
* ManualTests/forms/color-suggestion-picker.html: Removed.
* ManualTests/forms/date-suggestion-picker.html: Removed.

Source/WebCore:

* Resources/pagepopups/colorSuggestionPicker.css: Removed.
* Resources/pagepopups/colorSuggestionPicker.js: Removed.
* Resources/pagepopups/pickerCommon.css: Removed.
* Resources/pagepopups/pickerCommon.js: Removed.
* Resources/pagepopups/suggestionPicker.css: Removed.
* Resources/pagepopups/suggestionPicker.js: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150934 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add more accurate activity state tracking
https://bugs.webkit.org/show_bug.cgi?id=116893

Reviewed by Gavin Barraclough.

Source/WebCore:

Add a hysteresis to Page activity throttling.  We do this
through a PageThrottler class that now handles entering and
exiting throttling state, and adds a hysteresis to we can
limit the amount of on/off bouncing on the throttle.

Media elements now make use of this to disable timer throttling
while they are playing, and plugins use it to momentarily bounce
from throttled to unthrottled state.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::~HTMLMediaElement):
(WebCore::HTMLMediaElement::pageThrottlerIfPossible):
(WebCore):
(WebCore::HTMLMediaElement::playInternal):
(WebCore::HTMLMediaElement::pauseInternal):
* html/HTMLMediaElement.h:
(WebCore):
* html/MediaController.cpp:
(MediaController::unpause):
* page/ChromeClient.h:
(WebCore::ChromeClient::incrementActivePageCount):
(WebCore::ChromeClient::decrementActivePageCount):
(ChromeClient):
* page/Page.cpp:
(WebCore::Page::Page):
(WebCore::Page::~Page):
(WebCore::Page::setThrottled):
* page/Page.h:
(WebCore):
(Page):
(WebCore::Page::pageThrottler):
* page/PageThrottleState.h: Added.
* page/PageThrottler.cpp: Added.
(WebCore):
(WebCore::PageThrottler::PageThrottler):
(WebCore::PageThrottler::~PageThrottler):
(WebCore::PageThrottler::clearPage):
(WebCore::PageThrottler::throttlePage):
(WebCore::PageThrottler::unthrottlePage):
(WebCore::PageThrottler::setThrottled):
(WebCore::PageThrottler::preventThrottling):
(WebCore::PageThrottler::allowThrottling):
(WebCore::PageThrottler::stopThrottleHysteresisTimer):
(WebCore::PageThrottler::reportInterestingEvent):
(WebCore::PageThrottler::startThrottleHysteresisTimer):
(WebCore::PageThrottler::throttleHysteresisTimerFired):
* page/PageThrottler.h: Added.
(WebCore):
(PageThrottler):
(WebCore::PageThrottler::create):
(WebCore::PageThrottler::shouldThrottleAnimations):
(WebCore::PageThrottler::shouldThrottleTimers):

Source/WebKit2:

This extends the logic in WebCore from a Page to Process
granularity, so we will avoid lowering the child process
priority if there is active content.  This also plumbs in
the logic to allow plugins to report that they have done
something "interesting".  Currently this is somewhat conservative
but even this is sufficient to fix some stuttering issues
that we've seen.

* Shared/ChildProcess.cpp:
(WebKit::ChildProcess::ChildProcess):
* Shared/ChildProcess.h:
(ChildProcess):
(WebKit::ChildProcess::processSuppressionEnabled):
(WebKit::ChildProcess::incrementActiveTaskCount):
(WebKit::ChildProcess::decrementActiveTaskCount):
* Shared/mac/ChildProcessMac.mm:
(WebKit):
(WebKit::ChildProcess::setProcessSuppressionEnabledInternal):
(WebKit::ChildProcess::setProcessSuppressionEnabled):
(WebKit::ChildProcess::incrementActiveTaskCount):
(WebKit::ChildProcess::decrementActiveTaskCount):
(WebKit::ChildProcess::suspensionHysteresisTimerFired):
* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::NPRuntimeObjectMap):
(WebKit::NPRuntimeObjectMap::evaluate):
* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
(WebCore):
(NPRuntimeObjectMap):
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::PluginView):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::incrementActivePageCount):
(WebKit):
(WebKit::WebChromeClient::decrementActivePageCount):
* WebProcess/WebCoreSupport/WebChromeClient.h:
(WebChromeClient):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150935 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WKViews using shouldClipToVisibleRect=YES should respect prepareContentInRect: if called
https://bugs.webkit.org/show_bug.cgi?id=116989
<rdar://problem/14007440>

Reviewed by Anders Carlsson.

* UIProcess/API/mac/WKView.mm:
(-[WKView prepareContentInRect:]):
If prepareContentInRect: is called, save the rect and set a flag so we know we should use it.

(-[WKView _updateViewExposedRect]):
Give the WebPage (and later the DrawingArea) the union of the rect handed to prepareContentInRect:
and the WKView's visibleRect, if we're in that mode, so that applications that do their own scrolling
can cause tiles to be created in currently offscreen views (for overdraw).

(-[WKView setFrameSize:]):
(-[WKView _updateWindowAndViewFrames]):
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
(-[WKView enableFrameSizeUpdates]):
(-[WKView setShouldClipToVisibleRect:]):
(-[WKView forceAsyncDrawingAreaSizeUpdate:]):
Use [_updateViewExposedRect].


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