[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.0/kdelibs/khtml
From: Harri Porten <porten () kde ! org>
Date: 2008-01-16 23:08:51
Message-ID: 1200524931.871243.9191.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 762408 by porten:
Merged revision 761605:
If a frame is an IFrame, always embed its content, do not show a "save or embed
dialog".
Prevents multiple dialogs from popping up when visiting netvibes.com.
Approved by Germain Garand.
M +13 -5 khtml_part.cpp
--- branches/KDE/4.0/kdelibs/khtml/khtml_part.cpp #762407:762408
@@ -4408,7 +4408,7 @@
// Before attempting to load a part, check if the user wants that.
// Many don't like getting ZIP files embedded.
// However we don't want to ask for flash and other plugin things..
- if ( child->m_type != khtml::ChildFrame::Object )
+ if ( child->m_type != khtml::ChildFrame::Object && child->m_type != \
khtml::ChildFrame::IFrame ) {
QString suggestedFileName;
int disposition = 0;
@@ -5374,6 +5374,7 @@
QStringList frameNameLst, frameServiceTypeLst, frameServiceNameLst;
KUrl::List frameURLLst;
QList<QByteArray> frameStateBufferLst;
+ QList<int> frameTypeLst;
ConstFrameIt it = d->m_frames.begin();
const ConstFrameIt end = d->m_frames.end();
@@ -5394,11 +5395,13 @@
(*it)->m_extension->saveState( frameStream );
frameStateBufferLst << state;
+
+ frameTypeLst << int( (*it)->m_type );
}
// Save frame data
stream << (quint32) frameNameLst.count();
- stream << frameNameLst << frameServiceTypeLst << frameServiceNameLst << \
frameURLLst << frameStateBufferLst; + stream << frameNameLst << frameServiceTypeLst \
<< frameServiceNameLst << frameURLLst << frameStateBufferLst << frameTypeLst; \
#ifndef NDEBUG s_saveStateIndentLevel = indentLevel;
#endif
@@ -5410,6 +5413,7 @@
qint32 xOffset, yOffset, wContents, hContents, mWidth, mHeight;
quint32 frameCount;
QStringList frameNames, frameServiceTypes, docState, frameServiceNames;
+ QList<int> frameTypes;
KUrl::List frameURLs;
QList<QByteArray> frameStateBuffers;
QList<int> fSizes;
@@ -5460,7 +5464,7 @@
setPageSecurity( d->m_ssl_in_use ? Encrypted : NotCrypted );
stream >> frameCount >> frameNames >> frameServiceTypes >> frameServiceNames
- >> frameURLs >> frameStateBuffers;
+ >> frameURLs >> frameStateBuffers >> frameTypes;
d->m_bComplete = false;
d->m_bLoadEventEmitted = false;
@@ -5487,8 +5491,9 @@
QStringList::ConstIterator fServiceNameIt = frameServiceNames.begin();
KUrl::List::ConstIterator fURLIt = frameURLs.begin();
QList<QByteArray>::ConstIterator fBufferIt = frameStateBuffers.begin();
+ QList<int>::ConstIterator fFrameTypeIt = frameTypes.begin();
- for (; fIt != fEnd; ++fIt, ++fNameIt, ++fServiceTypeIt, ++fServiceNameIt, \
++fURLIt, ++fBufferIt ) + for (; fIt != fEnd; ++fIt, ++fNameIt, ++fServiceTypeIt, \
++fServiceNameIt, ++fURLIt, ++fBufferIt, ++fFrameTypeIt ) {
khtml::ChildFrame* const child = *fIt;
@@ -5499,6 +5504,7 @@
child->m_bPreloaded = true;
child->m_name = *fNameIt;
child->m_serviceName = *fServiceNameIt;
+ child->m_type = static_cast<khtml::ChildFrame::Type>(*fFrameTypeIt);
processObjectRequest( child, *fURLIt, *fServiceTypeIt );
}
if ( child->m_part )
@@ -5546,13 +5552,15 @@
QStringList::ConstIterator fServiceNameIt = frameServiceNames.begin();
KUrl::List::ConstIterator fURLIt = frameURLs.begin();
QList<QByteArray>::ConstIterator fBufferIt = frameStateBuffers.begin();
+ QList<int>::ConstIterator fFrameTypeIt = frameTypes.begin();
- for (; fNameIt != fNameEnd; ++fNameIt, ++fServiceTypeIt, ++fServiceNameIt, \
++fURLIt, ++fBufferIt ) + for (; fNameIt != fNameEnd; ++fNameIt, ++fServiceTypeIt, \
++fServiceNameIt, ++fURLIt, ++fBufferIt, ++fFrameTypeIt ) {
khtml::ChildFrame* const newChild = new khtml::ChildFrame;
newChild->m_bPreloaded = true;
newChild->m_name = *fNameIt;
newChild->m_serviceName = *fServiceNameIt;
+ newChild->m_type = static_cast<khtml::ChildFrame::Type>(*fFrameTypeIt);
// kDebug( 6050 ) << *fNameIt << " ---- " << *fServiceTypeIt;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic