# States

### <mark style="color:purple;">All Windows</mark>

Exposes a list of objects about the current active windows.\
\
You can use these values in conditionals, workflows, or to display window information inside your app.

***

**Basic Window Information**

<mark style="color:$info;">**id**</mark>\
A unique identifier for this window.

<mark style="color:$info;">**title**</mark>\
The current window title.

<mark style="color:$info;">**backgroundColor**</mark>\
The window’s background color.

<mark style="color:$info;">**opacity**</mark>\
The window’s transparency level.\
`1` = fully visible\
`0.5` = semi-transparent

***

**Size and Position**

<mark style="color:$info;">**width**</mark>\
Current width of the window (in pixels).

<mark style="color:$info;">**height**</mark>\
Current height of the window (in pixels).

<mark style="color:$info;">**x**</mark>\
Distance from the left side of the screen.

<mark style="color:$info;">**y**</mark>\
Distance from the top of the screen.

***

**Size Constraints**

<mark style="color:$info;">**minWidth**</mark>\
The smallest width the window is allowed to be.

<mark style="color:$info;">**minHeight**</mark>\
The smallest height the window is allowed to be.

<mark style="color:$info;">**maxWidth**</mark>\
The largest width the window is allowed to be.

<mark style="color:$info;">**maxHeight**</mark>\
The largest height the window is allowed to be.

***

**Window Behavior Settings**

These determine what the user is allowed to do:

<mark style="color:$info;">**resizable**</mark>\
Whether the user can resize the window.

<mark style="color:$info;">**movable**</mark>\
Whether the user can move the window.

<mark style="color:$info;">**minimizable**</mark>\
Whether the window can be minimized.

<mark style="color:$info;">**maximizable**</mark>\
Whether the window can be maximized.

<mark style="color:$info;">**closable**</mark>\
Whether the window can be closed.

<mark style="color:$info;">**fullscreenable**</mark>\
Whether the window can enter fullscreen mode.

<mark style="color:$info;">**alwaysOnTop**</mark>\
Whether the window stays above all other windows.

<mark style="color:$info;">**skipTaskbar**</mark>\
Whether the window is hidden from the taskbar or dock.

<mark style="color:$info;">**kiosk**</mark>\
Whether the window is locked into kiosk mode (restricted interaction).

<mark style="color:$info;">**hasShadow**</mark>\
Whether the window has a shadow effect.

<mark style="color:$info;">**ignoreMouseEvents**</mark>\
If enabled, mouse clicks pass through the window.

<mark style="color:$info;">**forwardMouseEvents**</mark>\
Whether mouse events are forwarded to underlying windows.

<mark style="color:$info;">**visibleOnAllWorkspaces**</mark>\
Whether the window appears on all desktops/workspaces.

<mark style="color:$info;">**trafficLightVisibility**</mark>\
(macOS only) Whether the red/yellow/green window controls are visible.

***

**Current Window State**

These describe what the window is currently doing:

<mark style="color:$info;">**show**</mark>\
Whether the window is set to be shown.

<mark style="color:$info;">**fullscreen**</mark>\
Whether the window is currently in fullscreen mode.

<mark style="color:$info;">**isMinimized**</mark>\
Whether the window is currently minimized.

<mark style="color:$info;">**isMaximized**</mark>\
Whether the window is currently maximized.

<mark style="color:$info;">**isNormal**</mark>\
Whether the window is in its normal state (not minimized or maximized).

<mark style="color:$info;">**isFocused**</mark>\
Whether the window is currently the active window.

<mark style="color:$info;">**isVisible**</mark>\
Whether the window is currently visible to the user.

***

**Web Contents Object**

<mark style="color:$info;">**url**</mark>\
The current page address.

<mark style="color:$info;">**title**</mark>\
The current page title.

<mark style="color:$info;">**loading**</mark>\
Whether the page is currently loading.

<mark style="color:$info;">**devToolsOpen**</mark>\
Whether the browser developer tools are open.

<mark style="color:$info;">**zoomLevel**</mark>\
The current zoom level of the page.\
`0` = default zoom.

<mark style="color:$info;">**canNavigateBack**</mark>\
Whether the page can go back in its browsing history.

<mark style="color:$info;">**canNavigateForward**</mark>\
Whether the page can go forward in its browsing history.

***

### <mark style="color:purple;">Current Window</mark>

This outputs the same type of object as above, but a singular object for the current window.

***

### <mark style="color:purple;">Window Events</mark>

This outputs a list of the last 100 window events. The possible values for "event" are `Finished Loading`, `Closed`, `Unfocused`, `Focused`, `Maximized`, `Unmaximized`, `Message Received`, `Fullscreened`, `Unfullscreened`, `Exit Attempted`, `Moved`, `Restored`, `Resized`, `Hidden`, `Shown`, `Minimized`

***

### <mark style="color:purple;">Message From Window</mark>

If another window uses the "Window - Send Window Message" action, with the target window as the current window, this will output the message sent.

***

### <mark style="color:purple;">Message From Window ID</mark>

If another window uses the "Window - Send Window Message" action, with the target window as the current window, this will output which window sent the message.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://deskifier.gitbook.io/deskifier/deskifier-bubble.io-docs/windows-element/states.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
