-rw-r--r-- | library/lnkproperties.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/library/lnkproperties.cpp b/library/lnkproperties.cpp index 28a71e9..bd43e21 100644 --- a/library/lnkproperties.cpp +++ b/library/lnkproperties.cpp @@ -82,96 +82,97 @@ LnkProperties::LnkProperties( AppLnk* l, QWidget* parent ) d->docname->setReadOnly( FALSE ); d->preload->hide(); d->spacer->hide(); // ### THIS MUST GO, FIX WIERD BUG in QLAYOUT d->categoryEdit->kludge(); d->categoryEdit->setCategories( lnk->categories(), "Document View", tr("Document View") ); setupLocations(); } else { d->unlink->hide(); d->duplicate->hide(); d->beam->hide(); d->hline->hide(); d->locationLabel->hide(); d->locationCombo->hide(); // Can't edit categories, since the app .desktop files are global, // possibly read-only. d->categoryEdit->hide(); d->docname->setReadOnly( TRUE ); if ( l->property("CanFastload") == "0" ) d->preload->hide(); Config cfg("Launcher"); cfg.setGroup("Preload"); QStringList apps = cfg.readListEntry("Apps",','); d->preload->setChecked( apps.contains(l->exec()) ); if ( Global::isBuiltinCommand(lnk->exec()) ) d->preload->hide(); // builtins are always fast currentLocation = 0; // apps not movable (yet) } setCaption( l->file()); } LnkProperties::~LnkProperties() { } void LnkProperties::unlinkLnk() { if ( QPEMessageBox::confirmDelete( this, tr("Delete"), lnk->name() ) ) { + if ( QFile::exists(lnk->file()) ) lnk->removeFiles(); if ( QFile::exists(lnk->file()) ) { QMessageBox::warning( this, tr("Delete"), tr("File deletion failed.") ); } else { reject(); } } } /* * remove only the link from documents, not also the file */ void LnkProperties::unlinkIcon() { if ( QPEMessageBox::confirmDelete( this, tr("Delete Icon and leave file"), lnk->name() ) ) { lnk->removeLinkFile(); if ( QFile::exists(lnk->linkFile()) ) { QMessageBox::warning( this, tr("Delete"), tr("Icon deletion failed.") ); } else { reject(); } } } void LnkProperties::setupLocations() { QFileInfo fi( lnk->file() ); fileSize = fi.size(); StorageInfo storage; const QList<FileSystem> &fs = storage.fileSystems(); QListIterator<FileSystem> it ( fs ); QString s; QString homeDir = getenv("HOME"); QString hardDiskHome; QString hardDiskPath; int index = 0; currentLocation = -1; for ( ; it.current(); ++it ) { // we add 10k to the file size so we are sure we can also save the desktop file if ( (*it)->availBlocks() * (*it)->blockSize() > fileSize + 10000 ) { if ( (*it)->isRemovable() || (*it)->disk() == "/dev/mtdblock1" || (*it)->disk() == "/dev/mtdblock/1" || (*it)->disk().left(13) == "/dev/mtdblock" ) { d->locationCombo->insertItem( (*it)->name(), index ); locations.append( ((*it)->isRemovable() ? (*it)->path() : homeDir) ); if ( lnk->file().contains( (*it)->path() ) ) { d->locationCombo->setCurrentItem( index ); |