Mercurial > hg > mgallery
comparison mgallery.php @ 109:c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
(for example Firefox fullscreen switching animates by default and triggers
LOTS of resize events, which makes things slow.)
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 30 Oct 2016 15:22:03 +0200 |
parents | 71de97240799 |
children | 9da8bab49711 |
comparison
equal
deleted
inserted
replaced
108:417cdd9f8864 | 109:c8cfc6cc161a |
---|---|
702 | 702 |
703 return [winW, winH]; | 703 return [winW, winH]; |
704 } | 704 } |
705 | 705 |
706 | 706 |
707 function mgalAdjustImage() | 707 function mgalAdjustImageDo() |
708 { | 708 { |
709 var eimg = document.getElementById("imageImage"); | 709 var eimg = document.getElementById("imageImage"); |
710 var win = mgalGetWindowSize(); | 710 var win = mgalGetWindowSize(); |
711 var madj = 0.80; | 711 var madj = 0.81; |
712 if (eimg) | 712 if (eimg) |
713 { | 713 { |
714 if (eimg.width > eimg.height) | 714 if (eimg.width > eimg.height) |
715 { | 715 { |
716 eimg.style.width = "100%"; | 716 eimg.style.width = "100%"; |
728 eimg.style.height = (win[1] * madj)+"px"; | 728 eimg.style.height = (win[1] * madj)+"px"; |
729 else | 729 else |
730 eimg.style.height = "100%"; | 730 eimg.style.height = "100%"; |
731 } | 731 } |
732 } | 732 } |
733 } | 733 adjustPID = -1; |
734 | 734 } |
735 | 735 |
736 mgalAddEvent(document.getElementById("imageImage"), "load", mgalAdjustImage); | 736 |
737 function mgalAdjustImage() | |
738 { | |
739 if (adjustPID == -1) | |
740 adjustPID = setTimeout(mgalAdjustImageDo, 500); | |
741 } | |
742 | |
743 | |
744 mgalAddEvent(document.getElementById("imageImage"), "load", mgalAdjustImageDo); | |
737 mgalAddEvent(window, "resize", mgalAdjustImage); | 745 mgalAddEvent(window, "resize", mgalAdjustImage); |
738 mgalAddEvent(document, "keypress", mgalProcessKeyPress); | 746 mgalAddEvent(document, "keypress", mgalProcessKeyPress); |
747 adjustPID = -1; | |
739 | 748 |
740 <? | 749 <? |
741 echo | 750 echo |
742 "</script>\n"; | 751 "</script>\n"; |
743 } | 752 } |