diff options
Diffstat (limited to 'content_scripts/vimium_frontend.coffee')
| -rw-r--r-- | content_scripts/vimium_frontend.coffee | 11 | 
1 files changed, 8 insertions, 3 deletions
| diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee index 02bdfa2c..4f2e805d 100644 --- a/content_scripts/vimium_frontend.coffee +++ b/content_scripts/vimium_frontend.coffee @@ -160,9 +160,14 @@ installModes = ->  initializeOnEnabledStateKnown = (isEnabledForUrl) ->    installModes() unless normalMode    if isEnabledForUrl -    # We only initialize (and activate) the Vomnibar in the top frame.  Also, we do not initialize the -    # Vomnibar until we know that Vimium is enabled.  Thereafter, there's no more initialization to do. -    DomUtils.documentComplete Vomnibar.init.bind Vomnibar if DomUtils.isTopFrame() +    unless Utils.isFirefox() and document.documentElement.namespaceURI != "http://www.w3.org/1999/xhtml" +      # We only initialize (and activate) the Vomnibar in the top frame.  Also, we do not initialize the +      # Vomnibar until we know that Vimium is enabled.  Thereafter, there's no more initialization to do. +      # +      # NOTE(mrmr1993): In XML documents on Firefox, injecting HTML into the DOM breaks the rendering, so we +      # lazy load the Vomnibar. This comes with the expected issues, but is better than breaking all XML +      # documents. +      DomUtils.documentComplete Vomnibar.init.bind Vomnibar if DomUtils.isTopFrame()      initializeOnEnabledStateKnown = ->  # | 
