Resolves: tdf#143643 ensure relayout on undo of insert comment
Change-Id: I732e23b8ff7c17abf4b5b9b7c7964fca6069543c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124685 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
This commit is contained in:
@@ -154,7 +154,8 @@ class SAL_DLLPUBLIC_RTTI SwPostItMgr final : public SfxListener
|
||||
bool LayoutByPage( std::vector<sw::annotation::SwAnnotationWin*> &aVisiblePostItList,
|
||||
const tools::Rectangle& rBorder,
|
||||
tools::Long lNeededHeight);
|
||||
void CheckForRemovedPostIts();
|
||||
// return true if a postit was found to have been removed
|
||||
bool CheckForRemovedPostIts();
|
||||
bool ArrowEnabled(sal_uInt16 aDirection,tools::ULong aPage) const;
|
||||
bool BorderOverPageBorder(tools::ULong aPage) const;
|
||||
bool HasScrollbars() const;
|
||||
|
||||
@@ -237,7 +237,7 @@ SwPostItMgr::~SwPostItMgr()
|
||||
mPages.clear();
|
||||
}
|
||||
|
||||
void SwPostItMgr::CheckForRemovedPostIts()
|
||||
bool SwPostItMgr::CheckForRemovedPostIts()
|
||||
{
|
||||
IDocumentRedlineAccess const& rIDRA(mpWrtShell->getIDocumentRedlineAccess());
|
||||
bool bRemoved = false;
|
||||
@@ -259,7 +259,7 @@ void SwPostItMgr::CheckForRemovedPostIts()
|
||||
}
|
||||
|
||||
if ( !bRemoved )
|
||||
return;
|
||||
return false;
|
||||
|
||||
// make sure that no deleted items remain in page lists
|
||||
// todo: only remove deleted ones?!
|
||||
@@ -269,9 +269,13 @@ void SwPostItMgr::CheckForRemovedPostIts()
|
||||
PrepareView();
|
||||
}
|
||||
else
|
||||
{
|
||||
// if postits are there make sure that page lists are not empty
|
||||
// otherwise sudden paints can cause pain (in BorderOverPageBorder)
|
||||
CalcRects();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
SwSidebarItem* SwPostItMgr::InsertItem(SfxBroadcaster* pItem, bool bCheckExistence, bool bFocus)
|
||||
@@ -369,7 +373,10 @@ void SwPostItMgr::Notify( SfxBroadcaster& rBC, const SfxHint& rHint )
|
||||
{
|
||||
if (!pField)
|
||||
{
|
||||
CheckForRemovedPostIts();
|
||||
const bool bWasRemoved = CheckForRemovedPostIts();
|
||||
// tdf#143643 ensure relayout on undo of insert comment
|
||||
if (bWasRemoved)
|
||||
mbLayout = true;
|
||||
break;
|
||||
}
|
||||
RemoveItem(pField);
|
||||
|
||||
Reference in New Issue
Block a user