From: Adam Spiers <git@adamspiers.org>
To: Pat Thoyts <patthoyts@users.sourceforge.net>
Cc: git@vger.kernel.org, "Shawn O. Pearce" <spearce@spearce.org>,
msysgit@googlegroups.com
Subject: [PATCH] git-gui: make sure placement of panedwindow sashes happens correctly on startup
Date: Sat, 1 May 2010 19:29:18 +0100 [thread overview]
Message-ID: <20100501182918.GA19769@atlantic.linksys.moosehall> (raw)
On 20 December 2009 01:46, Pat Thoyts <patthoyts@users.sourceforge.net> wrote:
> This patch enables the use of themed Tk widgets with Tk 8.5 and above.
> These make a significant difference on Windows in making the application
> appear native. The gui.usettk git config variable may be set to disable
> this if the user prefers the classic Tk look.
> On Windows and MacOSX ttk defaults to the native look as much as possible.
> On X11 the user may select a theme using the TkTheme XRDB resource class.
> Some support is included for Tk 8.6 features (themed spinbox and native
> font chooser for MacOSX and Windows).
For me this broke persistence of the panedwindow's vertical sash
positioning in between invocations of git-gui. Upon further
investigation and discussion with helpful #git inhabitants, it
transpired that setting gui.usettk to false is a workaround, but that
the position of panedwindow's *horizontal* sash which sits in between
the panes for unstaged and staged files *never* persisted, regardless
of gui.usettk, and even going back to old 1.6.x versions.
I looked at this a bit closer, and the code seems to be doing exactly
the right thing, but it seems to be some weird kind of Tk timing
issue. I found that the below trivial patch fixes it completely, but
then I'm completely ignorant when it comes to Tk, so it may not be the
right fix.
Thanks,
Adam
P.S. This is my first patch submission via git - after poring over the
man pages and a lengthy discussion on #git, I still couldn't find a
way to send it which satisfied all of the following:
(a) formatted as a single mail, with the context and discussion
first, then the patch at the end,
(b) no MIME, and
(c) can be piped to `git am' without including the whole
mail body in the commit log.
Hopefully this is the best compromise, since everything up to the end
of this sentence can be trimmed before piping to `git am'; if not
please let me know any better alternative for future reference.
>From 3a6ce310f8b3d1e45f7a8d7ac15af7c360847ee4 Mon Sep 17 00:00:00 2001
From: Adam Spiers <git@adamspiers.org>
Date: Sat, 1 May 2010 17:15:18 +0100
Subject: [PATCH] git-gui: make sure placement of panedwindow sashes happens correctly on startup
---
git-gui.sh | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/git-gui.sh b/git-gui.sh
index 8996d2d..9585d7f 100755
--- a/git-gui.sh
+++ b/git-gui.sh
@@ -3466,6 +3466,7 @@ $main_status show [mc "Initializing..."]
catch {
set gm $repo_config(gui.geometry)
wm geometry . [lindex $gm 0]
+update
if {$use_ttk} {
.vpane sashpos 0 [lindex $gm 1]
.vpane.files sashpos 0 [lindex $gm 2]
--
1.7.1
next reply other threads:[~2010-05-01 19:02 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-01 18:29 Adam Spiers [this message]
2010-05-02 19:00 ` [msysGit] [PATCH] git-gui: make sure placement of panedwindow sashes happens correctly on startup Johannes Sixt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100501182918.GA19769@atlantic.linksys.moosehall \
--to=git@adamspiers.org \
--cc=git@vger.kernel.org \
--cc=msysgit@googlegroups.com \
--cc=patthoyts@users.sourceforge.net \
--cc=spearce@spearce.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).