]> granicus.if.org Git - vim/commitdiff
patch 7.4.731 v7.4.731
authorBram Moolenaar <Bram@vim.org>
Tue, 9 Jun 2015 17:14:24 +0000 (19:14 +0200)
committerBram Moolenaar <Bram@vim.org>
Tue, 9 Jun 2015 17:14:24 +0000 (19:14 +0200)
Problem:    The tab menu shows "Close tab" even when it doesn't work.
Solution:   Don't show "Close tab" for the last tab. (John Marriott)

src/gui_gtk_x11.c
src/gui_mac.c
src/gui_motif.c
src/gui_w48.c
src/version.c

index 97ad6b0689967ba3bf07172d6a2f198b407d992f..553844605622f6efc5d2228d431096dbda2bcd78 100644 (file)
@@ -2873,7 +2873,9 @@ create_tabline_menu(void)
     GtkWidget *menu;
 
     menu = gtk_menu_new();
-    add_tabline_menu_item(menu, (char_u *)_("Close"), TABLINE_MENU_CLOSE);
+    if (first_tabpage->tp_next != NULL)
+       add_tabline_menu_item(menu, (char_u *)_("Close tab"),
+                                                         TABLINE_MENU_CLOSE);
     add_tabline_menu_item(menu, (char_u *)_("New tab"), TABLINE_MENU_NEW);
     add_tabline_menu_item(menu, (char_u *)_("Open Tab..."), TABLINE_MENU_OPEN);
 
index 54087c518b4dce7c2a8ee307f432131afdf60c62..3479dbb55c52de89bcca47e2a0849a0828347f50 100644 (file)
@@ -6819,7 +6819,8 @@ initialise_tabline(void)
 
     // create tabline popup menu required by vim docs (see :he tabline-menu)
     CreateNewMenu(kTabContextMenuId, 0, &contextMenu);
-    AppendMenuItemTextWithCFString(contextMenu, CFSTR("Close"), 0,
+    if (first_tabpage->tp_next != NULL)
+       AppendMenuItemTextWithCFString(contextMenu, CFSTR("Close Tab"), 0,
                                                    TABLINE_MENU_CLOSE, NULL);
     AppendMenuItemTextWithCFString(contextMenu, CFSTR("New Tab"), 0,
                                                      TABLINE_MENU_NEW, NULL);
index 57f264df95830bea1664eb7ff0837782bf587f04..eb8c3255b970aee9caec7461433b937cee1b4e62 100644 (file)
@@ -540,14 +540,17 @@ gui_x11_create_widgets()
     tabLine_menu = XmCreatePopupMenu(tabLine, "tabline popup", NULL, 0);
 
     /* Add the buttons to the menu */
-    n = 0;
-    XtSetArg(args[n], XmNuserData, TABLINE_MENU_CLOSE); n++;
-    xms = XmStringCreate((char *)"Close tab", STRING_TAG);
-    XtSetArg(args[n], XmNlabelString, xms); n++;
-    button = XmCreatePushButton(tabLine_menu, "Close", args, n);
-    XtAddCallback(button, XmNactivateCallback,
-                 (XtCallbackProc)tabline_button_cb, NULL);
-    XmStringFree(xms);
+    if (first_tabpage->tp_next != NULL)
+    {
+       n = 0;
+       XtSetArg(args[n], XmNuserData, TABLINE_MENU_CLOSE); n++;
+       xms = XmStringCreate((char *)"Close tab", STRING_TAG);
+       XtSetArg(args[n], XmNlabelString, xms); n++;
+       button = XmCreatePushButton(tabLine_menu, "Close", args, n);
+       XtAddCallback(button, XmNactivateCallback,
+                     (XtCallbackProc)tabline_button_cb, NULL);
+       XmStringFree(xms);
+    }
 
     n = 0;
     XtSetArg(args[n], XmNuserData, TABLINE_MENU_NEW); n++;
index cd7fdde54988051a46dbcc94397c39415468e1cf..1096ec8452427a4d515edb2e0d4184b3430e7d84 100644 (file)
@@ -2389,7 +2389,9 @@ show_tabline_popup_menu(void)
     if (tab_pmenu == NULL)
        return;
 
-    add_tabline_popup_menu_entry(tab_pmenu, TABLINE_MENU_CLOSE, _("Close tab"));
+    if (first_tabpage->tp_next != NULL)
+        add_tabline_popup_menu_entry(tab_pmenu,
+                                         TABLINE_MENU_CLOSE, _("Close tab"));
     add_tabline_popup_menu_entry(tab_pmenu, TABLINE_MENU_NEW, _("New tab"));
     add_tabline_popup_menu_entry(tab_pmenu, TABLINE_MENU_OPEN,
                                 _("Open tab..."));
index 6b8b15e8eed53dc41065882521aa7d14b69af75a..680e551fb7fa02498edd90774a357674100ba661 100644 (file)
@@ -741,6 +741,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    731,
 /**/
     730,
 /**/