Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Remove logo forced width #19049

Merged
merged 14 commits into from
Mar 21, 2022
11 changes: 9 additions & 2 deletions superset-frontend/src/views/components/Menu.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ interface BrandProps {
path: string;
icon: string;
alt: string;
width: string | number;
tooltip: string;
text: string;
}
Expand Down Expand Up @@ -97,6 +96,14 @@ const StyledHeader = styled.header`
display: flex;
flex-direction: column;
justify-content: center;
min-height: ${({ theme }) => `${theme.gridUnit * 12.5}px`};
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe just 12? Or lucky 13? Trying to avoid fractional gridUnits wherever possible, as usual.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope. It needs to be exactly 50 or it will break the antdesign nav bar

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we just forgo the gridUnit here and give it a pixel measurement (and maybe a comment for the rationale). Then it won't be fragile if someone changes the gridUnit from 4px to 5px in their theme.

padding: ${({ theme }) =>
`${theme.gridUnit * 3.5}px ${theme.gridUnit * 2.5}px`};

img {
height: 100%;
object-fit: contain;
}
}
.navbar-brand-text {
border-left: 1px solid ${({ theme }) => theme.colors.grayscale.light2};
Expand Down Expand Up @@ -273,7 +280,7 @@ export function Menu({
arrowPointAtCenter
>
<a className="navbar-brand" href={brand.path}>
<img width={brand.width} src={brand.icon} alt={brand.alt} />
<img src={brand.icon} alt={brand.alt} />
</a>
</Tooltip>
{brand.text && (
Expand Down
1 change: 0 additions & 1 deletion superset/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,6 @@ def _try_json_readsha(filepath: str, length: int) -> Optional[str]:

# Specify the App icon
APP_ICON = "/static/assets/images/superset-logo-horiz.png"
APP_ICON_WIDTH = 126
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add something to UPDATING.MD stating that this configuration was removed?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right! Added to the breaking changes. Thanks @michael-s-molina

@rusackas let me know your thoughts about communicating this breaking change to the wider community before merging.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we do this, I think we should tag the PR with the 2.0 label and the risk:breaking-change label, add it to the 2.0 project board, and update UPDATING.MD as you've done here.

Or, as noted elsewhere, we COULD use that value in the CSS, to make it a little more configurable. If we want to keep that complexity and avoid the breaking change, that is.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rusackas I think the configurability brings a bit of complexity to it. If there is a strong signal from the community that they need the APP_ICON_WIDTH, we should probably add another config flag, such as USE_APP_ICON_FORCED_WIDTH = Boolean, and then behave consistently with that when True. When False just fallback to the implementation of this PR.


# Specify where clicking the logo would take the user
# e.g. setting it to '/' would take the user to '/superset/welcome/'
Expand Down
1 change: 0 additions & 1 deletion superset/views/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -317,7 +317,6 @@ def menu_data() -> Dict[str, Any]:
"path": appbuilder.app.config["LOGO_TARGET_PATH"] or "/",
"icon": appbuilder.app_icon,
"alt": appbuilder.app_name,
"width": appbuilder.app.config["APP_ICON_WIDTH"],
"tooltip": appbuilder.app.config["LOGO_TOOLTIP"],
"text": brand_text,
},
Expand Down