diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2005-08-31 03:40:23 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2005-08-31 03:40:23 +0000 |
| commit | 4ebd765cac9f8a7ae4934147ed876a9e228eeb8d (patch) | |
| tree | ac3d7e51c84b8a5cf421920c3a704f83199e9720 /lib/gui | |
| parent | 979746945488fdf70364f969071518034d5a87ea (diff) | |
| download | enigma2-4ebd765cac9f8a7ae4934147ed876a9e228eeb8d.tar.gz enigma2-4ebd765cac9f8a7ae4934147ed876a9e228eeb8d.zip | |
- fixes to use moving infobar non non-accel hardware.
Diffstat (limited to 'lib/gui')
| -rw-r--r-- | lib/gui/ewidgetanimation.cpp | 14 | ||||
| -rw-r--r-- | lib/gui/ewidgetdesktop.cpp | 11 |
2 files changed, 18 insertions, 7 deletions
diff --git a/lib/gui/ewidgetanimation.cpp b/lib/gui/ewidgetanimation.cpp index 3912d592..a31f2ed4 100644 --- a/lib/gui/ewidgetanimation.cpp +++ b/lib/gui/ewidgetanimation.cpp @@ -19,16 +19,24 @@ void eWidgetAnimation::tick(int inc) m_active = 0; m_move_current_tick = m_move_length; } - int xdiff = m_move_end.x() - m_move_start.x(); - int ydiff = m_move_end.y() - m_move_start.y(); + m_move_start = m_widget->position(); + + int xdiff = m_move_start.x() - m_move_end.x(); + int ydiff = m_move_start.y() - m_move_end.y(); + + xdiff *= 31; xdiff /= 32; + ydiff *= 31; ydiff /= 32; + + #if 0 xdiff *= m_move_current_tick; xdiff /= m_move_length; ydiff *= m_move_current_tick; ydiff /= m_move_length; + #endif - ePoint res(m_move_start.x() + xdiff, m_move_start.y() + ydiff); + ePoint res(m_move_end.x() + xdiff, m_move_end.y() + ydiff); m_move_current_tick += inc; diff --git a/lib/gui/ewidgetdesktop.cpp b/lib/gui/ewidgetdesktop.cpp index 1c65d5d2..dcc2ef60 100644 --- a/lib/gui/ewidgetdesktop.cpp +++ b/lib/gui/ewidgetdesktop.cpp @@ -36,7 +36,7 @@ int eWidgetDesktop::movedWidget(eWidget *root) if ((m_comp_mode == cmBuffered) && (root->m_comp_buffer)) { root->m_comp_buffer->m_position = root->position(); - redrawComposition(0); +// redrawComposition(0); return 0; } @@ -96,6 +96,11 @@ void eWidgetDesktop::recalcClipRegions(eWidget *root) invalidate(redraw); } else { + if (!root->m_vis & eWidget::wVisShow) + { + removeBufferForWidget(root); + return; + } if ((!root->m_comp_buffer) || (root->size() != root->m_comp_buffer->m_screen_size)) createBufferForWidget(root); @@ -203,7 +208,6 @@ void eWidgetDesktop::paintBackground(eWidgetDesktopCompBuffer *comp) void eWidgetDesktop::paint() { - eDebug("paint"); m_require_redraw = 0; /* walk all root windows. */ @@ -230,8 +234,7 @@ void eWidgetDesktop::paint() if (m_comp_mode == cmBuffered) { - eDebug("redraw composition"); - redrawComposition(0); +// redrawComposition(0); } } |
