Sandpies Claude Opus 5 commited on
Commit
e6eb52a
·
1 Parent(s): 3347123

Open at 1200x900; the 4:3 request was about ratio, not scale

Browse files

640x480 was the wrong reading of "4:3 broad ratio". The ratio was right and the
scale was not: at 640 wide the script cards wrap, the RUN panel's four groups
stack into a scroll, and the first thing anyone does is drag the node bigger.
A default that has to be resized before use is not a default. 1200x900 is the
same ratio at the size the panel was actually laid out for.

The minimum is now a separate constant. NODE_WIDTH was doing double duty as the
default size AND as installHeightGuard's minWidth, so raising the default would
have silently raised the floor to 1200 and made the node impossible to narrow --
worse on a small screen than the old default ever was on a large one.
NODE_MIN_WIDTH stays at 560.

Both shipped workflows carry the new size, and check_workflows.py asserts it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014VB4Dw6F79643vySkf19KV

js/h3_ref_chain_ui.js CHANGED
@@ -16,11 +16,18 @@ const VERSION = "v1.5.3";
16
  * new id those nodes would come up with NO editor at all, which looks exactly
17
  * like the rename having broken the pack. */
18
  const NODE_TYPES = new Set(["HandTieClips", "H3RefChain"]);
19
- // 640x480 is the 4:3 box the panel is now shaped for. It was 560 wide and a
20
- // tall scrolling column; with one pane visible at a time the height that column
21
- // needed is no longer needed all at once.
22
- const NODE_WIDTH = 640;
23
- const NODE_HEIGHT = 480;
 
 
 
 
 
 
 
24
  // Mirrors MODE_PROP in editor/plan_editor.js -- the writer forces Shots mode
25
  // after a plan lands, and the property is the only part of that it should touch.
26
  const EDITOR_MODE_PROP = "h3_editor_mode";
@@ -220,7 +227,7 @@ function mountEditor(node) {
220
  });
221
  domWidget.serialize = false;
222
 
223
- installHeightGuard(node, domWidget, { minHeight: EDITOR_MIN_H, minWidth: NODE_WIDTH });
224
 
225
  function applyVisibility() {
226
  // The rail always owns ref_plan; the plan widget's visibility follows
 
16
  * new id those nodes would come up with NO editor at all, which looks exactly
17
  * like the rename having broken the pack. */
18
  const NODE_TYPES = new Set(["HandTieClips", "H3RefChain"]);
19
+ // The size a node OPENS at: 4:3, and large enough to read a two-shot script and
20
+ // the whole RUN panel without dragging anything first. 640x480 was the first
21
+ // attempt at "4:3 box" and got the ratio right and the scale wrong -- a default
22
+ // nobody can use without resizing is not a default.
23
+ //
24
+ // This is NOT the minimum. NODE_MIN_WIDTH is, and it stays small on purpose: a
25
+ // node that cannot be made narrow is worse on a laptop than a node that opens
26
+ // small is on a desktop. The two were the same constant until that was noticed,
27
+ // so raising the default would silently have raised the floor with it.
28
+ const NODE_WIDTH = 1200;
29
+ const NODE_HEIGHT = 900;
30
+ const NODE_MIN_WIDTH = 560;
31
  // Mirrors MODE_PROP in editor/plan_editor.js -- the writer forces Shots mode
32
  // after a plan lands, and the property is the only part of that it should touch.
33
  const EDITOR_MODE_PROP = "h3_editor_mode";
 
227
  });
228
  domWidget.serialize = false;
229
 
230
+ installHeightGuard(node, domWidget, { minHeight: EDITOR_MIN_H, minWidth: NODE_MIN_WIDTH });
231
 
232
  function applyVisibility() {
233
  // The rail always owns ref_plan; the plan widget's visibility follows
tools/check_workflows.py CHANGED
@@ -221,7 +221,7 @@ def main():
221
  continue
222
  size = n.get("size") or [0, 0]
223
  ck("the node ships at its designed 4:3 size",
224
- [int(size[0]), int(size[1])] == [640, 480],
225
  "%sx%s" % (size[0], size[1]))
226
 
227
  # The on-canvas board, where there is one.
 
221
  continue
222
  size = n.get("size") or [0, 0]
223
  ck("the node ships at its designed 4:3 size",
224
+ [int(size[0]), int(size[1])] == [1200, 900],
225
  "%sx%s" % (size[0], size[1]))
226
 
227
  # The on-canvas board, where there is one.
workflows/HandTieClips_Showcase.json CHANGED
@@ -227,8 +227,8 @@
227
  427
228
  ],
229
  "size": [
230
- 640,
231
- 480
232
  ],
233
  "flags": {},
234
  "order": 4,
 
227
  427
228
  ],
229
  "size": [
230
+ 1200,
231
+ 900
232
  ],
233
  "flags": {},
234
  "order": 4,
workflows/HandTieClips_Starter.json CHANGED
@@ -227,8 +227,8 @@
227
  427
228
  ],
229
  "size": [
230
- 640,
231
- 480
232
  ],
233
  "flags": {},
234
  "order": 4,
 
227
  427
228
  ],
229
  "size": [
230
+ 1200,
231
+ 900
232
  ],
233
  "flags": {},
234
  "order": 4,