chromium/chrome/browser/ash/input_method/DEPS

include_rules = [
  # ChromeOS should not depend on //chrome. See //docs/chromeos/code.md for
  # details.
  "-chrome",

  # This directory is in //chrome, which violates the rule above. Allow this
  # directory to #include its own files.
  "+chrome/browser/ash/input_method",

  # Existing dependencies within //chrome. There is an active effort to
  # refactor //chrome/browser/ash to break these dependencies; see b/332804822.
  # Whenever possible, avoid adding new //chrome dependencies to this list.
  #
  # Files residing in certain directories (e.g., //chrome/browser) are listed
  # individually. Other dependencies within //chrome are listed on a per-
  # directory basis. See //tools/chromeos/gen_deps.sh for details.
  "+chrome/browser/ash/crosapi",
  "+chrome/browser/ash/file_manager",
  "+chrome/browser/ash/login/demo_mode",
  "+chrome/browser/ash/login/session",
  "+chrome/browser/ash/magic_boost/magic_boost_controller_ash.h",
  "+chrome/browser/ash/profiles",
  "+chrome/browser/browser_process.h",
  "+chrome/browser/browser_process_platform_part_ash.h",
  "+chrome/browser/extensions/component_loader.h",
  "+chrome/browser/extensions/extension_service.h",
  "+chrome/browser/feedback",
  "+chrome/browser/lifetime",
  "+chrome/browser/manta",
  "+chrome/browser/metrics",
  "+chrome/browser/policy",
  "+chrome/browser/profiles",
  "+chrome/browser/signin",
  "+chrome/browser/ui/ash/input_method",
  "+chrome/browser/ui/ash/keyboard",
  "+chrome/browser/ui/aura/accessibility",
  "+chrome/browser/ui/browser_finder.h",
  "+chrome/browser/ui/browser_window.h",
  "+chrome/browser/ui/browser.h",
  "+chrome/browser/ui/settings_window_manager_chromeos.h",
  "+chrome/browser/ui/webui/ash/mako",
  "+chrome/browser/ui/webui/ash/settings/search",
  "+chrome/browser/web_applications/web_app_id_constants.h",
  "+chrome/common/channel_info.h",
  "+chrome/common/chrome_features.h",
  "+chrome/common/chrome_paths.h",
  "+chrome/common/extensions",
  "+chrome/common/pref_names.h",
  "+chrome/grit",

  # Dependencies outside of //chrome:
  "-content",
]

specific_include_rules = {
  # The configuration layer.
  "(input_method_delegate_impl|input_method_persistence|browser_state_monitor)"
  "\.(h|cc)": [
    "+chrome/common",
    "+chrome/browser",
    "+chrome/test",
    "+content/public",
  ],

  # For testing.
  ".*(_browsertest|_browsertests|_unittest|_test_helper)\.(h|cc)": [
    "+chrome/common",
    "+chrome/browser",
    "+chrome/test",
    "+content/public",
    "+mojo/core/embedder/embedder.h",
  ],
  "xkeyboard_unittest\.cc": [
    "!content/public/test/test_browser_thread.h",
  ],

  # TODO: This should not be an allowed dep; see
  # http://crbug.com/1148093 and
  # http://b/173144152.
  "tts_handler\.h": [
    "!content/public/browser/tts_controller.h",
  ],

  # TODO: input method owners should audit this block.
  "(input|ime|editor).*\.(h|cc)": [
    "+content/public/browser",
  ],
}