aboutsummaryrefslogtreecommitdiffstats
path: root/templates
diff options
context:
space:
mode:
authorMorgan Bazalgette <git@howl.moe>2017-12-31 01:47:52 +0100
committerLunny Xiao <xiaolunwen@gmail.com>2017-12-30 18:47:52 -0600
commit3d3faa26248e46ed00617caedab6670b89b4b504 (patch)
tree9d103452081843ed07c5441ce26f65725de7f1d1 /templates
parent2f8c65c885ecd49e042e0d8ca8677090dc1956c6 (diff)
downloadgitea-3d3faa26248e46ed00617caedab6670b89b4b504.tar.gz
gitea-3d3faa26248e46ed00617caedab6670b89b4b504.zip
Responsive view (#2750)
* Viewport meta tag * responsive: dashboard * responsive: issues page * responsive: Explore page * responsive: navbar, and some navbar css refactoring * responsive: button for collapsing navbar in mobile view * Mark the hamburger button as active when pressed * better homepage for responsive views * Bring back jump class in navbar The class was necessary, because this way the dropdown doesn't assume the contents of the selected item. * make repository homes responsive * Make file view page responsive * Make forms look good on responsive views * make commits and commit diff view responsive * issues and PRs * responsive wiki * Don't place auto-init far off the page * Minor changes to amend broken stuff minor improvements - make login/sign up in navbar stackable - make navbar in explore and sign in not stackable Change selected class in TestPullCompare Fix typo that happened when rebasing fix dashboard on org view improve profile UI Use clearing on file diff to fix broken UI caused by floating elements remove unresolved merge conflict, and | Sanitize Fix repo home not loading
Diffstat (limited to 'templates')
-rw-r--r--templates/base/head.tmpl227
-rw-r--r--templates/explore/navbar.tmpl2
-rw-r--r--templates/repo/commits.tmpl2
-rw-r--r--templates/repo/commits_table.tmpl38
-rw-r--r--templates/repo/diff/box.tmpl2
-rw-r--r--templates/repo/diff/page.tmpl57
-rw-r--r--templates/repo/header.tmpl80
-rw-r--r--templates/repo/home.tmpl9
-rw-r--r--templates/repo/issue/list.tmpl258
-rw-r--r--templates/repo/issue/new_form.tmpl2
-rw-r--r--templates/repo/issue/view.tmpl8
-rw-r--r--templates/repo/issue/view_content.tmpl2
-rw-r--r--templates/repo/pulls/tab_menu.tmpl2
-rw-r--r--templates/repo/view_file.tmpl68
-rw-r--r--templates/repo/wiki/view.tmpl28
-rw-r--r--templates/user/auth/signin_navbar.tmpl2
-rw-r--r--templates/user/dashboard/dashboard.tmpl4
-rw-r--r--templates/user/dashboard/feeds.tmpl4
-rw-r--r--templates/user/dashboard/issues.tmpl14
-rw-r--r--templates/user/dashboard/navbar.tmpl72
-rw-r--r--templates/user/profile.tmpl4
21 files changed, 469 insertions, 416 deletions
diff --git a/templates/base/head.tmpl b/templates/base/head.tmpl
index 93e819847d..1fc5f9c596 100644
--- a/templates/base/head.tmpl
+++ b/templates/base/head.tmpl
@@ -2,6 +2,7 @@
<html>
<head data-suburl="{{AppSubUrl}}">
<meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>{{if .Title}}{{.Title}} - {{end}}{{AppName}}</title>
<meta name="theme-color" content="{{ThemeColorMetaTag}}">
@@ -133,129 +134,133 @@
<noscript>{{.i18n.Tr "enable_javascript"}}</noscript>
{{if not .PageIsInstall}}
- <div class="following bar light">
- <div class="ui container">
- <div class="ui grid">
- <div class="column">
- <div class="ui top secondary menu">
- <a class="item brand" href="{{AppSubUrl}}/">
- <img class="ui mini image" src="{{AppSubUrl}}/img/gitea-sm.png">
- </a>
+ <div class="ui top secondary stackable main menu following bar light">
+ <div class="ui container" id="navbar">
+ <div class="item brand" style="justify-content: space-between;">
+ <a href="{{AppSubUrl}}/" href="{{AppSubUrl}}/">
+ <img class="ui mini image" src="{{AppSubUrl}}/img/gitea-sm.png">
+ </a>
+ <div class="ui basic icon button mobile-only" id="navbar-expand-toggle">
+ <i class="sidebar icon"></i>
+ </div>
+ </div>
- {{if .IsSigned}}
- <a class="item{{if .PageIsDashboard}} active{{end}}" href="{{AppSubUrl}}/">{{.i18n.Tr "dashboard"}}</a>
- <a class="item{{if .PageIsIssues}} active{{end}}" href="{{AppSubUrl}}/issues">{{.i18n.Tr "issues"}}</a>
- <a class="item{{if .PageIsPulls}} active{{end}}" href="{{AppSubUrl}}/pulls">{{.i18n.Tr "pull_requests"}}</a>
- {{else}}
- <a class="item{{if .PageIsHome}} active{{end}}" href="{{AppSubUrl}}/">{{.i18n.Tr "home"}}</a>
- {{end}}
+ {{if .IsSigned}}
+ <a class="item{{if .PageIsDashboard}} active{{end}}" href="{{AppSubUrl}}/">{{.i18n.Tr "dashboard"}}</a>
+ <a class="item{{if .PageIsIssues}} active{{end}}" href="{{AppSubUrl}}/issues">{{.i18n.Tr "issues"}}</a>
+ <a class="item{{if .PageIsPulls}} active{{end}}" href="{{AppSubUrl}}/pulls">{{.i18n.Tr "pull_requests"}}</a>
+ {{else}}
+ <a class="item{{if .PageIsHome}} active{{end}}" href="{{AppSubUrl}}/">{{.i18n.Tr "home"}}</a>
+ {{end}}
- <a class="item{{if .PageIsExplore}} active{{end}}" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "explore"}}</a>
- {{/*<div class="item">
- <div class="ui icon input">
- <input class="searchbox" type="text" placeholder="{{.i18n.Tr "search_project"}}">
- <i class="search icon"></i>
- </div>
- </div>*/}}
+ <a class="item{{if .PageIsExplore}} active{{end}}" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "explore"}}</a>
+ {{/*
+ <div class="item">
+ <div class="ui icon input">
+ <input class="searchbox" type="text" placeholder="{{.i18n.Tr "search_project"}}">
+ <i class="search icon"></i>
+ </div>
+ </div>
+ */}}
- {{if .IsSigned}}
- <div class="right menu">
- <a href="{{AppSubUrl}}/notifications" class="ui head link jump item poping up" data-content='{{.i18n.Tr "notifications"}}' data-variation="tiny inverted">
- <span class="text">
- <i class="octicon octicon-inbox"><span class="sr-only">{{.i18n.Tr "notifications"}}</span></i>
+ {{if .IsSigned}}
+ <div class="right stackable menu">
+ <a href="{{AppSubUrl}}/notifications" class="item poping up" data-content='{{.i18n.Tr "notifications"}}' data-variation="tiny inverted">
+ <span class="text">
+ <i class="fitted octicon octicon-inbox"></i>
+ <span class="sr-mobile-only">{{.i18n.Tr "notifications"}}</span>
- {{if .NotificationUnreadCount}}
- <span class="ui red label">
- {{.NotificationUnreadCount}}
- </span>
- {{end}}
- </span>
- </a>
+ {{if .NotificationUnreadCount}}
+ <span class="ui red label">
+ {{.NotificationUnreadCount}}
+ </span>
+ {{end}}
+ </span>
+ </a>
- <div class="ui dropdown head link jump item poping up" data-content="{{.i18n.Tr "create_new"}}" data-variation="tiny inverted">
- <span class="text">
- <i class="octicon octicon-plus"><span class="sr-only">{{.i18n.Tr "create_new"}}</span></i>
- <i class="octicon octicon-triangle-down"></i>
- </span>
- <div class="menu">
- <a class="item" href="{{AppSubUrl}}/repo/create">
- <i class="octicon octicon-plus"></i> {{.i18n.Tr "new_repo"}}
- </a>
- <a class="item" href="{{AppSubUrl}}/repo/migrate">
- <i class="octicon octicon-repo-clone"></i> {{.i18n.Tr "new_migrate"}}
- </a>
- {{if .SignedUser.CanCreateOrganization}}
- <a class="item" href="{{AppSubUrl}}/org/create">
- <i class="octicon octicon-organization"></i> {{.i18n.Tr "new_org"}}
- </a>
- {{end}}
- </div><!-- end content create new menu -->
- </div><!-- end dropdown menu create new -->
+ <div class="ui dropdown jump item poping up" data-content="{{.i18n.Tr "create_new"}}" data-variation="tiny inverted">
+ <span class="text">
+ <i class="fitted octicon octicon-plus"></i>
+ <span class="sr-mobile-only">{{.i18n.Tr "create_new"}}</span>
+ <i class="fitted octicon octicon-triangle-down not-mobile"></i>
+ </span>
+ <div class="menu">
+ <a class="item" href="{{AppSubUrl}}/repo/create">
+ <i class="fitted octicon octicon-plus"></i> {{.i18n.Tr "new_repo"}}
+ </a>
+ <a class="item" href="{{AppSubUrl}}/repo/migrate">
+ <i class="fitted octicon octicon-repo-clone"></i> {{.i18n.Tr "new_migrate"}}
+ </a>
+ {{if .SignedUser.CanCreateOrganization}}
+ <a class="item" href="{{AppSubUrl}}/org/create">
+ <i class="fitted octicon octicon-organization"></i> {{.i18n.Tr "new_org"}}
+ </a>
+ {{end}}
+ </div><!-- end content create new menu -->
+ </div><!-- end dropdown menu create new -->
- <div class="ui dropdown head link jump item poping up" tabindex="-1" data-content="{{.i18n.Tr "user_profile_and_more"}}" data-variation="tiny inverted">
- <span class="text avatar">
- <img class="ui small rounded image" src="{{.SignedUser.RelAvatarLink}}">
- <span class="sr-only">{{.i18n.Tr "user_profile_and_more"}}</span>
- <i class="octicon octicon-triangle-down" tabindex="-1"></i>
- </span>
- <div class="menu" tabindex="-1">
- <div class="ui header">
- {{.i18n.Tr "signed_in_as"}} <strong>{{.SignedUser.Name}}</strong>
- </div>
+ <div class="ui dropdown jump item poping up" tabindex="-1" data-content="{{.i18n.Tr "user_profile_and_more"}}" data-variation="tiny inverted">
+ <span class="text">
+ <img class="ui tiny avatar image" src="{{.SignedUser.RelAvatarLink}}">
+ <span class="sr-only">{{.i18n.Tr "user_profile_and_more"}}</span>
+ <span class="mobile-only">{{.SignedUser.Name}}</span>
+ <i class="fitted octicon octicon-triangle-down not-mobile" tabindex="-1"></i>
+ </span>
+ <div class="menu" tabindex="-1">
+ <div class="ui header">
+ {{.i18n.Tr "signed_in_as"}} <strong>{{.SignedUser.Name}}</strong>
+ </div>
- <div class="divider"></div>
- <a class="item" href="{{AppSubUrl}}/{{.SignedUser.Name}}">
- <i class="octicon octicon-person"></i>
- {{.i18n.Tr "your_profile"}}<!-- Your profile -->
- </a>
- <a class="item" href="{{AppSubUrl}}/{{.SignedUser.Name}}?tab=stars">
- <i class="octicon octicon-star"></i>
- {{.i18n.Tr "your_starred"}}
- </a>
- <a class="{{if .PageIsUserSettings}}active{{end}} item" href="{{AppSubUrl}}/user/settings">
- <i class="octicon octicon-settings"></i>
- {{.i18n.Tr "your_settings"}}<!-- Your settings -->
- </a>
- <a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io">
- <i class="octicon octicon-question"></i>
- {{.i18n.Tr "help"}}<!-- Help -->
- </a>
- {{if .IsAdmin}}
- <div class="divider"></div>
+ <div class="divider"></div>
+ <a class="item" href="{{AppSubUrl}}/{{.SignedUser.Name}}">
+ <i class="octicon octicon-person"></i>
+ {{.i18n.Tr "your_profile"}}<!-- Your profile -->
+ </a>
+ <a class="item" href="{{AppSubUrl}}/{{.SignedUser.Name}}?tab=stars">
+ <i class="octicon octicon-star"></i>
+ {{.i18n.Tr "your_starred"}}
+ </a>
+ <a class="{{if .PageIsUserSettings}}active{{end}} item" href="{{AppSubUrl}}/user/settings">
+ <i class="octicon octicon-settings"></i>
+ {{.i18n.Tr "your_settings"}}<!-- Your settings -->
+ </a>
+ <a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io">
+ <i class="octicon octicon-question"></i>
+ {{.i18n.Tr "help"}}<!-- Help -->
+ </a>
+ {{if .IsAdmin}}
+ <div class="divider"></div>
- <a class="{{if .PageIsAdmin}}active{{end}} item" href="{{AppSubUrl}}/admin">
- <i class="icon settings"></i>
- {{.i18n.Tr "admin_panel"}}<!-- Admin Panel -->
- </a>
- {{end}}
+ <a class="{{if .PageIsAdmin}}active{{end}} item" href="{{AppSubUrl}}/admin">
+ <i class="icon settings"></i>
+ {{.i18n.Tr "admin_panel"}}<!-- Admin Panel -->
+ </a>
+ {{end}}
- <div class="divider"></div>
- <a class="item" href="{{AppSubUrl}}/user/logout">
- <i class="octicon octicon-sign-out"></i>
- {{.i18n.Tr "sign_out"}}<!-- Sign Out -->
- </a>
- </div><!-- end content avatar menu -->
- </div><!-- end dropdown avatar menu -->
- </div><!-- end signed user right menu -->
+ <div class="divider"></div>
+ <a class="item" href="{{AppSubUrl}}/user/logout">
+ <i class="octicon octicon-sign-out"></i>
+ {{.i18n.Tr "sign_out"}}<!-- Sign Out -->
+ </a>
+ </div><!-- end content avatar menu -->
+ </div><!-- end dropdown avatar menu -->
+ </div><!-- end signed user right menu -->
- {{else}}
+ {{else}}
- <a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io">{{.i18n.Tr "help"}}</a>
- <div class="right menu">
- {{if .ShowRegistrationButton}}
- <a class="item{{if .PageIsSignUp}} active{{end}}" href="{{AppSubUrl}}/user/sign_up">
- <i class="octicon octicon-person"></i> {{.i18n.Tr "register"}}
- </a>
- {{end}}
- <a class="item{{if .PageIsSignIn}} active{{end}}" href="{{AppSubUrl}}/user/login?redirect_to={{.Link}}">
- <i class="octicon octicon-sign-in"></i> {{.i18n.Tr "sign_in"}}
- </a>
- </div><!-- end anonymous right menu -->
+ <a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io">{{.i18n.Tr "help"}}</a>
+ <div class="right stackable menu">
+ {{if .ShowRegistrationButton}}
+ <a class="item{{if .PageIsSignUp}} active{{end}}" href="{{AppSubUrl}}/user/sign_up">
+ <i class="octicon octicon-person"></i> {{.i18n.Tr "register"}}
+ </a>
+ {{end}}
+ <a class="item{{if .PageIsSignIn}} active{{end}}" href="{{AppSubUrl}}/user/login?redirect_to={{.Link}}">
+ <i class="octicon octicon-sign-in"></i> {{.i18n.Tr "sign_in"}}
+ </a>
+ </div><!-- end anonymous right menu -->
- {{end}}
- </div><!-- end top menu -->
- </div><!-- end column -->
- </div><!-- end grid -->
+ {{end}}
</div><!-- end container -->
</div><!-- end bar -->
{{end}}
diff --git a/templates/explore/navbar.tmpl b/templates/explore/navbar.tmpl
index 5977e950d0..aa4a21d590 100644
--- a/templates/explore/navbar.tmpl
+++ b/templates/explore/navbar.tmpl
@@ -1,4 +1,4 @@
-<div class="ui secondary pointing tabular top attached borderless menu navbar">
+<div class="ui secondary pointing tabular top attached borderless stackable menu navbar">
<a class="{{if .PageIsExploreRepositories}}active{{end}} item" href="{{AppSubUrl}}/explore/repos">
<span class="octicon octicon-repo"></span> {{.i18n.Tr "explore.repos"}}
</a>
diff --git a/templates/repo/commits.tmpl b/templates/repo/commits.tmpl
index b3701af846..32301a038a 100644
--- a/templates/repo/commits.tmpl
+++ b/templates/repo/commits.tmpl
@@ -3,7 +3,7 @@
{{template "repo/header" .}}
<div class="ui container">
{{template "repo/sub_menu" .}}
- <div class="ui secondary menu">
+ <div class="ui secondary stackable menu mobile--margin-between-items">
{{template "repo/branch_dropdown" .}}
<div class="fitted item">
<a href="{{.RepoLink}}/graph" class="ui basic small compact button">
diff --git a/templates/repo/commits_table.tmpl b/templates/repo/commits_table.tmpl
index 326ce91e98..4503976e0e 100644
--- a/templates/repo/commits_table.tmpl
+++ b/templates/repo/commits_table.tmpl
@@ -1,22 +1,26 @@
<h4 class="ui top attached header">
- {{.CommitCount}} {{.i18n.Tr "repo.commits.commits"}} {{if .Branch}}({{.Branch}}){{end}}
- {{if .PageIsCommits}}
- <div class="ui right">
- <form action="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/search">
- <div class="ui tiny search input">
- <input name="q" placeholder="{{.i18n.Tr "repo.commits.search"}}" value="{{.Keyword}}" autofocus>
- </div>
- &nbsp;
- <div class="ui checkbox">
- <input type="checkbox" name="all" id="all" value="true" {{.All}}>
- <label for="all">{{.i18n.Tr "repo.commits.search_all"}} &nbsp;&nbsp;</label>
- </div>
- <button class="ui black tiny button" data-panel="#add-deploy-key-panel">{{.i18n.Tr "repo.commits.find"}}</button>
- </form>
+ <div class="ui stackable grid">
+ <div class="six wide column">
+ {{.CommitCount}} {{.i18n.Tr "repo.commits.commits"}} {{if .Branch}}({{.Branch}}){{end}}
</div>
- {{else if .IsDiffCompare}}
- <a href="{{$.CommitRepoLink}}/commit/{{.BeforeCommitID}}" class="ui green sha label">{{ShortSha .BeforeCommitID}}</a> ... <a href="{{$.CommitRepoLink}}/commit/{{.AfterCommitID}}" class="ui green sha label">{{ShortSha .AfterCommitID}}</a>
- {{end}}
+ <div class="ten wide right aligned column">
+ {{if .PageIsCommits}}
+ <form action="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/search">
+ <div class="ui tiny search input">
+ <input name="q" placeholder="{{.i18n.Tr "repo.commits.search"}}" value="{{.Keyword}}" autofocus>
+ </div>
+ &nbsp;
+ <div class="ui checkbox">
+ <input type="checkbox" name="all" id="all" value="true" {{.All}}>
+ <label for="all">{{.i18n.Tr "repo.commits.search_all"}} &nbsp;&nbsp;</label>
+ </div>
+ <button class="ui black tiny button" data-panel="#add-deploy-key-panel">{{.i18n.Tr "repo.commits.find"}}</button>
+ </form>
+ {{else if .IsDiffCompare}}
+ <a href="{{$.CommitRepoLink}}/commit/{{.BeforeCommitID}}" class="ui green sha label">{{ShortSha .BeforeCommitID}}</a> ... <a href="{{$.CommitRepoLink}}/commit/{{.AfterCommitID}}" class="ui green sha label">{{ShortSha .AfterCommitID}}</a>
+ {{end}}
+ </div>
+ </div>
</h4>
{{if .Commits}}
diff --git a/templates/repo/diff/box.tmpl b/templates/repo/diff/box.tmpl
index 5de4f67091..84f25f0839 100644
--- a/templates/repo/diff/box.tmpl
+++ b/templates/repo/diff/box.tmpl
@@ -82,7 +82,7 @@
{{end}}
{{end}}
</h4>
- <div class="ui attached table segment">
+ <div class="ui attached unstackable table segment">
{{if ne $file.Type 4}}
{{$isImage := (call $.IsImageFile $file.Name)}}
{{if and $isImage}}
diff --git a/templates/repo/diff/page.tmpl b/templates/repo/diff/page.tmpl
index 7600848118..ba0cf348d4 100644
--- a/templates/repo/diff/page.tmpl
+++ b/templates/repo/diff/page.tmpl
@@ -15,34 +15,39 @@
{{end}}
</div>
<div class="ui attached info segment {{if .Commit.Signature}} isSigned {{if .Verification.Verified }} isVerified {{end}}{{end}}">
- {{if .Author}}
- <img class="ui avatar image" src="{{.Author.RelAvatarLink}}" />
- {{if .Author.FullName}}
- <a href="{{.Author.HomeLink}}"><strong>{{.Author.FullName}}</strong></a> {{if .IsSigned}}<{{.Commit.Author.Email}}>{{end}}
- {{else}}
- <a href="{{.Author.HomeLink}}"><strong>{{.Commit.Author.Name}}</strong></a> {{if .IsSigned}}<{{.Commit.Author.Email}}>{{end}}
- {{end}}
- {{else}}
- <img class="ui avatar image" src="{{AvatarLink .Commit.Author.Email}}" />
- <strong>{{.Commit.Author.Name}}</strong>
- {{end}}
- <span class="text grey" id="authored-time">{{TimeSince .Commit.Author.When $.Lang}}</span>
- <div class="ui right">
- <div class="ui horizontal list">
- {{if .Parents}}
- <div class="item">
- {{.i18n.Tr "repo.diff.parent"}}
- </div>
- <div class="item">
- {{range .Parents}}
- <a class="ui blue sha label" href="{{$.RepoLink}}/commit/{{.}}">{{ShortSha .}}</a>
- {{end}}
- </div>
+ <div class="ui stackable grid">
+ <div class="nine wide column">
+ {{if .Author}}
+ <img class="ui avatar image" src="{{.Author.RelAvatarLink}}" />
+ {{if .Author.FullName}}
+ <a href="{{.Author.HomeLink}}"><strong>{{.Author.FullName}}</strong></a> {{if .IsSigned}}<{{.Commit.Author.Email}}>{{end}}
+ {{else}}
+ <a href="{{.Author.HomeLink}}"><strong>{{.Commit.Author.Name}}</strong></a> {{if .IsSigned}}<{{.Commit.Author.Email}}>{{end}}
+ {{end}}
+ {{else}}
+ <img class="ui avatar image" src="{{AvatarLink .Commit.Author.Email}}" />
+ <strong>{{.Commit.Author.Name}}</strong>
{{end}}
- <div class="item">{{.i18n.Tr "repo.diff.commit"}}</div>
- <div class="item"><span class="ui blue sha label">{{ShortSha .CommitID}}</span></div>
+ <span class="text grey" id="authored-time">{{TimeSince .Commit.Author.When $.Lang}}</span>
</div>
- </div>
+ <div class="seven wide right aligned column">
+ <div class="ui horizontal list">
+ {{if .Parents}}
+ <div class="item">
+ {{.i18n.Tr "repo.diff.parent"}}
+ </div>
+ <div class="item">
+ {{range .Parents}}
+ <a class="ui blue sha label" href="{{$.RepoLink}}/commit/{{.}}">{{ShortSha .}}</a>
+ {{end}}
+ </div>
+ {{end}}
+ <div class="mobile-only"></div>
+ <div class="item">{{.i18n.Tr "repo.diff.commit"}}</div>
+ <div class="item"><span class="ui blue sha label">{{ShortSha .CommitID}}</span></div>
+ </div>
+ </div><!-- end column -->
+ </div><!-- end grid -->
</div>
{{if .Commit.Signature}}
{{if .Verification.Verified }}
diff --git a/templates/repo/header.tmpl b/templates/repo/header.tmpl
index d4d43c5b42..0c187dcbd3 100644
--- a/templates/repo/header.tmpl
+++ b/templates/repo/header.tmpl
@@ -1,48 +1,46 @@
<div class="header-wrapper">
{{with .Repository}}
- <div class="ui container"><!-- start container -->
- <div class="ui vertically padded grid head"><!-- start grid -->
- <div class="column"><!-- start column -->
- <div class="ui header">
- <div class="ui huge breadcrumb">
- <i class="mega-octicon octicon-{{if .IsPrivate}}lock{{else if .IsMirror}}repo-clone{{else if .IsFork}}repo-forked{{else}}repo{{end}}"></i>
- <a href="{{AppSubUrl}}/{{.Owner.Name}}">{{.Owner.Name}}</a>
- <div class="divider"> / </div>
- <a href="{{$.RepoLink}}">{{.Name}}</a>
- {{if .IsMirror}}<div class="fork-flag">{{$.i18n.Tr "repo.mirror_from"}} <a target="_blank" rel="noopener" href="{{$.Mirror.Address}}">{{$.Mirror.Address}}</a></div>{{end}}
- {{if .IsFork}}<div class="fork-flag">{{$.i18n.Tr "repo.forked_from"}} <a href="{{.BaseRepo.Link}}">{{SubStr .BaseRepo.RelLink 1 -1}}</a></div>{{end}}
- </div>
+ <div class="ui container">
+ <div class="ui stackable grid header-grid">
+ <div class="ten wide column">
+ <div class="ui huge breadcrumb">
+ <i class="mega-octicon octicon-{{if .IsPrivate}}lock{{else if .IsMirror}}repo-clone{{else if .IsFork}}repo-forked{{else}}repo{{end}}"></i>
+ <a href="{{AppSubUrl}}/{{.Owner.Name}}">{{.Owner.Name}}</a>
+ <div class="divider"> / </div>
+ <a href="{{$.RepoLink}}">{{.Name}}</a>
+ {{if .IsMirror}}<div class="fork-flag">{{$.i18n.Tr "repo.mirror_from"}} <a target="_blank" rel="noopener" href="{{$.Mirror.Address}}">{{$.Mirror.Address}}</a></div>{{end}}
+ {{if .IsFork}}<div class="fork-flag">{{$.i18n.Tr "repo.forked_from"}} <a href="{{.BaseRepo.Link}}">{{SubStr .BaseRepo.RelLink 1 -1}}</a></div>{{end}}
+ </div>
+ </div>
- <div class="ui right">
- <div class="ui compact labeled button" tabindex="0">
- <a class="ui compact button" href="{{$.RepoLink}}/action/{{if $.IsWatchingRepo}}un{{end}}watch?redirect_to={{$.Link}}">
- <i class="icon fa-eye{{if not $.IsWatchingRepo}}-slash{{end}}"></i>{{if $.IsWatchingRepo}}{{$.i18n.Tr "repo.unwatch"}}{{else}}{{$.i18n.Tr "repo.watch"}}{{end}}
- </a>
- <a class="ui basic label" href="{{.Link}}/watchers">
- {{.NumWatches}}
- </a>
- </div>
- <div class="ui compact labeled button" tabindex="0">
- <a class="ui compact button" href="{{$.RepoLink}}/action/{{if $.IsStaringRepo}}un{{end}}star?redirect_to={{$.Link}}">
- <i class="icon fa-star{{if not $.IsStaringRepo}}-o{{end}}"></i>{{if $.IsStaringRepo}}{{$.i18n.Tr "repo.unstar"}}{{else}}{{$.i18n.Tr "repo.star"}}{{end}}
- </a>
- <a class="ui basic label" href="{{.Link}}/stars">
- {{.NumStars}}
- </a>
- </div>
- {{if .CanBeForked}}
- <div class="ui compact labeled button" tabindex="0">
- <a class="ui compact button {{if not $.CanSignedUserFork}}poping up{{end}}" {{if $.CanSignedUserFork}}href="{{AppSubUrl}}/repo/fork/{{.ID}}"{{else}} data-content="{{$.i18n.Tr "repo.fork_from_self"}}" data-position="top center" data-variation="tiny"{{end}}>
- <i class="octicon octicon-repo-forked"></i>{{$.i18n.Tr "repo.fork"}}
- </a>
- <a class="ui basic label" href="{{.Link}}/forks">
- {{.NumForks}}
- </a>
- </div>
- {{end}}
- </div>
+ <div class="ui six wide right aligned column">
+ <div class="ui compact labeled button" tabindex="0">
+ <a class="ui compact button" href="{{$.RepoLink}}/action/{{if $.IsWatchingRepo}}un{{end}}watch?redirect_to={{$.Link}}">
+ <i class="icon fa-eye{{if not $.IsWatchingRepo}}-slash{{end}}"></i>{{if $.IsWatchingRepo}}{{$.i18n.Tr "repo.unwatch"}}{{else}}{{$.i18n.Tr "repo.watch"}}{{end}}
+ </a>
+ <a class="ui basic label" href="{{.Link}}/watchers">
+ {{.NumWatches}}
+ </a>
</div>
- </div><!-- end column -->
+ <div class="ui compact labeled button" tabindex="0">
+ <a class="ui compact button" href="{{$.RepoLink}}/action/{{if $.IsStaringRepo}}un{{end}}star?redirect_to={{$.Link}}">
+ <i class="icon fa-star{{if not $.IsStaringRepo}}-o{{end}}"></i>{{if $.IsStaringRepo}}{{$.i18n.Tr "repo.unstar"}}{{else}}{{$.i18n.Tr "repo.star"}}{{end}}
+ </a>
+ <a class="ui basic label" href="{{.Link}}/stars">
+ {{.NumStars}}
+ </a>
+ </div>
+ {{if .CanBeForked}}
+ <div class="ui compact labeled button" tabindex="0">
+ <a class="ui compact button {{if not $.CanSignedUserFork}}poping up{{end}}" {{if $.CanSignedUserFork}}href="{{AppSubUrl}}/repo/fork/{{.ID}}"{{else}} data-content="{{$.i18n.Tr "repo.fork_from_self"}}" data-position="top center" data-variation="tiny"{{end}}>
+ <i class="octicon octicon-repo-forked"></i>{{$.i18n.Tr "repo.fork"}}
+ </a>
+ <a class="ui basic label" href="{{.Link}}/forks">
+ {{.NumForks}}
+ </a>
+ </div>
+ {{end}}
+ </div>
</div><!-- end grid -->
</div><!-- end container -->
{{end}}
diff --git a/templates/repo/home.tmpl b/templates/repo/home.tmpl
index 4799e84a21..91db56c98f 100644
--- a/templates/repo/home.tmpl
+++ b/templates/repo/home.tmpl
@@ -24,7 +24,7 @@
{{end}}
</div>
{{template "repo/sub_menu" .}}
- <div class="ui secondary menu">
+ <div class="ui stackable secondary menu mobile--margin-between-items mobile--no-negative-margins">
{{if and .PullRequestCtx.Allowed .IsViewBranch}}
<div class="fitted item">
<a href="{{.BaseRepo.Link}}/compare/{{.BaseRepo.DefaultBranch}}...{{.Repository.Owner.Name}}:{{.BranchName}}">
@@ -36,9 +36,9 @@
{{ $n := len .TreeNames}}
{{ $l := Subtract $n 1}}
<div class="fitted item"><span class="ui breadcrumb repo-path"><a class="section" href="{{.RepoLink}}/src/{{EscapePound .BranchNameSubURL}}">{{EllipsisString .Repository.Name 30}}</a>{{range $i, $v := .TreeNames}}<span class="divider">/</span>{{if eq $i $l}}<span class="active section">{{EllipsisString $v 30}}</span>{{else}}{{ $p := index $.Paths $i}}<span class="section"><a href="{{EscapePound $.BranchLink}}/{{EscapePound $p}}">{{EllipsisString $v 30}}</a></span>{{end}}{{end}}</span></div>
- <div class="right fitted item">
+ <div class="right fitted item" id="file-buttons">
{{if .Repository.CanEnableEditor}}
- <div id="file-buttons" class="ui tiny blue buttons">
+ <div class="ui tiny blue buttons">
{{if .CanAddFile}}
<a href="{{.RepoLink}}/_new/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}" class="ui button">
{{.i18n.Tr "repo.editor.new_file"}}
@@ -52,6 +52,9 @@
</div>
{{end}}
+ </div>
+ <div class="fitted item">
+
<!-- Only show clone panel in repository home page -->
{{if eq $n 0}}
<div class="ui action tiny input" id="clone-panel">
diff --git a/templates/repo/issue/list.tmpl b/templates/repo/issue/list.tmpl
index dec2881be8..c6c63aa493 100644
--- a/templates/repo/issue/list.tmpl
+++ b/templates/repo/issue/list.tmpl
@@ -2,10 +2,14 @@
<div class="repository">
{{template "repo/header" .}}
<div class="ui container">
- <div class="navbar">
- {{template "repo/issue/navbar" .}}
- {{template "repo/issue/search" .}}
- <div class="ui right">
+ <div class="ui three column stackable grid">
+ <div class="column">
+ {{template "repo/issue/navbar" .}}
+ </div>
+ <div class="column center aligned">
+ {{template "repo/issue/search" .}}
+ </div>
+ <div class="column right aligned">
{{if .PageIsIssueList}}
<a class="ui green button" href="{{.RepoLink}}/issues/new">{{.i18n.Tr "repo.issues.new"}}</a>
{{else}}
@@ -14,148 +18,160 @@
</div>
</div>
<div class="ui divider"></div>
- <div class="issue-filters">
- <div class="ui tiny basic status buttons">
- <a class="ui {{if not .IsShowClosed}}green active{{end}} basic button" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state=open&labels={{.SelectLabels}}&milestone={{.MilestoneID}}&assignee={{.AssigneeID}}">
- <i class="octicon octicon-issue-opened"></i>
- {{.i18n.Tr "repo.issues.open_tab" .IssueStats.OpenCount}}
- </a>
- <a class="ui {{if .IsShowClosed}}red active{{end}} basic button" href="{{$.Link}}?q={{$.Keyword}}&type={{.ViewType}}&sort={{$.SortType}}&state=closed&labels={{.SelectLabels}}&milestone={{.MilestoneID}}&assignee={{.AssigneeID}}">
- <i class="octicon octicon-issue-closed"></i>
- {{.i18n.Tr "repo.issues.close_tab" .IssueStats.ClosedCount}}
- </a>
+ <div id="issue-filters" class="ui stackable grid">
+ <div class="six wide column">
+ <div class="ui tiny basic status buttons">
+ <a class="ui {{if not .IsShowClosed}}green active{{end}} basic button" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state=open&labels={{.SelectLabels}}&milestone={{.MilestoneID}}&assignee={{.AssigneeID}}">
+ <i class="octicon octicon-issue-opened"></i>
+ {{.i18n.Tr "repo.issues.open_tab" .IssueStats.OpenCount}}
+ </a>
+ <a class="ui {{if .IsShowClosed}}red active{{end}} basic button" href="{{$.Link}}?q={{$.Keyword}}&type={{.ViewType}}&sort={{$.SortType}}&state=closed&labels={{.SelectLabels}}&milestone={{.MilestoneID}}&assignee={{.AssigneeID}}">
+ <i class="octicon octicon-issue-closed"></i>
+ {{.i18n.Tr "repo.issues.close_tab" .IssueStats.ClosedCount}}
+ </a>
+ </div>
</div>
- <div class="ui right floated secondary filter menu">
- <!-- Label -->
- <div class="ui {{if not .Labels}}disabled{{end}} dropdown jump item">
- <span class="text">
- {{.i18n.Tr "repo.issues.filter_label"}}
- <i class="dropdown icon"></i>
- </span>
- <div class="menu">
- <a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_label_no_select"}}</a>
- {{range .Labels}}
- <a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.ID}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}"><span class="octicon {{if eq $.SelectLabels .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}</a>
- {{end}}
+ <div class="ten wide right aligned column">
+ <div class="ui secondary filter stackable menu">
+ <!-- Label -->
+ <div class="ui {{if not .Labels}}disabled{{end}} dropdown jump item" style="margin-left: auto">
+ <span class="text">
+ {{.i18n.Tr "repo.issues.filter_label"}}
+ <i class="dropdown icon"></i>
+ </span>
+ <div class="menu">
+ <a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_label_no_select"}}</a>
+ {{range .Labels}}
+ <a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.ID}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}"><span class="octicon {{if eq $.SelectLabels .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}</a>
+ {{end}}
+ </div>
</div>
- </div>
- <!-- Milestone -->
- <div class="ui {{if not .Milestones}}disabled{{end}} dropdown jump item">
- <span class="text">
- {{.i18n.Tr "repo.issues.filter_milestone"}}
- <i class="dropdown icon"></i>
- </span>
- <div class="menu">
- <a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_milestone_no_select"}}</a>
- {{range .Milestones}}
- <a class="{{if eq $.MilestoneID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{.ID}}&assignee={{$.AssigneeID}}">{{.Name}}</a>
- {{end}}
+ <!-- Milestone -->
+ <div class="ui {{if not .Milestones}}disabled{{end}} dropdown jump item">
+ <span class="text">
+ {{.i18n.Tr "repo.issues.filter_milestone"}}
+ <i class="dropdown icon"></i>
+ </span>
+ <div class="menu">
+ <a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_milestone_no_select"}}</a>
+ {{range .Milestones}}
+ <a class="{{if eq $.MilestoneID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{.ID}}&assignee={{$.AssigneeID}}">{{.Name}}</a>
+ {{end}}
+ </div>
</div>
- </div>
- <!-- Assignee -->
- <div class="ui {{if not .Assignees}}disabled{{end}} dropdown jump item">
- <span class="text">
- {{.i18n.Tr "repo.issues.filter_assignee"}}
- <i class="dropdown icon"></i>
- </span>
- <div class="menu">
- <a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}">{{.i18n.Tr "repo.issues.filter_assginee_no_select"}}</a>
- {{range .Assignees}}
- <a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{.ID}}"><img src="{{.RelAvatarLink}}"> {{.Name}}</a>
- {{end}}
+ <!-- Assignee -->
+ <div class="ui {{if not .Assignees}}disabled{{end}} dropdown jump item">
+ <span class="text">
+ {{.i18n.Tr "repo.issues.filter_assignee"}}
+ <i class="dropdown icon"></i>
+ </span>
+ <div class="menu">
+ <a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}">{{.i18n.Tr "repo.issues.filter_assginee_no_select"}}</a>
+ {{range .Assignees}}
+ <a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{.ID}}"><img src="{{.RelAvatarLink}}"> {{.Name}}</a>
+ {{end}}
+ </div>
</div>
- </div>
- {{if .IsSigned}}
- <!-- Type -->
+ {{if .IsSigned}}
+ <!-- Type -->
+ <div class="ui dropdown type jump item">
+ <span class="text">
+ {{.i18n.Tr "repo.issues.filter_type"}}
+ <i class="dropdown icon"></i>
+ </span>
+ <div class="menu">
+ <a class="{{if eq .ViewType "all"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type=all&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_type.all_issues"}}</a>
+ <a class="{{if eq .ViewType "assigned"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type=assigned&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{.SignedUser.ID}}">{{.i18n.Tr "repo.issues.filter_type.assigned_to_you"}}</a>
+ <a class="{{if eq .ViewType "created_by"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type=created_by&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_type.created_by_you"}}</a>
+ <a class="{{if eq .ViewType "mentioned"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type=mentioned&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_type.mentioning_you"}}</a>
+ </div>
+ </div>
+ {{end}}
+
+ <!-- Sort -->
<div class="ui dropdown type jump item">
<span class="text">
- {{.i18n.Tr "repo.issues.filter_type"}}
+ {{.i18n.Tr "repo.issues.filter_sort"}}
<i class="dropdown icon"></i>
</span>
<div class="menu">
- <a class="{{if eq .ViewType "all"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type=all&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_type.all_issues"}}</a>
- <a class="{{if eq .ViewType "assigned"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type=assigned&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{.SignedUser.ID}}">{{.i18n.Tr "repo.issues.filter_type.assigned_to_you"}}</a>
- <a class="{{if eq .ViewType "created_by"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type=created_by&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_type.created_by_you"}}</a>
- <a class="{{if eq .ViewType "mentioned"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type=mentioned&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_type.mentioning_you"}}</a>
+ <a class="{{if or (eq .SortType "latest") (not .SortType)}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=latest&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.latest"}}</a>
+ <a class="{{if eq .SortType "oldest"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=oldest&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.oldest"}}</a>
+ <a class="{{if eq .SortType "recentupdate"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=recentupdate&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.recentupdate"}}</a>
+ <a class="{{if eq .SortType "leastupdate"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=leastupdate&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.leastupdate"}}</a>
+ <a class="{{if eq .SortType "mostcomment"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=mostcomment&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.mostcomment"}}</a>
+ <a class="{{if eq .SortType "leastcomment"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=leastcomment&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.leastcomment"}}</a>
</div>
</div>
- {{end}}
-
- <!-- Sort -->
- <div class="ui dropdown type jump item">
- <span class="text">
- {{.i18n.Tr "repo.issues.filter_sort"}}
- <i class="dropdown icon"></i>
- </span>
- <div class="menu">
- <a class="{{if or (eq .SortType "latest") (not .SortType)}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=latest&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.latest"}}</a>
- <a class="{{if eq .SortType "oldest"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=oldest&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.oldest"}}</a>
- <a class="{{if eq .SortType "recentupdate"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=recentupdate&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.recentupdate"}}</a>
- <a class="{{if eq .SortType "leastupdate"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=leastupdate&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.leastupdate"}}</a>
- <a class="{{if eq .SortType "mostcomment"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=mostcomment&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.mostcomment"}}</a>
- <a class="{{if eq .SortType "leastcomment"}}active{{end}} item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort=leastcomment&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}">{{.i18n.Tr "repo.issues.filter_sort.leastcomment"}}</a>
- </div>
</div>
</div>
</div>
- <div class="issue-actions">
- <div class="ui basic status buttons">
- <div class="ui green active basic button issue-action" data-action="open" data-url="{{$.RepoLink}}/issues/status">{{.i18n.Tr "repo.issues.action_open"}}</div>
- <div class="ui red active basic button issue-action" data-action="close" data-url="{{$.RepoLink}}/issues/status">{{.i18n.Tr "repo.issues.action_close"}}</div>
+ <div id="issue-actions" class="ui stackable grid">
+ <div class="six wide column">
+ <div class="ui basic status buttons">
+ <div class="ui green active basic button issue-action" data-action="open" data-url="{{$.RepoLink}}/issues/status">{{.i18n.Tr "repo.issues.action_open"}}</div>
+ <div class="ui red active basic button issue-action" data-action="close" data-url="{{$.RepoLink}}/issues/status">{{.i18n.Tr "repo.issues.action_close"}}</div>
+ </div>
</div>
- <div class="ui secondary filter menu floated right">
- <!-- Labels -->
- <div class="ui {{if not .Labels}}disabled{{end}} dropdown jump item">
- <span class="text">
- {{.i18n.Tr "repo.issues.action_label"}}
- <i class="dropdown icon"></i>
- </span>
- <div class="menu">
- {{range .Labels}}
- <div class="item issue-action" data-action="toggle" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/labels">
- <span class="octicon {{if eq $.SelectLabels .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}
- </div>
- {{end}}
+ {{/* Ten wide does not cope well and makes the columns stack.
+ This seems to be related to jQuery's hide/show: in fact, switching
+ issue-actions and issue-filters and having this ten wide will show
+ this one correctly, but not the other one. */}}
+ <div class="nine wide right aligned right floated column">
+ <div class="ui secondary filter stackable menu">
+ <!-- Labels -->
+ <div class="ui {{if not .Labels}}disabled{{end}} dropdown jump item" style="margin-left: auto">
+ <span class="text">
+ {{.i18n.Tr "repo.issues.action_label"}}
+ <i class="dropdown icon"></i>
+ </span>
+ <div class="menu">
+ {{range .Labels}}
+ <div class="item issue-action" data-action="toggle" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/labels">
+ <span class="octicon {{if eq $.SelectLabels .ID}}octicon-check{{end}}"></span><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}
+ </div>
+ {{end}}
+ </div>
</div>
- </div>
- <!-- Milestone -->
- <div class="ui {{if not .Milestones}}disabled{{end}} dropdown jump item">
- <span class="text">
- {{.i18n.Tr "repo.issues.action_milestone"}}
- <i class="dropdown icon"></i>
- </span>
- <div class="menu">
- <div class="item issue-action" data-element-id="0" data-url="{{$.Link}}/milestone">
- {{.i18n.Tr "repo.issues.action_milestone_no_select"}}
- </div>
- {{range .Milestones}}
- <div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/milestone">
- {{.Name}}
+ <!-- Milestone -->
+ <div class="ui {{if not .Milestones}}disabled{{end}} dropdown jump item">
+ <span class="text">
+ {{.i18n.Tr "repo.issues.action_milestone"}}
+ <i class="dropdown icon"></i>
+ </span>
+ <div class="menu">
+ <div class="item issue-action" data-element-id="0" data-url="{{$.Link}}/milestone">
+ {{.i18n.Tr "repo.issues.action_milestone_no_select"}}
</div>
- {{end}}
+ {{range .Milestones}}
+ <div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/milestone">
+ {{.Name}}
+ </div>
+ {{end}}
+ </div>
</div>
- </div>
- <!-- Assignee -->
- <div class="ui {{if not .Assignees}}disabled{{end}} dropdown jump item">
- <span class="text">
- {{.i18n.Tr "repo.issues.action_assignee"}}
- <i class="dropdown icon"></i>
- </span>
- <div class="menu">
- <div class="item issue-action" data-element-id="0" data-url="{{$.Link}}/assignee">
- {{.i18n.Tr "repo.issues.action_assignee_no_select"}}
- </div>
- {{range .Assignees}}
- <div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/assignee">
- <img src="{{.RelAvatarLink}}"> {{.Name}}
+ <!-- Assignee -->
+ <div class="ui {{if not .Assignees}}disabled{{end}} dropdown jump item">
+ <span class="text">
+ {{.i18n.Tr "repo.issues.action_assignee"}}
+ <i class="dropdown icon"></i>
+ </span>
+ <div class="menu">
+ <div class="item issue-action" data-element-id="0" data-url="{{$.Link}}/assignee">
+ {{.i18n.Tr "repo.issues.action_assignee_no_select"}}
</div>
- {{end}}
+ {{range .Assignees}}
+ <div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/assignee">
+ <img src="{{.RelAvatarLink}}"> {{.Name}}
+ </div>
+ {{end}}
+ </div>
</div>
</div>
</div>
diff --git a/templates/repo/issue/new_form.tmpl b/templates/repo/issue/new_form.tmpl
index 829f66943b..2e3c777d53 100644
--- a/templates/repo/issue/new_form.tmpl
+++ b/templates/repo/issue/new_form.tmpl
@@ -1,4 +1,4 @@
-<form class="ui comment form grid" action="{{EscapePound .Link}}" method="post">
+<form class="ui comment form stackable grid" action="{{EscapePound .Link}}" method="post">
{{.CsrfTokenHtml}}
{{if .Flash}}
<div class="sixteen wide column">
diff --git a/templates/repo/issue/view.tmpl b/templates/repo/issue/view.tmpl
index 2260f17399..007c044355 100644
--- a/templates/repo/issue/view.tmpl
+++ b/templates/repo/issue/view.tmpl
@@ -2,9 +2,11 @@
<div class="repository view issue pull">
{{template "repo/header" .}}
<div class="ui container">
- <div class="navbar">
- {{template "repo/issue/navbar" .}}
- <div class="ui right">
+ <div class="ui two column stackable grid">
+ <div class="column">
+ {{template "repo/issue/navbar" .}}
+ </div>
+ <div class="column right aligned">
{{if .PageIsIssueList}}
<a class="ui green button" href="{{.RepoLink}}/issues/new">{{.i18n.Tr "repo.issues.new"}}</a>
{{else}}
diff --git a/templates/repo/issue/view_content.tmpl b/templates/repo/issue/view_content.tmpl
index 4343aec9fc..ea0e32c55e 100644
--- a/templates/repo/issue/view_content.tmpl
+++ b/templates/repo/issue/view_content.tmpl
@@ -1,4 +1,4 @@
-<div class="ui grid">
+<div class="ui stackable grid">
{{if .Flash}}
<div class="sixteen wide column">
{{template "base/alert" .}}
diff --git a/templates/repo/pulls/tab_menu.tmpl b/templates/repo/pulls/tab_menu.tmpl
index c81eab0dfe..e3f39e8ad2 100644
--- a/templates/repo/pulls/tab_menu.tmpl
+++ b/templates/repo/pulls/tab_menu.tmpl
@@ -1,4 +1,4 @@
-<div class="ui top attached pull tabular menu">
+<div class="ui top attached pull tabular stackable menu">
<a class="item {{if .PageIsPullConversation}}active{{end}}" href="{{.RepoLink}}/pulls/{{.Issue.Index}}">
<span class="octicon octicon-comment-discussion"></span>
{{$.i18n.Tr "repo.pulls.tab_conversation"}}
diff --git a/templates/repo/view_file.tmpl b/templates/repo/view_file.tmpl
index 740a789895..6c37aab58a 100644
--- a/templates/repo/view_file.tmpl
+++ b/templates/repo/view_file.tmpl
@@ -1,41 +1,47 @@
<div class="{{TabSizeClass .Editorconfig .FileName}} non-diff-file-content">
<h4 class="ui top attached header" id="{{if .ReadmeExist}}repo-readme{{else}}repo-read-file{{end}}">
- {{if .ReadmeExist}}
- <i class="book icon ui left"></i>
- {{if .ReadmeInList}}
- <strong>{{.FileName}}</strong>
- {{else}}
- <strong>{{.FileName}}</strong> <span class="text grey normal">{{FileSize .FileSize}}{{if .IsLFSFile}} ({{.i18n.Tr "repo.stored_lfs"}}){{end}}</span>
- {{end}}
- {{else}}
- <i class="file text outline icon ui left"></i>
- <strong>{{.FileName}}</strong> <span class="text grey normal">{{FileSize .FileSize}}{{if .IsLFSFile}} ({{.i18n.Tr "repo.stored_lfs"}}){{end}}</span>
- {{end}}
- {{if not .ReadmeInList}}
- <div class="ui right file-actions">
- <div class="ui buttons">
- {{if not .IsViewCommit}}
- <a class="ui button" href="{{.RepoLink}}/src/commit/{{.CommitID}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.file_permalink"}}</a>
- {{end}}
- <a class="ui button" href="{{.RepoLink}}/commits/{{EscapePound .BranchNameSubURL}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.file_history"}}</a>
- <a class="ui button" href="{{EscapePound $.RawFileLink}}">{{.i18n.Tr "repo.file_raw"}}</a>
- </div>
- {{if .Repository.CanEnableEditor}}
- {{if .CanEditFile}}
- <a href="{{.RepoLink}}/_edit/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-pencil btn-octicon poping up" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a>
- {{else}}
- <i class="octicon octicon-pencil btn-octicon poping up disabled" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i>
- {{end}}
- {{if .CanDeleteFile}}
- <a href="{{.RepoLink}}/_delete/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-trashcan btn-octicon btn-octicon-danger poping up" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a>
+ <div class="ui stackable grid">
+ <div class="ten wide column">
+ {{if .ReadmeExist}}
+ <i class="book icon ui left"></i>
+ {{if .ReadmeInList}}
+ <strong>{{.FileName}}</strong>
{{else}}
- <i class="octicon octicon-trashcan btn-octicon poping up disabled" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i>
+ <strong>{{.FileName}}</strong> <span class="text grey normal">{{FileSize .FileSize}}{{if .IsLFSFile}} ({{.i18n.Tr "repo.stored_lfs"}}){{end}}</span>
{{end}}
+ {{else}}
+ <i class="file text outline icon ui left"></i>
+ <strong>{{.FileName}}</strong> <span class="text grey normal">{{FileSize .FileSize}}{{if .IsLFSFile}} ({{.i18n.Tr "repo.stored_lfs"}}){{end}}</span>
{{end}}
</div>
- {{end}}
+ <div class="six wide right aligned column">
+ {{if not .ReadmeInList}}
+ <div class="ui right file-actions">
+ <div class="ui buttons">
+ {{if not .IsViewCommit}}
+ <a class="ui button" href="{{.RepoLink}}/src/commit/{{.CommitID}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.file_permalink"}}</a>
+ {{end}}
+ <a class="ui button" href="{{.RepoLink}}/commits/{{EscapePound .BranchNameSubURL}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.file_history"}}</a>
+ <a class="ui button" href="{{EscapePound $.RawFileLink}}">{{.i18n.Tr "repo.file_raw"}}</a>
+ </div>
+ {{if .Repository.CanEnableEditor}}
+ {{if .CanEditFile}}
+ <a href="{{.RepoLink}}/_edit/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-pencil btn-octicon poping up" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a>
+ {{else}}
+ <i class="octicon octicon-pencil btn-octicon poping up disabled" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i>
+ {{end}}
+ {{if .CanDeleteFile}}
+ <a href="{{.RepoLink}}/_delete/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-trashcan btn-octicon btn-octicon-danger poping up" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a>
+ {{else}}
+ <i class="octicon octicon-trashcan btn-octicon poping up disabled" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i>
+ {{end}}
+ {{end}}
+ </div>
+ {{end}}
+ </div>
+ </div>
</h4>
- <div class="ui attached table segment">
+ <div class="ui attached table unstackable segment">
<div class="file-view {{if .IsMarkup}}markdown{{else if .IsRenderedHTML}}plain-text{{else if .IsTextFile}}code-view{{end}} has-emoji">
{{if .IsMarkup}}
{{if .FileContent}}{{.FileContent | Safe}}{{end}}
diff --git a/templates/repo/wiki/view.tmpl b/templates/repo/wiki/view.tmpl
index 2e604f1b71..dfd368cd3d 100644
--- a/templates/repo/wiki/view.tmpl
+++ b/templates/repo/wiki/view.tmpl
@@ -3,7 +3,7 @@
{{template "repo/header" .}}
{{ $title := .title}}
<div class="ui container">
- <div class="ui grid">
+ <div class="ui stackable grid">
<div class="ui ten wide column">
<div class="choose page">
<div class="ui floating filter dropdown" data-no-results="{{.i18n.Tr "repo.pulls.no_results"}}">
@@ -54,17 +54,23 @@
</div>
</div>
<div class="ui dividing header">
- {{$title}}
- {{if and .IsRepositoryWriter (not .Repository.IsMirror)}}
- <div class="ui right">
- <a class="ui small button" href="{{.RepoLink}}/wiki/{{.PageURL}}/_edit">{{.i18n.Tr "repo.wiki.edit_page_button"}}</a>
- <a class="ui green small button" href="{{.RepoLink}}/wiki/_new">{{.i18n.Tr "repo.wiki.new_page_button"}}</a>
- <a class="ui red small button delete-button" href="" data-url="{{.RepoLink}}/wiki/{{.PageURL}}/delete" data-id="{{.PageURL}}">{{.i18n.Tr "repo.wiki.delete_page_button"}}</a>
+ <div class="ui stackable grid">
+ <div class="eight wide column">
+ {{$title}}
+ <div class="ui sub header">
+ {{$timeSince := TimeSince .Author.When $.Lang}}
+ {{.i18n.Tr "repo.wiki.last_commit_info" .Author.Name $timeSince | Safe}}
+ </div>
+ </div>
+ <div class="eight wide right aligned column">
+ {{if and .IsRepositoryWriter (not .Repository.IsMirror)}}
+ <div class="ui right">
+ <a class="ui small button" href="{{.RepoLink}}/wiki/{{.PageURL}}/_edit">{{.i18n.Tr "repo.wiki.edit_page_button"}}</a>
+ <a class="ui green small button" href="{{.RepoLink}}/wiki/_new">{{.i18n.Tr "repo.wiki.new_page_button"}}</a>
+ <a class="ui red small button delete-button" href="" data-url="{{.RepoLink}}/wiki/{{.PageURL}}/delete" data-id="{{.PageURL}}">{{.i18n.Tr "repo.wiki.delete_page_button"}}</a>
+ </div>
+ {{end}}
</div>
- {{end}}
- <div class="ui sub header">
- {{$timeSince := TimeSince .Author.When $.Lang}}
- {{.i18n.Tr "repo.wiki.last_commit_info" .Author.Name $timeSince | Safe}}
</div>
</div>
{{if .FormatWarning}}
diff --git a/templates/user/auth/signin_navbar.tmpl b/templates/user/auth/signin_navbar.tmpl
index 3102eb8c5c..3f0db26713 100644
--- a/templates/user/auth/signin_navbar.tmpl
+++ b/templates/user/auth/signin_navbar.tmpl
@@ -1,5 +1,5 @@
{{if .EnableOpenIDSignIn}}
-<div class="ui secondary pointing tabular top attached borderless menu stackable new-menu navbar">
+<div class="ui secondary pointing tabular top attached borderless menu new-menu navbar">
<a class="{{if .PageIsLogin}}active{{end}} item" href="{{AppSubUrl}}/user/login">
{{.i18n.Tr "auth.login_userpass"}}
</a>
diff --git a/templates/user/dashboard/dashboard.tmpl b/templates/user/dashboard/dashboard.tmpl
index c1f02ac8d1..bddcc4925b 100644
--- a/templates/user/dashboard/dashboard.tmpl
+++ b/templates/user/dashboard/dashboard.tmpl
@@ -3,7 +3,7 @@
{{template "user/dashboard/navbar" .}}
<div class="ui container">
{{template "base/alert" .}}
- <div class="ui grid">
+ <div class="ui mobile reversed stackable grid">
<div class="ten wide column">
{{template "user/dashboard/feeds" .}}
</div>
@@ -27,7 +27,7 @@
v-cloak
>
<div>
- <div v-if="!isOrganization" class="ui two item stackable tabable menu">
+ <div v-if="!isOrganization" class="ui two item tabable menu">
<a :class="{item: true, active: tab === 'repos'}" @click="changeTab('repos')">{{.i18n.Tr "repository"}}</a>
<a :class="{item: true, active: tab === 'organizations'}" @click="changeTab('organizations')">{{.i18n.Tr "organization"}}</a>
</div>
diff --git a/templates/user/dashboard/feeds.tmpl b/templates/user/dashboard/feeds.tmpl
index e94ef4d6b8..bdd6c34820 100644
--- a/templates/user/dashboard/feeds.tmpl
+++ b/templates/user/dashboard/feeds.tmpl
@@ -4,7 +4,7 @@
<img class="ui avatar image" src="{{.GetActAvatar}}" alt="">
</div>
<div class="ui grid">
- <div class="ui fifteen wide column">
+ <div class="ui thirteen wide column">
<div class="{{if eq .GetOpType 5}}push news{{end}}">
<p>
<a href="{{AppSubUrl}}/{{.GetActUserName}}">{{.ShortActUserName}}</a>
@@ -79,7 +79,7 @@
<p class="text italic light grey">{{TimeSince .GetCreate $.i18n.Lang}}</p>
</div>
</div>
- <div class="ui one wide column">
+ <div class="ui three wide right aligned column">
<i class="text grey mega-octicon octicon-{{ActionIcon .GetOpType}}"></i>
</div>
</div>
diff --git a/templates/user/dashboard/issues.tmpl b/templates/user/dashboard/issues.tmpl
index cf2e10885b..720def07e9 100644
--- a/templates/user/dashboard/issues.tmpl
+++ b/templates/user/dashboard/issues.tmpl
@@ -2,7 +2,7 @@
<div class="dashboard issues">
{{template "user/dashboard/navbar" .}}
<div class="ui container">
- <div class="ui grid">
+ <div class="ui stackable grid">
<div class="four wide column">
<div class="ui secondary vertical filter menu">
<a class="{{if eq .ViewType "your_repositories"}}ui basic blue button{{end}} item" href="{{.Link}}?type=your_repositories&repo={{.RepoID}}&sort={{$.SortType}}&state={{.State}}">
@@ -64,8 +64,16 @@
<div class="ui label">{{if not $.RepoID}}{{.Repo.FullName}}{{end}}#{{.Index}}</div>
<a class="title has-emoji" href="{{AppSubUrl}}/{{.Repo.Owner.Name}}/{{.Repo.Name}}/issues/{{.Index}}">{{.Title}}</a>
- {{range .Labels}}
- <a class="ui label" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&state={{$.State}}&labels={{.ID}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}" style="color: {{.ForegroundColor}}; background-color: {{.Color}}">{{.Name}}</a>
+ {{with .Labels}}
+ {{/* If we have any labels, we should show them
+ with a 2.5 line height, this way they don't look
+ awful and they don't stack on top of each other,
+ especially on mobile views. */}}
+ <span style="line-height: 2.5">
+ {{range .}}
+ <a class="ui label" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&state={{$.State}}&labels={{.ID}}&milestone={{$.MilestoneID}}&assignee={{$.AssigneeID}}" style="color: {{.ForegroundColor}}; background-color: {{.Color}}">{{.Name}}</a>
+ {{end}}
+ </span>
{{end}}
{{if .NumComments}}
diff --git a/templates/user/dashboard/navbar.tmpl b/templates/user/dashboard/navbar.tmpl
index 02f21048ff..0a395bc329 100644
--- a/templates/user/dashboard/navbar.tmpl
+++ b/templates/user/dashboard/navbar.tmpl
@@ -1,36 +1,38 @@
<div class="ui container">
- <div class="ui floating dropdown link jump">
- <span class="text">
- <img class="ui avatar image" src="{{.ContextUser.RelAvatarLink}}">
- {{.ContextUser.ShortName 20}}
- <i class="dropdown icon"></i>
- </span>
- <div class="context user overflow menu" tabindex="-1">
- <div class="ui header">
- {{.i18n.Tr "home.switch_dashboard_context"}}
- </div>
- <div class="items">
- <a class="{{if eq .ContextUser.ID .SignedUser.ID}}active selected{{end}} item" href="{{AppSubUrl}}/{{if .PageIsIssues}}issues{{else if .PageIsPulls}}pulls{{end}}">
- <img class="ui avatar image" src="{{.SignedUser.RelAvatarLink}}">
- {{.SignedUser.Name}}
- </a>
- {{range .Orgs}}
- <a class="{{if eq $.ContextUser.ID .ID}}active selected{{end}} item" href="{{AppSubUrl}}/org/{{.Name}}/{{if $.PageIsIssues}}issues{{else if $.PageIsPulls}}pulls{{else}}dashboard{{end}}">
- <img class="ui avatar image" src="{{.RelAvatarLink}}">
- {{.ShortName 20}}
+ <div class="ui secondary stackable menu">
+ <div class="item">
+ <div class="ui floating dropdown link jump">
+ <span class="text">
+ <img class="ui avatar image" src="{{.ContextUser.RelAvatarLink}}">
+ {{.ContextUser.ShortName 20}}
+ <i class="dropdown icon"></i>
+ </span>
+ <div class="context user overflow menu" tabindex="-1">
+ <div class="ui header">
+ {{.i18n.Tr "home.switch_dashboard_context"}}
+ </div>
+ <div class="items">
+ <a class="{{if eq .ContextUser.ID .SignedUser.ID}}active selected{{end}} item" href="{{AppSubUrl}}/{{if .PageIsIssues}}issues{{else if .PageIsPulls}}pulls{{end}}">
+ <img class="ui avatar image" src="{{.SignedUser.RelAvatarLink}}">
+ {{.SignedUser.Name}}
+ </a>
+ {{range .Orgs}}
+ <a class="{{if eq $.ContextUser.ID .ID}}active selected{{end}} item" href="{{AppSubUrl}}/org/{{.Name}}/{{if $.PageIsIssues}}issues{{else if $.PageIsPulls}}pulls{{else}}dashboard{{end}}">
+ <img class="ui avatar image" src="{{.RelAvatarLink}}">
+ {{.ShortName 20}}
+ </a>
+ {{end}}
+ </div>
+ <a class="item" href="{{AppSubUrl}}/org/create">
+ <i class="octicon octicon-plus"></i>&nbsp;&nbsp;&nbsp;{{.i18n.Tr "new_org"}}
</a>
- {{end}}
+ </div>
</div>
- <a class="item" href="{{AppSubUrl}}/org/create">
- <i class="octicon octicon-plus"></i>&nbsp;&nbsp;&nbsp;{{.i18n.Tr "new_org"}}
- </a>
</div>
- </div>
- {{if .ContextUser.IsOrganization}}
- <div class="ui right">
- <div class="ui secondary head menu">
- <a class="{{if .PageIsNews}}active{{end}} item" href="{{AppSubUrl}}/org/{{.ContextUser.Name}}/dashboard">
+ {{if .ContextUser.IsOrganization}}
+ <div class="right stackable menu">
+ <a class="{{if .PageIsNews}}active{{end}} item" style="margin-left: auto" href="{{AppSubUrl}}/org/{{.ContextUser.Name}}/dashboard">
<i class="octicon octicon-rss"></i>&nbsp;{{.i18n.Tr "activities"}}
</a>
<a class="{{if .PageIsIssues}}active{{end}} item" href="{{AppSubUrl}}/org/{{.ContextUser.Name}}/issues">
@@ -39,15 +41,13 @@
<a class="{{if .PageIsPulls}}active{{end}} item" href="{{AppSubUrl}}/org/{{.ContextUser.Name}}/pulls">
<i class="octicon octicon-git-pull-request"></i>&nbsp;{{.i18n.Tr "pull_requests"}}
</a>
- <div class="right menu">
- <div class="item">
- <a class="ui blue basic button" href="{{.ContextUser.HomeLink}}">
- {{.i18n.Tr "home.view_home" (.ContextUser.ShortName 10)}}
- </a>
- </div>
+ <div class="item">
+ <a class="ui blue basic button" href="{{.ContextUser.HomeLink}}">
+ {{.i18n.Tr "home.view_home" (.ContextUser.ShortName 10)}}
+ </a>
</div>
</div>
- </div>
- {{end}}
+ {{end}}
+ </div>
</div>
<div class="ui divider"></div>
diff --git a/templates/user/profile.tmpl b/templates/user/profile.tmpl
index e89a4aa378..669ee3264b 100644
--- a/templates/user/profile.tmpl
+++ b/templates/user/profile.tmpl
@@ -1,7 +1,7 @@
{{template "base/head" .}}
<div class="user profile">
<div class="ui container">
- <div class="ui grid">
+ <div class="ui stackable grid">
<div class="ui five wide column">
<div class="ui card">
{{if eq .SignedUserName .Owner.Name}}
@@ -82,7 +82,7 @@
</div>
</div>
<div class="ui eleven wide column">
- <div class="ui secondary pointing menu">
+ <div class="ui secondary stackable pointing menu">
<a class='{{if and (ne .TabName "activity") (ne .TabName "stars")}}active{{end}} item' href="{{.Owner.HomeLink}}">
<i class="octicon octicon-repo"></i> {{.i18n.Tr "user.repositories"}}
</a>