From 52c4bdd6ee65adb2ec42f768463684343d8566ec Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Tue, 27 Mar 2018 15:06:37 +0200 Subject: [PATCH] SONAR-10481 Fix text wrapping in breadcrumbs with branch --- .../components/nav/component/ComponentNav.css | 7 ++ .../components/nav/component/ComponentNav.tsx | 26 +++---- .../nav/component/ComponentNavBranch.tsx | 6 +- .../nav/component/ComponentNavHeader.tsx | 8 +-- .../nav/component/ComponentNavMeta.tsx | 2 +- .../__snapshots__/ComponentNav-test.tsx.snap | 72 ++++++++++--------- .../ComponentNavBranch-test.tsx.snap | 8 +-- .../ComponentNavHeader-test.tsx.snap | 6 +- .../ComponentNavMeta-test.tsx.snap | 6 +- .../src/main/js/app/styles/init/misc.css | 5 ++ .../main/js/components/nav/ContextNavBar.css | 23 ++++-- 11 files changed, 101 insertions(+), 68 deletions(-) diff --git a/server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.css b/server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.css index ac7ce95e3f3..6b87dcbcb6e 100644 --- a/server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.css +++ b/server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.css @@ -17,9 +17,16 @@ * along with this program; if not, write to the Free Software Foundation, * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ +.navbar-context-justified { + display: flex; + justify-content: space-between; +} + .navbar-context-branches { display: inline-flex; justify-content: center; + flex-shrink: 1 !important; + min-width: 0; line-height: calc(2 * var(--gridSize)); margin-left: calc(2 * var(--gridSize)); font-size: var(--baseFontSize); diff --git a/server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.tsx b/server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.tsx index 38fbd68f644..366b240f357 100644 --- a/server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.tsx +++ b/server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.tsx @@ -81,20 +81,22 @@ export default class ComponentNav extends React.PureComponent { } return ( - - +
+ + +
+ {translate('branches.orphan_branch')} @@ -157,7 +157,7 @@ export default class ComponentNavBranch extends React.PureComponent + - + {displayName} diff --git a/server/sonar-web/src/main/js/app/components/nav/component/ComponentNavHeader.tsx b/server/sonar-web/src/main/js/app/components/nav/component/ComponentNavHeader.tsx index b0d387e4fa7..e6dae1fa20c 100644 --- a/server/sonar-web/src/main/js/app/components/nav/component/ComponentNavHeader.tsx +++ b/server/sonar-web/src/main/js/app/components/nav/component/ComponentNavHeader.tsx @@ -51,16 +51,16 @@ export function ComponentNavHeader(props: Props) { return (
{organization && shouldOrganizationBeDisplayed && ( <> + className="navbar-context-header-breadcrumb-link link-base-color link-no-underline spacer-left" + organization={organization}> {organization.name} @@ -93,7 +93,7 @@ function renderBreadcrumbs(breadcrumbs: Breadcrumb[]) { {index === 0 && } {itemName} diff --git a/server/sonar-web/src/main/js/app/components/nav/component/ComponentNavMeta.tsx b/server/sonar-web/src/main/js/app/components/nav/component/ComponentNavMeta.tsx index 57f41ffeb3d..d8a16d8066e 100644 --- a/server/sonar-web/src/main/js/app/components/nav/component/ComponentNavMeta.tsx +++ b/server/sonar-web/src/main/js/app/components/nav/component/ComponentNavMeta.tsx @@ -59,7 +59,7 @@ export function ComponentNavMeta({ branchLike, component, currentUser }: Props) return (
{component.analysisDate && ( -
+
)} diff --git a/server/sonar-web/src/main/js/app/components/nav/component/__tests__/__snapshots__/ComponentNav-test.tsx.snap b/server/sonar-web/src/main/js/app/components/nav/component/__tests__/__snapshots__/ComponentNav-test.tsx.snap index 2d5fe354989..b95d5c4732b 100644 --- a/server/sonar-web/src/main/js/app/components/nav/component/__tests__/__snapshots__/ComponentNav-test.tsx.snap +++ b/server/sonar-web/src/main/js/app/components/nav/component/__tests__/__snapshots__/ComponentNav-test.tsx.snap @@ -5,42 +5,46 @@ exports[`renders 1`] = ` height={72} id="context-navigation" > - + - + + /> +
@@ -82,7 +82,7 @@ exports[`renders pull request 1`] = ` className="navbar-context-branches dropdown" > @@ -114,7 +114,7 @@ exports[`renders pull request 1`] = ` /> diff --git a/server/sonar-web/src/main/js/app/components/nav/component/__tests__/__snapshots__/ComponentNavHeader-test.tsx.snap b/server/sonar-web/src/main/js/app/components/nav/component/__tests__/__snapshots__/ComponentNavHeader-test.tsx.snap index dd13db8a75c..4d85fb56b11 100644 --- a/server/sonar-web/src/main/js/app/components/nav/component/__tests__/__snapshots__/ComponentNavHeader-test.tsx.snap +++ b/server/sonar-web/src/main/js/app/components/nav/component/__tests__/__snapshots__/ComponentNavHeader-test.tsx.snap @@ -15,7 +15,7 @@ exports[`should not render breadcrumbs with one element 1`] = ` qualifier="TRK" />
*:not(.navbar-context-header-breadcrumb-link) { + flex-shrink: 0; +} + +.navbar-context-header-breadcrumb-link { + min-width: 0; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + .navbar-context-header .slash-separator { margin-left: var(--gridSize); margin-right: var(--gridSize); @@ -49,14 +64,14 @@ color: rgba(68, 68, 68, 0.2); } +/* set `min-width: 0` to allow flexbox item to shrink */ +/* https://stackoverflow.com/questions/38223879/white-space-nowrap-breaks-flexbox-layout */ .navbar-context-meta { - position: absolute; - top: 0; - right: 0; display: flex; align-items: center; + min-width: 0; height: calc(4 * var(--gridSize)); - padding: 0 20px; + padding-left: 20px; color: var(--secondFontColor); font-size: var(--smallFontSize); text-align: right; -- 2.39.5