Implementation of Folder Jumping

This commit is contained in:
Sl@ny 2016-12-28 17:35:52 +01:00 committed by Kim "BKC" Carlbäcker
parent 331316894e
commit c22f9114c7
6 changed files with 54 additions and 5 deletions

View file

@ -94,6 +94,25 @@ func (te *TreeEntry) Blob() *Blob {
}
}
// GetSubJumpablePathName return the full path of subdirectory jumpable ( contains only one directory )
func (te *TreeEntry) GetSubJumpablePathName() string {
if te.IsSubModule() || !te.IsDir() {
return ""
}
tree, err := te.ptree.SubTree(te.name)
if err != nil {
return te.name
}
entries, _ := tree.ListEntries()
if len(entries) == 1 && entries[0].IsDir() {
name := entries[0].GetSubJumpablePathName()
if name != "" {
return te.name + "/" + name
}
}
return te.name
}
// Entries a list of entry
type Entries []*TreeEntry

6
vendor/vendor.json vendored
View file

@ -3,10 +3,10 @@
"ignore": "test",
"package": [
{
"checksumSHA1": "OWuUWQ8sWC8n+eTQttx+3vfES8g=",
"checksumSHA1": "mIaKLz6373W+jDLjgE/Yzt/exeo=",
"path": "code.gitea.io/git",
"revision": "634abd6a61c350a95f6b146c3a5fc323282608ae",
"revisionTime": "2016-12-22T08:49:21Z"
"revision": "3d0fa331865619d2f3a7a0fcf23670a389310954",
"revisionTime": "2016-12-28T14:57:51Z"
},
{
"checksumSHA1": "dnGaLR7sd9D5YpQZP4QUGZiEq+c=",