Skip to content

Commit

Permalink
fix(Explore): fixes broken layout of tooltips (apache#14529)
Browse files Browse the repository at this point in the history
* fix: moves LESS styles into Emotion, fixes broken layout of tooltips

* fix: tests

* style: linting

* style: better styling location
  • Loading branch information
rusackas authored and cccs-RyanS committed Dec 17, 2021
1 parent 364443c commit 1113b72
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 31 deletions.
Expand Up @@ -17,7 +17,7 @@
* under the License.
*/
import React from 'react';
import { shallow } from 'enzyme';
import { styledShallow as shallow } from 'spec/helpers/theming';
import {
DatasourceType,
getChartControlPanelRegistry,
Expand All @@ -29,7 +29,6 @@ import {
ControlPanelsContainer,
ControlPanelsContainerProps,
} from 'src/explore/components/ControlPanelsContainer';
import Collapse from 'src/components/Collapse';

describe('ControlPanelsContainer', () => {
let wrapper;
Expand Down Expand Up @@ -98,6 +97,8 @@ describe('ControlPanelsContainer', () => {

it('renders ControlPanelSections', () => {
wrapper = shallow(<ControlPanelsContainer {...getDefaultProps()} />);
expect(wrapper.find(Collapse.Panel)).toHaveLength(5);
expect(
wrapper.find('[data-test="collapsible-control-panel"]'),
).toHaveLength(5);
});
});
21 changes: 18 additions & 3 deletions superset-frontend/src/explore/components/ControlHeader.jsx
Expand Up @@ -18,7 +18,7 @@
*/
import React from 'react';
import PropTypes from 'prop-types';
import { t } from '@superset-ui/core';
import { t, css } from '@superset-ui/core';
import { InfoTooltipWithTrigger } from '@superset-ui/chart-controls';
import { Tooltip } from 'src/components/Tooltip';
import { FormLabel } from 'src/components/Form';
Expand Down Expand Up @@ -49,7 +49,16 @@ export default class ControlHeader extends React.Component {
renderOptionalIcons() {
if (this.props.hovered) {
return (
<span>
<span
css={theme => css`
position: absolute;
top: 50%;
right: 0;
padding-left: ${theme.gridUnit}px;
transform: translate(100%, -50%);
white-space: nowrap;
`}
>
{this.props.description && (
<span>
<InfoTooltipWithTrigger
Expand Down Expand Up @@ -85,7 +94,13 @@ export default class ControlHeader extends React.Component {
return (
<div className="ControlHeader" data-test={`${this.props.name}-header`}>
<div className="pull-left">
<FormLabel css={{ marginBottom: 0 }}>
<FormLabel
css={{
marginBottom: 0,
position: 'relative',
whiteSpace: 'nowrap',
}}
>
{this.props.leftNode && <span>{this.props.leftNode}</span>}
<span
role="button"
Expand Down
Expand Up @@ -27,6 +27,7 @@ import {
getChartControlPanelRegistry,
QueryFormData,
DatasourceType,
css,
} from '@superset-ui/core';
import {
ControlPanelSectionConfig,
Expand Down Expand Up @@ -314,7 +315,24 @@ export class ControlPanelsContainer extends React.Component<

return (
<Collapse.Panel
className="control-panel-section"
data-test="collapsible-control-panel"
css={theme => css`
margin-bottom: 0;
box-shadow: none;
&:last-child {
padding-bottom: ${theme.gridUnit * 10}px;
}
.panel-body {
margin-left: ${theme.gridUnit * 4}px;
padding-bottom: 0px;
}
span.label {
display: inline-block;
}
`}
header={PanelHeader()}
key={sectionId}
>
Expand Down
24 changes: 0 additions & 24 deletions superset-frontend/src/explore/main.less
Expand Up @@ -47,34 +47,10 @@
margin-right: 3px;
}

.control-panel-section {
margin-bottom: 0;
box-shadow: none;

&:last-child {
padding-bottom: 40px;
}
}

.background-transparent {
background-color: transparent !important;
}

.control-panel-section {
.panel-body {
margin-left: 15px;
padding-bottom: 0px;
}

.control-label {
margin-bottom: 0px;
}

span.label {
display: inline-block;
}
}

.fa.expander {
width: 15px;
}
Expand Down

0 comments on commit 1113b72

Please sign in to comment.