To comment on the following update, log in, then open the issue:
http://www.openoffice.org/issues/show_bug.cgi?id=107839





------- Additional comments from [email protected] Mon Dec 28 14:53:57 +0000 
2009 -------
AW->CL: Checked. Problem is that there is not really an asychronious loading for
linked graphics (and never was, even in old versions). When a linked graphic is
to be shown, ViewObjectContactOfGraphic::createPrimitive2DSequence uses the
helper impPrepareGraphicWithAsynchroniousLoading (instead of the synchronius
version). Independent from this, the async and the sync version uses
SdrGrafObj::ImpUpdateGraphicLink() to load the linked graphic. This works, but
uses internal stuff which calls SdrGraphicLink::DataChanged(..) which triggers a
SetChanged (correct for model data) which itself triggers a ActionChanged().

That ActionChanged() is triggered during repaint which leads to repaint races.
Besides that the PagePane View has IsSwapAsynchron() set to false, thus forcing
to load all the time anyways. Somehow for some count the loaded swapped linked
graphics get forced to be unloaded again. From that amount (ca. 6, settable as
graphics cache in the tools/settings somewhere) the whole system seems to need
longer and longer to get to an ending state.

The error is that indirectly an invalidate gets triggered during paint. I tried
to move

                        if(rGrafObj.IsLinkedGraphic())
                        {
                                // update graphic link
                                rGrafObj.ImpUpdateGraphicLink();
                        }

from the preparators (impPrepareGraphicWithAsynchroniousLoading and
impPrepareGraphicWithSynchroniousLoading) to
ViewObjectContactOfGraphic::doAsynchGraphicLoading(), thus using
SdrGrafObj::ForceSwapIn() for synchronious load and
SdrGrafObj::ImpUpdateGraphicLink() for asynchronious, but outside paint. This
works better, but such a change is hard to predict.

---------------------------------------------------------------------
Please do not reply to this automatically generated notification from
Issue Tracker. Please log onto the website and enter your comments.
http://qa.openoffice.org/issue_handling/project_issues.html#notification

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to