summaryrefslogtreecommitdiffstats
path: root/content/content_common.gypi
Commit message (Collapse)AuthorAgeFilesLines
* Move IsOriginSecure() into //content and use it in ServiceWorkerkinuko2015-04-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IsOriginSecure() implements web platform feature [1] and it'd be more natural to provide this at content-layer. Also ServiceWorker actually wants to call this in content layer for browser-side security check. https://www.w3.org/TR/powerful-features/#is-origin-trustworthy. This CL moves IsOriginSecure() from chrome/common/origin_util.{h,cc} to content/{public/,}/common/origin_util.{h,cc} and adds a following method to ContentClient so that ChromeContentClient can add chrome-level schemes (and whitelisted origins, this is to be implemented in crbug.com/441605). // Gives the embedder a chance to register additional schemes and origins // that need to be considered trustworthy. // See https://www.w3.org/TR/powerful-features/#is-origin-trustworthy. virtual void AddSecureSchemesAndOrigins(std::set<std::string>* schemes, std::set<GURL>* origins) {} BUG=362214, 441605 TEST=content_unittests:URLSchemesTest.IsOriginSecure Review URL: https://codereview.chromium.org/1101033003 Cr-Commit-Position: refs/heads/master@{#326971}
* Revert of Web MIDI: split build rules for media/midi (patchset #19 id:340001 ↵aboxhall2015-04-221-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1065743003/) Reason for revert: Very sorry to have to revert this after so much work, but midi_unittests has been consistently broken on Android Tests bot e.g. https://build.chromium.org/p/chromium.webkit/builders/Android%20Tests%20%28dbg%29/builds/25597 Original issue's description: > Web MIDI: split build rules for media/midi > > Split MIDI related stuffs from media as a component in build files. > Also, MIDI related unit tests are split into midi_unittests. > > BUG=475869 > TEST=git cl try > > Committed: https://crrev.com/31624cad1a3b5cf26950b864837ba44b3aa38331 > Cr-Commit-Position: refs/heads/master@{#326247} TBR=phajdan.jr@chromium.org,dalecurtis@chromium.org,dpranke@chromium.org,boliu@chromium.org,damienv@chromium.org,jam@chromium.org,thestig@chromium.org,lcwu@chromium.org,gunsch@chromium.org,toyoshim@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=475869 Review URL: https://codereview.chromium.org/1085843003 Cr-Commit-Position: refs/heads/master@{#326343}
* Web MIDI: split build rules for media/miditoyoshim2015-04-221-0/+1
| | | | | | | | | | | | Split MIDI related stuffs from media as a component in build files. Also, MIDI related unit tests are split into midi_unittests. BUG=475869 TEST=git cl try Review URL: https://codereview.chromium.org/1065743003 Cr-Commit-Position: refs/heads/master@{#326247}
* Remove GetRawCookies and DeleteCookie implementation.dgozman2015-04-151-2/+0
| | | | | | | | BUG=476389 Review URL: https://codereview.chromium.org/1082623002 Cr-Commit-Position: refs/heads/master@{#325218}
* VAVDA: Use the new, generic video decoder and accelerator infrastructure.posciak2015-04-111-9/+9
| | | | | | | | | | | | | | | | | A new, generic accelerated video decoder stack has recently been written to abstract and replace the existing, heavily VAAPI-specific infrastructure, and to make it reusable on other platforms as well. Now that the new stack is stable, switch VAVDA to it. Move the VAAPI-specific H264 code to a new VaapiH264Accelerator class and adapt the whole class to use the new decoder/accelerator infrastructure. BUG=410152 TEST=vdaunittest,veaunittest,shaka player with DASH,local video Review URL: https://codereview.chromium.org/1040513003 Cr-Commit-Position: refs/heads/master@{#324780}
* Add VDA supported profile to GPUInfohenryhsu2015-04-101-0/+2
| | | | | | | | | | | | | | | Different CrOS devices have different supported decode profiles. Add VDA supported profile to GPUInfo so this can be detected in runtime. This is also the preparation of removing --ignore-resolution-limits-for-accelerated-video-decode flag. BUG=350197 TEST=Play a video on Exynos and Intel CrOS devices and make sure Media.GpuVideoDecoderInitializeStatus is 0. Review URL: https://codereview.chromium.org/795633005 Cr-Commit-Position: refs/heads/master@{#324596}
* Cache Storage: Move files to content/*/cache_storage, rename classesjsbell2015-03-311-1/+3
| | | | | | | | | | | | | | | | | | | | | * Introduce content/*/cache_storage * Move Cache Storage files from content/*/service_worker * Update gypi/gn files * Rename classes, ipc messages, protobuf messages The renames are basically mechanical: * ServiceWorkerCacheStorageFoo -> CacheStorageFoo * ServiceWorkerCacheFoo -> CacheStorageFoo * ServiceWorkerCache -> CacheStorageCache (not just 'Cache') Also, made jkarlin@ and jsbell@ (that's me!) OWNERS in the new directories in addition to the */service_worker/OWNERS. BUG=439389 Review URL: https://codereview.chromium.org/1039763002 Cr-Commit-Position: refs/heads/master@{#323060}
* Decouple Cache Storage messaging from Service Worker/Embedded Workerjsbell2015-03-231-0/+1
| | | | | | | | | | | | | | | | We plan to expose the Cache Storage API independent of Service Worker. Tease the IPC message routing off of Service Worker and Embedded Worker, mirroring the other context-independent storage APIs. With this CL the browser side is independent but the renderer side entry point is still only available to the SW's context. Files have been left in the content/*/service_worker/ directories for now; follow-ups will shorten the names and move them to dedicated directories. BUG=439389 Review URL: https://codereview.chromium.org/992353003 Cr-Commit-Position: refs/heads/master@{#321847}
* Get rid of ChannelInit::SetSingleProcessIOTaskRunner()morrita2015-03-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | The globally-set TaskRunner doesn't work because some child thread can run inside the browser process even when other child threads run in their own processes. For example, there is a configuration where GpuChildThread being in-process while RenderThreadImpl isn't. It is troublesome once non-renderer child processes adopt ChannelMojo. This CL eliminates the global in-process IO task runner and instead, passes an IO runnner for each thread if it is configured as an in-process mode. Note that InProcessChildThreadParams object is introuced to clarify that the parameter is for in-process mode. This is a spin-off from https://codereview.chromium.org/960693003/. R=jamesr@chromium.org, rockot@chromium.org, jam@chromium.org BUG=377980 Review URL: https://codereview.chromium.org/987693005 Cr-Commit-Position: refs/heads/master@{#321047}
* x11: Use scoped_ptr<> for X11 objects where it makes sense.Sadrul Habib Chowdhury2015-03-101-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | Introduce gfx::XScopedPtr<> as a convenience wrapper around scoped_ptr<> for managing X11 objects. The return types of the X11 deleter functions are somewhat inconsistent (e.g. XFree returns int, whereas XIFreeDeviceInfo doesn't return anything), which makes this a bit tricky. So introduce a custom deleter gfx::XObjectDeleter to use with XScopedPtr<>. Using this XScopedPtr<> allows for cleaner code in a few places, and should generally make it easier to manage X11 objects. Additional clean-ups: . content/common/gpu/x_util.cc is unused. So remove that. . ui::XScopedString is unused. So remove that. . DeviceListCacheX11 has support for maintaining the device-list cache for multiple X11 connections, but chrome doesn't have support for more than one. So replace the map with a single cache. (necessitated by the use of XScopedPtr<> in DeviceList.) BUG=none R=piman@chromium.org, sky@chromium.org Review URL: https://codereview.chromium.org/989993002 Cr-Commit-Position: refs/heads/master@{#319809}
* Update mojo sdk to rev 3d23dae011859a2aae49f1d1adde705c8e85d819rockot2015-03-031-0/+2
| | | | | | | | | | | | | | | | | | | | Highlights: - mojo::ChannelInit has been replaced with content::ChannelInit. - ScopedIPCSupport has been added so Mojo consumers can ensure the EDK is initialized. - single process mode now uses some evil tricks to get child threads to create their mojo client channels on the browser I/O thread. - several Android bits adapted to new interfaces - a number of tests have been adapted to work properly in spite of unconventional process arrangements BUG=None Review URL: https://codereview.chromium.org/954643002 Cr-Commit-Position: refs/heads/master@{#318883}
* Add support for DX11 based H/W video decoding on Windows 8+ananta2015-02-281-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | This is only available on Windows 8+ because the media foundation API which exposes the device manager to be pased to the decoder MFCreateDXGIDeviceManager only exists on Windows 8+. Changes in this patch are mostly around using DX11 or D3D wherever needed. These are as below:- 1. In the initialization code path where we use D3D or DX11 based on whether we are on Windows 8+ and ANGLE and the decoder say they support DX11. 2. The output frame processing code where we extract the DX11 texture and copy it out to ANGLE. One change here is that DX11 does not provide an automatic way for format conversion for textures. The decoder outputs YUV12 textures and ANGLE expects RGB. We can achieve this by setting a shader for conversion. That seemed like too much work. Thankfully there is a video processor media foundation transform on Windows which does the conversion for us on the GPU. We use this object to convert the output frame and copy it out to ANGLE. 3. We pass the GL context to the decoder to enable us to query ANGLE to see if it is using D3D or DX11. BUG=456418 Review URL: https://codereview.chromium.org/922003002 Cr-Commit-Position: refs/heads/master@{#318560}
* Optionally have MessagePort pass data as base::Value, part 1.mek2015-02-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Various efforts (android webview, navigator.connect) are experimenting with using MessagePort as a way to communicate with native code. This is a start at refactoring MessagePort code to make this possible. This CL changes the IPCs for MessagePort messages to pass the data as a MessagePortMessage struct, adding support to the renderer side MessagePort code to support both base::Value and blink::WebSerializedScriptValue messages. Additionally a (currently unset) flag is added that determines how MessagePort sends messages back to the browser process. This is part of a series of changes: [1/5] Blink side changes in https://codereview.chromium.org/924983002/ that expose a needed v8 context [2/5] This CL [3/5] https://codereview.chromium.org/944443003/ which causes the send_messages_as_values flag to be propagated [4/5] https://codereview.chromium.org/938403005/ which uses this for navigator.connect services and adds infrastructure for layout tests [5/5] https://codereview.chromium.org/940423004/ adds layout tests to blink to test these new features BUG=426458 Review URL: https://codereview.chromium.org/921013002 Cr-Commit-Position: refs/heads/master@{#318492}
* Renamed v4l2_video_device.*->v4l2_device.* and ↵emircan2015-02-261-6/+6
| | | | | | | | | | | | generic_v4l2_video_device.*->generic_v4l2_device.* and tegra_v4l2_video_device.*->tegra_v4l2_device.* to be consistent with class names. BUG=453934 TEST=Built and deployed on peach_pi. AppRTC loopback and VEA test works fine. Review URL: https://codereview.chromium.org/882123004 Cr-Commit-Position: refs/heads/master@{#318255}
* Adding synthetic touch/mouse drag [Part1]ssid2015-02-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | We have synthetic scroll. But this feature doesn’t work in google maps in desktop version. To move around the maps we need to use click and drag on mouse. This CL adds only the background functions for synthetic click and drag and unittests. feature for telemety tests. In case of touch screens, the drag is identical to synthetic scroll already implemented, except for adding slop. The functions of class synthetic_smooth_scroll_gesture is moved to synthetic_smooth_move_gesture, with additional features of drag drop. Classes synthetic_smooth_scroll_gesture and synthetic_smooth_drag_gesture use the features with an instance of synthetic_smooth_move_gesture. In the next CLs The API and javascript interfaces will be added. BUG=457148 Review URL: https://codereview.chromium.org/929333002 Cr-Commit-Position: refs/heads/master@{#318071}
* Update gyp files to reflect moved and removed header files in content/bratell2015-02-231-3/+0
| | | | | | | | | | | | | | | | | | | | Fixes warnings in the msvs-gyp generator. This is a followup to https://codereview.chromium.org/615893003 (gesture_event_type_list.h, popup_item_type_list.h, result_codes_list.h and top_controls_state_list.h) https://codereview.chromium.org/861373002 (navigator_connect_service.h and navigator_connect_servive_factory.h) https://codereview.chromium.org/865413002 (layer_tree_build_helper.h) https://codereview.chromium.org/774573003 (platform_notification_service.h) R=jam@chromium.org,avi@chromium.org,mek@chromium.org,dtrainor@chromium.org,changwan@chromium.org,peter@chromium.org BUG=459058,405532,351558,426458,451313,439950 Review URL: https://codereview.chromium.org/952443004 Cr-Commit-Position: refs/heads/master@{#317617}
* Namespace sandbox: add important security checksjln2015-02-121-0/+2
| | | | | | | | | | | | | | When engaging the namespace sandbox, add important checks that the process is single threaded and has no directory file descriptor open. As part of this change, move the function engaging the namespace sandbox from the Zygote to the LinuxSandbox class. BUG=457377, 312380 Review URL: https://codereview.chromium.org/915823002 Cr-Commit-Position: refs/heads/master@{#315932}
* Remove DevToolsGPUAgentyurys2015-02-101-4/+0
| | | | | | | | | | Old Timeline implementation that was the only client of this code is removed. Now it is time to delete the agent. BUG=448318 Review URL: https://codereview.chromium.org/898933002 Cr-Commit-Position: refs/heads/master@{#315509}
* Clean up V4L2 codec-related flags and defineshenryhsu2015-02-081-27/+17
| | | | | | | | | | | | | | | | All arm platforms support V4L2 SVDA by default and use_v4l2_codec also governs V4L2 VDA/VEA now. Generates libv4l2 stub in GN file. This CL is re-landed because CL 828063009 is reverted by 902773003. BUG=449883,455545 TEST=build chrome and vda unittest on peach_pit, veyron_pinky, squawks, and panther_freon TBR=piman@chromium.org,posciak@chromium.org Review URL: https://codereview.chromium.org/902143002 Cr-Commit-Position: refs/heads/master@{#315226}
* Split ui/base/ime into a new component (reland with windows GN fix)spang2015-02-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The IME code in ui/base/ime depends on ui/ozone to support keyboard control (via the InputController interface). This dependency is currently missing from the build. Unfortunately, we cannot simply add this dependency, because ui/ozone depends on code from ui/base/cursor and ui/base/resource (for cursor bitmaps). Break this cycle by componentizing ui/base/ime & add a dependency from the new ui/base/ime component to ui/ozone. This also helps clean things up a bit because iOS builds ui/base but not ui/base/ime. So there is already a fault line here. The handful of IME tests are left as part of ui_base_unittests. BUG=445627 TEST=gn gen out_gn_ozone --args='os="chromeos" use_ozone=true is_component_build=true' && ninja -C out_gn_ozone chrome ozone_unittests (along with other needed changes) TBR=jam Committed: https://crrev.com/2321ca1b99c1a8e9a90e48a9cd50f6446a7e5e82 Cr-Commit-Position: refs/heads/master@{#314815} Review URL: https://codereview.chromium.org/889323003 Cr-Commit-Position: refs/heads/master@{#314860}
* Revert of Split ui/base/ime into a new component (patchset #4 id:60001 of ↵ccameron2015-02-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/889323003/) Reason for revert: Windows builds failing with ERROR at //ui/base/ime/BUILD.gn:170:5: Undefined variable for +=. libs += [ "imm32.lib" ] ^--- I don't have something with this name in scope now. http://build.chromium.org/p/chromium.win/builders/Win8%20GN/builds/4403/steps/gn/logs/stdio (perhaps missed a .gn update)? Original issue's description: > Split ui/base/ime into a new component > > The IME code in ui/base/ime depends on ui/ozone to support keyboard > control (via the InputController interface). This dependency is > currently missing from the build. > > Unfortunately, we cannot simply add this dependency, because ui/ozone > depends on code from ui/base/cursor and ui/base/resource > (for cursor bitmaps). > > Break this cycle by componentizing ui/base/ime & add a dependency > from the new ui/base/ime component to ui/ozone. > > This also helps clean things up a bit because iOS builds ui/base > but not ui/base/ime. So there is already a fault line here. > > The handful of IME tests are left as part of ui_base_unittests. > > BUG=445627 > TEST=gn gen out_gn_ozone --args='os="chromeos" use_ozone=true is_component_build=true' && > ninja -C out_gn_ozone chrome ozone_unittests (along with other needed changes) > TBR=jam > > Committed: https://crrev.com/2321ca1b99c1a8e9a90e48a9cd50f6446a7e5e82 > Cr-Commit-Position: refs/heads/master@{#314815} TBR=sky@chromium.org,thakis@chromium.org,jam@chromium.org,yukishiino@chromium.org,spang@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=445627 Review URL: https://codereview.chromium.org/895363005 Cr-Commit-Position: refs/heads/master@{#314823}
* Split ui/base/ime into a new componentspang2015-02-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The IME code in ui/base/ime depends on ui/ozone to support keyboard control (via the InputController interface). This dependency is currently missing from the build. Unfortunately, we cannot simply add this dependency, because ui/ozone depends on code from ui/base/cursor and ui/base/resource (for cursor bitmaps). Break this cycle by componentizing ui/base/ime & add a dependency from the new ui/base/ime component to ui/ozone. This also helps clean things up a bit because iOS builds ui/base but not ui/base/ime. So there is already a fault line here. The handful of IME tests are left as part of ui_base_unittests. BUG=445627 TEST=gn gen out_gn_ozone --args='os="chromeos" use_ozone=true is_component_build=true' && ninja -C out_gn_ozone chrome ozone_unittests (along with other needed changes) TBR=jam Review URL: https://codereview.chromium.org/889323003 Cr-Commit-Position: refs/heads/master@{#314815}
* Revert of Clean up V4L2 codec-related flags and defines (patchset #3 ↵posciak2015-02-051-17/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:40001 of https://codereview.chromium.org/828063009/) Reason for revert: x86 Chrome compile failure due to https://code.google.com/p/chromium/issues/detail?id=455545. Original issue's description: > Clean up V4L2 codec-related flags and defines > > All arm platforms support V4L2 SVDA by default and use_v4l2_codec also governs V4L2 VDA/VEA now. > Generates libv4l2 stub in GN file. > > BUG=449883 > TEST=build chrome and vda unittest on peach_pit, veyron_pinky, squawks, > and panther_freon > > Committed: https://crrev.com/d5eeecc577f274bb8ed9d1954f263d83b5f00050 > Cr-Commit-Position: refs/heads/master@{#314536} TBR=piman@chromium.org,wuchengli@chromium.org,henryhsu@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=449883 Review URL: https://codereview.chromium.org/902773003 Cr-Commit-Position: refs/heads/master@{#314760}
* Gather the ServiceWorker client information in the browser process.mlamouri2015-02-041-0/+2
| | | | | | | | | | | | | | This is also adding some logic about empty and invalid ServiceWorkerClientInfo. BUG=450634 Committed: https://crrev.com/5d6924925a291a7cf394a685772251c83a63f99f Cr-Commit-Position: refs/heads/master@{#313982} Review URL: https://codereview.chromium.org/871013003 Cr-Commit-Position: refs/heads/master@{#314636}
* Clean up V4L2 codec-related flags and defineshenryhsu2015-02-041-27/+17
| | | | | | | | | | | | | All arm platforms support V4L2 SVDA by default and use_v4l2_codec also governs V4L2 VDA/VEA now. Generates libv4l2 stub in GN file. BUG=449883 TEST=build chrome and vda unittest on peach_pit, veyron_pinky, squawks, and panther_freon Review URL: https://codereview.chromium.org/828063009 Cr-Commit-Position: refs/heads/master@{#314536}
* Adds a fake video decode accelerator (hardware decoder) implementation that ↵hellner2015-02-041-0/+2
| | | | | | | | | | can be used for testing (on devices without hardware decoder or missing implementation) and testing the efficiency of an existing hardware decoder. BUG=N/A Review URL: https://codereview.chromium.org/784963004 Cr-Commit-Position: refs/heads/master@{#314459}
* content: Add missing dependecy on ozone_basespang2015-02-031-0/+1
| | | | | | | | | | | | | | | This is needed for CursorFactoryOzone in webcursor_ozone.cc. The GN build already has this dependency. These dependencies are needed to enable strict checking of undefined symbols in the shared_library build. BUG=445627 TEST=build chrome for link_freon via simplechrome Review URL: https://codereview.chromium.org/893283002 Cr-Commit-Position: refs/heads/master@{#314436}
* Reorganize ChannelMojo related flags.morrita2015-02-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | As ChannelMojo is turned on by default, this CL do some clenaup around the related switches: * It removes the about:flags entry. This no longer has to be user visible * It moves switches to mojo_channel_switches.h/cc as it does compute subtle decision. I make this public/ so that we can use it from ipc_fuzzer. * It adds --disable-channel-mojo for forcibly disable ChannelMojo usage. We still leave --enable-renderer-channel-mojo because there is still a small change that we turn ChannelMojo off again. Once ChannelMojo is settled, we can safely remove it. BUG=377980 R=nasko@chromium.org, sky@chromium.org Review URL: https://codereview.chromium.org/886153003 Cr-Commit-Position: refs/heads/master@{#314169}
* Revert of Gather the ServiceWorker client information in the browser ↵horo2015-01-311-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | process. (patchset #8 id:140001 of https://codereview.chromium.org/871013003/) Reason for revert: This patch is causing http/tests/serviceworker/clients-getall.html to fail on the mac bots: http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=http%2Ftests%2Fserviceworker%2Fclients-getall.html&showLargeExpectations=true Original issue's description: > Gather the ServiceWorker client information in the browser process. > > This is also adding some logic about empty and invalid > ServiceWorkerClientInfo. > > BUG=450634 > > Committed: https://crrev.com/5d6924925a291a7cf394a685772251c83a63f99f > Cr-Commit-Position: refs/heads/master@{#313982} TBR=jochen@chromium.org,michaeln@chromium.org,tsepez@chromium.org,mlamouri@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=450634 Review URL: https://codereview.chromium.org/893783002 Cr-Commit-Position: refs/heads/master@{#314052}
* bluetooth: Provide more device attributes in requestDevice reply.scheib2015-01-301-0/+2
| | | | | | | | | | | | | | | | | | | BluetoothDispatcherHost is extended to supply all the attributes of the BluetoothDevice web API. Also, add device::BluetoothDevice::VENDOR_ID_MAX_VALUE for use in the IPC message. Depends on https://codereview.chromium.org/882223002/ to define new attributes on WebBluetoothDevice, and will not be visible to script until https://codereview.chromium.org/876623003/ BUG=438305 Review URL: https://codereview.chromium.org/885723002 Cr-Commit-Position: refs/heads/master@{#313999}
* Gather the ServiceWorker client information in the browser process.mlamouri2015-01-301-0/+2
| | | | | | | | | | | This is also adding some logic about empty and invalid ServiceWorkerClientInfo. BUG=450634 Review URL: https://codereview.chromium.org/871013003 Cr-Commit-Position: refs/heads/master@{#313982}
* Add JPEG decoder for VAAPI JPEG decode accelerationkcwu2015-01-301-0/+2
| | | | | | | | | BUG=335778 TEST=build and run vaapi_jpeg_decoder_unittest Review URL: https://codereview.chromium.org/825843002 Cr-Commit-Position: refs/heads/master@{#313881}
* Refactor navigator.connect code to make it more flexible.mek2015-01-271-2/+2
| | | | | | | | | | | | | | | | | This separates out all the service worker specific code from the generic connection handling. As well as exposing some API in content/public so code outside of content/ can handle connections. This is the first step in making it possible to have chrome extensions, or other code outside of content/ be the endpoint of a connection. This doesn't change any functionality, it just moves code around. BUG=426458 Review URL: https://codereview.chromium.org/861373002 Cr-Commit-Position: refs/heads/master@{#313185}
* enable V4L2 VDA in VDA unittest on x86 CrOS platformhenryhsu2015-01-221-1/+6
| | | | | | | | | BUG=450569 TEST=make sure USE_V4L2_CODEC pass to VDA unittest Review URL: https://codereview.chromium.org/856373002 Cr-Commit-Position: refs/heads/master@{#312547}
* Move //mojo/{public, edk} underneath //third_partyblundell2015-01-191-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | This CL move //mojo/public and //mojo/edk to live in the following locations: - //third_party/mojo/src/mojo/public - //third_party/mojo/src/mojo/edk It moves the related gypfiles from //mojo to //third_party/mojo and updates them as necessary to account for the file moves. It also updates clients of the mojo SDK and EDK targets in both GYP and GN. (Note that for GN, the mojo SDK and EDK build systems are maintained in the Mojo repo and designed to be flexible wrt the location of the SDK/EDK in a client repo, so no changes are needed. This CL does not update include paths to the code being moved to limit the number of moving parts, instead relying on the include_dirs that the SDK and EDK targets supply to their direct dependents to ensure that include paths continue to resolve correctly. NOPRESUBMIT=true Review URL: https://codereview.chromium.org/814543006 Cr-Commit-Position: refs/heads/master@{#312129}
* Reland: Add accelerated video decoder interface, VP8 and H.264 ↵posciak2015-01-151-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implementations and hook up to V4L2SVDA. This is a reland of https://chromiumcodereview.appspot.com/833063003/, which failed on some CrOS ARM bots due to the new headers not being present on all ARM boards. With this iteration I'm additionally gating the CL on use_v4lplugin, which is a workaround to further limit this to be compiled on relevant platforms only, previously it was supposed to be present on all ARMs and rely on dynamic selection of the proper codec class. This will be restored and fixed shortly. An AcceleratedVideoDecoder is a video decoder that requires support from an external accelerator (typically a hardware accelerator) to partially offload the decode process after parsing stream headers, and performing reference frame and state management. In this design, the hardware-independent decoder implementation interfaces with a HW-specific Accelerator to offload last stages of the decode process. Add the interface for AcceleratedVideoDecoder, decoders for VP8 and H264, V4L2-specific Accelerators for VP8 and H264 and a common accelerator/client class for V4L2. TBR=wuchengli@chromium.org,kcwu@chromium.org,owenlin@chromium.org,scherkus@chromium.org,dalecurtis@chromium.org R=wuchengli@chromium.org,kcwu@chromium.org,owenlin@chromium.org,scherkus@chromium.org,dalecurtis@chromium.org TEST=vdatest VP8/H264, mp4 local video playback, apprtc decode BUG=chrome-os-partner:33728 Review URL: https://codereview.chromium.org/801053006 Cr-Commit-Position: refs/heads/master@{#311661}
* Revert of Add accelerated video decoder interface, VP8 and H.264 ↵rockot2015-01-141-13/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implementations and hook up to V4L2SVDA (patchset #1 id:20001 of https://codereview.chromium.org/813693006/) Reason for revert: This is breaking arm builds. See for example: https://build.chromium.org/p/chromiumos.chromium/builders/Daisy%20%28chromium%29/builds/4129/steps/cbuildbot/logs/stdio Original issue's description: > Reland: Add accelerated video decoder interface, VP8 and H.264 implementations and hook up to V4L2SVDA. > > This is a reland as the previous CL has an issue with BUILD.gn and failed gn build. > > An AcceleratedVideoDecoder is a video decoder that requires support from an > external accelerator (typically a hardware accelerator) to partially > offload the decode process after parsing stream headers, and performing > reference frame and state management. > > In this design, the hardware-independent decoder implementation interfaces > with a HW-specific Accelerator to offload last stages of the decode process. > > Add the interface for AcceleratedVideoDecoder, decoders for VP8 and H264, > V4L2-specific Accelerators for VP8 and H264 and a common accelerator/client > class for V4L2. > > TEST=vdatest VP8/H264, mp4 local video playback, apprtc decode > BUG=chrome-os-partner:33728 > TBR=wuchengli@chromium.org,kcwu@chromium.org,owenlin@chromium.org,xhwang@chromium.org,scherkus@chromium.org,dalecurtis@chromium.org > > Committed: https://crrev.com/3c09b9b26ee6fc8b43c7535070cfa08aba1285cf > Cr-Commit-Position: refs/heads/master@{#311464} TBR=wuchengli@chromium.org,kcwu@chromium.org,owenlin@chromium.org,xhwang@chromium.org,scherkus@chromium.org,dalecurtis@chromium.org,posciak@chromium.org NOTREECHECKS=true NOTRY=true BUG=chrome-os-partner:33728 Review URL: https://codereview.chromium.org/852103002 Cr-Commit-Position: refs/heads/master@{#311561}
* Reland: Add accelerated video decoder interface, VP8 and H.264 ↵posciak2015-01-141-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | implementations and hook up to V4L2SVDA. This is a reland as the previous CL has an issue with BUILD.gn and failed gn build. An AcceleratedVideoDecoder is a video decoder that requires support from an external accelerator (typically a hardware accelerator) to partially offload the decode process after parsing stream headers, and performing reference frame and state management. In this design, the hardware-independent decoder implementation interfaces with a HW-specific Accelerator to offload last stages of the decode process. Add the interface for AcceleratedVideoDecoder, decoders for VP8 and H264, V4L2-specific Accelerators for VP8 and H264 and a common accelerator/client class for V4L2. TEST=vdatest VP8/H264, mp4 local video playback, apprtc decode BUG=chrome-os-partner:33728 TBR=wuchengli@chromium.org,kcwu@chromium.org,owenlin@chromium.org,xhwang@chromium.org,scherkus@chromium.org,dalecurtis@chromium.org Review URL: https://codereview.chromium.org/813693006 Cr-Commit-Position: refs/heads/master@{#311464}
* Revert of Add accelerated video decoder interface, VP8 and H.264 ↵posciak2015-01-141-13/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implementations and hook up to V4L2SVDA. (patchset #10 id:220001 of https://chromiumcodereview.appspot.com/833063003/) Reason for revert: http://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20GN/builds/6135/steps/compile/logs/stdio#error1 Original issue's description: > Add accelerated video decoder interface, VP8 and H.264 implementations and hook up to V4L2SVDA. > > An AcceleratedVideoDecoder is a video decoder that requires support from an > external accelerator (typically a hardware accelerator) to partially > offload the decode process after parsing stream headers, and performing > reference frame and state management. > > In this design, the hardware-independent decoder implementation interfaces > with a HW-specific Accelerator to offload last stages of the decode process. > > Add the interface for AcceleratedVideoDecoder, decoders for VP8 and H264, > V4L2-specific Accelerators for VP8 and H264 and a common accelerator/client > class for V4L2. > > TEST=vdatest VP8/H264, mp4 local video playback, apprtc decode > BUG=chrome-os-partner:33728 > > Committed: https://crrev.com/04272d3017214b966feba379d78b195e2fd2193d > Cr-Commit-Position: refs/heads/master@{#311448} TBR=wuchengli@chromium.org,kcwu@chromium.org,owenlin@chromium.org,xhwang@chromium.org,scherkus@chromium.org,dalecurtis@chromium.org NOTREECHECKS=true NOTRY=true BUG=chrome-os-partner:33728 Review URL: https://codereview.chromium.org/850883002 Cr-Commit-Position: refs/heads/master@{#311450}
* Add accelerated video decoder interface, VP8 and H.264 implementations and ↵posciak2015-01-141-2/+13
| | | | | | | | | | | | | | | | | | | | | | | hook up to V4L2SVDA. An AcceleratedVideoDecoder is a video decoder that requires support from an external accelerator (typically a hardware accelerator) to partially offload the decode process after parsing stream headers, and performing reference frame and state management. In this design, the hardware-independent decoder implementation interfaces with a HW-specific Accelerator to offload last stages of the decode process. Add the interface for AcceleratedVideoDecoder, decoders for VP8 and H264, V4L2-specific Accelerators for VP8 and H264 and a common accelerator/client class for V4L2. TEST=vdatest VP8/H264, mp4 local video playback, apprtc decode BUG=chrome-os-partner:33728 Review URL: https://codereview.chromium.org/833063003 Cr-Commit-Position: refs/heads/master@{#311448}
* Cleanup: Remove dependency from content/common to storage/browser.thestig2015-01-121-1/+0
| | | | | | Review URL: https://codereview.chromium.org/847613003 Cr-Commit-Position: refs/heads/master@{#311101}
* Support multiple video decoders and encodershenryhsu2015-01-091-1/+6
| | | | | | | | | | | | | | | | | | | | Some platforms have multiple video decoders and encoders. For decode and encoder, return the first succeed initialized VDA and VEA from all possible platforms. GetSupportedProfile return all possible profiles from all encoders. This cl is submitted again because crrev.com/826663002 was reverted in crrev.com/832383004. BUG=445016 TEST=Tested on squawks. For decoder, make sure V4L2 initialization failed and VAAPI successed. For encoder, test on extension. TBR=piman@chromium.org,posciak@chromium.org Review URL: https://codereview.chromium.org/842123002 Cr-Commit-Position: refs/heads/master@{#310754}
* Add use_v4l2_codec use flag to include v4l2 codec on x86 CrOS.henryhsu2015-01-091-3/+10
| | | | | | | | | | | | | | | Because some trybots such as linux chromeos ozone use old linux header files, use this flag to workaround chromium:446088 issue to skip those trybots. So we can re-submit https://codereview.chromium.org/826663002/. After 446088 is fixed, this CL should be reverted. BUG=445016 TEST=build squawks with this flag Review URL: https://codereview.chromium.org/799543005 Cr-Commit-Position: refs/heads/master@{#310715}
* Add use_v4lplugin flag to enable v4l2 libraryhenryhsu2015-01-091-0/+45
| | | | | | | | | | | | | Dynamic load v4l-utils related libraries in unittest. BUG=405861 TEST=use video_encode_accelerator_unittest to make sure v4l2_open and plugin_init is called. Related shared libraries are from chromeos. When use_v4lplugin=0, unittest doesn't open v4l2 libraries. Review URL: https://codereview.chromium.org/700383004 Cr-Commit-Position: refs/heads/master@{#310701}
* Revert of Support multiple video decoders and encoders (patchset #14 ↵nhiroki2015-01-071-9/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:260001 of https://codereview.chromium.org/826663002/) Reason for revert: This causes compile failure on "Linux ChromiumOS Ozone Builder Build" http://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Ozone%20Builder/builds/9379 Original issue's description: > Support multiple video decoders and encoders > > Some platforms have multiple video decoders and encoders. > For decode and encoder, return the first succeed initialized VDA and VEA > from all possible platforms. GetSupportedProfile return all possible profiles > from all encoders. > > BUG=445016 > TEST=Tested on squawks. For decoder, make sure V4L2 initialization > failed and VAAPI successed. For encoder, test on extension. > > Committed: https://crrev.com/fce5ccd14c3676b960917c095a050b7a76b15227 > Cr-Commit-Position: refs/heads/master@{#310232} TBR=posciak@chromium.org,wuchengli@chromium.org,piman@chromium.org,henryhsu@chromium.org NOTREECHECKS=true NOTRY=true BUG=445016 Review URL: https://codereview.chromium.org/832383004 Cr-Commit-Position: refs/heads/master@{#310238}
* Support multiple video decoders and encodershenryhsu2015-01-071-3/+9
| | | | | | | | | | | | | | | Some platforms have multiple video decoders and encoders. For decode and encoder, return the first succeed initialized VDA and VEA from all possible platforms. GetSupportedProfile return all possible profiles from all encoders. BUG=445016 TEST=Tested on squawks. For decoder, make sure V4L2 initialization failed and VAAPI successed. For encoder, test on extension. Review URL: https://codereview.chromium.org/826663002 Cr-Commit-Position: refs/heads/master@{#310232}
* Add Vaapi support on Ozone/Freonlionel.g.landwerlin2015-01-021-0/+5
| | | | | | | | | | | BUG=403058 TEST=video_decode_accelerator_unittest and video_encode_accelerator_unittest TBR=jln,scherkus Review URL: https://codereview.chromium.org/825163004 Cr-Commit-Position: refs/heads/master@{#309863}
* Reland: Refactor Vaapi video decoder/encoder in preparation of Freon supportlionel.g.landwerlin2014-12-251-2/+23
| | | | | | | | | | | | | | | | | | | Previous CL : https://codereview.chromium.org/807853005 This introduces VaapiPicture which abstracts the output picture for the VaapiVideoDecodeAccelerator. This also splits out the x11 specific functions of LibVA into their own signature file. And finally this adds back GLImageGLX to match the code path that will be used on Freon, using GLImageLinuxDMABuffer. BUG=403058 TEST=video_decode_accelerator_unittest and video_encode_accelerator_unittest TBR=scherkus@chromium.org Review URL: https://codereview.chromium.org/817023005 Cr-Commit-Position: refs/heads/master@{#309648}
* base: Add free list implementation to browser-wide discardable memory system.reveman2014-12-241-0/+2
| | | | | | | | | | | | | | | | | | This adds a free list to the browser-wide discardable memory manager in child processes. This reduces the number of open file descriptors and improves performance significantly by avoiding a lot of browser process round-trips. Address-ordered best-fit policy is currently used as it is more likely to result in fewer locked segments but the policy can easily be adjusted if needed. BUG=429415 TEST=content_unittests --gtest_filter=DiscardableSharedMemoryHeapTest.* Review URL: https://codereview.chromium.org/807303002 Cr-Commit-Position: refs/heads/master@{#309595}
* Revert of Refactor Vaapi video decoder/encoder in preparation of Freon ↵dcheng2014-12-201-23/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | support (patchset #6 id:100001 of https://codereview.chromium.org/807853005/) Reason for revert: Caused build failure on Linux ChromiumOS GN: ninja: error: '../../content/common/content/common/gpu/media/va_x11.sigs', needed by 'obj/content/common/libva_generate_stubs.inputdeps.stamp', missing and no known rule to make it Original issue's description: > Refactor Vaapi video decoder/encoder in preparation of Freon support > > This introduces VaapiPicture which abstracts the output picture for the VaapiVideoDecodeAccelerator. > This also splits out the x11 specific functions of LibVA into their own signature file. > And finally this adds back GLImageGLX to match the code path that will be used on Freon, using GLImageLinuxDMABuffer. > > BUG=403058 > TEST=video_decode_accelerator_unittest and video_encode_accelerator_unittest > > Committed: https://crrev.com/289e96375e75be0d9158b86df2bd4faf2d7b2a64 > Cr-Commit-Position: refs/heads/master@{#309355} TBR=reveman@chromium.org,posciak@chromium.org,scherkus@chromium.org,piman@chromium.org,lionel.g.landwerlin@intel.com NOTREECHECKS=true NOTRY=true BUG=403058 Review URL: https://codereview.chromium.org/804353003 Cr-Commit-Position: refs/heads/master@{#309356}