forked from e16/e16
1
0
Fork 0

Thu Mar 16 23:02:49 GMT 2000

(gilbertt)

Patch from Marius Aamodt Eriksen <marius@linux.com>. Provides option to
include shaded windows in focuslist. Now all we need is an "include
iconified windows" option...


SVN revision: 2249
This commit is contained in:
Tom Gilbert 2000-03-16 23:05:58 +00:00
parent f44f9ee3bc
commit 4a9c871612
18 changed files with 192 additions and 155 deletions

View File

@ -4317,3 +4317,13 @@ Also fixes a couple of bugs with the current -econfdir option.
I've tested this fairly well, as has Bob, but let me know if there are any
problems.
-------------------------------------------------------------------------------
Thu Mar 16 23:02:49 GMT 2000
(gilbertt)
Patch from Marius Aamodt Eriksen <marius@linux.com>. Provides option to
include shaded windows in focuslist. Now all we need is an "include
iconified windows" option...

View File

@ -1195,6 +1195,7 @@ typedef struct _emode
char menusonscreen;
char warpmenus;
char warpsticky;
char warpshaded;
char numdesktops;
char transientsfollowleader;
char switchfortransientmap;
@ -2400,8 +2401,8 @@ void ModifyCMClass(char *name,
int rnum, unsigned char *rpx,
unsigned char *rpy, int gnum,
unsigned char *gpx, unsigned char *gpy,
int bnum, unsigned char *bpx,
int bnum, unsigned char *bpx,
unsigned char *bpy);
/* config.c functions */
@ -2528,8 +2529,8 @@ Iconbox *SelectIconboxForEwin(EWin * ewin);
/* slideouts.c functions */
void SlideWindowSizeTo(Window win, int fx, int fy,
int tx, int ty,
int fw, int fh, int tw, int th,
int fw, int fh, int tw, int th,
int speed);
Slideout *CreateSlideout(char *name, char dir);
void ShowSlideout(Slideout * s, Window win);

View File

@ -1181,11 +1181,11 @@ doMoveEnd(void *params)
if (gwins[i]->floating)
MoveEwinToDesktopAt(gwins[i], d,
gwins[i]->x - (desks.desk[d].x -
desks.desk[gwins[i]->
desktop].x),
desks.
desk[gwins[i]->desktop].x),
gwins[i]->y - (desks.desk[d].y -
desks.desk[gwins[i]->
desktop].y));
desks.
desk[gwins[i]->desktop].y));
else
MoveEwinToDesktopAt(gwins[i], d, gwins[i]->x, gwins[i]->y);
gwins[i]->floating = 0;

View File

@ -337,13 +337,13 @@ SetCurrentArea(int ax, int ay)
lst[i]->x -
(root.w *
(ax -
desks.desk[desks.current].
current_area_x)),
desks.desk[desks.
current].current_area_x)),
lst[i]->y -
(root.h *
(ay -
desks.desk[desks.current].
current_area_y)));
desks.desk[desks.
current].current_area_y)));
if (setflip)
mode.flipp = 0;
lst[i]->area_x = a1;
@ -374,13 +374,13 @@ SetCurrentArea(int ax, int ay)
x -
(root.w *
(ax -
desks.desk[desks.
current].current_area_x)),
desks.desk[desks.current].
current_area_x)),
y -
(root.h *
(ay -
desks.desk[desks.
current].current_area_y)));
desks.desk[desks.current].
current_area_y)));
}
}
/* if we're not moving it... move it across */
@ -399,13 +399,13 @@ SetCurrentArea(int ax, int ay)
lst[i]->x -
(root.w *
(ax -
desks.desk[desks.current].
current_area_x)),
desks.desk[desks.
current].current_area_x)),
lst[i]->y -
(root.h *
(ay -
desks.desk[desks.current].
current_area_y)));
desks.desk[desks.
current].current_area_y)));
if (setflip)
mode.flipp = 0;
lst[i]->area_x = a1;

View File

