settings: moar lambda

Signed-off-by: David Aguilar <davvid@gmail.com>
models.main: detect when we are in the middle of a merge

Signed-off-by: David Aguilar <davvid@gmail.com>
widgets.main: add "Merging" to the title when merging

Signed-off-by: David Aguilar <davvid@gmail.com>
refactor: eliminate the `cola.notification` module

Use the observable functionality instead of the redundant notifier.  We
now track the mode changed events in the commit message editor instead
of listening for a global notifier message.

Signed-off-by: David Aguilar <davvid@gmail.com>
models.main: manage 'head' from within set_mode() only

Remove the set_head() method and simplify callers by making set_mode()
manage the 'head' variable.  This is simpler since its value is always
tied to the mode (amend = 'HEAD^', all others = 'HEAD').

Signed-off-by: David Aguilar <davvid@gmail.com>
models.main: exit amend mode when merging

Detect when we've somehow a state where we're amending and in the middle
of a merge.  Reset the mode back to "none" when this happens.

This can happen if the user enters "amend" mode and then merges a
branch, either through the UI or via the command-line.  We now avoid
this undesirable state by automatically disabling the "amend" mode when
an update detects that we are in the middle of a merge.

Signed-off-by: David Aguilar <davvid@gmail.com>
commitmsg: disable the "amend" action when merging

Make the amend action sensiive to in-progress merges.  The action is now
disabled to prevent users from seeing the "do not amend while merging"
message.

Signed-off-by: David Aguilar <davvid@gmail.com>
typofix: CONTRIBUTING.md

Signed-off-by: David Aguilar <davvid@gmail.com>
cmds: handle interrupted system calls in platform.node()

EINTR happens.

This is super rare, but I ran into it on Mac OS X 10.8.  The sign-off
action (ctrl+i) failed and the traceback dialog showed that
platform.node() raised because os.uname() raises.  Add an interruptable
wrapper for platform.node() and use it in the SignOff command.

Signed-off-by: David Aguilar <davvid@gmail.com>
inotify: guard against non-existent paths

os.path.relpath() raises an error when the given path
does not exist.  Guard against it.

Reported-by: Fedora 19
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1025957

Signed-off-by: David Aguilar <davvid@gmail.com>
shortcuts: swap tool "focus" and "toggle" shortcuts

Giving focus to a tool is done more often then hiding it so make the
"focus" hotkey easier to type.

Make Ctrl + # focus tools and Shift + Ctrl + # toggle visibility.

Signed-off-by: David Aguilar <davvid@gmail.com>
Linux porsion added
remote: fix undefined variable when "git push" fails

Signed-off-by: David Aguilar <davvid@gmail.com>
i18n: renamed zh_cn.po to zh_CN.po

Closes #209

Reported-by: @suiang via github.com
Signed-off-by: David Aguilar <davvid@gmail.com>
README.md: update Mac OS X instructions

I'm going to stop uploading the git-cola.app tarballs
so make the instructions for creating them easier to find.

Signed-off-by: David Aguilar <davvid@gmail.com>
doc: update v1.9.2 release notes

Signed-off-by: David Aguilar <davvid@gmail.com>
win32: update installer output path

Signed-off-by: David Aguilar <davvid@gmail.com>
prefs: add missing import when saving font preferences

Signed-off-by: David Aguilar <davvid@gmail.com>
git-cola v1.9.2

Signed-off-by: David Aguilar <davvid@gmail.com>
Fix "known incorrect sRGB profil" in icons/staged-item.png

icons/staged-item.png has a broken profile which results in this icon not
shown when used with latest libpng. See following thread for extensive
information (http://comments.gmane.org/gmane.linux.gentoo.devel/85066).

Signed-off-by: Justin Lecher <jlec@gentoo.org>