if ( ! url.isEmpty() ) {
KHTMLView* view = m_threadPart->view();
- if( ! m_popup ) {
- m_popup = new QFrame( view, "res_popup", WStyle_Customize | WStyle_NoBorder | WStyle_Tool | WType_TopLevel );
- m_browser = new QTextBrowser( m_popup );
- m_browser->setPaletteBackgroundColor( "yellow" );
- m_browser->setWordWrap( QTextEdit::NoWrap );
- m_browser->setResizePolicy( QScrollView::AutoOne );
- connect( m_threadPart->view(), SIGNAL( leave() ), SLOT( hidePopup() ) );
+ if( m_popup ) {
+ delete m_popup;
}
+ m_popup = new QFrame( view, "res_popup", WStyle_Customize | WStyle_NoBorder | WStyle_Tool | WType_TopLevel );
+ m_browser = new QTextBrowser( m_popup );
+ m_browser->setPaletteBackgroundColor( "yellow" );
+ m_browser->setWordWrap( QTextEdit::NoWrap );
+ m_browser->setResizePolicy( QScrollView::AutoOne );
+ connect( m_threadPart->view(), SIGNAL( leave() ), SLOT( hidePopup() ) );
+
int refNum = 0;
if ( url.at(0) == '#' ) {
refNum = url.mid(1).toInt();
DOM::HTMLDListElement comment_dl = static_cast<DOM::HTMLDListElement>(comments.item( refNum - 1 ));
QString innerHTML = comment_dl.innerHTML().string();
- m_browser->setText( "" );
- m_browser->resizeContents( 1, 1 );
m_browser->setText( innerHTML );
m_browser->resize( m_browser->contentsWidth() + 10, m_browser->contentsHeight() );
-
- m_popup->move( QCursor::pos() + QPoint( 10, 10 ) );
m_popup->adjustSize();
+ QPoint pos = QCursor::pos();
+ pos -= QPoint( 0, m_popup->height() ) + QPoint( -10, 10 );
+ m_popup->move( pos );
+
m_popup->show();
}
} else {