From 508dee31f3412d8708b7b47c1677b4294c865edb Mon Sep 17 00:00:00 2001 From: Pat Thoyts Date: Wed, 19 Oct 2011 14:26:29 +0100 Subject: [PATCH] git-gui: set suitable extended window manager hints. This patch uses recent Tk attributes support to specify the intended use of new toplevels by setting the correct EWMH hint. This helps modern window managers to apply sensible decoration for the tooltip and dialogs. Signed-off-by: Pat Thoyts --- lib/blame.tcl | 1 + lib/choose_rev.tcl | 1 + lib/class.tcl | 1 + lib/themed.tcl | 1 + lib/transport.tcl | 1 + 5 files changed, 5 insertions(+) diff --git a/lib/blame.tcl b/lib/blame.tcl index 691941e959..49eae1912a 100644 --- a/lib/blame.tcl +++ b/lib/blame.tcl @@ -1201,6 +1201,7 @@ method _open_tooltip {cur_w} { _hide_tooltip $this set tooltip_wm [toplevel $cur_w.tooltip -borderwidth 1] + catch {wm attributes $tooltip_wm -type tooltip} wm overrideredirect $tooltip_wm 1 wm transient $tooltip_wm [winfo toplevel $cur_w] set tooltip_t $tooltip_wm.label diff --git a/lib/choose_rev.tcl b/lib/choose_rev.tcl index 54c7957a66..6dae7937d5 100644 --- a/lib/choose_rev.tcl +++ b/lib/choose_rev.tcl @@ -497,6 +497,7 @@ method _open_tooltip {} { if {$tooltip_wm eq {}} { set tooltip_wm [toplevel $w_list.tooltip -borderwidth 1] + catch {wm attributes $tooltip_wm -type tooltip} wm overrideredirect $tooltip_wm 1 wm transient $tooltip_wm [winfo toplevel $w_list] set tooltip_t $tooltip_wm.label diff --git a/lib/class.tcl b/lib/class.tcl index c27b71476a..f08506f383 100644 --- a/lib/class.tcl +++ b/lib/class.tcl @@ -138,6 +138,7 @@ proc make_dialog {t w args} { upvar $t top $w pfx this this global use_ttk uplevel [linsert $args 0 make_toplevel $t $w] + catch {wm attributes $top -type dialog} pave_toplevel $pfx } diff --git a/lib/themed.tcl b/lib/themed.tcl index 29a1696d97..8b88d3678b 100644 --- a/lib/themed.tcl +++ b/lib/themed.tcl @@ -123,6 +123,7 @@ proc paddedlabel {w args} { # place a themed frame over the surface. proc Dialog {w args} { eval [linsert $args 0 toplevel $w -class Dialog] + catch {wm attributes $w -type dialog} pave_toplevel $w return $w } diff --git a/lib/transport.tcl b/lib/transport.tcl index 7fad9b7d91..e5d211edea 100644 --- a/lib/transport.tcl +++ b/lib/transport.tcl @@ -124,6 +124,7 @@ proc do_push_anywhere {} { set w .push_setup toplevel $w + catch {wm attributes $w -type dialog} wm withdraw $w wm geometry $w "+[winfo rootx .]+[winfo rooty .]" pave_toplevel $w -- GitLab