Merge pull request #296 from morphis/f/correct-screen-dimensions

Correct screen dimensions
This commit is contained in:
Simon Fels 2017-05-27 18:35:33 +02:00 committed by GitHub
commit 7e031d3cd9
3 changed files with 34 additions and 4 deletions

View file

@ -169,10 +169,10 @@ static EGLint rcGetFBParam(EGLint param) {
switch (param) {
case FB_WIDTH:
ret = static_cast<EGLint>(anbox::graphics::emugl::DisplayInfo::get()->horizontal_resolution());
ret = static_cast<EGLint>(anbox::graphics::emugl::DisplayInfo::get()->vertical_resolution());
break;
case FB_HEIGHT:
ret = static_cast<EGLint>(anbox::graphics::emugl::DisplayInfo::get()->vertical_resolution());
ret = static_cast<EGLint>(anbox::graphics::emugl::DisplayInfo::get()->horizontal_resolution());
break;
case FB_XDPI:
ret = 72; // XXX: should be implemented
@ -360,12 +360,12 @@ int rcGetNumDisplays() {
int rcGetDisplayWidth(uint32_t display_id) {
(void)display_id;
return static_cast<int>(anbox::graphics::emugl::DisplayInfo::get()->horizontal_resolution());
return static_cast<int>(anbox::graphics::emugl::DisplayInfo::get()->vertical_resolution());
}
int rcGetDisplayHeight(uint32_t display_id) {
(void)display_id;
return static_cast<int>(anbox::graphics::emugl::DisplayInfo::get()->vertical_resolution());
return static_cast<int>(anbox::graphics::emugl::DisplayInfo::get()->horizontal_resolution());
}
int rcGetDisplayDpiX(uint32_t display_id) {

View file

@ -1,3 +1,4 @@
ANBOX_ADD_TEST(buffer_queue_tests buffer_queue_tests.cpp)
ANBOX_ADD_TEST(buffered_io_stream_tests buffered_io_stream_tests.cpp)
ANBOX_ADD_TEST(layer_composer_tests layer_composer_tests.cpp)
ANBOX_ADD_TEST(render_control_tests render_control_tests.cpp)

View file

@ -0,0 +1,29 @@
/*
* Copyright (C) 2017 Simon Fels <morphis@gravedo.de>
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 3, as published
* by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranties of
* MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
#include <gtest/gtest.h>
#include "anbox/graphics/emugl/DisplayManager.h"
extern int rcGetDisplayWidth(uint32_t display_id);
extern int rcGetDisplayHeight(uint32_t display_id);
TEST(RenderControl, WidthHeightAreCorrectlyAssigned) {
anbox::graphics::emugl::DisplayInfo::get()->set_resolution(640, 480);
ASSERT_EQ(rcGetDisplayWidth(0), 640);
ASSERT_EQ(rcGetDisplayHeight(0), 480);
}