Merged 'tags-input' branch (tags input and autocomplete) into master

commit 8ab62e3c4d94cd8a954a063e88e46bb567a1aa6a
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 31 15:43:42 2013 -0700

    Updated Ember to rc.6.1

commit 79d2cfdf05e5946e988550e6d5035c3452cf39e6
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 30 14:24:37 2013 -0700

    Improved handling of duplicate tags and large autocomplete delays

commit f5d8c1606cd97bf373c659478bb138edd8dac59f
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 30 12:41:30 2013 -0700

    Refactored autocomplete and tags views to better support autocomplete with tags view

    In autocomplete:

    * Search for autocomplete suggestions using an arbitrary string (not just the `search` property)
    * Don't autocomplete on blur if the input value isn't as long as the min length for making suggestions

    In tags:

    * More means to override tag acceptance and addition methods

    In autocomplete with tags:

    * Added `autocompleteThreshold` property to allow basic configuration of if and how strictly new tags are autocompleted (useful if the user pastes a value into the field)
    * Some additional tag addition/rejection events and handling

commit fd37a98643a989ae043c10a543a19e26c86b1402
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 30 12:28:28 2013 -0700

    Trigger 'didRetrieveSuggestions' event when autocomplete suggestions fetched

    Instead of setting `allSuggestions` property directly

commit f785ff18ff3820f3141881096e2a6ba2be11430a
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 29 12:26:40 2013 -0700

    Adjusted suggestion list visibility management

    Hides when "completed"

    May show when input value changes.

commit cadd085a50f15c06fb8aa7ce53e732f3926d7f6a
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 29 12:17:35 2013 -0700

    Fixed initial cursor position in tags input

    Using content length instead of childViews length; childViews may not be instantiated at render time.

commit 199aab07a9bc9ca333185fd763fefb67ab7edb91
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jul 26 18:58:25 2013 -0700

    Refactored suggestion gathering, fixed unhandled action error, code cleanup

commit 249756b417a94152f6126d36f5595c845eb0ec96
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jul 26 16:23:30 2013 -0700

    Updated README to include new helpers, mixins, and views

commit 41cd7713db67f9706057c714eb36ed87b2dd79fc
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jul 26 15:20:16 2013 -0700

    Documented parameters for forEachAsync()

commit aecfc2b25d2bb04ad224da14607a801eec2ded72
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jul 26 14:24:03 2013 -0700

    Made search substitution global in autocomplete support

commit 51ae01c39ffd103b32b722a01713783382b8566c
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jul 26 14:23:10 2013 -0700

    Some documentation for Emberella.forEachAsync

commit 283ca5bdf7b5d8a55f1fd03bc128d68780b0fc9d
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jul 26 09:41:21 2013 -0700

    Replaced 'enter' handlers in MQ States with 'setup'

commit 37731378b8205fd982aea6981c45c2f710892d98
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 25 15:59:10 2013 -0700

    Continued documentation of autocomplete library

commit c4ddb1c9304e751fc01c806dac8151d32b1d8a12
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 25 13:45:35 2013 -0700

    Refactored autocomplete, code cleanup, bug fixes

commit ce6bffcf3ae4b6a212de0c24473f769d91e8adf2
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 24 20:50:20 2013 -0700

    Fixed code typo

commit 4c4c55ef8e5994f209798428877a8fffbb275c7f
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 24 20:38:34 2013 -0700

    Autocomplete autoFocus defaults to true

commit 45a81da36d32746d75f48090c71e0903d8bca6e9
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 24 20:30:10 2013 -0700

    Initial check-in for autocomplete views and mixins

commit 795ec2efa16f4926dd4ce1e2ce00fcd9fc263e9e
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 24 20:29:21 2013 -0700

    Changed hasFocusDidChange to _hasFocusDidChange

commit 3d564909ce01dd614dc30a311b6b56d60c5435aa
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 24 16:17:29 2013 -0700

    Refactored and organized tags input

    Some alphabetization of public methods where appropriate

    Made some private methods public

