summaryrefslogtreecommitdiff
diff options
authorAndrea Azzarone <azzaronea@gmail.com>2016-07-04 18:56:43 +0200
committerAndrea Azzarone <azzaronea@gmail.com>2016-07-04 18:56:43 +0200
commit74ac432c472e4854a6a584b169a7c05679142464 (patch)
tree4429ba17b6cb1e05be75bd6d90838fbd9c13a172
parent07bd79a32f8321484fd65e947d7711566bbe7270 (diff)
Properly calculate the intersection geometry in PanelView::Draw. This is needed to properly call SyncGeometries and to avoid problems such as lp:1595698.
Fixes LP: #1578792 (bzr r4132.3.1)
-rw-r--r--panel/PanelView.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/panel/PanelView.cpp b/panel/PanelView.cpp
index af142dc05..6bbead08e 100644
--- a/panel/PanelView.cpp
+++ b/panel/PanelView.cpp
@@ -300,8 +300,9 @@ void
PanelView::Draw(nux::GraphicsEngine& GfxContext, bool force_draw)
{
nux::Geometry const& geo = GetGeometry();
+ nux::Geometry const& geo_absolute = GetAbsoluteGeometry();
nux::Geometry const& mgeo = UScreen::GetDefault()->GetMonitorGeometry(monitor_);
- nux::Geometry isect = mgeo.Intersect(geo);
+ nux::Geometry isect = mgeo.Intersect(geo_absolute);
if(!isect.width || !isect.height)
return;
@@ -313,8 +314,6 @@ PanelView::Draw(nux::GraphicsEngine& GfxContext, bool force_draw)
if (IsTransparent())
{
- nux::Geometry const& geo_absolute = GetAbsoluteGeometry();
-
if (BackgroundEffectHelper::blur_type != BLUR_NONE)
{
bg_blur_texture_ = bg_effect_helper_.GetBlurRegion();