Issue 36294 - Do not start aCloseTimer from PrepareClose()
Summary: Do not start aCloseTimer from PrepareClose()
Status: ACCEPTED
Alias: None
Product: Impress
Classification: Application
Component: code (show other issues)
Version: 680m57
Hardware: All All
: P4 Trivial (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-10-28 15:40 UTC by groucho266
Modified: 2017-05-20 11:08 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description groucho266 2004-10-28 15:40:02 UTC
See issue i34904 for motivation.

Scenario:
1. Java script calls XClosable::close() at an Impress document.
2. Eventually DrawViewShell::PrepareClose() is called from the SfxBaseController
to ask whether it may be closed or not. In the negative case two tasks are executed:
a. PrepareClose() starts the aCloseTimer which eventually calls CloseHdl which
in turn dispatches the SID_CLOSEWIN slot. 
b. PrepareClose() returns 0 which makes the SfxBaseController throw a
CoseVetoException.

Problem:
The asynchronous call of the SID_CLOSEWIN slot leads eventually to the display
of a message box that tells the (nonexistent) user that the document was
modified.  This box blocks the script.

Solution:
According to MBA the two actions a) and b) have to be done by the
SfxBaseController:  the one who throws the exception is responsible for closing
the document.  
To avoid the message box PrepareClose() must not start the aCloseTimer (except
when it is called with TRUE, i.e. not as result of an API call.)

This issue is about not starting the aCloseTimer.
Comment 1 groucho266 2004-10-28 15:46:23 UTC
See issue 36296 for a related task in sfx2.
Comment 2 groucho266 2004-10-28 16:02:15 UTC
With the new presentation engine we can close the slide show synchronously and
thus have no need for a timer anymore.
Comment 3 groucho266 2004-11-26 13:00:43 UTC
Have to wait for CWS presentationengine01 to be integrated (m63).
Comment 4 ooo 2004-12-01 15:21:43 UTC
set to prio4
Comment 5 groucho266 2005-04-11 17:27:52 UTC
Changing target.
Comment 6 groucho266 2005-05-24 14:06:58 UTC
Due to resource constraints I set the target to OOo Later.
Comment 7 Marcus 2017-05-20 11:08:42 UTC
Reset assigne to the default "issues@openoffice.apache.org".