summaryrefslogtreecommitdiff
path: root/deps/v8/tools/link_clicker.extension/popup.js
blob: 865a9480eb20b85c97ee51721905dc48d0b6bb13 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// Copyright 2017 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

function $(id) {
  return document.querySelector(id);
}

// ===========================================================================
document.addEventListener('DOMContentLoaded', function () {
  installFormChangeHandler()
});


function installFormChangeHandler() {
  initForm();
  let inputs = document.getElementsByTagName("input");
  for (let i = 0; i < inputs.length; i++){
     inputs[i].onchange = onFormChange;
  }
}

function initForm() {
  chrome.runtime.sendMessage({type:'get'}, function(response) {
    updateFromMessage(response);
  });
}
// ===========================================================================

function updateFromMessage(msg) {
  $("#minInterval").value = msg.minInterval;
  $("#maxInterval").value = msg.maxInterval;
  $("#pattern").value = msg.pattern;
  $("#enabled").checked = msg.enabled;
  $("#minIntervalValue").innerText = msg.minInterval+"ms";
  $("#maxIntervalValue").innerText = msg.maxInterval+"ms";
}

function onFormChange() {
  let minInterval = $("#minInterval").value;
  let maxInterval = $("#maxInterval").value;

  let message = {
    type: 'update',
    minInterval: minInterval,
    maxInterval: maxInterval,
    pattern: $("#pattern").value,
    enabled: $("#enabled").checked
  }
  chrome.runtime.sendMessage(message, function(response) {
    updateFromMessage(response);
  });
}