Commit df70725f authored by Eli Zaretskii's avatar Eli Zaretskii

(w32_createwindow): Handle -geometry command line option and the geometry

settings in the Registry.
parent 65c6c6b6
......@@ -2066,7 +2066,8 @@ w32_createwindow (f)
{
HWND hwnd;
RECT rect;
Lisp_Object top, left;
Lisp_Object top = Qunbound;
Lisp_Object left = Qunbound;
rect.left = rect.top = 0;
rect.right = FRAME_PIXEL_WIDTH (f);
......@@ -2079,13 +2080,41 @@ w32_createwindow (f)
if (!hprevinst)
{
Lisp_Object ifa;
w32_init_class (hinst);
/* Handle the -geometry command line option and the geometry
settings in the registry. They are decoded and put into
initial-frame-alist by w32-win.el:x-handle-geometry. */
ifa = Fsymbol_value (intern ("initial-frame-alist"));
if (CONSP (ifa))
{
Lisp_Object lt = Fassq (Qleft, ifa);
Lisp_Object tp = Fassq (Qtop, ifa);
if (!NILP (lt))
{
lt = XCDR (lt);
if (INTEGERP (lt))
left = lt;
}
if (!NILP (tp))
{
tp = XCDR (tp);
if (INTEGERP (tp))
top = tp;
}
}
}
/* When called with RES_TYPE_NUMBER, w32_get_arg will return zero
for anything that is not a number and is not Qunbound. */
left = w32_get_arg (Qnil, Qleft, "left", "Left", RES_TYPE_NUMBER);
top = w32_get_arg (Qnil, Qtop, "top", "Top", RES_TYPE_NUMBER);
if (EQ (left, Qunbound) && EQ (top, Qunbound))
{
/* When called with RES_TYPE_NUMBER, w32_get_arg will return zero
for anything that is not a number and is not Qunbound. */
left = w32_get_arg (Qnil, Qleft, "left", "Left", RES_TYPE_NUMBER);
top = w32_get_arg (Qnil, Qtop, "top", "Top", RES_TYPE_NUMBER);
}
FRAME_W32_WINDOW (f) = hwnd
= CreateWindow (EMACS_CLASS,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment