[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: startup frame position
From: |
Ralf Angeli |
Subject: |
Re: startup frame position |
Date: |
Sun, 25 Jun 2006 15:38:23 +0200 |
* Eli Zaretskii (2006-06-23) writes:
> One possible way of solving this would be to call SystemParametersInfo
> with SPI_GETWORKAREA arg in x_make_frame_visible, and fix f->left_pos
> and f->top_pos we pass to x_set_offset, if their values are inside the
> task bar. I think this should be done for all frames, not just the
> initial frame.
The attached patch implements window position adjustment in
`x_make_frame_visible'. Note that only the case of vertical
adjustment in case the lower part of the frame is covered by the task
bar. I haven't seen problems with frame positioning if the task bar
is located at the top or the sides of the desktop.
I am not sure if `x_make_frame_visible' is the right place for this
adjustment. Personally I'd rather do this in `w32_createwindow' right
after the call to `CreateWindow'. That way `ShowWindow' will already
get a frame with its final coordinates.
Besides, the patch does not address the problem of window placement
with a changed default face mentioned before. If you customize the
default face by giving it a smaller font size and create several new
frames with `C-x 5 2' those will get placed in a cascading manner
until the bottom of the frame relating to the original font size (not
the one in effect) hits the bottom of the usable desktop area.
> A minor catch in this is that user-defined frame parameters will be
> only approximately obeyed (if the specified position invades the
> taskbar). I don't know if this is bad.
We could check if a `top' frame parameter is defined and don't do the
position adjustment if it is. IIUC `w32_get_arg' would be suitable to
check such a parameter. Unfortunately it is not available in
w32term.c (and no w32fns.h declaring it which could be sourced in
w32term.c). That would be another reason to do the adjustment in
`w32_createwindow'.
--
Ralf
window-placement.patch
Description: Text Data
- Re: startup frame position, Ralf Angeli, 2006/06/11
- Re: startup frame position, Eli Zaretskii, 2006/06/11
- Re: startup frame position, Ralf Angeli, 2006/06/12
- Re: startup frame position, Eli Zaretskii, 2006/06/23
- Re: startup frame position, Ralf Angeli, 2006/06/23
- Re: startup frame position, Eli Zaretskii, 2006/06/23
- Re: startup frame position, Ralf Angeli, 2006/06/23
- Re: startup frame position,
Ralf Angeli <=
- Re: startup frame position, Eli Zaretskii, 2006/06/25
- Re: startup frame position, Ralf Angeli, 2006/06/25
- Re: startup frame position, Eli Zaretskii, 2006/06/25
- Re: startup frame position, Ralf Angeli, 2006/06/26
- Re: startup frame position, Eli Zaretskii, 2006/06/30