Files
godot-angle-static/util/ozone/OzoneWindow.cpp
Shahbaz Youssefi fdb7874db4 Gracefully fail end2end tests if no window support
EGL_WINDOW_BIT is now specifically requested for tests that open a
window (those that aren't WithNoFixture).  This makes sure pbuffer-only
configs are not selected for the window.

Additionally, a few WithNoFixture tests are made more robust in the
presence of no-window configs.

In the context of crbug.com/1034840, this means that a subset of end2end
tests would be able to run in a remote desktop environment.  Tested on
Linux/X11 by turning a subset of configs PBUFFER-only.

Bug: chromium:1034840
Change-Id: I09fd149d43d3b865856fe6b9491c5f333f4a2efc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2378922
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: back sept 10 - Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
2020-09-02 15:33:45 +00:00

84 lines
1.7 KiB
C++

//
// Copyright 2016 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.
//
// OzoneWindow.cpp: Implementation of OSWindow for Ozone
#include "util/ozone/OzoneWindow.h"
#include "common/debug.h"
int OzoneWindow::sLastDepth = 0;
OzoneWindow::OzoneWindow() {}
OzoneWindow::~OzoneWindow() {}
bool OzoneWindow::initializeImpl(const std::string &name, int width, int height)
{
mNative.x = mX = 0;
mNative.y = mY = 0;
mNative.width = mWidth = width;
mNative.height = mHeight = height;
mNative.borderWidth = 5;
mNative.borderHeight = 5;
mNative.visible = 0;
mNative.depth = sLastDepth++;
return true;
}
void OzoneWindow::disableErrorMessageDialog() {}
void OzoneWindow::destroy() {}
void OzoneWindow::resetNativeWindow() {}
EGLNativeWindowType OzoneWindow::getNativeWindow() const
{
return reinterpret_cast<EGLNativeWindowType>(&mNative);
}
EGLNativeDisplayType OzoneWindow::getNativeDisplay() const
{
return EGL_DEFAULT_DISPLAY;
}
void OzoneWindow::messageLoop() {}
void OzoneWindow::setMousePosition(int x, int y) {}
bool OzoneWindow::setOrientation(int width, int height)
{
UNIMPLEMENTED();
return false;
}
bool OzoneWindow::setPosition(int x, int y)
{
mNative.x = mX = x;
mNative.y = mY = y;
return true;
}
bool OzoneWindow::resize(int width, int height)
{
mNative.width = mWidth = width;
mNative.height = mHeight = height;
return true;
}
void OzoneWindow::setVisible(bool isVisible)
{
mNative.visible = isVisible;
}
void OzoneWindow::signalTestEvent() {}
// static
OSWindow *OSWindow::New()
{
return new OzoneWindow();
}