Merge pull request #511 from Stremio/fix-PWA

refactor: usePWA
This commit is contained in:
Tim 2023-11-23 11:02:35 +01:00 committed by GitHub
commit 39bdfba41d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 5 deletions

View file

@ -18,7 +18,7 @@ const HorizontalNavBar = React.memo(({ className, route, query, title, backButto
window.history.back(); window.history.back();
}, []); }, []);
const [fullscreen, requestFullscreen, exitFullscreen] = useFullscreen(); const [fullscreen, requestFullscreen, exitFullscreen] = useFullscreen();
const isPWA = usePWA(); const [isIOSPWA] = usePWA();
const renderNavMenuLabel = React.useCallback(({ ref, className, onClick, children, }) => ( const renderNavMenuLabel = React.useCallback(({ ref, className, onClick, children, }) => (
<Button ref={ref} className={classnames(className, styles['button-container'], styles['menu-button-container'])} tabIndex={-1} onClick={onClick}> <Button ref={ref} className={classnames(className, styles['button-container'], styles['menu-button-container'])} tabIndex={-1} onClick={onClick}>
<Icon className={styles['icon']} name={'person-outline'} /> <Icon className={styles['icon']} name={'person-outline'} />
@ -63,7 +63,7 @@ const HorizontalNavBar = React.memo(({ className, route, query, title, backButto
null null
} }
{ {
!isPWA && fullscreenButton ? !isIOSPWA && fullscreenButton ?
<Button className={styles['button-container']} title={fullscreen ? t('EXIT_FULLSCREEN') : t('ENTER_FULLSCREEN')} tabIndex={-1} onClick={fullscreen ? exitFullscreen : requestFullscreen}> <Button className={styles['button-container']} title={fullscreen ? t('EXIT_FULLSCREEN') : t('ENTER_FULLSCREEN')} tabIndex={-1} onClick={fullscreen ? exitFullscreen : requestFullscreen}>
<Icon className={styles['icon']} name={fullscreen ? 'minimize' : 'maximize'} /> <Icon className={styles['icon']} name={fullscreen ? 'minimize' : 'maximize'} />
</Button> </Button>

View file

@ -20,7 +20,7 @@ const NavMenuContent = ({ onClick }) => {
const profile = useProfile(); const profile = useProfile();
const { createTorrentFromMagnet } = useTorrent(); const { createTorrentFromMagnet } = useTorrent();
const [fullscreen, requestFullscreen, exitFullscreen] = useFullscreen(); const [fullscreen, requestFullscreen, exitFullscreen] = useFullscreen();
const isPWA = usePWA(); const [isIOSPWA, isAndroidPWA] = usePWA();
const logoutButtonOnClick = React.useCallback(() => { const logoutButtonOnClick = React.useCallback(() => {
core.transport.dispatch({ core.transport.dispatch({
action: 'Ctx', action: 'Ctx',
@ -62,7 +62,7 @@ const NavMenuContent = ({ onClick }) => {
</div> </div>
</div> </div>
{ {
!isPWA ? !isIOSPWA && !isAndroidPWA ?
<div className={styles['nav-menu-section']}> <div className={styles['nav-menu-section']}>
<Button className={styles['nav-menu-option-container']} title={fullscreen ? t('EXIT_FULLSCREEN') : t('ENTER_FULLSCREEN')} onClick={fullscreen ? exitFullscreen : requestFullscreen}> <Button className={styles['nav-menu-option-container']} title={fullscreen ? t('EXIT_FULLSCREEN') : t('ENTER_FULLSCREEN')} onClick={fullscreen ? exitFullscreen : requestFullscreen}>
<Icon className={styles['icon']} name={fullscreen ? 'minimize' : 'maximize'} /> <Icon className={styles['icon']} name={fullscreen ? 'minimize' : 'maximize'} />

View file

@ -6,7 +6,7 @@ const usePWA = () => {
const isPWA = React.useMemo(() => { const isPWA = React.useMemo(() => {
const isIOSPWA = window.navigator.standalone; const isIOSPWA = window.navigator.standalone;
const isAndroidPWA = window.matchMedia('(display-mode: standalone)').matches; const isAndroidPWA = window.matchMedia('(display-mode: standalone)').matches;
return isIOSPWA || isAndroidPWA; return [isIOSPWA, isAndroidPWA];
}, []); }, []);
return isPWA; return isPWA;
}; };