summaryrefslogtreecommitdiffstats
path: root/redhat/kdebase
diff options
context:
space:
mode:
authorFrancois Andriot <francois.andriot@free.fr>2011-12-10 00:52:10 +0100
committerFrancois Andriot <francois.andriot@free.fr>2011-12-10 00:52:10 +0100
commit4368359c6192aaff174d4ec6fde1a8ae0682defa (patch)
treee2dcc0c82393bde2af6463da82e6e4120d70cbdc /redhat/kdebase
parent39b93ce6be5b6d1ef6cc322f816b6f5173e715a3 (diff)
downloadtde-packaging-4368359c6192aaff174d4ec6fde1a8ae0682defa.tar.gz
tde-packaging-4368359c6192aaff174d4ec6fde1a8ae0682defa.zip
RHEL/Fedora: minor packaging fixes for kdelibs, kdebase, kde-i18n
Diffstat (limited to 'redhat/kdebase')
-rw-r--r--redhat/kdebase/kdebase-3.5.12-kickoff_unstable.patch428
-rw-r--r--redhat/kdebase/kdebase-3.5.12-kio_man_utf8.patch40
-rw-r--r--redhat/kdebase/kdebase-3.5.12-konq_menu_tab_background.patch136
-rw-r--r--redhat/kdebase/kdebase-3.5.13-kickoff_unstable.patch2
-rw-r--r--redhat/kdebase/trinity-kdebase-3.5.12.spec76
5 files changed, 666 insertions, 16 deletions
diff --git a/redhat/kdebase/kdebase-3.5.12-kickoff_unstable.patch b/redhat/kdebase/kdebase-3.5.12-kickoff_unstable.patch
new file mode 100644
index 000000000..a66bf625d
--- /dev/null
+++ b/redhat/kdebase/kdebase-3.5.12-kickoff_unstable.patch
@@ -0,0 +1,428 @@
+--- kdebase/kicker/kicker/buttons/knewbutton.cpp.ORI 2011-12-08 21:15:57.551323941 +0100
++++ kdebase/kicker/kicker/buttons/knewbutton.cpp 2011-12-08 21:22:05.216346827 +0100
+@@ -55,26 +55,26 @@
+ : KButton( parent ),
+ m_oldPos(0,0)
+ {
++ setTitle(i18n("K Menu"));
+ Q_ASSERT( !m_self );
+ m_self = this;
+- m_hoverTimer = -1;
+ m_openTimer = -1;
+- m_active = false;
++ m_hoverTimer = -1;
+ m_mouseInside = false;
+ m_drag = false;
+
+- setIconAlignment((Qt::AlignmentFlags)(AlignTop|AlignRight));
+- setAcceptDrops(true);
+- setIcon("kmenu-suse");
+- setDrawArrow(false);
+-
+- m_movie = new TQMovie(locate("data", "kicker/pics/kmenu_basic.mng"));
+- m_movie->connectUpdate(this, TQT_SLOT(updateMovie()));
+- m_movie->connectStatus(this, TQT_SLOT(slotStatus(int)));
+- m_movie->connectResize(this, TQT_SLOT(slotSetSize(const TQSize&)));
++ setIcon("kmenu");
++ setIcon(KickerSettings::customKMenuIcon());
+
+ TQApplication::desktop()->screen()->installEventFilter(this);
+- setMouseTracking(true);
++ if (KickerSettings::showKMenuText())
++ {
++ setButtonText(KickerSettings::kMenuText());
++ setFont(KickerSettings::buttonFont());
++ setTextColor(KickerSettings::buttonTextColor());
++ }
++
++ repaint();
+ }
+
+ KNewButton::~KNewButton()
+@@ -82,28 +82,14 @@
+ if ( m_self == this )
+ m_self = 0;
+ setMouseTracking(false);
+- delete m_movie;
+-}
+-
+-void KNewButton::slotStatus(int status)
+-{
+- if(status == TQMovie::EndOfLoop)
+- slotStopAnimation();
+ }
+
+-TQColor KNewButton::borderColor() const
++void KNewButton::drawButton(TQPainter *p)
+ {
+- TQImage img = m_active_pixmap.convertToImage();
+-
+- for (int i = 0; i < img.width(); ++i) {
+- QRgb rgb = img.pixel(orientation() == Qt::Horizontal ? img.width() - i - 1 :
+- i, 2);
+-
+- if (qGreen(rgb) > 0x50)
+- return rgb;
+- }
+-
+- return img.pixel( orientation() == Qt::Horizontal ? img.width() - 2 : 2, 2);
++ //if (KickerSettings::showDeepButtons())
++ // PanelPopupButton::drawDeepButton(p);
++ //else
++ PanelPopupButton::drawButton(p);
+ }
+
+ void KNewButton::show()
+@@ -111,103 +97,12 @@
+ KButton::show();
+
+ if (KickerSettings::firstRun()) {
+- TQTimer::singleShot(500,this,TQT_SLOT(slotExecMenu()));
++ TQTimer::singleShot(0,this,TQT_SLOT(slotExecMenu()));
+ KickerSettings::setFirstRun(false);
+ KickerSettings::writeConfig();
+ }
+ }
+
+-void KNewButton::updateMovie()
+-{
+- m_oldPos = TQPoint( -1, -1 );
+- drawEye();
+-
+- if (!m_active && m_movie->running())
+- m_movie->pause();
+-}
+-
+-void KNewButton::setPopupDirection(KPanelApplet::Direction d)
+-{
+- KButton::setPopupDirection(d);
+-
+- delete m_movie;
+-
+- switch (d) {
+- case KPanelApplet::Left:
+- setIconAlignment((Qt::AlignmentFlags)(AlignTop|AlignLeft));
+- m_movie = new TQMovie(locate("data", "kicker/pics/kmenu_vertical.mng"));
+- break;
+- case KPanelApplet::Right:
+- setIconAlignment((Qt::AlignmentFlags)(AlignTop|AlignRight));
+- m_movie = new TQMovie(locate("data", "kicker/pics/kmenu_vertical.mng"));
+- break;
+- case KPanelApplet::Up:
+- setIconAlignment((Qt::AlignmentFlags)(AlignTop|AlignHCenter));
+- m_movie = new TQMovie(locate("data", "kicker/pics/kmenu_basic.mng"));
+- break;
+- case KPanelApplet::Down:
+- setIconAlignment((Qt::AlignmentFlags)(AlignBottom|AlignHCenter));
+- m_movie = new TQMovie(locate("data", "kicker/pics/kmenu_flipped.mng"));
+- }
+-
+- m_movie->connectUpdate(this, TQT_SLOT(updateMovie()));
+- m_movie->connectStatus(this, TQT_SLOT(slotStatus(int)));
+- m_movie->connectResize(this, TQT_SLOT(slotSetSize(const TQSize&)));
+-}
+-
+-void KNewButton::slotSetSize(const TQSize& s)
+-{
+- m_iconSize = s;
+-}
+-
+-double KNewButton::buttonScaleFactor(const TQSize& s) const
+-{
+- double sf = 1.0;
+-
+- switch (popupDirection()) {
+- case KPanelApplet::Left:
+- case KPanelApplet::Right:
+-// sf = kMin(double(s.width()) / m_iconSize.height(), double(s.height()) / m_iconSize.width());
+-// break;
+- case KPanelApplet::Up:
+- case KPanelApplet::Down:
+- sf = kMin(double(s.width()) / m_iconSize.width(), double(s.height()) / m_iconSize.height());
+- break;
+- }
+-
+- if (sf > 0.8) sf = 1.0;
+- return sf;
+-}
+-
+-int KNewButton::widthForHeight(int height) const
+-{
+- int r = m_iconSize.width() * buttonScaleFactor(TQSize(m_iconSize.width(), height));
+-
+- if (!m_movie->running() && height != m_active_pixmap.height())
+- {
+- KNewButton* that = const_cast<KNewButton*>(this);
+- TQTimer::singleShot(0, that, TQT_SLOT(slotStopAnimation()));
+- }
+-
+- return r;
+-}
+-
+-int KNewButton::preferredDimension(int panelDim) const
+-{
+- return kMax(m_icon.width(), m_icon.height());
+-}
+-
+-int KNewButton::heightForWidth(int width) const
+-{
+- int r = m_iconSize.width() * buttonScaleFactor(TQSize(width, m_iconSize.height()));
+- if (!m_movie->running() && width != m_active_pixmap.width())
+- {
+- KNewButton* that = const_cast<KNewButton*>(this);
+- TQTimer::singleShot(0, that, TQT_SLOT(slotStopAnimation()));
+- }
+- return r;
+-}
+-
+ bool KNewButton::eventFilter(TQObject *o, TQEvent *e)
+ {
+ if (e->type() == TQEvent::MouseButtonRelease ||
+@@ -223,75 +118,9 @@
+ }
+ }
+
+- if (KickerSettings::kickoffDrawGeekoEye() && e->type() == TQEvent::MouseMove)
+- {
+- TQMouseEvent *me = static_cast<TQMouseEvent *>(e);
+- if ((me->state() & MouseButtonMask) == NoButton)
+- drawEye();
+- }
+-
+ return KButton::eventFilter(o, e);
+ }
+
+-void KNewButton::drawEye()
+-{
+-#define eye_x 62
+-#define eye_y 13
+- TQPoint mouse = TQCursor::pos();
+- TQPoint me = mapToGlobal(TQPoint(eye_x, eye_y));
+- double a = atan2(mouse.y() - me.y(), mouse.x() - me.x());
+- int dx = int(2.1 * cos(a));
+- int dy = int(2.1 * sin(a));
+-
+- TQPoint newpos(eye_x+dx,eye_y+dy);
+- if (newpos!=m_oldPos) {
+- m_oldPos = newpos;
+- TQPixmap pixmap = m_active_pixmap;
+-
+- double sf = 1.0;
+-
+- if(!m_movie->framePixmap().isNull())
+- {
+- pixmap = m_movie->framePixmap();
+- pixmap.detach();
+- m_iconSize = pixmap.size();
+- sf = buttonScaleFactor(size());
+-
+- if (KickerSettings::kickoffDrawGeekoEye()) {
+- TQPainter p(&pixmap);
+- p.setPen(white);
+- p.setBrush(white);
+- // p.setPen(TQColor(110,185,55));
+- p.drawRect(eye_x+dx, eye_y+dy, 2, 2);
+- p. end();
+- }
+- }
+-
+- TQWMatrix matrix;
+- switch (popupDirection()) {
+- case KPanelApplet::Left:
+- matrix.scale(sf, -sf);
+- matrix.rotate(90);
+- break;
+- case KPanelApplet::Up:
+- matrix.scale(sf, sf);
+- break;
+- case KPanelApplet::Right:
+- matrix.scale(sf, -sf);
+- matrix.rotate(90);
+- break;
+- case KPanelApplet::Down:
+- matrix.scale(sf, sf);
+- break;
+- }
+- m_active_pixmap = pixmap.xForm(matrix);
+-
+- repaint(false);
+- }
+-#undef eye_x
+-#undef eye_y
+-}
+-
+ void KNewButton::enterEvent(TQEvent* e)
+ {
+ KButton::enterEvent(e);
+@@ -315,14 +144,6 @@
+ }
+
+ m_active = true;
+- m_movie->unpause();
+- m_movie->restart();
+-}
+-
+-void KNewButton::rewindMovie()
+-{
+- m_oldPos = TQPoint( -1, -1 );
+- m_movie->unpause();
+ }
+
+ void KNewButton::dragEnterEvent(TQDragEnterEvent* /*e*/)
+@@ -369,31 +190,11 @@
+ }
+ }
+
+-void KNewButton::slotStopAnimation()
+-{
+- m_active = false;
+- m_movie->pause();
+- m_movie->restart();
+- TQTimer::singleShot(200, this, TQT_SLOT(rewindMovie()));
+-}
+-
+-const TQPixmap& KNewButton::labelIcon() const
+-{
+- return m_active_pixmap;
+-}
+-
+ void KNewButton::slotExecMenu()
+ {
+- if (m_openTimer != -1)
+- killTimer(m_openTimer);
+-
+- m_openTimer = startTimer(TQApplication::doubleClickInterval() * 3);
+-
+ if (m_active)
+ {
+ m_active = false;
+- m_movie->pause();
+- m_movie->restart();
+ }
+
+ KButton::slotExecMenu();
+@@ -401,40 +202,11 @@
+ assert(!KickerTip::tippingEnabled());
+ assert(dynamic_cast<KMenu*>(m_popup));
+
+- disconnect(dynamic_cast<KMenu*>(m_popup), TQT_SIGNAL(aboutToHide()), this,
+- TQT_SLOT(slotStopAnimation()));
+- connect(dynamic_cast<KMenu*>(m_popup), TQT_SIGNAL(aboutToHide()),
+- TQT_SLOT(slotStopAnimation()));
+-
+ m_popup->move(KickerLib::popupPosition(popupDirection(), m_popup, this));
+ // I wish KMenu would properly done itself when it closes. But it doesn't.
+
+- bool useEffect = true; // could be TQApplication::isEffectEnabled()
+- useEffect = false; // too many TQt bugs to be useful
+- if (m_drag)
+- useEffect = false;
+-
+ m_drag = false; // once is enough
+-
+- if (useEffect)
+- {
+- switch (popupDirection()) {
+- case KPanelApplet::Left:
+- qScrollEffect(m_popup, QEffects::LeftScroll);
+- break;
+- case KPanelApplet::Up:
+- qScrollEffect(m_popup, QEffects::UpScroll);
+- break;
+- case KPanelApplet::Right:
+- qScrollEffect(m_popup, QEffects::RightScroll);
+- break;
+- case KPanelApplet::Down:
+- qScrollEffect(m_popup, QEffects::DownScroll);
+- break;
+- }
+- }
+- else
+- static_cast<KMenu*>(m_popup)->show();
++ static_cast<KMenu*>(m_popup)->show();
+ }
+
+ void KNewButton::timerEvent(TQTimerEvent* e)
+@@ -447,9 +219,4 @@
+ killTimer(m_hoverTimer);
+ m_hoverTimer = -1;
+ }
+- if (e->timerId() == m_openTimer)
+- {
+- killTimer(m_openTimer);
+- m_openTimer = -1;
+- }
+ }
+--- kdebase/kicker/kicker/buttons/knewbutton.h.ORI 2011-12-08 21:22:24.273573281 +0100
++++ kdebase/kicker/kicker/buttons/knewbutton.h 2011-12-08 21:24:16.791338762 +0100
+@@ -28,7 +28,6 @@
+
+ #include "kbutton.h"
+
+-#include <tqmovie.h>
+ #include <tqpoint.h>
+
+ /**
+@@ -46,23 +45,8 @@
+
+ void loadConfig( const KConfigGroup& config );
+
+- virtual const TQPixmap& labelIcon() const;
+-
+- virtual int widthForHeight(int height) const;
+- virtual int preferredDimension(int panelDim) const;
+- virtual int heightForWidth(int width) const;
+-
+ TQColor borderColor() const;
+
+- virtual void setPopupDirection(KPanelApplet::Direction d);
+-
+-private slots:
+- void slotStatus(int);
+- void slotSetSize(const TQSize&);
+- void slotStopAnimation();
+- void rewindMovie();
+- void updateMovie();
+-
+ protected:
+ virtual void show();
+ virtual void slotExecMenu();
+@@ -78,16 +62,13 @@
+ void timerEvent(TQTimerEvent*);
+
+ private:
+- void drawEye();
+- double buttonScaleFactor(const TQSize& s) const;
+-
+- TQMovie* m_movie;
++ void drawButton(TQPainter *p);
+ TQPixmap m_active_pixmap;
+ TQPoint m_oldPos;
+ TQSize m_iconSize;
+ TQRect m_sloppyRegion;
+- int m_hoverTimer;
+ int m_openTimer;
++ int m_hoverTimer;
+ bool m_active;
+ bool m_mouseInside;
+ bool m_drag;
+--- kdebase/kicker/kicker/ui/k_new_mnu.cpp.ORI 2011-12-08 21:24:57.071572016 +0100
++++ kdebase/kicker/kicker/ui/k_new_mnu.cpp 2011-12-08 21:25:54.300324465 +0100
+@@ -1700,8 +1700,6 @@
+ TQPixmap pix( 64, footer->height() );
+ TQPainter p( &pix );
+ p.fillRect( 0, 0, 64, footer->height(), m_branding->colorGroup().brush( TQColorGroup::Base ) );
+- p.fillRect( 0, m_orientation == BottomUp ? footer->height() - 2 : 0,
+- 64, 3, KNewButton::self()->borderColor() );
+ p.end();
+ footer->setPaletteBackgroundPixmap( pix );
+ }
+@@ -3501,6 +3499,8 @@
+ m_systemView->insertItem( iconName, userLabel.isEmpty() ? label : userLabel,
+ descr, "system:/media/" + name, nId++, -1 );
+
++ ++it;
++ ++it;
+ ++it; // skip separator
+ }
+ }
diff --git a/redhat/kdebase/kdebase-3.5.12-kio_man_utf8.patch b/redhat/kdebase/kdebase-3.5.12-kio_man_utf8.patch
new file mode 100644
index 000000000..a85f0286d
--- /dev/null
+++ b/redhat/kdebase/kdebase-3.5.12-kio_man_utf8.patch
@@ -0,0 +1,40 @@
+--- kdebase/kioslave/man/kio_man.cpp.orig 2010-08-13 00:37:38.000000000 +0200
++++ kdebase/kioslave/man/kio_man.cpp 2011-12-08 21:10:25.720324499 +0100
+@@ -569,20 +569,24 @@
+ }
+ lastdir = filename.left(filename.findRev('/'));
+
+- myStdStream = TQString::null;
+- KProcess proc;
+- /* TODO: detect availability of 'man --recode' so that this can go
+- * upstream */
+- proc << "man" << "--recode" << "UTF-8" << filename;
+-
+- TQApplication::connect(&proc, TQT_SIGNAL(receivedStdout (KProcess *, char *, int)),
+- this, TQT_SLOT(slotGetStdOutputUtf8(KProcess *, char *, int)));
+- proc.start(KProcess::Block, KProcess::All);
+-
+- const TQCString cstr=myStdStream.utf8();
+- const int len = cstr.size()-1;
++ QIODevice *fd= KFilterDev::deviceForFile(filename);
++
++ if ( !fd || !fd->open(IO_ReadOnly))
++ {
++ delete fd;
++ return 0;
++ }
++ QByteArray array(fd->readAll());
++ kdDebug(7107) << "read " << array.size() << endl;
++ fd->close();
++ delete fd;
++
++ if (array.isEmpty())
++ return 0;
++
++ const int len = array.size();
+ buf = new char[len + 4];
+- qmemmove(buf + 1, cstr.data(), len);
++ qmemmove(buf + 1, array.data(), len);
+ buf[0]=buf[len]='\n'; // Start and end with a end of line
+ buf[len+1]=buf[len+2]='\0'; // Two NUL characters at end
+ }
diff --git a/redhat/kdebase/kdebase-3.5.12-konq_menu_tab_background.patch b/redhat/kdebase/kdebase-3.5.12-konq_menu_tab_background.patch
new file mode 100644
index 000000000..5971553d1
--- /dev/null
+++ b/redhat/kdebase/kdebase-3.5.12-konq_menu_tab_background.patch
@@ -0,0 +1,136 @@
+diff -Nuar kcontrol.ORI/konqhtml/advancedTabDialog.cpp kcontrol/konqhtml/advancedTabDialog.cpp
+--- kcontrol.ORI/konqhtml/advancedTabDialog.cpp 2011-12-09 23:45:04.676253975 +0100
++++ kcontrol/konqhtml/advancedTabDialog.cpp 2011-12-09 23:46:28.239256986 +0100
+@@ -58,7 +58,6 @@
+ layout->addSpacing( 20 );
+ layout->addStretch();
+
+- connect(m_advancedWidget->m_pNewTabsInBackground, TQT_SIGNAL(clicked()), this, TQT_SLOT(changed()));
+ connect(m_advancedWidget->m_pOpenAfterCurrentPage, TQT_SIGNAL(clicked()), this, TQT_SLOT(changed()));
+ connect(m_advancedWidget->m_pTabConfirm, TQT_SIGNAL(clicked()), this, TQT_SLOT(changed()));
+ connect(m_advancedWidget->m_pTabCloseActivatePrevious, TQT_SIGNAL(clicked()), this, TQT_SLOT(changed()));
+@@ -76,7 +75,6 @@
+ void advancedTabDialog::load()
+ {
+ m_pConfig->setGroup("FMSettings");
+- m_advancedWidget->m_pNewTabsInBackground->setChecked( ! (m_pConfig->readBoolEntry( "NewTabsInFront", false )) );
+ m_advancedWidget->m_pOpenAfterCurrentPage->setChecked( m_pConfig->readBoolEntry( "OpenAfterCurrentPage", false ) );
+ m_advancedWidget->m_pPermanentCloseButton->setChecked( m_pConfig->readBoolEntry( "PermanentCloseButton", false ) );
+ m_advancedWidget->m_pKonquerorTabforExternalURL->setChecked( m_pConfig->readBoolEntry( "KonquerorTabforExternalURL", false ) );
+@@ -92,7 +90,6 @@
+ void advancedTabDialog::save()
+ {
+ m_pConfig->setGroup("FMSettings");
+- m_pConfig->writeEntry( "NewTabsInFront", !(m_advancedWidget->m_pNewTabsInBackground->isChecked()) );
+ m_pConfig->writeEntry( "OpenAfterCurrentPage", m_advancedWidget->m_pOpenAfterCurrentPage->isChecked() );
+ m_pConfig->writeEntry( "PermanentCloseButton", m_advancedWidget->m_pPermanentCloseButton->isChecked() );
+ m_pConfig->writeEntry( "KonquerorTabforExternalURL", m_advancedWidget->m_pKonquerorTabforExternalURL->isChecked() );
+diff -Nuar kcontrol.ORI/konqhtml/advancedTabOptions.ui kcontrol/konqhtml/advancedTabOptions.ui
+--- kcontrol.ORI/konqhtml/advancedTabOptions.ui 2011-12-09 23:45:04.674267416 +0100
++++ kcontrol/konqhtml/advancedTabOptions.ui 2011-12-09 23:56:01.440255647 +0100
+@@ -62,6 +62,17 @@
+ </widget>
+ <widget class="QCheckBox">
+ <property name="name">
++ <cstring>m_pNewTabsInBackground</cstring>
++ </property>
++ <property name="text">
++ <string>O&amp;pen new tabs in the background</string>
++ </property>
++ <property name="whatsThis" stdset="0">
++ <string>This will open a new tab in the background, instead of in the foreground.</string>
++ </property>
++ </widget>
++ <widget class="QCheckBox">
++ <property name="name">
+ <cstring>m_pOpenAfterCurrentPage</cstring>
+ </property>
+ <property name="text">
+diff -Nuar konqueror.ORI/konq_guiclients.cc konqueror/konq_guiclients.cc
+--- konqueror.ORI/konq_guiclients.cc 2011-12-09 23:44:28.950255993 +0100
++++ konqueror/konq_guiclients.cc 2011-12-09 23:49:31.432261289 +0100
+@@ -115,6 +115,11 @@
+ openInTabElement.setAttribute( "group", "tabhandling" );
+ menu.appendChild( openInTabElement );
+
++ TQDomElement openInTabFrontElement = m_doc.createElement( "action" );
++ openInTabFrontElement.setAttribute( "name", "openintabfront" );
++ openInTabFrontElement.setAttribute( "group", "tabhandling" );
++ menu.appendChild( openInTabFrontElement );
++
+ TQDomElement separatorElement = m_doc.createElement( "separator" );
+ separatorElement.setAttribute( "group", "tabhandling" );
+ menu.appendChild( separatorElement );
+diff -Nuar konqueror.ORI/konq_mainwindow.cc konqueror/konq_mainwindow.cc
+--- konqueror.ORI/konq_mainwindow.cc 2011-12-09 23:44:29.030265039 +0100
++++ konqueror/konq_mainwindow.cc 2011-12-09 23:54:27.518255409 +0100
+@@ -2727,6 +2727,14 @@
+ openURL( 0L, popupItems.getFirst()->url() );
+ }
+
++void KonqMainWindow::slotPopupNewTabAtFront()
++{
++ KConfig *config = KGlobal::config();
++ KConfigGroupSaver cs( config, TQString::fromLatin1("FMSettings") );
++ bool openAfterCurrentPage = config->readBoolEntry( "OpenAfterCurrentPage", false );
++ popupNewTab(true, openAfterCurrentPage);
++}
++
+ void KonqMainWindow::slotPopupNewTab()
+ {
+ bool openAfterCurrentPage = KonqSettings::openAfterCurrentPage();
+@@ -2735,7 +2743,7 @@
+ if (KApplication::keyboardMouseState() & Qt::ShiftButton)
+ newTabsInFront = !newTabsInFront;
+
+- popupNewTab(newTabsInFront, openAfterCurrentPage);
++ popupNewTab(false, openAfterCurrentPage);
+ }
+
+ void KonqMainWindow::slotPopupNewTabRight()
+@@ -2755,16 +2763,12 @@
+ KFileItemListIterator it ( popupItems );
+ KonqOpenURLRequest req;
+ req.newTab = true;
+- req.newTabInFront = false;
++ req.newTabInFront = infront;
+ req.openAfterCurrentPage = openAfterCurrentPage;
+ req.args = popupUrlArgs;
+
+ for ( ; it.current(); ++it )
+ {
+- if ( infront && it.atLast() )
+- {
+- req.newTabInFront = true;
+- }
+ openURL( 0L, (*it)->url(), TQString::null, req );
+ }
+ }
+@@ -4783,8 +4787,14 @@
+ else
+ tab_new_x = "tab_new_bg" ;
+
+- actNewTab = new KAction( i18n( "Open in &New Tab" ), tab_new_x, 0, this, TQT_SLOT( slotPopupNewTab() ), konqyMenuClient->actionCollection(), "openintab" );
+- actNewTab->setToolTip( i18n( "Open the document in a new tab" ) );
++ KAction *actNewTab = new KAction( i18n( "Open in &Background Tab" ), "tab_new_bg", 0, this, TQT_SLOT( slotPopupNewTab() ), actionCollection(), "openintab" );
++ actNewTab->setStatusText( i18n( "Open the document in a new background tab" ) );
++ KAction *actNewTabFront = new KAction( i18n( "Open in &New Tab" ), "tab_new", 0, this, TQT_SLOT( slotPopupNewTabAtFront() ), actionCollection(), "openintabfront" );
++ actNewTabFront->setStatusText( i18n( "Open the document in a new foreground tab" ) );
++ actNewTab = new KAction( i18n( "Open in &Background Tab" ), tab_new_x, 0, this, TQT_SLOT( slotPopupNewTab() ), konqyMenuClient->actionCollection(), "openintab" );
++ actNewTabFront = new KAction( i18n( "Open in &New Tab" ), tab_new_x, 0, this, TQT_SLOT( slotPopupNewTabAtFront() ), konqyMenuClient->actionCollection(), "openintabfront" );
++ actNewTab->setToolTip( i18n( "Open the document in a new background tab" ) );
++ actNewTabFront->setToolTip( i18n( "Open the document in a new foreground tab" ) );
+ doTabHandling = true;
+ }
+
+diff -Nuar konqueror.ORI/konq_mainwindow.h konqueror/konq_mainwindow.h
+--- konqueror.ORI/konq_mainwindow.h 2011-12-09 23:44:28.941260682 +0100
++++ konqueror/konq_mainwindow.h 2011-12-09 23:54:57.772255487 +0100
+@@ -444,6 +444,7 @@
+ void slotPopupNewWindow();
+ void slotPopupThisWindow();
+ void slotPopupNewTab();
++ void slotPopupNewTabAtFront();
+ void slotPopupNewTabRight();
+ void slotPopupPasteTo();
+ void slotRemoveView();
diff --git a/redhat/kdebase/kdebase-3.5.13-kickoff_unstable.patch b/redhat/kdebase/kdebase-3.5.13-kickoff_unstable.patch
index 0116d080e..00a0d4b64 100644
--- a/redhat/kdebase/kdebase-3.5.13-kickoff_unstable.patch
+++ b/redhat/kdebase/kdebase-3.5.13-kickoff_unstable.patch
@@ -33,7 +33,7 @@ diff -ur kdebase/kicker/kicker/buttons/knewbutton.cpp kdebase1/kicker/kicker/but
TQApplication::desktop()->screen()->installEventFilter(this);
- setMouseTracking(true);
+
-+ if (KickerSettings::showKMenuText())
++ if (KickerSettings::showKMenuText())
+ {
+ setButtonText(KickerSettings::kMenuText());
+ setFont(KickerSettings::buttonFont());
diff --git a/redhat/kdebase/trinity-kdebase-3.5.12.spec b/redhat/kdebase/trinity-kdebase-3.5.12.spec
index 1e0b0e18b..94332e782 100644
--- a/redhat/kdebase/trinity-kdebase-3.5.12.spec
+++ b/redhat/kdebase/trinity-kdebase-3.5.12.spec
@@ -2,7 +2,7 @@
%if "%{?version}" == ""
%define version 3.5.12
%endif
-%define release 12
+%define release 13
# If TDE is built in a specific prefix (e.g. /opt/trinity), the release will be suffixed with ".opt".
%if "%{?_prefix}" != "/usr"
@@ -66,44 +66,67 @@ Patch9: kdebase-3.5.12-r1220927.patch
# TDE for RHEL/Fedora specific patches
## [kdebase/kdesu] Remove 'ignore' button on 'kdesu' dialog box
Patch3: kdebase-3.5.12-kdesu-noignorebutton.patch
-## [kdebase/kdesktop] Modifies "open terminal here" on desktop
+## [kdebase/kdesktop] Modifies 'open terminal here' on desktop
Patch5: kdebase-3.5.12-desktop-openterminalhere.patch
## [kdebase/kioslave] Forces HAL backend to use HAL mount options
Patch6: kdebase-3.5.12-halmountoptions.patch
## [kdebase/kdm/kfrontend] Global Xsession file is '/etc/X11/xinit/Xsession'
Patch7: kdebase-3.5.13-genkdmconf_Xsession_location.patch
+## [kdebase/kicker/kicker/ui] Fix kickoff menu issues
+Patch10: kdebase-3.5.12-kickoff_unstable.patch
## [kdebase/startkde] Sets default Start Icon in 'kickerrc'
Patch11: kdebase-3.5.13-startkde_icon.patch
-# TDE 3.5.12 patches
-# Fix for DBUS include files in RHEL6
+# TDE 3.5.12 unofficial patches
+## Fix for DBUS include files in RHEL6
Patch0: kdebase-3.5.12-shutdowndlg-dbus-include.patch
-# [kdebase/kcontrol]: disable components that depends of krandr (old distros)
-Patch100: kdebase-3.5.12-disable-krandr.patch
-
+## [kdebase/kate] Restores the 'number of files' and sorting widgets to the Kate configuration
+Patch13: kdebase-3.5.13-kate_mru.patch
+## [kdebase/kioslave/man] Fix kio_man for older distros without 'man-db'
+Patch14: kdebase-3.5.12-kio_man_utf8.patch
+## [kdebase/kcontrol]: disable components that depends of krandr (old distros)
+Patch15: kdebase-3.5.12-disable-krandr.patch
+## [kdebase/konqueror] Re-enable 'open tab in background'
+Patch16: kdebase-3.5.12-konq_menu_tab_background.patch
# Fedora 15 Theme: "Lovelock"
%if 0%{?fedora} == 15
Requires: lovelock-backgrounds-single
%define tde_bg /usr/share/backgrounds/lovelock/default/standard/lovelock.png
+
+Requires: fedora-release-notes
+%define tde_aboutlabel Fedora 15
+%define tde_aboutpage /usr/share/doc/HTML/fedora-release-notes/index.html
%endif
# Fedora 16 Theme: "Verne"
%if 0%{?fedora} == 16
Requires: verne-backgrounds-single
%define tde_bg /usr/share/backgrounds/verne/default/standard/verne.png
+
+Requires: fedora-release-notes
+%define tde_aboutlabel Fedora 16
+%define tde_aboutpage /usr/share/doc/HTML/fedora-release-notes/index.html
%endif
# RHEL 5 Theme
%if 0%{?rhel} == 5
Requires: desktop-backgrounds-basic
%define tde_bg /usr/share/backgrounds/images/default.jpg
+
+Requires: indexhtml
+%define tde_aboutlabel Enterprise Linux 5
+%define tde_aboutpage /usr/share/doc/HTML/index.html
%endif
# RHEL 6 Theme
%if 0%{?rhel} == 6
Requires: redhat-logos
%define tde_bg /usr/share/backgrounds/default.png
+
+Requires: redhat-indexhtml
+%define tde_aboutlabel Enterprise Linux 6
+%define tde_aboutpage /usr/share/doc/HTML/index.html
%endif
BuildRequires: tqtinterface-devel
@@ -159,7 +182,7 @@ Requires: kde-settings-kdm
%endif
Requires: redhat-menus
-Provides: kdebase%{?_qt_suffix} = %{version}
+#Provides: kdebase%{?_qt_suffix} = %{version}
%if "%{?_prefix}" == "/usr"
Obsoletes: kdebase%{?_qt_suffix} <= 3.5.10
%endif
@@ -185,7 +208,7 @@ Requires: %{name}
Requires: %{name}-libs = %{version}-%{release}
Requires: trinity-kdelibs-devel
Summary: %{summary} - Development files
-Provides: kdebase%{?_qt_suffix}-devel = %{version}
+#Provides: kdebase%{?_qt_suffix}-devel = %{version}
%if "%{?_prefix}" == "/usr"
Obsoletes: kdebase%{?_qt_suffix}-devel <= 3.5.10
%endif
@@ -201,7 +224,7 @@ Kate plugins or KWin styles.
Summary: Extra applications from %{name}
Group: User Interface/Desktops
Requires: %{name} = %{version}-%{release}
-Provides: kdebase%{?_qt_suffix}-extras = %{version}
+#Provides: kdebase%{?_qt_suffix}-extras = %{version}
%if "%{?_prefix}" == "/usr"
Obsoletes: kdebase%{?_qt_suffix}-extras <= 3.5.10
%endif
@@ -217,7 +240,7 @@ Obsoletes: kdebase%{?_qt_suffix}-extras <= 3.5.10
Summary: %{name} runtime libraries
Group: System Environment/Libraries
Requires: trinity-kdelibs
-Provides: kdebase%{?_qt_suffix}-libs = %{version}
+#Provides: kdebase%{?_qt_suffix}-libs = %{version}
%if "%{?_prefix}" == "/usr"
Obsoletes: kdebase%{?_qt_suffix}-libs <= 3.5.10
%endif
@@ -253,11 +276,17 @@ Protocol handlers (KIOslaves) for personal information management, including:
%patch7 -p1
%patch8 -p1
%patch9 -p1
+%patch10 -p1
%patch11 -p1
%patch12 -p1
+%patch13 -p4
+%if 0%{?rhel} > 0
+%patch14 -p1
+%endif
%if 0%{?rhel} && 0%{?rhel} < 6
-%patch100 -p1
+%patch15 -p1
%endif
+%patch16 -p0
# Applies an optional distro-specific graphical theme
%if "%{?tde_bg}" != ""
@@ -268,7 +297,6 @@ Protocol handlers (KIOslaves) for personal information management, including:
# TDE user default background
%__sed -i "kpersonalizer/keyecandypage.cpp" \
-e 's,#define DEFAULT_WALLPAPER "isadora.png",#define DEFAULT_WALLPAPER "%{tde_bg}",'
-
%__sed -i "startkde" \
-e 's,/usr/share/wallpapers/isadora.png.desktop,%{tde_bg},' \
-e 's,Wallpaper=isadora.png,Wallpaper=%{tde_bg},'
@@ -278,6 +306,17 @@ Protocol handlers (KIOslaves) for personal information management, including:
%__cp "/usr/share/libtool/config/ltmain.sh" "admin/ltmain.sh"
%__make -f "admin/Makefile.common"
+# TDE branding: removes KUbuntu references
+%__sed -i "kcontrol/kdm/kdm-appear.cpp" \
+ -e "s|Welcome to Kubuntu |Welcome to %{tde_aboutlabel} |"
+%__sed -i "konqueror/about/konq_aboutpage.cc" \
+ -e "s|About Kubuntu|About %{tde_aboutlabel}|" \
+ -e "s|help:/kubuntu/|%{tde_aboutpage}|" \
+ -e "s|Kubuntu Documentation|%{tde_aboutlabel} Documentation|"
+%__sed -i "konqueror/about/launch.html" \
+ -e "s|help:/kubuntu/about-kubuntu/index.html|%{tde_aboutpage}|"
+%__sed -i "kdm/config.def" \
+ -e "s|Welcome to Trinity |Welcome to %{tde_aboutlabel} |"
%build
unset QTDIR || : ; . /etc/profile.d/qt.sh
@@ -321,7 +360,7 @@ export IMAKEINCLUDE="-I/usr/share/X11/config"
# Modifies 'startkde' to set KDEDIR and KDEHOME hardcoded specific for TDE
%__sed -i "%{?buildroot}%{_bindir}/startkde" \
- -e '/^echo "\[startkde\] Starting startkde.".*/ s,$,\nexport KDEDIR=%{_prefix}\nexport KDEHOME=~/.trinity,'
+ -e '/^echo "\[startkde\] Starting startkde.".*/ s,$,\nexport KDEDIR=%{_prefix}\nexport KDEHOME=~/.trinity,'
# Renames '/etc/ksysguarddrc' to avoid conflict with KDE4 'ksysguard'
%__mv -f %{?buildroot}%{_sysconfdir}/ksysguarddrc %{?buildroot}%{_sysconfdir}/ksysguarddrc.tde
@@ -442,7 +481,7 @@ update-desktop-database %{_datadir}/applications > /dev/null 2>&1 || :
# Pam configuration
%{_sysconfdir}/pam.d/*
-%doc AUTHORS COPYING README
+%doc AUTHORS COPYING COPYING-DOCS README README.pam
%{tde_docdir}/HTML/en/*
%config(noreplace) %{_sysconfdir}/ksysguarddrc.tde
%{_bindir}/genkdmconf
@@ -620,6 +659,13 @@ update-desktop-database %{_datadir}/applications > /dev/null 2>&1 || :
%exclude %{_libdir}/libkdeinit_*.*
%changelog
+* Thu Dec 08 2011 Francois Andriot <francois.andriot@free.fr> - 3.5.12-13
+- Backports patches from TDE 3.5.13-10
+- Removes Kubuntu branding [TDE Bug #449]
+- Fix 'kio_man' on RHEL 5 and RHEL 6 [TDE Bug #714]
+- Restores the 'number of files' and sorting widgets to the Kate configuration [TDE Bug #244]
+- Re-enables 'open tab in background' konqueror feature [TDE Bug #245]
+
* Sun Nov 20 2011 Francois Andriot <francois.andriot@free.fr> - 3.5.12-12
- Updates Kickoff menu Fix [TDE Bugs #281, #508]
- Add distribution-specific start button icon