After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 694296 - endSessionDialog: don't process response until closed
endSessionDialog: don't process response until closed
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2013-02-20 18:33 UTC by Ray Strode [halfline]
Modified: 2013-02-20 19:17 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
endSessionDialog: don't process response until closed (3.04 KB, patch)
2013-02-20 18:33 UTC, Ray Strode [halfline]
none Details | Review
modalDialog: drop global.get_current_time() arguments to close (6.96 KB, patch)
2013-02-20 18:37 UTC, Ray Strode [halfline]
committed Details | Review
modalDialog: emit 'closed' signal when dialog is closed (2.30 KB, patch)
2013-02-20 18:37 UTC, Ray Strode [halfline]
committed Details | Review
endSessionDialog: don't process response until closed (3.04 KB, patch)
2013-02-20 18:37 UTC, Ray Strode [halfline]
committed Details | Review

Description Ray Strode [halfline] 2013-02-20 18:33:17 UTC
Right now if a user logs out, they are thrown to the login screen
imediately, without even seeing the dialog close.

This commit fades the dialog out before processing the logout.
Comment 1 Ray Strode [halfline] 2013-02-20 18:33:18 UTC
Created attachment 236964 [details] [review]
endSessionDialog: don't process response until closed
Comment 2 Ray Strode [halfline] 2013-02-20 18:35:59 UTC
oops forgot the preliminary patch
Comment 3 Ray Strode [halfline] 2013-02-20 18:37:16 UTC
Created attachment 236967 [details] [review]
modalDialog: drop global.get_current_time() arguments to close

Modal dialogs take an optional timestamp in their close method.
If the timestamp is not passed in, then global.get_current_time()
is used.

Some callers of the close method pass in global.get_current_time()
unnecessarly (since it's the default).

This commit drops the argument for those cases.
Comment 4 Ray Strode [halfline] 2013-02-20 18:37:19 UTC
Created attachment 236968 [details] [review]
modalDialog: emit 'closed' signal when dialog is closed

Opening and closing a modal dialog is not instant. There
is a transition animation involved.  When the dialog is
finished opening, it currently emits the "opened" signal.

When it's finished closing, however, it doesn't emit a
"closed" signal.  This means, there's not a good way to
know when the dialog finishes closing.

This commit adds the "closed" signal.
Comment 5 Ray Strode [halfline] 2013-02-20 18:37:22 UTC
Created attachment 236969 [details] [review]
endSessionDialog: don't process response until closed

Right now if a user logs out, they are thrown to the login screen
imediately, without even seeing the dialog close.

This commit fades the dialog out before processing the logout.
Comment 6 Ray Strode [halfline] 2013-02-20 18:37:39 UTC
(by preliminary i meant prerequisite)
Comment 7 Jasper St. Pierre (not reading bugmail) 2013-02-20 18:43:47 UTC
Review of attachment 236967 [details] [review]:

OK.
Comment 8 Jasper St. Pierre (not reading bugmail) 2013-02-20 18:44:09 UTC
Review of attachment 236968 [details] [review]:

OK.
Comment 9 Ray Strode [halfline] 2013-02-20 19:17:10 UTC
Attachment 236967 [details] pushed as e9f18c6 - modalDialog: drop global.get_current_time() arguments to close
Attachment 236968 [details] pushed as 677cdfd - modalDialog: emit 'closed' signal when dialog is closed
Attachment 236969 [details] pushed as b4b13b0 - endSessionDialog: don't process response until closed