Improve tooltip positioning
Signed-off-by: Michael Weimann <michaelw@matrix.org>
This commit is contained in:
parent
1e73184b78
commit
7ed3089434
16 changed files with 112 additions and 68 deletions
|
@ -30,7 +30,6 @@ describe('<TooltipTarget />', () => {
|
|||
"className": 'test className',
|
||||
"tooltipClassName": 'test tooltipClassName',
|
||||
"label": 'test label',
|
||||
"yOffset": 1,
|
||||
"alignment": Alignment.Left,
|
||||
"id": 'test id',
|
||||
'data-test-id': 'test',
|
||||
|
@ -64,13 +63,17 @@ describe('<TooltipTarget />', () => {
|
|||
expect(getVisibleTooltip()).toBeFalsy();
|
||||
});
|
||||
|
||||
it('displays tooltip on mouseover', () => {
|
||||
const wrapper = getComponent();
|
||||
act(() => {
|
||||
Simulate.mouseOver(wrapper);
|
||||
});
|
||||
expect(getVisibleTooltip()).toMatchSnapshot();
|
||||
});
|
||||
for (const alignment in Alignment) {
|
||||
if (isNaN(Number(alignment))) {
|
||||
it(`displays ${alignment} aligned tooltip on mouseover`, () => {
|
||||
const wrapper = getComponent({ alignment: Alignment[alignment] });
|
||||
act(() => {
|
||||
Simulate.mouseOver(wrapper);
|
||||
});
|
||||
expect(getVisibleTooltip()).toMatchSnapshot();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
it('hides tooltip on mouseleave', () => {
|
||||
const wrapper = getComponent();
|
||||
|
|
|
@ -1,9 +1,81 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`<TooltipTarget /> displays tooltip on mouseover 1`] = `
|
||||
exports[`<TooltipTarget /> displays Bottom aligned tooltip on mouseover 1`] = `
|
||||
<div
|
||||
class="mx_Tooltip test tooltipClassName mx_Tooltip_visible"
|
||||
style="right: 1024px; top: -26px; display: block;"
|
||||
style="top: 6px; left: 0px; transform: translate(-50%); display: block;"
|
||||
>
|
||||
<div
|
||||
class="mx_Tooltip_chevron"
|
||||
/>
|
||||
test label
|
||||
</div>
|
||||
`;
|
||||
|
||||
exports[`<TooltipTarget /> displays InnerBottom aligned tooltip on mouseover 1`] = `
|
||||
<div
|
||||
class="mx_Tooltip test tooltipClassName mx_Tooltip_visible"
|
||||
style="top: -50px; left: 0px; transform: translate(-50%); display: block;"
|
||||
>
|
||||
<div
|
||||
class="mx_Tooltip_chevron"
|
||||
/>
|
||||
test label
|
||||
</div>
|
||||
`;
|
||||
|
||||
exports[`<TooltipTarget /> displays Left aligned tooltip on mouseover 1`] = `
|
||||
<div
|
||||
class="mx_Tooltip test tooltipClassName mx_Tooltip_visible"
|
||||
style="right: 1030px; top: 0px; transform: translateY(-50%); display: block;"
|
||||
>
|
||||
<div
|
||||
class="mx_Tooltip_chevron"
|
||||
/>
|
||||
test label
|
||||
</div>
|
||||
`;
|
||||
|
||||
exports[`<TooltipTarget /> displays Natural aligned tooltip on mouseover 1`] = `
|
||||
<div
|
||||
class="mx_Tooltip test tooltipClassName mx_Tooltip_visible"
|
||||
style="left: 6px; top: 0px; transform: translateY(-50%); display: block;"
|
||||
>
|
||||
<div
|
||||
class="mx_Tooltip_chevron"
|
||||
/>
|
||||
test label
|
||||
</div>
|
||||
`;
|
||||
|
||||
exports[`<TooltipTarget /> displays Right aligned tooltip on mouseover 1`] = `
|
||||
<div
|
||||
class="mx_Tooltip test tooltipClassName mx_Tooltip_visible"
|
||||
style="left: 6px; top: 0px; transform: translateY(-50%); display: block;"
|
||||
>
|
||||
<div
|
||||
class="mx_Tooltip_chevron"
|
||||
/>
|
||||
test label
|
||||
</div>
|
||||
`;
|
||||
|
||||
exports[`<TooltipTarget /> displays Top aligned tooltip on mouseover 1`] = `
|
||||
<div
|
||||
class="mx_Tooltip test tooltipClassName mx_Tooltip_visible"
|
||||
style="top: -6px; left: 0px; transform: translate(-50%, -100%); display: block;"
|
||||
>
|
||||
<div
|
||||
class="mx_Tooltip_chevron"
|
||||
/>
|
||||
test label
|
||||
</div>
|
||||
`;
|
||||
|
||||
exports[`<TooltipTarget /> displays TopRight aligned tooltip on mouseover 1`] = `
|
||||
<div
|
||||
class="mx_Tooltip test tooltipClassName mx_Tooltip_visible"
|
||||
style="top: -6px; right: 1024px; transform: translateY(-100%); display: block;"
|
||||
>
|
||||
<div
|
||||
class="mx_Tooltip_chevron"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue