Open at 1200x900; the 4:3 request was about ratio, not scale
Browse files640x480 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
|
@@ -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 |
-
//
|
| 20 |
-
//
|
| 21 |
-
//
|
| 22 |
-
|
| 23 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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:
|
| 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
|
|
@@ -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])] == [
|
| 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.
|
|
@@ -227,8 +227,8 @@
|
|
| 227 |
427
|
| 228 |
],
|
| 229 |
"size": [
|
| 230 |
-
|
| 231 |
-
|
| 232 |
],
|
| 233 |
"flags": {},
|
| 234 |
"order": 4,
|
|
|
|
| 227 |
427
|
| 228 |
],
|
| 229 |
"size": [
|
| 230 |
+
1200,
|
| 231 |
+
900
|
| 232 |
],
|
| 233 |
"flags": {},
|
| 234 |
"order": 4,
|
|
@@ -227,8 +227,8 @@
|
|
| 227 |
427
|
| 228 |
],
|
| 229 |
"size": [
|
| 230 |
-
|
| 231 |
-
|
| 232 |
],
|
| 233 |
"flags": {},
|
| 234 |
"order": 4,
|
|
|
|
| 227 |
427
|
| 228 |
],
|
| 229 |
"size": [
|
| 230 |
+
1200,
|
| 231 |
+
900
|
| 232 |
],
|
| 233 |
"flags": {},
|
| 234 |
"order": 4,
|