From 672ffacc5baacb777aaa8ae203cc6dd82f318e2c Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Wed, 20 May 2020 23:19:07 -0700 Subject: [PATCH] feat: Have theme follow system pref --- app/components/DropdownMenu/DropdownMenu.js | 16 ++++-- .../DropdownMenu/DropdownMenuItem.js | 14 ++++- app/components/Theme.js | 2 +- app/menus/AccountMenu.js | 51 ++++++++++++++----- app/stores/UiStore.js | 28 ++++++++-- 5 files changed, 88 insertions(+), 23 deletions(-) diff --git a/app/components/DropdownMenu/DropdownMenu.js b/app/components/DropdownMenu/DropdownMenu.js index c0afcb1f0..e67f5aa8e 100644 --- a/app/components/DropdownMenu/DropdownMenu.js +++ b/app/components/DropdownMenu/DropdownMenu.js @@ -23,6 +23,7 @@ type Props = { onClose?: () => void, children?: Children, className?: string, + hover?: boolean, style?: Object, position?: 'left' | 'right' | 'center', }; @@ -72,7 +73,7 @@ class DropdownMenu extends React.Component { this.initPosition(); // attempt to keep only one flyout menu open at once - if (previousClosePortal) { + if (previousClosePortal && !this.props.hover) { previousClosePortal(); } previousClosePortal = closePortal; @@ -134,7 +135,7 @@ class DropdownMenu extends React.Component { } render() { - const { className, label, children } = this.props; + const { className, hover, label, children } = this.props; return (
@@ -146,7 +147,14 @@ class DropdownMenu extends React.Component { > {({ closePortal, openPortal, isOpen, portal }) => ( -