rpms/kdelibs4/F-8 kdelibs-4.1.1-kde#157789.patch, NONE, 1.1 kdelibs-4.1.1-kde#858795-mimeassoc.patch, NONE, 1.1 kdelibs-4.1.1-kde#860005-emoticons.patch, NONE, 1.1 kdelibs-4.1.1-kde#860095-khtml-scroll-crash.patch, NONE, 1.1 kdelibs-4.1.1-kdelibs-4.1.1-kde#170461-khtml-regression.patch, NONE, 1.1 kdelibs4.spec, 1.35, 1.36 kdelibs-4.1.1-bz#461725-regression.patch, 1.1, NONE
Kevin Kofler
kkofler at fedoraproject.org
Fri Sep 19 00:54:54 UTC 2008
Author: kkofler
Update of /cvs/pkgs/rpms/kdelibs4/F-8
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv26242/F-8
Modified Files:
kdelibs4.spec
Added Files:
kdelibs-4.1.1-kde#157789.patch
kdelibs-4.1.1-kde#858795-mimeassoc.patch
kdelibs-4.1.1-kde#860005-emoticons.patch
kdelibs-4.1.1-kde#860095-khtml-scroll-crash.patch
kdelibs-4.1.1-kdelibs-4.1.1-kde#170461-khtml-regression.patch
Removed Files:
kdelibs-4.1.1-bz#461725-regression.patch
Log Message:
Sync from kdelibs/F-9:
* Fri Sep 19 2008 Kevin Kofler <Kevin at tigcc.ticalc.org> 4.1.1-12
- make "Stop Animations" work again in Konqueror (KDE 4 regression kde#157789)
* Thu Sep 18 2008 Than Ngo <than at redhat.com> 4.1.1-11
- apply upstream patch to fix the regression
- drop the kdelibs-4.1.1-bz#461725-regression.patch
* Thu Sep 18 2008 Lukáš Tinkl <ltinkl at redhat.com> 4.1.1-10
- Fix file association bug, the global mimeapps.list file had priority
over the local one.
- khtml scroll crash fix (kdebug:170880)
- Don't eat text when the emoticons were not installed. This fixes
mail text not being displayed in KMail when kdebase-runtime wasn't
installed.
kdelibs-4.1.1-kde#157789.patch:
--- NEW FILE kdelibs-4.1.1-kde#157789.patch ---
diff -ur kdelibs-4.1.1/khtml/imload/animprovider.cpp kdelibs-4.1.1-kde#157789/khtml/imload/animprovider.cpp
--- kdelibs-4.1.1/khtml/imload/animprovider.cpp 2008-05-21 13:06:09.000000000 +0200
+++ kdelibs-4.1.1-kde#157789/khtml/imload/animprovider.cpp 2008-09-19 01:00:47.000000000 +0200
@@ -38,6 +38,8 @@
void AnimProvider::switchFrame()
{
+ if (animationAdvice == KHTMLSettings::KAnimationDisabled)
+ return;
shouldSwitchFrame = true;
image->notifyPerformUpdate();
}
@@ -47,6 +49,11 @@
ImageManager::animTimer()->destroyed(this);
}
+void AnimProvider::setShowAnimations(KHTMLSettings::KAnimationAdvice newAdvice)
+{
+ animationAdvice = newAdvice;
+}
+
}
// kate: indent-width 4; replace-tabs on; tab-width 4; space-indent on;
diff -ur kdelibs-4.1.1/khtml/imload/animprovider.h kdelibs-4.1.1-kde#157789/khtml/imload/animprovider.h
--- kdelibs-4.1.1/khtml/imload/animprovider.h 2008-05-21 13:06:09.000000000 +0200
+++ kdelibs-4.1.1-kde#157789/khtml/imload/animprovider.h 2008-09-19 01:04:49.000000000 +0200
@@ -25,6 +25,8 @@
#ifndef ANIM_PROVIDER_H
#define ANIM_PROVIDER_H
+#include <khtml_settings.h>
+
class QPainter;
namespace khtmlImLoad {
@@ -44,11 +46,13 @@
PixmapPlane* curFrame;
Image* image;
bool shouldSwitchFrame; //Set by AnimTimer
+ KHTMLSettings::KAnimationAdvice animationAdvice;
void nextFrame(); //Helper that goes to next frame or wraps around
public:
AnimProvider(PixmapPlane* plane, Image* img):frame0(plane), curFrame(plane),
- image(img), shouldSwitchFrame(false)
+ image(img), shouldSwitchFrame(false),
+ animationAdvice(KHTMLSettings::KAnimationEnabled)
{}
void switchFrame();
@@ -62,6 +66,11 @@
//Must be implemented to paint the given region. Note that clipping to the
//overall canvas will be performed already
virtual void paint(int dx, int dy, QPainter* p, int sx, int sy, int width, int height) = 0;
+
+ /**
+ Enables or disables animations
+ */
+ void setShowAnimations(KHTMLSettings::KAnimationAdvice);
};
}
diff -ur kdelibs-4.1.1/khtml/imload/decoders/gifloader.cpp kdelibs-4.1.1-kde#157789/khtml/imload/decoders/gifloader.cpp
--- kdelibs-4.1.1/khtml/imload/decoders/gifloader.cpp 2008-05-21 13:06:09.000000000 +0200
+++ kdelibs-4.1.1-kde#157789/khtml/imload/decoders/gifloader.cpp 2008-09-19 01:00:59.000000000 +0200
@@ -212,7 +212,11 @@
++frame;
if (frame >= frameInfo.size())
+ {
+ if (animationAdvice == KHTMLSettings::KAnimationLoopOnce)
+ animationAdvice = KHTMLSettings::KAnimationDisabled;
frame = 0;
+ }
nextFrame();
}
diff -ur kdelibs-4.1.1/khtml/imload/image.cpp kdelibs-4.1.1-kde#157789/khtml/imload/image.cpp
--- kdelibs-4.1.1/khtml/imload/image.cpp 2008-05-21 13:06:09.000000000 +0200
+++ kdelibs-4.1.1-kde#157789/khtml/imload/image.cpp 2008-09-19 02:20:03.000000000 +0200
@@ -48,6 +48,7 @@
inError = false;
width = height = 0;
+ animationAdvice = KHTMLSettings::KAnimationEnabled;
noUpdates();
}
@@ -214,6 +215,9 @@
}
else
{
+ if (original && original->animProvider)
+ original->animProvider->setShowAnimations(animationAdvice);
+
fullyDecoded = true;
owner->imageDone(this);
}
@@ -452,6 +456,16 @@
return original->parent->format.hasAlpha();
}
+void Image::setShowAnimations(KHTMLSettings::KAnimationAdvice newAdvice)
+{
+ if (animationAdvice != newAdvice)
+ {
+ animationAdvice = newAdvice;
+ if (original && original->animProvider)
+ original->animProvider->setShowAnimations(newAdvice);
+ }
+}
+
}
// kate: indent-width 4; replace-tabs on; tab-width 4; space-indent on;
diff -ur kdelibs-4.1.1/khtml/imload/image.h kdelibs-4.1.1-kde#157789/khtml/imload/image.h
--- kdelibs-4.1.1/khtml/imload/image.h 2008-05-21 13:06:09.000000000 +0200
+++ kdelibs-4.1.1-kde#157789/khtml/imload/image.h 2008-09-19 01:09:46.000000000 +0200
@@ -30,6 +30,8 @@
#include <QTimer>
#include <QPair>
#include <QMap>
+
+#include <khtml_settings.h>
#include "imageformat.h"
@@ -92,6 +94,11 @@
(but see CanvasImage)
*/
QImage* qimage() const;
+
+ /**
+ Enables or disables animations
+ */
+ void setShowAnimations(KHTMLSettings::KAnimationAdvice);
private:
//Interface to the loader.
friend class ImageLoader;
@@ -165,6 +172,7 @@
int width, height;
PixmapPlane* original;
QMap<QPair<int, int>, PixmapPlane*> scaled;
+ KHTMLSettings::KAnimationAdvice animationAdvice;
};
diff -ur kdelibs-4.1.1/khtml/misc/loader.cpp kdelibs-4.1.1-kde#157789/khtml/misc/loader.cpp
--- kdelibs-4.1.1/khtml/misc/loader.cpp 2008-08-28 10:08:06.000000000 +0200
+++ kdelibs-4.1.1-kde#157789/khtml/misc/loader.cpp 2008-09-19 01:03:07.000000000 +0200
@@ -422,7 +422,7 @@
m_status = Unknown;
imgSource = 0;
setAccept( acceptHeader );
- m_showAnimations = dl->showAnimations();
+ i->setShowAnimations(dl->showAnimations());
m_loading = true;
if ( KHTMLGlobal::defaultHTMLSettings()->isAdFiltered( url.string() ) ) {
@@ -807,30 +807,8 @@
void CachedImage::setShowAnimations( KHTMLSettings::KAnimationAdvice showAnimations )
{
- (void) showAnimations;
-#if 0
- m_showAnimations = showAnimations;
- if ( (m_showAnimations == KHTMLSettings::KAnimationDisabled) && imgSource ) {
-#ifdef __GNUC__
-#warning QDataSource
-#endif
- // imgSource->cleanBuffer();
- delete p;
- p = new QPixmap(m->framePixmap());
-#ifdef __GNUC__
-#warning QMovie requires different API now
-#endif
- //m->disconnectUpdate( this, SLOT( movieUpdated( const QRect &) ));
- //m->disconnectStatus( this, SLOT( movieStatus( int ) ));
- // m->disconnectResize( this, SLOT( movieResize( const QSize& ) ) );
- QTimer::singleShot(0, this, SLOT( deleteMovie()));
- imgSource = 0;
- }
-#endif
-
-#ifdef __GNUC__
-#warning "Use largeimagelib to disable animation"
-#endif
+ if (i)
+ i->setShowAnimations(showAnimations);
}
// void CachedImage::deleteMovie()
diff -ur kdelibs-4.1.1/khtml/misc/loader.h kdelibs-4.1.1-kde#157789/khtml/misc/loader.h
--- kdelibs-4.1.1/khtml/misc/loader.h 2008-05-21 13:05:54.000000000 +0200
+++ kdelibs-4.1.1-kde#157789/khtml/misc/loader.h 2008-09-19 02:15:41.000000000 +0200
@@ -363,7 +363,6 @@
bool typeChecked : 1;
bool isFullyTransparent : 1;
bool monochrome : 1;
- KHTMLSettings::KAnimationAdvice m_showAnimations : 2;
friend class Cache;
friend class ::KHTMLPart;
kdelibs-4.1.1-kde#858795-mimeassoc.patch:
--- NEW FILE kdelibs-4.1.1-kde#858795-mimeassoc.patch ---
Index: kded/kmimeassociations.cpp
===================================================================
--- kded/kmimeassociations.cpp (revision 858794)
+++ kded/kmimeassociations.cpp (revision 858795)
@@ -62,7 +62,7 @@
const QString mimeappsFile = mimeappsIter.previous();
kDebug(7021) << "Parsing" << mimeappsFile;
parseMimeAppsList(mimeappsFile, basePreference);
- basePreference -= 50;
+ basePreference += 50;
}
return true;
}
kdelibs-4.1.1-kde#860005-emoticons.patch:
--- NEW FILE kdelibs-4.1.1-kde#860005-emoticons.patch ---
Index: kutils/kemoticons/kemoticonstheme.cpp
===================================================================
--- kutils/kemoticons/kemoticonstheme.cpp (revision 860004)
+++ kutils/kemoticons/kemoticonstheme.cpp (revision 860005)
@@ -161,6 +161,9 @@
QString KEmoticonsTheme::parseEmoticons(const QString &text, ParseMode mode, const QStringList &exclude) const
{
QList<Token> tokens = tokenize(text, mode | SkipHTML);
+ if (tokens.isEmpty() && !text.isEmpty())
+ return text;
+
QString result;
foreach(const Token &token , tokens) {
kdelibs-4.1.1-kde#860095-khtml-scroll-crash.patch:
--- NEW FILE kdelibs-4.1.1-kde#860095-khtml-scroll-crash.patch ---
Index: khtml/rendering/render_layer.cpp
===================================================================
--- khtml/rendering/render_layer.cpp (revision 860094)
+++ khtml/rendering/render_layer.cpp (revision 860095)
@@ -715,9 +715,6 @@
for (RenderLayer* child = firstChild(); child; child = child->nextSibling())
child->updateLayerPositions(rootLayer);
- // Fire the scroll DOM event.
- m_object->element()->dispatchHTMLEvent(EventImpl::SCROLL_EVENT, true, false);
-
// Just schedule a full repaint of our object.
if (repaint)
m_object->repaint(RealtimePriority);
@@ -728,6 +725,9 @@
if (m_vBar)
m_vBar->setValue(m_scrollY);
}
+
+ // Fire the scroll DOM event. Do this the very last thing, since the handler may kill us.
+ m_object->element()->dispatchHTMLEvent(EventImpl::SCROLL_EVENT, true, false);
}
void RenderLayer::updateScrollPositionFromScrollbars()
kdelibs-4.1.1-kdelibs-4.1.1-kde#170461-khtml-regression.patch:
--- NEW FILE kdelibs-4.1.1-kdelibs-4.1.1-kde#170461-khtml-regression.patch ---
Index: khtml/ecma/kjs_proxy.h
===================================================================
--- khtml/ecma/kjs_proxy.h (Revision 854182)
+++ khtml/ecma/kjs_proxy.h (Revision 854183)
@@ -62,6 +62,7 @@
virtual KJS::Interpreter *interpreter() = 0;
virtual void setDebugEnabled(bool enabled) = 0;
+ virtual bool debugEnabled() const = 0;
virtual void showDebugWindow(bool show=true) = 0;
virtual bool paused() const = 0;
virtual void dataReceived() = 0;
Index: khtml/ecma/kjs_events.cpp
===================================================================
--- khtml/ecma/kjs_events.cpp (Revision 854182)
+++ khtml/ecma/kjs_events.cpp (Revision 854183)
@@ -62,18 +62,18 @@
void JSEventListener::handleEvent(DOM::Event &evt)
{
-#ifdef KJS_DEBUGGER
- //### This is the wrong place to do this --- we need
- // a more global/general stategy to prevent unwanted event loop recursion issues.
- if (DebugWindow::window() && DebugWindow::window()->inSession())
- return;
-#endif
KHTMLPart *part = qobject_cast<KHTMLPart*>(static_cast<Window*>(win.get())->part());
KJSProxy *proxy = 0L;
if (part)
proxy = part->jScript();
if (proxy && listener && listener->implementsCall()) {
+#ifdef KJS_DEBUGGER
+ //### This is the wrong place to do this --- we need
+ // a more global/general stategy to prevent unwanted event loop recursion issues.
+ if (proxy->debugEnabled() && DebugWindow::window()->inSession())
+ return;
+#endif
ref();
KJS::ScriptInterpreter *interpreter = static_cast<KJS::ScriptInterpreter *>(proxy->interpreter());
Index: khtml/ecma/kjs_proxy.cpp
===================================================================
--- khtml/ecma/kjs_proxy.cpp (Revision 854182)
+++ khtml/ecma/kjs_proxy.cpp (Revision 854183)
@@ -60,6 +60,7 @@
virtual KJS::Interpreter *interpreter();
virtual void setDebugEnabled(bool enabled);
+ virtual bool debugEnabled() const;
virtual void showDebugWindow(bool show=true);
virtual bool paused() const;
virtual void dataReceived();
@@ -279,6 +280,15 @@
#endif
}
+bool KJSProxyImpl::debugEnabled() const
+{
+#ifdef KJS_DEBUGGER
+ return m_debugEnabled;
+#else
+ return false;
+#endif
+}
+
void KJSProxyImpl::showDebugWindow(bool /*show*/)
{
#ifdef KJS_DEBUGGER
Index: kdelibs4.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kdelibs4/F-8/kdelibs4.spec,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- kdelibs4.spec 16 Sep 2008 21:51:15 -0000 1.35
+++ kdelibs4.spec 19 Sep 2008 00:54:53 -0000 1.36
@@ -2,7 +2,7 @@
Summary: K Desktop Environment 4 - Libraries
Version: 4.1.1
-Release: 9%{?dist}
+Release: 12%{?dist}
%if 0%{?fedora} > 8
Name: kdelibs
@@ -80,7 +80,6 @@
# fix running commands in kglobalconfig before KComponentData init (#455130)
Patch19: kdelibs-4.1.0-#455130.patch
Patch20: kdelibs-4.1.1-cmake.patch
-Patch21: kdelibs-4.1.1-bz#461725-regression.patch
## upstream patches
Patch100: kdelibs-4.1.1-kde#169447-khtml-regression.patch
@@ -88,6 +87,14 @@
Patch102: kdelibs-4.1.1-kde#856403-urlnav.patch
Patch103: kdelibs-4.1.1-kutils-fixes.patch
Patch104: kdelibs-4.1.1-kdeui-widgets-fixes.patch
+Patch105: kdelibs-4.1.1-kde#858795-mimeassoc.patch
+Patch106: kdelibs-4.1.1-kde#860095-khtml-scroll-crash.patch
+Patch107: kdelibs-4.1.1-kde#860005-emoticons.patch
+Patch108: kdelibs-4.1.1-kdelibs-4.1.1-kde#170461-khtml-regression.patch
+# make "Stop Animations" work again in Konqueror
+# https://bugs.kde.org/show_bug.cgi?id=157789
+# submitted upstream (attached to above bug report)
+Patch109: kdelibs-4.1.1-kde#157789.patch
BuildRequires: qt4-devel >= 4.4.0
Requires: qt4 >= %{_qt4_version}
@@ -213,7 +220,6 @@
%patch18 -p1 -b .kstandarddirs
%patch19 -p1 -b .#455130
%patch20 -p1 -b .cmake
-%patch21 -p0 -b .bz#461725-regression
## upstream patches
%patch100 -p0 -b .kde#169447-khtml-regression
@@ -221,6 +227,11 @@
%patch102 -p0 -b .kde#856403-urlnav
%patch103 -p0 -b .kutils-fixes
%patch104 -p0 -b .kdeui-widgets-fixes
+%patch105 -p0 -b .kde#858795-mimeassoc
+%patch106 -p0 -b .kde#860095-khtml-scroll-crash
+%patch107 -p0 -b .kde#860005-emoticons
+%patch108 -p0 -b .kde#170461-khtml-regression
+%patch109 -p1 -b .kde#157789
%build
@@ -381,6 +392,21 @@
%changelog
+* Fri Sep 19 2008 Kevin Kofler <Kevin at tigcc.ticalc.org> 4.1.1-12
+- make "Stop Animations" work again in Konqueror (KDE 4 regression kde#157789)
+
+* Thu Sep 18 2008 Than Ngo <than at redhat.com> 4.1.1-11
+- apply upstream patch to fix the regression
+- drop the kdelibs-4.1.1-bz#461725-regression.patch
+
+* Thu Sep 18 2008 Lukáš Tinkl <ltinkl at redhat.com> 4.1.1-10
+- Fix file association bug, the global mimeapps.list file had priority
+ over the local one.
+- khtml scroll crash fix (kdebug:170880)
+- Don't eat text when the emoticons were not installed. This fixes
+ mail text not being displayed in KMail when kdebase-runtime wasn't
+ installed.
+
* Tue Sep 16 2008 Than Ngo <than at redhat.com> 4.1.1-9
- #461725, revert the patch to fix the regression
--- kdelibs-4.1.1-bz#461725-regression.patch DELETED ---
More information about the fedora-extras-commits
mailing list