{"action":"created","issue":{"url":"https://api.github.com/repos/w3c/editing/issues/58","labels_url":"https://api.github.com/repos/w3c/editing/issues/58/labels{/name}","comments_url":"https://api.github.com/repos/w3c/editing/issues/58/comments","events_url":"https://api.github.com/repos/w3c/editing/issues/58/events","html_url":"https://github.com/w3c/editing/issues/58","id":84489587,"number":58,"title":"Should the caret move by default, and should we define this behavior?","user":{"login":"johanneswilm","id":595512,"avatar_url":"https://avatars.githubusercontent.com/u/595512?v=3","gravatar_id":"","url":"https://api.github.com/users/johanneswilm","html_url":"https://github.com/johanneswilm","followers_url":"https://api.github.com/users/johanneswilm/followers","following_url":"https://api.github.com/users/johanneswilm/following{/other_user}","gists_url":"https://api.github.com/users/johanneswilm/gists{/gist_id}","starred_url":"https://api.github.com/users/johanneswilm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/johanneswilm/subscriptions","organizations_url":"https://api.github.com/users/johanneswilm/orgs","repos_url":"https://api.github.com/users/johanneswilm/repos","events_url":"https://api.github.com/users/johanneswilm/events{/privacy}","received_events_url":"https://api.github.com/users/johanneswilm/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/w3c/editing/labels/ContentEditableTyping","name":"ContentEditableTyping","color":"bfe5bf"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":40,"created_at":"2015-06-03T10:44:46Z","updated_at":"2015-06-04T18:45:01Z","closed_at":null,"body":"Options mentioned so far:\r\n\r\nA) Don't move the caret by default and don't define default behavior.\r\n\r\nB) Move the caret by default and define the default behavior in a spec.\r\n\r\nC) Move the caret by default and define some of the default behavior and leave the rest to be decided by UA/platform (for example: let UA decide on line block direction movement, but define inline movement in spec).\r\n\r\nD) Move the caret by default, but do not spec this behavior. Instead, let the UA/platform decide what that behavior will look like.\r\n\r\n\r\n\r\nThis is the default inline movement we initially had in the spec before it was removed:\r\n\r\n               <h3>Default caret movement pattern</h3>\r\n\r\n                <section>\r\n                    <h4>Caret movement within <a>CE Typing Node</a></h4>\r\n\r\n                    <p>Each key press event in the `inline direction` or in the\r\n                    direction opposite to the `inline directions` triggers the\r\n                    movement of the caret of one position within the current\r\n                    <a>CE Typing Node</a>.</p>\r\n                </section>\r\n\r\n                <section>\r\n                    <h4>Caret movement at the end of a <a>CE Typing\r\n                    Node</a></h4>If the caret is at the end of a <a>CE Typing\r\n                    Node</a> before the movement takes place, and the requested\r\n                    movement would cause it to go beyond the end of the <a>CE\r\n                    Typing Node</a>, the caret is moved into the start of the\r\n                    next following <a>CE Typing Node</a> that is part of the\r\n                    same <a>CE Typing Container</a>. If this movement did not\r\n                    cause it to move by at least 1px, the caret is moved one\r\n                    additional position.\r\n\r\n                    <p></p>\r\n\r\n                    <p>If there is no following <a>CE Typing Node</a> to which\r\n                    the caret could be moved, it is not moved.</p>\r\n                </section>\r\n\r\n                <section>\r\n                    <h4>Caret movement at the start of a <a>CE Typing\r\n                    Node</a></h4>If the caret is at the start of a <a>CE Typing\r\n                    Node</a> before the movement takes place, and the requested\r\n                    movement would cause it to go beyond the start of the <a>CE\r\n                    Typing Node</a>, the caret is moved into the start of the\r\n                    last preceding <a>CE Typing Node</a> that is part of the\r\n                    same <a>CE Typing Container</a>. If this movement did not\r\n                    cause it to move by at least 1px, the caret is moved one\r\n                    additional position.\r\n\r\n                    <p>If there is no previous <a>CE Typing Node</a> to which\r\n                    the caret could be moved, it is not moved.</p>\r\n                </section>\r\n "},"comment":{"url":"https://api.github.com/repos/w3c/editing/issues/comments/109003895","html_url":"https://github.com/w3c/editing/issues/58#issuecomment-109003895","issue_url":"https://api.github.com/repos/w3c/editing/issues/58","id":109003895,"user":{"login":"rniwa","id":285965,"avatar_url":"https://avatars.githubusercontent.com/u/285965?v=3","gravatar_id":"","url":"https://api.github.com/users/rniwa","html_url":"https://github.com/rniwa","followers_url":"https://api.github.com/users/rniwa/followers","following_url":"https://api.github.com/users/rniwa/following{/other_user}","gists_url":"https://api.github.com/users/rniwa/gists{/gist_id}","starred_url":"https://api.github.com/users/rniwa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rniwa/subscriptions","organizations_url":"https://api.github.com/users/rniwa/orgs","repos_url":"https://api.github.com/users/rniwa/repos","events_url":"https://api.github.com/users/rniwa/events{/privacy}","received_events_url":"https://api.github.com/users/rniwa/received_events","type":"User","site_admin":false},"created_at":"2015-06-04T18:45:01Z","updated_at":"2015-06-04T18:45:01Z","body":"Definitely, selection API. That's the spec for defining the selection behavior in general."}}