What follows isn’t by way of making an argument for argument’s sake, I do feel something is being missed here. There is a ‘TL;DR’ summary at the end.
Whilst this makes sense in general …
… the reality is that many never export HTML yet nonetheless use preview to see their notes in ‘rendered’ form. Why they choose to do so is not the point: they do so. Whilst for long-time users of Tinderbox may intuitively think that 'Preview' == preview of the exported HTML
, I don’t think that is the general understanding. I’d observe it isn’t the case for those users just beginning to dig into features like posters.
A poster note is likely using both the ‘Poster’ prototype and a (export) template for that poster—possibly each poster has a different template. However, a note can only have one assigned template† which encapsulate’s a false assumption, that preview only has one use context. These days, I think that is not a supportable premise. Also many users want to ‘just’ use something like preview having to do lots of prior work. The implication of the latter I’ll enlarge on below.
If I make a poster (correctly!), it looks fine in Map view. It also looks fine previewed in that Tab’s text pane preview, though there is little point in that given that I can see the poster in the view pane (but, I might want to see the poster (right pane), in context to a different part of the map (left pane).
Now, switch the view pane to any other view type and we have a problem. We can’t see the poster in the Preview as the read-only [sic] $ScreenWidth/$ScreenHeight differ depending on the current tabs’s assigned view type. I can’t the see the point of that as AFAICT the only application of these attribute values is for poster use. IOW, I’d suggest their values should be—regardless of current view type—the current (poster) note’s size in map view. Then the problem goes away.
Otherwise, the user must, but only whilst view pane is in map view, save $ScreenWidth and $ScreenHeight into user attributes and then use those values in the poster note’s template. Worse, if subsequently the poster size is altered, the saved width/height must be manually updated whilst in map view, otherwise $ScreenWidth/$ScreenHeight. That’s a lot of niche behaviour to remember for a user who wonders why the post doesn’t 'preview when using, of example, Attribute Browser view.
I suspect the per-view-type $ScreenWidth and $ScreenHeight being per view type, rather than the same value regardless of view type, is an accident of birth. As $ScreenWidth and $ScreenHeight are not, AFAICT, used except in Map view their seems little point in read-only system attributes being bound (for calculation of values) to the tab’s current view type. Ergo, unintentional hilarity ensures.
TL:DR binding read-only $ScreenWidth and $ScreenHeight to the current view rather than the map view poster size offers what specific gain to the Tinderbox user?
†. Before it’s pointed out, it is true that one can route around this via ^include^ and the like. But that requires some Tinderbox action/export coding expertise, and this is about ordinary users not experts.