middle click on a tab: make the tab active before closing it
Fixes: If we are on a tab, and we make middle click on another tab, it doesn't show the confirm close dialog if there is a foreground processmaster-1.22
parent
127304f617
commit
bfccb77043
|
@ -2899,22 +2899,27 @@ notebook_button_press_cb (GtkWidget *widget,
|
||||||
TerminalWindow *window)
|
TerminalWindow *window)
|
||||||
{
|
{
|
||||||
TerminalWindowPrivate *priv = window->priv;
|
TerminalWindowPrivate *priv = window->priv;
|
||||||
TerminalScreen *active_screen = priv->active_screen;
|
|
||||||
GtkNotebook *notebook = GTK_NOTEBOOK (widget);
|
GtkNotebook *notebook = GTK_NOTEBOOK (widget);
|
||||||
GtkWidget *tab;
|
GtkWidget *tab;
|
||||||
GtkWidget *menu;
|
GtkWidget *menu;
|
||||||
GtkAction *action;
|
GtkAction *action;
|
||||||
int tab_clicked;
|
int tab_clicked;
|
||||||
|
|
||||||
if ((event->type == GDK_BUTTON_PRESS && event->button == 2)
|
if (event->type == GDK_BUTTON_PRESS && event->button == 2)
|
||||||
&& !(confirm_close_window_or_tab (window, active_screen)))
|
|
||||||
{
|
{
|
||||||
tab_clicked = find_tab_num_at_pos (notebook, event->x_root, event->y_root);
|
tab_clicked = find_tab_num_at_pos (notebook, event->x_root, event->y_root);
|
||||||
if (tab_clicked >= 0)
|
if (tab_clicked >= 0)
|
||||||
|
{
|
||||||
|
gtk_notebook_set_current_page (notebook, tab_clicked);
|
||||||
|
TerminalScreen *active_screen = priv->active_screen;
|
||||||
|
|
||||||
|
if (!(confirm_close_window_or_tab (window, active_screen)))
|
||||||
{
|
{
|
||||||
update_tab_visibility (window, -1);
|
update_tab_visibility (window, -1);
|
||||||
gtk_notebook_remove_page(notebook, tab_clicked);
|
gtk_notebook_remove_page(notebook, tab_clicked);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event->type != GDK_BUTTON_PRESS ||
|
if (event->type != GDK_BUTTON_PRESS ||
|
||||||
|
|
Loading…
Reference in New Issue