aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/src/mui/Portal.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/taler-wallet-webextension/src/mui/Portal.tsx')
-rw-r--r--packages/taler-wallet-webextension/src/mui/Portal.tsx65
1 files changed, 41 insertions, 24 deletions
diff --git a/packages/taler-wallet-webextension/src/mui/Portal.tsx b/packages/taler-wallet-webextension/src/mui/Portal.tsx
index 828a574fd..f9be021f0 100644
--- a/packages/taler-wallet-webextension/src/mui/Portal.tsx
+++ b/packages/taler-wallet-webextension/src/mui/Portal.tsx
@@ -1,3 +1,19 @@
+/*
+ This file is part of GNU Taler
+ (C) 2022 Taler Systems S.A.
+
+ GNU Taler is free software; you can redistribute it and/or modify it under the
+ terms of the GNU General Public License as published by the Free Software
+ Foundation; either version 3, or (at your option) any later version.
+
+ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along with
+ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
+ */
+
import { css } from "@linaria/core";
import { createPortal, forwardRef } from "preact/compat";
import {
@@ -26,7 +42,7 @@ const baseStyle = css`
`;
interface Props {
- class: string;
+ // class: string;
children: ComponentChildren;
disablePortal?: boolean;
container?: VNode;
@@ -39,10 +55,11 @@ export const Portal = forwardRef(function Portal(
const [mountNode, setMountNode] = useState<HTMLElement | undefined>(
undefined,
);
- const handleRef = useForkRef(
- isValidElement(children) ? children.ref : null,
- ref,
- );
+ const handleRef = null;
+ // useForkRef(
+ // isValidElement(children) ? children.ref : null,
+ // ref,
+ // );
useEffect(() => {
if (!disablePortal) {
@@ -81,25 +98,25 @@ function getContainer(container: any): any {
return typeof container === "function" ? container() : container;
}
-function useForkRef<Instance>(
- refA: React.Ref<Instance> | null | undefined,
- refB: React.Ref<Instance> | null | undefined,
-): React.Ref<Instance> | null {
- /**
- * This will create a new function if the ref props change and are defined.
- * This means react will call the old forkRef with `null` and the new forkRef
- * with the ref. Cleanup naturally emerges from this behavior.
- */
- return useMemo(() => {
- if (refA == null && refB == null) {
- return null;
- }
- return (refValue) => {
- setRef(refA, refValue);
- setRef(refB, refValue);
- };
- }, [refA, refB]);
-}
+// function useForkRef<Instance>(
+// refA: React.Ref<Instance> | null | undefined,
+// refB: React.Ref<Instance> | null | undefined,
+// ): React.Ref<Instance> | null {
+// /**
+// * This will create a new function if the ref props change and are defined.
+// * This means react will call the old forkRef with `null` and the new forkRef
+// * with the ref. Cleanup naturally emerges from this behavior.
+// */
+// return useMemo(() => {
+// if (refA == null && refB == null) {
+// return null;
+// }
+// return (refValue) => {
+// setRef(refA, refValue);
+// setRef(refB, refValue);
+// };
+// }, [refA, refB]);
+// }
function setRef<T>(
ref: RefObject<T | null> | ((instance: T | null) => void) | null | undefined,