From 951e5a7edf3a3debc3033fb52d614d64780852ab Mon Sep 17 00:00:00 2001 From: Kevin Kofler Date: Tue, 26 Jul 2011 00:22:59 +0200 Subject: [PATCH] * Mon Jul 25 2011 Kevin Kofler 4.6.5-2 - fix KHTML form completion regression (kde#277457, patch by Andrea Iacovitti) --- kdelibs-4.6.5-khtml-kde#277457.patch | 56 ++++++++++++++++++++++++++++ kdelibs.spec | 10 ++++- 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 kdelibs-4.6.5-khtml-kde#277457.patch diff --git a/kdelibs-4.6.5-khtml-kde#277457.patch b/kdelibs-4.6.5-khtml-kde#277457.patch new file mode 100644 index 0000000..0c88dff --- /dev/null +++ b/kdelibs-4.6.5-khtml-kde#277457.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; + }; + + // ------------------------------------------------------------------------- diff --git a/kdelibs.spec b/kdelibs.spec index 7248d39..8049520 100644 --- a/kdelibs.spec +++ b/kdelibs.spec @@ -16,7 +16,7 @@ Summary: KDE Libraries Version: 4.6.5 -Release: 1%{?dist} +Release: 2%{?dist} Name: kdelibs Epoch: 6 @@ -96,6 +96,10 @@ Patch50: kdelibs-4.5.1-knewstuff_gpg2.patch # https://bugs.kde.org/show_bug.cgi?id=269045 # https://git.reviewboard.kde.org/r/101231/ Patch51: kdelibs-4.6.2-uri_mimetypes.patch +# Fix for KHTML form completion regression (kde#277457) from bugs.kde.org +# attachment (patch by Andrea Iacovitti) +# https://bugs.kde.org/show_bug.cgi?id=277457#c2 +Patch52: kdelibs-4.6.5-khtml-kde#277457.patch ## 4.6 upstream # fix docbook-style-xsl borkage @@ -282,6 +286,7 @@ sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanage # upstreamable patches %patch50 -p1 -b .knewstuff_gpg2 %patch51 -p1 -b .uri_mimetypes +%patch52 -p1 -b .khtml-kde#277457 # 4.6 upstream patches %patch101 -p1 -b .kdoctools_docbook @@ -541,6 +546,9 @@ rm -rf %{buildroot} %changelog +* Mon Jul 25 2011 Kevin Kofler 4.6.5-2 +- fix KHTML form completion regression (kde#277457, patch by Andrea Iacovitti) + * Fri Jul 01 2011 Rex Dieter 4.6.5-1 - 4.6.5