generic: adjust to solid changes

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2023-07-05 07:15:01 +03:00
parent f9259663dd
commit 268376e08b
11 changed files with 61 additions and 56 deletions

View file

@ -296,8 +296,8 @@ void PlacesItemModel::requestEject(int index)
if (item) { if (item) {
Solid::OpticalDrive* drive = item->device().as<Solid::OpticalDrive>(); Solid::OpticalDrive* drive = item->device().as<Solid::OpticalDrive>();
if (drive) { if (drive) {
connect(drive, SIGNAL(ejectDone(Solid::ErrorType,QVariant,QString)), connect(drive, SIGNAL(ejectDone(Solid::ErrorType,QString,QString)),
this, SLOT(slotStorageTeardownDone(Solid::ErrorType,QVariant))); this, SLOT(slotStorageTeardownDone(Solid::ErrorType,QString,QString)));
drive->eject(); drive->eject();
} else { } else {
const QString label = item->text(); const QString label = item->text();
@ -313,8 +313,8 @@ void PlacesItemModel::requestTeardown(int index)
if (item) { if (item) {
Solid::StorageAccess* access = item->device().as<Solid::StorageAccess>(); Solid::StorageAccess* access = item->device().as<Solid::StorageAccess>();
if (access) { if (access) {
connect(access, SIGNAL(teardownDone(Solid::ErrorType,QVariant,QString)), connect(access, SIGNAL(teardownDone(Solid::ErrorType,QString,QString)),
this, SLOT(slotStorageTeardownDone(Solid::ErrorType,QVariant))); this, SLOT(slotStorageTeardownDone(Solid::ErrorType,QString,QString)));
access->teardown(); access->teardown();
} }
} }
@ -342,8 +342,8 @@ void PlacesItemModel::requestStorageSetup(int index)
m_storageSetupInProgress[access] = index; m_storageSetupInProgress[access] = index;
connect(access, SIGNAL(setupDone(Solid::ErrorType,QVariant,QString)), connect(access, SIGNAL(setupDone(Solid::ErrorType,QString,QString)),
this, SLOT(slotStorageSetupDone(Solid::ErrorType,QVariant,QString))); this, SLOT(slotStorageSetupDone(Solid::ErrorType,QString,QString)));
access->setup(); access->setup();
} }
@ -568,15 +568,19 @@ void PlacesItemModel::slotContentChanged(const QString& udi, const bool hasconte
} }
} }
void PlacesItemModel::slotStorageTeardownDone(Solid::ErrorType error, const QVariant& errorData) void PlacesItemModel::slotStorageTeardownDone(Solid::ErrorType error,
const QString& errorData,
const QString& udi)
{ {
if (error && errorData.isValid()) { Q_UNUSED(udi);
emit errorMessage(errorData.toString());
if (error && !errorData.isEmpty()) {
emit errorMessage(errorData);
} }
} }
void PlacesItemModel::slotStorageSetupDone(Solid::ErrorType error, void PlacesItemModel::slotStorageSetupDone(Solid::ErrorType error,
const QVariant& errorData, const QString& errorData,
const QString& udi) const QString& udi)
{ {
Q_UNUSED(udi); Q_UNUSED(udi);
@ -588,10 +592,10 @@ void PlacesItemModel::slotStorageSetupDone(Solid::ErrorType error,
} }
if (error) { if (error) {
if (errorData.isValid()) { if (!errorData.isEmpty()) {
emit errorMessage(i18nc("@info", "An error occurred while accessing '%1', the system responded: %2", emit errorMessage(i18nc("@info", "An error occurred while accessing '%1', the system responded: %2",
item->text(), item->text(),
errorData.toString())); errorData));
} else { } else {
emit errorMessage(i18nc("@info", "An error occurred while accessing '%1'", emit errorMessage(i18nc("@info", "An error occurred while accessing '%1'",
item->text())); item->text()));

View file

@ -26,14 +26,14 @@
#include <QHash> #include <QHash>
#include <QList> #include <QList>
#include <QSet> #include <QSet>
#include <QAction>
#include <QTimer>
#include <Solid/Predicate> #include <Solid/Predicate>
#include <Solid/StorageAccess> #include <Solid/StorageAccess>
class KBookmark; class KBookmark;
class KBookmarkManager; class KBookmarkManager;
class PlacesItem; class PlacesItem;
#include <QAction>
#include <QTimer>
// #define PLACESITEMMODEL_DEBUG // #define PLACESITEMMODEL_DEBUG
@ -127,8 +127,8 @@ private slots:
void slotDeviceAdded(const QString& udi); void slotDeviceAdded(const QString& udi);
void slotDeviceRemoved(const QString& udi); void slotDeviceRemoved(const QString& udi);
void slotContentChanged(const QString& udi, const bool hascontent); void slotContentChanged(const QString& udi, const bool hascontent);
void slotStorageTeardownDone(Solid::ErrorType error, const QVariant& errorData); void slotStorageTeardownDone(Solid::ErrorType error, const QString& errorData, const QString& udi);
void slotStorageSetupDone(Solid::ErrorType error, const QVariant& errorData, const QString& udi); void slotStorageSetupDone(Solid::ErrorType error, const QString& errorData, const QString& udi);
void hideItem(); void hideItem();
/** /**

View file

@ -119,20 +119,20 @@ void KSolidNotify::connectSignals(Solid::Device* device)
Solid::StorageAccess *access = device->as<Solid::StorageAccess>(); Solid::StorageAccess *access = device->as<Solid::StorageAccess>();
if (access) if (access)
{ {
connect(access, SIGNAL(teardownDone(Solid::ErrorType, QVariant, const QString &)), connect(access, SIGNAL(teardownDone(Solid::ErrorType, const QString&, const QString &)),
this, SLOT(storageTeardownDone(Solid::ErrorType, QVariant , const QString &))); this, SLOT(storageTeardownDone(Solid::ErrorType, const QString& , const QString &)));
connect(access, SIGNAL(setupDone(Solid::ErrorType, QVariant, const QString &)), connect(access, SIGNAL(setupDone(Solid::ErrorType, const QString&, const QString &)),
this, SLOT(storageSetupDone(Solid::ErrorType, QVariant , const QString &))); this, SLOT(storageSetupDone(Solid::ErrorType, const QString& , const QString &)));
} }
if (device->is<Solid::OpticalDisc>()) if (device->is<Solid::OpticalDisc>())
{ {
Solid::OpticalDrive *drive = device->as<Solid::OpticalDrive>(); Solid::OpticalDrive *drive = device->as<Solid::OpticalDrive>();
connect(drive, SIGNAL(ejectDone(Solid::ErrorType, QVariant, const QString &)), connect(drive, SIGNAL(ejectDone(Solid::ErrorType, const QString&, const QString &)),
this, SLOT(storageEjectDone(Solid::ErrorType, QVariant , const QString &))); this, SLOT(storageEjectDone(Solid::ErrorType, const QString& , const QString &)));
} }
} }
void KSolidNotify::notifySolidEvent(QString event, Solid::ErrorType error, QVariant errorData, const QString & udi, const QString & errorMessage) void KSolidNotify::notifySolidEvent(QString event, Solid::ErrorType error, const QString &errorData, const QString & udi, const QString & errorMessage)
{ {
ContextList context; ContextList context;
if (m_dbusServiceExists) if (m_dbusServiceExists)
@ -141,7 +141,7 @@ void KSolidNotify::notifySolidEvent(QString event, Solid::ErrorType error, QVari
if (mountConfig.readEntry("Action").split('|').contains("Popup")) if (mountConfig.readEntry("Action").split('|').contains("Popup"))
{ {
QDBusMessage m = QDBusMessage::createMethodCall( dbusDeviceNotificationsName, dbusDeviceNotificationsPath, dbusDeviceNotificationsName, "notify" ); QDBusMessage m = QDBusMessage::createMethodCall( dbusDeviceNotificationsName, dbusDeviceNotificationsPath, dbusDeviceNotificationsName, "notify" );
m << error << errorMessage << errorData.toString().simplified() << udi; m << error << errorMessage << errorData.simplified() << udi;
QDBusConnection::sessionBus().call(m); QDBusConnection::sessionBus().call(m);
} }
context << QPair<QString, QString>("devnotifier", "present"); context << QPair<QString, QString>("devnotifier", "present");
@ -151,7 +151,7 @@ void KSolidNotify::notifySolidEvent(QString event, Solid::ErrorType error, QVari
} }
void KSolidNotify::storageSetupDone(Solid::ErrorType error, QVariant errorData, const QString &udi) void KSolidNotify::storageSetupDone(Solid::ErrorType error, const QString &errorData, const QString &udi)
{ {
if (error) if (error)
{ {
@ -161,7 +161,7 @@ void KSolidNotify::storageSetupDone(Solid::ErrorType error, QVariant errorData,
} }
} }
void KSolidNotify::storageTeardownDone(Solid::ErrorType error, QVariant errorData, const QString &udi) void KSolidNotify::storageTeardownDone(Solid::ErrorType error, const QString &errorData, const QString &udi)
{ {
if (error) if (error)
{ {
@ -175,7 +175,7 @@ void KSolidNotify::storageTeardownDone(Solid::ErrorType error, QVariant errorDat
} }
} }
void KSolidNotify::storageEjectDone(Solid::ErrorType error, QVariant errorData, const QString &udi) void KSolidNotify::storageEjectDone(Solid::ErrorType error, const QString &errorData, const QString &udi)
{ {
if (error) if (error)
{ {

View file

@ -52,16 +52,16 @@ class KSolidNotify : public QObject
private slots: private slots:
void storageEjectDone(Solid::ErrorType error, QVariant errorData, const QString & udi); void storageEjectDone(Solid::ErrorType error, const QString &errorData, const QString &udi);
void storageTeardownDone(Solid::ErrorType error, QVariant errorData, const QString & udi); void storageTeardownDone(Solid::ErrorType error, const QString &errorData, const QString &udi);
void storageSetupDone(Solid::ErrorType error, QVariant errorData, const QString & udi); void storageSetupDone(Solid::ErrorType error, const QString &errorData, const QString &udi);
void slotServiceOwnerChanged(const QString &, const QString &, const QString &); void slotServiceOwnerChanged(const QString &, const QString &, const QString &);
private: private:
void connectSignals(Solid::Device* device); void connectSignals(Solid::Device* device);
bool isSafelyRemovable(const QString &udi); bool isSafelyRemovable(const QString &udi);
void notifySolidEvent(QString event, Solid::ErrorType error, QVariant errorData, const QString & udi, const QString & errorMessage); void notifySolidEvent(QString event, Solid::ErrorType error, const QString &errorData, const QString & udi, const QString & errorMessage);
KNotify* m_kNotify; KNotify* m_kNotify;
QHash<QString, Solid::Device> m_devices; QHash<QString, Solid::Device> m_devices;

View file

@ -114,8 +114,8 @@ bool UrlItemLauncher::openItem(const QModelIndex& index)
Solid::StorageAccess *access = device.as<Solid::StorageAccess>(); Solid::StorageAccess *access = device.as<Solid::StorageAccess>();
if (access && !access->isAccessible()) { if (access && !access->isAccessible()) {
connect(access, SIGNAL(setupDone(Solid::ErrorType,QVariant,QString)), connect(access, SIGNAL(setupDone(Solid::ErrorType,QString,QString)),
this, SLOT(onSetupDone(Solid::ErrorType,QVariant,QString))); this, SLOT(onSetupDone(Solid::ErrorType,QString,QString)));
access->setup(); access->setup();
return true; return true;
} }
@ -133,7 +133,7 @@ bool UrlItemLauncher::openUrl(const QString& url)
return Private::openUrl(url); return Private::openUrl(url);
} }
void UrlItemLauncher::onSetupDone(Solid::ErrorType error, QVariant errorData, const QString &udi) void UrlItemLauncher::onSetupDone(Solid::ErrorType error, const QString &errorData, const QString &udi)
{ {
Q_UNUSED(errorData); Q_UNUSED(errorData);

View file

@ -77,7 +77,7 @@ public Q_SLOTS:
bool openUrl(const QString& url); bool openUrl(const QString& url);
private Q_SLOTS: private Q_SLOTS:
void onSetupDone(Solid::ErrorType error, QVariant errorData, const QString &udi); void onSetupDone(Solid::ErrorType error, const QString &errorData, const QString &udi);
private: private:
class Private; class Private;

View file

@ -545,20 +545,20 @@ void SolidDeviceEngine::deviceAdded(const QString& udi)
if (drive) { if (drive) {
connect(drive, SIGNAL(ejectRequested(QString)), connect(drive, SIGNAL(ejectRequested(QString)),
this, SLOT(setUnmountingState(QString))); this, SLOT(setUnmountingState(QString)));
connect(drive, SIGNAL(ejectDone(Solid::ErrorType,QVariant,QString)), connect(drive, SIGNAL(ejectDone(Solid::ErrorType,QString,QString)),
this, SLOT(setIdleState(Solid::ErrorType,QVariant,QString))); this, SLOT(setIdleState(Solid::ErrorType,QString,QString)));
} }
} else if (device.is<Solid::StorageVolume>()) { } else if (device.is<Solid::StorageVolume>()) {
Solid::StorageAccess *access = device.as<Solid::StorageAccess>(); Solid::StorageAccess *access = device.as<Solid::StorageAccess>();
if (access) { if (access) {
connect(access, SIGNAL(setupRequested(QString)), connect(access, SIGNAL(setupRequested(QString)),
this, SLOT(setMountingState(QString))); this, SLOT(setMountingState(QString)));
connect(access, SIGNAL(setupDone(Solid::ErrorType,QVariant,QString)), connect(access, SIGNAL(setupDone(Solid::ErrorType,QString,QString)),
this, SLOT(setIdleState(Solid::ErrorType,QVariant,QString))); this, SLOT(setIdleState(Solid::ErrorType,QString,QString)));
connect(access, SIGNAL(teardownRequested(QString)), connect(access, SIGNAL(teardownRequested(QString)),
this, SLOT(setUnmountingState(QString))); this, SLOT(setUnmountingState(QString)));
connect(access, SIGNAL(teardownDone(Solid::ErrorType,QVariant,QString)), connect(access, SIGNAL(teardownDone(Solid::ErrorType,QString,QString)),
this, SLOT(setIdleState(Solid::ErrorType,QVariant,QString))); this, SLOT(setIdleState(Solid::ErrorType,QString,QString)));
} }
} }
} }
@ -575,7 +575,7 @@ void SolidDeviceEngine::setUnmountingState(const QString &udi)
setData(udi, I18N_NOOP("Operation result"), Working); setData(udi, I18N_NOOP("Operation result"), Working);
} }
void SolidDeviceEngine::setIdleState(Solid::ErrorType error, QVariant errorData, const QString &udi) void SolidDeviceEngine::setIdleState(Solid::ErrorType error, const QString &errorData, const QString &udi)
{ {
Q_UNUSED(errorData) Q_UNUSED(errorData)

View file

@ -90,7 +90,7 @@ private Q_SLOTS:
void sourceWasRemoved(const QString &source); void sourceWasRemoved(const QString &source);
void setMountingState(const QString &udi); void setMountingState(const QString &udi);
void setUnmountingState(const QString &udi); void setUnmountingState(const QString &udi);
void setIdleState(Solid::ErrorType error, QVariant errorData, const QString &udi); void setIdleState(Solid::ErrorType error, const QString &errorData, const QString &udi);
void deviceContentChanged(const QString &udi, const bool hascontent); void deviceContentChanged(const QString &udi, const bool hascontent);
}; };

View file

@ -369,23 +369,23 @@ bool SolidHardware::hwVolumeCall(SolidHardware::VolumeCallType type, const QStri
{ {
case Mount: case Mount:
connect(device.as<Solid::StorageAccess>(), connect(device.as<Solid::StorageAccess>(),
SIGNAL(setupDone(Solid::ErrorType, QVariant, const QString &)), SIGNAL(setupDone(Solid::ErrorType, const QString &, const QString &)),
this, this,
SLOT(slotStorageResult(Solid::ErrorType, QVariant))); SLOT(slotStorageResult(Solid::ErrorType, const QString &, const QString &)));
device.as<Solid::StorageAccess>()->setup(); device.as<Solid::StorageAccess>()->setup();
break; break;
case Unmount: case Unmount:
connect(device.as<Solid::StorageAccess>(), connect(device.as<Solid::StorageAccess>(),
SIGNAL(teardownDone(Solid::ErrorType, QVariant, const QString &)), SIGNAL(teardownDone(Solid::ErrorType, const QString &, const QString &)),
this, this,
SLOT(slotStorageResult(Solid::ErrorType, QVariant))); SLOT(slotStorageResult(Solid::ErrorType, const QString &, const QString &)));
device.as<Solid::StorageAccess>()->teardown(); device.as<Solid::StorageAccess>()->teardown();
break; break;
case Eject: case Eject:
connect(device.as<Solid::OpticalDrive>(), connect(device.as<Solid::OpticalDrive>(),
SIGNAL(ejectDone(Solid::ErrorType, QVariant, const QString &)), SIGNAL(ejectDone(Solid::ErrorType, const QString &, const QString &)),
this, this,
SLOT(slotStorageResult(Solid::ErrorType, QVariant))); SLOT(slotStorageResult(Solid::ErrorType, const QString &, const QString &)));
device.as<Solid::OpticalDrive>()->eject(); device.as<Solid::OpticalDrive>()->eject();
break; break;
} }
@ -428,11 +428,12 @@ void SolidHardware::deviceRemoved(const QString &udi)
std::cout << "udi = '" << udi << "'" << std::endl; std::cout << "udi = '" << udi << "'" << std::endl;
} }
void SolidHardware::slotStorageResult(Solid::ErrorType error, const QVariant &errorData) void SolidHardware::slotStorageResult(Solid::ErrorType error, const QString &errorData, const QString &udi)
{ {
Q_UNUSED(udi);
if (error) { if (error) {
m_error = 1; m_error = 1;
m_errorString = errorData.toString(); m_errorString = errorData;
} }
m_loop.exit(); m_loop.exit();
} }

View file

@ -48,7 +48,7 @@ private:
QString m_errorString; QString m_errorString;
private slots: private slots:
void slotStorageResult(Solid::ErrorType error, const QVariant &errorData); void slotStorageResult(Solid::ErrorType error, const QString &errorData, const QString &udi);
void deviceAdded(const QString &udi); void deviceAdded(const QString &udi);
void deviceRemoved(const QString &udi); void deviceRemoved(const QString &udi);
}; };

View file

@ -48,7 +48,7 @@ public:
DelayedExecutor(const KServiceAction &service, Solid::Device &device); DelayedExecutor(const KServiceAction &service, Solid::Device &device);
private slots: private slots:
void _k_storageSetupDone(Solid::ErrorType error, QVariant errorData, const QString &udi); void _k_storageSetupDone(Solid::ErrorType error, const QString &errorData, const QString &udi);
private: private:
void delayedExecute(const QString &udi); void delayedExecute(const QString &udi);
@ -77,7 +77,7 @@ void DeviceServiceAction::execute(Solid::Device &device)
new DelayedExecutor(m_service, device); new DelayedExecutor(m_service, device);
} }
void DelayedExecutor::_k_storageSetupDone(Solid::ErrorType error, QVariant errorData, void DelayedExecutor::_k_storageSetupDone(Solid::ErrorType error, const QString &errorData,
const QString &udi) const QString &udi)
{ {
Q_UNUSED(errorData); Q_UNUSED(errorData);
@ -144,8 +144,8 @@ DelayedExecutor::DelayedExecutor(const KServiceAction &service, Solid::Device &d
&& !device.as<Solid::StorageAccess>()->isAccessible()) { && !device.as<Solid::StorageAccess>()->isAccessible()) {
Solid::StorageAccess *access = device.as<Solid::StorageAccess>(); Solid::StorageAccess *access = device.as<Solid::StorageAccess>();
connect(access, SIGNAL(setupDone(Solid::ErrorType, QVariant, const QString &)), connect(access, SIGNAL(setupDone(Solid::ErrorType, const QString &, const QString &)),
this, SLOT(_k_storageSetupDone(Solid::ErrorType, QVariant, const QString &))); this, SLOT(_k_storageSetupDone(Solid::ErrorType, const QString &, const QString &)));
access->setup(); access->setup();