{"action":"created","issue":{"url":"https://api.github.com/repos/vaadin/vaadin-combo-box/issues/254","repository_url":"https://api.github.com/repos/vaadin/vaadin-combo-box","labels_url":"https://api.github.com/repos/vaadin/vaadin-combo-box/issues/254/labels{/name}","comments_url":"https://api.github.com/repos/vaadin/vaadin-combo-box/issues/254/comments","events_url":"https://api.github.com/repos/vaadin/vaadin-combo-box/issues/254/events","html_url":"https://github.com/vaadin/vaadin-combo-box/pull/254","id":159397974,"number":254,"title":"Introduce input customization feature","user":{"login":"tehapo","id":368220,"avatar_url":"https://avatars.githubusercontent.com/u/368220?v=3","gravatar_id":"","url":"https://api.github.com/users/tehapo","html_url":"https://github.com/tehapo","followers_url":"https://api.github.com/users/tehapo/followers","following_url":"https://api.github.com/users/tehapo/following{/other_user}","gists_url":"https://api.github.com/users/tehapo/gists{/gist_id}","starred_url":"https://api.github.com/users/tehapo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tehapo/subscriptions","organizations_url":"https://api.github.com/users/tehapo/orgs","repos_url":"https://api.github.com/users/tehapo/repos","events_url":"https://api.github.com/users/tehapo/events{/privacy}","received_events_url":"https://api.github.com/users/tehapo/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/vaadin/vaadin-combo-box/labels/in%20review","name":"in review","color":"ededed"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":15,"created_at":"2016-06-09T12:41:24Z","updated_at":"2016-06-13T11:45:38Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/vaadin/vaadin-combo-box/pulls/254","html_url":"https://github.com/vaadin/vaadin-combo-box/pull/254","diff_url":"https://github.com/vaadin/vaadin-combo-box/pull/254.diff","patch_url":"https://github.com/vaadin/vaadin-combo-box/pull/254.patch"},"body":"Fixes #198 \r\n\r\n**IMPORTANT! Please don't merge this PR just yet. We need to rebase, clean up and squash the commit history before merging.**\r\n\r\nThis is quite a big change and therefore I tried to list all the main points here.\r\n\r\nGround work\r\n----\r\n* Our `iron-icon` + `paper-ripple` combo is now replaced with `paper-icon-button`.\r\n* Following attributes are now dynamically added/removed to the host element to enable styles based on the component state.\r\n  * `opened`\r\n  * `has-value`\r\n  * `readonly`\r\n  * `disabled`\r\n\r\nCustomization feature\r\n----\r\n* Replacing the `paper-icon-buttons` can be done by adding child elements with class names of `toggle-button` and/or `clear-button`.\r\n* Two new class names are exposed for styling.\r\n  * `small` – makes the icon slightly smaller (applied to the default clear icon, only affects a `paper-icon-button` element).\r\n  * `rotate-on-open` – makes the button rotate with a transition when dropdown is opened (applied to the default toggle icon).\r\n\r\n\r\nExample.\r\n```html\r\n<vaadin-combo-box>\r\n  <paper-icon-button icon=\"remove-circle\" class=\"clear-button\"></paper-icon-button>\r\n  <paper-icon-button icon=\"search\" class=\"toggle-button\"></paper-icon-button>\r\n</vaadin-combo-box>\r\n```\r\n\r\n* For replacing the whole input we introduced a new element called `vaadin-combo-box-light`.\r\n  * This split will avoid unnecessary imports when using a customized version.\r\n  * All logic from `vaadin-combo-box` was refactored to new behavior called `vaadin-combo-box-behavior`.\r\n  * The `vaadin-combo-box-light` expects to have a child element matching the selector `input[is=\"iron-input\"],paper-input,.paper-input-input,.input`.\r\n  * The input element must have some two-way data-bindable property for the current value.\r\n  * By default the value property is expected to be `bind-value` (to be compatible with `iron-input`).\r\n  * Value property name can be changed with the `attrForValue` property.\r\n\r\nExamples.\r\n```html\r\n<vaadin-combo-box-light>\r\n  <input is=\"iron-input\">\r\n</vaadin-combo-box-light>\r\n\r\n<vaadin-combo-box-light attr-for-value=\"value\">\r\n  <paper-input label=\"Elements\" class=\"input\">\r\n    <iron-icon icon=\"toll\" prefix></iron-icon>\r\n    <paper-button suffix class=\"clear-button\">Clear</paper-button>\r\n    <paper-button suffix class=\"toggle-button\">Toggle</paper-button>\r\n  </paper-input>\r\n</vaadin-combo-box-light>\r\n```\n\n<!-- Reviewable:start -->\n---\nThis change is [<img src=\"https://reviewable.io/review_button.svg\" height=\"35\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.io/reviews/vaadin/vaadin-combo-box/254)\n<!-- Reviewable:end -->\n"},"comment":{"url":"https://api.github.com/repos/vaadin/vaadin-combo-box/issues/comments/225558634","html_url":"https://github.com/vaadin/vaadin-combo-box/pull/254#issuecomment-225558634","issue_url":"https://api.github.com/repos/vaadin/vaadin-combo-box/issues/254","id":225558634,"user":{"login":"platosha","id":247998,"avatar_url":"https://avatars.githubusercontent.com/u/247998?v=3","gravatar_id":"","url":"https://api.github.com/users/platosha","html_url":"https://github.com/platosha","followers_url":"https://api.github.com/users/platosha/followers","following_url":"https://api.github.com/users/platosha/following{/other_user}","gists_url":"https://api.github.com/users/platosha/gists{/gist_id}","starred_url":"https://api.github.com/users/platosha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/platosha/subscriptions","organizations_url":"https://api.github.com/users/platosha/orgs","repos_url":"https://api.github.com/users/platosha/repos","events_url":"https://api.github.com/users/platosha/events{/privacy}","received_events_url":"https://api.github.com/users/platosha/received_events","type":"User","site_admin":false},"created_at":"2016-06-13T11:45:38Z","updated_at":"2016-06-13T11:45:38Z","body":"\n\n\n\n\n\nReviewed 1 of 2 files at r7.\nReview status: 19 of 20 files reviewed at latest revision, 10 unresolved discussions, some commit checks failed.\n\n---\n\n*[vaadin-combo-box-behavior.html, line 257 \\[r1\\]](https://reviewable.io:443/reviews/vaadin/vaadin-combo-box/254#-KJq6PCYr8yKqxE0syJ6:-KK8X2oZe_8MV3yuNVyT:1924499108) ([raw file](https://github.com/vaadin/vaadin-combo-box/blob/1981bbbb52b406ec187b24b042c47d965bb9904a/vaadin-combo-box-behavior.html#L257)):*\n<details><summary><i>Previously, tehapo (Teemu Pöntelin) wrote…</i></summary>\n> I personally find that kind of grouping comments unnecessary and easily outdated as the code evolves. I would keep it out. :smile: \n</details>\nWell, it was absolutely necessary in the combo-box, and for the same reasons it is necessary here.\n\nA while ago we had a ton of methods for spread quite randomly. After some refactoring, we end up with these grouping headers and sections in the combo-box. Now we just extract almost everything into a behavior. Why should we remove section headers at this time?\n\nWhy have you decided to remove just one of the headers, leaving the others in place? We also have “Keyboard navigation”, “Filtering and items handling” grouping headers here.\n\nAs the code evolves, the correct sectioning and order should be maintained, otherwise it becomes messy and hard to follow. I don't want the mess to be back here. Let’s rather have a header back, please.\n\n---\n\n\n*Comments from [Reviewable](https://reviewable.io:443/reviews/vaadin/vaadin-combo-box/254)*\n<!-- Sent from Reviewable.io -->\n"}}
{"actor":{"display_login":"platosha"}}