From: heikki Date: Wed, 29 Sep 2010 13:54:25 +0000 (+0300) Subject: release 0.6.6 X-Git-Url: https://vcs.maemo.org/git/?p=fapman;a=commitdiff_plain;h=172a6626f6f1cd6445fc575e2d614a1821596900 release 0.6.6 --- diff --git a/Makefile b/Makefile index 60cd8cd..4494954 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ ############################################################################# # Makefile for building: fapman -# Generated by qmake (2.01a) (Qt 4.6.2) on: Wed Aug 25 14:38:37 2010 +# Generated by qmake (2.01a) (Qt 4.6.2) on: Mon Sep 27 17:14:34 2010 # Project: fapman.pro # Template: app # Command: /opt/NokiaQtSDK/Maemo/4.6.2/targets/fremantle-1030/bin/qmake -spec /opt/NokiaQtSDK/Maemo/4.6.2/sysroots/fremantle-arm-sysroot-1030-slim/usr/share/qt4/mkspecs/linux-g++-maemo5 -unix -o Makefile fapman.pro @@ -428,7 +428,6 @@ mainwindow.o: mainwindow.cpp mainwindow.h \ blacklistselect.h \ version.h \ ui_mainwindow.h \ - rotatingbackground.h \ packageview.h \ package.h \ confirmdialog.h \ @@ -437,6 +436,7 @@ mainwindow.o: mainwindow.cpp mainwindow.h \ help.h \ settings.h \ logview.h \ + rotatingbackground.h \ dpkginterface.h $(CXX) -c $(CXXFLAGS) $(INCPATH) -o mainwindow.o mainwindow.cpp diff --git a/TODO.txt b/TODO.txt index 506429e..b12bd93 100644 --- a/TODO.txt +++ b/TODO.txt @@ -4,42 +4,42 @@ Note that many of these are just random ideas, not all of them will get implemented ------------------------------------------------------------------------------------- -0.6.6: -* show a warning if all packages are pinned in apt settings -* fix: confirmation dialog has wrong parent set - 0.7: -- update install/remove changes directly to internal package db & don't require re-reading package lists afterwards - support loading .install files - support installing local .debs - dbus interface for installing packages by name - mime type handling for .install and .deb (can it be done without conflicting HAM?) -- warn about unauthenticated packages / option to disable installing unauthenticated packages 0.8 (possibly): - "problem solver" window/feature (find broken packages, handle recovery from broken packages better) -- possible to save package selection or a list of installed (user category) packages anywhere +- possible to save package selection or a list of installed (user category) packages anywhere ("backup & restore") +- support translations later/any/uncertain: - don't lose package selections when returning to main menu (autostore/load selections - to different file than normal store) -- show download speed for apt-get update +- update install/remove changes directly to internal package db & don't require re-reading package lists afterwards - keep a list of recently removed apps for easy reinstallation - add an option to start fetching changelogs automatically for all upgradeable packages? - how to handle package names that end in '-'? (theoretically they are valid but nonexistent?) - filtering by repository / repository color coding? - make sure network is online on startup? - fetch dates for other than user categories? -- "online search" (a new button to main menu): use maemo.org search to find packages without loading local package lists (?) - ability to easily add extras-devel and extras-testing to repos if they don't exist - load package lists in the background when the main menu is visible? - read all hildon app manager repository settings (requires too much work...) -- possible to select cache location? +- option to select cache location? +- possibility to force reinstall of an already installed package +- warn about unauthenticated packages / option to disable installing unauthenticated packages +- show download speed and current repo for apt-get update (very hard since apt-get update output does not show + all the information needed to get the current list file names?) known bugs: - possible to get stuck in portrait mode (wait for Qt autorotation fix) +- no window menu indicator in stacked windows (probably Qt bug) - updating menu icons after installation does not work or works only sometimes (currently disabled) + diff --git a/aaptinterface.cpp b/aaptinterface.cpp index 74c6dfa..3f4546d 100644 --- a/aaptinterface.cpp +++ b/aaptinterface.cpp @@ -539,6 +539,10 @@ QString AAptInterface::finishProcessCommonErrorMessages(QByteArray& output) msg = "Some of your packages have unmet dependencies which could not be fixed. See the log for details."; } else if( output.contains("E: The method driver") ) { msg = "Apt failed to find a suitable method driver. One or more of your repositories might have an invalid URL."; + } else if( output.contains("E: Invalid record in the preferences file") ) { + msg = "Invalid record in the apt preferences file."; + } else if( output.contains("E: Malformed line") && output.contains("in source list") ) { + msg = "Malformed line in sources list. Check your repository settings."; } return msg; @@ -750,15 +754,26 @@ void AAptInterface::uiUpdaterAptGetUpdate() return; QStringList lines = QString( data.trimmed() ).split('\n'); + QString infoline; for( int i=0; iupdateText( QString("Updating catalogs (%1)").arg(iCatalogCounter) ); //qDebug() << iCatalogCounter << iCatalogsTotal; - iUiDimmer->setProgress( iCatalogCounter*100/iCatalogsTotal ); + + //iUiDimmer->updateText("Updating catalogs
" + infoline + ""); + + if( iCatalogsTotal > 0 ) + iUiDimmer->setProgress( iCatalogCounter*100/iCatalogsTotal ); } void AAptInterface::uiUpdaterAptGetInstall() @@ -1445,6 +1460,10 @@ bool AAptInterface::processPackageDataLine(Package*& pkg, QByteArray& line) { pkg->appendBreaks( line.mid(7).trimmed() ); } + else if( line.startsWith("Maintainer:") ) + { + pkg->setMaintainer( line.mid(11).trimmed() ); + } else if( line.startsWith("Description:") ) { diff --git a/debian/changelog b/debian/changelog index 99ce988..05de096 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,14 @@ fapman (0.6.6-1) unstable; urgency=low - * - - -- Heikki Holstila Fri, 3 Sep 2010 01:56:47 +0300 + * redesigned the main menu (icons from http://openiconlibrary.sourceforge.net) + * fix: confirmation dialog has wrong parent set + * fix: repos with blank "distribution" cause apt to fail + * fix: crash when trying to update catalogs with all repos disabled + * reset category filter to default when returning to main menu + * improved error/warning messages in certain situations + * show the maintainer field for packages + + -- Heikki Holstila Wed, 29 Sep 2010 16:48:46 +0300 fapman (0.6.5-1) unstable; urgency=low diff --git a/fapman b/fapman index 4701a85..36b7314 100755 Binary files a/fapman and b/fapman differ diff --git a/fapman.pro.user b/fapman.pro.user index f99500f..7521444 100644 --- a/fapman.pro.user +++ b/fapman.pro.user @@ -2,7 +2,7 @@ ProjectExplorer.Project.ActiveTarget - 0 + 1 ProjectExplorer.Project.EditorSettings @@ -13,9 +13,9 @@ ProjectExplorer.Project.Target.0 - Maemo - Qt4ProjectManager.Target.MaemoDeviceTarget - 1 + Qt Simulator + Qt4ProjectManager.Target.QtSimulatorTarget + 0 0 @@ -30,15 +30,7 @@ - - - Qt4ProjectManager.MaemoPackageCreationStep - - true - /usr/local/bin/fapman - - - 3 + 2 Make Qt4ProjectManager.MakeStep @@ -54,9 +46,9 @@ Debug Qt4ProjectManager.Qt4BuildConfiguration 2 - /scratchbox/users/heikki/home/heikki/fapman-build-maemo - 9 - 9 + /scratchbox/users/heikki/home/heikki/fapman-build-simulator + 2 + 0 true @@ -72,15 +64,7 @@ - - - Qt4ProjectManager.MaemoPackageCreationStep - - false - /usr/local/bin/fapman - - - 3 + 2 Make Qt4ProjectManager.MakeStep @@ -96,20 +80,24 @@ Release Qt4ProjectManager.Qt4BuildConfiguration 0 - /scratchbox/users/heikki/home/heikki/fapman-build-maemo - 9 - 9 - false + /scratchbox/users/heikki/home/heikki/fapman-build-simulator + 2 + 0 + true 2 - fapman.pro - New Maemo Run Configuration - Qt4ProjectManager.MaemoRunConfiguration - - - 0 - + fapman + Qt4ProjectManager.Qt4RunConfiguration + 2 + + fapman.pro + false + false + + false + false + 1 @@ -117,9 +105,9 @@ ProjectExplorer.Project.Target.1 - Qt Simulator - Qt4ProjectManager.Target.QtSimulatorTarget - 0 + Maemo + Qt4ProjectManager.Target.MaemoDeviceTarget + 1 0 @@ -134,7 +122,17 @@ - 2 + + true + + Qt4ProjectManager.MaemoPackageCreationStep + + true + + + 0.0.1 + + 3 Make Qt4ProjectManager.MakeStep @@ -150,10 +148,10 @@ Debug Qt4ProjectManager.Qt4BuildConfiguration 2 - /scratchbox/users/heikki/home/heikki/fapman-build-simulator - 2 - 0 - true + /scratchbox/users/heikki/home/heikki/fapman-build-maemo + 3 + 9 + false @@ -168,7 +166,17 @@ - 2 + + true + + Qt4ProjectManager.MaemoPackageCreationStep + + false + + + 0.0.1 + + 3 Make Qt4ProjectManager.MakeStep @@ -184,24 +192,22 @@ Release Qt4ProjectManager.Qt4BuildConfiguration 0 - /scratchbox/users/heikki/home/heikki/fapman-build-simulator - 2 - 0 - true + /scratchbox/users/heikki/home/heikki/fapman-build-maemo + 3 + 9 + false 2 - fapman - Qt4ProjectManager.Qt4RunConfiguration - 2 - - fapman.pro - false - false - - false - false - + fapman.pro + New Maemo Run Configuration + Qt4ProjectManager.MaemoRunConfiguration + + 0 + + + + 1 diff --git a/icons/background.png b/icons/background.png deleted file mode 100644 index 55586cb..0000000 Binary files a/icons/background.png and /dev/null differ diff --git a/icons/install.png b/icons/install.png index 2bdc5b9..dedd391 100644 Binary files a/icons/install.png and b/icons/install.png differ diff --git a/icons/remove.png b/icons/remove.png index 10b22bc..b293624 100644 Binary files a/icons/remove.png and b/icons/remove.png differ diff --git a/icons/repos.png b/icons/repos.png index 84204b3..c25c2db 100644 Binary files a/icons/repos.png and b/icons/repos.png differ diff --git a/icons/update.png b/icons/update.png index 2192267..274285a 100644 Binary files a/icons/update.png and b/icons/update.png differ diff --git a/icons/upgrade.png b/icons/upgrade.png index 3ed8c82..90eff38 100644 Binary files a/icons/upgrade.png and b/icons/upgrade.png differ diff --git a/main.cpp b/main.cpp index 424313d..0aaf9ff 100644 --- a/main.cpp +++ b/main.cpp @@ -24,7 +24,6 @@ #include "confirmdialog.h" #include -#include bool EnableDebugOutput = false; @@ -63,29 +62,6 @@ int main(int argc, char *argv[]) d.exec(); } - quint64 warn_limit_root = 5120; - quint64 warn_limit_opt = 51200; - struct statfs root_stat; - struct statfs opt_stat; - statfs("/",&root_stat); - statfs("/opt",&opt_stat); - quint64 free_root = root_stat.f_bavail * root_stat.f_bsize / 1024; - quint64 free_opt = opt_stat.f_bavail * opt_stat.f_bsize / 1024; - qDebug() << "rootfs" << free_root << "kB free"; - qDebug() << "opt fs" << free_opt << "kB free"; - if( free_root < warn_limit_root || free_opt < warn_limit_opt ) - { - ConfirmDialog d(false, &w); - QString t; - if( free_root < warn_limit_root ) - t += QString("Root filesystem has %L1 kB available
").arg(free_root); - if( free_opt < warn_limit_opt ) - t += QString("Opt (home) filesystem has %L1 kB available
").arg(free_opt); - t += "
You may proceed, but consider freeing up space to prevent problems in the future"; - d.setText("Warning: Low disk space",t); - d.exec(); - } - #ifdef Q_WS_MAEMO_5 // *** from patch by qwerty12 *** if (!QDBusConnection::sessionBus().isConnected()) { diff --git a/mainwindow.cpp b/mainwindow.cpp index 02b325b..6ad7f06 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -33,6 +33,8 @@ #include #endif +#include + #include "mainwindow.h" #include "version.h" #include "ui_mainwindow.h" @@ -88,8 +90,11 @@ MainWindow::MainWindow(QWidget *parent) : iUpgradeAutoUpdate = true; iNextOperation = OpNone; + connect(QApplication::desktop(), SIGNAL(resized(int)), this, SLOT(orientationChanged())); + ui->centralWidget->loadWallpaper(); + /* QString stylesheet_mainscreen = "QPushButton {" "border-radius: 16px;" @@ -105,6 +110,7 @@ MainWindow::MainWindow(QWidget *parent) : "border-style: inset;" "background-color: rgba(255,255,255,150);" "}"; + */ if( ((QApplication*)QApplication::instance())->styleSheet().isEmpty() ) { @@ -119,7 +125,7 @@ MainWindow::MainWindow(QWidget *parent) : } if( stylesheet_file.isEmpty() ) { - ui->centralWidget->setStyleSheet(stylesheet_mainscreen); + //ui->centralWidget->setStyleSheet(stylesheet_mainscreen); } else { ((QApplication*)QApplication::instance())->setStyleSheet(stylesheet_file); } @@ -142,6 +148,8 @@ MainWindow::MainWindow(QWidget *parent) : iMediaObject = new Phonon::MediaObject(this); Phonon::AudioOutput* aout = new Phonon::AudioOutput(Phonon::NotificationCategory, this); Phonon::createPath(iMediaObject, aout); + + showFreeSpace(); } MainWindow::~MainWindow() @@ -508,6 +516,7 @@ void MainWindow::operationQueueFinished(QList last #endif } + showFreeSpace(); } } @@ -638,3 +647,76 @@ void MainWindow::on_actionLoad_file_triggered() iAptInterface->loadInstallFiles(installs); } } + +void MainWindow::orientationChanged() +{ + //ui->centralWidget->adjustSize(); + //ui->listWidget->adjustSize(); +} + + +void MainWindow::showFreeSpace() +{ + quint64 warn_limit_root = 5120; + quint64 warn_limit_opt = 51200; + struct statfs root_stat; + struct statfs opt_stat; + statfs("/",&root_stat); + statfs("/opt",&opt_stat); + quint64 free_root = root_stat.f_bavail * root_stat.f_bsize / 1024; + quint64 free_opt = opt_stat.f_bavail * opt_stat.f_bsize / 1024; + quint64 total_root = root_stat.f_blocks * root_stat.f_bsize / 1024; + quint64 total_opt = opt_stat.f_blocks * opt_stat.f_bsize / 1024; + qDebug() << "rootfs" << free_root << "/" << total_root << "kB free"; + qDebug() << "opt fs" << free_opt << "/" << total_opt << "kB free"; + + QString rootstr = QString("rootfs: %L1 / %L2 MB free").arg(free_root/1024).arg(total_root/1024); + QString optstr = QString("opt: %L1 / %L2 MB free").arg(free_opt/1024).arg(total_opt/1024); + + ui->label->setText("" + rootstr + "
" + optstr + "
"); + + /* + ui->progressBarRoot->setFormat(rootstr); + ui->progressBarRoot->setMaximum(total_root/1024); + ui->progressBarRoot->setValue(free_root/1024); + ui->progressBarOpt->setFormat(optstr); + ui->progressBarOpt->setMaximum(total_opt/1024); + ui->progressBarOpt->setValue(free_opt/1024); + */ + + if( free_root < warn_limit_root || free_opt < warn_limit_opt ) + { + ConfirmDialog d(false, this); + QString t; + if( free_root < warn_limit_root ) + t += QString("Root filesystem has %L1 kB available
").arg(free_root); + if( free_opt < warn_limit_opt ) + t += QString("Opt (home) filesystem has %L1 kB available
").arg(free_opt); + t += "
You may proceed, but consider freeing up space to prevent problems in the future"; + d.setText("Warning: Low disk space",t); + d.exec(); + } +} + +void MainWindow::on_listWidget_itemClicked(QListWidgetItem* item) +{ + if( item->text() == "Manage repositories" ) { + on_btnRepos_clicked(); + } + else if( item->text() == "Update catalogs" ) { + on_btnUpdate_clicked(); + } + else if( item->text() == "Install applications" ) { + on_btnListInstallable_clicked(); + } + else if( item->text() == "Remove applications" ) { + on_btnListInstalled_clicked(); + } + else if( item->text() == "Upgrade applications" ) { + on_btnUpgrade_clicked(); + } + else { + qDebug() << "Warning: Unhandled main menu item"; + } + item->setSelected(false); +} diff --git a/mainwindow.h b/mainwindow.h index 1114354..8b98800 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -57,8 +57,10 @@ public: bool confirmDialog(QString title, QString msg); void setNextOperation(nextOperation op_) { iNextOperation=op_; } -public slots: void on_btnUpdate_clicked(); + +public slots: + void orientationChanged(); #ifdef Q_WS_MAEMO_5 Q_SCRIPTABLE int top_application(); #endif @@ -68,6 +70,7 @@ protected: private: void dateFetchAsk(); + void showFreeSpace(); Ui::MainWindow *ui; AAptInterface* iAptInterface; @@ -83,16 +86,18 @@ private: nextOperation iNextOperation; Phonon::MediaObject* iMediaObject; + void on_btnRepos_clicked(); + void on_btnUpgrade_clicked(); + void on_btnListInstallable_clicked(); + void on_btnListInstalled_clicked(); + private slots: - void on_actionLoad_file_triggered(); + void on_listWidget_itemClicked(QListWidgetItem* item); + void on_actionLoad_file_triggered(); void on_actionOptions_triggered(); void on_actionView_log_triggered(); - void on_btnRepos_clicked(); void on_actionClean_triggered(); void on_actionAbout_triggered(); - void on_btnUpgrade_clicked(); - void on_btnListInstallable_clicked(); - void on_btnListInstalled_clicked(); }; #endif // MAINWINDOW_H diff --git a/mainwindow.ui b/mainwindow.ui index 2b3f31a..68131e9 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -14,213 +14,134 @@ Faster Application Manager - + + + 0 + 0 + + + 0 - + + 6 + + + 6 + + + 6 + + 0 - - - Qt::Horizontal + + + QAbstractItemView::NoEditTriggers + + + false - + - 291 - 20 + 96 + 96 - - - - + + QListView::Static + + + QListView::LeftToRight + + + QListView::Adjust + - 0 + 20 + + QListView::IconMode + + + false + + + true + + + + Install applications + + + AlignHCenter|AlignVCenter|AlignCenter + + + + :/icons/icons/install.png:/icons/icons/install.png + + - - - Qt::Vertical - - - - 245 - 58 - - - + + Remove applications + + + AlignHCenter|AlignVCenter|AlignCenter + + + + :/icons/icons/remove.png:/icons/icons/remove.png + - - - 4 - - - - - - 0 - 0 - - - - Manage -repos - - - - :/icons/icons/repos.png:/icons/icons/repos.png - - - - 96 - 96 - - - - true - - - - - - - - 0 - 0 - - - - Update -catalogs - - - - :/icons/icons/update.png:/icons/icons/update.png - - - - 96 - 96 - - - - true - - - - - - - - 0 - 0 - - - - Install -applications - - - - :/icons/icons/install.png:/icons/icons/install.png - - - - 96 - 96 - - - - true - - - - - - - - 0 - 0 - - - - Upgrade -applications - - - - :/icons/icons/upgrade.png:/icons/icons/upgrade.png - - - - 96 - 96 - - - - true - - - - - - - - 0 - 0 - - - - Remove -applications - - - - :/icons/icons/remove.png:/icons/icons/remove.png - - - - 96 - 96 - - - - true - - - - + + Upgrade applications + + + AlignHCenter|AlignVCenter|AlignCenter + + + + :/icons/icons/upgrade.png:/icons/icons/upgrade.png + - - - Qt::Vertical - - - - 245 - 57 - - - + + Update catalogs + + + AlignHCenter|AlignVCenter|AlignCenter + + + + :/icons/icons/update.png:/icons/icons/update.png + - + + + Manage repositories + + + AlignHCenter|AlignVCenter|AlignCenter + + + + :/icons/icons/repos.png:/icons/icons/repos.png + + + - - - Qt::Horizontal + + + - - - 290 - 20 - + + Qt::AlignCenter - + diff --git a/package.cpp b/package.cpp index 4757c4d..6b8c13f 100644 --- a/package.cpp +++ b/package.cpp @@ -255,3 +255,11 @@ bool Package::versionConflicts(QString conflictVer, QString operVer) return confl; } + +QString Package::maintainerRichText() +{ + QString m = iMaintainer; + m.replace('<',"<"); + m.replace('>',">"); + return m; +} diff --git a/package.h b/package.h index 097c78d..0d8c5d9 100644 --- a/package.h +++ b/package.h @@ -62,6 +62,7 @@ public: inline void appendSuggests(QByteArray line_) { iSuggests << line_.split(','); } inline void appendUpgradeDescription(QByteArray d_) { iUpgradeDescription.append(d_); } inline void setPinned(bool p_) { iPinned=p_; } + inline void setMaintainer(QByteArray m_) { iMaintainer = m_; } void convertIcon(); @@ -99,6 +100,7 @@ public: inline QList recommends() { return iRecommends; } inline QList suggests() { return iSuggests; } inline bool isPinned() { return iPinned; } + QString maintainerRichText(); QStringList checkConflicts_RichText(); @@ -128,6 +130,7 @@ private: QList iRepositories; BlacklistSelect::blackList iBlacklist; QByteArray iUpgradeDescription; + QByteArray iMaintainer; QByteArray iIconData; QPixmap* iIcon; diff --git a/packageselector.cpp b/packageselector.cpp index 54d0827..51c4ef0 100644 --- a/packageselector.cpp +++ b/packageselector.cpp @@ -385,6 +385,10 @@ void PackageSelector::on_radioTabBasic_clicked() } } + if( !iPkg->maintainerRichText().isEmpty() ) { + longtext +="Maintainer: " + iPkg->maintainerRichText() + "
"; + } + longtext += "
" + iPkg->descShort(); QString descLong = iPkg->descLong(); if( descLong.length()>0 ) { diff --git a/packageview.cpp b/packageview.cpp index 1789e32..857cac6 100644 --- a/packageview.cpp +++ b/packageview.cpp @@ -775,7 +775,7 @@ void PackageView::resetWindow() iAptInterface->writeBlacklist(); ui->btn_StatusFilter->setEnabled(true); - //iSelectedCatFilter = iDefaultCatFilter; + iSelectedCatFilter = iDefaultCatFilter; //iSortOrder = SortAlpha; iSortNoticeShown = false; diff --git a/repository.cpp b/repository.cpp index 31eb71e..e688188 100644 --- a/repository.cpp +++ b/repository.cpp @@ -35,7 +35,9 @@ QString Repository::toString() else str = "#deb "; - str += iUrl + iDir + " " + iDist + " " + iComponents; + str += iUrl + iDir + " " + iDist; + if( !iComponents.isEmpty() ) + str += " " + iComponents; return( str.trimmed() ); } @@ -164,6 +166,9 @@ void Repository::set(QString name, QString url, QString dir, QString dist, QStri iComponents = components.trimmed(); iEnabled = enabled; + if( iDist.isEmpty() ) + iDist = "."; + // ensure that the protocol part of the URL is lowercase int pos = iUrl.indexOf("://"); QString proto = iUrl.left(pos); diff --git a/rotatingbackground.cpp b/rotatingbackground.cpp index 13da33b..b7e99a3 100644 --- a/rotatingbackground.cpp +++ b/rotatingbackground.cpp @@ -28,6 +28,7 @@ RotatingBackground::RotatingBackground(QWidget *parent) : void RotatingBackground::loadWallpaper() { + /* QString loadfile = "/home/user/.backgrounds/background-1.png"; QFileInfo custombg("/root/.fapman/wallpaper.png"); bool custom = false; @@ -35,6 +36,8 @@ void RotatingBackground::loadWallpaper() loadfile = "/root/.fapman/wallpaper.png"; custom = true; } + */ + QString loadfile = "/root/.fapman/wallpaper.png"; iWallpaperLandscape.load(loadfile); if( !iWallpaperLandscape.isNull() ) { @@ -43,6 +46,7 @@ void RotatingBackground::loadWallpaper() iWallpaperPortrait = iWallpaperLandscape.transformed(t); } + /* if( !custom && !iWallpaperLandscape.isNull() && !iWallpaperPortrait.isNull() ) { QPainter l( &iWallpaperLandscape ); @@ -58,6 +62,7 @@ void RotatingBackground::loadWallpaper() l.drawRect( 0, 0, iWallpaperLandscape.rect().width(), iWallpaperLandscape.rect().height() ); p.drawRect( 0, 0, iWallpaperPortrait.rect().width(), iWallpaperPortrait.rect().height() ); } + */ } void RotatingBackground::paintEvent(QPaintEvent *)