equal
deleted
inserted
replaced
207 disconnect(mMainWindow, SIGNAL(viewReady()), this, SLOT(deleteOldView())); |
207 disconnect(mMainWindow, SIGNAL(viewReady()), this, SLOT(deleteOldView())); |
208 |
208 |
209 if (mOldView) |
209 if (mOldView) |
210 { |
210 { |
211 mOldView->deactivate(); |
211 mOldView->deactivate(); |
212 |
212 |
213 // Due to something strange in wk16, this check will fail occationally and cause |
213 mMainWindow->removeView(mOldView->view()); |
214 // a memory leak... most likely when opening edit view for the first time |
214 |
215 if (mCurrent == NULL || !mOldView->view()->isVisible()) |
215 if (!mOldView->isDefault()) |
216 { |
216 { |
217 mMainWindow->removeView(mOldView->view()); |
217 delete mOldView; |
218 |
218 mOldView = NULL; |
219 if (!mOldView->isDefault()) |
219 } |
220 { |
220 // If view id is not in defaults list, it means that view has changed |
221 delete mOldView; |
221 // its opinnion about preserving state to true. |
222 mOldView = NULL; |
222 else if ( !mDefaults.contains(mOldView->viewId()) ) |
223 } |
223 { |
224 // If view id is not in defaults list, it means that view has changed |
224 mDefaults.insert( mOldView->viewId(), mOldView ); |
225 // its opinnion about preserving state to true. |
|
226 else if ( !mDefaults.contains(mOldView->viewId()) ) |
|
227 { |
|
228 mDefaults.insert( mOldView->viewId(), mOldView ); |
|
229 } |
|
230 } |
225 } |
231 } |
226 } |
232 |
227 |
233 mMainWindow->setInteractive(true); |
228 mMainWindow->setInteractive(true); |
234 |
229 |