@ -1163,8 +1163,7 @@ CalcEwinWinpart(EWin * ewin, int i)
ewin->border->part[i].geom.topleft.x.absolute +
ewin->bits[topleft].x;
y =
((ewin->
border->part[i].geom.topleft.y.percent *
((ewin->border->part[i].geom.topleft.y.percent *
ewin->bits[topleft].h) >> 10) +
ewin->border->part[i].geom.topleft.y.absolute +
ewin->bits[topleft].y;
@ -1173,12 +1172,12 @@ CalcEwinWinpart(EWin * ewin, int i)
if (bottomright == -1)
{
ox =
((ewin->
border->part[i].geom.bottomright.x.percent * ewin->w) >> 10) +
((ewin->border->
part[i].geom.bottomright.x.percent * ewin->w) >> 10) +
ewin->border->part[i].geom.bottomright.x.absolute;
oy =
((ewin->
border->part[i].geom.bottomright.y.percent * ewin->h) >> 10) +
((ewin->border->
part[i].geom.bottomright.y.percent * ewin->h) >> 10) +
ewin->border->part[i].geom.bottomright.y.absolute;
}
else if (bottomright >= 0)
@ -2592,8 +2591,9 @@ MinShadeSize(EWin * ewin, int *mw, int *mh)
(ewin->w - ewin->border->border.right) > rightborderwidth)
rightborderwidth =
(ewin->bits[i].x + ewin->bits[i].w) - (ewin->w -
ewin->border->
border.right);
ewin->
border->border.
right);
}
}
ewin->w = rightborderwidth + leftborderwidth;
@ -2619,8 +2619,9 @@ MinShadeSize(EWin * ewin, int *mw, int *mh)
bottomborderwidth)
bottomborderwidth =
(ewin->bits[i].y + ewin->bits[i].h) - (ewin->h -
ewin->border->
border.bottom);
ewin->
border->border.
bottom);
}
}
ewin->h = bottomborderwidth + topborderwidth;

View File

@ -116,6 +116,7 @@
#define CONTROL_RAISE_AFTER_NEXT_FOCUS 1353
#define CONTROL_DISPLAY_WARP 1354
#define CONTROL_WARPSTICKY 667
#define CONTROL_WARPSHADED 668
#define CONTROL_WARP_AFTER_NEXT_FOCUS 1355
#define CONTROL_PAGER_SCANSPEED 1356
#define CONTROL_ICONTEXT 1357

View File

@ -724,6 +724,9 @@ Config_Control(FILE * ConfigFile)
case CONTROL_WARPSTICKY:
mode.warpsticky = i2;
break;
case CONTROL_WARPSHADED:
mode.warpshaded = i2;
break;
case DESKTOP_HIQUALITYBG:
desks.hiqualitybg = i2;
break;
@ -3834,6 +3837,7 @@ SaveUserControlConfig(FILE * autosavefile)
fprintf(autosavefile, "351 %i\n", (int)mode.menusonscreen);
fprintf(autosavefile, "666 %i\n", (int)mode.warpmenus);
fprintf(autosavefile, "667 %i\n", (int)mode.warpsticky);
fprintf(autosavefile, "668 %i\n", (int)mode.warpshaded);
fprintf(autosavefile, "1350 %i\n", (int)mode.user_bg);
fprintf(autosavefile, "1351 %i\n", (int)mode.pager_zoom);
fprintf(autosavefile, "1352 %i\n", (int)mode.pager_title);

View File

@ -1081,8 +1081,8 @@ DialogRealizeItem(Dialog * d, DItem * di)
ImlibImage *im;
im =
ELoadImage(di->item.slider.ic_border->norm.normal->
im_file);
ELoadImage(di->item.slider.ic_border->norm.
normal->im_file);
if (im)
{
di->item.slider.border_orig_w = im->rgb_width;
@ -1356,23 +1356,25 @@ DialogRealizeItem(Dialog * d, DItem * di)
dii->item.check_button.check_win,
dii->x, dii->y +
((dii->h -
dii->item.check_button.
check_orig_h) / 2),
dii->item.check_button.
check_orig_w,
dii->item.check_button.
check_orig_h);
dii->item.
check_button.check_orig_h) /
2),
dii->item.
check_button.check_orig_w,
dii->item.
check_button.check_orig_h);
if (dii->type == DITEM_RADIOBUTTON)
EMoveResizeWindow(disp,
dii->item.radio_button.radio_win,
dii->x, dii->y +
((dii->h -
dii->item.radio_button.
radio_orig_h) / 2),
dii->item.radio_button.
radio_orig_w,
dii->item.radio_button.
radio_orig_h);
dii->item.
radio_button.radio_orig_h) /
2),
dii->item.
radio_button.radio_orig_w,
dii->item.
radio_button.radio_orig_h);
if (dii->type == DITEM_AREA)
{
dii->item.area.w = dii->w -
@ -1882,8 +1884,7 @@ DialogItemAreaSetSize(DItem * di, int w, int h)
di->item.area.h = h;
}
Window
DialogItemAreaGetWindow(DItem * di)
Window DialogItemAreaGetWindow(DItem * di)
{
return di->item.area.area_win;
}

