text: define(
    'tinymce.themes.mobile.util.CaptureBin',
  
    [
      'ephox.sugar.api.dom.Focus',
      'ephox.sugar.api.dom.Insert',
      'ephox.sugar.api.dom.Remove',
      'ephox.sugar.api.node.Element',
      'ephox.sugar.api.properties.Css'
    ],
  
    function (Focus, Insert, Remove, Element, Css) {
      var input = function (parent, operation) {
        // to capture focus allowing the keyboard to remain open with no 'real' selection
        var input = Element.fromTag('input');
        Css.setAll(input, {
          'opacity': '0',
          'position': 'absolute',
          'top': '-1000px',
          'left': '-1000px'
        });
        Insert.append(parent, input);
  
        Focus.focus(input);
        operation(input);
        Remove.remove(input);
      };
  
      return {
        input: input
      };
    }
  );