summaryrefslogtreecommitdiffstats
path: root/content/browser
Commit message (Collapse)AuthorAgeFilesLines
* Revert of Move NumberOfPlanesForGpuMemoryBufferFormat to gfx (patchset #4 ↵rockot2015-08-121-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:120001 of https://codereview.chromium.org/1281043006/ ) Reason for revert: This breaks Win 64 builds: http://build.chromium.org/p/chromium.win/builders/Win%20x64%20GN Original issue's description: > Move NumberOfPlanesForGpuMemoryBufferFormat to gfx > > We will need to call it from media::GpuMemoryBufferVideoFramePool when we > add support for YUV_420_BIPLANAR. > > BUG=510260 > TEST=No behavior change, only moving code. > CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel > > Committed: https://crrev.com/85f29861d095a7c5dcf318053e8349d1efaddbab > Cr-Commit-Position: refs/heads/master@{#342942} TBR=reveman@chromium.org,ccameron@chromium.org,msw@chromium.org,jbauman@chromium.org,avi@chromium.org,andresantoso@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=510260 Review URL: https://codereview.chromium.org/1291643002 Cr-Commit-Position: refs/heads/master@{#342948}
* Move NumberOfPlanesForGpuMemoryBufferFormat to gfxandresantoso2015-08-121-4/+3
| | | | | | | | | | | | | We will need to call it from media::GpuMemoryBufferVideoFramePool when we add support for YUV_420_BIPLANAR. BUG=510260 TEST=No behavior change, only moving code. CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1281043006 Cr-Commit-Position: refs/heads/master@{#342942}
* Fix DevToolsFrameTraceRecorder to match timestamp to contentscaseq2015-08-115-74/+79
| | | | | | | | | | | | | We used to wait for extra frame (i.e. defer requesting pixels till next SwapBuffers) after fixing timestamp and meta-data. Turns out this is wrong in case of browser compositor, since CopyFromCompositingSurface() requests future pixels, not past ones -- so introduce a different code path where we always use latest timestamp and meta-data. BUG= Review URL: https://codereview.chromium.org/1277133005 Cr-Commit-Position: refs/heads/master@{#342932}
* Remove net_resources.rcbrettw2015-08-111-1/+0
| | | | | | | | This seems to not be used. Review URL: https://codereview.chromium.org/1281483012 Cr-Commit-Position: refs/heads/master@{#342895}
* Convert remaining StringToLowerASCII to ToLowerASCII.brettw2015-08-113-5/+5
| | | | | | | | | | | | | | | | | | | | | Remove StringToLowerASCII. This removes the template and makes a consistent call that can take a string piece. http_response_headers.cc in HttpResponseHeaders::RemoveHeaderLine there seemed to be a bug where it did std::string old_header_name_lowercase(name); where it actually meant std::string old_header_name_lowercase(old_header_name); I fixed this. There were a number of cases where url.host() or url.scheme() was passed to ToLowerASCII. These are already guaranteed lower-case, so I removed the call. There were a number of cases in net that did return ToLowerASCII().c_str() when the return type is a std::string, which is unnecessary and wasteful. I removed the c_str() call. NOPRESUBMIT=true (for touching code with wstrings) Review URL: https://codereview.chromium.org/1282363003 Cr-Commit-Position: refs/heads/master@{#342869}
* Only prime NSS in the sandbox for NSS ports.davidben2015-08-111-1/+1
| | | | | | | | | | | | | | | This code, if all goes well, can actually be deleted now. But leave it there as ifdefs for now case we still need to revert the chimera. Now that no calls to InitNSSSafely and friends are built in USE_OPENSSL ports, the LoadNSSLibraries calls and /dev/urandom fopen override may be removed. They were only added to support NSS in the sandbox. BUG=506323 Review URL: https://codereview.chromium.org/1274483002 Cr-Commit-Position: refs/heads/master@{#342846}
* Update PresentationService and PresentationDispatcher availability listening.mfoltz2015-08-113-112/+82
| | | | | | | | | | | | | | | | | | | This implements per-URL availability listening in PresentationService and PresentationDispatcher. If no URL is provided, the default presentation URL is assumed. This also renames "presentation URL" to "availability URL" in the relevant methods to align naming with the spec. The second part of a four-part patch. 1. [blink] https://codereview.chromium.org/1280713003 2. [content] This patch. 3. [blink] A patch to convert Blink to use the new API and remove the old API. (TBD) 4. [content] A patch to remove the implementation of the old API. (TBD) BUG=510814 Review URL: https://codereview.chromium.org/1266923003 Cr-Commit-Position: refs/heads/master@{#342828}
* bluetooth: mac: Add VLOGs to diagnose device discovery failures.scheib2015-08-111-0/+5
| | | | | | | | | | | | | | | | We currently do not understand why device discovery is succeeding on some recent Mac bluetooth chipsets, and failing on others. These VLOGs will improve our ability to collect reports and gather information from the CoreBluetooth API usage point of view. After device/bluetooth Mac Low Energy support is stable. That work is tracked in https://code.google.com/p/chromium/issues/detail?id=519010 BUG=516608 Review URL: https://codereview.chromium.org/1279373002 Cr-Commit-Position: refs/heads/master@{#342783}
* Handle finish composition on selection by long presschangwan2015-08-111-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a user long presses text on an input form, it changes selection region, and IME apps (Google Latin IME, Samsung IME) calls finishComposingText() in response to an external selection change. Long press updates text input info in two steps: a. Through didChangeSelection (only when selection was changed) b. Through GestureLongPress finishComposingText() is disregarded by IME app event suppression logic. We decided to keep this logic, but it had some issues with the long press selection case as follows: 1) finishComposingText() was ignored even when Blink side change was empty. Updates from GestureLongPress and didChangeSelection are almost same, except that GestureLongPress may show IME. Now we track text input state changes sent to browser in the renderer, to be able to make ShouldHandleImeEvent() more permissive in cases where we know browser and renderer are on the same page WRT state. 2a) The timing of ImeEventAck: we send ImeEventAck immediately after UpdateImeAdapter(), but this should be moved before the call so that it's sent before any state change that the msg might trigger when being handled. 2b) ImeEventAck and ConfirmComposition events are racy. Even though SendEventAck() is called before finishComposingText(), sometimes (usually) ConfirmComposition event is received before ImeEventAck event. This happens because they go through different IPC::Sender, so changed ImeEventAck to go through InputRouter by changing the message class. On top of adding an automated test, I've done the following manual tests: (on Samsung IME and Google Latin IME) - Long press while selection handles appear. - Long press while selection handles don't appear (window focus on IME). - Focus document and long press input text. - Long press empty selection. - Touch input form while pressing side button on Samsung Note 4. BUG=503903 Review URL: https://codereview.chromium.org/1217713002 Cr-Commit-Position: refs/heads/master@{#342778}
* Implements "chrome://appcache-internals" based on WebUI APIekaramad2015-08-1112-710/+1142
| | | | | | | | | | | | | | | | | Redid the "chrome://appcache-internals" page so that the new implementation is: 1- Based on "WebUIController" and similar to "chrome://indexed-db-internals". 2- Looks into "all" storage paritions when fetching application cache data. This was previously reported as a bug since the application cache for <webview> was not being shown on "chrome://appcache-internals". BUG=343683 Committed: https://crrev.com/8fc82b21621f21ea8d2d8cb483cb14295d1f6e1f Cr-Commit-Position: refs/heads/master@{#342671} Review URL: https://codereview.chromium.org/1191383004 Cr-Commit-Position: refs/heads/master@{#342774}
* Defer ServiceWorker update checks until after browser startup is complete.michaeln2015-08-112-0/+9
| | | | | | | | | | Also implement after startup task deferral more reasonably on android. Now its based on a signal from DeferredStartupHandler.java instead of an arbitrary 10 second timer. BUG=460265 Review URL: https://codereview.chromium.org/1078283002 Cr-Commit-Position: refs/heads/master@{#342768}
* Set skip_service_worker in ServiceWorkerControlleeRequestHandler only for ↵horo2015-08-102-5/+13
| | | | | | | | | | | | | | | | | | | | subresource requests. https://codereview.chromium.org/1274973002/ accidentally changed the Service Worker behavior of handling redirected page requests. If we set skip_service_worker for page requests, the final location of redirects will not correctly be handled by Service Worker. So this cl change to set |skip_service_worker| only for subresource requests. https://codereview.chromium.org/1280243002 will add LayoutTests for fallbacked subresource requests. BUG=517364, 512764, 518713 Review URL: https://codereview.chromium.org/1280133002 Cr-Commit-Position: refs/heads/master@{#342722}
* Ensure BrowserCdmManager's promises are safe to call while held.gunsch2015-08-101-20/+26
| | | | | | | | | | | | | | | The raw pointer that CdmPromiseInternal holds to BrowserCdmManager can become invalidated while the CdmPromiseInternal instance still lives. This change also forces Cast's BrowserCdm implementation to invoke the promises on the correct thread (which should have been the case before). R=xhwang@chromium.org,halliwell@chromium.org,lcwu@chromium.org BUG=internal b/22075780 Review URL: https://codereview.chromium.org/1279213002 Cr-Commit-Position: refs/heads/master@{#342714}
* IAccessibleText: Made content editables return embedded object information ↵nektar2015-08-106-23/+49
| | | | | | | | | | | and made all objects include any widespace. BUG=491027 R=dmazzoni@chromium.org,aboxhall@chromium.org Review URL: https://codereview.chromium.org/1223153002 Cr-Commit-Position: refs/heads/master@{#342700}
* Revert "Implements "chrome://appcache-internals" based on WebUI API"Joe Downing2015-08-1012-1143/+710
| | | | | | | | | | | This reverts commit 8fc82b21621f21ea8d2d8cb483cb14295d1f6e1f. BUG=518954 R=ekaramad@chromium.org Review URL: https://codereview.chromium.org/1283843003 . Cr-Commit-Position: refs/heads/master@{#342689}
* Implements "chrome://appcache-internals" based on WebUI APIekaramad2015-08-1012-710/+1143
| | | | | | | | | | | | | | Redid the "chrome://appcache-internals" page so that the new implementation is: 1- Based on "WebUIController" and similar to "chrome://indexed-db-internals". 2- Looks into "all" storage paritions when fetching application cache data. This was previously reported as a bug since the application cache for <webview> was not being shown on "chrome://appcache-internals". BUG=343683 Review URL: https://codereview.chromium.org/1191383004 Cr-Commit-Position: refs/heads/master@{#342671}
* Cache Storage: restrict access to secure origins (Chromium-side)jsbell2015-08-102-1/+26
| | | | | | | | | | | | Follow-up to https://codereview.chromium.org/1177983007/ to terminate renderers that send bogus cache storage access requests. BUG=501380 R=falken@chromium.org,mkwst@chromium.org,asvitkine@chromium.org, Review URL: https://codereview.chromium.org/1192003006 Cr-Commit-Position: refs/heads/master@{#342657}
* Add slimming paint v2 command line switch and prefwangxianzhu2015-08-102-0/+5
| | | | | | | | | | | (Requires blink change https://codereview.chromium.org/1277313002/) R=chrishtr,jam TBR=mkwst (a message field to pass the new pref) Review URL: https://codereview.chromium.org/1284483002 Cr-Commit-Position: refs/heads/master@{#342648}
* This patch allows find-in-page to work on the Chrome signin page.paulmeyer2015-08-103-8/+62
| | | | | | | | | | This is done by allowing any page with a single guest the possibility of handling a find request, and by implementing a way for different GuestView types to specify exactly when a guest of that type should handle a find request in place of its embedder. Right now, only MimeHandlerViews (in the case of PDFs) and WebViews (in the case of the chrome signin page) will potentially handle these requests. BUG=463799 Review URL: https://codereview.chromium.org/1279833004 Cr-Commit-Position: refs/heads/master@{#342643}
* Remove useless use of StringPrintf("%s", ...)ricea2015-08-101-1/+1
| | | | | | | | | | | | std::string has a constructor which accepts a C string, so it is not necessary to use StringPrintf() for this purpose. BUG= TEST=compile Review URL: https://codereview.chromium.org/1274713008 Cr-Commit-Position: refs/heads/master@{#342636}
* Temporarily disabling WebRTC content browsertests under debug.phoglund2015-08-102-31/+42
| | | | | | | | | | | We seem to be hitting libjingle asserts after the aug 4/5 roll, disabling the tests while investigating. BUG=517977 Review URL: https://codereview.chromium.org/1282263003 Cr-Commit-Position: refs/heads/master@{#342628}
* [DevTools] Report target detached on non-error termination of render process.jbudorick2015-08-104-0/+27
| | | | | | | | BUG=513940 Review URL: https://codereview.chromium.org/1258073002 Cr-Commit-Position: refs/heads/master@{#342617}
* Mac Overlays: Add GPU back-pressureccameron2015-08-104-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue a GL fence after every SwapBuffers. Do not call -[CALayer setContents:] with the content being rendered by that SwapBuffers until the fence has passed. Query the previous's frame's GL fence at the beginning of each SwapBuffers. Also issue a callback to query the GL fence at the mid-point of the VSync period (if there is no subsequent SwapBuffers, or if the frame takes more than one VSync to render). Note that waiting for the GL fence to complete before calling -[CALayer setContents] is not required for correctness -- only the expected content (everything before the glFlush) will appear in the layer. Rather, the reason for waiting for the GL fence is to make the time at which the content will appear on-screen more reliable. Because there may be multiple calls to SwapBuffers in flight, store the data necessary to call -[CALayer setContents] in a PendingSwap structure. Maintain a queue of these structures. Because the ImageTransportSurface does not know anything about the VSync period, send the CGDirectDisplayID for the attached display to the ImageTransportSurface in the AcceleratedSurfaceMsg_BufferPresented IPC (which is where the CGL renderer ID is already communicated). Send this information instead of the raw VSync parameters so that the updates to all windows on a single display may be coalesced into a single callback in the future. Note that this display is the display that is used for vsync by the RenderWidgetHostViewMac, so if vsync is disabled, it will be 0. Separate gfx::ScopedSetGLToRealGLApi into its own header file to simplify header orders. Access the IOSurface of the GLImageIOSurface directly, rather than using its ScheduleOverlayPlane method. This simplifies things immediately, in that we can reason about the underlying IOSurface's lifetime better than weak pointers to images. It will also simplify the implementation of partial swap and multiple overlays. BUG=515696 Committed: https://crrev.com/5c207cac73c835b5f362670d6b46333dfae1f4c4 Cr-Commit-Position: refs/heads/master@{#342548} Review URL: https://codereview.chromium.org/1273563002 Cr-Commit-Position: refs/heads/master@{#342603}
* Move Service Worker %2f validation logic from browser into Blink (3)jeremyarcher2015-08-102-4/+33
| | | | | | | | | | | | | | | | | This patch ensures that a compromised renderer is still unable to register Service Workers with an invalid scope or scriptURL (see bug for spec details). 1. (Chromium) https://codereview.chromium.org/1259213002 2. (Blink) https://codereview.chromium.org/1260003003/ 3. (Chromium) This CL. BUG=513622 R=nhiroki, falken Review URL: https://codereview.chromium.org/1256833004 Cr-Commit-Position: refs/heads/master@{#342601}
* Reland of Skip the Service Worker CORS fallback for same origin requests. ↵horo2015-08-101-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [2/2 chromium] (patchset #1 id:1 of https://codereview.chromium.org/1258893004/ ) Reason for revert: LayoutTest failure was fixed by https://codereview.chromium.org/1274973002/ Original issue's description: > Revert of Skip the Service Worker CORS fallback for same origin requests. [2/2 chromium] (patchset #1 id:40001 of https://codereview.chromium.org/1242953007/) > > Reason for revert: > This broke http/tests/serviceworker/fetch-request-fallback.html, causing failures on 3 bots and timeouts on 18 bots. > > See http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=http%2Ftests%2Fserviceworker%2Ffetch-request-fallback.html&testType=layout-tests > > Original issue's description: > > Skip the Service Worker CORS fallback for same origin requests. [2/2 chromium] > > > > We are sending CORS fallback response from the browser process to the page's renderer process, when the ServiceWorker doesn't handle the CORS fetch request. > > But when the request URL's origin is same as the page's security origin, we can skip the fallback and send the request from the browser process. > > > > This change will improve the delay of the CORS fallback for same origin requests, especially when the renderer main thread is busy. > > > > 1/2 blink: https://codereview.chromium.org/1243353002/ > > 2/2 chromium: this cl. > > > > BUG=512764 > > > > Committed: https://crrev.com/97b13409b0c601f21f048744fa8e31852b476337 > > Cr-Commit-Position: refs/heads/master@{#341482} > > TBR=falken@chromium.org,tyoshino@chromium.org,horo@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=512764 > > Committed: https://crrev.com/ac2794675706a635dd3e54245c27f64411927a6c > Cr-Commit-Position: refs/heads/master@{#341499} TBR=falken@chromium.org,tyoshino@chromium.org,johnme@chromium.org NOPRESUBMIT=true NOTREECHECKS=true BUG=512764 Review URL: https://codereview.chromium.org/1282193002 Cr-Commit-Position: refs/heads/master@{#342600}
* Appease jschuh@ by adding a field trial to move 'plugin' to blockable mixed ↵mkwst2015-08-101-0/+5
| | | | | | | | | | content. BUG=513163 Review URL: https://codereview.chromium.org/1260163005 Cr-Commit-Position: refs/heads/master@{#342597}
* Disable flaky test ↵raymes2015-08-101-1/+9
| | | | | | | | | | | | | SitePerProcessBrowserTest.PostMessageWithSubframeOnOpenerChain on windows This test is particularly flaky on windows. BUG=518729 TBR=nasko@chromium.org Review URL: https://codereview.chromium.org/1282753002 Cr-Commit-Position: refs/heads/master@{#342583}
* Revert of Re-land: cc: Use worker context for one-copy tile initialization. ↵kbr2015-08-0913-47/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #22 id:420001 of https://codereview.chromium.org/1230203007/ ) Reason for revert: I'm sorry, but this patch definitely causes failures of one of the context_lost tests on Windows on multiple bots as described in https://code.google.com/p/chromium/issues/detail?id=490295#c15 . I'm sorry the CQ isn't catching these, and I'm not sure why it isn't -- but it's important to fix these failures rather than leaving them on the tree. Original issue's description: > Re-land: cc: Use worker context for one-copy tile initialization. > > This moves management of staging resources to > OneCopyTileTaskWorkerPool class. This makes it possible > to use a worker context to issue and detect when copy > operations complete. > > BUG=490295 > CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel > > Committed: https://crrev.com/a6b998600660f34bcce9fbc2c75bbc0a3f7f03cc > Cr-Commit-Position: refs/heads/master@{#342567} TBR=piman@chromium.org,primiano@chromium.org,vmiura@chromium.org,vmpstr@chromium.org,reveman@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=490295 Review URL: https://codereview.chromium.org/1282183002 Cr-Commit-Position: refs/heads/master@{#342568}
* Re-land: cc: Use worker context for one-copy tile initialization.reveman2015-08-0913-18/+47
| | | | | | | | | | | | | | This moves management of staging resources to OneCopyTileTaskWorkerPool class. This makes it possible to use a worker context to issue and detect when copy operations complete. BUG=490295 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1230203007 Cr-Commit-Position: refs/heads/master@{#342567}
* Revert of Mac Overlays: Add GPU back-pressure (patchset #8 id:140001 of ↵kbr2015-08-094-14/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1273563002/ ) Reason for revert: This broke the WebGL 2.0 prototype on Mac OS -- please see https://code.google.com/p/chromium/issues/detail?id=515696#c16 for details. Original issue's description: > Mac Overlays: Add GPU back-pressure > > Issue a GL fence after every SwapBuffers. Do not call -[CALayer > setContents:] with the content being rendered by that SwapBuffers until > the fence has passed. > > Query the previous's frame's GL fence at the beginning of each > SwapBuffers. Also issue a callback to query the GL fence at the > mid-point of the VSync period (if there is no subsequent SwapBuffers, > or if the frame takes more than one VSync to render). > > Note that waiting for the GL fence to complete before calling -[CALayer > setContents] is not required for correctness -- only the expected content > (everything before the glFlush) will appear in the layer. Rather, the > reason for waiting for the GL fence is to make the time at which the > content will appear on-screen more reliable. > > Because there may be multiple calls to SwapBuffers in flight, store the > data necessary to call -[CALayer setContents] in a PendingSwap > structure. Maintain a queue of these structures. > > Because the ImageTransportSurface does not know anything about the > VSync period, send the CGDirectDisplayID for the attached display to the > ImageTransportSurface in the AcceleratedSurfaceMsg_BufferPresented IPC > (which is where the CGL renderer ID is already communicated). Send this > information instead of the raw VSync parameters so that the updates to > all windows on a single display may be coalesced into a single callback > in the future. > > Note that this display is the display that is used for vsync by the > RenderWidgetHostViewMac, so if vsync is disabled, it will be 0. > > Separate gfx::ScopedSetGLToRealGLApi into its own header file to > simplify header orders. > > Access the IOSurface of the GLImageIOSurface directly, rather than > using its ScheduleOverlayPlane method. This simplifies things > immediately, in that we can reason about the underlying IOSurface's > lifetime better than weak pointers to images. It will also simplify > the implementation of partial swap and multiple overlays. > > BUG=515696 > > Committed: https://crrev.com/5c207cac73c835b5f362670d6b46333dfae1f4c4 > Cr-Commit-Position: refs/heads/master@{#342548} TBR=dcheng@chromium.org,jbauman@chromium.org,tapted@chromium.org,ccameron@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=515696 Review URL: https://codereview.chromium.org/1280033004 Cr-Commit-Position: refs/heads/master@{#342566}
* Reland: Implement Aura side of unified touch text selection for contentsmohsen2015-08-0911-1267/+1033
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the first part of unified touch text selection for Aura which implements it using the new ui::TouchSelectionController for contents. Selection updates are now coming from swap-compositor-frame IPC message instead of selection-bounds-changed IPC message. This CL also replaces TouchEditableImplAura (owned by WebContentsViewAura) with ui::TouchSelectionController (owned by RenderWidgetHostViewAura) for which a client implementation is provided in TouchSelectionControllerClientAura. Note that at the moment we are unable to remove selection-bounds-changed IPC message completely as it is also used by IME and the new path is not yet working properly inside <webview> (which is being worked on). Next part would be using ui::TouchSelectionController to implement unified touch text selection for Views textfields. Relanding after the blink issue for composited selection in remote frames got fixed: r200194. COLLABORATOR=mfomitchev BUG=399721 Committed: https://crrev.com/2a5e3624e4d0b78bfe5f5a3d40f5a98730291056 Cr-Commit-Position: refs/heads/master@{#341134} Review URL: https://codereview.chromium.org/698253004 Cr-Commit-Position: refs/heads/master@{#342555}
* [tracing] Disable memory maps dump provider for security reasonssid2015-08-091-0/+1
| | | | | | | | | | | | The memory maps should not be exposed to untrusted renderers. So, the memory maps dump provider is disabled till the tracing infra is more secure. BUG=517906 Review URL: https://codereview.chromium.org/1275013005 Cr-Commit-Position: refs/heads/master@{#342549}
* Mac Overlays: Add GPU back-pressureccameron2015-08-094-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue a GL fence after every SwapBuffers. Do not call -[CALayer setContents:] with the content being rendered by that SwapBuffers until the fence has passed. Query the previous's frame's GL fence at the beginning of each SwapBuffers. Also issue a callback to query the GL fence at the mid-point of the VSync period (if there is no subsequent SwapBuffers, or if the frame takes more than one VSync to render). Note that waiting for the GL fence to complete before calling -[CALayer setContents] is not required for correctness -- only the expected content (everything before the glFlush) will appear in the layer. Rather, the reason for waiting for the GL fence is to make the time at which the content will appear on-screen more reliable. Because there may be multiple calls to SwapBuffers in flight, store the data necessary to call -[CALayer setContents] in a PendingSwap structure. Maintain a queue of these structures. Because the ImageTransportSurface does not know anything about the VSync period, send the CGDirectDisplayID for the attached display to the ImageTransportSurface in the AcceleratedSurfaceMsg_BufferPresented IPC (which is where the CGL renderer ID is already communicated). Send this information instead of the raw VSync parameters so that the updates to all windows on a single display may be coalesced into a single callback in the future. Note that this display is the display that is used for vsync by the RenderWidgetHostViewMac, so if vsync is disabled, it will be 0. Separate gfx::ScopedSetGLToRealGLApi into its own header file to simplify header orders. Access the IOSurface of the GLImageIOSurface directly, rather than using its ScheduleOverlayPlane method. This simplifies things immediately, in that we can reason about the underlying IOSurface's lifetime better than weak pointers to images. It will also simplify the implementation of partial swap and multiple overlays. BUG=515696 Review URL: https://codereview.chromium.org/1273563002 Cr-Commit-Position: refs/heads/master@{#342548}
* Revert of Android WebVR implementation, Cardboard 0.5.5 SDK (patchset #10 ↵bajones2015-08-0812-412/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | id:180001 of https://codereview.chromium.org/1200303002/ ) Reason for revert: Build config issue on ASAN bots. Original issue's description: > Android WebVR implementation, Cardboard 0.5.5 SDK > > Previously part of https://codereview.chromium.org/829803003/ > > BUG=389343 > > Committed: https://crrev.com/1d9c45547709e77d599c218d76317895389db129 > Cr-Commit-Position: refs/heads/master@{#342496} TBR=jochen@chromium.org,jdduke@chromium.org,sievers@chromium.org,tedchoc@chromium.org,thakis@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=389343 Review URL: https://codereview.chromium.org/1274913004 Cr-Commit-Position: refs/heads/master@{#342546}
* clang/win: Try to fix 64-bit build more after ↵Nico Weber2015-08-081-0/+2
| | | | | | | | | | | https://codereview.chromium.org/1261953003. BUG=505316 TBR=jochen@chromium.org Review URL: https://codereview.chromium.org/1273963003. Cr-Commit-Position: refs/heads/master@{#342542}
* Android WebVR implementation, Cardboard 0.5.5 SDKbajones2015-08-0812-6/+412
| | | | | | | | | | Previously part of https://codereview.chromium.org/829803003/ BUG=389343 Review URL: https://codereview.chromium.org/1200303002 Cr-Commit-Position: refs/heads/master@{#342496}
* Update SplitString calls to new formbrettw2015-08-089-31/+31
| | | | | | | | | | | | Uses the new form for most (but not quite all) of the remaining users of the old form. Reland of https://codereview.chromium.org/1272823003 but with no changes to the way media parses codec lists. The previous landing attempted to simplify some handling but there are layout tests that expect the old behavior, and I'm not qualified to tell if it's OK to change. TBR=sky Review URL: https://codereview.chromium.org/1274123003 Cr-Commit-Position: refs/heads/master@{#342489}
* bluetooth: Return specific message if Bluetooth Adapter is offortuno2015-08-081-0/+26
| | | | | | | | | | | | | | | | | | | | | | Per discussion in: https://github.com/WebBluetoothCG/web-bluetooth/issues/127#issuecomment-119698067 an off bluetooth adapter now rejects with NotFoundError. Also adds necessary fake adapters. Three-way patch to add 'BluetoothAdapter is off' error message: [1] Add constant to public WebBluetoothError. (http://crrev.com/1267843005) [2] This patch. [3] Add tests for Not present adapter and Off adapter. (http://crrev.com/1261993012) Drive-by fix: Inherits form |BaseAdapter| -> |EmptyAdapter| BUG=515573 Review URL: https://codereview.chromium.org/1264323002 Cr-Commit-Position: refs/heads/master@{#342485}
* don't use deprecated SkRect* src-rect parameter typereed2015-08-071-1/+1
| | | | | | | | | | | | | | | | | | mechanical change. either: - turn 2 parameter version (bitmap, rect) into 3 (bitmap, rect, NULL) or - change &srcRect into srcRect BUG= CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel TBR= NOTRY=True -- win_chromium_rel_ng failure is not related to this CL Review URL: https://codereview.chromium.org/1278013002 Cr-Commit-Position: refs/heads/master@{#342479}
* Fix accessibility tests on Mac 10.10dmazzoni2015-08-072-5/+6
| | | | | | | | | | | | | | The role description for "check box" is inconsistent between versions, so use our own string rather than the system string. AccessibilityInputDateTimeLocal is too OS-version-dependent, just disable it on Mac for now, as it has some coverage on other platforms. BUG=513883 Review URL: https://codereview.chromium.org/1278203002 Cr-Commit-Position: refs/heads/master@{#342466}
* Remove Android filter file for content_unittests.tfarina2015-08-073-14/+38
| | | | | | | | | | BUG=339980 TEST=content_unittests R=jbudorick@chromium.org,jochen@chromium.org Review URL: https://codereview.chromium.org/1278063003 Cr-Commit-Position: refs/heads/master@{#342460}
* Move net::FormatUrl and friends outside of //net and into //componentsrsleevi2015-08-075-8/+11
| | | | | | | | | | | | | | | | | | | | | net::FormatUrl and related are specifically concerned with display policies of URLs, which is not something that //net needs to be aware of, as that's a UX question. This folds in net::FormatURL along with the existing //components/url_fixer and //components/secure_display into a common component, //components/url_formatter, that handles reformatting URLs for user-friendly or data storage (url_formatter), for use in security prompts (elide_url), or for reformatting URLs from user input (url_fixer) (Disabling presubmit since this is intentionally not fixing a legacy API, just moving it for future cleanups) BUG=486979 NOPRESUBMIT=true Review URL: https://codereview.chromium.org/1171333003 Cr-Commit-Position: refs/heads/master@{#342445}
* Slow Reports - Use range-based for loops in background_tracing_config_dict.simonhatch2015-08-071-25/+19
| | | | | | | | This is the preferred way for iterating in loops now, https://chromium-cpp.appspot.com/, and makes the code more concise and easy to read. We already switched a few in https://codereview.chromium.org/1243743002/, might as well do these too. Review URL: https://codereview.chromium.org/1263863004 Cr-Commit-Position: refs/heads/master@{#342442}
* [tracing] Reland of Throttle rate of heavy dumps and support to request ↵ssid2015-08-071-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | light/heavy dumps Reason for revert: telemetry test failure. Fix: This CL adds the missing IPC macros for passing the struct which caused the test failure. Original message: Currently all the dump providers dump detailed dumps every periodic dump. This makes the trace files huge. So, this CL throttles down the rate of heavy dumps of all the dump providers and removes temporary hacks. Along with this, this CL also adds support to request light and heavy dumps by adding MemoryDumpArgs as param to RequestGlobalDump() TBR=pfeldman@chromium.org, nduca@chromium.org BUG=499731 Committed: https://crrev.com/33f2d3a5b276b70040adfd21edf364bd666b0aa2 Cr-Commit-Position: refs/heads/master@{#342145} patch from issue 1267963002 at patchset 80001 (http://crrev.com/1267963002#ps80001) Review URL: https://codereview.chromium.org/1282453002 Cr-Commit-Position: refs/heads/master@{#342436}
* Reland https://codereview.chromium.org/1271593002/ which was revertedmmenke2015-08-072-35/+97
| | | | | | | | | | | | | | | | | | | | | | | in https://codereview.chromium.org/1273813005/. The CL is unchanged, except the DCHECKs that uncovered another bug have been removed. They'll be added back once that bug is fixed. Fix cancellation of a pair of URLRequestJob subclasses. URLRequestSimpleJob and URLRequestChromeJob can call back into their parent URLRequestJob class after Kill() has been invoked, which can cause Bad Things. Longer term, we should think about the interface between URLRequestJob and its subclasses, to see if we can create a more robust interface. BUG=508900 Committed: https://crrev.com/363ce98af274c07f43acac74b7ca7c23641c996e Cr-Commit-Position: refs/heads/master@{#342211} Review URL: https://codereview.chromium.org/1281943002 Cr-Commit-Position: refs/heads/master@{#342390}
* Pass user gesture bit when chrome handles an intent fired by itselfqinmin2015-08-073-0/+18
| | | | | | | | | | | | | | | | It is possible for user to choose chrome when url overriding results in an intent chooser. In this case, we should let everything work as if nothing has happened. However, intent handling will result in a new url request. And that causes chrome to lose the user gesture bit, and introduces some side effects. For example, when clicking a pdf link, the pdf will be auto opened by docs app. However, if Adobe pdf reader is installed, an intent chooser will be shown when clicking the pdf link. If user chooses chrome to handle the intent, the pdf will be downloaded, but not auto opened due to the missing user gesture BUG=512633 Review URL: https://codereview.chromium.org/1243253004 Cr-Commit-Position: refs/heads/master@{#342388}
* Don't send the redirected request once the request was fallbacked to the ↵horo2015-08-072-3/+7
| | | | | | | | | | | | | network. According to the fetch spec (https://fetch.spec.whatwg.org/), once the request goes to the network, skip-service-worker flag must be set. So if the server returns a redirect response, the next request must not be handled by service worker. BUG=517364,512764 Review URL: https://codereview.chromium.org/1274973002 Cr-Commit-Position: refs/heads/master@{#342386}
* Refactor browser side navigator.connect code to not use MessagePortService.mek2015-08-076-369/+203
| | | | | | | | | | | | | | | | This is the first step towards unifying client side and service side ServicePort instances, but also removes a layer of abstraction in how connections to services are setup. The abstraction layer will probably later be reintroduced differently. BUG=426458 Committed: https://crrev.com/9b053ed8f7b8893ad0a5a33d31546c70563ddf20 Cr-Commit-Position: refs/heads/master@{#341987} Review URL: https://codereview.chromium.org/1224263007 Cr-Commit-Position: refs/heads/master@{#342374}
* Reports the position of the caret and current selection in content editables.nektar2015-08-076-42/+412
| | | | | | | | | | Implements storing of per-frame selection offsets in the accessibility tree and adds Windows specific code for reporting these offsets across embedded objects according to the IA2 Spec. BUG=491027 R=dmazzoni@chromium.org Review URL: https://codereview.chromium.org/1195223006 Cr-Commit-Position: refs/heads/master@{#342368}
* Adds support for hittesting points on surface quads.lfg2015-08-076-0/+35
| | | | | | | | | | | This is the first patch towards adding support for browser-process quad hittesting. This will be used for out of process iframes as a way to determine which process should receive input events. BUG=491334 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1265013003 Cr-Commit-Position: refs/heads/master@{#342362}