diff --git a/spec/app/atom-spec.coffee b/spec/app/atom-spec.coffee index 675443a19..e614a2ff7 100644 --- a/spec/app/atom-spec.coffee +++ b/spec/app/atom-spec.coffee @@ -150,11 +150,13 @@ describe "the `atom` global", -> callbacks = @argsForCall[0][2] @reset() callbacks[labels.indexOf(buttonText)]() + advanceClock 50 atom.sendMessageToBrowserProcess.simulatePathSelection = (path) -> callback = @argsForCall[0][2] @reset() callback(path) + advanceClock 50 it "only presents one native dialog at a time", -> confirmHandler = jasmine.createSpy("confirmHandler") diff --git a/src/app/atom.coffee b/src/app/atom.coffee index 597fb60cb..2e4635c18 100644 --- a/src/app/atom.coffee +++ b/src/app/atom.coffee @@ -131,7 +131,8 @@ _.extend atom, @pendingModals.push([]) # prioritize any modals presented during dismiss callback fn?(args...) @presentingModal = false - @presentModal(fn) if fn = @shiftPendingModal() + if fn = @shiftPendingModal() + _.delay (=> @presentModal(fn)), 50 # let view update before next dialog pushPendingModal: (fn) -> # pendingModals is a stack of queues. enqueue to top of stack.