@@ -16,8 +16,8 @@ Elm.Native.Graphics.Input.make = function(elm) {
1616 var Tuple2 = Utils.Tuple2;
1717
1818 function input(initialValue) {
19− var sig = Signal.constant(initialValue);
20− return { _:{}, signal:sig, handle:sig };
19+ var signal = Signal.constant(initialValue);
20+ return { _:{}, signal:signal, handle:signal };
2121 }
2222
2323 function renderDropDown(signal, values) {
@@ -94,6 +94,7 @@ Elm.Native.Graphics.Input.make = function(elm) {
9494
9595 function renderCustomButton(model) {
9696 var btn = newNode('div');
97+ btn.elm_signal = model.signal;
9798 btn.elm_value = model.value;
9899
99100 btn.elm_up = Render.render(model.up);
@@ -140,8 +141,16 @@ Elm.Native.Graphics.Input.make = function(elm) {
140141 }
141142
142143 function updateCustomButton(node, oldModel, newModel) {
143− node.elm_signal = newModel.signal;
144− node.elm_value = newModel.value;
144+ var signal = newModel.signal;
145+ node.elm_up.elm_signal = signal;
146+ node.elm_hover.elm_signal = signal;
147+ node.elm_down.elm_signal = signal;
148+
149+ var value = newModel.value;
150+ node.elm_up.elm_value = value;
151+ node.elm_hover.elm_value = value;
152+ node.elm_down.elm_value = value;
153+
145154 Render.update(node.elm_up, oldModel.up, newModel.up)
146155 Render.update(node.elm_hover, oldModel.hover, newModel.hover)
147156 Render.update(node.elm_down, oldModel.down, newModel.down)