diff -r e0aa398e6810 -r 3ab5c078b490 tsdevicedialog/tsdevicedialogplugin/src/tsdevicedialogcontainer.cpp --- a/tsdevicedialog/tsdevicedialogplugin/src/tsdevicedialogcontainer.cpp Wed Aug 18 10:05:49 2010 +0300 +++ b/tsdevicedialog/tsdevicedialogplugin/src/tsdevicedialogcontainer.cpp Thu Sep 02 20:45:03 2010 +0300 @@ -15,13 +15,16 @@ * */ +#include "tsdevicedialogcontainer.h" + #include + #include #include #include + #include -#include "tsdevicedialogcontainer.h" #include "tstasksgrid.h" #include "tstasksgriditem.h" @@ -33,7 +36,8 @@ QObject *parent) : QObject(parent), - mVisibilityPublisher(TsProperty::KTsPath) + mVisibilityPublisher(TsProperty::KTsPath), + mDismissRequestSubscriber(QString("%1/%2").arg(TsProperty::KTsPath).arg(TsProperty::KDismissRequestPath)) { bool ok(true); mLoader.load(KDocmlPath, &ok); @@ -91,6 +95,11 @@ mVisibilityPublisher.setValue(TsProperty::KVisibilityPath, static_cast(true)); mVisibilityPublisher.sync(); + + connect(&mDismissRequestSubscriber, + SIGNAL(contentsChanged()), + this, + SLOT(handleDismissRequest())); } TsDeviceDialogContainer::~TsDeviceDialogContainer() @@ -152,16 +161,23 @@ { TsTasksGrid *grid = qobject_cast(mLoader.findWidget("taskgrid")); - HbLabel *noItemsLabel = - qobject_cast(mLoader.findWidget("noitemslabel")); + HbWidget *noItemsWidget = + qobject_cast(mLoader.findWidget("noitemswidget")); Q_ASSERT(grid); - Q_ASSERT(noItemsLabel); + Q_ASSERT(noItemsWidget); if (grid->model()->rowCount()) { - noItemsLabel->hide(); + noItemsWidget->hide(); grid->show(); } else { - noItemsLabel->show(); + noItemsWidget->show(); grid->hide(); } } + +void TsDeviceDialogContainer::handleDismissRequest() +{ + if (mDismissRequestSubscriber.value().toBool()) { + emit deviceDialogClosed(); + } +}