To:
[email protected]
Subject: Patch 5.6a.016 (extra)
Fcc: outbox
From: Bram Moolenaar <
[email protected]>
------------
Patch 5.6a.016 (extra)
Problem: Mac: Window size is restricted when starting. Cannot drag the
window all over the desktop.
Solution: Get real screen size instead of assuming 640x400. Do not use a
fixed number for the drag limits. (Axel Kielhorn)
Files: src/gui_mac.c
*** ../vim-5.6a.15/src/gui_mac.c Mon Dec 20 09:59:11 1999
--- src/gui_mac.c Thu Dec 30 10:07:36 1999
***************
*** 22,27 ****
--- 22,30 ----
#ifdef USE_AEVENT
# include <AppleEvents.h>
#endif
+ #if UNIVERSAL_INTERFACES_VERSION >= 0x0330
+ # include <ControlDefinitions.h>
+ #endif
#define kNothing 0
#define kCreateEmpty 2 /*1*/
***************
*** 637,654 ****
}
/*
! * Allow 10 pixels for horizontal borders, 30 for vertical borders.
! * Is there no way in X to find out how wide the borders really are?
*/
void
gui_mch_get_screen_dimensions(screen_w, screen_h)
int *screen_w;
int *screen_h;
{
! /* TODO: Go get the real screen dimension
! * add live udate of those value on suspend/resume */
! *screen_w = 640 - 10;
! *screen_h = 400 - 30;
}
/* Convert a string representing a point size into pixels. The string should
--- 640,660 ----
}
/*
! * Get the screen dimensions.
! * Allow 10 pixels for horizontal borders, 40 for vertical borders.
! * Is there no way to find out how wide the borders really are?
! * TODO: Add live udate of those value on suspend/resume.
*/
void
gui_mch_get_screen_dimensions(screen_w, screen_h)
int *screen_w;
int *screen_h;
{
! GDHandle dominantDevice = GetMainDevice();
! Rect screenRect = (**dominantDevice).gdRect;
!
! *screen_w = screenRect.right - 10;
! *screen_h = screenRect.bottom - 40;
}
/* Convert a string representing a point size into pixels. The string should
***************
*** 1365,1371 ****
break;
case (inDrag):
! SetRect (&movingLimits, 0, 0, 832, 624);
DragWindow (whichWindow, theEvent->where, &movingLimits);
break;
--- 1371,1378 ----
break;
case (inDrag):
! /* SetRect (&movingLimits, 0, 0, 832, 624); */
! movingLimits = (*GetGrayRgn())->rgnBBox;
DragWindow (whichWindow, theEvent->where, &movingLimits);
break;
*** ../vim-5.6a.15/src/version.c Wed Dec 29 12:19:30 1999
--- src/version.c Thu Dec 30 10:15:26 1999
***************
*** 420,421 ****
--- 420,423 ----
{ /* Add new patch number below this line */
+ /**/
+ 16,
/**/
--
BEDEVERE: Wait. Wait ... tell me, what also floats on water?
ALL: Bread? No, no, no. Apples .... gravy ... very small rocks ...
ARTHUR: A duck.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
--/-/---- Bram Moolenaar ----
[email protected] ----
[email protected] ---\-\--
\ \ www.vim.org/iccf www.moolenaar.net www.vim.org / /