222 lines
6.3 KiB
Plaintext
222 lines
6.3 KiB
Plaintext
|
To: vim-dev@vim.org
|
||
|
Subject: patch 7.1.007 (extra)
|
||
|
Fcc: outbox
|
||
|
From: Bram Moolenaar <Bram@moolenaar.net>
|
||
|
Mime-Version: 1.0
|
||
|
Content-Type: text/plain; charset=ISO-8859-1
|
||
|
Content-Transfer-Encoding: 8bit
|
||
|
------------
|
||
|
|
||
|
Patch 7.1.007 (extra)
|
||
|
Problem: Mac: Context menu doesn't work on Intel Macs.
|
||
|
Scrollbars are not dimmed when Vim is not the active application.
|
||
|
Solution: Remove the test whether context menus are supported. They are
|
||
|
always there in OS/X. Handle the dimming. (Nicolas Weber)
|
||
|
Files: src/gui_mac.c, src/gui.h
|
||
|
|
||
|
|
||
|
*** ../vim-7.1.006/src/gui_mac.c Thu May 10 20:07:25 2007
|
||
|
--- src/gui_mac.c Sat Jun 9 14:19:25 2007
|
||
|
***************
|
||
|
*** 1676,1688 ****
|
||
|
/* TODO: NEEDED? */
|
||
|
clickIsPopup = FALSE;
|
||
|
|
||
|
! if ((gui.MacOSHaveCntxMenu) && (mouse_model_popup()))
|
||
|
! if (IsShowContextualMenuClick(theEvent))
|
||
|
! {
|
||
|
! vimMouseButton = MOUSE_RIGHT;
|
||
|
! vimModifiers &= ~MOUSE_CTRL;
|
||
|
! clickIsPopup = TRUE;
|
||
|
! }
|
||
|
|
||
|
/* Is it a double click ? */
|
||
|
dblClick = ((theEvent->when - lastMouseTick) < GetDblTime());
|
||
|
--- 1676,1687 ----
|
||
|
/* TODO: NEEDED? */
|
||
|
clickIsPopup = FALSE;
|
||
|
|
||
|
! if (mouse_model_popup() && IsShowContextualMenuClick(theEvent))
|
||
|
! {
|
||
|
! vimMouseButton = MOUSE_RIGHT;
|
||
|
! vimModifiers &= ~MOUSE_CTRL;
|
||
|
! clickIsPopup = TRUE;
|
||
|
! }
|
||
|
|
||
|
/* Is it a double click ? */
|
||
|
dblClick = ((theEvent->when - lastMouseTick) < GetDblTime());
|
||
|
***************
|
||
|
*** 1920,1943 ****
|
||
|
WindowPtr whichWindow;
|
||
|
|
||
|
whichWindow = (WindowPtr) event->message;
|
||
|
! if ((event->modifiers) & activeFlag)
|
||
|
! /* Activate */
|
||
|
! gui_focus_change(TRUE);
|
||
|
! else
|
||
|
{
|
||
|
! /* Deactivate */
|
||
|
! gui_focus_change(FALSE);
|
||
|
! /* DON'T KNOW what the code below was doing
|
||
|
! found in the deactivate clause, but the
|
||
|
! clause writing TRUE into in_focus (BUG)
|
||
|
! */
|
||
|
!
|
||
|
! #if 0 /* Removed by Dany as per above June 2001 */
|
||
|
! a_bool = false;
|
||
|
! SetPreserveGlyph(a_bool);
|
||
|
! SetOutlinePreferred(a_bool);
|
||
|
! #endif
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
--- 1919,1937 ----
|
||
|
WindowPtr whichWindow;
|
||
|
|
||
|
whichWindow = (WindowPtr) event->message;
|
||
|
! /* Dim scrollbars */
|
||
|
! if (whichWindow == gui.VimWindow)
|
||
|
{
|
||
|
! ControlRef rootControl;
|
||
|
! GetRootControl(gui.VimWindow, &rootControl);
|
||
|
! if ((event->modifiers) & activeFlag)
|
||
|
! ActivateControl(rootControl);
|
||
|
! else
|
||
|
! DeactivateControl(rootControl);
|
||
|
}
|
||
|
+
|
||
|
+ /* Activate */
|
||
|
+ gui_focus_change((event->modifiers) & activeFlag);
|
||
|
}
|
||
|
|
||
|
|
||
|
***************
|
||
|
*** 2559,2574 ****
|
||
|
OSErr error;
|
||
|
|
||
|
/* Handle contextual menu right now (if needed) */
|
||
|
! if (gui.MacOSHaveCntxMenu)
|
||
|
! if (IsShowContextualMenuClick(event))
|
||
|
! {
|
||
|
# if 0
|
||
|
! gui_mac_handle_contextual_menu(event);
|
||
|
# else
|
||
|
! gui_mac_doMouseDownEvent(event);
|
||
|
# endif
|
||
|
! return;
|
||
|
! }
|
||
|
|
||
|
/* Handle normal event */
|
||
|
switch (event->what)
|
||
|
--- 2553,2567 ----
|
||
|
OSErr error;
|
||
|
|
||
|
/* Handle contextual menu right now (if needed) */
|
||
|
! if (IsShowContextualMenuClick(event))
|
||
|
! {
|
||
|
# if 0
|
||
|
! gui_mac_handle_contextual_menu(event);
|
||
|
# else
|
||
|
! gui_mac_doMouseDownEvent(event);
|
||
|
# endif
|
||
|
! return;
|
||
|
! }
|
||
|
|
||
|
/* Handle normal event */
|
||
|
switch (event->what)
|
||
|
***************
|
||
|
*** 2782,2795 ****
|
||
|
(void) InstallAEHandlers();
|
||
|
#endif
|
||
|
|
||
|
- if (Gestalt(gestaltContextualMenuAttr, &gestalt_rc) == noErr)
|
||
|
- gui.MacOSHaveCntxMenu = BitTst(&gestalt_rc, 31-gestaltContextualMenuTrapAvailable);
|
||
|
- else
|
||
|
- gui.MacOSHaveCntxMenu = false;
|
||
|
-
|
||
|
- if (gui.MacOSHaveCntxMenu)
|
||
|
- gui.MacOSHaveCntxMenu = (InitContextualMenus()==noErr);
|
||
|
-
|
||
|
pomme = NewMenu(256, "\p\024"); /* 0x14= = Apple Menu */
|
||
|
|
||
|
AppendMenu(pomme, "\pAbout VIM");
|
||
|
--- 2775,2780 ----
|
||
|
***************
|
||
|
*** 2941,2946 ****
|
||
|
--- 2926,2932 ----
|
||
|
#ifdef USE_CARBONKEYHANDLER
|
||
|
EventHandlerRef keyEventHandlerRef;
|
||
|
#endif
|
||
|
+ ControlRef rootControl;
|
||
|
|
||
|
if (Gestalt(gestaltSystemVersion, &gMacSystemVersion) != noErr)
|
||
|
gMacSystemVersion = 0x1000; /* TODO: Default to minimum sensible value */
|
||
|
***************
|
||
|
*** 2954,2968 ****
|
||
|
(void) InstallAEHandlers();
|
||
|
#endif
|
||
|
|
||
|
- /* Ctrl click */
|
||
|
- if (Gestalt(gestaltContextualMenuAttr, &gestalt_rc) == noErr)
|
||
|
- gui.MacOSHaveCntxMenu = BitTst(&gestalt_rc, 31-gestaltContextualMenuTrapAvailable);
|
||
|
- else
|
||
|
- gui.MacOSHaveCntxMenu = false;
|
||
|
-
|
||
|
- if (gui.MacOSHaveCntxMenu)
|
||
|
- gui.MacOSHaveCntxMenu = (InitContextualMenus()==noErr);
|
||
|
-
|
||
|
pomme = NewMenu(256, "\p\024"); /* 0x14= = Apple Menu */
|
||
|
|
||
|
AppendMenu(pomme, "\pAbout VIM");
|
||
|
--- 2940,2945 ----
|
||
|
***************
|
||
|
*** 2981,2986 ****
|
||
|
--- 2958,2964 ----
|
||
|
gui.VimWindow = NewCWindow(nil, &windRect, "\pgVim on Macintosh", true,
|
||
|
zoomDocProc,
|
||
|
(WindowPtr)-1L, true, 0);
|
||
|
+ CreateRootControl(gui.VimWindow, &rootControl);
|
||
|
InstallReceiveHandler((DragReceiveHandlerUPP)receiveHandler,
|
||
|
gui.VimWindow, NULL);
|
||
|
SetPortWindowPort(gui.VimWindow);
|
||
|
*** ../vim-7.1.006/src/gui.h Thu May 10 19:18:46 2007
|
||
|
--- src/gui.h Sat Jun 9 14:10:34 2007
|
||
|
***************
|
||
|
*** 460,466 ****
|
||
|
WindowPtr VimWindow;
|
||
|
MenuHandle MacOSHelpMenu; /* Help menu provided by the MacOS */
|
||
|
int MacOSHelpItems; /* Nr of help-items supplied by MacOS */
|
||
|
- int MacOSHaveCntxMenu; /* Contextual menu available */
|
||
|
WindowPtr wid; /* Window id of text area */
|
||
|
int visibility; /* Is window partially/fully obscured? */
|
||
|
#endif
|
||
|
--- 460,465 ----
|
||
|
*** ../vim-7.1.006/src/version.c Tue Jun 19 15:40:51 2007
|
||
|
--- src/version.c Tue Jun 19 15:44:15 2007
|
||
|
***************
|
||
|
*** 668,669 ****
|
||
|
--- 668,671 ----
|
||
|
{ /* Add new patch number below this line */
|
||
|
+ /**/
|
||
|
+ 7,
|
||
|
/**/
|
||
|
|
||
|
--
|
||
|
When danger reared its ugly head,
|
||
|
He bravely turned his tail and fled
|
||
|
Yes, Brave Sir Robin turned about
|
||
|
And gallantly he chickened out
|
||
|
Bravely taking to his feet
|
||
|
He beat a very brave retreat
|
||
|
Bravest of the brave Sir Robin
|
||
|
Petrified of being dead
|
||
|
Soiled his pants then brave Sir Robin
|
||
|
Turned away and fled.
|
||
|
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
|
||
|
|
||
|
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
|
||
|
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
|
||
|
\\\ download, build and distribute -- http://www.A-A-P.org ///
|
||
|
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
|