Commit Graph

49 Commits

Author SHA1 Message Date
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
Sean Lip
e8a2d3e2fd Fix extra category error. Clean up code, rename variables, reduce line lengths, fix lint issues. 2016-06-02 15:51:37 -07:00
Sean Lip
4e2d8f1310 Add missing comment from an earlier review. 2016-05-27 17:03:12 -07:00
Sean Lip
9791b48533 Add an explicit injector for the 'Run Code' button. Update es6-shim dependency to prevent console errors. 2016-05-27 16:37:39 -07:00
Neil Fraser
5dc6fc4657 Cleanup of style and simplifications. (#378)
* Cleanup of style and simplifications.

* Removing unused addClass function.
2016-05-25 00:02:28 -07:00
Neil Fraser
763e9b938f Cleanup accessible Blockly. 2016-05-23 17:34:46 -07:00
M
6474fcd774 AccessibleBlockly (#354)
* adding a folder in demos for blind and setting up the package.json file for development. Adding package.json to .gitignore

* removing gitignore~ file

* copied blind blockly demo code over. set up a new dev environment. Up for review: the blind blockly demo code. Much of the drop downs don't actually do anything, but a general look at the way angular is used would be helpful in shaping future development.

* adding an index file that was being ignored by .gitignore

* adding required angular files and libraries previously ignored by git add --a for some unknown reason.

* starting work on toolbox

* got workspace and toolbox connected. Copy to workspace annd copy to clipboard working at 80%.

* cleaning up autogenerated files

* adding my own files. Not sure why the test files are being added.

* cleaning up comments

* removed empty html_formatter.html file from project and put on git ignore list. The file is used on my end to help with formatting the html in javascript files.

* getting rid of unnecessary html_formatter file

* removing merge conflicts

* cleaned up comments

* cleaned up comments, organized file structure, made ToolboxXML a file that can be changed by other developers porting this code, added copyright and file summaries to js files, linted files, moved third party libraries to lib folder

* removing lint files that shouldn't be tracked.

* Made the clipboard a service instead of multiple pieces embedded within the app. Not sold on the name ClipboardService. Open to suggestions.

* syncing up demo updates

* adding insert block menus above and below appropriate blocks.

* hacky version of getting code to run.

* changing toolbox to be a menu. making both the toolbox and workspace ordered lists

* adding new folder dev-old containing a version of blind blockly that uses nested lists for the toolbox

* getting rid of menubar experiment

* adding treeview shenanigans part 1

* adding treeview experiment page and finishing up treeview.

* getting a treeview implementation working in the toolbox

* creating a fishfood folder for fishfood development

* making first level of fishfood

* fixing something

* adding index file for fishfood

* beginning merging the treeview system.

* creating two treeviews

* fishfood level 1 without working music blocks

* fixes to treeview navigation

* final fishfood features done

* adding support for toolboxes without categories

* beginning integration of Sean's new music code

* adding Sean's music blocks and beginning music_player integration.

* merged Sean's music block code into fishfood

* merged Sean's music code and fixed treeview bug with toolbox when no categories

* adding blank_demo

* fixing tab navigation.

* fixing bug with shift-tab. New bug found in alt+tab not opening dropdown?

* fixing labels

* fixing bugs and finding more.

* removing dropdowns in favor of buttons part 1. Still need to change field options.

* index.html for blank_demo

* beginning cleanup

* adding blockly- prefix to label ids.

* integrating AccessibleBlockly with Blockly library.

* remove closure library

* removing testing files that aren't in develop

* removing all demo stuff for a later pull request

* removing gitignore file that doesn't exist in developer branch

* syncing with develop branch files

* removing music files from this pull request

* doing some lint cleanup

* rolling back accidental package.json change

* removing var blocklyApp = blocklyApp || {} from each extraneous file

* adding last debug statement

* changed name of inputType function

* renaming _service arguments

* fixing function names

* fixing all comments.

* fixing minor comments

* renaming variables, etc

* fixing bugs that break demo. Adding the run code and clear workspace buttons back to the workspaceview as their current position breaks tab navigation.

* fixing minor comments

* fixing function names, etc.

* adding comments to getInputTypeLabel function

* removing addClass() calls from the template

* small change to clipboardService

* splitting getCategoryDependantId into two functions: getCategoryId and setActiveDesc

* fixing minor bug with last commit

* using conditional attributes to remove setActiveAttributes function from treeService and do same work in template.

* deleting unnecessary comment created in previous commit.

* adding a utilsService to remove duplicated code.

* changing function names in utilsService

* changing delete to [delete] to allow HTMLText functions to return an empty string instead of undefined. Also renaming concatStringWithSpaces to generateAriaLabelledByAttr

* generating ids in ngOnInit instead of on the fly, allowing us to use [attr.aria-labelledBy] in the template instead of using setLabelledBy(element). Deleting function utilsService.setLabelledBy.

* fixing small bug with tree service left arrow: was throwing an error when you can't go any further left.

* reformatting html to make it easier to read.

* moving from importing the xml file to using an xml toolbox in the demo.

* fixing minor bugs and removing code relevant only to the music game.

* minor fixes

* adding alerts to copy, paste, and mark actions. renaming blocklyApp.TreeView to blocklyApp.WorkspaceTreeView

* Beginning to add Blockly.msg strings.

* making sure index file is being tracked

* adding all demo bits

* removing demo files from this pull request

* fixing providers, some linting, and removing getInfo() function.

* adding small todo comment for sll@

* adding minimal Accessible Blockly demo

* removing demo: accidentally committed to wrong branch

* fixing Blockly.Msg string bugs

* fixing TODOs

* package file changed by an automerge. Changing back.

* addressing sll's comments. Creating shim for utilsService functions.

* fixing comments, changing fieldview to deal with this.field.

* fixing clipboard service bug

* fixing focus bug when editing a text input.

* fixed clipboard bug and added README

* fixing workspaceview not to implement on runCode() function and adding note to README
2016-05-23 16:42:18 -07:00