summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
d016635)
Previously, the selection was accidentally "sticky" unless the player
went on to group a word with another. So if the user accidentally
clicked a word there was no way to unselect it without maging a bogus
grouping and then undoing that.
/* Second click on same word removes the word from the group. */
const idx = this.state.word_sets.findIndex(s => s.has(word));
const set = this.state.word_sets[idx];
/* Second click on same word removes the word from the group. */
const idx = this.state.word_sets.findIndex(s => s.has(word));
const set = this.state.word_sets[idx];
+ if (set.size === 1) {
+ /* When the word is already alone, there's nothing to do but
+ * to un-select it. */
+ this.setState({
+ selected: null
+ });
const new_set = new Set([...set].filter(w => w !== word));
this.setState({
selected: null,
const new_set = new Set([...set].filter(w => w !== word));
this.setState({
selected: null,