Issue 100060

Summary: sw.SwAccessibleTextFrameView fails
Product: Writer Reporter: mst.ooo
Component: codeAssignee: AOO issues mailing list <issues>
Status: CONFIRMED --- QA Contact:
Severity: Trivial    
Priority: P3 CC: issues
Version: DEV300m42   
Target Milestone: ---   
Hardware: All   
OS: All   
Issue Type: DEFECT Latest Confirmation in: ---
Developer Difficulty: ---

Description mst.ooo 2009-03-09 16:51:11 UTC
the unoapi test sw.SwAccessibleTextFrameView fails (strangely, only on solaris)
with lots of DisposedExceptions.

first document is zoomed to 15%, then to 100%

when zooming to 100%, the accessibility objects created by the test are disposed.

SwView::_SetZoom:
this calculates the old and new VisArea, which are ~90000x70000 and ~13000x13000.
then it first updates the accessibility objects (via SetZoomType) and second the
layout (via ~SwActKontext)

SwRootFrm::CheckViewLayout: called by ~SwActKontext
here the Rects of all layout frames are updated (moved in X direction by -38000)
specifically, the first page had an X offset of 40000 before, 1000 after

SwAccessibleContext::ChildrenScrolled: called by SetZoomType
here the Rect of the frames is compared both with the old VisArea and with the
new VisArea to determine if the frame is scrolled in or out
the objects are disposed here because the Rects are not updated to the new
position yet, and the old X offset (40k) is outside new VisArea (13k) (invalid
comparison)

but simply updating the Rects before calling ChildrenScrolled does not seem a
good idea either, because in that case the Rects comparison with the old VisArea
would be invalid!
Comment 1 Marcus 2017-05-20 11:17:41 UTC
Reset assigne to the default "issues@openoffice.apache.org".