From: Michael Jumper Date: Wed, 1 Aug 2012 18:33:39 +0000 (-0700) Subject: Only take parent into account if actually relevant to positioning. X-Git-Url: http://git.alex.org.uk Only take parent into account if actually relevant to positioning. --- diff --git a/src/main/resources/mouse.js b/src/main/resources/mouse.js index 857cef3..55f99b1 100644 --- a/src/main/resources/mouse.js +++ b/src/main/resources/mouse.js @@ -765,12 +765,15 @@ Guacamole.Mouse.State = function(x, y, left, middle, right, up, down) { parent = parent.offsetParent; } - // Offset by document scroll amount - var documentScrollLeft = document.body.scrollLeft || document.documentElement.scrollLeft; - var documentScrollTop = document.body.scrollTop || document.documentElement.scrollTop; - - guac_state.x -= parent.offsetLeft - documentScrollLeft; - guac_state.y -= parent.offsetTop - documentScrollTop; + // Element ultimately depends on positioning within document body, + // take document scroll into account. + if (parent) { + var documentScrollLeft = document.body.scrollLeft || document.documentElement.scrollLeft; + var documentScrollTop = document.body.scrollTop || document.documentElement.scrollTop; + + guac_state.x -= parent.offsetLeft - documentScrollLeft; + guac_state.y -= parent.offsetTop - documentScrollTop; + } };