Marko Nikolić created GUACAMOLE-164:
---------------------------------------

             Summary: guacViewport invalid height calculation
                 Key: GUACAMOLE-164
                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-164
             Project: Guacamole
          Issue Type: Bug
          Components: guacamole-client
    Affects Versions: 0.9.10-incubating
         Environment: chrome firefox
            Reporter: Marko Nikolić


There is a problem when the Guacamole application is not occupying the whole 
window and there are some elements inserted above Guacamole application. The 
issue can be seen in Firefox and possible in other browser, because the 
available height is not calculated in a cross-browser way.

{{guacViewport}} directive calculates browser area height and based on results 
sets height of the viewport. The calculation is made in {{fitVisibleArea()}} 
function, in the following line:

{code:javascript}
var scrollHeight = document.body.scrollHeight;
{code}

However, {{scrollHeight}} does not return same values cross-browser. In Chrome, 
it works as expected (from the Guacamole perspective), but different value is 
returned in Firefox. Different behaviour is not visible when the Guacamole 
client is occupying the whole window, only when there are some elements above.

I have fixed the problem by calculating the height in {{guacViewport}} using 
function from here: 
http://james.padolsey.com/snippets/get-document-height-cross-browser/

{code:javascript}
function getDocHeight() {
    var D = document;
    return Math.max(
        D.body.scrollHeight, D.documentElement.scrollHeight,
        D.body.offsetHeight, D.documentElement.offsetHeight,
        D.body.clientHeight, D.documentElement.clientHeight
    );
}
{code}


Further details on the cross-browser issue can be found here:

http://stackoverflow.com/questions/1145850/how-to-get-height-of-entire-document-with-javascript
http://james.padolsey.com/snippets/get-document-height-cross-browser/




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to