From bce0392240e2b159a0a58def457ff5ae8d511d62 Mon Sep 17 00:00:00 2001 From: talksik Date: Sat, 14 May 2022 10:05:36 -0500 Subject: [PATCH] showing logo and opening up function for overlay --- packages/components/logo/NoTextLogo.tsx | 89 +++++++++++++++++++ .../src/providers/ElectronProvider.tsx | 14 ++- .../tree/protected/terminal/navbar/Navbar.tsx | 17 ++-- 3 files changed, 112 insertions(+), 8 deletions(-) create mode 100644 packages/components/logo/NoTextLogo.tsx diff --git a/packages/components/logo/NoTextLogo.tsx b/packages/components/logo/NoTextLogo.tsx new file mode 100644 index 0000000..45ff40a --- /dev/null +++ b/packages/components/logo/NoTextLogo.tsx @@ -0,0 +1,89 @@ +export type LogoType = 'primary' | 'small'; + +export default function NoTextLogo({ + className, + type, + grayscale = false, +}: { + className?: string; + type?: LogoType; + grayscale?: boolean; +}) { + if (type === 'small') { + return ( + + + + + + ); + } + return ( + + + + + + + + + + + + + + ); +} diff --git a/packages/desktop/src/providers/ElectronProvider.tsx b/packages/desktop/src/providers/ElectronProvider.tsx index a63044c..478dbea 100644 --- a/packages/desktop/src/providers/ElectronProvider.tsx +++ b/packages/desktop/src/providers/ElectronProvider.tsx @@ -1,9 +1,11 @@ -import React, { useContext, useEffect, useState } from 'react'; +import React, { useContext, useEffect, useState, useCallback } from 'react'; import Channels, { DEFAULT_APP_PRESET, Dimensions } from '../electron/constants'; interface IElectronProvider { // pass handlers and current dimensions? desktopMode: DesktopMode; + + handleOpenMainApp?: () => void; } type DesktopMode = 'overlayOnly' | 'mainApp'; @@ -60,7 +62,15 @@ export function ElectronProvider({ children }: { children: React.ReactNode }) { }); }, [setDesktopMode]); - return {children}; + const handleOpenMainApp = useCallback(() => { + setDesktopMode('mainApp'); + }, [setDesktopMode]); + + return ( + + {children} + + ); } export default function useElectron() { diff --git a/packages/desktop/src/tree/protected/terminal/navbar/Navbar.tsx b/packages/desktop/src/tree/protected/terminal/navbar/Navbar.tsx index 9a8942c..3f49b72 100644 --- a/packages/desktop/src/tree/protected/terminal/navbar/Navbar.tsx +++ b/packages/desktop/src/tree/protected/terminal/navbar/Navbar.tsx @@ -6,6 +6,7 @@ import { FaSearch } from 'react-icons/fa'; import useAuth from '../../../../providers/AuthProvider'; import useElectron from '../../../../providers/ElectronProvider'; import useSockets from '../../../../providers/SocketProvider'; +import NoTextLogo from '@nirvana/components/logo/NoTextLogo'; /** * TODO: add in video mode @@ -13,7 +14,7 @@ import useSockets from '../../../../providers/SocketProvider'; */ export default function NavBar() { const { user, handleLogout } = useAuth(); - const { desktopMode } = useElectron(); + const { desktopMode, handleOpenMainApp } = useElectron(); const { handleFlowState } = useSockets(); @@ -104,11 +105,15 @@ export default function NavBar() { className="flex flex-row items-center bg-gray-100 p-4 border-b border-b-gray-200" id="titlebar" > - {/* -
- -
-
*/} +
{ + console.log('opening main app'); + }} + role="presentation" + > + +
{!shouldHideSearch && (