View File

@ -494,8 +494,7 @@ HandleMotion(XEvent * ev)
(gwins
[i]->reqx,
gwins[i]->x,
mode.
edge_snap_dist)))))))
mode.edge_snap_dist)))))))
{
jumpx = 1;
ndx = gwins[i]->reqx - gwins[i]->x + dx;
@ -518,8 +517,7 @@ HandleMotion(XEvent * ev)
(gwins
[i]->reqy,
gwins[i]->y,
mode.
edge_snap_dist)))))))
mode.edge_snap_dist)))))))
{
jumpy = 1;
ndy = gwins[i]->reqy - gwins[i]->y + dy;
@ -982,8 +980,8 @@ HandleMotion(XEvent * ev)
{
di->item.slider.wanted_val += dy;
di->item.slider.val = di->item.slider.lower +
((((di->
item.slider.base_h - di->item.slider.knob_h -
((((di->item.
slider.base_h - di->item.slider.knob_h -
di->item.slider.wanted_val) *
(di->item.slider.upper -
di->item.slider.lower)) /
@ -2509,13 +2507,13 @@ HandleMouseUp(XEvent * ev)
HideEwin(gwins[i]);
MoveEwin(gwins[i], gwin_px[i] +
((desks.desk
[gwins[i]->desktop].
current_area_x) -
[gwins[i]->
desktop].current_area_x) -
p->hi_ewin->area_x) * root.w,
gwin_py[i] +
((desks.
desk[gwins[i]->desktop].
current_area_y) -
((desks.desk
[gwins[i]->
desktop].current_area_y) -
p->hi_ewin->area_y) * root.h);
if (was_shaded != gwins[i]->shaded)
InstantShadeEwin(gwins[i]);

View File

@ -263,7 +263,8 @@ cp(char *s, char *ss)
EDBUG_RETURN_;
}
time_t moddate(char *s)
time_t
moddate(char *s)
{
struct stat st;

View File

@ -1699,8 +1699,8 @@ IPC_ImageClass(char *params, Client * c)
if (iclass->norm.normal->real_file)
im =
Imlib_load_image(id,
iclass->norm.normal->
real_file);
iclass->norm.
normal->real_file);
if (im)
{
Esnprintf(buf, sizeof(buf),

View File

@ -126,8 +126,7 @@ GetNetText(char *URL)
}
time_t
GetNetFileDate(char *URL)
time_t GetNetFileDate(char *URL)
{
#ifdef AUTOUPGRADE

View File

@ -37,8 +37,7 @@ static Window sc_window = 0;
static Atom sc_atom = 0;
static ImlibData *imd = NULL;
Window
SC_GetDestWin(void)
Window SC_GetDestWin(void)
{
return 0;
}

View File

@ -325,6 +325,7 @@ static char tmp_warp_after_focus;
static char tmp_raise_after_focus;
static char tmp_display_warp;
static char tmp_warpsticky;
static char tmp_warpshaded;
static char tmp_clickalways;
static void CB_ConfigureFocus(int val, void *data);
@ -344,6 +345,7 @@ CB_ConfigureFocus(int val, void *data)
mode.raise_after_next_focus = tmp_raise_after_focus;
mode.display_warp = tmp_display_warp;
mode.warpsticky = tmp_warpsticky;
mode.warpshaded = tmp_warpshaded;
#endif /* WITH_TARTY_WARP */
mode.clickalways = tmp_clickalways;
FixFocus();
@ -377,6 +379,7 @@ SettingsFocus(void)
tmp_warp_after_focus = mode.warp_after_next_focus;
tmp_display_warp = mode.display_warp;
tmp_warpsticky = mode.warpsticky;
tmp_warpshaded = mode.warpshaded;
#endif /* WITH_TARTY_WARP */
tmp_clickalways = mode.clickalways;
@ -513,6 +516,14 @@ SettingsFocus(void)
DialogItemCheckButtonSetState(di, tmp_warpsticky);
DialogItemCheckButtonSetPtr(di, &tmp_warpsticky);
di = DialogAddItem(table, DITEM_CHECKBUTTON);
DialogItemSetPadding(di, 2, 2, 2, 2);
DialogItemSetFill(di, 1, 0);
DialogItemSetColSpan(di, 2);
DialogItemCheckButtonSetText(di, _("Include shaded windows in focus list"));
DialogItemCheckButtonSetState(di, tmp_warpshaded);
DialogItemCheckButtonSetPtr(di, &tmp_warpshaded);
di = DialogAddItem(table, DITEM_CHECKBUTTON);
DialogItemSetPadding(di, 2, 2, 2, 2);
DialogItemSetFill(di, 1, 0);

View File

@ -557,6 +557,7 @@ SetupX()
#endif /* WITH_TARTY_WARP */
mode.warp_on_next_focus = 0;
mode.warpsticky = 1;
mode.warpshaded = 1;
mode.edge_flip_resistance = 15;
mode.context_ewin = NULL;
mode.moveresize_pending_ewin = NULL;
@ -739,8 +740,7 @@ SetupEnv()
return;
}
Window
MakeExtInitWin(void)
Window MakeExtInitWin(void)
{
Display *d2;
Window win;

View File

@ -679,8 +679,8 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
ic->norm.normal->im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.normal->
im),
ic->norm.
normal->im),
Imlib_copy_mask(id,
ic->norm.normal->im),
x, y);
@ -702,11 +702,12 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
ic->norm.normal->im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.normal->
im),
ic->norm.
normal->im),
Imlib_copy_mask(id,
ic->norm.normal->
im), x, y);
ic->norm.
normal->im), x,
y);
x += ic->norm.normal->im->rgb_width;
}
break;
@ -722,11 +723,12 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
ic->norm.normal->im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.normal->
im),
ic->norm.
normal->im),
Imlib_copy_mask(id,
ic->norm.normal->
im), x, y);
ic->norm.
normal->im), x,
y);
x += ic->norm.normal->im->rgb_width;
}
break;
@ -742,11 +744,12 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
ic->norm.normal->im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.normal->
im),
ic->norm.
normal->im),
Imlib_copy_mask(id,
ic->norm.normal->
im), x, y);
ic->norm.
normal->im), x,
y);
x += ic->norm.normal->im->rgb_width;
}
break;
@ -762,11 +765,12 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
ic->norm.normal->im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.normal->
im),
ic->norm.
normal->im),
Imlib_copy_mask(id,
ic->norm.normal->
im), x, y);
ic->norm.
normal->im), x,
y);
x += ic->norm.normal->im->rgb_width;
}
break;
@ -782,11 +786,12 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
ic->norm.normal->im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.normal->
im),
ic->norm.
normal->im),
Imlib_copy_mask(id,
ic->norm.normal->
im), x, y);
ic->norm.
normal->im), x,
y);
x += ic->norm.normal->im->rgb_width;
}
break;
@ -806,16 +811,17 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
{
Imlib_render(id, ic->norm.normal->im,
ic->norm.normal->im->rgb_width,
ic->norm.normal->im->
rgb_height);
ic->norm.normal->
im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.
normal->im),
ic->
norm.normal->
im),
Imlib_copy_mask(id,
ic->norm.
normal->im), x,
y);
ic->
norm.normal->
im), x, y);
x += ic->norm.normal->im->rgb_width;
}
}
@ -829,16 +835,17 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
{
Imlib_render(id, ic->norm.normal->im,
ic->norm.normal->im->rgb_width,
ic->norm.normal->im->
rgb_height);
ic->norm.normal->
im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.
normal->im),
ic->
norm.normal->
im),
Imlib_copy_mask(id,
ic->norm.
normal->im), x,
y);
ic->
norm.normal->
im), x, y);
x += ic->norm.normal->im->rgb_width;
}
}
@ -852,16 +859,17 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
{
Imlib_render(id, ic->norm.normal->im,
ic->norm.normal->im->rgb_width,
ic->norm.normal->im->
rgb_height);
ic->norm.normal->
im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.
normal->im),
ic->
norm.normal->
im),
Imlib_copy_mask(id,
ic->norm.
normal->im), x,
y);
ic->
norm.normal->
im), x, y);
x += ic->norm.normal->im->rgb_width;
}
}
@ -875,16 +883,17 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
{
Imlib_render(id, ic->norm.normal->im,
ic->norm.normal->im->rgb_width,
ic->norm.normal->im->
rgb_height);
ic->norm.normal->
im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.
normal->im),
ic->
norm.normal->
im),
Imlib_copy_mask(id,
ic->norm.
normal->im), x,
y);
ic->
norm.normal->
im), x, y);
x += ic->norm.normal->im->rgb_width;
}
}
@ -898,16 +907,17 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
{
Imlib_render(id, ic->norm.normal->im,
ic->norm.normal->im->rgb_width,
ic->norm.normal->im->
rgb_height);
ic->norm.normal->
im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.
normal->im),
ic->
norm.normal->
im),
Imlib_copy_mask(id,
ic->norm.
normal->im), x,
y);
ic->
norm.normal->
im), x, y);
x += ic->norm.normal->im->rgb_width;
}
}
@ -921,16 +931,17 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
{
Imlib_render(id, ic->norm.normal->im,
ic->norm.normal->im->rgb_width,
ic->norm.normal->im->
rgb_height);
ic->norm.normal->
im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.
normal->im),
ic->
norm.normal->
im),
Imlib_copy_mask(id,
ic->norm.
normal->im), x,
y);
ic->
norm.normal->
im), x, y);
x += ic->norm.normal->im->rgb_width;
}
}
@ -944,16 +955,17 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
{
Imlib_render(id, ic->norm.normal->im,
ic->norm.normal->im->rgb_width,
ic->norm.normal->im->
rgb_height);
ic->norm.normal->
im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.
normal->im),
ic->
norm.normal->
im),
Imlib_copy_mask(id,
ic->norm.
normal->im), x,
y);
ic->
norm.normal->
im), x, y);
x += ic->norm.normal->im->rgb_width;
}
}
@ -967,16 +979,17 @@ ShowToolTip(ToolTip * tt, char *text, ActionClass * ac, int x, int y)
{
Imlib_render(id, ic->norm.normal->im,
ic->norm.normal->im->rgb_width,
ic->norm.normal->im->
rgb_height);
ic->norm.normal->
im->rgb_height);
PastePixmap(disp, tt->win,
Imlib_copy_image(id,
ic->norm.
normal->im),
ic->
norm.normal->
im),
Imlib_copy_mask(id,
ic->norm.
normal->im), x,
y);
ic->
norm.normal->
im), x, y);
x += ic->norm.normal->im->rgb_width;
}
}

