Skip to content

Get DWM Client

Mihir Lad edited this page Jul 13, 2020 · 2 revisions

Get DWM Client

This message type is used to retrieve the properties of a particular DWM client. The payload of this message type should be a JSON document that specifies the Window XID of the client. The Window IDs of available clients are listed in the properties of a monitor and can be retrieved using the Get Monitors message type.

Message Request Format

An IPC_TYPE_GET_DWM_CLIENT message should contain a payload in the following format:

{ "client_window_id": <XID> }

The XID as mentioned above can be found by retrieving the monitor properties.

Message Reply Format

A reply to an IPC_TYPE_GET_DWM_CLIENT message will be a JSON document. If the command was succesfully received and a client with the specified window XID exists, you will receive a JSON document reply with the properties of the client similar to below:

{
  "name": "dwm-msg",
  "tags": 8,
  "window_id": 65011718,
  "monitor_number": 1,
  "geometry": {
    "current": {
      "x": 1066,
      "y": 1126,
      "width": 842,
      "height": 1022
    },
    "old": {
      "x": 0,
      "y": 1116,
      "width": 1918,
      "height": 1042
    }
  },
  "size_hints": {
    "base": {
      "width": 60,
      "height": 60
    },
    "step": {
      "width": 1,
      "height": 1
    },
    "max": {
      "width": 0,
      "height": 0
    },
    "min": {
      "width": 68,
      "height": 78
    },
    "aspect_ratio": {
      "min": 0.0,
      "max": 0.0
    }
  },
  "border_width": {
    "current": 1,
    "old": 1
  },
  "states": {
    "is_fixed": false,
    "is_floating": false,
    "is_urgent": false,
    "never_focus": false,
    "old_state": false,
    "is_fullscreen": false
  }
}

If there was a failure parsing the message, you will receive a reply as follows:

{
  "result": "failure",
  "reason": "<reason>"
}