14#include "functions_defs.h"
134 if(
Scr->OpaqueMoveThreshold >= 200) {
135 Scr->OpaqueMove =
true;
138 const unsigned long sw =
tmp_win->frame_width
140 const unsigned long ss =
Scr->rootw *
Scr->rooth;
141 const float sf =
Scr->OpaqueMoveThreshold / 100.0;
144 Scr->OpaqueMove =
false;
147 Scr->OpaqueMove =
true;
152 Scr->OpaqueMove =
false;
173 0, 0, 0, 0,
eventp->xbutton.x_root,
eventp->xbutton.y_root);
182 if(!
Scr->NoGrabServer || !
Scr->OpaqueMove) {
204 :
Scr->XineramaRoot);
228 Scr->OpaqueMove =
true;
288 if(!
Scr->OpaqueMove) {
290 if(!
Scr->MoveDelta) {
367 if(
Scr->OpaqueMove) {
413 if(!
Scr->OpaqueMove) {
565 int xl,
yt, width, height;
589 if(
Scr->OpaqueMove) {
605 yt +
Scr->currentvs->y, width, height,
653 if(
Scr->OpaqueMove) {
671 yt +
Scr->currentvs->y, width, height,
864 if(!
Scr->NoRaiseMove) {
897 0, 0, 0, 0,
eventp->xbutton.x_root,
eventp->xbutton.y_root);
1066 for(i = 0; i < 2; i++) {
1101 for(i = 0; i < 2; i++) {
1232 unsigned int width, height;
1233 int px = 20,
py = 30;
1240 width += 2 *
tmp_win->frame_bw3D;
1243 height =
tmp_win->frame_height;
1251 x +=
Scr->rootw - width;
1259 y +=
Scr->rooth - height;
1368 for(
t =
Scr->FirstWindow;
t !=
NULL;
t =
t->next) {
1369 const int w =
t->frame_width + 2 *
t->frame_bw;
1370 const int h =
t->frame_height + 2 *
t->frame_bw;
1387 if(
winy >=
t->frame_y + h) {
1399 if(
winy >=
t->frame_y + h) {
1411 if(
winx >=
t->frame_x + w) {
1423 if(
winx >=
t->frame_x + w) {
1451 if(w ==
t->frame || w ==
t->title_w
1452 || w ==
t->hilite_wl || w ==
t->hilite_wr) {
1457 if(
t->icon && (w ==
t->icon->w || w ==
t->icon->bm_w)) {
1462 if(
t->titlebuttons) {
1464 int nb =
Scr->TBInfo.nleft +
Scr->TBInfo.nright;
1465 for(
tbw =
t->titlebuttons ;
nb > 0 ;
tbw++,
nb--) {
1466 if(
tbw->window == w) {
void UninstallRootColormap(void)
void InstallRootColormap(void)
bool DispatchEvent2(void)
event_proc EventHandler[256]
void FixRootEvent(XEvent *e)
static void movewindow(int func, void *action, Window w, TwmWindow *tmp_win, XEvent *eventp, int context, bool pulldown)
static void packwindow(TwmWindow *tmp_win, const char *direction)
static void jump(TwmWindow *tmp_win, MoveFillDir direction, const char *action)
static bool belongs_to_twm_window(TwmWindow *t, Window w)
static int FindConstraint(TwmWindow *tmp_win, MoveFillDir direction)
static void fillwindow(TwmWindow *tmp_win, const char *direction)
int frame_x
X position on screen of frame.
void OtpRaise(TwmWindow *twm_win, WinType wintype)
RArea RAreaNew(int x, int y, int width, int height)
Construct an RArea from given components.
int RLayoutFindMonitorTopEdge(const RLayout *self, const RArea *area)
Find the top edge of the bottom-most monitor that contains the most of a given RArea.
int RLayoutFindMonitorRightEdge(const RLayout *self, const RArea *area)
Find the right edge of the left-most monitor that contains the most of a given RArea.
int RLayoutFindMonitorBottomEdge(const RLayout *self, const RArea *area)
Find the bottom edge of the top-most monitor that contains the most of a given RArea.
int RLayoutFindMonitorLeftEdge(const RLayout *self, const RArea *area)
Find the left edge of the right-most monitor that contains the most of a given RArea.
#define SIZE_VINDENT
Internal padding in the size window.
#define SIZE_HINDENT
Internal padding in the size window.
A particular extent of space.
Info and control for every X Window we take over.
void SetupWindow(TwmWindow *tmp_win, int x, int y, int w, int h, int bw)
void MoveOutline(Window root, int x, int y, int width, int height, int bw, int th)
void ChangeSize(char *in_string, TwmWindow *tmp_win)
void StartResize(XEvent *evp, TwmWindow *tmp_win, bool fromtitlebar, bool from3dborder)
void ConstrainSize(TwmWindow *tmp_win, unsigned int *widthp, unsigned int *heightp)
void restoregeometry(TwmWindow *tmp_win)
void resizeFromCenter(Window w, TwmWindow *tmp_win)
void OpaqueResizeSize(TwmWindow *tmp_win)
void fullzoom(TwmWindow *tmp_win, int func)
void savegeometry(TwmWindow *tmp_win)
void DisplayPosition(const TwmWindow *_unused_tmp_win, int x, int y)
bool visible(const TwmWindow *tmp_win)
void MoveResizeSizeWindow(int x, int y, unsigned int width, unsigned int height)
void ConstrainByBorders(TwmWindow *twmwin, int *left, int width, int *top, int height)
void TryToPush(TwmWindow *tmp_win, int x, int y)
void TryToGrid(TwmWindow *tmp_win, int *x, int *y)
void TryToPack(TwmWindow *tmp_win, int *x, int *y)
void WMapSetupWindow(TwmWindow *win, int x, int y, int w, int h)
int RLayoutXParseGeometry(RLayout *layout, const char *geometry, int *x, int *y, unsigned int *width, unsigned int *height)
Parse an X Geometry out to get the positions and sizes.