commit 298502767d6ebb76ad0d66bea65467edc74b811c
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 24 16:16:07 2013 -0700

    Removed use of arguments.callee

commit 65d788fff6143006efd65d3ae5ee179b98218fbd
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 23 16:52:56 2013 -0700

    Significant refactoring of tags input

    Split apart add tags methods

    More attention on content property (less on value)

    Improved support for object tags and asynchronous tag retrieval/creation

    Documentation expanded

commit aeb2f2a41699f4f4b6a67bea322bf1533ee2704f
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 23 16:51:07 2013 -0700

    Adjust width when flexible text field added to DOM

commit 747c7afcbe4c48c5c00d0caa2cb766039bbc65dd
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 18 13:50:38 2013 -0700

    Created membership view mixin and refactored tags input to use it

commit 733cb0583bdbbafccf363d00bbfff6128c2f5f00
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 17 10:43:37 2013 -0700

    Refactored view class retrieval

commit 57824940feb0858d92e2fbb693cb92e1bb3dca5c
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 16 18:47:08 2013 -0700

    Minor adjustments to width calculation of flexible text field

commit 7bbd06e4d8b362336c49773429c1ef73c1f07d40
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 16 18:27:37 2013 -0700

    Better fix for delayed updates to destroyed views

commit 4c38a40deeae4a2ebce9369c7f16a1dfc1e9c047
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 16 18:05:34 2013 -0700

    Improved handling for destroyed views

commit 53d759440a2b0d84eb48f32ddea28af6c8d45d7c
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 16 16:44:30 2013 -0700

    Rearranged and refactored code; added documentation

commit ca98f289c0ee92f8ad14a1ad08834275a80effdb
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 16 16:43:32 2013 -0700

    Changed keyboard remapping from direct method call to triggered event

commit 975688082b7c54b04b8b8ef3da7aa8ce23f981b1
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 15 18:14:28 2013 -0700

    Added 'highlighter' property to tags input

    Set 'highlighter' to an object where each key is a class that may be added to the tag item and each value is a function.

    Each function in the object will be called in the context of the tag item view. The content of the item view will be passed as an argument.

    If the function returns a truthy value, then the associated object key will be added as a class on the tag item's element.

    Otherwise, no additional classes will be added.

    Use this functionality to alter the appearance of tags that match certain criteria.

commit 484b3dabef6e7fbef367451670a1e6f68b7c92c0
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 15 16:59:16 2013 -0700

    Handle up/down arrows when focus on tag item

commit 3f8e8eb18ccc07a308a17b91759f51fd18fc9347
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 15 16:50:27 2013 -0700

    Improved support for objects as tags

    Also added handling for up and down arrow keys

    Fixed a bug that would sometimes cause the tag input to lose focus after the addition of a new tag

commit 003781a39a895458885676c06b3e95565714dc99
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jul 12 11:24:55 2013 -0700

    Refactored delimiter CPs; Fixed tag capture on blur

commit 5b6380ac68806db81a432421d4b173293203b077
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jul 12 09:52:58 2013 -0700

    Added delimiter test to addTag method

    Also, addTags method retainFocus argument defaults to current focus state

commit 32fb5eeeee861a397b855295677d9539e973343f
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 11 19:05:10 2013 -0700

    Broadened regexp support for tags input delimiter

    Should be able to support an array of strings AND regular expressions in the 'delimiter' property.

commit 98a30668589272426f0c17334dad3dcdcb02f602
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 11 18:06:18 2013 -0700

    Refactor and cleanup of tags input

    Move methods and event handling from child views into main tag input view. This helps when integrating tags input into other views.

    Allow item template to be defined through parent container template property. Thus the item listing template can be specified by handlebars as follows:

    `
    {{#view Emberella.TagsInput width=200 delimiter=';,'}}
    <strong class="emberella-tag-item-content"><i>{{view.content}}</i></strong>
    {{/view}}
    `

commit 663defadedfe3b5444b79c8b28e9765174cd7532
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 11 18:05:49 2013 -0700

    Added method string to keyDown event object

commit c1386d5092f22e4d75d1e1afafb9a0a5edb4a35c
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 11 13:23:08 2013 -0700

    Converted placeholder property from binding to computed

commit a6efcfbd6cc8030fdd117e55f16b09ffc426e2b9
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 11 13:22:34 2013 -0700

    Fixed sizing bugs in flexible text field

commit ec4b4c11f433027664684d91ca72a446760918ae
Merge: b545ada 8d690b0
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jul 11 09:52:43 2013 -0700

    Merge branch 'tags-input' of github.com:realityendshere/emberella into tags-input

commit b545ada9a56c9edda2e480fb6404841cb6a32f65
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 10 12:46:56 2013 -0700

    Skip queue items that appear previously completed

commit 8013e69396ce67049b6d23538af5b3adb723e050
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 9 17:12:42 2013 -0700

    Removed wait for first forEachAsync cycle

commit 2ad40d5fb6151a0c5f8cac1350c85c20269c73fd
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 9 16:49:08 2013 -0700

    Expanded use of context in forEachAsync

commit 073791aa317dc66398462f51260c16382022a68f
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 9 16:41:56 2013 -0700

    Using big data helper in MQMixin

    The addToQueue method must create object proxies for each item added. Given enough items, this can take awhile.

commit 57bbb51b2bba286f2cec9b520b46dfd749f20adf
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 9 16:39:27 2013 -0700

    Created big data helper with timer split for each processing

    The Emberella.forEachAsync function iterates over an array for a specified amount of time. When time expires, the functions waits a bit, then proceeds and so on until all items in the array have been processed.

    Helps to prevent the browser from locking up when performing operations on every member of an array.

commit 037584d903cd6ac93452ce8c493e1c3af1fa2959
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 8 18:26:45 2013 -0700

    Documented and refactored MQ Mixin

commit a4edc23c9debf0d67529cf62dde1f877c00c0198
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 8 13:31:42 2013 -0700

    Added MQ Mixin: a replacement for Queueable Mixin

commit bea7dec45a3dd0fe7ae9e6c35409a2b1cc9bd6f6
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 25 15:04:50 2013 -0700

    Added option to disable tag creation on blur event

commit 03a333c83d1e7eae696f427d19656a53a217e4ad
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jun 24 11:11:07 2013 -0700

    Refactored item and input view class retrieval

commit ba2a8f027a864a691ffa39a30c930eb6577c682e
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jun 19 13:07:28 2013 -0700

    Passing the cursor position to the didAddValue hook

commit ccaab0c638ce916210929716ee6eda569585ae5f
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 18 17:04:57 2013 -0700

    Fixed bugs that would cause flexible text field to be sized and styled incorrectly

commit b99ad9fb0281ba60608acc5beb48b8d845fd050b
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 11 11:33:17 2013 -0700

    Added dependencies to tags input

commit f8616f359085bad0f1a1e51f50f80ba59699db10
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:29:55 2013 -0700

    Requiring flexible text field and tags input in main script

commit ddcadcf0aa8821643df03e16433197f36582df51
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:24:41 2013 -0700

    Added tags input

    An input box for managing tags.

    TODO: Refactor for simplicity
    TODO: Documentation
    TODO: Include styles

    And so much more...

commit 268dd2db296f514e7ed34c32639733a76951106c
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:23:10 2013 -0700

    Added flexible text field

    This field grows and shrinks based on its content

commit 8d690b07915069ca74a36743342c5af87ca4dca1
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jul 10 12:46:56 2013 -0700

    Skip queue items that appear previously completed

commit f6436cfcdeea593d7e115ac2766eea46e63d2266
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 9 17:12:42 2013 -0700

    Removed wait for first forEachAsync cycle

commit 523960c1691410f5eafa0efa0b8d615dc76757bc
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 9 16:49:08 2013 -0700

    Expanded use of context in forEachAsync

commit 4d78621f76f77c6eec0fa09c0aa73ce9990064d2
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 9 16:41:56 2013 -0700

    Using big data helper in MQMixin

    The addToQueue method must create object proxies for each item added. Given enough items, this can take awhile.

commit 09a4e043724d78e237a8fb0b4775358221388e28
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jul 9 16:39:27 2013 -0700

    Created big data helper with timer split for each processing

    The Emberella.forEachAsync function iterates over an array for a specified amount of time. When time expires, the functions waits a bit, then proceeds and so on until all items in the array have been processed.

    Helps to prevent the browser from locking up when performing operations on every member of an array.

commit c12406ebbff77262845689bc940e4602ef5169fd
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 8 18:26:45 2013 -0700

    Documented and refactored MQ Mixin

commit 80ece37f294d029f4ec428704e22769ce805ab08
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jul 8 13:31:42 2013 -0700

    Added MQ Mixin: a replacement for Queueable Mixin

commit 4fcd5e5c98b103a85434969dbe3eae697979bc89
Merge: 626bffd b20083b
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Fri Jun 28 16:55:47 2013 -0700

    Merge branch 'tags-input' of github.com:realityendshere/emberella into tags-input

commit 626bffd74b1086b6e58e19444e49938f0ef06e99
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 25 15:04:50 2013 -0700

    Added option to disable tag creation on blur event

commit 64af4b94f74c3ae27256487544ee1dab6a5061ca
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jun 24 11:11:07 2013 -0700

    Refactored item and input view class retrieval

commit cc517e5ca56f1c5be6955dbed91f8352b0830932
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jun 19 13:07:28 2013 -0700

    Passing the cursor position to the didAddValue hook

commit 5e66ff16d9f4ecf0a377e9a5057f3fb3ef29e85a
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 18 17:04:57 2013 -0700

    Fixed bugs that would cause flexible text field to be sized and styled incorrectly

commit 25ff50626dba3ef97e9ee28a8aa6aec681609d9a
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 11 11:33:17 2013 -0700

    Added dependencies to tags input

commit 8789463f77296b012c2a549573a303e7ff38d756
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:29:55 2013 -0700

    Requiring flexible text field and tags input in main script

commit 9e4de32685da8c0cd2931b312975fcda97b37519
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:24:41 2013 -0700

    Added tags input

    An input box for managing tags.

    TODO: Refactor for simplicity
    TODO: Documentation
    TODO: Include styles

    And so much more...

commit 1ca419da77efe0e020706c0fa8a5abdb3bc7cd83
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:23:10 2013 -0700

    Added flexible text field

    This field grows and shrinks based on its content

commit b20083b63d79f8630bbec76ab30284524667603a
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 25 15:04:50 2013 -0700

    Added option to disable tag creation on blur event

commit acfd906c6c90f6ef62fd7c6c6765e054e66df8b9
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Mon Jun 24 11:11:07 2013 -0700

    Refactored item and input view class retrieval

commit eb3d4daa011a842232afe436ac4fcb793e49e93f
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Wed Jun 19 13:07:28 2013 -0700

    Passing the cursor position to the didAddValue hook

commit 1305130aea488de057b7d075287f8a334b89e609
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 18 17:04:57 2013 -0700

    Fixed bugs that would cause flexible text field to be sized and styled incorrectly

commit 2c94d75a6aaeb4198cd85bf46293b1c4e2d60ee6
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Tue Jun 11 11:33:17 2013 -0700

    Added dependencies to tags input

commit c6a47fea241b44c6a7e31e664145c1f2110faca6
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:29:55 2013 -0700

    Requiring flexible text field and tags input in main script

commit 7ffe7caa81503faa0efbc1d15c0094b9c4bf4bba
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:24:41 2013 -0700

    Added tags input

    An input box for managing tags.

    TODO: Refactor for simplicity
    TODO: Documentation
    TODO: Include styles

    And so much more...

commit d3fa50c265ccc5d1db943e9ea6863687865786a1
Author: Dana Franklin <danaf@mediaartslab.com>
Date:   Thu Jun 6 19:23:10 2013 -0700

    Added flexible text field

    This field grows and shrinks based on its content