Fix the bgcolor formspec element (#8716)

This commit is contained in:
DS 2019-09-15 18:14:31 +02:00 committed by rubenwardy
parent 1ea9bfc6f7
commit 1db3d252cf
2 changed files with 14 additions and 11 deletions

@ -2092,11 +2092,15 @@ Elements
* Show an inventory image of registered item/node
### `bgcolor[<color>;<fullscreen>]`
### `bgcolor[<color>]`
* Sets background color of formspec as `ColorString`
* If `true`, the background color is drawn fullscreen (does not affect the size
of the formspec).
### `bgcolor[<color>;<fullscreen>]`
* If `color` is a valid `ColorString`, the fullscreen background color
is set to `color`.
* If `fullscreen` is a true value, the fullscreen background color is drawn.
### `background[<X>,<Y>;<W>,<H>;<texture name>]`

@ -1887,11 +1887,11 @@ void GUIFormSpecMenu::parseBackgroundColor(parserData* data, const std::string &
if (((parts.size() == 1) || (parts.size() == 2)) ||
((parts.size() > 2) && (m_formspec_version > FORMSPEC_API_VERSION))) {
if (parts.size() == 1) {
parseColorString(parts[0], m_bgcolor, false);
if (parts.size() == 2) {
std::string fullscreen = parts[1];
m_bgfullscreen = is_yes(fullscreen);
} else if (parts.size() == 2) {
parseColorString(parts[0], m_fullscreen_bgcolor, false);
m_bgfullscreen = is_yes(parts[1]);
}
return;
@ -2921,7 +2921,6 @@ void GUIFormSpecMenu::drawMenu()
if (m_bgfullscreen)
driver->draw2DRectangle(m_fullscreen_bgcolor, allbg, &allbg);
else
driver->draw2DRectangle(m_bgcolor, AbsoluteRect, &AbsoluteClippingRect);
m_tooltip_element->setVisible(false);