Commit Graph

56 Commits

Author SHA1 Message Date
Sean Lip
75a842b884 Refactor common functionality. Focus on new blocks immediately after they are created. Fix active descendant for tricky cases where moving a block to a marked spot splits the existing tree. 2016-08-01 19:20:20 -07:00
Sean Lip
2312a2d716 Improve screenreader focus behaviour when copying or moving blocks to a marked field. 2016-08-01 18:00:53 -07:00
Sean Lip
044d8a0ea6 Fix error with invoking utilsService. 2016-07-28 18:53:46 -07:00
Sean Lip
03900e1400 Add an additional aria labelledby attribute to the toolbox blocks. 2016-07-28 18:44:08 -07:00
Sean Lip
3c395ac161 Fix aria labels for toolbox trees on Voiceover. 2016-07-28 18:39:08 -07:00
Sean Lip
47888b806f Ensure aria-labels for workspace work correctly with Voiceover on Mac. 2016-07-28 18:29:44 -07:00
Sean Lip
f7bdf1168d Fix issue with duplicate ids in workspace tree block field menus. 2016-07-28 17:53:43 -07:00
Sean Lip
408e306ffc Update aria labels. In the process, refactor lists to comply with HTML5 spec to avoid ChromeVox getting confused about how many elements are in a list. 2016-07-28 17:47:43 -07:00
Sean Lip
e6f0bf57a9 Change 'UNAVAILABLE' label to 'DISABLED'. 2016-07-28 16:06:12 -07:00
Sean Lip
01a7825107 Refactor getBlockDescription() into a separate method in UtilsService. 2016-07-28 14:44:19 -07:00
Sean Lip
6d14be9d91 Always remove screenreader focus from block before pasting to one of its connections. 2016-07-26 13:56:57 -07:00
Sean Lip
8a9bae6587 Invoke a digest cycle after the DOM changes, so that the next node is correctly focused on after a top-level block deletion. 2016-07-26 13:45:23 -07:00
Sean Lip
7ad1897deb Use 'text' instead of 'string' as the aria-label for text fields. 2016-07-26 13:24:50 -07:00
Sean Lip
0e7e3547b9 Fix screenreader focus behaviour when pasting blocks. 2016-07-22 17:49:11 -07:00
Sean Lip
9e11acda49 Fix ids for field blocks. 2016-07-22 17:38:47 -07:00
Sean Lip
8d6ce713bd Remove unnnecessary aria-selected attributes. 2016-07-22 17:20:37 -07:00
Sean Lip
af38cd1245 Clarify README to explain that Accessible Blockly can now be used with most screen readers and browsers. 2016-07-22 17:18:09 -07:00
Sean Lip
83759dbbee Declare field buttons declaratively. 2016-07-22 14:55:22 -07:00
Sean Lip
e503835845 Use number input boxes for fields that accept numeric values. 2016-07-21 17:40:10 -07:00
Sean Lip
c958cf5eaf When a block is pasted to a tree, set the active descendant of that tree to the newly-pasted block. 2016-07-21 17:28:58 -07:00
Sean Lip
869bda6495 Autoscroll to the current node when the active desc changes. 2016-07-21 17:12:10 -07:00
Sean Lip
c4abbff496 Implement correct behaviour for copying a block from the toolbox to a marked spot. 2016-07-21 16:48:08 -07:00
Sean Lip
606a5e1d08 Clean up active desc properly when a tree is removed from the workspace. Handle tree and screenreader focus correctly for 'move to marked spot' operations. 2016-07-21 16:30:38 -07:00
Sean Lip
21f15aca48 Show alert when block is deleted. Prevent errors from happening when a block is deleted from a field. 2016-07-21 16:29:52 -07:00
Sean Lip
c24bfda7cf Standardize naming convention for marked-spot methods. 2016-07-19 18:43:27 -07:00
Sean Lip
0de625caf4 Tidy up usage and formatting of aria-level (fixing an off-by-one error in the process). 2016-07-18 16:11:29 -07:00
Sean Lip
b318eb6504 Implement correct keystroke handling for text input fields. 2016-07-15 16:54:03 -07:00
Sean Lip
311907cb6a Disable input fields in the toolbox. 2016-07-15 16:40:22 -07:00
Sean Lip
be98f29e18 Add support for Home and End keys for navigating the toolbox and workspace trees. 2016-07-15 14:43:43 -07:00
Sean Lip
cc6252cc00 Set activedescendant correctly on workspace trees. 2016-07-14 15:52:58 -07:00
Sean Lip
85f2ae8761 Set active descendant correctly for toolbox tree. Change roles to 'tree' where appropriate. 2016-07-14 11:50:05 -07:00
Sean Lip
f30bcbc0e7 Fix connection compatibility rules. Use the previous connection when 'pasting above' a block that already has a previous block. 2016-07-01 15:55:51 -07:00
Sean Lip
a8bfc38545 Forbid any ancestor of the block containing the marked connection from being moved to said connection. 2016-07-01 15:17:32 -07:00
Sean Lip
707c2149f1 Refactor workspace-tree: define the action buttons declaratively; simplify initial lifecycle code. 2016-06-30 18:19:31 -07:00
Sean Lip
be664dcdb6 Make screenreader focus behave correctly when cutting, moving or deleting a block. Unmark the marked spot after a block has been moved or copied to it. 2016-06-30 14:52:12 -07:00
Sean Lip
63bb89108b Do not allow a block to be moved to a marked connection that it contains. Fix an error where block ids did not update when a new block is inserted in a list. 2016-06-28 18:28:47 -07:00
Sean Lip
5b63b9c193 Remove justFocusedIntoField_ special case. 2016-06-28 17:13:25 -07:00
Sean Lip
ff90218c07 Clean up keystroke handling in treeService. 2016-06-28 16:41:18 -07:00
Sean Lip
6502ea5026 Remove unnecessary logging. 2016-06-20 15:05:39 -07:00
Sean Lip
3ca593273a Refactor how activeDescendant is set. Introduce helper functions to ensure that calls like pasteAbove() preserve the focus. 2016-06-17 17:42:51 -07:00
Sean Lip
850281501f Fix remaining focus issues on block deletion. 2016-06-16 17:29:21 -07:00
Sean Lip
019082b795 Fix tree focus issues. 2016-06-16 14:52:38 -07:00
Sean Lip
6c13b5c81b Change the TreeService to a singleton. 2016-06-13 17:58:13 -07:00
Sean Lip
b75d3f7327 Standardize naming of components. 2016-06-10 19:22:14 -07:00
Sean Lip
cafd180228 Unify setActiveDesc() and updateSelectedNode() in the TreeService. Move function calls made directly within the template to the correct hooks. 2016-06-10 19:03:23 -07:00
Sean Lip
11c00783f2 Consolidate the usages of the 'blockly-disabled' label. 2016-06-10 17:36:39 -07:00
Sean Lip
11b49930f9 Remove the unnecessary construction of new services. 2016-06-09 19:10:34 -07:00
Sean Lip
c6517bc777 Remove unused functions and dependencies. 2016-06-09 18:45:00 -07:00
Sean Lip
50ddbbaee4 Introduce a common translation pipe; remove local stringMap attributes. Fix variable name error in paste functions. Minor linting. 2016-06-09 17:57:50 -07:00
Sean Lip
509e158c0b Remove shadow blocks from Accessible Blockly demo. Update README. 2016-06-09 16:53:10 -07:00