(core) Improve printing of tables, fix printing of charts, add a browser test.

Summary:
- Include column headers on each page for printing tables.
- Avoid page-breaks inside rows or cards of a card-list.
- Fix printing of charts that did not show up at all before.
- Add a browser test, not great, but somewhat functional.

Test Plan: New test, plus tested manually. Column headers work on Chrome and Firefox (not Safari).

Reviewers: paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D2636
This commit is contained in:
Dmitry S
2020-10-12 16:00:56 -04:00
parent 4d3777578e
commit 5247521cb8
5 changed files with 71 additions and 12 deletions

View File

@@ -15,6 +15,9 @@
.print-widget {
margin: 0px !important;
}
.print-row {
break-inside: avoid;
}
.print-widget .viewsection_title {
display: none !important;
@@ -35,13 +38,6 @@
position: relative !important;
height: max-content !important;
overflow: visible !important;
border-top: 1px solid var(--grist-color-dark-grey);
border-left: 1px solid var(--grist-color-dark-grey);
}
.print-widget .gridview_data_scroll {
position: relative !important;
height: max-content !important;
}
.print-widget .scrolly_outer {
@@ -51,6 +47,21 @@
.print-widget .custom_view {
height: calc(100vh - 24px);
}
.ui-resizable-handle {
display: none !important;
}
}
/*
* The chart div needs to be measured before its relayout() call, and "@media print" is not in
* effect for that measurement, so we temporarily resize the chart for all @media, to a plausible
* size for printing.
*/
.print-widget .chart_container {
width: 6.5in !important;
height: 6.5in !important;
overflow: visible !important;
}
@media not print {