# HG changeset patch # User vimboss # Date 1182263383 0 # Node ID 66e40876590bca973973b6aae208a14cb428c266 # Parent f12d38ee49de595d11efb50674bccfe0417c7063 updated for version 7.1-007 diff --git a/src/gui.h b/src/gui.h --- a/src/gui.h +++ b/src/gui.h @@ -460,7 +460,6 @@ typedef struct Gui 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 diff --git a/src/gui_mac.c b/src/gui_mac.c --- a/src/gui_mac.c +++ b/src/gui_mac.c @@ -1676,13 +1676,12 @@ gui_mac_doInContentClick(EventRecord *th /* TODO: NEEDED? */ clickIsPopup = FALSE; - if ((gui.MacOSHaveCntxMenu) && (mouse_model_popup())) - if (IsShowContextualMenuClick(theEvent)) - { - vimMouseButton = MOUSE_RIGHT; - vimModifiers &= ~MOUSE_CTRL; - clickIsPopup = TRUE; - } + 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,24 +1919,19 @@ gui_mac_doActivateEvent(EventRecord *eve WindowPtr whichWindow; whichWindow = (WindowPtr) event->message; - if ((event->modifiers) & activeFlag) - /* Activate */ - gui_focus_change(TRUE); - else + /* Dim scrollbars */ + if (whichWindow == gui.VimWindow) { - /* 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 + ControlRef rootControl; + GetRootControl(gui.VimWindow, &rootControl); + if ((event->modifiers) & activeFlag) + ActivateControl(rootControl); + else + DeactivateControl(rootControl); } + + /* Activate */ + gui_focus_change((event->modifiers) & activeFlag); } @@ -2559,16 +2553,15 @@ gui_mac_handle_event(EventRecord *event) OSErr error; /* Handle contextual menu right now (if needed) */ - if (gui.MacOSHaveCntxMenu) - if (IsShowContextualMenuClick(event)) - { + if (IsShowContextualMenuClick(event)) + { # if 0 - gui_mac_handle_contextual_menu(event); + gui_mac_handle_contextual_menu(event); # else - gui_mac_doMouseDownEvent(event); + gui_mac_doMouseDownEvent(event); # endif - return; - } + return; + } /* Handle normal event */ switch (event->what) @@ -2782,14 +2775,6 @@ gui_mch_prepare(int *argc, char **argv) (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"); @@ -2941,6 +2926,7 @@ gui_mch_init(void) #ifdef USE_CARBONKEYHANDLER EventHandlerRef keyEventHandlerRef; #endif + ControlRef rootControl; if (Gestalt(gestaltSystemVersion, &gMacSystemVersion) != noErr) gMacSystemVersion = 0x1000; /* TODO: Default to minimum sensible value */ @@ -2954,15 +2940,6 @@ gui_mch_init(void) (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"); @@ -2981,6 +2958,7 @@ gui_mch_init(void) 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); diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -667,6 +667,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 7, +/**/ 6, /**/ 5,