[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/3.5/kdelibs
From: David Faure <faure () kde ! org>
Date: 2007-01-10 17:45:35
Message-ID: 1168451135.768681.13585.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 622094 by dfaure:
Fix onchange event in file widget - bug 107455
Patch by Konrad Rzepecki <hannibal@megapolis.pl>. Thanks Konrad!
BUG: 107455
M +6 -0 khtml/rendering/render_form.cpp
M +1 -0 khtml/rendering/render_form.h
M +13 -0 kio/kfile/kurlrequester.cpp
M +1 -0 kio/kfile/kurlrequester.h
--- branches/KDE/3.5/kdelibs/khtml/rendering/render_form.cpp #622093:622094
@@ -771,6 +771,7 @@
connect(w->lineEdit(), SIGNAL(returnPressed()), this, \
SLOT(slotReturnPressed()));
connect(w->lineEdit(), SIGNAL(textChanged(const QString \
&)),this,SLOT(slotTextChanged(const QString &))); + connect(w, \
SIGNAL(urlSelected(const QString &)),this,SLOT(slotUrlSelected(const \
QString &)));
setQWidget(w);
m_haveFocus = false;
@@ -832,6 +833,11 @@
element()->m_value = KURL( widget()->url() ).prettyURL( 0, \
KURL::StripFileProtocol ); }
+void RenderFileButton::slotUrlSelected(const QString &)
+{
+ element()->onChange();
+}
+
void RenderFileButton::select()
{
widget()->lineEdit()->selectAll();
--- branches/KDE/3.5/kdelibs/khtml/rendering/render_form.h #622093:622094
@@ -322,6 +322,7 @@
public slots:
void slotReturnPressed();
void slotTextChanged(const QString &string);
+ void slotUrlSelected(const QString &string);
protected:
virtual void handleFocusOut();
--- branches/KDE/3.5/kdelibs/kio/kfile/kurlrequester.cpp #622093:622094
@@ -22,6 +22,7 @@
#include <qstring.h>
#include <qtooltip.h>
+#include <qapplication.h>
#include <kaccel.h>
#include <kcombobox.h>
@@ -216,6 +217,7 @@
setSpacing( KDialog::spacingHint() );
QWidget *widget = d->combo ? (QWidget*) d->combo : (QWidget*) d->edit;
+ widget->installEventFilter( this );
setFocusProxy( widget );
d->connectSignals( this );
@@ -382,6 +384,17 @@
(static_cast<KURLDragPushButton *>( myButton ))->setURL( u );
}
+bool KURLRequester::eventFilter( QObject *obj, QEvent *ev )
+{
+ if ( ( d->edit == obj ) || ( d->combo == obj ) )
+ {
+ if (( ev->type() == QEvent::FocusIn ) || ( ev->type() == \
QEvent::FocusOut )) + // Forward focusin/focusout events to the \
urlrequester; needed by file form element in khtml + \
QApplication::sendEvent( this, ev ); + }
+ return QWidget::eventFilter( obj, ev );
+}
+
KPushButton * KURLRequester::button() const
{
return myButton;
--- branches/KDE/3.5/kdelibs/kio/kfile/kurlrequester.h #622093:622094
@@ -278,6 +278,7 @@
protected:
virtual void virtual_hook( int id, void* data );
+ bool eventFilter( QObject *obj, QEvent *ev );
private:
class KURLRequesterPrivate;
KURLRequesterPrivate *d;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic