diff --git a/src/ViewerCore.tsx b/src/ViewerCore.tsx index b01364e8..7efb8536 100644 --- a/src/ViewerCore.tsx +++ b/src/ViewerCore.tsx @@ -106,7 +106,7 @@ export default (props: ViewerProps) => { }; } const containerSize = React.useRef(setContainerWidthHeight()); - const footerHeight = constants.FOOTER_HEIGHT; + const footerHeight = props.noFooter ? 0 : constants.FOOTER_HEIGHT; function reducer(s: ViewerCoreState, action): typeof initialState { switch (action.type) { case ACTION_TYPES.setVisible: diff --git a/src/__tests__/viewer.test.tsx b/src/__tests__/viewer.test.tsx index fd7446dd..0784a78e 100644 --- a/src/__tests__/viewer.test.tsx +++ b/src/__tests__/viewer.test.tsx @@ -239,11 +239,15 @@ describe('Viewer', () => { expect($$('.react-viewer')[0].style.display).toBe('none'); }); - it('render with no footer', () => { + it('does not render or reserve space for the footer', () => { viewerHelper.new({ noFooter: true }); viewerHelper.open(); expect($$('.react-viewer-footer')).toHaveLength(0); + const image = $$('img.react-viewer-image')[0] as HTMLImageElement; + const transform = getTransformValue(image.style.transform); + const imageCenter = parseFloat(transform.translateY) + parseFloat(image.style.height) / 2; + expect(imageCenter).toBeCloseTo(window.innerHeight / 2); }); it('render with no navbar', () => {