apol added a comment.

  Hope this helps ^^'

INLINE COMMENTS

> sambausershareplugin.cpp:155
>              SIGNAL(package(PackageKit::Transaction::Info,QString,QString)),
>              
> SLOT(packageInstall(PackageKit::Transaction::Info,QString,QString)));
>  

This is a bit weird now, because you'll be getting N packages, and when they 
all finish installing they will all call "packageFinished" which I could expect 
to break in different ways.

It would look something like:

  PackageKit::Transaction *transaction = 
PackageKit::Daemon::resolve(distroSambaPackages, 
PackageKit::Transaction::FilterArch);
  
  QSharedPointer<QStringList> pkgids(new QStringList);
  connect(transaction,
          &PackageKit::Transaction::package,
          [pkgids] (PackageKit::Transaction::Info info, const QString& 
packageId, const QString& summary) { pkgids.append(packageId); });
  connect(t, &PackageKit::Transaction::finished, [pkgids] 
(PackageKit::Transaction::Exit exit) {
      if (exit != PackageKit::Transaction::ExitSuccess)
          return;
      auto t = PackageKit::Daemon::installPackage(*pkgids);
      //t....
  })

REPOSITORY
  R432 File Sharing (Samba) integration

REVISION DETAIL
  https://phabricator.kde.org/D21327

To: ngraham, apol, #frameworks

Reply via email to