https://bugs.kde.org/show_bug.cgi?id=260882
Andreas Holzammer <andreas.holzam...@kdab.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #4 from Andreas Holzammer <andreas holzammer kdab com> 2011-01-18 16:22:50 --- commit 63c9088c79a87ccb8a6a24e71851002aea345f11 branch master Author: Andreas Holzammer <andreas.holzam...@kdab.com> Date: Tue Jan 18 16:19:52 2011 +0100 fix that widgets get lost It seems that widgets get a setVisiable(false) from somewhere in qt, to fix this issue we revert its hiding. This should be fixed in qt. But i didnt found where it is called. BUG:260882 diff --git a/mobile/lib/declarativewidgetbase.cpp b/mobile/lib/declarativewidgetbase.cpp index 6ba5a75..65f25b4 100644 --- a/mobile/lib/declarativewidgetbase.cpp +++ b/mobile/lib/declarativewidgetbase.cpp @@ -24,6 +24,19 @@ #include <QtGui/QGraphicsScene> #include <QtGui/QWidget> +#ifdef _WIN32_WCE +bool DeclarativeWidgetBaseHelper::eventFilter(QObject *obj, QEvent *event) +{ + if (event->type() == QEvent::Hide) { + QWidget *wid = static_cast<QWidget *>(obj); + wid->show(); + qDebug("Ate hide event"); + } + + return QObject::eventFilter(obj, event); +} +#endif + DeclarativeWidgetBaseHelper::DeclarativeWidgetBaseHelper( QWidget * widget, QGraphicsItem * parent, const RegisterFunction & registerFunc ) : QGraphicsProxyWidget( parent ), m_registerFunc( registerFunc ), @@ -37,9 +50,17 @@ DeclarativeWidgetBaseHelper::DeclarativeWidgetBaseHelper( QWidget * widget, QGra StyleSheetLoader::applyStyle( m_widget ); setWidget( m_widget ); setFocusPolicy( Qt::StrongFocus ); +#ifdef _WIN32_WCE + m_widget->installEventFilter(this); +#endif } -DeclarativeWidgetBaseHelper::~DeclarativeWidgetBaseHelper() {} +DeclarativeWidgetBaseHelper::~DeclarativeWidgetBaseHelper() +{ +#ifdef _WIN32_WCE + m_widget->removeEventFilter(this); +#endif +} QVariant DeclarativeWidgetBaseHelper::itemChange( GraphicsItemChange change, const QVariant & value ) { diff --git a/mobile/lib/declarativewidgetbase.h b/mobile/lib/declarativewidgetbase.h index fee4a58..b849c12 100644 --- a/mobile/lib/declarativewidgetbase.h +++ b/mobile/lib/declarativewidgetbase.h @@ -43,6 +43,9 @@ protected: protected: /* reimp */ QVariant itemChange( GraphicsItemChange change, const QVariant & value ); +#ifdef _WIN32_WCE + bool eventFilter(QObject *obj, QEvent *event); +#endif private: const RegisterFunction m_registerFunc; -- Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. _______________________________________________ Kdepim-bugs mailing list Kdepim-bugs@kde.org https://mail.kde.org/mailman/listinfo/kdepim-bugs