diff --git a/__tests__/integration/mirador/basic.test.js b/__tests__/integration/mirador/basic.test.js index 0b7fbbedde365ed6cc3beeee9991482a9134e3e8..16e174dfda7dae0ee9b0cb5a1e0600d82e38c9ae 100644 --- a/__tests__/integration/mirador/basic.test.js +++ b/__tests__/integration/mirador/basic.test.js @@ -8,6 +8,7 @@ describe('Basic end to end Mirador', () => { }); it('loads a manifest and displays it', async () => { await expect(page).toClick('#addBtn'); + await expect(page).toClick('.mirador-add-resource-button'); await expect(page).toFill('#manifestURL', 'http://localhost:5000/api/sn904cj3439'); await expect(page).toClick('#fetchBtn'); await expect(page).toMatchElement('[data-manifestid="http://localhost:5000/api/sn904cj3439"] button'); diff --git a/__tests__/integration/mirador/embedding.html b/__tests__/integration/mirador/embedding.html index e37a484d7c0a8f443c89f9dfe573e07ef8e2c978..8b00ffc077dbaa6c154455db385658f505aca5c7 100644 --- a/__tests__/integration/mirador/embedding.html +++ b/__tests__/integration/mirador/embedding.html @@ -18,6 +18,9 @@ width: 800px; height: 600px; } + .mirador-app { + border: 2px solid black; + } </style> <title>Mirador</title> </head> diff --git a/__tests__/integration/mirador/invalid-api-response.test.js b/__tests__/integration/mirador/invalid-api-response.test.js index 4cec574815a8ae86f09e7b1fa10c88c012c8b812..e89638524847f9379475517174322d55467bf6a1 100644 --- a/__tests__/integration/mirador/invalid-api-response.test.js +++ b/__tests__/integration/mirador/invalid-api-response.test.js @@ -4,6 +4,7 @@ describe('Mirador Invalid API Response Handler Test', () => { }); it('breaks Mirador', async () => { await expect(page).toClick('#addBtn'); + await expect(page).toClick('.mirador-add-resource-button'); await expect(page).toFill('#manifestURL', 'http://localhost:5000/invalid'); await expect(page).toClick('#fetchBtn'); await page.waitFor(1000); @@ -17,6 +18,7 @@ describe('Mirador Invalid API Response Handler Test', () => { it('renders an error message when a manifest cannot be loaded (and allows it to be dismissed)', async () => { await expect(page).toClick('#addBtn'); + await expect(page).toClick('.mirador-add-resource-button'); await expect(page).toFill('#manifestURL', 'http://localhost:5000/api/broken'); await expect(page).toClick('#fetchBtn'); diff --git a/__tests__/integration/mirador/plugins.test.js b/__tests__/integration/mirador/plugins.test.js index 775316b86682af357c16229382a6476313d1d747..8816fc2faa87b7c7b9bd491d1870a9ffb4d945e4 100644 --- a/__tests__/integration/mirador/plugins.test.js +++ b/__tests__/integration/mirador/plugins.test.js @@ -4,6 +4,7 @@ describe('Mirador plugin use', () => { beforeAll(async () => { await page.goto('http://127.0.0.1:4488/__tests__/integration/mirador/plugins.html'); await expect(page).toClick('#addBtn'); + await expect(page).toClick('.mirador-add-resource-button'); await expect(page).toFill('#manifestURL', 'http://localhost:5000/api/sn904cj3439'); await expect(page).toClick('#fetchBtn'); diff --git a/__tests__/integration/mirador/window_actions.test.js b/__tests__/integration/mirador/window_actions.test.js index 5d3f1899fec06d2cce6c365200d09df9ba7b243b..d7c892b22f6853cebdedf616975ae43c1d903772 100644 --- a/__tests__/integration/mirador/window_actions.test.js +++ b/__tests__/integration/mirador/window_actions.test.js @@ -4,6 +4,7 @@ describe('Window actions', () => { }); it('opens a window and closes it', async () => { await expect(page).toClick('#addBtn'); + await expect(page).toClick('.mirador-add-resource-button'); await expect(page).toFill('#manifestURL', 'http://localhost:5000/api/sn904cj3439'); await expect(page).toClick('#fetchBtn'); diff --git a/__tests__/integration/mirador/window_sidebar.test.js b/__tests__/integration/mirador/window_sidebar.test.js index 7b82d44ec92bc5926d2848e0903f8ae71c370896..242c5934518fd270b30b63cb8c6f4f15eabeb2f3 100644 --- a/__tests__/integration/mirador/window_sidebar.test.js +++ b/__tests__/integration/mirador/window_sidebar.test.js @@ -5,6 +5,7 @@ describe('Window Sidebars', () => { await page.goto('http://127.0.0.1:4488/__tests__/integration/mirador/'); await expect(page).toClick('#addBtn'); + await expect(page).toClick('.mirador-add-resource-button'); await expect(page).toFill('#manifestURL', 'http://localhost:5000/api/001'); await expect(page).toClick('#fetchBtn'); diff --git a/__tests__/src/components/App.test.js b/__tests__/src/components/App.test.js index 4a9b939663e61883d499bdd2edd2fefe41e1bdeb..deb2fe2d4b423455b673f108f7ae1f149db4e480 100644 --- a/__tests__/src/components/App.test.js +++ b/__tests__/src/components/App.test.js @@ -1,7 +1,7 @@ import React from 'react'; import { shallow } from 'enzyme'; import { MuiThemeProvider } from '@material-ui/core/styles'; -import Fullscreen from 'react-fullscreen-crossbrowser'; +import Fullscreen from 'react-full-screen'; import WorkspaceControlPanel from '../../../src/containers/WorkspaceControlPanel'; import Workspace from '../../../src/containers/Workspace'; import WorkspaceAdd from '../../../src/containers/WorkspaceAdd'; diff --git a/package.json b/package.json index 2e30890ca30358fee9349ff9d5229dff6f098b93..4afbe7b296d5fb4f855525a92c396be3552b7fbc 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "prop-types": "^15.6.2", "react": "^16.8.3", "react-dom": "^16.8.3", - "react-fullscreen-crossbrowser": "^1.0.9", + "react-full-screen": "^0.2.4", "react-i18next": "^10.2.0", "react-mosaic-component": "^2.1.0", "react-placeholder": "^3.0.1", diff --git a/src/components/App.js b/src/components/App.js index 41712e1e7e3316f44d072a5cdfaaa67e11218842..1812413368da323a941e720153bae29ee43ff2ed 100644 --- a/src/components/App.js +++ b/src/components/App.js @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import classNames from 'classnames'; import { MuiThemeProvider, createMuiTheme } from '@material-ui/core/styles'; -import Fullscreen from 'react-fullscreen-crossbrowser'; +import Fullscreen from 'react-full-screen'; import { I18nextProvider } from 'react-i18next'; import WorkspaceControlPanel from '../containers/WorkspaceControlPanel'; import Workspace from '../containers/Workspace'; diff --git a/src/components/WorkspaceAdd.js b/src/components/WorkspaceAdd.js index 5fa01594bc23c04bb818be9a7994d3313f5f8b71..4bd4257ee1e2040c4e41a0bc308968451dfcf14d 100644 --- a/src/components/WorkspaceAdd.js +++ b/src/components/WorkspaceAdd.js @@ -1,5 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; +import classNames from 'classnames'; import AddIcon from '@material-ui/icons/AddSharp'; import ExpandMoreIcon from '@material-ui/icons/ExpandMoreSharp'; import AppBar from '@material-ui/core/AppBar'; @@ -56,12 +57,21 @@ export class WorkspaceAdd extends React.Component { <div className={ns('workspace-add')}> {manifestList} - <Fab variant="extended" disabled={addResourcesOpen} className={classes.fab} color="secondary" onClick={() => (this.setAddResourcesVisibility(true))}> + <Fab + variant="extended" + disabled={addResourcesOpen} + className={classNames(classes.fab, ns('add-resource-button'))} + color="secondary" + onClick={() => (this.setAddResourcesVisibility(true))} + > <AddIcon /> {t('addResource')} </Fab> <Drawer + className={classNames({ + [classes.displayNone]: !addResourcesOpen, + })} variant="persistent" anchor="bottom" open={addResourcesOpen} diff --git a/src/containers/WorkspaceAdd.js b/src/containers/WorkspaceAdd.js index 95eb22480ca373abade048334ba43958ea1fc1f3..6c0d45602ff3bdb6e0c40c110f468b9c773e554f 100644 --- a/src/containers/WorkspaceAdd.js +++ b/src/containers/WorkspaceAdd.js @@ -39,6 +39,9 @@ const styles = theme => ({ bottom: theme.spacing.unit * 2, right: theme.spacing.unit * 2, }, + displayNone: { + display: 'none', + }, typographyBody: { flexGrow: 1, fontSize: '1em', diff --git a/src/containers/WorkspaceControlPanel.js b/src/containers/WorkspaceControlPanel.js index 03fb31567f0c5d4dd4ec0fa1d61111febc60143a..3b83bc9415f541edde5477a4f76ba30fa7dd42e0 100644 --- a/src/containers/WorkspaceControlPanel.js +++ b/src/containers/WorkspaceControlPanel.js @@ -13,7 +13,6 @@ const styles = theme => ({ }, drawer: { overflowX: 'hidden', - height: '100%', }, }); diff --git a/src/styles/index.scss b/src/styles/index.scss index 60c03c799e62218a620bcd7e758537546a9f7101..b7c6a9af4844a6ceff12ffc7e25f82a7db5998f3 100644 --- a/src/styles/index.scss +++ b/src/styles/index.scss @@ -22,7 +22,6 @@ box-sizing: border-box; left: 0; margin: 0; - overflow: scroll; position: absolute; right: 0; top: 0;