{"action":"created","comment":{"url":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/comments/167002503","pull_request_review_id":95154587,"id":167002503,"diff_hunk":"@@ -0,0 +1,31 @@\n+﻿using System;\n+using System.Collections.Generic;\n+using System.Text;\n+\n+namespace Xamarin.Forms\n+{\n+    public enum AutoCapitalization\n+    {\n+\t\t/// <summary>\n+\t\t/// Don't set anything on the platform component.\n+\t\t/// Currently this only affects iOS\n+\t\t/// </summary>\n+\t\tDefault = 0,\n+\t\t/// <summary>\n+\t\t/// no automatic text capitalization.\n+\t\t/// </summary>\n+\t\tNone = 1,\n+\t\t/// <summary>\n+\t\t/// capitalize the first character of every word.\n+\t\t/// </summary>\n+\t\tWords = 2,\n+\t\t/// <summary>\n+\t\t/// capitalize the first character of each sentence. \n+\t\t/// </summary>\n+\t\tSentences = 3,\n+\t\t/// <summary>\n+\t\t///  capitalize all characters. \n+\t\t/// </summary>\n+\t\tCharacters = 4\n+\t}","path":"Xamarin.Forms.Core/AutoCapitalization.cs","position":30,"original_position":30,"commit_id":"19a275711dc476c2cd31d0811c63223f6db2321e","original_commit_id":"19a275711dc476c2cd31d0811c63223f6db2321e","user":{"login":"PureWeen","id":5375137,"avatar_url":"https://avatars1.githubusercontent.com/u/5375137?v=4","gravatar_id":"","url":"https://api.github.com/users/PureWeen","html_url":"https://github.com/PureWeen","followers_url":"https://api.github.com/users/PureWeen/followers","following_url":"https://api.github.com/users/PureWeen/following{/other_user}","gists_url":"https://api.github.com/users/PureWeen/gists{/gist_id}","starred_url":"https://api.github.com/users/PureWeen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PureWeen/subscriptions","organizations_url":"https://api.github.com/users/PureWeen/orgs","repos_url":"https://api.github.com/users/PureWeen/repos","events_url":"https://api.github.com/users/PureWeen/events{/privacy}","received_events_url":"https://api.github.com/users/PureWeen/received_events","type":"User","site_admin":false},"body":"I had that thought but this issue seems to be more about the input type settings then it is about applying transformations to the text. The AutoCap settings on iOS/Android all apply to what state they place the keyboard into as the user types. UWP you can enforce rules on the box itself but that seemed to not fit the intentions of the issue. Maybe the enum needs to be changed to CapitalizationInputType? ","created_at":"2018-02-08T17:05:19Z","updated_at":"2018-02-08T17:05:19Z","html_url":"https://github.com/xamarin/Xamarin.Forms/pull/1833#discussion_r167002503","pull_request_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/1833","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/comments/167002503"},"html":{"href":"https://github.com/xamarin/Xamarin.Forms/pull/1833#discussion_r167002503"},"pull_request":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/1833"}},"in_reply_to_id":166857708},"pull_request":{"url":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/1833","id":167817728,"html_url":"https://github.com/xamarin/Xamarin.Forms/pull/1833","diff_url":"https://github.com/xamarin/Xamarin.Forms/pull/1833.diff","patch_url":"https://github.com/xamarin/Xamarin.Forms/pull/1833.patch","issue_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues/1833","number":1833,"state":"open","locked":false,"title":"AutoCapitalization support for Entry/Editor  (#1683)","user":{"login":"PureWeen","id":5375137,"avatar_url":"https://avatars1.githubusercontent.com/u/5375137?v=4","gravatar_id":"","url":"https://api.github.com/users/PureWeen","html_url":"https://github.com/PureWeen","followers_url":"https://api.github.com/users/PureWeen/followers","following_url":"https://api.github.com/users/PureWeen/following{/other_user}","gists_url":"https://api.github.com/users/PureWeen/gists{/gist_id}","starred_url":"https://api.github.com/users/PureWeen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PureWeen/subscriptions","organizations_url":"https://api.github.com/users/PureWeen/orgs","repos_url":"https://api.github.com/users/PureWeen/repos","events_url":"https://api.github.com/users/PureWeen/events{/privacy}","received_events_url":"https://api.github.com/users/PureWeen/received_events","type":"User","site_admin":false},"body":"### Description of Change ###\r\n\r\nThe Entry and Editor controls do not have a simple mechanism for controlling the native automatic capitalization features.\r\n\r\n#### Android\r\nMapped the enum to the following types\r\n```c#\r\nAutoCapitalization.Characters: InputTypes.TextFlagCapCharacters;\r\nAutoCapitalization.Sentences: InputTypes.TextFlagCapSentences;\r\nAutoCapitalization.Words: InputTypes.TextFlagCapWords;\r\nAutoCapitalization.None: Doesn't exist for Android so just clears the Input TextFlagCap** \r\nAutoCapitalization.Default:  clears the Input TextFlagCap**\r\n```\r\n\r\n#### iOS\r\nMapped the enum to the following types\r\n```c#\r\nAutoCapitalization.Characters: UITextAutocapitalizationType.AllCharacters;\r\nAutoCapitalization.Sentences: UITextAutocapitalizationType.Sentences;\r\nAutoCapitalization.Words: UITextAutocapitalizationType.Words;\r\nAutoCapitalization.None: UITextAutocapitalizationType.None;\r\n\r\n/*If this is set and the AutoCapitalization has never been set then this does nothing and Auto Cap is ignored. \r\nIf the bindable property is cleared or set back to Default then iOS capitalization is set back to the default\r\n*/\r\nAutoCapitalization.Default:   \r\n\r\n```\r\n\r\n#### UWP\r\n\r\n*AutoCapitalization.Characters*: Implemented using the OnTextChanging handler. I realize you can set the *CharacterCasing* in UWP to Upper but that forces all text no matter what to be upper case.  Thus if you set the Entry.Text field to \"lower case text\" on UWP it'll be capitalized whereas on iOS and Android it won't be.  If the developer wants the text to go in at a certain casing the onus is on them and we should allow that text to represent whatever the developer set it to. AutoCapitalization is also more a function of the keyboard and less a function of the field itself\r\n\r\n*AutoCapitalization.Sentences* and *AutoCapitalization.Words*:\r\nUWP doesn't have a specific setting for these that you can apply to the keyboard. They are inferred from InputScope  https://msdn.microsoft.com/en-us/library/windows/apps/mt280229.aspx?f=255&MSPPError=-2147217396  and from *Typing Settings* on the OS itself so forcing a custom implementation here isn't going to result in an experience a Windows user expects as they have specifically set the OS rules themselves\r\n\r\n### Bugs Fixed ###\r\n\r\nhttps://github.com/xamarin/Xamarin.Forms/issues/1683\r\n\r\n### API Changes ###\r\n\r\n\r\nAdded:\r\n - AutoCapitalizationInputView.AutoCapitalization { get; set; } //Bindable Property\r\n```\r\n    public enum AutoCapitalization\r\n    {\r\n\t\t/// <summary>\r\n\t\t/// Don't set anything on the platform component.\r\n\t\t/// Currently this only affects iOS\r\n\t\t/// </summary>\r\n\t\tDefault = 0,\r\n\t\t/// <summary>\r\n\t\t/// no automatic text capitalization.\r\n\t\t/// </summary>\r\n\t\tNone = 1,\r\n\t\t/// <summary>\r\n\t\t/// capitalize the first character of every word.\r\n\t\t/// </summary>\r\n\t\tWords = 2,\r\n\t\t/// <summary>\r\n\t\t/// capitalize the first character of each sentence. \r\n\t\t/// </summary>\r\n\t\tSentences = 3,\r\n\t\t/// <summary>\r\n\t\t///  capitalize all characters. \r\n\t\t/// </summary>\r\n\t\tCharacters = 4\r\n\t}\r\n```\r\n\r\n### PR Checklist ###\r\n\r\n- [X] Has tests (if omitted, state reason in description)\r\n- [X] Rebased on top of master at time of PR\r\n- [X] Changes adhere to coding standard\r\n- [X] Consolidate commits as makes sense\r\n","created_at":"2018-02-07T21:45:40Z","updated_at":"2018-02-08T17:05:19Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9ec8dabd1988ac8f1f3742f0749d8759ce3c4ffc","assignee":null,"assignees":[],"requested_reviewers":[{"login":"samhouts","id":7827070,"avatar_url":"https://avatars3.githubusercontent.com/u/7827070?v=4","gravatar_id":"","url":"https://api.github.com/users/samhouts","html_url":"https://github.com/samhouts","followers_url":"https://api.github.com/users/samhouts/followers","following_url":"https://api.github.com/users/samhouts/following{/other_user}","gists_url":"https://api.github.com/users/samhouts/gists{/gist_id}","starred_url":"https://api.github.com/users/samhouts/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/samhouts/subscriptions","organizations_url":"https://api.github.com/users/samhouts/orgs","repos_url":"https://api.github.com/users/samhouts/repos","events_url":"https://api.github.com/users/samhouts/events{/privacy}","received_events_url":"https://api.github.com/users/samhouts/received_events","type":"User","site_admin":false}],"requested_teams":[],"milestone":null,"commits_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/1833/commits","review_comments_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/1833/comments","review_comment_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/comments{/number}","comments_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues/1833/comments","statuses_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/statuses/19a275711dc476c2cd31d0811c63223f6db2321e","head":{"label":"xamarin:1683_capitalization","ref":"1683_capitalization","sha":"19a275711dc476c2cd31d0811c63223f6db2321e","user":{"login":"xamarin","id":790012,"avatar_url":"https://avatars0.githubusercontent.com/u/790012?v=4","gravatar_id":"","url":"https://api.github.com/users/xamarin","html_url":"https://github.com/xamarin","followers_url":"https://api.github.com/users/xamarin/followers","following_url":"https://api.github.com/users/xamarin/following{/other_user}","gists_url":"https://api.github.com/users/xamarin/gists{/gist_id}","starred_url":"https://api.github.com/users/xamarin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xamarin/subscriptions","organizations_url":"https://api.github.com/users/xamarin/orgs","repos_url":"https://api.github.com/users/xamarin/repos","events_url":"https://api.github.com/users/xamarin/events{/privacy}","received_events_url":"https://api.github.com/users/xamarin/received_events","type":"Organization","site_admin":false},"repo":{"id":54213490,"name":"Xamarin.Forms","full_name":"xamarin/Xamarin.Forms","owner":{"login":"xamarin","id":790012,"avatar_url":"https://avatars0.githubusercontent.com/u/790012?v=4","gravatar_id":"","url":"https://api.github.com/users/xamarin","html_url":"https://github.com/xamarin","followers_url":"https://api.github.com/users/xamarin/followers","following_url":"https://api.github.com/users/xamarin/following{/other_user}","gists_url":"https://api.github.com/users/xamarin/gists{/gist_id}","starred_url":"https://api.github.com/users/xamarin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xamarin/subscriptions","organizations_url":"https://api.github.com/users/xamarin/orgs","repos_url":"https://api.github.com/users/xamarin/repos","events_url":"https://api.github.com/users/xamarin/events{/privacy}","received_events_url":"https://api.github.com/users/xamarin/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/xamarin/Xamarin.Forms","description":"Xamarin.Forms official home","fork":false,"url":"https://api.github.com/repos/xamarin/Xamarin.Forms","forks_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/forks","keys_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/keys{/key_id}","collaborators_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/teams","hooks_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/hooks","issue_events_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues/events{/number}","events_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/events","assignees_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/assignees{/user}","branches_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/branches{/branch}","tags_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/tags","blobs_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/refs{/sha}","trees_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/trees{/sha}","statuses_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/statuses/{sha}","languages_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/languages","stargazers_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/stargazers","contributors_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/contributors","subscribers_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/subscribers","subscription_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/subscription","commits_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/commits{/sha}","git_commits_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/commits{/sha}","comments_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/comments{/number}","issue_comment_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues/comments{/number}","contents_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/contents/{+path}","compare_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/compare/{base}...{head}","merges_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/merges","archive_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/downloads","issues_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues{/number}","pulls_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls{/number}","milestones_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/milestones{/number}","notifications_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/labels{/name}","releases_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/releases{/id}","deployments_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/deployments","created_at":"2016-03-18T15:52:03Z","updated_at":"2018-02-08T11:20:16Z","pushed_at":"2018-02-08T16:51:40Z","git_url":"git://github.com/xamarin/Xamarin.Forms.git","ssh_url":"git@github.com:xamarin/Xamarin.Forms.git","clone_url":"https://github.com/xamarin/Xamarin.Forms.git","svn_url":"https://github.com/xamarin/Xamarin.Forms","homepage":"https://xamarin.com/forms","size":38837,"stargazers_count":1896,"watchers_count":1896,"language":"C#","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":813,"mirror_url":null,"archived":false,"open_issues_count":298,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":813,"open_issues":298,"watchers":1896,"default_branch":"master"}},"base":{"label":"xamarin:master","ref":"master","sha":"7e387eb77871abca82ab2a86ceeed4dcd88bab0d","user":{"login":"xamarin","id":790012,"avatar_url":"https://avatars0.githubusercontent.com/u/790012?v=4","gravatar_id":"","url":"https://api.github.com/users/xamarin","html_url":"https://github.com/xamarin","followers_url":"https://api.github.com/users/xamarin/followers","following_url":"https://api.github.com/users/xamarin/following{/other_user}","gists_url":"https://api.github.com/users/xamarin/gists{/gist_id}","starred_url":"https://api.github.com/users/xamarin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xamarin/subscriptions","organizations_url":"https://api.github.com/users/xamarin/orgs","repos_url":"https://api.github.com/users/xamarin/repos","events_url":"https://api.github.com/users/xamarin/events{/privacy}","received_events_url":"https://api.github.com/users/xamarin/received_events","type":"Organization","site_admin":false},"repo":{"id":54213490,"name":"Xamarin.Forms","full_name":"xamarin/Xamarin.Forms","owner":{"login":"xamarin","id":790012,"avatar_url":"https://avatars0.githubusercontent.com/u/790012?v=4","gravatar_id":"","url":"https://api.github.com/users/xamarin","html_url":"https://github.com/xamarin","followers_url":"https://api.github.com/users/xamarin/followers","following_url":"https://api.github.com/users/xamarin/following{/other_user}","gists_url":"https://api.github.com/users/xamarin/gists{/gist_id}","starred_url":"https://api.github.com/users/xamarin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/xamarin/subscriptions","organizations_url":"https://api.github.com/users/xamarin/orgs","repos_url":"https://api.github.com/users/xamarin/repos","events_url":"https://api.github.com/users/xamarin/events{/privacy}","received_events_url":"https://api.github.com/users/xamarin/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/xamarin/Xamarin.Forms","description":"Xamarin.Forms official home","fork":false,"url":"https://api.github.com/repos/xamarin/Xamarin.Forms","forks_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/forks","keys_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/keys{/key_id}","collaborators_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/teams","hooks_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/hooks","issue_events_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues/events{/number}","events_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/events","assignees_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/assignees{/user}","branches_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/branches{/branch}","tags_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/tags","blobs_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/refs{/sha}","trees_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/trees{/sha}","statuses_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/statuses/{sha}","languages_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/languages","stargazers_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/stargazers","contributors_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/contributors","subscribers_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/subscribers","subscription_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/subscription","commits_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/commits{/sha}","git_commits_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/git/commits{/sha}","comments_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/comments{/number}","issue_comment_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues/comments{/number}","contents_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/contents/{+path}","compare_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/compare/{base}...{head}","merges_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/merges","archive_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/downloads","issues_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues{/number}","pulls_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls{/number}","milestones_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/milestones{/number}","notifications_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/labels{/name}","releases_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/releases{/id}","deployments_url":"https://api.github.com/repos/xamarin/Xamarin.Forms/deployments","created_at":"2016-03-18T15:52:03Z","updated_at":"2018-02-08T11:20:16Z","pushed_at":"2018-02-08T16:51:40Z","git_url":"git://github.com/xamarin/Xamarin.Forms.git","ssh_url":"git@github.com:xamarin/Xamarin.Forms.git","clone_url":"https://github.com/xamarin/Xamarin.Forms.git","svn_url":"https://github.com/xamarin/Xamarin.Forms","homepage":"https://xamarin.com/forms","size":38837,"stargazers_count":1896,"watchers_count":1896,"language":"C#","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":813,"mirror_url":null,"archived":false,"open_issues_count":298,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":813,"open_issues":298,"watchers":1896,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/1833"},"html":{"href":"https://github.com/xamarin/Xamarin.Forms/pull/1833"},"issue":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues/1833"},"comments":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/issues/1833/comments"},"review_comments":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/1833/comments"},"review_comment":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/pulls/1833/commits"},"statuses":{"href":"https://api.github.com/repos/xamarin/Xamarin.Forms/statuses/19a275711dc476c2cd31d0811c63223f6db2321e"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"PureWeen"}}