View File

@ -140,10 +140,11 @@ WarpFocus(int delta)
if (((ewin->sticky) || (ewin->desktop == desks.current)) &&
(ewin->x + ewin->w > 0) && (ewin->x < root.w) &&
(ewin->y + ewin->h > 0) && (ewin->y < root.h) &&
(!ewin->skipfocus) && (!ewin->shaded) &&
(!ewin->menu) && (!ewin->pager) &&
!(ewin->sticky && !mode.warpsticky) &&
(!ewin->ibox) && (!ewin->iconified)
(!ewin->skipfocus) && !(ewin->shaded && !mode.warpshaded)
&& (!ewin->menu) && (!ewin->pager) && !(ewin->sticky
&& !mode.
warpsticky)
&& (!ewin->ibox) && (!ewin->iconified)
/*&& (ewin->client.mwm_decor_title) &&
* (ewin->client.mwm_decor_border) */
)

15
src/x.c
View File

@ -40,7 +40,8 @@ EFreePixmap(Display * display, Pixmap pixmap)
XFreePixmap(display, pixmap);
}
Window ECreateWindow(Window parent, int x, int y, int w, int h, int saveunder)
Window
ECreateWindow(Window parent, int x, int y, int w, int h, int saveunder)
{
EXID *xid;
Window win;
@ -586,8 +587,7 @@ DelXID(Window win)
}
}
Window
ECreateEventWindow(Window parent, int x, int y, int w, int h)
Window ECreateEventWindow(Window parent, int x, int y, int w, int h)
{
Window win;
XSetWindowAttributes attr;
@ -603,8 +603,7 @@ ECreateEventWindow(Window parent, int x, int y, int w, int h)
* create a window which will accept the keyboard focus when no other
* windows have it
*/
Window
ECreateFocusWindow(Window parent, int x, int y, int w, int h)
Window ECreateFocusWindow(Window parent, int x, int y, int w, int h)
{
Window win;
XSetWindowAttributes attr;
@ -738,8 +737,7 @@ WinExists(Window win)
EDBUG_RETURN(0);
}
Window
WindowAtXY_0(Window base, int bx, int by, int x, int y)
Window WindowAtXY_0(Window base, int bx, int by, int x, int y)
{
Window *list = NULL;
XWindowAttributes att;
@ -786,8 +784,7 @@ WindowAtXY_0(Window base, int bx, int by, int x, int y)
EDBUG_RETURN(base);
}
Window
WindowAtXY(int x, int y)
Window WindowAtXY(int x, int y)
{
Window *list = NULL;
Window child = 0, parent_win = 0, root_win = 0;