diff --git a/src/renderer/features/now-playing/components/play-queue-list-controls.tsx b/src/renderer/features/now-playing/components/play-queue-list-controls.tsx
index f4e72d12c..5b2c89cf9 100644
--- a/src/renderer/features/now-playing/components/play-queue-list-controls.tsx
+++ b/src/renderer/features/now-playing/components/play-queue-list-controls.tsx
@@ -16,6 +16,8 @@ import { SearchInput } from '/@/renderer/features/shared/components/search-input
import { useCurrentServer, usePlayerStoreBase } from '/@/renderer/store';
import { hasFeature } from '/@/shared/api/utils';
import { ActionIcon } from '/@/shared/components/action-icon/action-icon';
+import { Box } from '/@/shared/components/box/box';
+import { Divider } from '/@/shared/components/divider/divider';
import { Group } from '/@/shared/components/group/group';
import { ServerFeature } from '/@/shared/types/features-types';
import { ItemListKey, ListDisplayType } from '/@/shared/types/types';
@@ -33,6 +35,52 @@ export const PlayQueueListControls = ({
tableRef,
type,
}: PlayQueueListOptionsProps) => {
+ return (
+
+
+
+
+
+
+
+ handleSearch(e.target.value)}
+ value={searchTerm}
+ />
+
+
+
+
+
+
+ );
+};
+
+const QueuePlaybackIcons = ({ tableRef }: { tableRef: RefObject }) => {
const { t } = useTranslation();
const player = usePlayer();
@@ -52,53 +100,29 @@ export const PlayQueueListControls = ({
};
return (
-
-
-
-
-
-
-
-
- handleSearch(e.target.value)}
- value={searchTerm}
- />
-
-
-
+ <>
+
+
+
+ >
);
};
diff --git a/src/renderer/features/shared/components/search-input.tsx b/src/renderer/features/shared/components/search-input.tsx
index ac5836af6..dedb26b08 100644
--- a/src/renderer/features/shared/components/search-input.tsx
+++ b/src/renderer/features/shared/components/search-input.tsx
@@ -19,6 +19,7 @@ import { useHotkeys } from '/@/shared/hooks/use-hotkeys';
interface SearchInputProps extends TextInputProps {
buttonProps?: Partial;
enableHotkey?: boolean;
+ fillContainer?: boolean;
inputProps?: Partial;
value?: string;
}
@@ -26,6 +27,7 @@ interface SearchInputProps extends TextInputProps {
export const SearchInput = ({
buttonProps,
enableHotkey = true,
+ fillContainer = false,
inputProps,
onChange,
...props
@@ -104,9 +106,17 @@ export const SearchInput = ({
overflow: 'hidden',
position: 'relative',
transition: 'width 0.3s ease-in-out',
- width: shouldExpand ? '200px' : '36px',
+ ...(fillContainer
+ ? {
+ flex: '1 1 0',
+ minWidth: 0,
+ width: shouldExpand ? '100%' : '36px',
+ }
+ : {
+ width: shouldExpand ? '200px' : '36px',
+ }),
}),
- [shouldExpand],
+ [fillContainer, shouldExpand],
);
const buttonStyle: CSSProperties = useMemo(
@@ -135,7 +145,7 @@ export const SearchInput = ({
}
- maw="20dvw"
+ maw={fillContainer ? '100%' : '20dvw'}
{...inputProps}
onBlur={handleBlur}
onChange={onChange}