Improvements to printing in Firefox

This commit is contained in:
Nathan Gray 2016-04-19 22:45:43 +00:00
parent 8a93fa5068
commit 40cff39e5a
2 changed files with 24 additions and 4 deletions

View File

@ -1885,7 +1885,7 @@ var et2_calendar_timegrid = (function(){ "use strict"; return et2_calendar_view.
{ {
return; return;
} }
// update day widgets // update day widgets
var day_width = (100 / this.day_widgets.length); var day_width = (100 / this.day_widgets.length);
for(var i = 0; i < this.day_widgets.length; i++) 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 // 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)) if (navigator.userAgent.match(/(firefox|safari|iceweasel)/i) && !navigator.userAgent.match(/chrome/i))
{ {
this.scrolling.children().css({ var height = this.scrolling.scrollTop() + this.scrolling.height();
'transform':'translateY(-'+this.scrolling.scrollTop()+'px)', this.scrolling
'overflow': 'visible' // 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 * Reset after printing
*/ */
afterPrint: function() { afterPrint: function() {
this.div.css('maxHeight','');
this.scrolling.children().css({'transform':'', 'overflow':''}); 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); });}).call(this);
et2_register_widget(et2_calendar_timegrid, ["calendar-timegrid"]); et2_register_widget(et2_calendar_timegrid, ["calendar-timegrid"]);

View File

@ -23,6 +23,9 @@
#calendar-view_view > tbody > tr.view_row { #calendar-view_view > tbody > tr.view_row {
page-break-inside: avoid; page-break-inside: avoid;
} }
.calendar_calTimeGrid {
max-height: 18cm;
}
.calendar_calTimeGrid .calendar_calTimeGridScroll { .calendar_calTimeGrid .calendar_calTimeGridScroll {
overflow-y: hidden !important; overflow-y: hidden !important;
} }