1*c8dee2aaSAndroid Build Coastguard Worker<!DOCTYPE html> 2*c8dee2aaSAndroid Build Coastguard Worker<html> 3*c8dee2aaSAndroid Build Coastguard Worker 4*c8dee2aaSAndroid Build Coastguard Worker<head> 5*c8dee2aaSAndroid Build Coastguard Worker <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 6*c8dee2aaSAndroid Build Coastguard Worker <title>Skia Client Code Search</title> 7*c8dee2aaSAndroid Build Coastguard Worker 8*c8dee2aaSAndroid Build Coastguard Worker <script> 9*c8dee2aaSAndroid Build Coastguard Worker document.addEventListener('DOMContentLoaded', function () { 10*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('search-term').oninput = 11*c8dee2aaSAndroid Build Coastguard Worker event => updateLinks(event.target.value); 12*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('open-all').onclick = event => { 13*c8dee2aaSAndroid Build Coastguard Worker rawSearchTerm = document.getElementById('search-term').value; 14*c8dee2aaSAndroid Build Coastguard Worker updateLinks(rawSearchTerm); 15*c8dee2aaSAndroid Build Coastguard Worker openLinks(); 16*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('open-all').value = 'Update all'; 17*c8dee2aaSAndroid Build Coastguard Worker }; 18*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('search-term').value = window.location.search.substring(1); 19*c8dee2aaSAndroid Build Coastguard Worker }, false); 20*c8dee2aaSAndroid Build Coastguard Worker 21*c8dee2aaSAndroid Build Coastguard Worker function updateLinks(rawSearchTerm) { 22*c8dee2aaSAndroid Build Coastguard Worker var term = encodeURIComponent(rawSearchTerm); 23*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('chromium-link').href = 24*c8dee2aaSAndroid Build Coastguard Worker 'https://cs.chromium.org/search/?q=' + term + 25*c8dee2aaSAndroid Build Coastguard Worker '+-file:third_party/skia&sq=package:chromium&type=cs'; 26*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('android-link').href = 27*c8dee2aaSAndroid Build Coastguard Worker 'http://cs.android.com/search?q=' + term + 28*c8dee2aaSAndroid Build Coastguard Worker '+(-file:%5Eexternal/skia OR file:%5Eexternal/skia/Android.bp OR file:SkUserConfig)' + 29*c8dee2aaSAndroid Build Coastguard Worker '+-file:%5Eexternal/skqp'; 30*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('flutter-link').href = 31*c8dee2aaSAndroid Build Coastguard Worker 'https://github.com/search?q=repo%3Aflutter%2Fengine+' + term + '&type=code'; 32*c8dee2aaSAndroid Build Coastguard Worker // We would prefer to use this link (better search controls), but bugs and 33*c8dee2aaSAndroid Build Coastguard Worker // staffing have caused it to stop indexing. For now, use Github instead. 34*c8dee2aaSAndroid Build Coastguard Worker // 'https://cs.opensource.google/search?ss=flutter%2Fengine&q=' + term; 35*c8dee2aaSAndroid Build Coastguard Worker // See also: https://chat.google.com/room/AAAAXsGfCIs/NmPA4hBSwJc 36*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('mozilla-link').href = 37*c8dee2aaSAndroid Build Coastguard Worker 'https://dxr.mozilla.org/mozilla-central/search?q=' + term; 38*c8dee2aaSAndroid Build Coastguard Worker document.getElementById('libreoffice-link').href = 39*c8dee2aaSAndroid Build Coastguard Worker 'https://opengrok.libreoffice.org/search?full=' + term + 40*c8dee2aaSAndroid Build Coastguard Worker '&searchall=true'; 41*c8dee2aaSAndroid Build Coastguard Worker } 42*c8dee2aaSAndroid Build Coastguard Worker 43*c8dee2aaSAndroid Build Coastguard Worker function openLink(elementId) { 44*c8dee2aaSAndroid Build Coastguard Worker if (document.getElementById(elementId + '-box').checked) { 45*c8dee2aaSAndroid Build Coastguard Worker window.open(document.getElementById(elementId + '-link').href, 46*c8dee2aaSAndroid Build Coastguard Worker document.getElementById(elementId + '-link').id); 47*c8dee2aaSAndroid Build Coastguard Worker } 48*c8dee2aaSAndroid Build Coastguard Worker } 49*c8dee2aaSAndroid Build Coastguard Worker 50*c8dee2aaSAndroid Build Coastguard Worker function openLinks() { 51*c8dee2aaSAndroid Build Coastguard Worker openLink('chromium'); 52*c8dee2aaSAndroid Build Coastguard Worker openLink('android'); 53*c8dee2aaSAndroid Build Coastguard Worker openLink('flutter'); 54*c8dee2aaSAndroid Build Coastguard Worker openLink('mozilla'); 55*c8dee2aaSAndroid Build Coastguard Worker openLink('libreoffice'); 56*c8dee2aaSAndroid Build Coastguard Worker } 57*c8dee2aaSAndroid Build Coastguard Worker </script> 58*c8dee2aaSAndroid Build Coastguard Worker</head> 59*c8dee2aaSAndroid Build Coastguard Worker 60*c8dee2aaSAndroid Build Coastguard Worker<body> 61*c8dee2aaSAndroid Build Coastguard Worker <p>Note: Due to different querying capabilities, you may need to adjust your query after opening 62*c8dee2aaSAndroid Build Coastguard Worker the links below.</p> 63*c8dee2aaSAndroid Build Coastguard Worker <label for="search-term">Search term: </label> 64*c8dee2aaSAndroid Build Coastguard Worker <input type="text" name="search-term" id="search-term"> 65*c8dee2aaSAndroid Build Coastguard Worker <input type="submit" value="Update all" id="open-all"> 66*c8dee2aaSAndroid Build Coastguard Worker <p>Links to Skia clients code search:</p> 67*c8dee2aaSAndroid Build Coastguard Worker <ul> 68*c8dee2aaSAndroid Build Coastguard Worker <li><input type="checkbox" id="chromium-box" checked="true"><a id="chromium-link">Chromium</a></li> 69*c8dee2aaSAndroid Build Coastguard Worker <li><input type="checkbox" id="android-box" checked="true"><a id="android-link">Android (public)</a></li> 70*c8dee2aaSAndroid Build Coastguard Worker <li><input type="checkbox" id="flutter-box" checked="true"><a id="flutter-link">Flutter</a></li> 71*c8dee2aaSAndroid Build Coastguard Worker <li><input type="checkbox" id="mozilla-box" checked="true"><a id="mozilla-link">Mozilla</a>*</li> 72*c8dee2aaSAndroid Build Coastguard Worker <!-- Less commonly used repos are not checked by default: --> 73*c8dee2aaSAndroid Build Coastguard Worker <li><input type="checkbox" id="libreoffice-box"><a id="libreoffice-link">LibreOffice</a></li> 74*c8dee2aaSAndroid Build Coastguard Worker </ul> 75*c8dee2aaSAndroid Build Coastguard Worker <p>*: Mozilla results include Skia source code (searchfox.org doesn't support excluding paths). Most usage is in 76*c8dee2aaSAndroid Build Coastguard Worker <b>gfx/2d</b>, but there is some usage elsewhere. Scoping your search to gfx/2d with the "Path filter" is 77*c8dee2aaSAndroid Build Coastguard Worker helpful. 78*c8dee2aaSAndroid Build Coastguard Worker </p> 79*c8dee2aaSAndroid Build Coastguard Worker <p><a href="go/skia-client-search">Internal version</a></p> 80*c8dee2aaSAndroid Build Coastguard Worker</body> 81*c8dee2aaSAndroid Build Coastguard Worker 82*c8dee2aaSAndroid Build Coastguard Worker</html>