diff options
author | root <root@rshg047.dnsready.net> | 2011-07-13 23:12:30 +0000 |
---|---|---|
committer | root <root@rshg047.dnsready.net> | 2011-07-13 23:12:30 +0000 |
commit | 29657877f6a02dbba1bd58b417b4ccd211939690 (patch) | |
tree | 0213b621a87e176f90d19cf8e894d1da8fd0d1b6 /extra/kdelibs | |
parent | 079c689ef9b252fd82dbf9b182ec2517c48f8737 (diff) |
Wed Jul 13 23:12:30 UTC 2011
Diffstat (limited to 'extra/kdelibs')
-rw-r--r-- | extra/kdelibs/PKGBUILD | 16 | ||||
-rw-r--r-- | extra/kdelibs/fix-lineedit-clear-button.patch | 30 | ||||
-rw-r--r-- | extra/kdelibs/fix-lineedit-completion-tab.patch | 56 |
3 files changed, 98 insertions, 4 deletions
diff --git a/extra/kdelibs/PKGBUILD b/extra/kdelibs/PKGBUILD index ab89b60f9..8e4a0224a 100644 --- a/extra/kdelibs/PKGBUILD +++ b/extra/kdelibs/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 130249 2011-07-04 19:26:50Z andrea $ +# $Id: PKGBUILD 131295 2011-07-12 17:46:50Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org # Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=kdelibs pkgver=4.6.5 -pkgrel=1 +pkgrel=2 pkgdesc="KDE Core Libraries" arch=('i686' 'x86_64') url='http://www.kde.org' @@ -20,11 +20,15 @@ replaces=('arts' 'kdelibs-experimental') install='kdelibs.install' source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2" 'kde-applications-menu.patch' 'archlinux-menu.patch' - 'abs-syntax-highlight.patch') + 'abs-syntax-highlight.patch' + 'fix-lineedit-clear-button.patch' + 'fix-lineedit-completion-tab.patch') sha1sums=('9bb948769a3a5d4d5b6c65e84a8cf570bd7bc120' '86ee8c8660f19de8141ac99cd6943964d97a1ed7' '63a850ab4196b9d06934f2b4a13acd9f7739bc67' - 'd994f262356af5b9e4e9619646e471bd98c91efb') + 'd994f262356af5b9e4e9619646e471bd98c91efb' + '3deae3fc6733624759ad8bf5a1560d9a2f792d73' + 'a5f223b61499fa03043def0b3a45b1712cc72d70') build() { cd ${srcdir}/${pkgname}-${pkgver} @@ -36,6 +40,10 @@ build() { # add syntax highlightning for PKGBUILD and .install files patch -p1 -i $srcdir/abs-syntax-highlight.patch + # Already fixed upstream + patch -p1 -i "${srcdir}"/fix-lineedit-clear-button.patch + patch -p1 -i "${srcdir}"/fix-lineedit-completion-tab.patch + cd ${srcdir} mkdir build cd build diff --git a/extra/kdelibs/fix-lineedit-clear-button.patch b/extra/kdelibs/fix-lineedit-clear-button.patch new file mode 100644 index 000000000..315892940 --- /dev/null +++ b/extra/kdelibs/fix-lineedit-clear-button.patch @@ -0,0 +1,30 @@ +commit 0b7201c1fe4f12dc7b17abbf19047864d1cca302 +Author: Andrea Iacovitti <aiacovitti@libero.it> +Date: Sat Jul 9 19:51:40 2011 +0200 + + Fix regression about input text clearButton stopping to work on khtml forms + BUG: 246513 + FIXED-IN: 4.7.0 + +diff --git a/kdeui/widgets/klineedit.cpp b/kdeui/widgets/klineedit.cpp +index 7382806..8f1c8a4 100644 +--- a/kdeui/widgets/klineedit.cpp ++++ b/kdeui/widgets/klineedit.cpp +@@ -1116,7 +1116,7 @@ void KLineEdit::mousePressEvent( QMouseEvent* e ) + if ( (e->button() == Qt::LeftButton || + e->button() == Qt::MidButton ) && + d->clearButton ) { +- d->clickInClear = d->clearButton == childAt( e->pos() ); ++ d->clickInClear = ( d->clearButton == childAt(e->pos()) || d->clearButton->underMouse() ); + + if ( d->clickInClear ) { + d->possibleTripleClick = false; +@@ -1145,7 +1145,7 @@ void KLineEdit::mousePressEvent( QMouseEvent* e ) + void KLineEdit::mouseReleaseEvent( QMouseEvent* e ) + { + if ( d->clickInClear ) { +- if ( d->clearButton == childAt( e->pos() ) ) { ++ if ( d->clearButton == childAt(e->pos()) || d->clearButton->underMouse() ) { + QString newText; + if ( e->button() == Qt::MidButton ) { + newText = QApplication::clipboard()->text( QClipboard::Selection ); diff --git a/extra/kdelibs/fix-lineedit-completion-tab.patch b/extra/kdelibs/fix-lineedit-completion-tab.patch new file mode 100644 index 000000000..0c88dffc9 --- /dev/null +++ b/extra/kdelibs/fix-lineedit-completion-tab.patch @@ -0,0 +1,56 @@ +--- kdelibs/khtml/rendering/render_form.cpp ++++ kdelibs/khtml/rendering/render_form.cpp +@@ -1012,11 +1012,11 @@ + // ----------------------------------------------------------------------------- + + RenderLineEdit::RenderLineEdit(HTMLInputElementImpl *element) +- : RenderFormElement(element) ++ : RenderFormElement(element), m_blockElementUpdates(false) + { + LineEditWidget *edit = new LineEditWidget(element, view(), view()->widget()); + connect(edit,SIGNAL(returnPressed()), this, SLOT(slotReturnPressed())); +- connect(edit,SIGNAL(textEdited(QString)),this,SLOT(slotTextEdited(QString))); ++ connect(edit,SIGNAL(textChanged(QString)),this,SLOT(slotTextChanged(QString))); + + if(element->inputType() == HTMLInputElementImpl::PASSWORD) + edit->setEchoMode( QLineEdit::Password ); +@@ -1142,17 +1142,21 @@ + } + + if (element()->value().string() != widget()->text()) { ++ m_blockElementUpdates = true; + int pos = widget()->cursorPosition(); + widget()->setText(element()->value().string()); + widget()->setCursorPosition(pos); ++ m_blockElementUpdates = false; + } + widget()->setReadOnly(element()->readOnly()); + + RenderFormElement::updateFromElement(); + } + +-void RenderLineEdit::slotTextEdited(const QString &string) ++void RenderLineEdit::slotTextChanged(const QString &string) + { ++ if (m_blockElementUpdates) return; ++ + // don't use setValue here! + element()->m_value = string; + element()->m_unsubmittedFormChange = true; +--- kdelibs/khtml/rendering/render_form.h ++++ kdelibs/khtml/rendering/render_form.h +@@ -282,12 +282,13 @@ + void setSelectionRange(long start, long end); + public Q_SLOTS: + void slotReturnPressed(); +- void slotTextEdited(const QString &string); ++ void slotTextChanged(const QString &string); + protected: + + private: + virtual bool isEditable() const { return true; } + virtual bool canHaveBorder() const { return true; } ++ bool m_blockElementUpdates; + }; + + // ------------------------------------------------------------------------- |