[Laszlo-checkins] r13169 - in openlaszlo/branches/4.2: . WEB-INF/lps/lfc/kernel/swf WEB-INF/lps/lfc/views lps/components/lz
max@openlaszlo.org
max at openlaszlo.org
Wed Mar 4 19:34:32 PST 2009
Author: max
Date: 2009-03-04 19:34:28 -0800 (Wed, 04 Mar 2009)
New Revision: 13169
Modified:
openlaszlo/branches/4.2/
openlaszlo/branches/4.2/WEB-INF/lps/lfc/kernel/swf/LzSprite.as
openlaszlo/branches/4.2/WEB-INF/lps/lfc/views/LaszloCanvas.lzs
openlaszlo/branches/4.2/lps/components/lz/radio.lzx
Log:
Merged revisions 13147 via svnmerge from
http://svn.openlaszlo.org/openlaszlo/trunk
.......
r13147 | max | 2009-03-03 18:41:42 -0800 (Tue, 03 Mar 2009) | 20 lines
Change 20090302-maxcarlson-P by maxcarlson at Bank.lan on 2009-03-02 23:39:29 PST
in /Users/maxcarlson/openlaszlo/trunk-clean
for http://svn.openlaszlo.org/openlaszlo/trunk
Summary: Add accessibility support to radiobuttons
Bugs Fixed: LPP-7594 - IBM Jaws Accessibility support needed for Radioboxes and trees and Issues (partial)
Technical Reviewer: promanik
QA Reviewer: aalappat at laszlosystems.com
Details: LzSprite - fix braino in __gotFocus()
LaszloCanvas - Make sure canvas.accessible is false for runtimes that don't support accessibility.
radio - Add accessibility support, conditionalize on canvas.accessible.
Tests: See radiotext.lzx test from LPP-7594 with JAWS or accevent.exe from http://www.microsoft.com/downloads/details.aspx?familyid=3755582A-A707-460A-BF21-1373316E13F0&displaylang=en. LPP-7593 runs as before.
.......
Property changes on: openlaszlo/branches/4.2
___________________________________________________________________
Name: svnmerge-integrated
- /openlaszlo/branches/4.1:1-10153 /openlaszlo/branches/devildog:1-8432 /openlaszlo/branches/pagan-deities:1-7955,8825,10756-10920,10922-10928,10930-10935,11151,11207,11554 /openlaszlo/branches/paperpie:1-6504,6506-6574,6576-7135,7137-7235 /openlaszlo/branches/wafflecone:1-5746,5818-6068,6070-6205,6207-6213,6216-6265,6267-6368,6370-6431,6433-6450,6497,6509,6661,7097,7872 /openlaszlo/trunk:1-12154,12172-12175,12177-12185,12187-12194,12196,12201,12208,12229,12251-12252,12254-12255,12257-12258,12260,12262-12266,12268-12269,12271-12275,12278-12285,12303,12318-12323,12340-12348,12352,12354-12358,12360-12361,12363,12365-12367,12369-12371,12375-12378,12380-12389,12391,12394-12396,12399-12400,12402-12403,12406-12416,12419-12422,12424-12429,12431-12433,12435,12437-12441,12443,12445,12447,12449-12451,12453-12454,12457-12460,12464,12466-12475,12477-12480,12482-12490,12493-12495,12499-12502,12507-12510,12512,12514-12520,12522,12525-12531,12534-12540,12542,12545,12548-12554,12557-12561,12564,12566-12568,12571,12574-12576,12578,12580,12583-12584,12586-12587,12589,12592-12596,12598-12600,12602-12609,12611-12615,12617,12619-12621,12623,12625,12628-12631,12633-12635,12637,12639,12642,12644,12647-12653,12656,12658,12660,12662-12666,12668-12694,12696,12698-12704,12708-12710,12712-12721,12723-12729,12731-12742,12745-12752,12754-12784,12786-12791,12793-12798,12800-12801,12803,12805-12808,12810-12812,12814,12816-12821,12825-12833,12835-12837,12839-12841,12847,12849-12850,12852-12859,12863-12883,12885-12895,12897-12906,12908-12915,12917-12922,12924-12934,12937-12940,12943-12944,12946-12947,12950-12952,12955-12964,12966-12969,12971,12973-12977,12979-12993,12997-12999,13001-13003,13006-13007,13010-13015,13017-13020,13022-13024,13026-13031,13033,13035-13037,13039-13040,13043,13046-13052,13055-13060,13062-13069,13071-13072,13074,13076-13085,13087-13093,13095-13101,13103-13104,13106,13108-13110,13112,13114-13120,13122,13125-13126,13129,13132-13136,13139-13140,13142,13157-13158,13163,13167
+ /openlaszlo/branches/4.1:1-10153 /openlaszlo/branches/devildog:1-8432 /openlaszlo/branches/pagan-deities:1-7955,8825,10756-10920,10922-10928,10930-10935,11151,11207,11554 /openlaszlo/branches/paperpie:1-6504,6506-6574,6576-7135,7137-7235 /openlaszlo/branches/wafflecone:1-5746,5818-6068,6070-6205,6207-6213,6216-6265,6267-6368,6370-6431,6433-6450,6497,6509,6661,7097,7872 /openlaszlo/trunk:1-12154,12172-12175,12177-12185,12187-12194,12196,12201,12208,12229,12251-12252,12254-12255,12257-12258,12260,12262-12266,12268-12269,12271-12275,12278-12285,12303,12318-12323,12340-12348,12352,12354-12358,12360-12361,12363,12365-12367,12369-12371,12375-12378,12380-12389,12391,12394-12396,12399-12400,12402-12403,12406-12416,12419-12422,12424-12429,12431-12433,12435,12437-12441,12443,12445,12447,12449-12451,12453-12454,12457-12460,12464,12466-12475,12477-12480,12482-12490,12493-12495,12499-12502,12507-12510,12512,12514-12520,12522,12525-12531,12534-12540,12542,12545,12548-12554,12557-12561,12564,12566-12568,12571,12574-12576,12578,12580,12583-12584,12586-12587,12589,12592-12596,12598-12600,12602-12609,12611-12615,12617,12619-12621,12623,12625,12628-12631,12633-12635,12637,12639,12642,12644,12647-12653,12656,12658,12660,12662-12666,12668-12694,12696,12698-12704,12708-12710,12712-12721,12723-12729,12731-12742,12745-12752,12754-12784,12786-12791,12793-12798,12800-12801,12803,12805-12808,12810-12812,12814,12816-12821,12825-12833,12835-12837,12839-12841,12847,12849-12850,12852-12859,12863-12883,12885-12895,12897-12906,12908-12915,12917-12922,12924-12934,12937-12940,12943-12944,12946-12947,12950-12952,12955-12964,12966-12969,12971,12973-12977,12979-12993,12997-12999,13001-13003,13006-13007,13010-13015,13017-13020,13022-13024,13026-13031,13033,13035-13037,13039-13040,13043,13046-13052,13055-13060,13062-13069,13071-13072,13074,13076-13085,13087-13093,13095-13101,13103-13104,13106,13108-13110,13112,13114-13120,13122,13125-13126,13129,13132-13136,13139-13140,13142,13147,13157-13158,13163,13167
Modified: openlaszlo/branches/4.2/WEB-INF/lps/lfc/kernel/swf/LzSprite.as
===================================================================
--- openlaszlo/branches/4.2/WEB-INF/lps/lfc/kernel/swf/LzSprite.as 2009-03-05 00:00:50 UTC (rev 13168)
+++ openlaszlo/branches/4.2/WEB-INF/lps/lfc/kernel/swf/LzSprite.as 2009-03-05 03:34:28 UTC (rev 13169)
@@ -1605,7 +1605,7 @@
var v = this.myView || this._parent.myView;
if (!(lz.Focus.getFocus() === v)) {
//var tabdown = lz.Keys.isKeyDown('tab');
- lz.Focus.setFocus(this.myView);
+ lz.Focus.setFocus(v);
}
}
Modified: openlaszlo/branches/4.2/WEB-INF/lps/lfc/views/LaszloCanvas.lzs
===================================================================
--- openlaszlo/branches/4.2/WEB-INF/lps/lfc/views/LaszloCanvas.lzs 2009-03-05 00:00:50 UTC (rev 13168)
+++ openlaszlo/branches/4.2/WEB-INF/lps/lfc/views/LaszloCanvas.lzs 2009-03-05 03:34:28 UTC (rev 13169)
@@ -217,8 +217,9 @@
this.sprite.setAAActive(true);
this.sprite.setAASilent(false);
}
- } else if (args.accessible && $debug) {
- Debug.warn("This runtime doesn't support accessibility.");
+ } else if (args.accessible) {
+ if ($debug) Debug.warn("This runtime doesn't support accessibility.");
+ args.accessible = this.accessible = false;
}
if ((typeof(args.history) == "undefined") || args.history == null) {
Modified: openlaszlo/branches/4.2/lps/components/lz/radio.lzx
===================================================================
--- openlaszlo/branches/4.2/lps/components/lz/radio.lzx 2009-03-05 00:00:50 UTC (rev 13168)
+++ openlaszlo/branches/4.2/lps/components/lz/radio.lzx 2009-03-05 03:34:28 UTC (rev 13169)
@@ -123,7 +123,82 @@
to be radiogroup. -->
<class name="radiobutton" extends="baselistitem" focusable="false"
clickable="true">
+ <!--- @keywords private -->
+ <method name="init">
+ <![CDATA[
+ super.init();
+ if (canvas.accessible) {
+ this.accessible.setAttribute('applied', true);
+ var mc = this.getMCRef();
+ mc._accImpl = {};
+ mc._accImpl.stub = false;
+ mc._accImpl.master = this;
+
+ mc._accImpl.get_accRole = function() {
+ // ROLE_SYSTEM_RADIOBUTTON
+ return 0x2d;
+ }
+
+ mc._accImpl.get_accName = function() {
+ return this.master.text;
+ }
+
+ mc._accImpl.get_accState = function() {
+ if (this.master.selected) {
+ // STATE_SYSTEM_CHECKED && STATE_SYSTEM_FOCUSED && STATE_SYSTEM_FOCUSABLE
+ return 0x00100014
+ } else {
+ // STATE_SYSTEM_FOCUSABLE && STATE_SYSTEM_FOCUSED
+ return 0x00100004
+ }
+ }
+
+ mc._accImpl.get_accDefaultAction = function(childId) {
+ //Debug.info('get_accDefaultAction', childId);
+ if (this.master.selected){
+ return "UnCheck";
+ }else{
+ return "Check";
+ }
+ }
+
+ mc._accImpl.accDoDefaultAction = function(childId) {
+ //this.master.onclick.sendEvent();
+ //Debug.write('accDoDefaultAction', this.master);
+ this.master.parent.select(this.master);
+ }
+ }
+ ]]>
+ </method>
+
+ <state name="accessible">
+ <!--- @keywords private -->
+ <attribute name="EVENT_OBJECT_FOCUS" type="number" value="0x8005"/>
+ <!--- @keywords private -->
+ <attribute name="EVENT_OBJECT_NAMECHANGE" type="number" value="0x800c"/>
+ <!--- @keywords private -->
+ <attribute name="EVENT_OBJECT_SELECTION" type="number" value="0x8006"/>
+ <!--- @keywords private -->
+ <attribute name="EVENT_OBJECT_STATECHANGE" type="number" value="0x800a"/>
+ <!--- @keywords private -->
+ <handler name="onselected" args="s">
+ this.sendAAEvent(0, EVENT_OBJECT_FOCUS);
+ this.sendAAEvent( 0, EVENT_OBJECT_STATECHANGE,true );
+ </handler>
+ <!--- @keywords private -->
+ <handler name="ontext" args="l">
+ this.sendAAEvent( 0, EVENT_OBJECT_NAMECHANGE);
+ </handler>
+ <!--- @keywords private -->
+ <method name="updateFocus">
+ this.sendAAEvent(0, EVENT_OBJECT_SELECTION);
+ this.sendAAEvent(0, EVENT_OBJECT_FOCUS);
+ Selection.setFocus(parent.getMCRef());
+ </method>
+ </state>
+
+
<!--- the y position of the text label. default: centered -->
<attribute name="text_y"
value="${this.rb.height/2 - this._title.height/2}" type="number"/>
@@ -165,6 +240,7 @@
<method name="setHilite" args="dohilite">
_title.setAttribute('fgcolor',
dohilite ? style.texthilitecolor : style.textcolor);
+ if (canvas.accessible) this.updateFocus();
</method>
<!-- FIXME: [hqm 2006-09] LPP-2244 This used to be y="$once{classroot.text_y}"
@@ -193,7 +269,7 @@
</class>
</library>
<!-- * X_LZ_COPYRIGHT_BEGIN ***************************************************
-* Copyright 2001-2008 Laszlo Systems, Inc. All Rights Reserved. *
+* Copyright 2001-2009 Laszlo Systems, Inc. All Rights Reserved. *
* Use is subject to license terms. *
* X_LZ_COPYRIGHT_END ****************************************************** -->
<!-- @LZX_VERSION@ -->
More information about the Laszlo-checkins
mailing list