mirror of
https://github.com/TryGhost/Ghost.git
synced 2025-02-17 23:44:39 -05:00
Improved dashboard tooltip positioning
This commit is contained in:
parent
28919eb057
commit
6e3267315a
4 changed files with 21 additions and 10 deletions
|
@ -275,13 +275,11 @@ export default class Anchor extends Component {
|
|||
|
||||
// only show tooltip when active
|
||||
if (tooltip.opacity === 0) {
|
||||
tooltipEl.style.display = 'none';
|
||||
tooltipEl.style.opacity = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
// update tooltip styles
|
||||
tooltipEl.style.display = 'block';
|
||||
tooltipEl.style.opacity = 1;
|
||||
tooltipEl.style.position = 'absolute';
|
||||
|
||||
|
|
|
@ -123,6 +123,7 @@ export default class PaidBreakdown extends Component {
|
|||
custom: function (tooltip) {
|
||||
// get tooltip element
|
||||
const tooltipEl = document.getElementById('gh-dashboard5-breakdown-tooltip');
|
||||
const tooltipWidth = tooltipEl.offsetWidth;
|
||||
|
||||
// only show tooltip when active
|
||||
if (tooltip.opacity === 0) {
|
||||
|
@ -135,7 +136,7 @@ export default class PaidBreakdown extends Component {
|
|||
tooltipEl.style.display = 'block';
|
||||
tooltipEl.style.opacity = 1;
|
||||
tooltipEl.style.position = 'absolute';
|
||||
tooltipEl.style.left = tooltip.x + 'px';
|
||||
tooltipEl.style.left = tooltip.x - (tooltipWidth / 2) + 'px';
|
||||
tooltipEl.style.top = '70px';
|
||||
},
|
||||
callbacks: {
|
||||
|
|
|
@ -164,20 +164,26 @@ export default class PaidMix extends Component {
|
|||
custom: function (tooltip) {
|
||||
// get tooltip element
|
||||
const tooltipEl = document.getElementById('gh-dashboard5-mix-tooltip');
|
||||
const chartContainerEl = tooltipEl.parentElement;
|
||||
const chartWidth = chartContainerEl.offsetWidth;
|
||||
const tooltipWidth = tooltipEl.offsetWidth;
|
||||
|
||||
// only show tooltip when active
|
||||
if (tooltip.opacity === 0) {
|
||||
tooltipEl.style.display = 'none';
|
||||
tooltipEl.style.opacity = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
let offsetX = 0;
|
||||
if (tooltip.x > chartWidth - tooltipWidth) {
|
||||
offsetX = tooltipWidth - 10;
|
||||
}
|
||||
|
||||
// update tooltip styles
|
||||
tooltipEl.style.display = 'block';
|
||||
tooltipEl.style.opacity = 1;
|
||||
tooltipEl.style.position = 'absolute';
|
||||
tooltipEl.style.left = tooltip.x + 'px';
|
||||
tooltipEl.style.top = tooltip.y + 'px';
|
||||
tooltipEl.style.left = tooltip.x - offsetX + 'px';
|
||||
tooltipEl.style.top = '30px';
|
||||
},
|
||||
callbacks: {
|
||||
label: (tooltipItems, data) => {
|
||||
|
|
|
@ -173,19 +173,25 @@ export default class PaidMrr extends Component {
|
|||
custom: function (tooltip) {
|
||||
// get tooltip element
|
||||
const tooltipEl = document.getElementById('gh-dashboard5-mrr-tooltip');
|
||||
const chartContainerEl = tooltipEl.parentElement;
|
||||
const chartWidth = chartContainerEl.offsetWidth;
|
||||
const tooltipWidth = tooltipEl.offsetWidth;
|
||||
|
||||
// only show tooltip when active
|
||||
if (tooltip.opacity === 0) {
|
||||
tooltipEl.style.display = 'none';
|
||||
tooltipEl.style.opacity = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
let offsetX = 0;
|
||||
if (tooltip.x > chartWidth - tooltipWidth) {
|
||||
offsetX = tooltipWidth - 10;
|
||||
}
|
||||
|
||||
// update tooltip styles
|
||||
tooltipEl.style.display = 'block';
|
||||
tooltipEl.style.opacity = 1;
|
||||
tooltipEl.style.position = 'absolute';
|
||||
tooltipEl.style.left = tooltip.x + 'px';
|
||||
tooltipEl.style.left = tooltip.x - offsetX + 'px';
|
||||
tooltipEl.style.top = tooltip.y + 'px';
|
||||
},
|
||||
callbacks: {
|
||||
|
|
Loading…
Add table
Reference in a new issue