#

API Docs for: 3.10.3
Show: Inherited Protected Private Deprecated

# WidgetAutohide Class

Defined in: `widget-autohide/js/Widget-Autohide.js:27`
Module: widget-autohide

The WidgetAutohide class provides the hideOn attribute which can be used to hide the widget when certain events occur.

- Index
- Methods
- Properties
- Attributes

## Item Index

### Methods

- _afterHideOnChange
- _afterHostVisibleChangeAutohide
- _attachUIHandlesAutohide
- _bindUIAutohide
- _detachUIHandlesAutohide
- _syncUIAutohide
- _uiSetHostVisibleAutohide

### Properties

- ATTRS static

### Attributes

- hideOn

## Methods

### `_afterHideOnChange`

()

Defined in `widget-autohide/js/Widget-Autohide.js:218`

Default function called when hideOn Attribute is changed. Remove existing listeners and create new listeners.

### `_afterHostVisibleChangeAutohide`

() protected

Defined in `widget-autohide/js/Widget-Autohide.js:206`

Default function called when the visibility of the widget changes. Determines whether to attach or detach event listeners based on the visibility of the widget.

### `_attachUIHandlesAutohide`

() protected

Defined in `widget-autohide/js/Widget-Autohide.js:143`

Iterates through all objects in the hideOn attribute and creates event listeners.

### `_bindUIAutohide`

() protected

Defined in `widget-autohide/js/Widget-Autohide.js:95`

Binds event listeners to the widget.

This method in invoked after bindUI is invoked for the Widget class using YUI's aop infrastructure.

### `_detachUIHandlesAutohide`

() protected

Defined in `widget-autohide/js/Widget-Autohide.js:192`

Detaches all event listeners created by this extension

### `_syncUIAutohide`

() protected

Defined in `widget-autohide/js/Widget-Autohide.js:110`

Syncs up the widget based on its current state. In particular, removes event listeners if widget is not visible, and attaches them otherwise.

This method in invoked after syncUI is invoked for the Widget class using YUI's aop infrastructure.

### `_uiSetHostVisibleAutohide`

() protected

Defined in `widget-autohide/js/Widget-Autohide.js:127`

Removes event listeners if widget is not visible, and attaches them otherwise.

## Properties

### `ATTRS`

Object static

Defined in `widget-autohide/js/Widget-Autohide.js:46`

Static property used to define the default attribute configuration introduced by WidgetAutohide.

## Attributes

### `hideOn`

Array

Defined in `widget-autohide/js/Widget-Autohide.js:57`

An array of objects corresponding to the nodes, events, and keycodes to hide the widget on. The implementer can supply an array of objects, with each object having the following properties:

eventName: (string, required): The eventName to listen to.

node: (Y.Node, optional): The Y.Node that will fire the event (defaults to the boundingBox of the widget)

keyCode: (string, optional): If listening for key events, specify the keyCode

By default, this attribute consists of one object which will cause the widget to hide if the escape key is pressed.

#### Fires event `hideOnChange`

Fires when the value for the configuration attribute `hideOn` is changed. You can listen for the event using the `on` method if you wish to be notified before the attribute's value has changed, or using the `after` method if you wish to be notified after the attribute's value has changed.

#### Parameters:

- `e` EventFacade
  An Event Facade object with the following attribute-specific properties added:
  - `prevVal` Any
    The value of the attribute, prior to it being set.
  - `newVal` Any
    The value the attribute is to be set to.
  - `attrName` String
    The name of the attribute being set.
  - `subAttrName` String
    If setting a property within the attribute's value, the name of the sub-attribute property being set.