| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This splits ozone & android GLSurface creation into their own files,
matching all of the other platforms.
Also, all platforms that support EGL now implement
GetPlatformDefaultEGLNativeDisplay() to determine the EGL display to
use, eliminating an ifdef.
This is cleaning things up in preparation for introducing a new
ozone-specific GLSurfaceEGL subclass without adding more ifdefs.
TEST=ui_unittests, content_shell --ozone-platform={file,dri}
BUG=353788
R=piman@chromium.org, rjkroege@chromium.org
Review URL: https://codereview.chromium.org/196403008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259923 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NativeViewGLSurfaceEGL requires a EGLNativeWindowType argument, so make
this explicit. With ozone, we want gfx::AcceleratedWidget to be different
from EGLNativeWindowType, and this prepares for that possibility.
TEST=ui_unittests, content_shell --ozone-platform={file,dri}
BUG=353788
Review URL: https://codereview.chromium.org/202683003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259090 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=339493
Review URL: https://codereview.chromium.org/207443007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258740 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This allows Chrome to specify the expected size of the backbuffer, so that it renders correctly even when the context is started on a minimized window.
BUG=320021
Review URL: https://codereview.chromium.org/180723013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@254211 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ozone is actually creating the VSyncProvider. The caller will also take
ownership of the VSyncProvider. Updating the method definition to better reflect
the intent.
BUG=
Review URL: https://codereview.chromium.org/102563005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@243688 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Custom implementations of the VSyncProvider (such as the Ozone provider) need
to inherit from VSyncProvider. However, these implementations leave outside of
ui/gl and would break deps. Moving the interface to ui/gfx would allow such
implementations to inherit the VSyncProvider interface.
BUG=
Review URL: https://codereview.chromium.org/68893002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@235172 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
http://www.khronos.org/registry/egl/extensions/KHR/EGL_KHR_surfaceless_context.txt
This patch adds support in GLSurfaceEGL to be able to use
surfaceless context when supported by the drivers. This avoids
the creation of a dummy offscreen surface. This would also enable
support for offscreen rendering on platforms (i.e Ozone-Wayland) which
donot support pbuffer surfaces.
BUG=
Review URL: https://codereview.chromium.org/49533003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232615 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
DwmGetCompositionTimingInfo works to find out vsync info on Vista+. Luckily using a NULL HWND (required on Win 8.1+) avoids the issue where the window starts flickering.
BUG=291390
Review URL: https://codereview.chromium.org/25102004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226152 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=254986
TEST=none
TBR=ben@chromium.org
Review URL: https://codereview.chromium.org/18149004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209153 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
We aren't using it anymore. It used to be used to switch to SwitchShader but the new version of SwiftShader exposes a EGL / GLES2 interface without ANGLE in between.
TBR=kbr@chromium.org, senorblanco@chromium.org
Review URL: https://codereview.chromium.org/17110007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206759 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL is a first step towards supporting a build of the Aura
content shell on the native Linux framebuffer device. It sets up
the necessary defines such that an injected surface provider
dependency can vend a native surface.
BUG=178543
Review URL: https://chromiumcodereview.appspot.com/13886018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201996 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes "Hisilicon" GPUs, which is an instance of a
Vivante's GPU design. This involves enabling virtual
contexts, since they don't support share-groups, and further
adds a work-around for switching surfaces. Without the work-
around the view surface "inherits" the size of the last
bound surface (which for Chrome tends to be a 1x1 pbuffer)
resulting in a black screen. The following steps "repair"
the view surface every time it is made current:
- Make it current.
- Bind the default frame-buffer.
- Make it not current.
- Destroy/recreate it from the native handle.
- Make it current again.
NOTE: The "Recreate" function is added to surface because
the Destroy/Initialize may be intercepted or modified by
wrapper surface classes. Recreate is similar to resize,
which after being forwarded by a wrapper can call
Destroy/Initialize on the 'real' surface.
BUG=179250
NOTRY=true
No-try, as all the relevant bots are already green.
Review URL: https://chromiumcodereview.appspot.com/13852023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195349 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Revert "gpu: Fix uninitialized variable."
Reverting these two CLs so they can be landed behind
#ifdef's (for merge safety).
BUG=179250
NOTRY=true
No try since this is just a revert.
Review URL: https://chromiumcodereview.appspot.com/14241009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195275 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes "Hisilicon" GPUs, which is an instance of a
Vivante's GPU design. This involves enabling virtual
contexts, since they don't support share-groups, and further
adds a work-around for switching surfaces. Without the work-
around the view surface "inherits" the size of the last
bound surface (which for Chrome tends to be a 1x1 pbuffer)
resulting in a black screen. The following steps "repair"
the view surface every time it is made current:
- Make it current.
- Bind the default frame-buffer.
- Make it not current.
- Destroy/recreate it from the native handle.
- Make it current again.
NOTE: The "Recreate" function is added to surface because
the Destroy/Initialize may be intercepted or modified by
wrapper surface classes. Recreate is similar to resize,
which after being forwarded by a wrapper can call
Destroy/Initialize on the 'real' surface.
BUG=179250, 229643
NOTRY=true
No try, since it's Android only and already tested.
Review URL: https://chromiumcodereview.appspot.com/13140006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194737 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Remove forward-definitions of EGL types from ui/gl/gl_bindings.h, and use
the actual EGL headers instead.
* Clean up users of gl_bindings.h to not use system headers.
BUG=chromium:169433
TEST=local build, run on snow; trybots
Change-Id: Ibdf8f92574ff1a31389531fa462f05319b20a66f
Review URL: https://chromiumcodereview.appspot.com/11961032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177834 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Uses EGL_CHROMIUM_sync_control (a subset of GLX_OML_sync_control) to calculate refresh rate and when refreshes occur. This CL factors out common code from the GLX_OML_sync_control implementation.
BUG=none
TEST=by hand on stumpy, daisy, and desktop
Review URL: https://codereview.chromium.org/11865021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176668 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Add symbol exports needed to build content shell.
BUG=158821
Review URL: https://codereview.chromium.org/11368031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165420 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This is really just to allow the compositor to call reshape() on this
type of surface when the view size changes initially (from 0x0 to the
window width and height) without hitting NOTIMPLEMENTED() in GLSurface.
Review URL: https://chromiumcodereview.appspot.com/10836300
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152042 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
to resets of the graphics card.
BUG=138162
TEST=ran https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/conformance-suites/1.0.1/extra/slow-shader-example.html on Windows with ANGLE and verified that new code path was taken
Review URL: https://chromiumcodereview.appspot.com/10822029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148721 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
For context see this thread:
https://groups.google.com/a/chromium.org/forum/?fromgroups#!topic/chromium-dev/RMcVNGjB4II
TBR=thakis,pkasting,jam
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146163 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=123295
TEST=none
Review URL: https://chromiumcodereview.appspot.com/10392152
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137893 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Without this we can attempt to use an incompatible config/context.
BUG=chromium-os:27980
TEST=Works on Tegra and Mesa softpipe (formerly not working).
Review URL: https://chromiumcodereview.appspot.com/10391081
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137257 0039d316-1c4b-4281-b951-d872f2087c98
|
|
BUG=104040
R=ben@chromium.org
TBR=tony@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10392068
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@136777 0039d316-1c4b-4281-b951-d872f2087c98
|