Skip to content

Commit 424f4b6

Browse files
🔄 refactor: Improve Webcam component UI and interactions
- Moved Webcam CSS to a new `styles` directory for better organization. - Added `stopCam` function call before starting the camera to prevent errors. - Updated spinner size for better visibility during loading. - Enhanced button styles with hover effects to improve user feedback.
1 parent abeb631 commit 424f4b6

1 file changed

Lines changed: 7 additions & 7 deletions

File tree

‎apps/desktop/src/components/Webcam.tsx‎

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { useEffect, useRef, useState } from "react";
2-
import styles from "../Webcam.module.css"; // Import the styles
2+
import styles from "../styles/Webcam.module.css"; // Import the styles
33
import { RefreshCwIcon, XIcon } from "lucide-react";
44
import { useRecordingContext } from "@/contexts/RecordingContext";
55
import { captureException } from "@sentry/react";
@@ -12,6 +12,7 @@ export const Webcam = ({}): JSX.Element => {
1212
const { selectedCamera, setSelectedCamera } = useRecordingContext();
1313

1414
useEffect(() => {
15+
stopCam();
1516
const startCam = async () => {
1617
if (!selectedCamera) return;
1718
setIsLoading(true);
@@ -84,7 +85,8 @@ export const Webcam = ({}): JSX.Element => {
8485
<>
8586
<MenuBar refreshCamera={refreshCamera} closeCamera={closeCamera} />
8687
<div
87-
className={`${styles.draggableArea} animate-spin top-0 object-cover cursor-move rounded-full h-32 w-32 border-b-4 border-white-600`}
88+
// className={`${styles.draggableArea} animate-spin mx-auto object-cover cursor-move rounded-full h-80 w-80 border-b-4 border-white-600`}
89+
className={`${styles.draggableArea} animate-spin mx-auto object-cover cursor-move rounded-full h-64 w-64 border-b-4 border-white-600`}
8890
/>
8991
</>
9092
);
@@ -104,19 +106,17 @@ export const Webcam = ({}): JSX.Element => {
104106
const MenuBar = ({ refreshCamera, closeCamera }: any) => {
105107
return (
106108
<div className={`${styles.notDraggable} space-x-4 h-8`}>
107-
<div
108-
className="top-0 right-0 mb-8 mr-8 flex justify-center items-center"
109-
>
109+
<div className="top-0 right-0 mb-8 flex justify-center items-center">
110110
<>
111111
<button
112112
onClick={refreshCamera}
113-
className="flex items-center justify-center p-2 bg-gray-900 rounded-lg cursor-pointer"
113+
className="flex items-center justify-center p-2 bg-gray-900 rounded-lg cursor-pointer hover:bg-gray-800"
114114
>
115115
<RefreshCwIcon className="w-4 h-4 text-gray-200" />
116116
</button>
117117
<button
118118
onClick={closeCamera}
119-
className="flex items-center justify-center p-2 bg-gray-900 rounded-lg cursor-pointer"
119+
className="flex items-center justify-center p-2 bg-gray-900 rounded-lg cursor-pointer hover:bg-gray-800"
120120
>
121121
<XIcon className="w-4 h-4 text-gray-200" />
122122
</button>

0 commit comments

Comments
 (0)