summaryrefslogtreecommitdiffstats
path: root/content/renderer
Commit message (Collapse)AuthorAgeFilesLines
* Disable the idle handler timer when no action is expected.qsr@chromium.org2014-01-202-3/+17
| | | | | | | | | | | | | On Android, the webkit timer are disabled after the application is in the background for 5 minutes. When this happens, there is no reason to let the idle handler timer run indefinitly. This CL disables the timer once v8 reported that it will not take any further action. BUG=333875 Review URL: https://codereview.chromium.org/136903002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245908 0039d316-1c4b-4281-b951-d872f2087c98
* Resolve override/overload conflict in WebPluginImpl.eustas@chromium.org2014-01-202-17/+94
| | | | | | | | | | | | | | WebPluginImpl implements WebPlugin and WebURLLoaderClient interfaces. Both interfaces have "didFinishLoading" method. Because of this it is impossible to upgrade signature of the method. (Clang reports error). BUG= Review URL: https://codereview.chromium.org/136793024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245878 0039d316-1c4b-4281-b951-d872f2087c98
* Fix chrome.webRequest.onBeforeRequest for requests coming from NPAPI plugin ↵jam@chromium.org2014-01-193-3/+6
| | | | | | | | | | | processes. BUG=332481 R=jochen@chromium.org Review URL: https://codereview.chromium.org/132233022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245847 0039d316-1c4b-4281-b951-d872f2087c98
* Add gpu::MailboxHolder to hold state for a gpu::Mailboxsheu@chromium.org2014-01-188-54/+59
| | | | | | | | | | | | | | | | | | | | | | gpu::Mailbox by itself can hold only a texture id, but in common usage it comes with texture target and syncpoint information for cross-context sharing. To reduce repetition of this pattern, gpu::MailboxHolder holds: * a gpu::Mailbox * a GL texture target * a syncpoint index Refactor other classes to use a gpu::MailboxHolder instead of separate gpu::Mailbox and associated state. Syncpoints are created with uint32 indices; make sure all uses of syncpoints use uint32. BUG=None TEST=local build, unittests on CrOS snow, desktop Linux Review URL: https://codereview.chromium.org/105743004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245730 0039d316-1c4b-4281-b951-d872f2087c98
* Let the browser know the end of flingwangxianzhu@chromium.org2014-01-1711-19/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Android, resize event caused by showing/hiding top controls may be expensive and cause janky fling if it is sent before the end of fling. Let the browser know the end of fling so that the browser can delay the resize event. As we have not resolved the issue of raciness between the main thread and the compositor thread, and between the renderer process and the browser process, about the sequence of fling events and notifications, for now we don't use the notification to update the fling status in ContentViewGestureHandler and GestureEventFilter. The DidStopFlinging notification is sent along the following path: - Renderer side: - compositor-thread-flinging: InputHandlerProxy::CancelCurrentFling() -> InputHandlerWrapper::DidStopFlinging() -> InputHandlerManager::DidStopFlinging() -> InputEventFilter::DidStopFlinging() -> IPC::Sender::Send(ViewHostMsg_DidStopFlinging) - main-thread-flinging (existing except the steps same as compositor-thread-flinging): WebViewImpl::endActiveFlingAnimation() -> RenderWidgetCompositor::didStopFlinging() -> LayerTreeHost::didStopFlinging() -> ThreadProxy::MainThreadHasStoppedFlinging() -> LayerTreeHostImpl::MainThreadHasStoppedFlinging() -> InputHandlerProxy::MainThreadHasStoppedFlinging() then same as compositor-thread-flinging[1:] - Browser side: RenderWidgetHostImpl::OnMessageReceived(ViewHostMsg_DidStopFlinging) -> RenderWidgetHostImpl::OnFlingingStopped() // Android only. No-op on other platforms -> RenderWidgetHostViewAndroid::DidStopFlinging() -> ContentViewCoreImpl::DidStopFlinging() -> ContentViewCore.onNativeFlingStopped() // Java -> ContentViewClient.onFlingStopped() then downstream embedder code BUG=244736 Review URL: https://codereview.chromium.org/131373004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245624 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 245445 "Unifies LayerTreeHost::SetNeedsUpdateLayers and S..."mark@chromium.org2014-01-175-64/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Speculative. This may have caused flakiness on multiple bots. See bug 335582. > Unifies LayerTreeHost::SetNeedsUpdateLayers and SetNeedsAnimate -- V2 > > [2/2] Unifies LayerTreeHost::SetNeedsUpdateLayers and SetNeedsAnimate > > They basically do the same thing except that SetNeedsAnimate makes the next > commit non-cancellable. However there is really no reason why SetNeedsAnimate > need to enforce a commit even if no tiles are updated and no layer properties > changed. > > SetNeedsAnimate is thus merged into SetNeedsUpdateLayers. The proper use of > it is when there are potential layout/tile changes, we can use it to defer > calculation until the next frame. A commit will be scheduled but can be > cancelled if no updates are needed after calculation. > > This part of the patch changes code behavior slightly. > SingleThreadProxy::SetNeedsUpdateLayers was originally implemented as > RenderWidget::ScheduleComposite but now it is RenderWidget::ScheduleAnimation. > ThreadProxy::SetNeedsAnimate was non-cancellable but is now cancellable. > > [1/2] Cleanup RenderWidget::scheduleComposite/scheduleAnimation > > scheduleComposite has been renamed to ScheduleComposite as it is no longer > a part of WebWidgetClient API. > > scheduleAnimation has been renamed to ScheduleAnimation. The semantics is to > schedule a composite and also (potentially) animating WebWidget. > > A new WebWidgetClient API scheduleUpdate has been added, to replace the old > scheduleAnimation. The semantics is to notify the embedder that something in > the WebWidget may change in 0 seconds. (i.e. it is allowed to be called > during a redraw, in such case another redraw will be scheduled after frame > delay. > > This part of the patch should not change code behavior. > > BUG=316929 > R=danakj,jamesr,jochen > > Review URL: https://codereview.chromium.org/133263004 TBR=trchen@chromium.org BUG=335582 Review URL: https://codereview.chromium.org/141833002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245528 0039d316-1c4b-4281-b951-d872f2087c98
* Shared Raster Worker Threadssohan.jyoti@samsung.com2014-01-172-10/+18
| | | | | | | | | | | | | | This CL will share worker pool threads across LTHI for a single process. Idea is to reduce the number of threads used per process. For this, we implement WorkerPool::Inner as singleton, and LTHI/WorkerPool would share the same instance per process. Reviewer: reveman@chromium.org BUG=239423 Review URL: https://codereview.chromium.org/73923003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245526 0039d316-1c4b-4281-b951-d872f2087c98
* Currently duration is simply returned or changed without checking whether ↵amogh.bihani@samsung.com2014-01-171-11/+7
| | | | | | | | the stream is seekable or not. MediaSourcePLayer deems a stream unseekable if the duration is more than 2^31 msec. I'm adding that check here as per the TODO. Review URL: https://codereview.chromium.org/136523002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245508 0039d316-1c4b-4281-b951-d872f2087c98
* Remove Chrome for TV code.ycheo@chromium.org2014-01-1715-1131/+19
| | | | | | | | BUG=334126 Review URL: https://codereview.chromium.org/136343002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245449 0039d316-1c4b-4281-b951-d872f2087c98
* Unifies LayerTreeHost::SetNeedsUpdateLayers and SetNeedsAnimate -- V2trchen@chromium.org2014-01-175-40/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [2/2] Unifies LayerTreeHost::SetNeedsUpdateLayers and SetNeedsAnimate They basically do the same thing except that SetNeedsAnimate makes the next commit non-cancellable. However there is really no reason why SetNeedsAnimate need to enforce a commit even if no tiles are updated and no layer properties changed. SetNeedsAnimate is thus merged into SetNeedsUpdateLayers. The proper use of it is when there are potential layout/tile changes, we can use it to defer calculation until the next frame. A commit will be scheduled but can be cancelled if no updates are needed after calculation. This part of the patch changes code behavior slightly. SingleThreadProxy::SetNeedsUpdateLayers was originally implemented as RenderWidget::ScheduleComposite but now it is RenderWidget::ScheduleAnimation. ThreadProxy::SetNeedsAnimate was non-cancellable but is now cancellable. [1/2] Cleanup RenderWidget::scheduleComposite/scheduleAnimation scheduleComposite has been renamed to ScheduleComposite as it is no longer a part of WebWidgetClient API. scheduleAnimation has been renamed to ScheduleAnimation. The semantics is to schedule a composite and also (potentially) animating WebWidget. A new WebWidgetClient API scheduleUpdate has been added, to replace the old scheduleAnimation. The semantics is to notify the embedder that something in the WebWidget may change in 0 seconds. (i.e. it is allowed to be called during a redraw, in such case another redraw will be scheduled after frame delay. This part of the patch should not change code behavior. BUG=316929 R=danakj,jamesr,jochen Review URL: https://codereview.chromium.org/133263004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245445 0039d316-1c4b-4281-b951-d872f2087c98
* telemetry: add smoothness.*.key_silk_cases benchmarksernstm@chromium.org2014-01-171-2/+1
| | | | | | | | | | | | | | | Add two benchmark variants of smoothness with key_silk_cases. smoothness.disable_gpu_rasterization.key_silk_cases: run with GPU rasterization explicitly diabled (but use impl-side painting) smoothness.enable_gpu_rasterization.key_silk_cases: run with GPU rasterization enabled (implies impl-side painting). R=nduca@chromium.org BUG= Review URL: https://codereview.chromium.org/135223002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245440 0039d316-1c4b-4281-b951-d872f2087c98
* [webcrypto] Add RSASSA-PKCS1-v1_5 sign and verify for NSS.padolph@netflix.com2014-01-174-116/+631
| | | | | | | | | BUG=245025 TEST=content_unittests --gtest_filter="WebCryptoImpl*" Review URL: https://codereview.chromium.org/68303009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245430 0039d316-1c4b-4281-b951-d872f2087c98
* Fix mac build breakage on r245418jschuh@chromium.org2014-01-171-5/+5
| | | | | | | | TBR=bbudge@chromium.org Review URL: https://codereview.chromium.org/131493006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245419 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor base/safe_numerics.hjschuh@chromium.org2014-01-175-11/+11
| | | | | | | | | | | | | | | * Move into base/numerics subdirectory. * Rename files for clarity. * Add owners. * Rename checked_numeric_cast to checked_cast. * Fixup callsites and include paths. BUG=332611 R=brettw@chromium.org, jam@chromium.org Review URL: https://codereview.chromium.org/141113003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245418 0039d316-1c4b-4281-b951-d872f2087c98
* Roll libjingle+webrtc to r5397.mallinath@chromium.org2014-01-161-8/+0
| | | | | | | | | R=sergeyu@chromium.org, wjia@chromium.org TBR=phoglund@chromium.org Review URL: https://codereview.chromium.org/134633004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245355 0039d316-1c4b-4281-b951-d872f2087c98
* New test fixture for DeviceMotionEventPump to avoid PlatformThread::Sleeptimvolodine@chromium.org2014-01-161-65/+59
| | | | | | | | | | | | Implement a test fixture in DeviceMotionEventPumpTest to consistently test DeviceMotionEventPump. The new implementation also avoids calls to PlatformThread::Sleep() since it is generally undesirable in tests. BUG=333928 Review URL: https://codereview.chromium.org/134073002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245286 0039d316-1c4b-4281-b951-d872f2087c98
* <webview>: Speculative crash fixfsamuel@chromium.org2014-01-161-2/+2
| | | | | | | | | | This CL also does a bit of cleanup moving the WeakPtrFactory to the bottom of the member variables of a couple of BrowserPlugin/webview classes. BUG=334606 Review URL: https://codereview.chromium.org/139603002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245275 0039d316-1c4b-4281-b951-d872f2087c98
* Cleaned up the WebRtcAudioCapturer a bit.xians@chromium.org2014-01-1613-315/+288
| | | | | | | | | | | | This CL cleaned up the capturer a bit by moving the initialize() method to private and do NOT allow re-initializing the capturer when a new getUserMedia is called. Instead, it creates a new capturer for each getUserMedia. BUG=333285 TEST=content_unittests Review URL: https://codereview.chromium.org/133903004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245205 0039d316-1c4b-4281-b951-d872f2087c98
* Update WebContentDecryptionModuleSessionImpl to use latest EME WD eventsjrummell@chromium.org2014-01-161-8/+7
| | | | | | | | | | The EME event names in Blink have been renamed, so update the calls to use the new names. BUG=224786 Review URL: https://codereview.chromium.org/138753003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245180 0039d316-1c4b-4281-b951-d872f2087c98
* [PPAPI] Implement media stream video track APIpenghuang@chromium.org2014-01-165-5/+399
| | | | | | | | BUG=330851 Review URL: https://codereview.chromium.org/128683003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245150 0039d316-1c4b-4281-b951-d872f2087c98
* Start using FocusedNodedChanged to restartInput.aurimas@chromium.org2014-01-162-4/+31
| | | | | | | | | | | | Android requires us to call restart input when input node changes. Previously we relied on onHandleGesture which is not the right way to do it. BUG=242715 Review URL: https://codereview.chromium.org/56643003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245130 0039d316-1c4b-4281-b951-d872f2087c98
* Fix an issue that surface texture is not reestablished after video gets ↵qinmin@chromium.org2014-01-161-0/+3
| | | | | | | | | | | | | | | interrupted When video gets interrupted by audio focus change, we sent an DidMediaPlayerPause IPC to WebMediaPlayer, and release the mediaplayer at the same time. However, when we want to resume the playback, WebMediaPlayer does not know that the mediaplayer needs to reestablish the surface texture. Instead of sending DidMediaPlayerPause, we should send MediaPlayerReleased IPC. See internal b/12362468 BUG= Review URL: https://codereview.chromium.org/137103004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245097 0039d316-1c4b-4281-b951-d872f2087c98
* Pass MIME type parameter for EME WD 'needkey'jrummell@chromium.org2014-01-161-1/+2
| | | | | | | | | | | Pass the MIME type of the media data so that it is available in the EME WD 'needkey' event. BUG=224786 Review URL: https://codereview.chromium.org/135053005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245071 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a test code memory leak in MediaStreamVideoSourceTest.DeliverVideoFrame.ronghuawu@chromium.org2014-01-161-0/+1
| | | | | | | | | | | | Without the change the VideoCapturer will leak. http://build.chromium.org/p/chromium.memory.fyi/builders/Linux%20Tests%20%28valgrind%29%281%29/builds/31136/steps/memory%20test%3A%20content/logs/stdio BUG=334871 R=wjia@chromium.org Review URL: https://codereview.chromium.org/139883005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245037 0039d316-1c4b-4281-b951-d872f2087c98
* Remove VideoRenderer::NaturalSizeChangedCB.scherkus@chromium.org2014-01-162-16/+26
| | | | | | | | | | | | Instead WebMediaPlayerImpl detects frame size changes and bypasses the previous plumbing through Pipeline. Includes a workaround for http://crbug.com/334325 by calling Demuxer::GetStream() while not holding Pipeline::lock_. BUG=319000 Review URL: https://codereview.chromium.org/135403005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245029 0039d316-1c4b-4281-b951-d872f2087c98
* Remove WebGraphicsContext3D getter from cc::ContextProviderjamesr@chromium.org2014-01-168-94/+104
| | | | | | | | | | | The compositor uses GLES2Interface to talk to the OpenGL context now, so the WebGraphicsContext3D getter isn't applicable at this layer. BUG=181120 Review URL: https://codereview.chromium.org/132163004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245026 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 245008 "Rolling webrtc/libjingle r5389."zea@chromium.org2014-01-161-0/+8
| | | | | | | | | | | | | | | | | | Triggered browsertest and content unittest failures. http://build.chromium.org/p/chromium.memory/buildstatus?builder=Linux%20ASAN%20Tests%20%282%29&number=21803 http://build.chromium.org/p/chromium.mac/buildstatus?builder=Mac%2010.6%20Tests%20%28dbg%29%282%29&number=47773 > Rolling webrtc/libjingle r5389. > > R=jiayl@chromium.org, sergeyu@chromium.org, wjia@chromium.org > > Review URL: https://codereview.chromium.org/139853002 TBR=mallinath@chromium.org Review URL: https://codereview.chromium.org/140273003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245023 0039d316-1c4b-4281-b951-d872f2087c98
* Rolling webrtc/libjingle r5389.mallinath@chromium.org2014-01-151-8/+0
| | | | | | | | R=jiayl@chromium.org, sergeyu@chromium.org, wjia@chromium.org Review URL: https://codereview.chromium.org/139853002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245008 0039d316-1c4b-4281-b951-d872f2087c98
* Removes some unnecessary preprocessor directivescimamoglu@chromium.org2014-01-152-4/+0
| | | | | | | | | The removed conditions are already satisfied through their respective enclosing conditions. Review URL: https://codereview.chromium.org/138213004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245003 0039d316-1c4b-4281-b951-d872f2087c98
* Implements MediaStreamVideoSource.ronghuawu@chromium.org2014-01-157-24/+219
| | | | | | | | | | | | | | | | 1) Add MediaStreamDependencyFactory::CreateVideoSource to create a webrtc::VideoSourceInterface that's associated with given capturer. 2) Implement MediaStreamVideoSource: * Creates a webrtc::VideoSource instance with a fake cricket::VideoCapturer. Use this webrtc::VideoSource as the adapter to talk to the libjingle world. * When AddTrack is called, creates native track for the given blink track. And connect the native track with the webrtc::VideoSource so that the track can get frames from this source. * When DeliverVideoFrame is called, feeds the frame to all the registered tracks via the adapter (webrtc::VideoSource)'s FrameInput interface. BUG=334241 R=joi@chromium.org, perkj@chromium.org, xians@chromium.org Review URL: https://codereview.chromium.org/129923002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245001 0039d316-1c4b-4281-b951-d872f2087c98
* Removes MessageLoop::TYPE_XXX where possiblesky@chromium.org2014-01-152-5/+3
| | | | | | | | | | | | This is part of attempting to get rid of MessageLoop::Type enum. BUG=none TEST=none R=darin@chromium.org Review URL: https://codereview.chromium.org/136683004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244996 0039d316-1c4b-4281-b951-d872f2087c98
* Wire up the MediaStreamAudioProcessor with the WebRtcAudioCapturer.xians@chromium.org2014-01-1520-499/+468
| | | | | | | | | | | | | | | | This CL is a follow up to https://codereview.chromium.org/88513002, which is hooking up the MediaStreamAudioProcessor to the production code. With this CL, we move the audio processing from WebRtc to Chrome behind a flag. When chrome is launched with flag enable-audio-track-processing, the audio processing in happening in the WebRtcAudioCapturer, otherwise it will be in WebRtc, which is the same as without this CL. Theoretically, we should be able to apply different constraints on different audio tracks, that means there can be multiple audio processors with different configurations for different tracks. But this can't be done before we completely move the audio processing to Chrome. So this CL has only one processor in the WebRtcAudioCapturer. Note that this is not a regression since our code has been behaving like this before this CL. BUG=264611 TEST= content_unittest && ./chrome --enable-audio-track-processing works with audio processing. Review URL: https://codereview.chromium.org/112203004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244992 0039d316-1c4b-4281-b951-d872f2087c98
* Add basic browser test for EmbeddedWorker/ServiceWorkerkinuko@chromium.org2014-01-151-1/+3
| | | | | | | | | | | | | | This test does: - kick registerServiceWorker (primarily for installing ServiceWorkerProviderHost) - manually associate ServiceWorkerProviderHost to an EmbeddedWorker (eventually this should be done via ServiceWorkerVersion) - Start and stop the EmbeddedWorker, and observe OnStarted/OnStopped msgs are sent from the child process BUG=313530, 285976 TEST=ServiceWorkerBrowserTest.EmbeddedWorkerBasic Review URL: https://codereview.chromium.org/127573002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244960 0039d316-1c4b-4281-b951-d872f2087c98
* Remove WGC3DCBImpl::GetGPUProcessID()sievers@google.com2014-01-151-2/+1
| | | | | | | | | | | | | | | | | | | | | It's used for blocking renders that are trying to create a context after the GPU process crashed through comparing gpu process IDs. Remove this code as we can handle SwapCompositorFrame more gracefully nowadays after resources were lost. But still fail renderer view context creation when gpu browser compositing gets turned off. BUG=270179,329737 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=241425 R=danakj@chromium.org, palmer@chromium.org, piman@chromium.org Review URL: https://codereview.chromium.org/111063003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244950 0039d316-1c4b-4281-b951-d872f2087c98
* Update the dom wrapper world the automation controller is installed in.jochen@chromium.org2014-01-151-3/+1
| | | | | | | | | | | The world id -1 is no longer used. BUG=none R=dcarney@chromium.org Review URL: https://codereview.chromium.org/136813003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244872 0039d316-1c4b-4281-b951-d872f2087c98
* [webcrypto] Add AES-GCM using NSS.eroman@chromium.org2014-01-152-0/+489
| | | | | | | | | | This requires NSS version 3.15 or greater. Since Linux Chrome is using the system NSS it may not work for Linux users unless they have a more recent NSS version. Mac and Windows builds however are not affected by this and it should just work. BUG=245025 Review URL: https://codereview.chromium.org/115653002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244845 0039d316-1c4b-4281-b951-d872f2087c98
* Now that RenderFrame is 1:1 with WebFrame, add the associated getters and ↵jam@chromium.org2014-01-155-52/+35
| | | | | | | | | | | start cleaning up assumptions. BUG=304341 R=nasko@chromium.org Review URL: https://codereview.chromium.org/138333006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244842 0039d316-1c4b-4281-b951-d872f2087c98
* Implement GetSelectedText() for the OOP PDF plugin.koz@chromium.org2014-01-154-1/+14
| | | | | | | | | | | | | This change exposes a SetSelectedText() function to the plugin so it can eagerly notify the plugin host what the currently selected text is. This allows the call to GetSelectedText() to return synchronously with the last selected text, rather than the empty string. R=joi@chromium.org, piman@chromium.org, raymes@chromium.org Review URL: https://codereview.chromium.org/127343003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244827 0039d316-1c4b-4281-b951-d872f2087c98
* Remove obsolete methods in WebContentDecryptionModuleSessionImpl.xhwang@chromium.org2014-01-142-17/+0
| | | | | | | | | BUG=224786 R=ddorwin@chromium.org Review URL: https://codereview.chromium.org/135023002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244744 0039d316-1c4b-4281-b951-d872f2087c98
* Let WebSourceBufferImpl::setMode() update SourceState::sequence_mode_wolenetz@chromium.org2014-01-143-2/+14
| | | | | | | | | | | | | | | Connects WebSourceBufferImpl::setMode() to similar ChunkDemuxer and SourceState methods to enable setting SourceState::sequence_mode_. Later changes will implement processing of distinct 'segments' and 'sequence' append modes. R=acolwell@chromium.org TEST=On local Linux, all mediasource layout tests and media_unittests pass BUG=249422 Review URL: https://codereview.chromium.org/134883002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244741 0039d316-1c4b-4281-b951-d872f2087c98
* [PPAPI] Pepper MediaStream API audio thunk implementationpenghuang@chromium.org2014-01-141-0/+2
| | | | | | | | BUG=330851 Review URL: https://codereview.chromium.org/133703004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244731 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Pepper plugins not painting in iframes. This will have to move back to ↵jam@chromium.org2014-01-145-154/+104
| | | | | | | | | | | RenderFrameImpl once the relevant callbacks are routed to the frame. BUG=333824 R=nasko@chromium.org Review URL: https://codereview.chromium.org/131083003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244723 0039d316-1c4b-4281-b951-d872f2087c98
* Added warning about not using a to-be-deleted method.kbr@chromium.org2014-01-141-3/+2
| | | | | | | | BUG=333501 Review URL: https://codereview.chromium.org/135363002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244704 0039d316-1c4b-4281-b951-d872f2087c98
* Use ContextProvider subclass to provide WGC3D pointersjamesr@chromium.org2014-01-148-12/+82
| | | | | | | | | | | | | | | Some cc::ContextProvider instances will also need to provide WebGraphicsContext3D* interfaces to the underlying GL context, but not all. This adds a subclass of ContextProvider in content:: to use for these users. The compositor itself doesn't need the WGC3D accessor so it just uses the base class. BUG=181120 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=244383 Review URL: https://codereview.chromium.org/126093010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244697 0039d316-1c4b-4281-b951-d872f2087c98
* Eliminate video capture thread in rendererhclam@chromium.org2014-01-1417-445/+367
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main motivation of this change is to remove the video capture thread in the renderer. All users of a video capture device already handles the video frame on their thread. There is no need to call the clients with an additional thread. Summary of this change: * Video capture thread eliminated VideoCaptureImpl now runs on the IO thread. Clients are called on the IO thread. * Simplified VideoCaptureImplManager We still need to keep this object for the purpose of sharing a VideoCaptureImpl object with multiple clients. It should own these objects and maintain the usage count. A couple clean up items are done on this class: * It doesn't own the video capture thread now. * It is now a render thread only object. * It maintains refcount of a VideoCaptureImpl explicitly. * It is no longer refcounted. * Clients access it through RenderThreadImpl. Which ensures usage is on the render thread. * New VideoCaptureHandle class Object of this class is returned by VideoCaptureImplManager to give access to a media::VideoCapture object. It is purely a wrapper and helps to do refcounting on the render thread. Testing: Added unit tests for VideoCaptureImplManager to test refcounting. Also updated unit test for VideoCaptureImpl due to the threading changes. Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=244074 Review URL: https://codereview.chromium.org/120893002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244687 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land: base: Fix registering of memory pressure listeners used when ↵reveman@chromium.org2014-01-141-0/+4
| | | | | | | | | | | | | | | | | | | | | emulating discardable memory. Memory pressure listeners need to be created on a thread with a message loop current. Discardable memory is often used on worker threads that don't have a message loop and with the current system where listeners are registered on first use, the result is that we're most likely never notified of memory pressure. This adds a function to the discardable memory interface that allows us to register memory pressure listeners on a thread, and at a time, when we know a message loop is current. BUG=332570 TBR=jamesr@chromium.org Review URL: https://codereview.chromium.org/129963002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244641 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 244590 "Remove VideoRenderer::NaturalSizeChangedCB."scherkus@chromium.org2014-01-142-26/+16
| | | | | | | | | | | | | | | | > Remove VideoRenderer::NaturalSizeChangedCB. > > Instead WebMediaPlayerImpl detects frame size changes and bypasses the previous plumbing through Pipeline. > > BUG=319000 > > Review URL: https://codereview.chromium.org/113233004 TBR=scherkus@chromium.org Review URL: https://codereview.chromium.org/137733002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244633 0039d316-1c4b-4281-b951-d872f2087c98
* Move LinkDoctor out of content and into chrome.mmenke@chromium.org2014-01-136-227/+15
| | | | | | | | | | | This is in preparation for using the new LinkDoctor API. BUG=308232 R=darin@chromium.org, tsepez@chromium.org, ttuttle@chromium.org Review URL: https://codereview.chromium.org/67283002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244611 0039d316-1c4b-4281-b951-d872f2087c98
* Remove VideoRenderer::NaturalSizeChangedCB.scherkus@chromium.org2014-01-132-16/+26
| | | | | | | | | | Instead WebMediaPlayerImpl detects frame size changes and bypasses the previous plumbing through Pipeline. BUG=319000 Review URL: https://codereview.chromium.org/113233004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244590 0039d316-1c4b-4281-b951-d872f2087c98
* Move the guts of user_metrics to a new static lib in //base/metrics.ben@chromium.org2014-01-133-3/+5
| | | | | | | | | | | I retained a couple of wrapper functions in content that post back to the UI thread if they are called from another thread. All existing code will continue to use these wrappers. The intent is that some code that I don't want to depend on content that only lives on the UI thread can now call //base/metrics code directly. R=isherman@chromium.org, jam@chromium.org http://crbug.com/332504 Review URL: https://codereview.chromium.org/129223004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244580 0039d316-1c4b-4281-b951-d872f2087c98