diff --git a/packages/trace-viewer/src/ui/defaultSettingsView.tsx b/packages/trace-viewer/src/ui/defaultSettingsView.tsx index 5b55268af9..681a52f184 100644 --- a/packages/trace-viewer/src/ui/defaultSettingsView.tsx +++ b/packages/trace-viewer/src/ui/defaultSettingsView.tsx @@ -29,11 +29,12 @@ export const DefaultSettingsView: React.FC<{}> = () => { return ( diff --git a/packages/trace-viewer/src/ui/settingsToolbarButton.tsx b/packages/trace-viewer/src/ui/settingsToolbarButton.tsx index db75628f4d..2696226a03 100644 --- a/packages/trace-viewer/src/ui/settingsToolbarButton.tsx +++ b/packages/trace-viewer/src/ui/settingsToolbarButton.tsx @@ -37,6 +37,8 @@ export const SettingsToolbarButton: React.FC<{}> = () => { className='settings-toolbar-dialog' open={open} width={200} + // TODO: Temporary spacing until design of toolbar buttons is revisited + verticalOffset={8} requestClose={() => setOpen(false)} hostingElement={hostingRef} > diff --git a/packages/trace-viewer/src/ui/settingsView.tsx b/packages/trace-viewer/src/ui/settingsView.tsx index 0a4340b2b6..19e3a0367b 100644 --- a/packages/trace-viewer/src/ui/settingsView.tsx +++ b/packages/trace-viewer/src/ui/settingsView.tsx @@ -18,22 +18,31 @@ import * as React from 'react'; import './settingsView.css'; export type Setting = { - value: T, - set: (value: T) => void, - title: string + value: T; + set: (value: T) => void; + name: string; + title?: string; }; export const SettingsView: React.FunctionComponent<{ - settings: Setting[], + settings: Setting[]; }> = ({ settings }) => { - return
- {settings.map(({ value, set, title }) => { - return
- -
; - })} -
; + return ( +
+ {settings.map(({ value, set, name, title }) => { + return ( +
+ +
+ ); + })} +
+ ); }; diff --git a/packages/trace-viewer/src/ui/shared/dialog.tsx b/packages/trace-viewer/src/ui/shared/dialog.tsx index 8a9ee56ff7..c3cafbf0eb 100644 --- a/packages/trace-viewer/src/ui/shared/dialog.tsx +++ b/packages/trace-viewer/src/ui/shared/dialog.tsx @@ -22,6 +22,8 @@ export interface DialogProps { open: boolean; width: number; + verticalOffset?: number; + requestClose?: () => void; hostingElement?: React.RefObject; @@ -31,6 +33,7 @@ export const Dialog: React.FC> = ({ className, open, width, + verticalOffset, requestClose, hostingElement, children, @@ -50,7 +53,7 @@ export const Dialog: React.FC> = ({ style = { // Override default `` positioning margin: 0, - top: bounds.bottom, + top: bounds.bottom + (verticalOffset ?? 0), left: buildTopLeftCoord(bounds, width), width, // For some reason the dialog is placed behind the timeline, but there's a stacking context that allows the dialog to be placed above diff --git a/packages/trace-viewer/src/ui/uiModeView.tsx b/packages/trace-viewer/src/ui/uiModeView.tsx index d44a50f247..09bdb2089d 100644 --- a/packages/trace-viewer/src/ui/uiModeView.tsx +++ b/packages/trace-viewer/src/ui/uiModeView.tsx @@ -509,9 +509,9 @@ export const UIModeView: React.FC<{}> = ({
Testing Options
{testingOptionsVisible && } } setSettingsVisible(!settingsVisible)}>