Commit b91c4101 by Torkel Ödegaard Committed by GitHub

Merge pull request #13568 from praveensastry/render-drag-handle-only-edit-mode

Render Dashboard Row drag handle only in edit mode
parents aff752e7 1093f9da
......@@ -87,6 +87,7 @@ export class DashboardRow extends React.Component<DashboardRowProps, any> {
const title = templateSrv.replaceWithText(this.props.panel.title, this.props.panel.scopedVars);
const count = this.props.panel.panels ? this.props.panel.panels.length : 0;
const panels = count === 1 ? 'panel' : 'panels';
const canEdit = this.dashboard.meta.canEdit === true;
return (
<div className={classes}>
......@@ -97,7 +98,7 @@ export class DashboardRow extends React.Component<DashboardRowProps, any> {
({count} {panels})
</span>
</a>
{this.dashboard.meta.canEdit === true && (
{canEdit && (
<div className="dashboard-row__actions">
<a className="pointer" onClick={this.openSettings}>
<i className="fa fa-cog" />
......@@ -112,7 +113,7 @@ export class DashboardRow extends React.Component<DashboardRowProps, any> {
&nbsp;
</div>
)}
<div className="dashboard-row__drag grid-drag-handle" />
{canEdit && <div className="dashboard-row__drag grid-drag-handle" />}
</div>
);
}
......
......@@ -39,6 +39,12 @@ describe('DashboardRow', () => {
expect(wrapper.find('.dashboard-row__actions .pointer')).toHaveLength(2);
});
it('should not show row drag handle when cannot edit', () => {
dashboardMock.meta.canEdit = false;
wrapper = shallow(<DashboardRow panel={panel} getPanelContainer={getPanelContainer} />);
expect(wrapper.find('.dashboard-row__drag')).toHaveLength(0);
});
it('should have zero actions when cannot edit', () => {
dashboardMock.meta.canEdit = false;
panel = new PanelModel({ collapsed: false });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment