                     do msg.hide
                     return
 
-                msgOpts = $.extend {}, m_opts,
-                    message: msgText
+                defaultOpts =
                     type: type
                     events: events[type] ? {}
 
                     hideOnNavigate: type == 'success'
+
+                msgOpts = $.extend {}, m_opts, defaultOpts, responseOpts
 
                 if typeof msgOpts.retry?.allow is 'number'
                     msgOpts.retry.allow--

                    m_opts.errorCount ?= 0
                    m_opts.errorCount += 1

                msgText = @_getMessage(r=old(resp...), m_opts[type + 'Message'])

                if type is 'error' and (xhr?.status == 0 or reason == 'abort')
                    # The request was aborted


                msg.update msgOpts

                if responseOpts
                    # Force the msg box to be rerendered if the page changed:
                    $.globalMessenger()

