From e5d29068c722344bcb03c9441aabdf37cda0e1f0 Mon Sep 17 00:00:00 2001 From: zerosoul Date: Tue, 12 Apr 2022 13:12:05 +0800 Subject: [PATCH] chore: emoji picker disorder --- src/common/component/EmojiPicker.js | 34 ++++++++++++++++-------- src/common/component/Send/EmojiPicker.js | 30 +++++---------------- 2 files changed, 29 insertions(+), 35 deletions(-) diff --git a/src/common/component/EmojiPicker.js b/src/common/component/EmojiPicker.js index a51bed5b..97956979 100644 --- a/src/common/component/EmojiPicker.js +++ b/src/common/component/EmojiPicker.js @@ -1,8 +1,8 @@ -// import React from 'react' +import { useState, useEffect } from "react"; // import { NimblePicker } from "emoji-mart"; +import "emoji-mart/css/emoji-mart.css"; import { Picker } from "emoji-mart"; // import data from "emoji-mart/data/"; -import "emoji-mart/css/emoji-mart.css"; import styled from "styled-components"; const StyledWrapper = styled.div` filter: drop-shadow(0px 25px 50px rgba(31, 41, 55, 0.25)); @@ -19,17 +19,29 @@ const StyledWrapper = styled.div` } `; export default function EmojiPicker({ onSelect, ...rest }) { + const [visible, setVisible] = useState(false); + useEffect(() => { + const inter = setTimeout(() => { + setVisible(true); + }, 500); + return () => { + clearTimeout(inter); + }; + }, []); + return ( - + {visible ? ( + + ) : null} ); } diff --git a/src/common/component/Send/EmojiPicker.js b/src/common/component/Send/EmojiPicker.js index da98769d..f3f9d040 100644 --- a/src/common/component/Send/EmojiPicker.js +++ b/src/common/component/Send/EmojiPicker.js @@ -1,8 +1,7 @@ -import { useState } from "react"; +// import { useState } from "react"; import Tippy from "@tippyjs/react"; import styled from "styled-components"; import Tooltip from "../../component/Tooltip"; -import { useKey } from "rooks"; const StyledBtn = styled.button` outline: none; width: fit-content; @@ -18,38 +17,21 @@ import Picker from "../EmojiPicker"; import SmileIcon from "../../../assets/icons/emoji.smile.svg"; export default function EmojiPicker({ selectEmoji }) { - const [visible, setVisible] = useState(false); - useKey( - "Escape", - (evt) => { - evt.preventDefault(); - toggleVisible(); - }, - { - // eventTypes: ["keydown"], - // target: editableRef, - when: visible, - } - ); - const toggleVisible = () => { - console.log("toggle picker"); - setVisible((prev) => !prev); - }; const handleSelect = (emoji) => { selectEmoji(emoji.native); }; return ( - + } > - +