<p dir="auto"><strong>Isssue</strong><br>
<code class="notranslate">tel</code> and <code class="notranslate">callto</code> links not opened in app despite having been registered with <code class="notranslate">setAsDefaultProtocolClient</code></p>
<p dir="auto"><em>It is very similar (identical?) to <a href="https://github.com/electron/electron/issues/14108" data-hovercard-type="issue" data-hovercard-url="/electron/electron/issues/14108/hovercard">this issue</a>. It is 6 months old and has received 7 thumbs up but no further attention, hence this new attempt.</em></p>
<p dir="auto">Specifics:</p>
<ul dir="auto">
<li>
<p dir="auto">Output of <code class="notranslate">node_modules/.bin/electron --version</code>:<br>
<em>v.3.0.10</em></p>
</li>
<li>
<p dir="auto">Operating System (Platform and Version):<br>
<em><strong>Windows 10</strong><br>
Version 1709<br>
OS Build 16299.125</em></p>
</li>
<li>
<p dir="auto">Output of <code class="notranslate">node_modules/.bin/electron --version</code> on last known working Electron version (if applicable):<br>
<em>Not applicable</em></p>
</li>
</ul>
<p dir="auto"><strong>Expected Behavior</strong><br>
<code class="notranslate">app.setAsDefaultProtocolClient('tel')</code> and <code class="notranslate">app.setAsDefaultProtocolClient('callto')</code> should make your application become available in the list of apps appearing when opening a <code class="notranslate">tel:</code> or <code class="notranslate">callto:</code> link.</p>
<p dir="auto"><strong>Actual behavior</strong><br>
Application is not included in the list of apps appearing when clicking a tel or callto link.</p>
<p dir="auto"><strong>To Reproduce</strong></p>
<ol dir="auto">
<li>
<p dir="auto">Download <a href="https://github.com/electron/electron-api-demos/releases/tag/v2.0.1">the latest Electron demo (v2.0.1)</a></p>
</li>
<li>
<p dir="auto">In function <code class="notranslate">createWindow</code> found in <code class="notranslate">main.js</code>, add these two lines:</p>
</li>
</ol>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="const defaultProtocolSet = app.setAsDefaultProtocolClient('tel'); //can also be set to 'callto' instead of 'tel'
console.log('defaultProtocolSet? ', defaultProtocolSet);"><pre class="notranslate"><code class="notranslate">const defaultProtocolSet = app.setAsDefaultProtocolClient('tel'); //can also be set to 'callto' instead of 'tel'
console.log('defaultProtocolSet? ', defaultProtocolSet);
</code></pre></div>
<ol start="3" dir="auto">
<li>
<p dir="auto">Open Windows's Command Prompt and run <code class="notranslate">npm install &amp;&amp; run dev</code><br>
You should now see <em>'defaultProtocolSet? true'</em> in the Command Prompt window</p>
</li>
<li>
<p dir="auto">Open a browser and in the address field enter <code class="notranslate">tel://0123456789</code>(replace number with number of your choice) and press return. Alternatively you can click on any <code class="notranslate">tel</code> link you have available.</p>
</li>
</ol>
<p dir="auto">Result:<br>
A menu with a list of applications will be opened, but your app will not be represented here.</p>
<p dir="auto"><strong>Additional Information</strong><br>
There does not seem to be a problem registering and opening custom protocol links, such as <code class="notranslate">'myOwnTestProtocol'</code></p>
<p dir="auto">Thanks for your time and consideration!</p>
<h3 dir="auto">Preflight Checklist</h3>

<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have read the <a href="https://github.com/electron/electron/blob/master/CONTRIBUTING.md">Contributing Guidelines</a> for this project.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I agree to follow the <a href="https://github.com/electron/electron/blob/master/CODE_OF_CONDUCT.md">Code of Conduct</a> that this project adheres to.</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" checked=""> I have searched the issue tracker for an issue that matches the one I want to file, without success.</li>
</ul>
<h3 dir="auto">Issue Details</h3>
<ul dir="auto">
<li><strong>Electron Version:</strong>
<ul dir="auto">
<li>v5.0.2</li>
</ul>
</li>
<li><strong>Operating System:</strong>
<ul dir="auto">
<li>macOS 10.13.6</li>
</ul>
</li>
<li><strong>Last Known Working Electron version:</strong>
<ul dir="auto">
<li>Haven't tried on other electron versions.</li>
</ul>
</li>
</ul>
<h3 dir="auto">Expected Behavior</h3>
<p dir="auto">I have an app which runs in electron <code class="notranslate">&lt;webview&gt;</code>. I need to render multiple iframes inside this <code class="notranslate">&lt;webview&gt;</code> and dynamic add or remove them.</p>
<h3 dir="auto">Actual Behavior</h3>
<p dir="auto">When I remove one <code class="notranslate">&lt;iframe&gt;</code> from the dom tree, the whole <code class="notranslate">&lt;webview&gt;</code> crashes. I didn't use JS to remove iframe node, instead, I just delete one <code class="notranslate">&lt;iframe&gt;</code> from the dom inspector, and the <code class="notranslate">&lt;webview&gt;</code> crashes.</p>
<h3 dir="auto">To Reproduce</h3>
<p dir="auto">This is an example : <a href="https://github.com/cloudsere/electron-quick-start">https://github.com/cloudsere/electron-quick-start</a>. You can run commands below to reproduce.</p>
<div class="highlight highlight-source-shell notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="$ git clone https://github.com/cloudsere/electron-quick-start
$ npm install
$ npm start"><pre class="notranslate">$ git clone https://github.com/cloudsere/electron-quick-start
$ npm install
$ npm start</pre></div>