Synced with ScummVM rev: f6c5fed173

This commit is contained in:
Pawel Kolodziejski 2020-10-03 18:14:12 +02:00
parent 6120146fab
commit c12503a869
5 changed files with 20 additions and 7 deletions

View file

@ -124,6 +124,13 @@ void OpenGLGraphicsManager::setFeatureState(OSystem::Feature f, bool enable) {
_cursor->enableLinearFiltering(enable);
}
// The overlay UI should also obey the filtering choice (managed via the Filter Graphics checkbox in Graphics Tab).
// Thus, when overlay filtering is disabled, scaling in OPENGL is done with GL_NEAREST (nearest neighbor scaling).
// It may look crude, but it should be crispier and it's left to user choice to enable filtering.
if (_overlay) {
_overlay->enableLinearFiltering(enable);
}
break;
case OSystem::kFeatureCursorPalette:
@ -958,10 +965,14 @@ void OpenGLGraphicsManager::handleResizeImpl(const int width, const int height,
_overlay = createSurface(_defaultFormatAlpha);
assert(_overlay);
// We always filter the overlay with GL_LINEAR. This assures it's
// readable in case it needs to be scaled and does not affect it
// otherwise.
_overlay->enableLinearFiltering(true);
// We should NOT always filter the overlay with GL_LINEAR.
// In previous versions we always did use GL_LINEAR to assure the UI
// would be readable in case it needed to be scaled -- it would not affect it otherwise.
// However in modern devices due to larger screen size the UI display looks blurry
// when using the linear filtering scaling, and we got bug report(s) for it.
// eg. https://bugs.scummvm.org/ticket/11742
// So, we now respect the choice for "Filter Graphics" made via ScummVM GUI (under Graphics Tab)
_overlay->enableLinearFiltering(_currentState.filtering);
}
_overlay->allocate(overlayWidth, overlayHeight);
_overlay->fill(0);

View file

@ -218,7 +218,7 @@ void RemapWidget::startRemapping(uint actionIndex) {
_remapAction = _actions[actionIndex].action;
uint32 remapTimeoutDelay = kRemapMinTimeoutDelay;
if (ConfMan.hasKey("remap_timeout_delay_ms") && (ConfMan.getInt("remap_timeout_delay_ms") > kRemapMinTimeoutDelay)) {
if (ConfMan.hasKey("remap_timeout_delay_ms") && ((uint32)ConfMan.getInt("remap_timeout_delay_ms") > kRemapMinTimeoutDelay)) {
remapTimeoutDelay = (uint32)ConfMan.getInt("remap_timeout_delay_ms");
}
_remapTimeout = g_system->getMillis() + remapTimeoutDelay;

3
configure vendored
View file

@ -2215,6 +2215,9 @@ echo $_use_cxx11
#
# Determine extra build flags for debug and/or release builds
#
if test "$_debug_build" = auto && test "$_release_build" = yes; then
_debug_build=no
fi
if test "$_debug_build" != no; then
# debug mode not explicitly disabled -> compile with debug information
echo_n "Checking best debug mode... "

View file

@ -529,7 +529,7 @@ bool ThemeEngine::addFont(TextData textId, const Common::String &language, const
if (textId == -1)
return false;
if (!language.empty() && !language.equals("*")) {
if (!language.empty()) {
#ifdef USE_TRANSLATION
Common::String cl = TransMan.getCurrentLanguage();
if (!cl.matchString(language, true))

View file

@ -2401,7 +2401,6 @@ void GlobalOptionsDialog::apply() {
ConfMan.set("gui_language", newLang);
newCharset = TransMan.getCurrentCharset();
isRebuildNeeded = true;
g_gui.setLanguageRTL();
}
bool guiUseGameLanguage = _guiLanguageUseGameLanguageCheckbox->getState();