[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.1/kdelibs/khtml
From: Germain Garand <germain () ebooksfrance ! org>
Date: 2008-10-19 22:33:12
Message-ID: 1224455592.607396.6570.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 873675 by ggarand:
automatically merged revision 869765:
argh. Forgotten files - part of "HTML Frame fixes" commit.
M +14 -48 rendering/render_replaced.cpp
M +0 -6 rendering/render_replaced.h
M +0 -4 rendering/render_table.cpp
M +0 -1 test_regression.cpp
--- branches/KDE/4.1/kdelibs/khtml/rendering/render_replaced.cpp #873674:873675
@@ -194,8 +194,6 @@
assert(!isAnonymous());
m_view = node->document()->view();
m_arena.reset(renderArena());
- m_resizePending = false;
- m_discardResizes = false;
m_needsMask = false;
m_ownsWidget = true;
@@ -262,60 +260,29 @@
w = qMin( w, 2000 );
if (m_widget->width() != w || m_widget->height() != h) {
- if (isRedirectedWidget() && qobject_cast<KHTMLView*>(m_widget)) {
- m_widget->resize( w, h);
- if (!m_widget->isVisible()) {
- // Emission of Resize event is delayed.
- // we have to pre-call KHTMLView::resizeEvent
- // so that viewport size change and subsequent layout update
- // is effective synchronously, which is important for JS.
- // This only work because m_widget is a redirected view,
- // and thus has visibleWidth()/visibleHeight() that mirror this RenderWidget,
- // rather than the effective widget size. - gg.
- QResizeEvent e( QSize(w,h), QSize(m_widget->width(),m_widget->height()));
- static_cast<KHTMLView*>(m_widget)->resizeEvent( &e );
- }
- } else {
- m_resizePending = isRedirectedWidget();
- ref();
- element()->ref();
- QApplication::postEvent( this, new QWidgetResizeEvent( w, h ) );
- element()->deref();
- deref();
- }
- }
+ m_widget->resize( w, h);
+ if (isRedirectedWidget() && qobject_cast<KHTMLView*>(m_widget) && !m_widget->isVisible()) {
+ // Emission of Resize event is delayed.
+ // we have to pre-call KHTMLView::resizeEvent
+ // so that viewport size change and subsequent layout update
+ // is effective synchronously, which is important for JS.
+ // This only work because m_widget is a redirected view,
+ // and thus has visibleWidth()/visibleHeight() that mirror this RenderWidget,
+ // rather than the effective widget size. - gg.
+ QResizeEvent e( QSize(w,h), QSize(m_widget->width(),m_widget->height()));
+ static_cast<KHTMLView*>(m_widget)->resizeEvent( &e );
+ }
+ }
}
-void RenderWidget::cancelPendingResize()
-{
- if (!m_widget)
- return;
- m_discardResizes = true;
- QApplication::sendPostedEvents(this, QWidgetResizeEvent::Type);
- m_discardResizes = false;
-}
-
bool RenderWidget::event( QEvent *e )
{
- if ( m_widget && (e->type() == (QEvent::Type)QWidgetResizeEvent::Type) ) {
- m_resizePending = false;
- if (m_discardResizes)
- return true;
- QWidgetResizeEvent *re = static_cast<QWidgetResizeEvent *>(e);
- m_widget->resize( re->w, re->h );
- repaint();
- }
// eat all events - except if this is a frame (in which case KHTMLView handles it all)
if ( qobject_cast<KHTMLView*>( m_widget ) )
return QObject::event( e );
return true;
}
-void RenderWidget::flushWidgetResizes() //static
-{
- QApplication::sendPostedEvents( 0, QWidgetResizeEvent::Type );
-}
-
bool RenderWidget::isRedirectedWidget() const
{
KHTMLWidget* k = dynamic_cast<KHTMLWidget*>(m_widget);
@@ -372,7 +339,6 @@
m_widget->move(0, -500000);
m_widget->hide();
}
- m_resizePending = false;
}
}
@@ -591,7 +557,7 @@
return;
// not visible or not even once layouted
- if (style()->visibility() != VISIBLE || m_y <= -500000 || m_resizePending )
+ if (style()->visibility() != VISIBLE || m_y <= -500000)
return;
if ( (_ty > paintInfo.r.bottom()) || (_ty + m_height <= paintInfo.r.top()) ||
--- branches/KDE/4.1/kdelibs/khtml/rendering/render_replaced.h #873674:873675
@@ -99,7 +99,6 @@
void deref();
- void cancelPendingResize();
bool needsMask() const { return m_needsMask; }
static void paintWidget(PaintInfo& pI, QWidget *widget, int tx, int ty, QPixmap* buffer[] = 0);
@@ -112,9 +111,6 @@
virtual void dump(QTextStream &stream, const QString &ind) const;
#endif
- // for ECMA to flush all pending resizes
- KHTML_EXPORT static void flushWidgetResizes();
-
public Q_SLOTS:
void slotWidgetDestructed();
@@ -156,8 +152,6 @@
//so it doesn't get yanked from us, etc.
SharedPtr<RenderArena> m_arena;
- bool m_resizePending;
- bool m_discardResizes;
bool m_needsMask;
bool m_ownsWidget;
--- branches/KDE/4.1/kdelibs/khtml/rendering/render_table.cpp #873674:873675
@@ -1556,10 +1556,6 @@
bool didFlex = false;
while (o) {
if (!o->isText() && o->style()->height().isPercent()) {
- if (o->isWidget()) {
- // cancel resizes from transitory relayouts
- static_cast<RenderWidget *>(o)->cancelPendingResize();
- }
o->setNeedsLayout(true, false);
p->setChildNeedsLayout(true, false);
didFlex = true;
--- branches/KDE/4.1/kdelibs/khtml/test_regression.cpp #873674:873675
@@ -340,7 +340,6 @@
void PartMonitor::partCompleted()
{
m_completed = true;
- RenderWidget::flushWidgetResizes();
m_timeout_timer->stop();
connect(m_timeout_timer, SIGNAL(timeout()),this, SLOT( timeout() ) );
m_timeout_timer->setSingleShot(true);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic