diff options
| author | Andrea Azzarone <azzaronea@gmail.com> | 2016-07-04 18:56:43 +0200 |
|---|---|---|
| committer | Andrea Azzarone <azzaronea@gmail.com> | 2016-07-04 18:56:43 +0200 |
| commit | 74ac432c472e4854a6a584b169a7c05679142464 (patch) | |
| tree | 4429ba17b6cb1e05be75bd6d90838fbd9c13a172 | |
| parent | 07bd79a32f8321484fd65e947d7711566bbe7270 (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.cpp | 5 |
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(); |
