mirror of
https://github.com/Stef-00012/Zipline-Android-App.git
synced 2025-05-11 18:35:58 +02:00
23 lines
No EOL
702 B
TypeScript
23 lines
No EOL
702 B
TypeScript
import { useEffect, useState } from 'react';
|
|
import { Keyboard } from 'react-native';
|
|
|
|
export const useDetectKeyboardOpen = (defaultValue: boolean) => {
|
|
const [isKeyboardOpen, setIsKeyboardOpen] = useState<boolean>(defaultValue);
|
|
|
|
useEffect(() => {
|
|
const keyboardDidShowListener = Keyboard.addListener('keyboardDidShow', () => {
|
|
setIsKeyboardOpen(true);
|
|
});
|
|
|
|
const keyboardDidHideListener = Keyboard.addListener('keyboardDidHide', () => {
|
|
setIsKeyboardOpen(false);
|
|
});
|
|
|
|
return () => {
|
|
keyboardDidShowListener.remove();
|
|
keyboardDidHideListener.remove();
|
|
};
|
|
}, []);
|
|
|
|
return isKeyboardOpen;
|
|
}; |