CVS commit: xsrc/external/mit/xdm/dist/greeter

2022-05-24 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Tue May 24 22:47:53 UTC 2022

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Position input fields without overlap.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xdm/dist/greeter/Login.c
diff -u xsrc/external/mit/xdm/dist/greeter/Login.c:1.6 xsrc/external/mit/xdm/dist/greeter/Login.c:1.7
--- xsrc/external/mit/xdm/dist/greeter/Login.c:1.6	Fri Jun  7 05:49:37 2019
+++ xsrc/external/mit/xdm/dist/greeter/Login.c	Tue May 24 22:47:52 2022
@@ -328,7 +328,7 @@ XmuXftTextWidth(Display *dpy, XftFont *f
 #define SEP_H(w)	((w)->login.inframeswidth * 2)
 
 #define PROMPT_X(w)	(2 * PROMPT_X_INC(w))
-#define PROMPT_Y(w,n) 	((SEP_Y(w) + ((n)+1) * GREET_Y_INC(w) + 2 * (w)->login.inframeswidth))
+#define PROMPT_Y(w,n) 	(SEP_Y(w) + GREET_Y_INC(w) + (n) * Y_INC(w) + (2*(n)+1) * ((w)->login.inframeswidth + VALUE_VPAD(w,n)))
 #define PROMPT_W(w)	(w->core.width - PROMPT_X(w) - 2 * TEXT_X_INC(w) - LOGO_W(w))
 #define PROMPT_H(w)	Y_INC(w)
 



CVS commit: xsrc/external/mit/xdm/dist/greeter

2022-05-24 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Tue May 24 22:47:53 UTC 2022

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Position input fields without overlap.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-06 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Fri Jun  7 05:49:37 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Center padding around edit fields.
Correct greeting text horizontal position for Logo padding.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xdm/dist/greeter/Login.c
diff -u xsrc/external/mit/xdm/dist/greeter/Login.c:1.5 xsrc/external/mit/xdm/dist/greeter/Login.c:1.6
--- xsrc/external/mit/xdm/dist/greeter/Login.c:1.5	Fri Jun  7 05:01:55 2019
+++ xsrc/external/mit/xdm/dist/greeter/Login.c	Fri Jun  7 05:49:37 2019
@@ -255,7 +255,7 @@ static XtResource resources[] = {
 
 #define Y_ASCENT(w)	max (F_ASCENT(prompt), F_ASCENT(text))
 #define Y_DESCENT(w)	max (F_DESCENT(prompt), F_DESCENT(text))
-#define Y_INC(w)	((Y_ASCENT(w) + Y_DESCENT(w)) * 5 / 4)
+#define Y_INC(w)	(Y_ASCENT(w) + Y_DESCENT(w))
 
 #define CURSOR_W	5
 
@@ -316,7 +316,7 @@ XmuXftTextWidth(Display *dpy, XftFont *f
 
 #define GREETING(w)	((w)->login.secure_session  && !(w)->login.allow_access ?\
 (w)->login.greeting : (w)->login.unsecure_greet)
-#define GREET_X(w)	((int)((w->core.width - \
+#define GREET_X(w)	((int)((w->core.width - LOGO_W(w) + LOGO_PAD(w) - \
 			 	STRING_WIDTH (greet, GREETING(w))) / 2))
 #define GREET_Y(w)	(GREETING(w)[0] ? 2 * GREET_Y_INC (w) : 0)
 #define GREET_W(w)	(max (STRING_WIDTH (greet, w->login.greeting), \
