diff options
author | Kushal Pandya <kushalspandya@gmail.com> | 2017-11-29 10:35:41 +0000 |
---|---|---|
committer | Phil Hughes <me@iamphill.com> | 2017-11-29 10:35:41 +0000 |
commit | ebf22493b56e9231b09e4c2192597848b536d34b (patch) | |
tree | 92e21ad088127b442777f144e198a4232b8e3630 /app | |
parent | a2fea9288ef0a2d714827ac5b92e7330d3cb2c3f (diff) | |
download | gitlab-ce-ebf22493b56e9231b09e4c2192597848b536d34b.tar.gz |
Fix item name and namespace text overflow in Projects dropdown
Diffstat (limited to 'app')
-rw-r--r-- | app/assets/javascripts/projects_dropdown/components/projects_list_item.vue | 25 | ||||
-rw-r--r-- | app/assets/stylesheets/framework/dropdowns.scss | 1 |
2 files changed, 23 insertions, 3 deletions
diff --git a/app/assets/javascripts/projects_dropdown/components/projects_list_item.vue b/app/assets/javascripts/projects_dropdown/components/projects_list_item.vue index fe5179de206..d482a7025de 100644 --- a/app/assets/javascripts/projects_dropdown/components/projects_list_item.vue +++ b/app/assets/javascripts/projects_dropdown/components/projects_list_item.vue @@ -48,6 +48,27 @@ export default { } return this.projectName; }, + /** + * Smartly truncates project namespace by doing two things; + * 1. Only include Group names in path by removing project name + * 2. Only include first and last group names in the path + * when namespace has more than 2 groups present + * + * First part (removal of project name from namespace) can be + * done from backend but doing so involves migration of + * existing project namespaces which is not wise thing to do. + */ + truncatedNamespace() { + const namespaceArr = this.namespace.split(' / '); + namespaceArr.splice(-1, 1); + let namespace = namespaceArr.join(' / '); + + if (namespaceArr.length > 2) { + namespace = `${namespaceArr[0]} / ... / ${namespaceArr.pop()}`; + } + + return namespace; + }, }, }; </script> @@ -87,9 +108,7 @@ export default { <div class="project-namespace" :title="namespace" - > - {{namespace}} - </div> + >{{truncatedNamespace}}</div> </div> </a> </li> diff --git a/app/assets/stylesheets/framework/dropdowns.scss b/app/assets/stylesheets/framework/dropdowns.scss index 579bd48fac6..30d5d7a653b 100644 --- a/app/assets/stylesheets/framework/dropdowns.scss +++ b/app/assets/stylesheets/framework/dropdowns.scss @@ -1002,6 +1002,7 @@ header.header-content .dropdown-menu.projects-dropdown-menu { max-width: 250px; overflow: hidden; text-overflow: ellipsis; + white-space: nowrap; } &:hover { |