summaryrefslogtreecommitdiff
authorpaule <paule>2007-01-13 07:03:58 (UTC)
committer paule <paule>2007-01-13 07:03:58 (UTC)
commit75c65c1dc728929f0430b8faf956195657b73311 (patch) (side-by-side diff)
tree52fce1ccec59285e4e887d908b0da3a0431c13d9
parente9768d9a498037195b8ca3bb5155db7419f30e1a (diff)
downloadopie-75c65c1dc728929f0430b8faf956195657b73311.zip
opie-75c65c1dc728929f0430b8faf956195657b73311.tar.gz
opie-75c65c1dc728929f0430b8faf956195657b73311.tar.bz2
Call qApp->processEvents() before deleting dialog objects to avoid crashes (Qt bug?)
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/tinykate/libkate/view/kateview.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/noncore/apps/tinykate/libkate/view/kateview.cpp b/noncore/apps/tinykate/libkate/view/kateview.cpp
index 423634b..c5673a5 100644
--- a/noncore/apps/tinykate/libkate/view/kateview.cpp
+++ b/noncore/apps/tinykate/libkate/view/kateview.cpp
@@ -1888,16 +1888,17 @@ void KateView::find() {
myViewInternal->focusOutEvent(0L);// QT bug ?
if (searchDialog->exec() == QDialog::Accepted) {
kwview_addToStrList(myDoc->searchForList, searchDialog->getSearchFor());
searchFlags = searchDialog->getFlags() | (searchFlags & KateView::sfPrompt);
initSearch(s, searchFlags);
findAgain(s);
}
+ qApp->processEvents();
delete searchDialog;
}
void KateView::replace() {
SearchDialog *searchDialog;
if (isReadOnly()) return;
@@ -1927,16 +1928,17 @@ void KateView::replace() {
if (searchDialog->exec() == QDialog::Accepted) {
// myDoc->recordReset();
kwview_addToStrList(myDoc->searchForList, searchDialog->getSearchFor());
kwview_addToStrList(myDoc->replaceWithList, searchDialog->getReplaceWith());
searchFlags = searchDialog->getFlags();
initSearch(s, searchFlags);
replaceAgain();
}
+ qApp->processEvents();
delete searchDialog;
}
void KateView::gotoLine() {
GotoLineDialog *dlg;
PointStruc cursor;
dlg = new GotoLineDialog(this, myViewInternal->cursor.y + 1, myDoc->numLines());
@@ -1947,16 +1949,17 @@ void KateView::gotoLine() {
cursor.x = 0;
cursor.y = dlg->getLine() - 1;
myDoc->needPreHighlight(cursor.y);
myViewInternal->updateCursor(cursor);
myViewInternal->center();
myViewInternal->updateView(KateView::ufUpdateOnScroll);
myDoc->updateViews(this); //uptade all other views except this one
}
+ qApp->processEvents();
delete dlg;
}
void KateView::initSearch(SConfig &s, int flags) {
s.flags = flags;
s.setPattern(myDoc->searchForList.first());