Changeset View
Changeset View
Standalone View
Standalone View
toplevel.cpp
Show First 20 Lines • Show All 139 Lines • ▼ Show 20 Line(s) | |||||
140 | // owner by Deleted | 140 | // owner by Deleted | ||
141 | void Toplevel::disownDataPassedToDeleted() | 141 | void Toplevel::disownDataPassedToDeleted() | ||
142 | { | 142 | { | ||
143 | info = nullptr; | 143 | info = nullptr; | ||
144 | } | 144 | } | ||
145 | 145 | | |||
146 | QRect Toplevel::visibleRect() const | 146 | QRect Toplevel::visibleRect() const | ||
147 | { | 147 | { | ||
148 | QRect r = decorationRect(); | 148 | // There's no strict order between frame geometry and buffer geometry. | ||
149 | QRect rect = frameGeometry() | bufferGeometry(); | ||||
150 | | ||||
149 | if (shadow() && !shadow()->shadowRegion().isEmpty()) { | 151 | if (shadow() && !shadow()->shadowRegion().isEmpty()) { | ||
150 | r |= shadow()->shadowRegion().boundingRect(); | 152 | rect |= shadow()->shadowRegion().boundingRect().translated(pos()); | ||
151 | } | 153 | } | ||
152 | return r.translated(frameGeometry().topLeft()); | 154 | | ||
155 | return rect; | ||||
153 | } | 156 | } | ||
154 | 157 | | |||
155 | Xcb::Property Toplevel::fetchWmClientLeader() const | 158 | Xcb::Property Toplevel::fetchWmClientLeader() const | ||
156 | { | 159 | { | ||
157 | return Xcb::Property(false, window(), atoms->wm_client_leader, XCB_ATOM_WINDOW, 0, 10000); | 160 | return Xcb::Property(false, window(), atoms->wm_client_leader, XCB_ATOM_WINDOW, 0, 10000); | ||
158 | } | 161 | } | ||
159 | 162 | | |||
160 | void Toplevel::readWmClientLeader(Xcb::Property &prop) | 163 | void Toplevel::readWmClientLeader(Xcb::Property &prop) | ||
▲ Show 20 Lines • Show All 637 Lines • Show Last 20 Lines |