@@ -333,6 +333,7 @@ XmuXftTextWidth(Display *dpy, XftFont *f
 #define PROMPT_H(w)	Y_INC(w)
 
 #define VALUE_HPAD(w,n)	(TEXT_X_INC(w)/8)
+#define VALUE_VPAD(w,n)	((Y_INC(w)+3)/4)
 #define VALUE_X(w,n)	(PROMPT_X(w) + CUR_PROMPT_W(w,n) + VALUE_HPAD(w,n))
 #define VALUE_Y(w,n)	(PROMPT_Y(w,n))
 #define VALUE_W(w,n)	(PROMPT_W(w) - VALUE_X(w,n) + PROMPT_X(w) - CURSOR_W)
@@ -388,7 +389,7 @@ realizeValue (LoginWidget w, int cursor,
 x = VALUE_X (w,promptNum) + VALUE_HPAD(w,promptNum);
 y = VALUE_Y (w,promptNum);
 
-height = Y_INC(w);
+height = VALUE_H(w,promptNum);
 width = VALUE_W(w,promptNum);
 
 offset = VALUE_SHOW_START(w, promptNum);
@@ -742,11 +743,13 @@ draw_it (LoginWidget w)
 for (p = 0; p < NUM_PROMPTS ; p++)
 {
 	int in_frame_x = VALUE_X(w,p) - w->login.inframeswidth;
-	int in_frame_y = VALUE_Y(w,p) - Y_ASCENT(w) - w->login.inframeswidth;
+	int in_frame_y = VALUE_Y(w,p) - Y_ASCENT(w) - w->login.inframeswidth
+		- VALUE_VPAD(w,p);
 
 	int in_width = VALUE_W(w,p) + CURSOR_W + 2 * w->login.inframeswidth
 		+ 2 * VALUE_HPAD(w,p);
-	int in_height = Y_INC(w) + 2 * w->login.inframeswidth;
+	int in_height = VALUE_H(w,p) + 2 * w->login.inframeswidth
+		+ 2 * VALUE_VPAD(w,p);
 
 	GC topLeftGC, botRightGC, inpGC;
 
@@ -788,12 +791,8 @@ draw_it (LoginWidget w)
 }
 
 if (GREETING(w)[0]) {
-	int gx = GREET_X(w);
-
-#ifdef XPM
-	gx -= ((w->login.logoWidth/2) + w->login.logoPadding);
-#endif
-	DRAW_STRING (greet, gx, GREET_Y(w), GREETING(w), strlen (GREETING(w)));
+	DRAW_STRING (greet, GREET_X(w), GREET_Y(w),
+		 GREETING(w), strlen (GREETING(w)));
 }
 for (p = 0; p < NUM_PROMPTS ; p++) {
 	if (PROMPT_STATE(w, p) != LOGIN_PROMPT_NOT_SHOWN) {



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-06 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Fri Jun  7 05:49:37 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Center padding around edit fields.
Correct greeting text horizontal position for Logo padding.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-06 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Fri Jun  7 05:01:55 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Add visible padding to edit fields.
Vertically: 25% of field height.
Horizontally: 25% of character width.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-06 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Fri Jun  7 05:01:55 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Add visible padding to edit fields.
Vertically: 25% of field height.
Horizontally: 25% of character width.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xdm/dist/greeter/Login.c
diff -u xsrc/external/mit/xdm/dist/greeter/Login.c:1.4 xsrc/external/mit/xdm/dist/greeter/Login.c:1.5
--- xsrc/external/mit/xdm/dist/greeter/Login.c:1.4	Fri Jun  7 04:29:02 2019
+++ xsrc/external/mit/xdm/dist/greeter/Login.c	Fri Jun  7 05:01:55 2019
@@ -255,7 +255,7 @@ static XtResource resources[] = {
 
 #define Y_ASCENT(w)	max (F_ASCENT(prompt), F_ASCENT(text))
 #define Y_DESCENT(w)	max (F_DESCENT(prompt), F_DESCENT(text))
-#define Y_INC(w)	(Y_ASCENT(w) + Y_DESCENT(w))
+#define Y_INC(w)	((Y_ASCENT(w) + Y_DESCENT(w)) * 5 / 4)
 
 #define CURSOR_W	5
 
@@ -332,7 +332,8 @@ XmuXftTextWidth(Display *dpy, XftFont *f
 #define PROMPT_W(w)	(w->core.width - PROMPT_X(w) - 2 * TEXT_X_INC(w) - LOGO_W(w))
 #define PROMPT_H(w)	Y_INC(w)
 
-#define VALUE_X(w,n)	(PROMPT_X(w) + CUR_PROMPT_W(w,n))
+#define VALUE_HPAD(w,n)	(TEXT_X_INC(w)/8)
+#define VALUE_X(w,n)	(PROMPT_X(w) + CUR_PROMPT_W(w,n) + VALUE_HPAD(w,n))
 #define VALUE_Y(w,n)	(PROMPT_Y(w,n))
 #define VALUE_W(w,n)	(PROMPT_W(w) - VALUE_X(w,n) + PROMPT_X(w) - CURSOR_W)
 #define VALUE_H(w,n)	Y_INC(w)
@@ -384,7 +385,7 @@ realizeValue (LoginWidget w, int cursor,
 	text[i] = 0;
 }
 
-x = VALUE_X (w,promptNum);
+x = VALUE_X (w,promptNum) + VALUE_HPAD(w,promptNum);
 y = VALUE_Y (w,promptNum);
 
 height = Y_INC(w);
@@ -468,7 +469,8 @@ realizeCursor (LoginWidget w, GC gc)
 	return;
 }
 
-x = VALUE_X (w, w->login.activePrompt);
+x = VALUE_X (w, w->login.activePrompt)
+  + VALUE_HPAD(w, w->login.activePrompt);
 y = VALUE_Y (w, w->login.activePrompt);
 ascent = F_ASCENT(text);
 descent = F_DESCENT(text);
@@ -742,7 +744,8 @@ draw_it (LoginWidget w)
 	int in_frame_x = VALUE_X(w,p) - w->login.inframeswidth;
 	int in_frame_y = VALUE_Y(w,p) - Y_ASCENT(w) - w->login.inframeswidth;
 
-	int in_width = VALUE_W(w,p) + CURSOR_W + 2 * w->login.inframeswidth;
+	int in_width = VALUE_W(w,p) + CURSOR_W + 2 * w->login.inframeswidth
+		+ 2 * VALUE_HPAD(w,p);
 	int in_height = Y_INC(w) + 2 * w->login.inframeswidth;
 
 	GC topLeftGC, botRightGC, inpGC;



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-06 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Fri Jun  7 04:29:03 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Respect the outer border width for sizing the widget horizontally.
Add it twice so that the greeting text can neither trash nor touch
the border.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xdm/dist/greeter/Login.c
diff -u xsrc/external/mit/xdm/dist/greeter/Login.c:1.3 xsrc/external/mit/xdm/dist/greeter/Login.c:1.4
--- xsrc/external/mit/xdm/dist/greeter/Login.c:1.3	Fri Jun  7 04:00:43 2019
+++ xsrc/external/mit/xdm/dist/greeter/Login.c	Fri Jun  7 04:29:02 2019
@@ -345,7 +345,7 @@ XmuXftTextWidth(Display *dpy, XftFont *f
 #define FAIL_W(w)	max(ERROR_W(w, w->login.failMsg), \
 			ERROR_W(w, w->login.passwdChangeMsg))
 
-#define PAD_X(w)	(2 * (PROMPT_X(w) + max (GREET_X_INC(w), FAIL_X_INC(w
+#define PAD_X(w)	(2 * (PROMPT_X(w) + max (GREET_X_INC(w), FAIL_X_INC(w)) + 4*w->login.outframewidth))
 #define PAD_Y(w)	(max (max (Y_INC(w), GREET_Y_INC(w)),\
 			 FAIL_Y_INC(w)))
 



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-06 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Fri Jun  7 04:29:03 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Respect the outer border width for sizing the widget horizontally.
Add it twice so that the greeting text can neither trash nor touch
the border.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-06 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Fri Jun  7 04:00:43 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Cursor position was two pixels off to the left.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-06 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Fri Jun  7 04:00:43 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
Cursor position was two pixels off to the left.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xdm/dist/greeter/Login.c
diff -u xsrc/external/mit/xdm/dist/greeter/Login.c:1.2 xsrc/external/mit/xdm/dist/greeter/Login.c:1.3
--- xsrc/external/mit/xdm/dist/greeter/Login.c:1.2	Sat Jun  1 07:54:12 2019
+++ xsrc/external/mit/xdm/dist/greeter/Login.c	Fri Jun  7 04:00:43 2019
@@ -506,6 +506,8 @@ realizeCursor (LoginWidget w, GC gc)
 	break;
 }
 
+x += 2;
+
 XFillRectangle (XtDisplay (w), XtWindow (w), gc,
 		x, y - ascent + 1, 1, ascent + descent - 2);
 



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-01 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Sat Jun  1 07:54:12 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
fix geometry calculations so that entered text doesn't clobber the
input field borders.

scroll non-empty input when cursor deletes first position so that
one character stays visible.


To generate a diff of this commit:
cvs rdiff -u -r1.1.1.5 -r1.2 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: xsrc/external/mit/xdm/dist/greeter

2019-06-01 Thread Michael van Elst
Module Name:xsrc
Committed By:   mlelstv
Date:   Sat Jun  1 07:54:12 UTC 2019

Modified Files:
xsrc/external/mit/xdm/dist/greeter: Login.c

Log Message:
fix geometry calculations so that entered text doesn't clobber the
input field borders.

scroll non-empty input when cursor deletes first position so that
one character stays visible.


To generate a diff of this commit:
cvs rdiff -u -r1.1.1.5 -r1.2 xsrc/external/mit/xdm/dist/greeter/Login.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xdm/dist/greeter/Login.c
diff -u xsrc/external/mit/xdm/dist/greeter/Login.c:1.1.1.5 xsrc/external/mit/xdm/dist/greeter/Login.c:1.2
--- xsrc/external/mit/xdm/dist/greeter/Login.c:1.1.1.5	Tue Mar  5 08:26:49 2019
+++ xsrc/external/mit/xdm/dist/greeter/Login.c	Sat Jun  1 07:54:12 2019
@@ -244,8 +244,8 @@ static XtResource resources[] = {
 #define TEXT_X_INC(w)		F_MAX_WIDTH(text)
 #define TEXT_Y_INC(w)		(F_ASCENT(text) + F_DESCENT(text))
 
-#define PROMPT_X_INC(w)	F_MAX_WIDTH(prompt)
-#define PROMPT_Y_INC(w)	(F_ASCENT(prompt) + F_DESCENT(prompt))
+#define PROMPT_X_INC(w)		F_MAX_WIDTH(prompt)
+#define PROMPT_Y_INC(w)		(F_ASCENT(prompt) + F_DESCENT(prompt))
 
 #define GREET_X_INC(w)		F_MAX_WIDTH(greet)
 #define GREET_Y_INC(w)		(F_ASCENT(greet) + F_DESCENT(greet))
@@ -253,8 +253,11 @@ static XtResource resources[] = {
 #define FAIL_X_INC(w)		F_MAX_WIDTH(fail)
 #define FAIL_Y_INC(w)		(F_ASCENT(fail) + F_DESCENT(fail))
 
-#define Y_INC(w)	max (TEXT_Y_INC(w), PROMPT_Y_INC(w))
+#define Y_ASCENT(w)	max (F_ASCENT(prompt), F_ASCENT(text))
+#define Y_DESCENT(w)	max (F_DESCENT(prompt), F_DESCENT(text))
+#define Y_INC(w)	(Y_ASCENT(w) + Y_DESCENT(w))
 
+#define CURSOR_W	5
 
 #define PROMPT_TEXT(w,n) 	((w)->login.prompts[n].promptText)
 #define DEF_PROMPT_TEXT(w,n) 	((w)->login.prompts[n].defaultPrompt)
@@ -272,13 +275,12 @@ static XtResource resources[] = {
 
 #ifdef USE_XFT
 
-# define TEXT_COLOR(f)		(w->login.f##color.pixel)
-
-# define TEXT_WIDTH(f, m, l) 	XmuXftTextWidth(XtDisplay (w), \
-	w->login.f##Face, (FcChar8 *) m, l)
 static int
 XmuXftTextWidth(Display *dpy, XftFont *font, FcChar8 *string, int len);
 
+# define TEXT_COLOR(f)		(w->login.f##color.pixel)
+# define TEXT_WIDTH(f, m, l) 	XmuXftTextWidth(XtDisplay (w), \
+w->login.f##Face, (FcChar8 *) m, l)
 # define DRAW_STRING(f, x, y, m, l) \
 	/* Debug("DRAW_STRING(%s, %d, %d, %s, %d)\n", #f, x, y, m, l); */ \
 	XftDrawString8 (w->login.draw, &w->login.f##color, w->login.f##Face, \
@@ -287,9 +289,7 @@ XmuXftTextWidth(Display *dpy, XftFont *f
 #else
 
 # define TEXT_COLOR(f)		(w->login.f##pixel)
-
 # define TEXT_WIDTH(f, m, l) 	(XTextWidth (w->login.f##Font, m, l))
-
 # define DRAW_STRING(f, x, y, m, l) \
 	XDrawString (XtDisplay (w), XtWindow (w), w->login.f##GC, x, y, m, l)
 
@@ -300,18 +300,19 @@ XmuXftTextWidth(Display *dpy, XftFont *f
 
 /* Padded width of logo image, if compiled with XPM support */
 #ifdef XPM
-# define LOGO_W(w) ((w)->login.logoWidth + ((w)->login.logoPadding * 2))
+# define LOGO_PAD(w)   ((w)->login.logoPadding)
+# define LOGO_W(w) ((w)->login.logoWidth + (LOGO_PAD(w) * 2))
 #else
+# define LOGO_PAD(w)   0
 # define LOGO_W(w) 0
 #endif
 
 #define TEXT_PROMPT_W(w, m) (STRING_WIDTH(prompt, m) + w->login.inframeswidth)
 
-#define DEF_PROMPT_W(w,n) TEXT_PROMPT_W(w, w->login.prompts[n].defaultPrompt)
-#define CUR_PROMPT_W(w,n)  (max(MAX_DEF_PROMPT_W(w), PROMPT_TEXT(w,n) ? \
-		 TEXT_PROMPT_W(w, PROMPT_TEXT(w,n)) : 0))
-
-#define MAX_DEF_PROMPT_W(w) (max(DEF_PROMPT_W(w,0), DEF_PROMPT_W(w,1)))
+#define DEF_PROMPT_W(w,n)	TEXT_PROMPT_W(w, w->login.prompts[n].defaultPrompt)
+#define MAX_DEF_PROMPT_W(w)	(max(DEF_PROMPT_W(w,0), DEF_PROMPT_W(w,1)))
+#define CUR_PROMPT_W(w,n)	(max(MAX_DEF_PROMPT_W(w), PROMPT_TEXT(w,n) ? \
+	TEXT_PROMPT_W(w, PROMPT_TEXT(w,n)) : 0))
 
 #define GREETING(w)	((w)->login.secure_session  && !(w)->login.allow_access ?\
 (w)->login.greeting : (w)->login.unsecure_greet)
@@ -319,32 +320,32 @@ XmuXftTextWidth(Display *dpy, XftFont *f
 			 	STRING_WIDTH (greet, GREETING(w))) / 2))
 #define GREET_Y(w)	(GREETING(w)[0] ? 2 * GREET_Y_INC (w) : 0)
 #define GREET_W(w)	(max (STRING_WIDTH (greet, w->login.greeting), \
-			  STRING_WIDTH (greet, w->login.unsecure_greet)) \
-			 + LOGO_W(w))
+			  STRING_WIDTH (greet, w->login.unsecure_greet)))
+
+#define SEP_X(w)	((w)->login.outframewidth + LOGO_PAD(w))
+#define SEP_Y(w)	(GREET_Y(w) + GREET_Y_INC(w))
+#define SEP_W(w)	((w)->core.width - 2*(w->login.outframewidth) - LOGO_W(w) - LOGO_PAD(w))
+#define SEP_H(w)	((w)->login.inframeswidth * 2)
 
 #define PROMPT_X(w)	(2 * PROMPT_X_INC(w))
-#define PROMPT_Y(w,n)	((GREET_Y(w) + GREET_Y_INC(w) +\
-			  F_ASCENT(greet) + Y_INC(w)) + \
-			 (n * PROMPT_SPACE_Y(w)))
-#define PROMPT_W(w)	(w->core.width - (2 * TEXT_X_INC(w)))
-#define PROMPT_H(w)	(5 * Y_INC(w) / 4)
+#define PROMPT_Y(w,n) 	((SEP_Y(w) + ((n