<p dir="auto"><strong>Do you want to request a <em>feature</em> or report a <em>bug</em>?</strong><br>
Bug</p>
<p dir="auto"><strong>What is the current behavior?</strong><br>
Disabled radio button (and checkbox) fires onChange event from double click in IE11</p>
<p dir="auto"><strong>If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem via <a href="https://jsfiddle.net" rel="nofollow">https://jsfiddle.net</a> or similar.</strong><br>
<a href="http://jsfiddle.net/gttafz9t/2/" rel="nofollow">http://jsfiddle.net/gttafz9t/2/</a></p>
<p dir="auto"><strong>What is the expected behavior?</strong><br>
Disabled radio button (and checkbox) doesn't fire onChange event from double click in IE11</p>
<p dir="auto"><strong>Which versions of React, and which browser / OS are affected by this issue? Did this work in previous versions of React?</strong><br>
React 15.4.2, IE11 / Windows 8.1</p>
<p dir="auto">Duplicate of:<br>
<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="96451652" data-permission-text="Title is private" data-url="https://github.com/facebook/react/issues/4457" data-hovercard-type="issue" data-hovercard-url="/facebook/react/issues/4457/hovercard" href="https://github.com/facebook/react/issues/4457">#4457</a></p>
<p dir="auto">React version: Latest</p>
<h2 dir="auto">Steps To Reproduce</h2>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="import * as hooks from &quot;bundle-o-hooks&quot;;

function MyComponent({x}) {
    if (x &gt; 1) {
        const something = hooks.useAHook(); // not flagged
     }
}"><pre class="notranslate"><span class="pl-k">import</span> <span class="pl-c1">*</span> <span class="pl-k">as</span> <span class="pl-s1">hooks</span> <span class="pl-k">from</span> <span class="pl-s">"bundle-o-hooks"</span><span class="pl-kos">;</span>

<span class="pl-k">function</span> <span class="pl-v">MyComponent</span><span class="pl-kos">(</span><span class="pl-kos">{</span>x<span class="pl-kos">}</span><span class="pl-kos">)</span> <span class="pl-kos">{</span>
    <span class="pl-k">if</span> <span class="pl-kos">(</span><span class="pl-s1">x</span> <span class="pl-c1">&gt;</span> <span class="pl-c1">1</span><span class="pl-kos">)</span> <span class="pl-kos">{</span>
        <span class="pl-k">const</span> <span class="pl-s1">something</span> <span class="pl-c1">=</span> <span class="pl-s1">hooks</span><span class="pl-kos">.</span><span class="pl-en">useAHook</span><span class="pl-kos">(</span><span class="pl-kos">)</span><span class="pl-kos">;</span> <span class="pl-c">// not flagged</span>
     <span class="pl-kos">}</span>
<span class="pl-kos">}</span></pre></div>
<h2 dir="auto">The current behavior</h2>
<p dir="auto">The current hook-matching rules only counts bare identifiers or member expressions where the target object is in Pascal case</p>
<p dir="auto"><a href="https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/src/RulesOfHooks.js#L25-L44">https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/src/RulesOfHooks.js#L25-L44</a></p>
<h2 dir="auto">The expected behavior</h2>
<p dir="auto">I'd like the pascal case restriction to be removed, or at least have the docs updated, as neither the existing docs nor the beta docs mention this additional rule for what gets considered a hook by the linter.</p>