Commit 937bc82b by Jonah Ryan-Davis Committed by Commit Bot

Revert "GLX: Expose EGL_ANGLE_window_fixed_size"

This reverts commit fa9b803e. Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=1157748 Original change's description: > GLX: Expose EGL_ANGLE_window_fixed_size > > Right now the GLX backend checks for resize on every SwapBuffers > call. If EGL_ANGLE_window_fixed_size is used, it will only resize > when signaled by Chrome. > > Bug: chromium:1132827 > Change-Id: Ia4ddbbbf6dcf13f46ad564208eccc517de8be33c > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2572886 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> TBR=syoussefi@chromium.org,jonahr@google.com,jmadill@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:1132827 Change-Id: I1110c5dd5d806b3c6c59308d4865f0d3aa57fc3f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2595197Reviewed-by: 's avatarJonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
parent 4a8a8470
......@@ -34,11 +34,9 @@ SurfaceState::SurfaceState(const egl::Config *configIn, const AttributeMap &attr
config((configIn != nullptr) ? new egl::Config(*configIn) : nullptr),
attributes(attributesIn),
timestampsEnabled(false),
directComposition(false),
isFixedSize(false)
directComposition(false)
{
directComposition = attributes.get(EGL_DIRECT_COMPOSITION_ANGLE, EGL_FALSE) == EGL_TRUE;
isFixedSize = attributes.get(EGL_FIXED_SIZE_ANGLE, EGL_FALSE) == EGL_TRUE;
}
SurfaceState::~SurfaceState()
......@@ -72,6 +70,7 @@ Surface::Surface(EGLint surfaceType,
mHorizontalResolution(EGL_UNKNOWN),
mVerticalResolution(EGL_UNKNOWN),
mMultisampleResolve(EGL_MULTISAMPLE_RESOLVE_DEFAULT),
mFixedSize(false),
mFixedWidth(0),
mFixedHeight(0),
mTextureFormat(TextureFormat::NoTexture),
......@@ -116,7 +115,8 @@ Surface::Surface(EGLint surfaceType,
mInitState = gl::InitState::MayNeedInit;
}
if (mState.isFixedSize)
mFixedSize = (attributes.get(EGL_FIXED_SIZE_ANGLE, EGL_FALSE) == EGL_TRUE);
if (mFixedSize)
{
mFixedWidth = static_cast<size_t>(attributes.get(EGL_WIDTH, 0));
mFixedHeight = static_cast<size_t>(attributes.get(EGL_HEIGHT, 0));
......@@ -469,22 +469,22 @@ EGLenum Surface::getMultisampleResolve() const
EGLint Surface::isFixedSize() const
{
return mState.isFixedSize;
return mFixedSize;
}
EGLint Surface::getWidth() const
{
return mState.isFixedSize ? static_cast<EGLint>(mFixedWidth) : mImplementation->getWidth();
return mFixedSize ? static_cast<EGLint>(mFixedWidth) : mImplementation->getWidth();
}
EGLint Surface::getHeight() const
{
return mState.isFixedSize ? static_cast<EGLint>(mFixedHeight) : mImplementation->getHeight();
return mFixedSize ? static_cast<EGLint>(mFixedHeight) : mImplementation->getHeight();
}
egl::Error Surface::getUserWidth(const egl::Display *display, EGLint *value) const
{
if (mState.isFixedSize)
if (mFixedSize)
{
*value = static_cast<EGLint>(mFixedWidth);
return NoError();
......@@ -497,7 +497,7 @@ egl::Error Surface::getUserWidth(const egl::Display *display, EGLint *value) con
egl::Error Surface::getUserHeight(const egl::Display *display, EGLint *value) const
{
if (mState.isFixedSize)
if (mFixedSize)
{
*value = static_cast<EGLint>(mFixedHeight);
return NoError();
......
......@@ -58,7 +58,6 @@ struct SurfaceState final : private angle::NonCopyable
SupportedCompositorTiming supportedCompositorTimings;
SupportedTimestamps supportedTimestamps;
bool directComposition;
bool isFixedSize;
};
class Surface : public LabeledObject, public gl::FramebufferAttachmentObject
......
......@@ -896,7 +896,6 @@ void DisplayGLX::generateExtensions(egl::DisplayExtensions *outExtensions) const
outExtensions->displaySemaphoreShareGroup = true;
outExtensions->surfacelessContext = true;
outExtensions->windowFixedSize = true;
if (!mRenderer->getFeatures().disableSyncControlSupport.enabled)
{
......
......@@ -10,7 +10,6 @@
#include "common/debug.h"
#include "libANGLE/Surface.h"
#include "libANGLE/renderer/gl/glx/DisplayGLX.h"
#include "libANGLE/renderer/gl/glx/FunctionsGLX.h"
......@@ -141,13 +140,10 @@ egl::Error WindowSurfaceGLX::swap(const gl::Context *context)
mGLXDisplay->setSwapInterval(mGLXWindow, &mSwapControl);
mGLX.swapBuffers(mGLXWindow);
if (!mState.isFixedSize)
egl::Error error = checkForResize();
if (error.isError())
{
egl::Error error = checkForResize();
if (error.isError())
{
return error;
}
return error;
}
return egl::NoError();
......@@ -239,24 +235,6 @@ glx::Drawable WindowSurfaceGLX::getDrawable() const
return mGLXWindow;
}
void WindowSurfaceGLX::setFixedWidth(EGLint width)
{
mParentWidth = width;
mGLX.waitGL();
XResizeWindow(mDisplay, mWindow, mParentWidth, mParentHeight);
mGLX.waitX();
XSync(mDisplay, False);
}
void WindowSurfaceGLX::setFixedHeight(EGLint height)
{
mParentHeight = height;
mGLX.waitGL();
XResizeWindow(mDisplay, mWindow, mParentWidth, mParentHeight);
mGLX.waitX();
XSync(mDisplay, False);
}
bool WindowSurfaceGLX::getWindowDimensions(Window window,
unsigned int *width,
unsigned int *height) const
......
......@@ -56,9 +56,6 @@ class WindowSurfaceGLX : public SurfaceGLX
egl::Error checkForResize() override;
glx::Drawable getDrawable() const override;
void setFixedWidth(EGLint width) override;
void setFixedHeight(EGLint height) override;
egl::Error getSyncValues(EGLuint64KHR *ust, EGLuint64KHR *msc, EGLuint64KHR *sbc) override;
egl::Error getMscRate(EGLint *numerator, EGLint *denominator) override;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment