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 ...@@ -34,11 +34,9 @@ SurfaceState::SurfaceState(const egl::Config *configIn, const AttributeMap &attr
config((configIn != nullptr) ? new egl::Config(*configIn) : nullptr), config((configIn != nullptr) ? new egl::Config(*configIn) : nullptr),
attributes(attributesIn), attributes(attributesIn),
timestampsEnabled(false), timestampsEnabled(false),
directComposition(false), directComposition(false)
isFixedSize(false)
{ {
directComposition = attributes.get(EGL_DIRECT_COMPOSITION_ANGLE, EGL_FALSE) == EGL_TRUE; directComposition = attributes.get(EGL_DIRECT_COMPOSITION_ANGLE, EGL_FALSE) == EGL_TRUE;
isFixedSize = attributes.get(EGL_FIXED_SIZE_ANGLE, EGL_FALSE) == EGL_TRUE;
} }
SurfaceState::~SurfaceState() SurfaceState::~SurfaceState()
...@@ -72,6 +70,7 @@ Surface::Surface(EGLint surfaceType, ...@@ -72,6 +70,7 @@ Surface::Surface(EGLint surfaceType,
mHorizontalResolution(EGL_UNKNOWN), mHorizontalResolution(EGL_UNKNOWN),
mVerticalResolution(EGL_UNKNOWN), mVerticalResolution(EGL_UNKNOWN),
mMultisampleResolve(EGL_MULTISAMPLE_RESOLVE_DEFAULT), mMultisampleResolve(EGL_MULTISAMPLE_RESOLVE_DEFAULT),
mFixedSize(false),
mFixedWidth(0), mFixedWidth(0),
mFixedHeight(0), mFixedHeight(0),
mTextureFormat(TextureFormat::NoTexture), mTextureFormat(TextureFormat::NoTexture),
...@@ -116,7 +115,8 @@ Surface::Surface(EGLint surfaceType, ...@@ -116,7 +115,8 @@ Surface::Surface(EGLint surfaceType,
mInitState = gl::InitState::MayNeedInit; 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)); mFixedWidth = static_cast<size_t>(attributes.get(EGL_WIDTH, 0));
mFixedHeight = static_cast<size_t>(attributes.get(EGL_HEIGHT, 0)); mFixedHeight = static_cast<size_t>(attributes.get(EGL_HEIGHT, 0));
...@@ -469,22 +469,22 @@ EGLenum Surface::getMultisampleResolve() const ...@@ -469,22 +469,22 @@ EGLenum Surface::getMultisampleResolve() const
EGLint Surface::isFixedSize() const EGLint Surface::isFixedSize() const
{ {
return mState.isFixedSize; return mFixedSize;
} }
EGLint Surface::getWidth() const 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 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 egl::Error Surface::getUserWidth(const egl::Display *display, EGLint *value) const
{ {
if (mState.isFixedSize) if (mFixedSize)
{ {
*value = static_cast<EGLint>(mFixedWidth); *value = static_cast<EGLint>(mFixedWidth);
return NoError(); return NoError();
...@@ -497,7 +497,7 @@ egl::Error Surface::getUserWidth(const egl::Display *display, EGLint *value) con ...@@ -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 egl::Error Surface::getUserHeight(const egl::Display *display, EGLint *value) const
{ {
if (mState.isFixedSize) if (mFixedSize)
{ {
*value = static_cast<EGLint>(mFixedHeight); *value = static_cast<EGLint>(mFixedHeight);
return NoError(); return NoError();
......
...@@ -58,7 +58,6 @@ struct SurfaceState final : private angle::NonCopyable ...@@ -58,7 +58,6 @@ struct SurfaceState final : private angle::NonCopyable
SupportedCompositorTiming supportedCompositorTimings; SupportedCompositorTiming supportedCompositorTimings;
SupportedTimestamps supportedTimestamps; SupportedTimestamps supportedTimestamps;
bool directComposition; bool directComposition;
bool isFixedSize;
}; };
class Surface : public LabeledObject, public gl::FramebufferAttachmentObject class Surface : public LabeledObject, public gl::FramebufferAttachmentObject
......
...@@ -896,7 +896,6 @@ void DisplayGLX::generateExtensions(egl::DisplayExtensions *outExtensions) const ...@@ -896,7 +896,6 @@ void DisplayGLX::generateExtensions(egl::DisplayExtensions *outExtensions) const
outExtensions->displaySemaphoreShareGroup = true; outExtensions->displaySemaphoreShareGroup = true;
outExtensions->surfacelessContext = true; outExtensions->surfacelessContext = true;
outExtensions->windowFixedSize = true;
if (!mRenderer->getFeatures().disableSyncControlSupport.enabled) if (!mRenderer->getFeatures().disableSyncControlSupport.enabled)
{ {
......
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
#include "common/debug.h" #include "common/debug.h"
#include "libANGLE/Surface.h"
#include "libANGLE/renderer/gl/glx/DisplayGLX.h" #include "libANGLE/renderer/gl/glx/DisplayGLX.h"
#include "libANGLE/renderer/gl/glx/FunctionsGLX.h" #include "libANGLE/renderer/gl/glx/FunctionsGLX.h"
...@@ -141,13 +140,10 @@ egl::Error WindowSurfaceGLX::swap(const gl::Context *context) ...@@ -141,13 +140,10 @@ egl::Error WindowSurfaceGLX::swap(const gl::Context *context)
mGLXDisplay->setSwapInterval(mGLXWindow, &mSwapControl); mGLXDisplay->setSwapInterval(mGLXWindow, &mSwapControl);
mGLX.swapBuffers(mGLXWindow); mGLX.swapBuffers(mGLXWindow);
if (!mState.isFixedSize) egl::Error error = checkForResize();
if (error.isError())
{ {
egl::Error error = checkForResize(); return error;
if (error.isError())
{
return error;
}
} }
return egl::NoError(); return egl::NoError();
...@@ -239,24 +235,6 @@ glx::Drawable WindowSurfaceGLX::getDrawable() const ...@@ -239,24 +235,6 @@ glx::Drawable WindowSurfaceGLX::getDrawable() const
return mGLXWindow; 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, bool WindowSurfaceGLX::getWindowDimensions(Window window,
unsigned int *width, unsigned int *width,
unsigned int *height) const unsigned int *height) const
......
...@@ -56,9 +56,6 @@ class WindowSurfaceGLX : public SurfaceGLX ...@@ -56,9 +56,6 @@ class WindowSurfaceGLX : public SurfaceGLX
egl::Error checkForResize() override; egl::Error checkForResize() override;
glx::Drawable getDrawable() const 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 getSyncValues(EGLuint64KHR *ust, EGLuint64KHR *msc, EGLuint64KHR *sbc) override;
egl::Error getMscRate(EGLint *numerator, EGLint *denominator) 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