diff --git a/src/accessibility/AccessibilityManager.js b/src/accessibility/AccessibilityManager.js index c066adc..1cda67e 100644 --- a/src/accessibility/AccessibilityManager.js +++ b/src/accessibility/AccessibilityManager.js @@ -305,9 +305,16 @@ } + if(displayObject.accessibleTitle) { + div.title = displayObject.accessibleTitle; + } else if (!displayObject.accessibleTitle && !displayObject.accessibleHint) { + div.title = 'displayObject ' + this.tabIndex; + } - - div.title = displayObject.accessibleTitle || 'displayObject ' + this.tabIndex; + if(displayObject.accessibleHint) { + div.setAttribute('aria-label', displayObject.accessibleHint); + } + // diff --git a/src/accessibility/AccessibilityManager.js b/src/accessibility/AccessibilityManager.js index c066adc..1cda67e 100644 --- a/src/accessibility/AccessibilityManager.js +++ b/src/accessibility/AccessibilityManager.js @@ -305,9 +305,16 @@ } + if(displayObject.accessibleTitle) { + div.title = displayObject.accessibleTitle; + } else if (!displayObject.accessibleTitle && !displayObject.accessibleHint) { + div.title = 'displayObject ' + this.tabIndex; + } - - div.title = displayObject.accessibleTitle || 'displayObject ' + this.tabIndex; + if(displayObject.accessibleHint) { + div.setAttribute('aria-label', displayObject.accessibleHint); + } + // diff --git a/src/accessibility/accessibleTarget.js b/src/accessibility/accessibleTarget.js index 070b753..2202637 100644 --- a/src/accessibility/accessibleTarget.js +++ b/src/accessibility/accessibleTarget.js @@ -15,16 +15,29 @@ var accessibleTarget = { /** - * @todo Needs docs. + * Flag for if the object is accessible. If true AccessibilityManager will overlay a + * shadow div with attributes set + * + * @member {boolean} */ accessible:false, /** - * @todo Needs docs. + * Sets the title attribute of the shadow div + * If accessibleTitle AND accessibleHint has not been this will default to 'displayObject [tabIndex]' + * + * @member {string} */ accessibleTitle:null, /** + * Sets the aria-label attribute of the shadow div + * + * @member {string} + */ + accessibleHint:null, + + /** * @todo Needs docs. */ tabIndex:0, diff --git a/src/accessibility/AccessibilityManager.js b/src/accessibility/AccessibilityManager.js index c066adc..1cda67e 100644 --- a/src/accessibility/AccessibilityManager.js +++ b/src/accessibility/AccessibilityManager.js @@ -305,9 +305,16 @@ } + if(displayObject.accessibleTitle) { + div.title = displayObject.accessibleTitle; + } else if (!displayObject.accessibleTitle && !displayObject.accessibleHint) { + div.title = 'displayObject ' + this.tabIndex; + } - - div.title = displayObject.accessibleTitle || 'displayObject ' + this.tabIndex; + if(displayObject.accessibleHint) { + div.setAttribute('aria-label', displayObject.accessibleHint); + } + // diff --git a/src/accessibility/accessibleTarget.js b/src/accessibility/accessibleTarget.js index 070b753..2202637 100644 --- a/src/accessibility/accessibleTarget.js +++ b/src/accessibility/accessibleTarget.js @@ -15,16 +15,29 @@ var accessibleTarget = { /** - * @todo Needs docs. + * Flag for if the object is accessible. If true AccessibilityManager will overlay a + * shadow div with attributes set + * + * @member {boolean} */ accessible:false, /** - * @todo Needs docs. + * Sets the title attribute of the shadow div + * If accessibleTitle AND accessibleHint has not been this will default to 'displayObject [tabIndex]' + * + * @member {string} */ accessibleTitle:null, /** + * Sets the aria-label attribute of the shadow div + * + * @member {string} + */ + accessibleHint:null, + + /** * @todo Needs docs. */ tabIndex:0, diff --git a/src/loaders/spritesheetParser.js b/src/loaders/spritesheetParser.js index 172644d..8bf810d 100644 --- a/src/loaders/spritesheetParser.js +++ b/src/loaders/spritesheetParser.js @@ -9,6 +9,7 @@ { return function (resource, next) { + var resourcePath; var imageResourceName = resource.name + '_image'; // skip if no data, its not json, it isn't spritesheet data, or the image resource already exists @@ -23,10 +24,18 @@ metadata: resource.metadata.imageMetadata }; - var route = path.dirname(resource.url.replace(this.baseUrl, '')); + // Prepend url path unless the resource image is a data url + if (resource.isDataUrl) + { + resourcePath = resource.data.meta.image; + } + else + { + resourcePath = path.dirname(resource.url.replace(this.baseUrl, '')) + '/' + resource.data.meta.image; + } // load the image for this sheet - this.add(imageResourceName, route + '/' + resource.data.meta.image, loadOptions, function (res) + this.add(imageResourceName, resourcePath, loadOptions, function (res) { resource.textures = {};