# Copyright 2020 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

devtools_image_files = [
  "accelerometer-back.svg",
  "accelerometer-bottom.png",
  "accelerometer-front.svg",
  "accelerometer-left.png",
  "accelerometer-right.png",
  "accelerometer-top.png",
  "breaking_change_icon.svg",
  "lighthouse_logo.svg",
  "checkboxCheckmark.svg",
  "checker.png",
  "chevrons.svg",
  "chromeDisabledSelect_2x.png",
  "chromeDisabledSelect.png",
  "chromeLeft.png",
  "chromeMiddle.png",
  "chromeRight.png",
  "chromeSelect_2x.png",
  "chromeSelect.png",
  "cssoverview_icons_2x.png",
  "elements_panel_icon.svg",
  "errorWave.svg",
  "ic_info_black_18dp.svg",
  "ic_show_node_16x16.svg",
  "ic_suggest_color.svg",
  "ic_warning_black_18dp.svg",
  "largeIcons.svg",
  "link_icon.svg",
  "mediumIcons.svg",
  "navigationControls_2x.png",
  "navigationControls.png",
  "network_panel_icon.svg",
  "nodeIcon.png",
  "node_search_icon.svg",
  "popoverArrows.png",
  "profileGroupIcon.png",
  "profileIcon.png",
  "profileSmallIcon.png",
  "radioDot-dark-theme.png",
  "radioDot.png",
  "resizeDiagonal.svg",
  "resizeHorizontal.svg",
  "resizeVertical.svg",
  "resourceCSSIcon.png",
  "resourceDocumentIcon.png",
  "resourceDocumentIconSmall.png",
  "resourceJSIcon.png",
  "resourcePlainIcon.png",
  "resourcePlainIconSmall.png",
  "resourcesTimeGraphIcon.png",
  "searchNext.png",
  "searchPrev.png",
  "securityIcons.svg",
  "smallIcons.svg",
  "speech.png",
  "toolbarResizerVertical.png",
  "touchCursor_2x.png",
  "touchCursor.png",
  "treeoutlineTriangles.svg",
  "whatsnew.png",
]

front_end_image_files = []

foreach(image, devtools_image_files) {
  front_end_image_files += [ "front_end/Images/$image" ]
}
