forked from awesomeWM/awesome
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathclient.lua
More file actions
136 lines (119 loc) · 4.39 KB
/
Copy pathclient.lua
File metadata and controls
136 lines (119 loc) · 4.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
--- awesome client API
-- @author Julien Danjou <julien@danjou.info>
-- @copyright 2008-2009 Julien Danjou
module("client")
--- Client object.
-- @field window The X window id.
-- @field name The client title.
-- @field skip_taskbar True if the client does not want to be in taskbar.
-- @field type The window type (desktop, normal, dock, …).
-- @field class The client class.
-- @field instance The client instance.
-- @field pid The client PID, if available.
-- @field role The window role, if available.
-- @field machine The machine client is running on.
-- @field icon_name The client name when iconified.
-- @field icon The client icon.
-- @field screen Client screen.
-- @field hidden Define if the client must be hidden, i.e. never mapped,
-- invisible in taskbar.
-- @field minimized Define it the client must be iconify, i.e. only visible in
-- taskbar.
-- @field size_hints_honor Honor size hints, i.e. respect size ratio.
-- @field border_width The client border width.
-- @field border_color The client border color.
-- @field titlebar The client titlebar.
-- @field urgent The client urgent state.
-- @field content An image representing the client window content (screenshot).
-- @field focus The focused client.
-- @field opacity The client opacity between 0 and 1.
-- @field ontop The client is on top of every other windows.
-- @field above The client is above normal windows.
-- @field below The client is below normal windows.
-- @field fullscreen The client is fullscreen or not.
-- @field maximized_horizontal The client is maximized horizontally or not.
-- @field maximized_vertical The client is maximized vertically or not.
-- @field transient_for The client the window is transient for.
-- @field group_window Window identification unique to a group of windows.
-- @field leader_id Identification unique to windows spawned by the same command.
-- @field size_hints A table with size hints of the client: user_position,
-- user_size, program_position, program_size, etc.
-- @field sticky Set the client sticky, i.e. available on all tags.
-- @field modal Indicate if the client is modal.
-- @field focusable True if the client can receive the input focus.
-- @class table
-- @name client
--- Get all clients into a table.
-- @param screen An optional screen number.
-- @return A table with all clients.
-- @name get
-- @class function
--- Check if a client is visible on its screen.
-- @param -
-- @return A boolean value, true if the client is visible, false otherwise.
-- @name isvisible
-- @class function
--- Return client geometry.
-- @param arg1 A table with new coordinates, or none.
-- @return A table with client coordinates.
-- @name geometry
-- @class function
--- Return client struts (reserved space at the edge of the screen).
-- @param struts A table with new strut values, or none.
-- @return A table with strut values.
-- @name struts
-- @class function
--- Get or set mouse buttons bindings for a client.
-- @param buttons_table An array of mouse button bindings objects, or nothing.
-- @return A table with all buttons.
-- @name buttons
-- @class function
--- Get or set keys bindings for a client.
-- @param keys_table An array of key bindings objects, or nothing.
-- @return A table with all keys.
-- @name keys
-- @class function
--- Access or set the client tags.
-- @param tags_table A table with tags to set, or none to get the current tags table.
-- @return A table with all tags.
-- @name tags
-- @class function
--- Kill a client.
-- @param -
-- @name kill
-- @class function
--- Swap a client with another one in global client list.
-- @param c A client to swap with.
-- @name swap
-- @class function
--- Raise a client on top of others which are on the same layer.
-- @param -
-- @name raise
-- @class function
--- Lower a client on bottom of others which are on the same layer.
-- @param -
-- @name lower
-- @class function
--- Redraw a client by unmapping and mapping it quickly.
-- @param -
-- @name redraw
-- @class function
--- Stop managing a client.
-- @param -
-- @name unmanage
-- @class function
--- Add a signal.
-- @param name A signal name.
-- @param func A function to call when the signal is emitted.
-- @name add_signal
-- @class function
--- Remove a signal.
-- @param name A signal name.
-- @param func A function to remove.
-- @name remove_signal
-- @class function
--- Emit a signal.
-- @param name A signal name.
-- @param ... Various arguments, optional.
-- @name emit_signal
-- @class function