aboutsummaryrefslogtreecommitdiffstats
path: root/x11/kdelibs4
diff options
context:
space:
mode:
authormakc <makc@FreeBSD.org>2009-01-14 07:16:38 +0800
committermakc <makc@FreeBSD.org>2009-01-14 07:16:38 +0800
commit999db758f636d0697b452b372b70deb476f862fd (patch)
treef47879fc6f6ff3a3ce57985d40b4b2d16ee6cfb9 /x11/kdelibs4
parent438e001911cf56e7440ea249e2a6478b34443455 (diff)
downloadfreebsd-ports-gnome-999db758f636d0697b452b372b70deb476f862fd.tar.gz
freebsd-ports-gnome-999db758f636d0697b452b372b70deb476f862fd.tar.zst
freebsd-ports-gnome-999db758f636d0697b452b372b70deb476f862fd.zip
kde@freebsd team is pleased to announce KDE 4.1.4, the last bugfix release in 4.1.x series.
You have only two weeks to play with it -- KDE 4.2.0 is coming ;) Great thanks for those who helped us with testing 4.1.2 and 4.1.3 during long-long ports ice-age. For lists of bugfixes and improvements please see: http://www.kde.org/announcements/changelogs/changelog4_1_1to4_1_2.php http://www.kde.org/announcements/changelogs/changelog4_1_2to4_1_3.php http://www.kde.org/announcements/changelogs/changelog4_1_3to4_1_4.php Approved by: miwi (mentor)
Diffstat (limited to 'x11/kdelibs4')
-rw-r--r--x11/kdelibs4/Makefile19
-rw-r--r--x11/kdelibs4/distinfo6
-rw-r--r--x11/kdelibs4/files/extrapatch-nepomuk-core-resourcefiltermodel.cpp19
-rw-r--r--x11/kdelibs4/files/extrapatch-nepomuk-core-resourcefiltermodel.h13
-rw-r--r--x11/kdelibs4/files/patch-kfile-kfileplacesmodel.cpp106
-rw-r--r--x11/kdelibs4/files/patch-kfile-kfileplacesmodel.h12
-rw-r--r--x11/kdelibs4/files/patch-kfile-kfileplacesview.cpp65
7 files changed, 232 insertions, 8 deletions
diff --git a/x11/kdelibs4/Makefile b/x11/kdelibs4/Makefile
index ea2987d6ebf0..ac45b8dc4cb0 100644
--- a/x11/kdelibs4/Makefile
+++ b/x11/kdelibs4/Makefile
@@ -49,22 +49,31 @@ LIB_DEPENDS+= dns_sd:${PORTSDIR}/net/mDNSResponder
CONFLICTS= qt4-phonon-4*
LATEST_LINK= ${PORTNAME}4
+CMAKE_ARGS+= -DWITH_FAM:BOOL=Off
+
USE_KDE4= kdeprefix kdehier automoc4 sharedmime
KDE4_BUILDENV= yes
USE_BZIP2= yes
-USE_FAM= yes
USE_GETTEXT= yes
USE_OPENSSL= yes
USE_QT_VER= 4
-QT_COMPONENTS= corelib dbus gui moc network opengl qmake qt3support \
- qtestlib rcc script sql svg uic3 xml designer \
- assistant svg qdbusviewer makeqpf imageformats
+QT_COMPONENTS= corelib dbus gui network opengl qt3support \
+ qtestlib script sql svg xml designer \
+ assistant svg qdbusviewer makeqpf imageformats \
+ qmake_build moc_build rcc_build uic_build uic3_build
USE_GNOME= libxml2 libxslt
MAN1= checkXML.1 kde4-config.1 makekdewidgets.1 kdecmake.1
MAN7= kdeoptions.7 qtoptions.7
MAN8= kbuildsycoca4.8
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} < 700042
+EXTRA_PATCHES= ${FILESDIR}/extrapatch-nepomuk-core-resourcefiltermodel.cpp \
+ ${FILESDIR}/extrapatch-nepomuk-core-resourcefiltermodel.h
+.endif
+
post-extract:
${MKDIR} ${WRKSRC}
@@ -85,4 +94,4 @@ pre-configure:
post-install:
@-update-mime-database ${KDE4_PREFIX}/share/mime
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/x11/kdelibs4/distinfo b/x11/kdelibs4/distinfo
index 657ab6a9563a..5eee0f4125be 100644
--- a/x11/kdelibs4/distinfo
+++ b/x11/kdelibs4/distinfo
@@ -1,3 +1,3 @@
-MD5 (KDE/kdelibs-4.1.1.tar.bz2) = d75ec557cd864e3f9150059c3e58ed61
-SHA256 (KDE/kdelibs-4.1.1.tar.bz2) = b830e3eba8d65ad257b16c920e1bf18fcc7c0db84ec244d450a0db1cc0626a8f
-SIZE (KDE/kdelibs-4.1.1.tar.bz2) = 9110725
+MD5 (KDE/kdelibs-4.1.4.tar.bz2) = ffdb0340a72aaf06a0b98f354c0c59ef
+SHA256 (KDE/kdelibs-4.1.4.tar.bz2) = e98891cfaec6d60e361ed8630c0ecaf019bb4d497f984574ee76963236f43360
+SIZE (KDE/kdelibs-4.1.4.tar.bz2) = 9118858
diff --git a/x11/kdelibs4/files/extrapatch-nepomuk-core-resourcefiltermodel.cpp b/x11/kdelibs4/files/extrapatch-nepomuk-core-resourcefiltermodel.cpp
new file mode 100644
index 000000000000..9ac26cd42ad8
--- /dev/null
+++ b/x11/kdelibs4/files/extrapatch-nepomuk-core-resourcefiltermodel.cpp
@@ -0,0 +1,19 @@
+--- ../nepomuk/core/resourcefiltermodel.cpp.orig 2009-01-06 23:35:20.000000000 +0000
++++ ../nepomuk/core/resourcefiltermodel.cpp 2009-01-09 10:03:30.000000000 +0000
+@@ -42,15 +42,9 @@
+ using namespace Soprano;
+
+
+-uint Soprano::qHash( const Soprano::Node& node )
+-{
+- return qHash( node.toString() );
+-}
+-
+-// @deprecated: just for keeping binary compatibility
+ uint qHash( const Soprano::Node& node )
+ {
+- return Soprano::qHash( node );
++ return qHash( node.toString() );
+ }
+
+ class Nepomuk::ResourceFilterModel::Private
diff --git a/x11/kdelibs4/files/extrapatch-nepomuk-core-resourcefiltermodel.h b/x11/kdelibs4/files/extrapatch-nepomuk-core-resourcefiltermodel.h
new file mode 100644
index 000000000000..e3ebee61dca4
--- /dev/null
+++ b/x11/kdelibs4/files/extrapatch-nepomuk-core-resourcefiltermodel.h
@@ -0,0 +1,13 @@
+--- ../nepomuk/core/resourcefiltermodel.h.orig 2009-01-06 23:35:20.000000000 +0000
++++ ../nepomuk/core/resourcefiltermodel.h 2009-01-09 10:15:12.000000000 +0000
+@@ -113,9 +113,7 @@
+ };
+ }
+
+-namespace Soprano {
+- uint qHash( const Node& node );
+-}
++uint qHash( const Soprano::Node& node );
+
+
+ #endif
diff --git a/x11/kdelibs4/files/patch-kfile-kfileplacesmodel.cpp b/x11/kdelibs4/files/patch-kfile-kfileplacesmodel.cpp
new file mode 100644
index 000000000000..a6090fc7c2df
--- /dev/null
+++ b/x11/kdelibs4/files/patch-kfile-kfileplacesmodel.cpp
@@ -0,0 +1,106 @@
+--- ../kfile/kfileplacesmodel.cpp 2008/08/15 10:29:57 847375
++++ ../kfile/kfileplacesmodel.cpp 2008/08/15 10:30:45 847376
+@@ -54,7 +54,7 @@
+ public:
+ Private(KFilePlacesModel *self) : q(self), bookmarkManager(0), sharedBookmarks(0) {}
+ ~Private()
+- {
++ {
+ delete sharedBookmarks;
+ qDeleteAll(items);
+ }
+@@ -68,7 +68,7 @@
+ Solid::Predicate predicate;
+ KBookmarkManager *bookmarkManager;
+ KFilePlacesSharedBookmarks * sharedBookmarks;
+-
++
+ void reloadAndSignal();
+ QList<KFilePlacesItem *> loadBookmarkList();
+
+@@ -663,8 +663,7 @@
+ {
+ Solid::Device device = deviceForIndex(index);
+
+- if ( (device.is<Solid::StorageAccess>() && device.as<Solid::StorageAccess>()->isAccessible())
+- || device.is<Solid::OpticalDisc>()) {
++ if (device.is<Solid::StorageAccess>() && device.as<Solid::StorageAccess>()->isAccessible()) {
+
+ Solid::StorageDrive *drive = device.as<Solid::StorageDrive>();
+
+@@ -680,17 +679,39 @@
+ removable = drive->isRemovable();
+ }
+
++ QString iconName;
+ QString text;
+ QString label = data(index, Qt::DisplayRole).toString().replace('&',"&&");
+
+ if (device.is<Solid::OpticalDisc>()) {
+- text = i18n("&Eject '%1'", label);
++ text = i18n("&Release '%1'", label);
+ } else if (removable || hotpluggable) {
+ text = i18n("&Safely Remove '%1'", label);
++ iconName = "media-eject";
+ } else {
+ text = i18n("&Unmount '%1'", label);
++ iconName = "media-eject";
+ }
+
++ if (!iconName.isEmpty()) {
++ return new QAction(KIcon(iconName), text, 0);
++ } else {
++ return new QAction(text, 0);
++ }
++ }
++
++ return 0;
++}
++
++QAction *KFilePlacesModel::ejectActionForIndex(const QModelIndex &index) const
++{
++ Solid::Device device = deviceForIndex(index);
++
++ if (device.is<Solid::OpticalDisc>()) {
++
++ QString label = data(index, Qt::DisplayRole).toString().replace('&',"&&");
++ QString text = i18n("&Eject '%1'", label);
++
+ return new QAction(KIcon("media-eject"), text, 0);
+ }
+
+@@ -701,6 +722,18 @@
+ {
+ Solid::Device device = deviceForIndex(index);
+
++ Solid::StorageAccess *access = device.as<Solid::StorageAccess>();
++
++ connect(access, SIGNAL(teardownDone(Solid::ErrorType, QVariant, const QString &)),
++ this, SLOT(_k_storageTeardownDone(Solid::ErrorType, QVariant)));
++
++ device.as<Solid::StorageAccess>()->teardown();
++}
++
++void KFilePlacesModel::requestEject(const QModelIndex &index)
++{
++ Solid::Device device = deviceForIndex(index);
++
+ Solid::OpticalDrive *drive = device.parent().as<Solid::OpticalDrive>();
+
+ if (drive!=0) {
+@@ -709,12 +742,9 @@
+
+ drive->eject();
+ } else {
+- Solid::StorageAccess *access = device.as<Solid::StorageAccess>();
+-
+- connect(access, SIGNAL(teardownDone(Solid::ErrorType, QVariant, const QString &)),
+- this, SLOT(_k_storageTeardownDone(Solid::ErrorType, QVariant)));
+-
+- device.as<Solid::StorageAccess>()->teardown();
++ QString label = data(index, Qt::DisplayRole).toString().replace('&',"&&");
++ QString message = i18n("The device '%1' is not a disc and can't be ejected.", label);
++ emit errorMessage(message);
+ }
+ }
+
diff --git a/x11/kdelibs4/files/patch-kfile-kfileplacesmodel.h b/x11/kdelibs4/files/patch-kfile-kfileplacesmodel.h
new file mode 100644
index 000000000000..ba6853976ab3
--- /dev/null
+++ b/x11/kdelibs4/files/patch-kfile-kfileplacesmodel.h
@@ -0,0 +1,12 @@
+--- ../kfile/kfileplacesmodel.h 2008/08/15 10:29:57 847375
++++ ../kfile/kfileplacesmodel.h 2008/08/15 10:30:45 847376
+@@ -60,7 +60,9 @@
+ KBookmark bookmarkForIndex(const QModelIndex &index) const;
+
+ QAction *teardownActionForIndex(const QModelIndex &index) const;
++ QAction *ejectActionForIndex(const QModelIndex &index) const;
+ void requestTeardown(const QModelIndex &index);
++ void requestEject(const QModelIndex &index);
+ void requestSetup(const QModelIndex &index);
+
+ void addPlace(const QString &text, const KUrl &url, const QString &iconName = QString(), const QString &appName = QString());
diff --git a/x11/kdelibs4/files/patch-kfile-kfileplacesview.cpp b/x11/kdelibs4/files/patch-kfile-kfileplacesview.cpp
new file mode 100644
index 000000000000..ffb64af99a56
--- /dev/null
+++ b/x11/kdelibs4/files/patch-kfile-kfileplacesview.cpp
@@ -0,0 +1,65 @@
+--- ../kfile/kfileplacesview.cpp 2008/08/06 22:07:11 843298
++++ ../kfile/kfileplacesview.cpp 2008/08/15 10:30:45 847376
+@@ -551,6 +551,9 @@
+ QAction *edit = 0;
+ QAction *hide = 0;
+ QAction *emptyTrash = 0;
++ QAction* eject = 0;
++ QAction* teardown = 0;
++
+ if (index.isValid()) {
+ if (!placesModel->isDevice(index)) {
+ if (placesModel->url(index) == KUrl("trash:/")) {
+@@ -561,6 +564,22 @@
+ }
+
+ edit = menu.addAction(KIcon("document-properties"), i18n("&Edit '%1'...", label));
++ } else {
++ eject = placesModel->ejectActionForIndex(index);
++ if (eject!=0) {
++ eject->setParent(&menu);
++ menu.addAction(eject);
++ }
++
++ teardown = placesModel->teardownActionForIndex(index);
++ if (teardown!=0) {
++ teardown->setParent(&menu);
++ menu.addAction(teardown);
++ }
++
++ if (teardown!=0 || eject!=0) {
++ menu.addSeparator();
++ }
+ }
+
+ hide = menu.addAction(i18n("&Hide '%1'", label));
+@@ -575,19 +594,11 @@
+ showAll->setChecked(d->showAll);
+ }
+
+- QAction* remove = 0L;
+- QAction* teardown = 0L;
++ QAction* remove = 0;
+ if (index.isValid()) {
+ if (!placesModel->isDevice(index)) {
+ menu.addSeparator();
+ remove = menu.addAction( KIcon("edit-delete"), i18n("&Remove '%1'", label));
+- } else {
+- teardown = placesModel->teardownActionForIndex(index);
+- if (teardown!=0) {
+- teardown->setParent(&menu);
+- menu.addSeparator();
+- menu.addAction(teardown);
+- }
+ }
+ }
+
+@@ -646,6 +657,8 @@
+ setShowAll(showAll->isChecked());
+ } else if (teardown != 0 && result == teardown) {
+ placesModel->requestTeardown(index);
++ } else if (eject != 0 && result == eject) {
++ placesModel->requestEject(index);
+ }
+
+ index = placesModel->closestItem(d->currentUrl);