mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-11-23 08:03:48 +01:00
Merge pull request #2073 from billyvg/fix/window-resizing
fix: Update editor height when resizing window
This commit is contained in:
commit
4be5e45740
@ -125,6 +125,25 @@ export function Root(props: IProps): React.ReactElement {
|
|||||||
vim: props.vim || Settings.MonacoVim,
|
vim: props.vim || Settings.MonacoVim,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const [dimensions, setDimensions] = useState({
|
||||||
|
height: window.innerHeight,
|
||||||
|
width: window.innerWidth,
|
||||||
|
});
|
||||||
|
useEffect(() => {
|
||||||
|
const debouncedHandleResize = debounce(function handleResize() {
|
||||||
|
setDimensions({
|
||||||
|
height: window.innerHeight,
|
||||||
|
width: window.innerWidth,
|
||||||
|
});
|
||||||
|
}, 250);
|
||||||
|
|
||||||
|
window.addEventListener("resize", debouncedHandleResize);
|
||||||
|
|
||||||
|
return () => {
|
||||||
|
window.removeEventListener("resize", debouncedHandleResize);
|
||||||
|
};
|
||||||
|
}, []);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
// Save currentScript
|
// Save currentScript
|
||||||
window.localStorage.setItem(
|
window.localStorage.setItem(
|
||||||
@ -639,11 +658,13 @@ export function Root(props: IProps): React.ReactElement {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Make this responsive to window resizes
|
// Toolbars are roughly 112px:
|
||||||
// Toolbars are roughly 108px + vim bar 34px
|
// 8px body margin top
|
||||||
// Get percentage of space that toolbars represent and the rest should be the
|
// 38.5px filename tabs
|
||||||
// editor
|
// 5px padding for top of editor
|
||||||
const editorHeight = 100 - ((108 + (options.vim ? 34 : 0)) / window.innerHeight) * 100;
|
// 44px bottom tool bar + 16px margin
|
||||||
|
// + vim bar 34px
|
||||||
|
const editorHeight = dimensions.height - (112 + (options.vim ? 34 : 0));
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
@ -722,7 +743,7 @@ export function Root(props: IProps): React.ReactElement {
|
|||||||
beforeMount={beforeMount}
|
beforeMount={beforeMount}
|
||||||
onMount={onMount}
|
onMount={onMount}
|
||||||
loading={<Typography>Loading script editor!</Typography>}
|
loading={<Typography>Loading script editor!</Typography>}
|
||||||
height={`${editorHeight}%`}
|
height={`${editorHeight}px`}
|
||||||
defaultLanguage="javascript"
|
defaultLanguage="javascript"
|
||||||
defaultValue={""}
|
defaultValue={""}
|
||||||
onChange={updateCode}
|
onChange={updateCode}
|
||||||
|
Loading…
Reference in New Issue
Block a user