From 64a79fd1ab4270ed50ef62cf0a795c842eb4d72a Mon Sep 17 00:00:00 2001 From: Alexander Tkachev Date: Tue, 12 Jul 2016 22:37:57 +0600 Subject: GUI: Fix TabWidget height issues Changes theme stx files to specify TabWidget's type. That fixes wrong TabWidget height. Changes TabWidget's getHeight() to return not only "children" height, but also tabs height. That fixes wrong clipping area. Changes Widget's findWidget to use getHeight(). That fixes bug when widgets in the bottom of TabWidget were not reacting to the mouse events. --- gui/widgets/tab.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'gui/widgets/tab.cpp') diff --git a/gui/widgets/tab.cpp b/gui/widgets/tab.cpp index 784e438952..15e6a9d370 100644 --- a/gui/widgets/tab.cpp +++ b/gui/widgets/tab.cpp @@ -85,6 +85,14 @@ int16 TabWidget::getChildY() const { return getAbsY() + _tabHeight; } +uint16 TabWidget::getHeight() const { + // NOTE: if you change that, make sure to do the same + // changes in the ThemeLayoutTabWidget (gui/ThemeLayout.cpp) + // NOTE: this height is used for clipping, so it *includes* + // tabs, because it starts from getAbsY(), not getChildY() + return _h + _tabHeight; +} + int TabWidget::addTab(const String &title) { // Add a new tab page Tab newTab; -- cgit v1.2.3