arrow icon 수정

This commit is contained in:
고동영
2024-01-31 17:27:02 +09:00
parent b2e4b63138
commit 8280b4a8aa
3 changed files with 15 additions and 21 deletions

View File

@@ -27,11 +27,13 @@ const TabItemBase = ({
isSubItem, isSubItem,
subTitle, subTitle,
showSubTab = false, showSubTab = false,
onFocus,
...rest ...rest
}) => { }) => {
const [focused, setFocused] = useState(false); const [focused, setFocused] = useState(false);
// const [subFocused , setSubFocused] = useState(false) // const [subFocused , setSubFocused] = useState(false)
const [pressed, setPressed] = useState(false); const [pressed, setPressed] = useState(false);
const [changeFocused, setChangeFocused] = useState(false);
const itemRef = useRef(); const itemRef = useRef();
const clearPressedJob = useRef( const clearPressedJob = useRef(
@@ -41,6 +43,8 @@ const TabItemBase = ({
); );
const _onClick = useCallback( const _onClick = useCallback(
(ev) => { (ev) => {
setPressed(true);
setChangeFocused(false);
clearPressedJob.current.start(() => { clearPressedJob.current.start(() => {
if (onClick) { if (onClick) {
onClick({ index, target }); onClick({ index, target });
@@ -51,18 +55,25 @@ const TabItemBase = ({
onClick({ index, target }); onClick({ index, target });
}, },
[target, index, onClick, isSubItem] [target, index, onClick]
); );
useEffect(() => {}, [pressed]); useEffect(() => {}, [pressed]);
const _onFocus = useCallback(() => { const _onFocus = useCallback(() => {
setFocused(true); setFocused(true);
if (onFocus) {
onFocus(index);
}
}, [index]); }, [index]);
const _onBlur = useCallback(() => { const _onBlur = useCallback(() => {
setFocused(false); setFocused(false);
}, [focused]); setPressed(false);
setChangeFocused(true);
clearPressedJob.current.stop();
}, []);
const isDivider = useMemo(() => { const isDivider = useMemo(() => {
return !title; return !title;
@@ -112,7 +123,6 @@ const TabItemBase = ({
className={classNames( className={classNames(
css.tabItem, css.tabItem,
focused && css.focused, focused && css.focused,
pressed && css.pressed,
isSubItem && css.subDepth, isSubItem && css.subDepth,
pressed && css.arrow, pressed && css.arrow,
!isDivider && selected && css.selected !isDivider && selected && css.selected

View File

@@ -25,21 +25,9 @@
margin-left:-30px; margin-left:-30px;
} }
&.pressed {
color: #eee;
background: linear-gradient(to right, #cb1253, #e15ba1);
border-radius: 42px;
width: 402px;
z-index: 1;
margin-left: 30px;
position:relative;
}
&.selected{
// margin-left:0;
}
} }
&.arrow, &.selected { &.arrow {
&::after { &::after {
content: ""; content: "";
.size(@w:36px, @h:36px); .size(@w:36px, @h:36px);

View File

@@ -448,11 +448,7 @@ export default function TabLayout({ topPanelName, onTabActivated }) {
> >
{/* expanded Main */} {/* expanded Main */}
<MainContainer <MainContainer
className={classNames( className={classNames(css.tabWrap, mainExpanded && css.expanded)}
css.tabWrap,
mainExpanded && css.expanded,
css.basicLayout
)}
onFocus={onTabHasFocus(ACTIVATED_MAIN)} onFocus={onTabHasFocus(ACTIVATED_MAIN)}
onMouseOver={onTabHasFocus(COLLABSED_MAIN)} onMouseOver={onTabHasFocus(COLLABSED_MAIN)}
onBlur={onTabBlur(ACTIVATED_MAIN)} onBlur={onTabBlur(ACTIVATED_MAIN)}