| <link rel="import" href="chrome://resources/html/polymer.html"> |
| <link rel="import" href="chrome://resources/polymer/v1_0/paper-radio-button/paper-radio-button.html"> |
| <link rel="import" href="chrome://resources/cr_elements/policy/cr_policy_pref_indicator.html"> |
| <link rel="import" href="/controls/pref_control_behavior.html"> |
| <link rel="import" href="/prefs/pref_util.html"> |
| <link rel="import" href="/settings_shared_css.html"> |
| |
| <dom-module id="controlled-radio-button"> |
| <template> |
| <style include="settings-shared"> |
| :host { |
| align-items: center; |
| display: flex; |
| outline: none; |
| } |
| |
| :host([controlled_]) { |
| /* Disable pointer events for this whole element, as outer on-tap gets |
| * triggered when clicking/tapping anywhere in :host. */ |
| pointer-events: none; |
| } |
| |
| cr-policy-pref-indicator { |
| -webkit-margin-start: var(--checkbox-spacing); |
| /* Enable pointer events for the indicator so :hover works. Disable |
| * clicks/taps via onIndicatorTap_ so outer on-tap doesn't trigger. */ |
| pointer-events: all; |
| } |
| </style> |
| |
| <paper-radio-button id="radioButton" name="{{name}}" checked="{{checked}}" |
| disabled="[[controlled_]]" tabindex$="[[tabindex]]"> |
| <content></content> |
| </paper-radio-button> |
| |
| <template is="dom-if" if="[[showIndicator_(controlled_, name, pref)]]"> |
| <cr-policy-pref-indicator pref="[[pref]]" on-tap="onIndicatorTap_"> |
| </cr-policy-pref-indicator> |
| </template> |
| |
| </template> |
| <script src="/controls/controlled_radio_button.js"></script> |
| </dom-module> |