Example #1
0
void HTMLKeygenElement::didAddUserAgentShadowRoot(ShadowRoot& root) {
  DEFINE_STATIC_LOCAL(AtomicString, keygenSelectPseudoId,
                      ("-webkit-keygen-select"));

  Vector<String> keys;
  keys.reserveCapacity(2);
  keys.append(
      locale().queryString(WebLocalizedString::KeygenMenuHighGradeKeySize));
  keys.append(
      locale().queryString(WebLocalizedString::KeygenMenuMediumGradeKeySize));

  // Create a select element with one option element for each key size.
  HTMLSelectElement* select = HTMLSelectElement::create(document());
  select->setShadowPseudoId(keygenSelectPseudoId);
  for (const String& key : keys) {
    HTMLOptionElement* option = HTMLOptionElement::create(document());
    option->appendChild(Text::create(document(), key));
    select->appendChild(option);
  }

  root.appendChild(select);
}