mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
updated for version 7.3.279
Problem: With GTK, when gvim is full-screen and a tab is opened and using a specific monitor configuration the window is too big. Solution: Adjust the window size like on MS-Windows. (Yukihiro Nakadaira)
This commit is contained in:
@@ -1407,7 +1407,7 @@ gui_set_shellsize(mustset, fit_to_display, direction)
|
|||||||
if (!gui.shell_created)
|
if (!gui.shell_created)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
#ifdef MSWIN
|
#if defined(MSWIN) || defined(FEAT_GUI_GTK)
|
||||||
/* If not setting to a user specified size and maximized, calculate the
|
/* If not setting to a user specified size and maximized, calculate the
|
||||||
* number of characters that fit in the maximized window. */
|
* number of characters that fit in the maximized window. */
|
||||||
if (!mustset && gui_mch_maximized())
|
if (!mustset && gui_mch_maximized())
|
||||||
|
@@ -3899,6 +3899,21 @@ gui_mch_unmaximize()
|
|||||||
gtk_window_unmaximize(GTK_WINDOW(gui.mainwin));
|
gtk_window_unmaximize(GTK_WINDOW(gui.mainwin));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Called when the font changed while the window is maximized. Compute the
|
||||||
|
* new Rows and Columns. This is like resizing the window.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
gui_mch_newfont()
|
||||||
|
{
|
||||||
|
int w, h;
|
||||||
|
|
||||||
|
gtk_window_get_size(GTK_WINDOW(gui.mainwin), &w, &h);
|
||||||
|
w -= get_menu_tool_width();
|
||||||
|
h -= get_menu_tool_height();
|
||||||
|
gui_resize_shell(w, h);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Set the windows size.
|
* Set the windows size.
|
||||||
*/
|
*/
|
||||||
@@ -4409,14 +4424,9 @@ gui_mch_init_font(char_u *font_name, int fontset UNUSED)
|
|||||||
|
|
||||||
if (gui_mch_maximized())
|
if (gui_mch_maximized())
|
||||||
{
|
{
|
||||||
int w, h;
|
|
||||||
|
|
||||||
/* Update lines and columns in accordance with the new font, keep the
|
/* Update lines and columns in accordance with the new font, keep the
|
||||||
* window maximized. */
|
* window maximized. */
|
||||||
gtk_window_get_size(GTK_WINDOW(gui.mainwin), &w, &h);
|
gui_mch_newfont();
|
||||||
w -= get_menu_tool_width();
|
|
||||||
h -= get_menu_tool_height();
|
|
||||||
gui_resize_shell(w, h);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@@ -20,6 +20,7 @@ int gui_mch_get_winpos __ARGS((int *x, int *y));
|
|||||||
void gui_mch_set_winpos __ARGS((int x, int y));
|
void gui_mch_set_winpos __ARGS((int x, int y));
|
||||||
int gui_mch_maximized __ARGS((void));
|
int gui_mch_maximized __ARGS((void));
|
||||||
void gui_mch_unmaximize __ARGS((void));
|
void gui_mch_unmaximize __ARGS((void));
|
||||||
|
void gui_mch_newfont __ARGS((void));
|
||||||
void gui_mch_set_shellsize __ARGS((int width, int height, int min_width, int min_height, int base_width, int base_height, int direction));
|
void gui_mch_set_shellsize __ARGS((int width, int height, int min_width, int min_height, int base_width, int base_height, int direction));
|
||||||
void gui_mch_get_screen_dimensions __ARGS((int *screen_w, int *screen_h));
|
void gui_mch_get_screen_dimensions __ARGS((int *screen_w, int *screen_h));
|
||||||
void gui_mch_settitle __ARGS((char_u *title, char_u *icon));
|
void gui_mch_settitle __ARGS((char_u *title, char_u *icon));
|
||||||
|
@@ -709,6 +709,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
279,
|
||||||
/**/
|
/**/
|
||||||
278,
|
278,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user