An API that returns a set of offsets in Vector2[] (Top-Left and Bottom-Right) for ANY Screen Inset RELATIVE to Full Screen

Example:

local offsetRectForDeviceSafeInset = GuiService:GetScreenInsetOffset(Enum.ScreenInsets.DeviceSafeInsets)

local topLeft    = offsetRectForDeviceSafeInset[1]
local bottomLeft = offsetRectForDeviceSafeInset[2]

print(topLeft)       --  64, 0
print(bottomLeft)    -- 64, 16

The offset? Will be RELATIVE to the full screen, not CoreSafeInset, so that you can manually apply the offset yourself.

There should be NO issue implementing this, nor will it create any technical debt or any crazy thing lol, it’s even good first issue for intern to implement (a bit silly).

For what?

For creating any UI that requires covering the screen in full size, but you want extra flexibility on which content is parented to a full sized frame or a frame that respects their specific safe zone.

The API would make this such design possible (it covers full screen horizontally but has content adjusted to their actual safe zone)

that very hacky but you can kinda do that already using AbsoluteSize of 1,0,1,0 frame

Would this suffice your needs?

Passing Enum.ScreenInsets.None returns same as frame with size (1, 0, 1, 0). Method returns Width/Height properties, same as X/Y for AbsoluteSize, as well as Min/Max Vector2 properties, exactly what you are requesting.

It is still relative to CoreSafeInset which causes some information to be lost. You couldn’t really get true offsets from DeviceSafeInset.

Hello? Anyone engineer excited enough to implement this? :pensive_face:

I now just encountered this limitation once again. How am I supposed to get difference between the DeviceSafe rect and None rect in very…EXACT…OFFSETs so that I could adjust the offset for anything relying on absolute position between multiple ScreenGui.

I don’t mind you friend request me Tomorrow afternoon or any day and Time.