From 93580fab12e115bc7b39fa37c7a0bcb208229800 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Thu, 02 May 2013 03:53:47 -0400
Subject: [PATCH] Fix opened window size on small screens in browsers where height is an innerHeight (eg. Safari)

---
 program/js/app.js |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/program/js/app.js b/program/js/app.js
index 87f2067..962651d 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -1629,13 +1629,17 @@
 
   this.open_window = function(url, width, height)
   {
-    var w = Math.min(width, screen.width - 10),
-      h = Math.min(height, screen.height - 100),
-      l = (screen.width - w) / 2 + (screen.left || 0),
-      t = Math.max(0, (screen.height - h) / 2 + (screen.top || 0) - 20),
+    var dh = (window.outerHeight || 0) - (window.innerHeight || 0),
+      dw = (window.outerWidth || 0) - (window.innerWidth || 0),
+      sh = screen.availHeight || screen.height,
+      sw = screen.availWidth || screen.width,
+      w = Math.min(width, sw),
+      h = Math.min(height, sh),
+      l = Math.max(0, (sw - w) / 2 + (screen.left || 0)),
+      t = Math.max(0, (sh - h) / 2 + (screen.top || 0)),
       wname = 'rcmextwin' + new Date().getTime(),
       extwin = window.open(url + (url.match(/\?/) ? '&' : '?') + '_extwin=1', wname,
-        'width='+w+',height='+h+',top='+t+',left='+l+',resizable=yes,toolbar=no,status=no,location=no');
+        'width='+(w-dw)+',height='+(h-dh)+',top='+t+',left='+l+',resizable=yes,toolbar=no,status=no,location=no');
 
     // write loading... message to empty windows
     if (!url && extwin.document) {

--
Gitblit v1.9.1