forked from Mirrorlandia_minetest/minetest
Always use same default tabheader height (#9319)
Previously the default tabheader height was different when using real coordinates. This resulted in the height of tabs changing when switching tabs in sfinv if some tabs used real coordinates.
This commit is contained in:
parent
454dbf83a9
commit
b6242498aa
@ -2027,7 +2027,7 @@ void GUIFormSpecMenu::parseTabHeader(parserData* data, const std::string &elemen
|
|||||||
// Width is not here because tabs are the width of the text, and
|
// Width is not here because tabs are the width of the text, and
|
||||||
// there's no reason to change that.
|
// there's no reason to change that.
|
||||||
unsigned int i = 0;
|
unsigned int i = 0;
|
||||||
std::vector<std::string> v_geom = {"1", "0.75"}; // Dummy width and default height
|
std::vector<std::string> v_geom = {"1", "1"}; // Dummy width and height
|
||||||
bool auto_width = true;
|
bool auto_width = true;
|
||||||
if (parts.size() == 7) {
|
if (parts.size() == 7) {
|
||||||
i++;
|
i++;
|
||||||
@ -2071,6 +2071,9 @@ void GUIFormSpecMenu::parseTabHeader(parserData* data, const std::string &elemen
|
|||||||
pos = getRealCoordinateBasePos(v_pos);
|
pos = getRealCoordinateBasePos(v_pos);
|
||||||
|
|
||||||
geom = getRealCoordinateGeometry(v_geom);
|
geom = getRealCoordinateGeometry(v_geom);
|
||||||
|
// Set default height
|
||||||
|
if (parts.size() <= 6)
|
||||||
|
geom.Y = m_btn_height * 2;
|
||||||
pos.Y -= geom.Y; // TabHeader base pos is the bottom, not the top.
|
pos.Y -= geom.Y; // TabHeader base pos is the bottom, not the top.
|
||||||
if (auto_width)
|
if (auto_width)
|
||||||
geom.X = DesiredRect.getWidth(); // Set automatic width
|
geom.X = DesiredRect.getWidth(); // Set automatic width
|
||||||
|
Loading…
Reference in New Issue
Block a user