Skip to content

Releases: sir-dunxalot/ember-tooltips

Robustness improvements

31 Dec 14:02
Compare
Choose a tag to compare
  • #124 - Check if tooltip/popover component is destroyed before trying to set properties on it
  • #149 - lazy-render-wrapper will now get the correct $target element, which may be different when using <x>-on-component, <x>-on-element, and when target="some-id"
  • #149 - Renamed entryInteractionEvents to _lazyRenderEvents
  • #149 - Added targetEventNameSpace to keep the code DRY
  • #149 - willDestroyElement also references $target to clean up event handlers
  • #149 - Added an empty <div> to some-component, which adds extra robustness for -on-component tests while maintaining the same UI in the dummy site
  • #149 - Added render-events-test.js

Test coverage improved plus minor bug fixes

22 Dec 22:36
Compare
Choose a tag to compare
  • assertTooltipPosition() public test helper added (#143)
  • Long-term support assed for Ember 2.4 and Ember 2.8 (#132)
  • Whitespace in tooltips rendering correctly in IE (#137)
  • Travis badge now only represents the build for master branch (fixes #142)

Misc. bug fixes

20 Dec 20:41
Compare
Choose a tag to compare

Three small fixes are included in this release:

  • Fix issue with Fastboot (#131)
  • Ability to pass classnames to tooltips (#133)
  • Fixes link to anchor in the readme (#134)

Public test helpers

14 Dec 02:55
Compare
Choose a tag to compare
  • #114 - Public test helpers
    • introduces test helpers (assertTooltipNotRendered, assertTooltipRendered, assertTooltipVisible, assertTooltipNotVisible, and triggerTooltipTargetEvent). See documentation here.
    • Fixes issue where a tooltip target was mouseenter then mouseleave before the tooltip could render. This use to cause "sticking tooltips"
    • Fixes issue where two click events were registered when a user clicked on a tooltip. This produced no UI issues but broke some consuming app's tests
    • Under-the-cover event handling and databinding improvements (no UI effect)
    • More test coverage
    • Tests pass in all scenarios (previously ember-beta and ember-canary were failing)

The test helpers we use within this addon are now available in consuming app's integration and acceptance tests. Here is a real-life example of a consuming app using the helpers.

import { triggerTooltipTargetEvent, assertTooltipNotRendered, assertTooltipRendered, assertTooltipVisible } from 'ember-simple/tests/helpers/ember-tooltips';

moduleForAcceptance('Acceptance | index');

test('visiting / and check tooltip', function(assert) {
  visit('/');

  andThen(function() {

      assert.equal(currentURL(), '/');

      const $tooltipTarget = Ember.$('.js-test-ember-tooltip-target');

      triggerTooltipTargetEvent($tooltipTarget, 'click');

      assertTooltipRendered(assert, {selector: '.js-test-ember-tooltip'});

      assertTooltipVisible(assert, {selector: '.js-test-ember-tooltip'});

  });
});

Documentation for test helpers exists in the readme.

More test helpers will be added in the future, including checking tooltip content and the tooltip positions. This request is tracked by #128.

Adds text property to tooltips and popovers

11 Dec 00:25
Compare
Choose a tag to compare
  • #116 Text property

This release adds the ability to use tooltips and popovers in inline form by passing a text property with the content of the tooltip/popover instead of using a block template.

Instead of:

{{#my-component}}
  Hover for more info

  {{#tooltip-on-component}}
    Here is the info in a tooltip!
  {{/tooltip-on-component}}
{{/my-component}}

You can now write:

{{#my-component}}
  Hover for more info

  {{tooltip-on-component text='Here is more info in a tooltip!'}}
{{/my-component}}

Documentation is here.

Undo bower.json changes

22 Nov 23:36
Compare
Choose a tag to compare

This commit accidentally removed the contents of bower.json. This patch adds the file content back.

Support extending `tether-<x>-on-<y>`

19 Nov 01:11
Compare
Choose a tag to compare

There are some circumstances where extending the lazy-rendering component (ex tooltip-on-element) is not ideal. Release 2.4.0 did not support extendingtether-tooltip-on-element. Release 2.4.1 introduces this functionality.

A 2.4.1 tether-tooltip-on-element behaves the exact same way as pre-2.4.0 tooltip-on-element. It doesn't have lazy rendering but supports classNames, classNameBindings, this.$(), etc.

Lazy Rendering Introduction

05 Nov 20:22
Compare
Choose a tag to compare

Lazy-rendering will improve load time for pages with many tooltips and popovers. Tooltip and popovers are only inserted into the dom and rendered when the user interacts with the tooltip/popover target with a click, mouseover, or focusin. To enable this improvements add the enableLazyRendering=true flag to your components.

enableLazyRendering=true will be the default behavior in release 3.0.0

Performance improvements

14 Oct 19:35
Compare
Choose a tag to compare
  • Disable tethering while tooltips are hidden (#92)

This bring performance improvements to app previously slowed by using ember-tooltips.

Ember popovers

08 Oct 21:29
Compare
Choose a tag to compare
  • [feature] Popover components added (#92)
  • [bugfix] Beta and canary tests closer to passing (#98)
  • [bugfix] Check for 'isDestoyed' when _showTimer runs (#94)

Popovers

A huge thank you to @a15n for all his hard work implementing ember-popovers.

Usage is outlined in the Readme. Popovers are implemented just like tooltips using the {{popover-on-element}} and {{popover-on-tooltip}} components.

There should be no backwards-incompatible changes introduced with this release though several properties have been deprecated.