give priority to keeping NW corner onscreen rather than SE, if we need to

2002-01-18  Havoc Pennington  <hp@pobox.com>

	* src/window.c (constrain_position): give priority to keeping NW
	corner onscreen rather than SE, if we need to shift the window
	to fit inside constraints

	* src/frames.c (meta_frames_get_geometry): don't depend on the
	current window size

	* src/theme.c: move geometry stuff in here, to be calculated as
	part of the theme

	* src/core.c (meta_core_get_client_size): new function to replace
	meta_core_get_frame_size() so we don't have weird cycles
	in the geometry calculation
This commit is contained in:
Havoc Pennington
2002-01-19 03:50:03 +00:00
committed by Havoc Pennington
parent 3194faaa9c
commit 19d2e8c7e1
10 changed files with 570 additions and 316 deletions

View File

@@ -24,10 +24,10 @@
#include "workspace.h"
void
meta_core_get_frame_size (Display *xdisplay,
Window frame_xwindow,
int *width,
int *height)
meta_core_get_client_size (Display *xdisplay,
Window frame_xwindow,
int *width,
int *height)
{
MetaDisplay *display;
MetaWindow *window;
@@ -39,9 +39,9 @@ meta_core_get_frame_size (Display *xdisplay,
meta_bug ("No such frame window 0x%lx!\n", frame_xwindow);
if (width)
*width = window->frame->rect.width;
*width = window->rect.width;
if (height)
*height = window->frame->rect.height;
*height = window->rect.height;
}
MetaFrameFlags