Hash :
718ae508
Author :
Date :
2020-04-28T08:42:07
Vulkan: Always query EGL_WIDTH and EGL_HEIGHT This fixes the failures of the dEQP EGL resize tests on Android. Those tests don't actually resize the window (which would allow the tests to pass), but do change internal Android Surface values that vkGetPhysicalDeviceSurfaceCapabilitiesKHR queries. Therefore, by freshly querying these values the test passes. Bug: b/153329980 Change-Id: Ie966f221bfaa14988c1503c7f5503f0b21476bcb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2165639 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
//
// Copyright 2002 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// SurfaceImpl.cpp: Implementation of Surface stub method class
#include "libANGLE/renderer/SurfaceImpl.h"
namespace rx
{
SurfaceImpl::SurfaceImpl(const egl::SurfaceState &state) : mState(state) {}
SurfaceImpl::~SurfaceImpl() {}
egl::Error SurfaceImpl::makeCurrent(const gl::Context *context)
{
return egl::NoError();
}
egl::Error SurfaceImpl::unMakeCurrent(const gl::Context *context)
{
return egl::NoError();
}
egl::Error SurfaceImpl::swapWithDamage(const gl::Context *context, EGLint *rects, EGLint n_rects)
{
UNREACHABLE();
return egl::EglBadSurface() << "swapWithDamage implementation missing.";
}
egl::Error SurfaceImpl::setPresentationTime(EGLnsecsANDROID time)
{
UNREACHABLE();
return egl::EglBadSurface() << "setPresentationTime implementation missing.";
}
void SurfaceImpl::setFixedWidth(EGLint width)
{
UNREACHABLE();
}
void SurfaceImpl::setFixedHeight(EGLint height)
{
UNREACHABLE();
}
void SurfaceImpl::setTimestampsEnabled(bool enabled)
{
UNREACHABLE();
}
const angle::Format *SurfaceImpl::getD3DTextureColorFormat() const
{
UNREACHABLE();
return nullptr;
}
egl::SupportedCompositorTimings SurfaceImpl::getSupportedCompositorTimings() const
{
UNREACHABLE();
return egl::SupportedCompositorTimings();
}
egl::Error SurfaceImpl::getCompositorTiming(EGLint numTimestamps,
const EGLint *names,
EGLnsecsANDROID *values) const
{
UNREACHABLE();
return egl::EglBadDisplay();
}
egl::Error SurfaceImpl::getNextFrameId(EGLuint64KHR *frameId) const
{
UNREACHABLE();
return egl::EglBadDisplay();
}
egl::SupportedTimestamps SurfaceImpl::getSupportedTimestamps() const
{
UNREACHABLE();
return egl::SupportedTimestamps();
}
egl::Error SurfaceImpl::getFrameTimestamps(EGLuint64KHR frameId,
EGLint numTimestamps,
const EGLint *timestamps,
EGLnsecsANDROID *values) const
{
UNREACHABLE();
return egl::EglBadDisplay();
}
egl::Error SurfaceImpl::swapWithFrameToken(const gl::Context *context,
EGLFrameTokenANGLE frameToken)
{
UNREACHABLE();
return egl::EglBadDisplay();
}
egl::Error SurfaceImpl::getUserWidth(const egl::Display *display, EGLint *value) const
{
*value = getWidth();
return egl::NoError();
}
egl::Error SurfaceImpl::getUserHeight(const egl::Display *display, EGLint *value) const
{
*value = getHeight();
return egl::NoError();
}
} // namespace rx