# HG changeset patch # User Chris Cannam # Date 1294437518 0 # Node ID 2f4d401ce47c90bc8139b8631e1b23839a2f9416 # Parent 482802b6d3066ad8b4e5ff24a466d49e0a0bc7fb * Better handling for case where we've just created a new branch but not yet committed it (i.e. no heads are on our current branch) diff -r 482802b6d306 -r 2f4d401ce47c mainwindow.cpp --- a/mainwindow.cpp Thu Jan 06 16:06:53 2011 +0000 +++ b/mainwindow.cpp Fri Jan 07 21:58:38 2011 +0000 @@ -2037,6 +2037,7 @@ bool haveMerge = false; bool emptyRepo = false; bool noWorkingCopy = false; + bool newBranch = false; int currentBranchHeads = 0; if (currentParents.size() == 1) { @@ -2046,14 +2047,18 @@ DEBUG << "head branch " << head->branch() << ", current branch " << currentBranch << endl; if (head->isOnBranch(currentBranch)) { ++currentBranchHeads; - if (parent->id() == head->id()) { - parentIsHead = true; - } + } + if (parent->id() == head->id()) { + parentIsHead = true; } } if (currentBranchHeads == 2 && parentIsHead) { canMerge = true; } + if (currentBranchHeads == 0 && parentIsHead) { + // Just created a new branch + newBranch = true; + } if (!parentIsHead) { canUpdate = true; DEBUG << "parent id = " << parent->id() << endl; @@ -2104,6 +2109,8 @@ hgTabs->setState(tr("Have unresolved files following merge on %1").arg(branchText)); } else if (haveMerge) { hgTabs->setState(tr("Have merged but not yet committed on %1").arg(branchText)); + } else if (newBranch) { + hgTabs->setState(tr("On %1. New branch: has not yet been committed").arg(branchText)); } else if (canUpdate) { if (hgTabs->haveChangesToCommit()) { // have uncommitted changes