Skip to content

Commit bb7c9c1

Browse files
authored
Create more realistic containers in DevTools fixture (facebook#34296)
1 parent 44f8451 commit bb7c9c1

File tree

2 files changed

+16
-14
lines changed

2 files changed

+16
-14
lines changed

packages/react-devtools-shared/src/devtools/views/SuspenseTab/SuspenseTab.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ function SuspenseTab(_: {}) {
295295
ref={resizeTreeListRef}>
296296
<SuspenseTreeList />
297297
</div>
298-
<div className={styles.ResizeBarWrapper}>
298+
<div className={styles.ResizeBarWrapper} hidden={treeListHidden}>
299299
<div
300300
onPointerDown={onResizeStart}
301301
onPointerMove={onResizeTreeList}
@@ -327,7 +327,7 @@ function SuspenseTab(_: {}) {
327327
</footer>
328328
</div>
329329
</div>
330-
<div className={styles.ResizeBarWrapper}>
330+
<div className={styles.ResizeBarWrapper} hidden={inspectedElementHidden}>
331331
<div
332332
onPointerDown={onResizeStart}
333333
onPointerMove={onResizeTree}

packages/react-devtools-shell/index.html

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
<style>
99
#panes {
1010
display: grid;
11-
height: 100%;
12-
width: 100%;
11+
gap: 5px;
1312
position: relative;
13+
overflow: hidden;
1414
}
1515

1616
#divider {
@@ -41,21 +41,21 @@
4141
height: 100%;
4242
width: 100%;
4343
border: none;
44+
overflow-y: auto;
4445
}
4546

4647
#devtools {
4748
height: 100%;
4849
width: 100%;
49-
overflow: hidden;
50+
overflow-y: auto;
5051
z-index: 10000001;
5152
}
5253

5354
body {
54-
display: flex;
5555
height: 100vh;
5656
width: 100vw;
57-
contain: strict;
58-
flex-direction: column;
57+
display: grid;
58+
grid-template-rows: auto 1fr;
5959
margin: 0;
6060
padding: 0;
6161
font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial,
@@ -128,11 +128,13 @@
128128
function setLayout(layoutType, splitRatio) {
129129
const panes = document.getElementById('panes');
130130
if (layoutType === 'topbottom') {
131-
panes.style.gridTemplateColumns = '100%'; // Full width for each row
132-
panes.style.gridTemplateRows = `${splitRatio * 100}% ${(1 - splitRatio) * 100}%`;
131+
panes.style.setProperty('--top-row-height', `${splitRatio * 100}%`);
132+
panes.style.gridTemplateRows = "var(--top-row-height) 1fr";
133+
panes.style.gridTemplateColumns = null;
133134
} else if (layoutType === 'leftright') {
134-
panes.style.gridTemplateRows = '100%'; // Full height for each column
135-
panes.style.gridTemplateColumns = `${splitRatio * 100}% ${(1 - splitRatio) * 100}%`;
135+
panes.style.setProperty('--left-column-width', `${splitRatio * 100}%`);
136+
panes.style.gridTemplateRows = null;
137+
panes.style.gridTemplateColumns = "var(--left-column-width) 1fr";
136138
}
137139
}
138140
layout.addEventListener('change', () => {
@@ -147,12 +149,12 @@
147149
if (layoutType === 'topbottom') {
148150
// For top/bottom layout, divider should be horizontal (spanning across)
149151
divider.className = 'horizontal-divider';
150-
divider.style.top = `calc(${splitRatio * 100}% - 2.5px)`;
152+
divider.style.top = `calc(${splitRatio * 100}%)`;
151153
divider.style.left = '0';
152154
} else {
153155
// For left/right layout, divider should be vertical (spanning down)
154156
divider.className = 'vertical-divider';
155-
divider.style.left = `calc(${splitRatio * 100}% - 2.5px)`;
157+
divider.style.left = `calc(${splitRatio * 100}%)`;
156158
divider.style.top = '0';
157159
}
158160
}

0 commit comments

Comments
 (0)