https://bugs.documentfoundation.org/show_bug.cgi?id=97102
Bug ID: 97102
Summary: Re-work copy/paste 'orrible extensions dialog code...
Product: LibreOffice
Version: 5.1.0.1 rc
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: medium
Component: Extensions
Assignee: [email protected]
Reporter: [email protected]
There is a chunk of code in:
desktop/source/deployment/gui/dp_gui_dialog2.cxx
with some pretty bad practice on display. There is a large chunk of
cut-and-paste coding between:
IMPL_LINK_NOARG_TYPED(UpdateRequiredDialog, TimeOutHdl, Idle *, void)
and
IMPL_LINK_NOARG_TYPED(ExtMgrDialog, TimeOutHdl, Idle *, void)
And that code itself should -not- be in an idle handler that runs all the time.
Instead we should add an idle task whenever anything changes.
The reason the code is done like this is to avoid needing to take the
SolarMutex in the implementation that updates the progress etc. which is useful
in several cases for UNO components etc.
Anyhow - we should create a new (inside VCL) "ProgressBarAsync" class and
encapsulate this functionality into VCL.
The methods - such as updating the progress %age, and the text etc. should take
effect only asynchronously in an idle handler -but- the idle handler should
only be triggered when some state actually changes =) a new %age, new text etc.
Then we should clean the cut/paste coding out of the above module.
Thanks !
--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs