changes to tablet detection and more

This commit is contained in:
ivic00
2024-11-03 18:39:32 +01:00
parent 8f5477bebb
commit 6dc09ee448
8 changed files with 124 additions and 50 deletions

View File

@ -1,4 +1,4 @@
import React from "react";
import React, { useEffect } from "react";
import { Drawer } from "expo-router/drawer";
import { useSignOut } from "@/hooks/firebase/useSignOut";
import {
@ -32,6 +32,9 @@ import {
userSettingsView,
} from "@/components/pages/calendar/atoms";
import FeedbackNavIcon from "@/assets/svgs/FeedbackNavIcon";
import Constants from "expo-constants";
import * as Device from "expo-device";
import { DeviceType } from "expo-device";
export default function TabLayout() {
const { mutateAsync: signOut } = useSignOut();
@ -44,11 +47,11 @@ export default function TabLayout() {
<Drawer
initialRouteName={"index"}
detachInactiveScreens
screenOptions={{
screenOptions={({ navigation }) => ({
headerShown: true,
headerRight: () =>
Constants.isTablet ? (
<ViewSwitch />
Device.deviceType === DeviceType.TABLET ? (
<ViewSwitch navigation={navigation} />
) : (
<></>
),
@ -57,7 +60,7 @@ export default function TabLayout() {
backgroundColor: "#f9f8f7",
height: "100%",
},
}}
})}
drawerContent={(props) => {
return (
<DrawerContentScrollView {...props} style={{}}>

View File

@ -2,7 +2,17 @@ import React from "react";
import CalendarPage from "@/components/pages/calendar/CalendarPage";
import { Constants } from "react-native-ui-lib";
import TabletCalendarPage from "@/components/pages/(tablet_pages)/calendar/TabletCalendarPage";
import { DeviceType } from "expo-device";
import * as Device from "expo-device";
export default function Screen() {
return <>{Constants.isTablet ? <TabletCalendarPage /> : <CalendarPage />}</>;
return (
<>
{Device.deviceType === DeviceType.TABLET ? (
<TabletCalendarPage />
) : (
<CalendarPage />
)}
</>
);
}

View File

@ -10,11 +10,16 @@ import { ToDosContextProvider, useToDosContext } from "@/contexts/ToDosContext";
import { AntDesign } from "@expo/vector-icons";
import { ScrollView } from "react-native-gesture-handler";
import { Button, ButtonSize, View, Text, Constants } from "react-native-ui-lib";
import * as Device from "expo-device";
export default function Screen() {
return (
<ToDosContextProvider>
{Constants.isTablet ? <TabletChoresPage /> : <ToDosPage />}
{Device.deviceType === Device.DeviceType.TABLET ? (
<TabletChoresPage />
) : (
<ToDosPage />
)}
</ToDosContextProvider>
);
}