diff --git a/calendar/js/et2_widget_timegrid.js b/calendar/js/et2_widget_timegrid.js index 1aa205a411..ea569f4439 100644 --- a/calendar/js/et2_widget_timegrid.js +++ b/calendar/js/et2_widget_timegrid.js @@ -1885,7 +1885,7 @@ var et2_calendar_timegrid = (function(){ "use strict"; return et2_calendar_view. { return; } - + // update day widgets var day_width = (100 / this.day_widgets.length); for(var i = 0; i < this.day_widgets.length; i++) @@ -1902,10 +1902,16 @@ var et2_calendar_timegrid = (function(){ "use strict"; return et2_calendar_view. // Stop Firefox from scrolling the day to the top - this would break printing in Chrome if (navigator.userAgent.match(/(firefox|safari|iceweasel)/i) && !navigator.userAgent.match(/chrome/i)) { - this.scrolling.children().css({ - 'transform':'translateY(-'+this.scrolling.scrollTop()+'px)', - 'overflow': 'visible' + var height = this.scrolling.scrollTop() + this.scrolling.height(); + this.scrolling + // Disable scroll event, or it will recalculate out of view events + .off('scroll') + // Explicitly transform to the correct place + .css({ + 'transform': 'translateY(-'+this.scrolling.scrollTop()+'px)', + 'height': height+'px' }); + this.div.css('height',''); } }, @@ -1913,7 +1919,18 @@ var et2_calendar_timegrid = (function(){ "use strict"; return et2_calendar_view. * Reset after printing */ afterPrint: function() { + this.div.css('maxHeight',''); this.scrolling.children().css({'transform':'', 'overflow':''}); + if (navigator.userAgent.match(/(firefox|safari|iceweasel)/i) && !navigator.userAgent.match(/chrome/i)) + { + this.div.height(this.options.height); + this._resizeTimes(); + this.scrolling + // Re-enable out-of-view formatting on scroll + .on('scroll', jQuery.proxy(this._scroll, this)) + // Remove translation + .css('transform',''); + } } });}).call(this); et2_register_widget(et2_calendar_timegrid, ["calendar-timegrid"]); \ No newline at end of file diff --git a/calendar/templates/default/app.css b/calendar/templates/default/app.css index d6cd1cce96..b08c037045 100644 --- a/calendar/templates/default/app.css +++ b/calendar/templates/default/app.css @@ -23,6 +23,9 @@ #calendar-view_view > tbody > tr.view_row { page-break-inside: avoid; } + .calendar_calTimeGrid { + max-height: 18cm; + } .calendar_calTimeGrid .calendar_calTimeGridScroll { overflow-y: hidden !important; }