mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 01:59:02 +00:00
Restore parent after buffer reload (#13031)
This commit is contained in:
parent
98eccd1adb
commit
4cfa3488e5
@ -5559,12 +5559,19 @@ Buffer::ReadStatus Buffer::reload()
|
|||||||
docstring const disp_fn = makeDisplayPath(d->filename.absFileName());
|
docstring const disp_fn = makeDisplayPath(d->filename.absFileName());
|
||||||
|
|
||||||
// clear parent. this will get reset if need be.
|
// clear parent. this will get reset if need be.
|
||||||
|
Buffer const * oldparent = d->parent();
|
||||||
d->setParent(nullptr);
|
d->setParent(nullptr);
|
||||||
ReadStatus const status = loadLyXFile();
|
ReadStatus const status = loadLyXFile();
|
||||||
if (status == ReadSuccess) {
|
if (status == ReadSuccess) {
|
||||||
updateBuffer();
|
updateBuffer();
|
||||||
changed(true);
|
changed(true);
|
||||||
updateTitles();
|
updateTitles();
|
||||||
|
// reset parent if this hasn't been done yet
|
||||||
|
// but only if this is still its child (e.g.,
|
||||||
|
// not after the former child has been saved as...)
|
||||||
|
if (!d->parent() && oldparent && oldparent->isFullyLoaded()
|
||||||
|
&& oldparent->isChild(this))
|
||||||
|
d->setParent(oldparent);
|
||||||
markClean();
|
markClean();
|
||||||
message(bformat(_("Document %1$s reloaded."), disp_fn));
|
message(bformat(_("Document %1$s reloaded."), disp_fn));
|
||||||
d->undo_.clear();
|
d->undo_.clear();
|
||||||
|
Loading…
Reference in New Issue
Block a user