Variable displays can go behind sprites

When using a large gray sprite that covers the whole screen, using "go to front" puts the gray sprite in front of variable displays, including sliders:


There is no easy way to fix this because there is no "move variable up x layers" block, and moving back the gray rectangle can bring it behind the things it was originally intended to be in front of. This can make it very difficult to test variables using sliders.

This has been how it has behaved ever since snap was originally created, and is actually the same behavior in scratch 2 (maybe also scratch 1.4, but I haven't tested it). It wasn't until scratch 3.0 that scratch decided to make variables always in front of sprites.

As for snap, I do agree that sometimes it can be weird to have variable watchers under sprites. I feel like there should just be blocks, probably a library, for variable watcher manipulation, like changing the position, type, and layer (we can already control the visibility).

Ideally, a variable watcher should be a kind of costume, same as a text box should be a kind of costume. Then you could use all the sprite management features to position watchers in three dimensions (z=layer).

In a perfect world, you'd be able to define an "active costume" by writing the components of a standard API for it. Then you could put a browser window on the stage, etc etc. But we'd probably have to make Snap! 100 times faster for that to be practical. :~)

This does not only apply to variable monitors but can also apply to any other user interface things in the stage, such as:

(if you set it to the front layer after the box appears)

You're sharing the idea that you could control variable watchers as sprites, right? Meaning, that you could even add rotation to it. That would be a nice concept!

I didn't think about that, I was only thinking of the basic functions.

I'm the one who said that! :~)

We think alike. We must be brothers. :star_struck:

Oh, brother! /jk