rpms/kdebase/FC-5 kdebase-3.5.2-dbus.patch, NONE, 1.1 kdebase-3.5.2-kioslave_media_dbus.patch, NONE, 1.1 kdebase-3.5.2-redhat.patch, NONE, 1.1 kdebase.spec, 1.159, 1.160 sources, 1.66, 1.67 kdebase-3.5.1-dbus.patch, 1.1, NONE kdebase-3.5.1-keyboardlayout.patch, 1.1, NONE kdebase-3.5.1-kwin-systray.patch, 1.1, NONE kdebase-3.5.1-redhat.patch, 1.2, NONE
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Thu Mar 30 13:46:26 UTC 2006
Author: than
Update of /cvs/dist/rpms/kdebase/FC-5
In directory cvs.devel.redhat.com:/tmp/cvs-serv3873
Modified Files:
kdebase.spec sources
Added Files:
kdebase-3.5.2-dbus.patch
kdebase-3.5.2-kioslave_media_dbus.patch
kdebase-3.5.2-redhat.patch
Removed Files:
kdebase-3.5.1-dbus.patch kdebase-3.5.1-keyboardlayout.patch
kdebase-3.5.1-kwin-systray.patch kdebase-3.5.1-redhat.patch
Log Message:
update to 3.5.2
kdebase-3.5.2-dbus.patch:
configure.in.in | 66 -----
mediamanager/connection.cpp | 168 +++++++++++++
mediamanager/connection.h | 86 ++++++
mediamanager/integrator.cpp | 244 +++++++++++++++++++
mediamanager/integrator.h | 95 +++++++
mediamanager/message.cpp | 551 ++++++++++++++++++++++++++++++++++++++++++++
mediamanager/message.h | 132 ++++++++++
7 files changed, 1277 insertions(+), 65 deletions(-)
--- NEW FILE kdebase-3.5.2-dbus.patch ---
diff -Nur kdebase-3.5.1/kioslave/media.orig/mediamanager/connection.cpp kdebase-3.5.1/kioslave/media/mediamanager/connection.cpp
--- kdebase-3.5.1/kioslave/media.orig/mediamanager/connection.cpp 1970-01-01 01:00:00.000000000 +0100
+++ kdebase-3.5.1/kioslave/media/mediamanager/connection.cpp 2006-01-26 14:54:40.000000000 +0100
@@ -0,0 +1,168 @@
+// -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
+/* connection.cpp: Qt wrapper for DBusConnection
+ *
+ * Copyright (C) 2003 Zack Rusin <zack at kde.org>
+ *
+ * Licensed under the Academic Free License version 2.0
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+#include "connection.h"
+
+using namespace DBusQt;
+
+#include "integrator.h"
+using Internal::Integrator;
+
+struct Connection::Private
+{
+ Private( Connection *qq );
+ void setConnection( DBusConnection *c );
+ DBusConnection *connection;
+ int connectionSlot;
+ DBusError error;
+ Integrator *integrator;
+ int timeout;
+ Connection *q;
+};
+
+Connection::Private::Private( Connection *qq )
+ : connection( 0 ), connectionSlot( 0 ), integrator( 0 ),
+ timeout( -1 ), q( qq )
+{
+ dbus_error_init( &error );
+}
+
+void Connection::Private::setConnection( DBusConnection *c )
+{
+ if (!c) {
+ qDebug( "error: %s, %s", error.name, error.message );
+ dbus_error_free( &error );
+ return;
+ }
+ connection = c;
+ integrator = new Integrator( c, q );
+ connect( integrator, SIGNAL(readReady()), q, SLOT(dispatchRead()) );
+}
+
+Connection::Connection( QObject *parent )
+ : QObject( parent )
+{
+ d = new Private( this );
+}
+
+Connection::Connection( const QString& host, QObject *parent )
+ : QObject( parent )
+{
+ d = new Private( this );
+
+ if ( !host.isEmpty() )
+ init( host );
+}
+
+Connection::Connection( DBusBusType type, QObject* parent )
+ : QObject( parent )
+{
+ d = new Private( this );
+ d->setConnection( dbus_bus_get(type, &d->error) );
+}
+
+void Connection::init( const QString& host )
+{
+ d->setConnection( dbus_connection_open( host.ascii(), &d->error) );
+ //dbus_connection_allocate_data_slot( &d->connectionSlot );
+ //dbus_connection_set_data( d->connection, d->connectionSlot, 0, 0 );
+}
+
+bool Connection::isConnected() const
+{
+ return dbus_connection_get_is_connected( d->connection );
+}
+
+bool Connection::isAuthenticated() const
+{
+ return dbus_connection_get_is_authenticated( d->connection );
+}
+
+void Connection::open( const QString& host )
+{
+ if ( host.isEmpty() ) return;
+
+ init( host );
+}
+
+void Connection::close()
+{
+ dbus_connection_disconnect( d->connection );
+}
+
+void Connection::flush()
+{
+ dbus_connection_flush( d->connection );
+}
+
+void Connection::dispatchRead()
+{
+ while ( dbus_connection_dispatch( d->connection ) == DBUS_DISPATCH_DATA_REMAINS )
+ ;
+}
+
+DBusConnection* Connection::connection() const
+{
+ return d->connection;
+}
+
+Connection::Connection( DBusConnection *connection, QObject *parent )
+ : QObject( parent )
+{
+ d = new Private(this);
+ d->setConnection(connection);
+}
+
+void Connection::send( const Message &m )
+{
+ dbus_connection_send(d->connection, m.message(), 0);
+}
+
+void Connection::sendWithReply( const Message& )
+{
+}
+
+Message Connection::sendWithReplyAndBlock( const Message &m )
+{
+ DBusMessage *reply;
+ reply = dbus_connection_send_with_reply_and_block( d->connection, m.message(), d->timeout, &d->error );
+ if (dbus_error_is_set(&d->error)) {
+ qDebug("error: %s, %s", d->error.name, d->error.message);
+ dbus_error_free(&d->error);
+ }
+ return Message( reply );
+}
+
+void* Connection::virtual_hook( int, void* )
+{
+}
+
+void Connection::dbus_connection_setup_with_qt_main (DBusConnection *connection)
+{
+ d->setConnection( connection );
+}
+
+
+
+/////////////////////////////////////////////////////////
+
+#include "connection.moc"
diff -Nur kdebase-3.5.1/kioslave/media.orig/mediamanager/connection.h kdebase-3.5.1/kioslave/media/mediamanager/connection.h
--- kdebase-3.5.1/kioslave/media.orig/mediamanager/connection.h 1970-01-01 01:00:00.000000000 +0100
+++ kdebase-3.5.1/kioslave/media/mediamanager/connection.h 2006-01-26 14:54:44.000000000 +0100
@@ -0,0 +1,86 @@
+// -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
+/* connection.h: Qt wrapper for DBusConnection
+ *
+ * Copyright (C) 2003 Zack Rusin <zack at kde.org>
+ *
+ * Licensed under the Academic Free License version 2.1
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+#ifndef DBUS_QT_CONNECTION_H
+#define DBUS_QT_CONNECTION_H
+
+/* We acknowledge the the dbus API is unstable */
+#define DBUS_API_SUBJECT_TO_CHANGE
+
+#include "message.h"
+
+#include <qobject.h>
+#include <qstring.h>
+
+#include "dbus/dbus.h"
+
+namespace DBusQt {
+ namespace Internal {
+ class Integrator;
+ }
+
+ class Connection : public QObject
+ {
+ Q_OBJECT
+ public:
+ Connection( QObject *parent =0 );
+ Connection( const QString& host,
+ QObject *parent = 0 );
+ Connection( DBusBusType type, QObject* parent = 0 );
+
+ bool isConnected() const;
+ bool isAuthenticated() const;
+
+ Message borrowMessage();
+ Message popMessage();
+ void stealBorrowMessage( const Message& );
+ void dbus_connection_setup_with_qt_main (DBusConnection *connection);
+
+ public slots:
+ void open( const QString& );
+ void close();
+ void flush();
+ void send( const Message& );
+ void sendWithReply( const Message& );
+ Message sendWithReplyAndBlock( const Message& );
+
+ protected slots:
+ void dispatchRead();
+
+ protected:
+ void init( const QString& host );
+ virtual void *virtual_hook( int id, void *data );
+
+ private:
+ friend class Internal::Integrator;
+ DBusConnection *connection() const;
+ Connection( DBusConnection *connection, QObject *parent );
+
+ private:
+ struct Private;
+ Private *d;
+ };
+
+}
+
+
+#endif
diff -Nur kdebase-3.5.1/kioslave/media.orig/mediamanager/integrator.cpp kdebase-3.5.1/kioslave/media/mediamanager/integrator.cpp
--- kdebase-3.5.1/kioslave/media.orig/mediamanager/integrator.cpp 1970-01-01 01:00:00.000000000 +0100
+++ kdebase-3.5.1/kioslave/media/mediamanager/integrator.cpp 2006-01-26 14:54:52.000000000 +0100
@@ -0,0 +1,244 @@
+// -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
+/* integrator.h: integrates D-BUS into Qt event loop
+ *
+ * Copyright (C) 2003 Zack Rusin <zack at kde.org>
+ *
+ * Licensed under the Academic Free License version 2.0
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+#include "integrator.h"
+#include "connection.h"
+
+#include <qtimer.h>
+#include <qsocketnotifier.h>
+#include <qintdict.h>
+#include <qptrlist.h>
+
+namespace DBusQt
+{
+namespace Internal {
+
+struct Watch {
+ Watch(): readSocket( 0 ), writeSocket( 0 ) { }
+
+ DBusWatch *watch;
+ QSocketNotifier *readSocket;
+ QSocketNotifier *writeSocket;
+};
+
+//////////////////////////////////////////////////////////////
+dbus_bool_t dbusAddWatch( DBusWatch *watch, void *data )
+{
+ Integrator *con = static_cast<Integrator*>( data );
+ con->addWatch( watch );
+ return true;
+}
+void dbusRemoveWatch( DBusWatch *watch, void *data )
+{
+ Integrator *con = static_cast<Integrator*>( data );
+ con->removeWatch( watch );
+}
+
+void dbusToggleWatch( DBusWatch *watch, void *data )
+{
+ Integrator *itg = static_cast<Integrator*>( data );
+ if ( dbus_watch_get_enabled( watch ) )
+ itg->addWatch( watch );
+ else
+ itg->removeWatch( watch );
+}
+
+dbus_bool_t dbusAddTimeout( DBusTimeout *timeout, void *data )
+{
+ if ( !dbus_timeout_get_enabled(timeout) )
+ return true;
+
+ Integrator *itg = static_cast<Integrator*>( data );
+ itg->addTimeout( timeout );
+ return true;
+}
+
+void dbusRemoveTimeout( DBusTimeout *timeout, void *data )
+{
+ Integrator *itg = static_cast<Integrator*>( data );
+ itg->removeTimeout( timeout );
+}
+
+void dbusToggleTimeout( DBusTimeout *timeout, void *data )
+{
+ Integrator *itg = static_cast<Integrator*>( data );
+
+ if ( dbus_timeout_get_enabled( timeout ) )
+ itg->addTimeout( timeout );
+ else
+ itg->removeTimeout( timeout );
+}
+
+void dbusWakeupMain( void* )
+{
+}
+
+void dbusNewConnection( DBusServer *server,
+ DBusConnection *new_connection,
+ void *data )
+{
+ Integrator *itg = static_cast<Integrator*>( data );
+ itg->handleConnection( new_connection );
+}
+/////////////////////////////////////////////////////////////
+
+Timeout::Timeout( QObject *parent, DBusTimeout *t )
+ : QObject( parent ), m_timeout( t )
+{
+ m_timer = new QTimer( this );
+ connect( m_timer, SIGNAL(timeout()),
+ SLOT(slotTimeout()) );
+}
+
+void Timeout::slotTimeout()
+{
+ emit timeout( m_timeout );
+}
+
+void Timeout::start()
+{
+ m_timer->start( dbus_timeout_get_interval( m_timeout ) );
+}
+
+Integrator::Integrator( DBusConnection *conn, QObject *parent )
+ : QObject( parent ), m_connection( conn )
+{
+ m_timeouts.setAutoDelete( true );
+
+ dbus_connection_set_watch_functions( m_connection,
+ dbusAddWatch,
+ dbusRemoveWatch,
+ dbusToggleWatch,
+ this, 0 );
+ dbus_connection_set_timeout_functions( m_connection,
+ dbusAddTimeout,
+ dbusRemoveTimeout,
+ dbusToggleTimeout,
+ this, 0 );
+ dbus_connection_set_wakeup_main_function( m_connection,
+ dbusWakeupMain,
+ this, 0 );
+}
+
+Integrator::Integrator( DBusServer *server, QObject *parent )
+ : QObject( parent ), m_server( server )
+{
+ m_connection = reinterpret_cast<DBusConnection*>( m_server );
+ m_timeouts.setAutoDelete( true );
+
+ dbus_server_set_watch_functions( m_server,
+ dbusAddWatch,
+ dbusRemoveWatch,
+ dbusToggleWatch,
+ this, 0 );
+ dbus_server_set_timeout_functions( m_server,
+ dbusAddTimeout,
+ dbusRemoveTimeout,
+ dbusToggleTimeout,
+ this, 0 );
+ dbus_server_set_new_connection_function( m_server,
+ dbusNewConnection,
+ this, 0 );
+}
+
+void Integrator::slotRead( int fd )
+{
+ QIntDictIterator<Watch> it( m_watches );
+ for ( ; it.current(); ++it )
+ dbus_watch_handle ( it.current()->watch, DBUS_WATCH_READABLE );
+
+ emit readReady();
+}
+
+void Integrator::slotWrite( int fd )
+{
+ QIntDictIterator<Watch> it( m_watches );
+ for ( ; it.current(); ++it )
+ dbus_watch_handle ( it.current()->watch, DBUS_WATCH_WRITABLE );
+}
+
+void Integrator::slotTimeout( DBusTimeout *timeout )
+{
+ dbus_timeout_handle( timeout );
+}
+
+void Integrator::addWatch( DBusWatch *watch )
+{
+ if ( !dbus_watch_get_enabled( watch ) )
+ return;
+
+ Watch *qtwatch = new Watch;
+ qtwatch->watch = watch;
+
+ int flags = dbus_watch_get_flags( watch );
+ int fd = dbus_watch_get_fd( watch );
+
+ if ( flags & DBUS_WATCH_READABLE ) {
+ qtwatch->readSocket = new QSocketNotifier( fd, QSocketNotifier::Read, this );
+ QObject::connect( qtwatch->readSocket, SIGNAL(activated(int)), SLOT(slotRead(int)) );
+ }
+
+ if (flags & DBUS_WATCH_WRITABLE) {
+ qtwatch->writeSocket = new QSocketNotifier( fd, QSocketNotifier::Write, this );
+ QObject::connect( qtwatch->writeSocket, SIGNAL(activated(int)), SLOT(slotWrite(int)) );
+ }
+
+ m_watches.insert( fd, qtwatch );
+}
+
+void Integrator::removeWatch( DBusWatch *watch )
+{
+ int key = dbus_watch_get_fd( watch );
+
+ Watch *qtwatch = m_watches.take( key );
+
+ if ( qtwatch ) {
+ delete qtwatch->readSocket; qtwatch->readSocket = 0;
+ delete qtwatch->writeSocket; qtwatch->writeSocket = 0;
+ delete qtwatch;
+ }
+}
+
+void Integrator::addTimeout( DBusTimeout *timeout )
+{
+ Timeout *mt = new Timeout( this, timeout );
+ m_timeouts.insert( timeout, mt );
+ connect( mt, SIGNAL(timeout(DBusTimeout*)),
+ SLOT(slotTimeout(DBusTimeout*)) );
+ mt->start();
+}
+
+void Integrator::removeTimeout( DBusTimeout *timeout )
+{
+ m_timeouts.remove( timeout );
+}
+
+void Integrator::handleConnection( DBusConnection *c )
+{
+ Connection *con = new Connection( c, this );
+ emit newConnection( con );
+}
+
+}//end namespace Internal
+}//end namespace DBusQt
+
+#include "integrator.moc"
diff -Nur kdebase-3.5.1/kioslave/media.orig/mediamanager/integrator.h kdebase-3.5.1/kioslave/media/mediamanager/integrator.h
--- kdebase-3.5.1/kioslave/media.orig/mediamanager/integrator.h 1970-01-01 01:00:00.000000000 +0100
+++ kdebase-3.5.1/kioslave/media/mediamanager/integrator.h 2006-01-26 14:54:50.000000000 +0100
@@ -0,0 +1,95 @@
+// -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
+/* integrator.h: integrates D-BUS into Qt event loop
+ *
+ * Copyright (C) 2003 Zack Rusin <zack at kde.org>
+ *
+ * Licensed under the Academic Free License version 2.1
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+#ifndef DBUS_QT_INTEGRATOR_H
+#define DBUS_QT_INTEGRATOR_H
+
+/* We acknowledge the the dbus API is unstable */
+#define DBUS_API_SUBJECT_TO_CHANGE
+
+#include <qobject.h>
+
+#include <qintdict.h>
+#include <qptrdict.h>
+
+#include "dbus/dbus.h"
+
+class QTimer;
+
+namespace DBusQt
+{
+ class Connection;
+
+ namespace Internal
+ {
+ struct Watch;
+
+ class Timeout : public QObject
+ {
+ Q_OBJECT
+ public:
+ Timeout( QObject *parent, DBusTimeout *t );
+ public:
+ void start();
+ signals:
+ void timeout( DBusTimeout* );
+ protected slots:
+ void slotTimeout();
+ private:
+ QTimer *m_timer;
+ DBusTimeout *m_timeout;
+ };
+
+ class Integrator : public QObject
+ {
+ Q_OBJECT
+ public:
+ Integrator( DBusConnection *connection, QObject *parent );
+ Integrator( DBusServer *server, QObject *parent );
+
+ signals:
+ void readReady();
+ void newConnection( Connection* );
+
+ protected slots:
+ void slotRead( int );
+ void slotWrite( int );
+ void slotTimeout( DBusTimeout *timeout );
+
+ public:
+ void addWatch( DBusWatch* );
+ void removeWatch( DBusWatch* );
+
+ void addTimeout( DBusTimeout* );
+ void removeTimeout( DBusTimeout* );
+
+ void handleConnection( DBusConnection* );
+ private:
+ QIntDict<Watch> m_watches;
+ QPtrDict<Timeout> m_timeouts;
+ DBusConnection *m_connection;
+ DBusServer *m_server;
+ };
+ }
+}
+
+#endif
diff -Nur kdebase-3.5.1/kioslave/media.orig/mediamanager/message.cpp kdebase-3.5.1/kioslave/media/mediamanager/message.cpp
--- kdebase-3.5.1/kioslave/media.orig/mediamanager/message.cpp 1970-01-01 01:00:00.000000000 +0100
+++ kdebase-3.5.1/kioslave/media/mediamanager/message.cpp 2006-01-26 14:54:57.000000000 +0100
@@ -0,0 +1,551 @@
+/* -*- mode: C++; c-file-style: "gnu" -*- */
+/* message.cpp: Qt wrapper for DBusMessage
+ *
+ * Copyright (C) 2003 Zack Rusin <zack at kde.org>
+ *
+ * Licensed under the Academic Free License version 2.0
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+#include "message.h"
+
+#include <qmap.h>
+
+#include <cstdlib>
+
+namespace DBusQt {
+
+struct Message::iterator::IteratorData {
+ DBusMessageIter *iter;
+ QVariant var;
+ bool end;
+ DBusMessage *mesg;
+};
+
+/**
+ * Iterator.
+ */
+Message::iterator::iterator()
+{
+ d = new IteratorData;
+ d->iter = 0; d->end = true;
+}
+
+/**
+ * Constructs iterator for the message.
+ * @param msg message whose fields we want to iterate
+ */
+Message::iterator::iterator( DBusMessage* msg )
+{
+ d = new IteratorData;
+ d->mesg = msg;
+ d->iter = static_cast<DBusMessageIter *>( malloc( sizeof(DBusMessageIter) ) );
+ dbus_message_iter_init( d->mesg, d->iter );
+ if ( !d->iter ) {
+ qDebug("No iterator??");
+ }
+ fillVar();
+ d->end = false;
+}
+
+/**
+ * Copy constructor for the iterator.
+ * @param itr iterator
+ */
+Message::iterator::iterator( const iterator& itr )
+{
+ d = new IteratorData;
+ d->iter = itr.d->iter;
+ d->var = itr.d->var;
+ d->end = itr.d->end;
+}
+
+/**
+ * Destructor.
+ */
+Message::iterator::~iterator()
+{
+ free( d->iter );
+ delete d; d=0;
+}
+
+/**
+ * Creates an iterator equal to the @p itr iterator
+ * @param itr other iterator
+ * @return
+ */
+Message::iterator&
+Message::iterator::operator=( const iterator& itr )
+{
+ IteratorData *tmp = new IteratorData;
+ tmp->iter = itr.d->iter;
+ tmp->var = itr.d->var;
+ tmp->end = itr.d->end;
+ delete d; d=tmp;
+ return *this;
+}
+
+/**
+ * Returns the constant QVariant held by the iterator.
+ * @return the constant reference to QVariant held by this iterator
+ */
+const QVariant&
+Message::iterator::operator*() const
+{
+ return d->var;
+}
+
+/**
+ * Returns the QVariant held by the iterator.
+ * @return reference to QVariant held by this iterator
+ */
+QVariant&
+Message::iterator::operator*()
+{
+ return d->var;
+}
+
+/**
+ * Moves to the next field and return a reference to itself after
+ * incrementing.
+ * @return reference to self after incrementing
+ */
+Message::iterator&
+Message::iterator::operator++()
+{
+ if ( d->end )
+ return *this;
+
+ if ( dbus_message_iter_next( d->iter ) ) {
+ fillVar();
+ } else {
+ d->end = true;
+ d->var = QVariant();
+ }
+ return *this;
+}
+
+/**
+ * Moves to the next field and returns self before incrementing.
+ * @return self before incrementing
+ */
+Message::iterator
+Message::iterator::operator++(int)
+{
+ iterator itr( *this );
+ operator++();
+ return itr;
+}
+
+/**
+ * Compares this iterator to @p it iterator.
+ * @param it the iterator to which we're comparing this one to
+ * @return true if they're equal, false otherwise
+ */
+bool
+Message::iterator::operator==( const iterator& it )
+{
+ if ( d->end == it.d->end ) {
+ if ( d->end == true ) {
+ return true;
+ } else {
+ return d->var == it.d->var;
+ }
+ } else
+ return false;
+}
+
+/**
+ * Compares two iterators.
+ * @param it The other iterator.
+ * @return true if two iterators are not equal, false
+ * otherwise
+ */
+bool
+Message::iterator::operator!=( const iterator& it )
+{
+ return !operator==( it );
+}
+
+QVariant Message::iterator::marshallBaseType( DBusMessageIter* i )
+{
+ QVariant ret;
+ switch (dbus_message_iter_get_arg_type(i)) {
+ case DBUS_TYPE_INT32:
+ {
+ dbus_int32_t v;
+ dbus_message_iter_get_basic (i, &v);
+ ret = QVariant( v );
+ }
+ break;
+ case DBUS_TYPE_UINT32:
+ {
+ dbus_uint32_t v;
+ dbus_message_iter_get_basic (i, &v);
+ ret = QVariant( v );
+ }
+ break;
+ case DBUS_TYPE_DOUBLE:
+ {
+ double v;
+ dbus_message_iter_get_basic (i, &v);
+ ret = QVariant( v );
+ }
+ break;
+ case DBUS_TYPE_STRING:
+ {
+ const char *v;
+ dbus_message_iter_get_basic (i, &v);
+ ret = QVariant( v );
+ }
+ break;
+ default:
+ ret = QVariant();
+ break;
+ }
+ return ret;
+}
+
+/**
+ * Fills QVariant based on what current DBusMessageIter helds.
+ */
+void
+Message::iterator::fillVar()
+{
+ switch ( dbus_message_iter_get_arg_type( d->iter ) ) {
+ case DBUS_TYPE_INT32:
+ case DBUS_TYPE_UINT32:
+ case DBUS_TYPE_DOUBLE:
+ case DBUS_TYPE_STRING:
+ d->var = marshallBaseType( d->iter );
+ break;
+ case DBUS_TYPE_ARRAY: {
+ switch ( dbus_message_iter_get_element_type( d->iter ) ) {
+ case DBUS_TYPE_STRING: {
+ QStringList tempList;
+ DBusMessageIter sub;
+ dbus_message_iter_recurse (d->iter, &sub);
+ while (dbus_message_iter_get_arg_type (&sub) != DBUS_TYPE_INVALID)
+ {
+ const char *v;
+ dbus_message_iter_get_basic (&sub, &v);
+ tempList.append( QString( v ) );
+ dbus_message_iter_next (&sub);
+ }
+ d->var = QVariant( tempList );
+ break;
+ }
+ default:
+ qDebug( "Array of type not implemented" );
+ d->var = QVariant();
+ break;
+ }
+ break;
+ }
+#if 0
+ /* DICT is gone for now, but expected to be reintroduced, or else
+ * reintroduced as a flag on the introspection data that can
+ * apply to array of struct of two fields
+ */
+ case DBUS_TYPE_DICT: {
+ qDebug( "Got a hash!" );
+ QMap<QString, QVariant> tempMap;
+ DBusMessageIter dictIter;
+ dbus_message_iter_init_dict_iterator( d->iter, &dictIter );
+ do {
+ char *key = dbus_message_iter_get_dict_key( &dictIter );
+ tempMap[key] = marshallBaseType( &dictIter );
+ dbus_free( key );
+ dbus_message_iter_next( &dictIter );
+ } while( dbus_message_iter_has_next( &dictIter ) );
+ d->var = QVariant( tempMap );
+ break;
+ qDebug( "Hash/Dict type not implemented" );
+ d->var = QVariant();
+ break;
+ }
+#endif
+ default:
+ qDebug( "not implemented" );
+ d->var = QVariant();
+ break;
+ }
+}
+
+/**
+ * Returns a QVariant help by this iterator.
+ * @return QVariant held by this iterator
+ */
+QVariant
+Message::iterator::var() const
+{
+ return d->var;
+}
+
+struct Message::Private {
+ DBusMessage *msg;
+};
+
+Message::Message( DBusMessage *m )
+{
+ d = new Private;
+ d->msg = m;
+}
+
+/**
+ *
+ */
+Message::Message( int messageType )
+{
+ d = new Private;
+ d->msg = dbus_message_new( messageType );
+}
+
+/**
+ * Constructs a new Message with the given service and name.
+ * @param service service service that the message should be sent to
+ * @param name name of the message
+ */
+Message::Message( const QString& service, const QString& path,
+ const QString& interface, const QString& method )
+{
+ d = new Private;
+ d->msg = dbus_message_new_method_call( service.latin1(), path.latin1(),
+ interface.latin1(), method.latin1() );
+}
+
+/**
+ * Constructs a message that is a reply to some other
+ * message.
+ * @param name the name of the message
+ * @param replayingTo original_message the message which the created
+ * message is a reply to.
+ */
+Message::Message( const Message& replayingTo )
+{
+ d = new Private;
+ d->msg = dbus_message_new_method_return( replayingTo.d->msg );
+}
+
+Message:: Message( const QString& path, const QString& interface,
+ const QString& name )
+{
+ d = new Private;
+ d->msg = dbus_message_new_signal( path.ascii(), interface.ascii(),
+ name.ascii() );
+}
+
+Message::Message( const Message& replayingTo, const QString& errorName,
+ const QString& errorMessage )
+{
+ d = new Private;
+ d->msg = dbus_message_new_error( replayingTo.d->msg, errorName.utf8(),
+ errorMessage.utf8() );
+}
+
+Message Message::operator=( const Message& other )
+{
+ //FIXME: ref the other.d->msg instead of copying it?
+}
+/**
+ * Destructs message.
+ */
+Message::~Message()
+{
+ if ( d->msg ) {
+ dbus_message_unref( d->msg );
+ }
+ delete d; d=0;
+}
+
+int Message::type() const
+{
+ return dbus_message_get_type( d->msg );
+}
+
+void Message::setPath( const QString& path )
+{
+ dbus_message_set_path( d->msg, path.ascii() );
+}
+
+QString Message::path() const
+{
+ return dbus_message_get_path( d->msg );
+}
+
+void Message::setInterface( const QString& iface )
+{
+ dbus_message_set_interface( d->msg, iface.ascii() );
+}
+
+QString Message::interface() const
+{
+ return dbus_message_get_interface( d->msg );
+}
+
+void Message::setMember( const QString& member )
+{
+ dbus_message_set_member( d->msg, member.ascii() );
+}
+
+QString Message::member() const
+{
+ return dbus_message_get_member( d->msg );
+}
+
+QString Message::errorName() const
+{
+ return dbus_message_get_error_name( d->msg );
+}
+
+QString Message::destination() const
+{
+ return dbus_message_get_destination( d->msg );
+}
+
+/**
+ * Sets the message sender.
+ * @param sender the sender
+ * @return false if unsuccessful
+ */
+bool
+Message::setSender( const QString& sender )
+{
+ return dbus_message_set_sender( d->msg, sender.latin1() );
+}
+
+/**
+ * Returns sender of this message.
+ * @return sender
+ */
+QString
+Message::sender() const
+{
+ return dbus_message_get_sender( d->msg );
+}
+
+QString Message::signature() const
+{
+ return dbus_message_get_signature( d->msg );
+}
+
+
+/**
+ * Returns the starting iterator for the fields of this
+ * message.
+ * @return starting iterator
+ */
+Message::iterator
+Message::begin() const
+{
+ return iterator( d->msg );
+}
+
+/**
+ * Returns the ending iterator for the fields of this
+ * message.
+ * @return ending iterator
+ */
+Message::iterator
+Message::end() const
+{
+ return iterator();
+}
+
+/**
+ * Returns the field at position @p i
+ * @param i position of the wanted field
+ * @return QVariant at position @p i or an empty QVariant
+ */
+QVariant
+Message::at( int i )
+{
+ iterator itr( d->msg );
+
+ while ( i-- ) {
+ if ( itr == end() )
+ return QVariant();//nothing there
+ ++itr;
+ }
+ return *itr;
+}
+
+/**
+ * The underlying DBusMessage of this class.
+ * @return DBusMessage pointer.
+ */
+DBusMessage*
+Message::message() const
+{
+ return d->msg;
+}
+
+Message& Message::operator<<( bool b )
+{
+ const dbus_bool_t right_size_bool = b;
+ dbus_message_append_args( d->msg, DBUS_TYPE_BOOLEAN, &right_size_bool,
+ DBUS_TYPE_INVALID );
+}
+
+Message& Message::operator<<( Q_INT8 byte )
+{
+ dbus_message_append_args( d->msg, DBUS_TYPE_BYTE, &byte,
+ DBUS_TYPE_INVALID );
+}
+
+Message& Message::operator<<( Q_INT32 num )
+{
+ dbus_message_append_args( d->msg, DBUS_TYPE_INT32, &num,
+ DBUS_TYPE_INVALID );
+}
+
+Message& Message::operator<<( Q_UINT32 num )
+{
+ dbus_message_append_args( d->msg, DBUS_TYPE_UINT32, &num,
+ DBUS_TYPE_INVALID );
+}
+
+Message& Message::operator<<( Q_INT64 num )
+{
+ dbus_message_append_args( d->msg, DBUS_TYPE_INT64, &num,
+ DBUS_TYPE_INVALID );
+}
+
+Message& Message::operator<<( Q_UINT64 num )
+{
+ dbus_message_append_args( d->msg, DBUS_TYPE_UINT64, &num,
+ DBUS_TYPE_INVALID );
+}
+
+Message& Message::operator<<( double num )
+{
+ dbus_message_append_args( d->msg, DBUS_TYPE_DOUBLE, &num,
+ DBUS_TYPE_INVALID );
+}
+
+Message& Message::operator<<( const QString& str )
+{
+ const char *u = str.utf8();
+ dbus_message_append_args( d->msg, DBUS_TYPE_STRING, &u,
+ DBUS_TYPE_INVALID );
+}
+
+Message& Message::operator<<( const QVariant& custom )
+{
+ //FIXME: imeplement
+}
+
+}
diff -Nur kdebase-3.5.1/kioslave/media.orig/mediamanager/message.h kdebase-3.5.1/kioslave/media/mediamanager/message.h
--- kdebase-3.5.1/kioslave/media.orig/mediamanager/message.h 1970-01-01 01:00:00.000000000 +0100
+++ kdebase-3.5.1/kioslave/media/mediamanager/message.h 2006-01-26 14:55:00.000000000 +0100
@@ -0,0 +1,132 @@
+/* -*- mode: C++; c-file-style: "gnu" -*- */
+/* message.h: Qt wrapper for DBusMessage
+ *
+ * Copyright (C) 2003 Zack Rusin <zack at kde.org>
+ *
+ * Licensed under the Academic Free License version 2.1
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
+#ifndef DBUS_QT_MESSAGE_H
+#define DBUS_QT_MESSAGE_H
+
+/* We acknowledge the the dbus API is unstable */
+#define DBUS_API_SUBJECT_TO_CHANGE
+
+#include <qvariant.h>
+#include <qstring.h>
+#include <qstringlist.h>
+
+#include "dbus/dbus.h"
+
+namespace DBusQt {
+
+ class Message
+ {
+ public:
+ class iterator {
+ public:
+ iterator();
+ iterator( const iterator& );
+ iterator( DBusMessage* msg );
+ ~iterator();
+
+ iterator& operator=( const iterator& );
+ const QVariant& operator*() const;
+ QVariant& operator*();
+ iterator& operator++();
+ iterator operator++(int);
+ bool operator==( const iterator& it );
+ bool operator!=( const iterator& it );
+
+ QVariant var() const;
+ protected:
+ QVariant marshallBaseType( DBusMessageIter* i );
+ void fillVar();
+ struct IteratorData;
+ IteratorData *d;
+ };
+
+ Message( int messageType );
+ Message( DBusMessage * );//hide this one from the public implementation
+ Message( const QString& service, const QString& path,
+ const QString& interface, const QString& method );
+ Message( const Message& replayingTo );
+ Message( const QString& path, const QString& interface,
+ const QString& name );
+ Message( const Message& replayingTo, const QString& errorName,
+ const QString& errorMessage );
+
+ Message operator=( const Message& other );
+
+ virtual ~Message();
+
+ int type() const;
+
+ void setPath( const QString& );
+ QString path() const;
+
+ void setInterface( const QString& );
+ QString interface() const;
+
+ void setMember( const QString& );
+ QString member() const;
+
+ QString errorName() const;
+
+ QString destination() const;
+
+ bool setSender( const QString& sender );
+ QString sender() const;
+
+ QString signature() const;
+
+ iterator begin() const;
+ iterator end() const;
+
+ QVariant at( int i );
+
+
+ public:
+ Message& operator<<( bool );
+ Message& operator<<( Q_INT8 );
+ Message& operator<<( Q_INT32 );
+ Message& operator<<( Q_UINT32 );
+ Message& operator<<( Q_INT64 );
+ Message& operator<<( Q_UINT64 );
+ Message& operator<<( double );
+ Message& operator<<( const QString& );
+ Message& operator<<( const QVariant& );
+ //Message& operator<<();
+ //Message& operator<<();
+ //Message& operator<<();
+ //Message& operator<<();
+ //Message& operator<<();
+ //Message& operator<<();
+ //Message& operator<<();
+
+ protected:
+ friend class Connection;
+ DBusMessage* message() const;
+
+ private:
+ struct Private;
+ Private *d;
+ };
+
+}
+
+#endif
--- kdebase-3.5.1/kioslave/media/configure.in.in.dbus 2006-01-26 15:45:06.000000000 +0100
+++ kdebase-3.5.1/kioslave/media/configure.in.in 2006-01-26 15:53:54.000000000 +0100
@@ -106,70 +106,6 @@
AC_SUBST(DBUS_INCS)
AC_SUBST(DBUS_LIBS)
-
-########### Check for DBus-Qt bindings
-
- AC_MSG_CHECKING(for DBus-Qt bindings)
-
- dbusqt_inc=NOTFOUND
- dbusqt_lib=NOTFOUND
- dbusqt=NOTFOUND
-
- search_incs="$kde_includes $kde_extra_includes /usr/include /usr/include/dbus-1.0 /usr/local/include /usr/local/include/dbus-1.0"
- AC_FIND_FILE(dbus/connection.h, $search_incs, dbusqt_incdir)
-
- if test -r $dbusqt_incdir/dbus/connection.h ; then
- have_qt_patch=0
- grep dbus_connection_setup_with_qt_main $dbusqt_incdir/dbus/connection.h \
- > /dev/null 2>&1 && have_qt_patch=1
- if test $have_qt_patch = 1 ; then
- DBUSQT_INCS="-I$dbusqt_incdir"
- dbusqt_inc=FOUND
- fi
- fi
-
- search_libs="$kde_libraries $kde_extra_libs /usr/lib$kdelibsuff /usr/local/lib$kdelibsuff"
- AC_FIND_FILE(libdbus-qt-1.so, $search_libs, dbusqt_libdir)
-
- if test -r $dbusqt_libdir/libdbus-qt-1.so ; then
- DBUSQT_LIBS="-L$dbusqt_libdir -ldbus-qt-1"
- dbusqt_lib=FOUND
- fi
-
- if test $dbusqt_inc != FOUND || test $dbusqt_lib != FOUND ; then
-
- search_incs="`pkg-config --cflags dbus-1 |sed 's/-I//g'`"
- AC_FIND_FILE(dbus/connection.h, $search_incs, dbusqt_incdir)
- if test -r $dbusqt_incdir/dbus/connection.h ; then
- have_qt_patch=0
- grep dbus_connection_setup_with_qt_main $dbusqt_incdir/dbus/connection.h \
- > /dev/null 2>&1 && have_qt_patch=1
- if test $have_qt_patch = 1 ; then
- DBUSQT_INCS="-I$dbusqt_incdir"
- dbusqt_inc=FOUND
- fi
- fi
-
- search_libs="`pkg-config --libs dbus-1 --libs-only-L | sed 's/-L//g'`"
- AC_FIND_FILE(libdbus-qt-1.so, $search_libs, dbusqt_libdir)
-
- if test -r $dbusqt_libdir/libdbus-qt-1.so ; then
- DBUSQT_LIBS="-L$dbusqt_libdir -ldbus-qt-1"
- dbusqt_lib=FOUND
- fi
-
- fi
-
-
- if test $dbusqt_inc = FOUND && test $dbusqt_lib = FOUND ; then
- AC_MSG_RESULT(headers $dbusqt_incdir libraries $dbusqt_libdir)
- dbusqt=FOUND
- else
- AC_MSG_RESULT(searched but not found)
- fi
-
- AC_SUBST(DBUSQT_INCS)
- AC_SUBST(DBUSQT_LIBS)
fi
########### Check if media HAL backend sould be compiled
@@ -177,7 +113,7 @@
AC_MSG_CHECKING(if the HAL backend for media:/ should be compiled)
HALBACKEND=no
-if test "x$hal" = "xFOUND" && test "x$dbus" = "xFOUND" && test "x$dbusqt" = "xFOUND" ; then
+if test "x$hal" = "xFOUND" && test "x$dbus" = "xFOUND" ; then
AC_DEFINE_UNQUOTED([COMPILE_HALBACKEND],1, [media HAL backend compilation])
HALBACKEND=yes
AC_SUBST(HALBACKEND)
kdebase-3.5.2-kioslave_media_dbus.patch:
Makefile.am | 5
configure.in.in | 7
kcmodule/managermodule.cpp | 4
kcmodule/media.desktop | 2
kfile-plugin/kfile_media.desktop | 5
kfile-plugin/kfilemediaplugin.cpp | 9
libmediacommon/medium.cpp | 4
libmediacommon/medium.h | 21 +
mediaimpl.cpp | 15
mediamanager/halbackend.cpp | 553 +++++++++++++++++++++++++++-
mediamanager/halbackend.h | 19
mediamanager/mediamanager.cpp | 81 +++-
mediamanager/mediamanager.desktop | 1
mediamanager/mediamanager.h | 8
medianotifier/medianotifier.cpp | 9
medianotifier/medianotifier.desktop | 8
mimetypes/audiocd.desktop | 4
mimetypes/blankcd.desktop | 2
mimetypes/blankdvd.desktop | 2
mimetypes/cdrom_mounted.desktop | 4
mimetypes/cdrom_unmounted.desktop | 2
mimetypes/cdwriter_mounted.desktop | 2
mimetypes/cdwriter_unmounted.desktop | 2
mimetypes/dvdvideo.desktop | 4
mimetypes/floppy5_mounted.desktop | 2
mimetypes/floppy5_unmounted.desktop | 2
mimetypes/floppy_mounted.desktop | 2
mimetypes/floppy_unmounted.desktop | 2
mimetypes/hdd_mounted.desktop | 1
mimetypes/hdd_unmounted.desktop | 1
mimetypes/nfs_mounted.desktop | 1
mimetypes/nfs_unmounted.desktop | 1
mimetypes/removable_mounted.desktop | 5
mimetypes/removable_unmounted.desktop | 5
mimetypes/smb_mounted.desktop | 3
mimetypes/smb_unmounted.desktop | 3
mimetypes/vcd.desktop | 1
mounthelper/Makefile.am | 2
mounthelper/kio_media_mounthelper.cpp | 51 +-
propsdlgplugin/Makefile.am | 12
propsdlgplugin/media_propsdlgplugin.desktop | 7
propsdlgplugin/propertiespage.cpp | 217 ++++++++++
propsdlgplugin/propertiespage.h | 46 ++
propsdlgplugin/propertiespagegui.ui | 390 +++++++++++++++++++
propsdlgplugin/propertiespagegui.ui.h | 22 +
propsdlgplugin/propsdlgshareplugin.cpp | 100 +++++
propsdlgplugin/propsdlgshareplugin.h | 44 ++
services/media_eject.desktop | 2
services/media_safelyremove.desktop | 1
49 files changed, 1595 insertions(+), 101 deletions(-)
--- NEW FILE kdebase-3.5.2-kioslave_media_dbus.patch ---
diff -Nur kdebase-3.5.2/kioslave/media.orig/configure.in.in kdebase-3.5.2/kioslave/media/configure.in.in
--- kdebase-3.5.2/kioslave/media.orig/configure.in.in 2005-10-10 17:04:01.000000000 +0200
+++ kdebase-3.5.2/kioslave/media/configure.in.in 2006-01-25 23:50:00.000000000 +0100
@@ -90,6 +90,13 @@
if test $dbus_inc != FOUND || test $dbus_lib != FOUND ; then
KDE_PKG_CHECK_MODULES( DBUS, "dbus-1", [ DBUS_INCS=$DBUS_CFLAGS; dbus_inc=FOUND; dbus_lib=FOUND; ] , AC_MSG_RESULT( Nothing found on PKG_CONFIG_PATH ) )
fi
+
+ dbus_bus_var=`pkg-config --variable=system_bus_default_address dbus-1 2>/dev/null`
+ if test -z "$dbus_bus_var"; then
+ dbus_bus_var="unix:path=/var/run/dbus/system_bus_socket"
+ fi
+ AC_DEFINE_UNQUOTED(DBUS_SYSTEM_BUS, "$dbus_bus_var", [Define the unix domain path for dbus system bus])
+
if test $dbus_inc = FOUND && test $dbus_lib = FOUND ; then
AC_MSG_RESULT(headers $DBUS_INCS libraries $DBUS_LIBS)
dbus=FOUND
diff -Nur kdebase-3.5.2/kioslave/media.orig/kcmodule/managermodule.cpp kdebase-3.5.2/kioslave/media/kcmodule/managermodule.cpp
--- kdebase-3.5.2/kioslave/media.orig/kcmodule/managermodule.cpp 2005-11-20 20:14:21.000000000 +0100
+++ kdebase-3.5.2/kioslave/media/kcmodule/managermodule.cpp 2006-01-25 23:49:54.000000000 +0100
@@ -39,15 +39,15 @@
QString hal_text = view->kcfg_HalBackendEnabled->text();
hal_text += " ("+i18n("No support for HAL on this system")+")";
view->kcfg_HalBackendEnabled->setText( hal_text );
- view->kcfg_HalBackendEnabled->setEnabled( false );
#endif
+ view->kcfg_HalBackendEnabled->setEnabled( false );
#ifndef COMPILE_LINUXCDPOLLING
QString poll_text = view->kcfg_CdPollingEnabled->text();
poll_text += " ("+i18n("No support for CD polling on this system")+")";
view->kcfg_CdPollingEnabled->setText( poll_text );
- view->kcfg_CdPollingEnabled->setEnabled( false );
#endif
+ view->kcfg_CdPollingEnabled->setEnabled( false );
load();
}
diff -Nur kdebase-3.5.2/kioslave/media.orig/kcmodule/media.desktop kdebase-3.5.2/kioslave/media/kcmodule/media.desktop
--- kdebase-3.5.2/kioslave/media.orig/kcmodule/media.desktop 2006-03-17 11:17:33.000000000 +0100
+++ kdebase-3.5.2/kioslave/media/kcmodule/media.desktop 2006-01-25 23:49:54.000000000 +0100
@@ -79,7 +79,6 @@
Comment[fi]=Aseta tallennusmedia
Comment[fr]=Configurer le média de stockage
Comment[fy]=Opslachmedia ynstelle
-Comment[ga]=Cumraigh Meáin Stórála
Comment[gl]=Configurar Medios de Armacenaxe
Comment[hu]=A tárolóeszközök beállÃtása
Comment[is]=Stillingar geymslumiðla
@@ -123,7 +122,6 @@
Keywords[fi]=varasto,media,usb,cdrom,laite
Keywords[fr]=stockage,media,medium,usb,cdrom,périphérique
Keywords[fy]=storage,opslach,media,usb,cd-rom,kompakt-skiif,device,apparaat,mp3-speler,usb-stick,geheugenkaart
-Keywords[ga]=stóráil,stóras,meáin,meán,usb,cdrom,dlúthdhiosca,gléas
Keywords[gl]=armacenaxe,medios,usb,cdrom,dispositivo
Keywords[hu]=tároló,adathordozó,USB,CD-ROM,eszköz
Keywords[is]=geymsla,miðill,usb,cdrom,tæki
diff -Nur kdebase-3.5.2/kioslave/media.orig/kfile-plugin/kfile_media.desktop kdebase-3.5.2/kioslave/media/kfile-plugin/kfile_media.desktop
--- kdebase-3.5.2/kioslave/media.orig/kfile-plugin/kfile_media.desktop 2006-03-17 11:17:33.000000000 +0100
+++ kdebase-3.5.2/kioslave/media/kfile-plugin/kfile_media.desktop 2006-01-25 23:49:52.000000000 +0100
@@ -18,12 +18,11 @@
Name[fi]=Tallenteiden tiedot
Name[fr]=Informations sur le média
Name[fy]=Mediumynformaasje
-Name[ga]=Eolas faoin Mheán
Name[gl]=Informazón do Meio
Name[he]=××××¢ ××××ת ×××××
Name[hi]=माधà¥à¤¯à¤® à¤à¤¾à¤¨à¤à¤¾à¤°à¥
Name[hu]=Adathordozó-jellemzÅk
-Name[is]=Upplýsingar um miðil
+Name[is]=Upplýsingar um miðill
Name[it]=Informazioni supporto
Name[ja]=ã¡ãã£ã¢æ
å ±
Name[km]=áááááá¶áâá§ááááá
@@ -58,4 +57,4 @@
Name[zh_TW]=åªé«è³è¨
ServiceTypes=KFilePlugin
X-KDE-Library=kfile_media
-MimeType=media/audiocd;media/hdd_mounted;media/blankcd;media/hdd_unmounted;media/blankdvd;media/cdrom_mounted;media/cdrom_unmounted;media/cdwriter_mounted;media/nfs_mounted;media/cdwriter_unmounted;media/nfs_unmounted;media/removable_mounted;media/dvd_mounted;media/removable_unmounted;media/dvd_unmounted;media/smb_mounted;media/dvdvideo;media/smb_unmounted;media/floppy5_mounted;media/svcd;media/floppy5_unmounted;media/vcd;media/floppy_mounted;media/zip_mounted;media/floppy_unmounted;media/zip_unmounted;media/gphoto2camera
+MimeType=media/audiocd;media/hdd_mounted;media/blankcd;media/hdd_unmounted;media/blankdvd;media/cdrom_mounted;media/cdrom_unmounted;media/cdwriter_mounted;media/nfs_mounted;media/cdwriter_unmounted;media/nfs_unmounted;media/removable_mounted;media/dvd_mounted;media/removable_unmounted;media/dvd_unmounted;media/smb_mounted;media/dvdvideo;media/smb_unmounted;media/floppy5_mounted;media/svcd;media/floppy5_unmounted;media/vcd;media/floppy_mounted;media/zip_mounted;media/floppy_unmounted;media/zip_unmounted;media/gphoto2camera,media/camera_mounted,media/camera_unmounted
diff -Nur kdebase-3.5.2/kioslave/media.orig/kfile-plugin/kfilemediaplugin.cpp kdebase-3.5.2/kioslave/media/kfile-plugin/kfilemediaplugin.cpp
--- kdebase-3.5.2/kioslave/media.orig/kfile-plugin/kfilemediaplugin.cpp 2005-11-08 23:36:07.000000000 +0100
+++ kdebase-3.5.2/kioslave/media/kfile-plugin/kfilemediaplugin.cpp 2006-01-25 23:49:52.000000000 +0100
@@ -64,12 +64,16 @@
addMimeType( "media/floppy_unmounted" );
addMimeType( "media/zip_unmounted" );
addMimeType( "media/gphoto2camera" );
+ addMimeType( "media/camera_mounted" );
+ addMimeType( "media/camera_unmounted" );
}
bool KFileMediaPlugin::readInfo(KFileMetaInfo &info, uint /*what*/)
{
- const Medium medium = askMedium(info);
+ const Medium medium = askMedium(info);
+ kdDebug() << "KFileMediaPlugin::readInfo " << medium.id() << endl;
+
if (medium.id().isNull()) return false;
QString mount_point = medium.mountPoint();
@@ -161,7 +165,8 @@
const Medium KFileMediaPlugin::askMedium(KFileMetaInfo &info)
{
DCOPRef mediamanager("kded", "mediamanager");
- DCOPReply reply = mediamanager.call( "properties", info.url().fileName() );
+ kdDebug() << "properties " << info.url() << endl;
+ DCOPReply reply = mediamanager.call( "properties", info.url().url() );
if ( !reply.isValid() )
{
diff -Nur kdebase-3.5.2/kioslave/media.orig/libmediacommon/medium.cpp kdebase-3.5.2/kioslave/media/libmediacommon/medium.cpp
--- kdebase-3.5.2/kioslave/media.orig/libmediacommon/medium.cpp 2005-10-10 17:04:00.000000000 +0200
+++ kdebase-3.5.2/kioslave/media/libmediacommon/medium.cpp 2006-02-15 23:51:31.000000000 +0100
@@ -40,6 +40,8 @@
m_properties+= QString::null; /* ICON_NAME */
loadUserLabel();
+
+ m_halmounted = false;
}
Medium::Medium()
@@ -57,6 +59,8 @@
m_properties+= QString::null; /* BASE_URL */
m_properties+= QString::null; /* MIME_TYPE */
m_properties+= QString::null; /* ICON_NAME */
+
+ m_halmounted = false;
}
const Medium Medium::create(const QStringList &properties)
diff -Nur kdebase-3.5.2/kioslave/media.orig/libmediacommon/medium.h kdebase-3.5.2/kioslave/media/libmediacommon/medium.h
--- kdebase-3.5.2/kioslave/media.orig/libmediacommon/medium.h 2005-10-10 17:04:00.000000000 +0200
+++ kdebase-3.5.2/kioslave/media/libmediacommon/medium.h 2006-02-15 23:51:31.000000000 +0100
@@ -22,6 +22,7 @@
#include <qstring.h>
#include <qstringlist.h>
#include <kurl.h>
+#include <qmap.h>
class Medium
{
@@ -78,14 +79,32 @@
void setMimeType(const QString &mimeType);
void setIconName(const QString &iconName);
+ void setHalMounted(bool flag) const { m_halmounted = flag; }
+ bool halMounted() const { return m_halmounted; }
private:
Medium();
void loadUserLabel();
QStringList m_properties;
-
+ mutable bool m_halmounted;
+
friend class QValueListNode<const Medium>;
};
+namespace MediaManagerUtils {
+ static inline QMap<QString,QString> splitOptions(const QStringList & options)
+ {
+ QMap<QString,QString> valids;
+
+ for (QStringList::ConstIterator it = options.begin(); it != options.end(); ++it)
+ {
+ QString key = (*it).left((*it).find('='));
+ QString value = (*it).mid((*it).find('=') + 1);
+ valids[key] = value;
+ }
+ return valids;
+ }
+}
+
#endif
diff -Nur kdebase-3.5.2/kioslave/media.orig/Makefile.am kdebase-3.5.2/kioslave/media/Makefile.am
--- kdebase-3.5.2/kioslave/media.orig/Makefile.am 2005-09-10 10:25:36.000000000 +0200
+++ kdebase-3.5.2/kioslave/media/Makefile.am 2006-01-25 23:50:00.000000000 +0100
@@ -1,5 +1,5 @@
SUBDIRS = libmediacommon . mediamanager medianotifier mounthelper \
- kfile-plugin kcmodule mimetypes services
+ kfile-plugin kcmodule mimetypes services propsdlgplugin
INCLUDES = -I$(srcdir)/libmediacommon $(all_includes)
METASOURCES = AUTO
@@ -28,4 +28,5 @@
./testmedia
messages: rc.cpp
- $(XGETTEXT) *.cpp *.h kfile-plugin/*.cpp libmediacommon/*.cpp mediamanager/*.cpp mounthelper/*.cpp -o $(podir)/kio_media.pot
+ $(EXTRACTRC) propsdlgplugin/propertiespagegui.ui >> rc.cpp
+ $(XGETTEXT) *.cpp *.h kfile-plugin/*.cpp libmediacommon/*.cpp mediamanager/*.cpp mounthelper/*.cpp propsdlgplugin/*.cpp -o $(podir)/kio_media.pot
diff -Nur kdebase-3.5.2/kioslave/media.orig/mediaimpl.cpp kdebase-3.5.2/kioslave/media/mediaimpl.cpp
--- kdebase-3.5.2/kioslave/media.orig/mediaimpl.cpp 2005-10-10 17:04:01.000000000 +0200
+++ kdebase-3.5.2/kioslave/media/mediaimpl.cpp 2006-02-01 12:26:30.000000000 +0100
@@ -226,6 +226,8 @@
[...2128 lines suppressed...]
+public:
+ PropertiesPage(QWidget* parent, const QString &_id);
+ virtual ~PropertiesPage();
+
+ bool save();
+
+protected:
+
+ QMap<QString,QString> options;
+ QString id;
+
+};
+
+#endif
diff -Nur kdebase-3.5.2/kioslave/media.orig/propsdlgplugin/propsdlgshareplugin.cpp kdebase-3.5.2/kioslave/media/propsdlgplugin/propsdlgshareplugin.cpp
--- kdebase-3.5.2/kioslave/media.orig/propsdlgplugin/propsdlgshareplugin.cpp 1970-01-01 01:00:00.000000000 +0100
+++ kdebase-3.5.2/kioslave/media/propsdlgplugin/propsdlgshareplugin.cpp 2006-01-25 23:49:55.000000000 +0100
@@ -0,0 +1,100 @@
+/*
+ Copyright (c) 2004 Jan Schaefer <j_schaef at informatik.uni-kl.de>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+*/
+#include <qstring.h>
+#include <qvbox.h>
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qtimer.h>
+
+#include <kgenericfactory.h>
+#include <kdebug.h>
+#include <kpushbutton.h>
+#include <kfileshare.h>
+#include <kmessagebox.h>
+#include <kprocess.h>
+#include <kstandarddirs.h>
+#include <kdialog.h>
+#include <kglobal.h>
+#include <dcopref.h>
+
+#include "propertiespage.h"
+#include "propsdlgshareplugin.h"
+#include "../libmediacommon/medium.h"
+
+typedef KGenericFactory<PropsDlgSharePlugin, KPropertiesDialog> PropsDlgSharePluginFactory;
+
+K_EXPORT_COMPONENT_FACTORY( media_propsdlgplugin,
+ PropsDlgSharePluginFactory("media_propsdlgplugin") )
+
+class PropsDlgSharePlugin::Private
+{
+ public:
+ PropertiesPage* page;
+};
+
+PropsDlgSharePlugin::PropsDlgSharePlugin( KPropertiesDialog *dlg,
+ const char *, const QStringList & )
+ : KPropsDlgPlugin(dlg), d(0)
+{
+ if (properties->items().count() != 1)
+ return;
+
+ KFileItem *item = properties->items().first();
+
+ DCOPRef mediamanager("kded", "mediamanager");
+ kdDebug() << "properties " << item->url() << endl;
+ DCOPReply reply = mediamanager.call( "properties", item->url().url() );
+
+ if ( !reply.isValid() )
+ return;
+
+ QVBox* vbox = properties->addVBoxPage(i18n("&Mounting"));
+
+ d = new Private();
+
+ d->page = new PropertiesPage(vbox, Medium::create(reply).id());
+ connect(d->page, SIGNAL(changed()),
+ SLOT(slotChanged()));
+
+ // QTimer::singleShot(100, this, SLOT(slotChanged()));
+
+}
+
+void PropsDlgSharePlugin::slotChanged()
+{
+ kdDebug() << "slotChanged()\n";
+ setDirty(true);
+}
+
+PropsDlgSharePlugin::~PropsDlgSharePlugin()
+{
+ delete d;
+}
+
+void PropsDlgSharePlugin::applyChanges()
+{
+ kdDebug() << "applychanges\n";
+ if (!d->page->save()) {
+ properties->abortApplying();
+ }
+}
+
+
+#include "propsdlgshareplugin.moc"
+
diff -Nur kdebase-3.5.2/kioslave/media.orig/propsdlgplugin/propsdlgshareplugin.h kdebase-3.5.2/kioslave/media/propsdlgplugin/propsdlgshareplugin.h
--- kdebase-3.5.2/kioslave/media.orig/propsdlgplugin/propsdlgshareplugin.h 1970-01-01 01:00:00.000000000 +0100
+++ kdebase-3.5.2/kioslave/media/propsdlgplugin/propsdlgshareplugin.h 2006-01-25 23:49:55.000000000 +0100
@@ -0,0 +1,44 @@
+/*
+ Copyright (c) 2004 Jan Schaefer <j_schaef at informatik.uni-kl.de>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+*/
+
+#ifndef KONQFILESHAREPLUGIN_H
+#define KONQFILESHAREPLUGIN_H
+
+#include <kpropertiesdialog.h>
+
+class PropsDlgSharePlugin : public KPropsDlgPlugin
+{
+Q_OBJECT
+public:
+ PropsDlgSharePlugin( KPropertiesDialog *dlg, const char *, const QStringList & );
+ virtual ~PropsDlgSharePlugin();
+ virtual void applyChanges();
+
+public slots:
+ void slotChanged();
+
+private:
+ class Private;
+ Private *d;
+
+};
+
+#endif
+
+
diff -Nur kdebase-3.5.2/kioslave/media.orig/services/media_eject.desktop kdebase-3.5.2/kioslave/media/services/media_eject.desktop
--- kdebase-3.5.2/kioslave/media.orig/services/media_eject.desktop 2006-03-17 11:17:33.000000000 +0100
+++ kdebase-3.5.2/kioslave/media/services/media_eject.desktop 2006-01-25 23:49:51.000000000 +0100
@@ -23,7 +23,7 @@
Name[eo]=Eligo
Name[es]=Expulsar
Name[et]=Väljastamine
-Name[eu]=Egotzi
+Name[eu]=Kanporatu
Name[fa]=اخراج
Name[fi]=Poista
Name[fr]=Ãjecter
diff -Nur kdebase-3.5.2/kioslave/media.orig/services/media_safelyremove.desktop kdebase-3.5.2/kioslave/media/services/media_safelyremove.desktop
--- kdebase-3.5.2/kioslave/media.orig/services/media_safelyremove.desktop 2006-03-17 11:17:33.000000000 +0100
+++ kdebase-3.5.2/kioslave/media/services/media_safelyremove.desktop 2006-01-25 23:49:51.000000000 +0100
@@ -20,7 +20,6 @@
Name[fi]=Poista turvallisesti
Name[fr]=Enlever en toute sécurité
Name[fy]=Feilich ferwiderje
-Name[ga]=Bain Amach go Sábháilte
Name[gl]=Eliminar de Maneira Segura
Name[he]=ש×××¤× ×××××
Name[hu]=Biztonságos leválasztás
--- kdebase-3.5.2/kioslave/media/mediamanager/halbackend.h.kioslave_media_dbus 2005-10-10 17:04:01.000000000 +0200
+++ kdebase-3.5.2/kioslave/media/mediamanager/halbackend.h 2006-03-26 13:14:00.000000000 +0200
@@ -40,7 +40,7 @@
/* We acknowledge the the dbus API is unstable */
#define DBUS_API_SUBJECT_TO_CHANGE
/* DBus-Qt bindings */
-#include <dbus/connection.h>
+#include <connection.h>
/* HAL libraries */
#include <libhal.h>
#include <libhal-storage.h>
kdebase-3.5.2-redhat.patch:
kdebase-3.4.91/kde.pamd | 16 +++++++----
kdebase-3.5.1/startkde | 68 +++++++++++++++++++++++++++++++++++++++++-------
2 files changed, 69 insertions(+), 15 deletions(-)
--- NEW FILE kdebase-3.5.2-redhat.patch ---
--- kdebase-3.4.91/kde.pamd.redhat 2005-09-10 10:26:16.000000000 +0200
+++ kdebase-3.4.91/kde.pamd 2005-09-27 18:16:15.000000000 +0200
@@ -1,7 +1,11 @@
#%PAM-1.0
-auth required /lib/security/pam_pwdb.so shadow nullok
-auth required /lib/security/pam_nologin.so
-account required /lib/security/pam_pwdb.so
-password required /lib/security/pam_cracklib.so
-password required /lib/security/pam_pwdb.so shadow nullok use_authtok
-session required /lib/security/pam_pwdb.so
+auth sufficient pam_timestamp.so
+auth include system-auth
+account required pam_nologin.so
+account include system-auth
+password include system-auth
+session include system-auth
+session required pam_loginuid.so
+session optional pam_timestamp.so
+session optional pam_selinux.so
+session optional pam_console.so
--- kdebase-3.5.1/startkde.redhat 2006-01-19 18:03:19.000000000 +0100
+++ kdebase-3.5.1/startkde 2006-02-15 18:58:10.000000000 +0100
@@ -1,8 +1,56 @@
#!/bin/sh
#
# DEFAULT KDE STARTUP SCRIPT ( KDE-3.5.2 )
+# Modified for Red Hat Linux
#
+unset BLOCK_SIZE # breaks parsing of df output
+shopt -u -o noclobber # allow overwriting of files with '>'
+
+# set up user environment if not present
+# check for space on /tmp and "$HOME" and for write access
+# error exit, if not
+space_tmp=`df /tmp | xargs | cut -d" " -f11`
+homedir_mount=`df "$HOME" | xargs | cut -d" " -f8`
+
+if [ "$homedir_mount" = "AFS" -a -x "`which fs 2>/dev/null`" ] ; then
+ # check for AFS
+ space_home=`fs df "$HOME" | xargs | cut -d" " -f10`
+else
+ # check regular mounts
+ space_home=`df "$HOME" | xargs | cut -d" " -f11`
+fi
+
+if [ $space_tmp -lt 50 ]; then
+ echo $"Not enough free disk space on /tmp"
+ exit 1
+fi
+
+if [ $space_home -lt 25 ]; then
+ echo $"Not enough free disk space on "$HOME""
+ exit 1
+fi
+testfile_tmp=`mktemp /tmp/KDE.startkde.XXXXXX`
+testfile_home=`mktemp "$HOME"/KDE.startkde.XXXXXX`
+
+if ! echo TEST_TEXT >$testfile_tmp 2>/dev/null ; then
+ echo $"You don't have write permissions for /tmp"
+ exit 1
+fi
+rm -f $testfile_tmp
+
+if ! echo TEST_TEXT >$testfile_home 2>/dev/null ; then
+ echo $"You don't have write permissions for "$HOME""
+ exit 1
+fi
+rm -f $testfile_home
+
+[ -d "$HOME"/.kde/share/config ] || mkdir -p "$HOME"/.kde/share/config
+
+if [ ! -e "$HOME"/.kde/share/config/emaildefaults ]; then
+ /usr/bin/mailsettings >"$HOME"/.kde/share/config/emaildefaults
+fi
+
# When the X server dies we get a HUP signal from xinit. We must ignore it
# because we still need to do some cleanup.
trap 'echo GOT SIGHUP' HUP
@@ -14,12 +62,12 @@
exit 1
fi
-# Set the background to plain grey.
+# Set the background to the Red Hat default blue
# The standard X background is nasty, causing moire effects and exploding
# people's heads. We use colours from the standard KDE palette for those with
# palettised displays.
if test -z "$XDM_MANAGED" || echo "$XDM_MANAGED" | grep ",auto" > /dev/null; then
- xsetroot -solid "#000000"
+ xsetroot -solid "#5477A0"
fi
# we have to unset this for Darwin since it will screw up KDE's dynamic-loading
@@ -64,7 +112,7 @@
cat >$kdehome/share/config/startupconfigkeys <<EOF
kcminputrc Mouse cursorTheme ''
kcminputrc Mouse cursorSize ''
-kpersonalizerrc General FirstLogin true
+kpersonalizerrc General FirstLogin false
ksplashrc KSplash Theme Default
kcmrandrrc Display ApplyOnStartup false
kcmrandrrc [Screen0]
@@ -135,8 +183,8 @@
done
fi
-# Source scripts found in <localprefix>/env/*.sh and <prefixes>/env/*.sh
-# (where <localprefix> is $KDEHOME or ~/.kde, and <prefixes> is where KDE is installed)
+# Source scripts found in <localprefix>/env/*.sh and /etc/kde/env/*.sh
+# (where <localprefix> is $KDEHOME or ~/.kde)
#
# This is where you can define environment variables that will be available to
# all KDE programs, so this is where you can run agents using e.g. eval `ssh-agent`
@@ -147,10 +195,11 @@
# For anything else (that doesn't set env vars, or that needs a window manager),
# better use the Autostart folder.
-exepath=`kde-config --path exe | tr : '\n'`
+exepath=`kde-config --path exe | tr : '\n' | grep -v "^$(kde-config --prefix)"`
+envpath=/etc/kde/env/
-for prefix in `echo "$exepath" | sed -n -e 's,/bin[^/]*/,/env/,p'`; do
- for file in "$prefix"*.sh; do
+for prefix in `echo "$exepath" | sed -n -e 's,/bin[^/]*/,/env/,p'` $envpath ; do
+ for file in "$prefix"*.sh ; do
test -r "$file" && . "$file"
done
done
@@ -339,7 +388,8 @@
echo 'startkde: Running shutdown scripts...' 1>&2
# Run scripts found in $KDEDIRS/shutdown
-for prefix in `echo "$exepath" | sed -n -e 's,/bin[^/]*/,/shutdown/,p'`; do
+shutdownpath=/etc/kde/shutdown/
+for prefix in `echo "$exepath" | sed -n -e 's,/bin[^/]*/,/shutdown/,p'` $shutdownpath; do
for file in `ls "$prefix" 2> /dev/null | egrep -v '(~|\.bak)$'`; do
test -x "$prefix$file" && "$prefix$file"
done
Index: kdebase.spec
===================================================================
RCS file: /cvs/dist/rpms/kdebase/FC-5/kdebase.spec,v
retrieving revision 1.159
retrieving revision 1.160
diff -u -r1.159 -r1.160
--- kdebase.spec 21 Feb 2006 19:09:39 -0000 1.159
+++ kdebase.spec 30 Mar 2006 13:46:23 -0000 1.160
@@ -7,8 +7,8 @@
%define include_kappfinder 0
%define qt_version 3.3.5
-%define arts_version 1.5.1
-%define kde_version 3.5.1
+%define arts_version 1.5.2
+%define kde_version 3.5.2
%define kdelibs_epoch 6
%define arts_epoch 8
%define make_cvs 1
@@ -19,8 +19,8 @@
Summary: K Desktop Environment - core files
Name: kdebase
-Version: 3.5.1
-Release: 5
+Version: 3.5.2
+Release: 0.1.fc5
Epoch: 6
Url: http://www.kde.org
Group: User Interface/Desktops
@@ -37,7 +37,7 @@
Source7: mailsettings.cc
Patch0: kde-libtool.patch
-Patch1: kdebase-3.5.1-redhat.patch
+Patch1: kdebase-3.5.2-redhat.patch
Patch2: kdebase-3.3.92-vroot.patch
Patch3: kdebase-3.x-shortcuts.patch
Patch4: kdebase-3.2.0-keymap.patch
@@ -48,14 +48,11 @@
Patch9: kdebase-3.2.2-konsole-setInputMethodEnabled-20040525.diff
Patch10: kdebase-3.4.2-kdesktop-konsole.patch
Patch11: kdebase-3.5.1-xdg.patch
-Patch12: kdebase-3.5.1-dbus.patch
-Patch13: kdebase-3.5.1-kdm-readme.patch
-Patch14: kdebase-3.5.1-kwin-systray.patch
+Patch12: kdebase-3.5.2-kioslave_media_dbus.patch
+Patch13: kdebase-3.5.2-dbus.patch
+Patch14: kdebase-3.5.1-kdm-readme.patch
Patch15: kdebase-3.5.1-konsole-fonts.patch
-# upstream patches
-Patch100: kdebase-3.5.1-keyboardlayout.patch
-
Requires: kdelibs >= %{kdelibs_epoch}:%{version}
Requires: libxml2 >= 2.6.5
Requires: /etc/X11/xdm/Xaccess
@@ -135,14 +132,11 @@
%patch9 -p1 -b .im
%patch10 -p1 -b .kdestop-konsole
%patch11 -p1 -b .xdg
-%patch12 -p1 -b .dbus
-%patch13 -p1 -b .kdm-readme
-%patch14 -p1 -b .systray
+%patch12 -p1 -b .kioslave_media_dbus
+%patch13 -p1 -b .dbus
+%patch14 -p1 -b .kdm-readme
%patch15 -p1 -b .konsole-fonts
-# upstream patches
-%patch100 -p1 -b .keyboardlayout
-
%if %{rhel}
rm -rf kdeprint/kdeprintfax
perl -pi -e "s,kdeprintfax,," kdeprint/Makefile.am
@@ -428,6 +422,11 @@
%{_includedir}/kde/ksplash/*
%changelog
+* Thu Mar 30 2006 Than Ngo <than at redhat.com> 6:3.5.2-0.1.fc5
+- update to 3.5.2
+- drop kdebase-3.5.1-kwin-systray.patch, kdebase-3.5.1-keyboardlayout.patch,
+ included in new upstream
+
* Tue Feb 21 2006 Than Ngo <than at redhat.com> 6:3.5.1-5
- fixed rpm file conflict
- added missing Category X-KDE-LookNFeel
Index: sources
===================================================================
RCS file: /cvs/dist/rpms/kdebase/FC-5/sources,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -r1.66 -r1.67
--- sources 15 Feb 2006 18:13:01 -0000 1.66
+++ sources 30 Mar 2006 13:46:23 -0000 1.67
@@ -1,2 +1,2 @@
-484c7b3895ce4f95173f4789571eb1cc kdebase-3.5.1.tar.bz2
a53556b00f950797b9b32848cace66c9 kde-redhat-config-3.5-fc5-0.2.tar.bz2
+c5685e1be34e033286aa1f37002a0552 kdebase-3.5.2.tar.bz2
--- kdebase-3.5.1-dbus.patch DELETED ---
--- kdebase-3.5.1-keyboardlayout.patch DELETED ---
--- kdebase-3.5.1-kwin-systray.patch DELETED ---
--- kdebase-3.5.1-redhat.patch DELETED ---
More information about the fedora-cvs-commits
mailing list