diff --git a/packages/web/src/formview/FormView.js b/packages/web/src/formview/FormView.js index 5c9ca3b05..322328ae7 100644 --- a/packages/web/src/formview/FormView.js +++ b/packages/web/src/formview/FormView.js @@ -95,6 +95,11 @@ const RowCountLabel = styled.div` bottom: 20px; `; +const HintSpan = styled.span` + color: gray; + margin-left: 5px; +`; + function isDataCell(cell) { return cell[1] % 2 == 1; } @@ -310,6 +315,11 @@ export default function FormView(props) { copyToClipboard(); } + if (event.keyCode == keycodes.f5) { + event.preventDefault(); + onReload(); + } + if ( !event.ctrlKey && !event.altKey && @@ -452,6 +462,11 @@ export default function FormView(props) { ) : ( <> + {!!col.hintColumnName && + rowData && + !(rowStatus.modifiedFields && rowStatus.modifiedFields.has(col.uniqueName)) && ( + {rowData[col.hintColumnName]} + )} )} diff --git a/packages/web/src/formview/SqlFormView.js b/packages/web/src/formview/SqlFormView.js index 7a2b4a3ea..9df44fef1 100644 --- a/packages/web/src/formview/SqlFormView.js +++ b/packages/web/src/formview/SqlFormView.js @@ -32,7 +32,7 @@ async function loadRow(props, sql) { } export default function SqlFormView(props) { - const { formDisplay, changeSetState, dispatchChangeSet, conid, database } = props; + const { formDisplay, changeSetState, dispatchChangeSet, conid, database, onReferenceSourceChanged } = props; const [rowData, setRowData] = React.useState(null); const [reloadToken, setReloadToken] = React.useState(0); const [rowCountInfo, setRowCountInfo] = React.useState(null); @@ -70,6 +70,10 @@ export default function SqlFormView(props) { } }; + React.useEffect(() => { + if (onReferenceSourceChanged && rowData) onReferenceSourceChanged([rowData]); + }, [rowData]); + React.useEffect(() => { if (formDisplay) handleLoadCurrentRow(); setRowCountInfo(null);