chromium/chrome/browser/ash/crosapi/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/crosapi",

  # 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/app_mode",
  "+chrome/browser/apps/almanac_api_client",
  "+chrome/browser/apps/app_service",
  "+chrome/browser/apps/browser_instance",
  "+chrome/browser/apps/digital_goods",
  "+chrome/browser/ash/accessibility",
  "+chrome/browser/ash/app_list",
  "+chrome/browser/ash/app_mode",
  "+chrome/browser/ash/app_restore",
  "+chrome/browser/ash/apps",
  "+chrome/browser/ash/arc",
  "+chrome/browser/ash/attestation",
  "+chrome/browser/ash/cert_provisioning",
  "+chrome/browser/ash/drive",
  "+chrome/browser/ash/fileapi",
  "+chrome/browser/ash/file_manager",
  "+chrome/browser/ash/file_system_provider",
  "+chrome/browser/ash/floating_workspace",
  "+chrome/browser/ash/guest_os",
  "+chrome/browser/ash/input_method",
  "+chrome/browser/ash/kcer",
  "+chrome/browser/ash/login",
  "+chrome/browser/ash/magic_boost",
  "+chrome/browser/ash/mahi",
  "+chrome/browser/ash/net",
  "+chrome/browser/ash/network_change_manager",
  "+chrome/browser/ash/notifications",
  "+chrome/browser/ash/passkeys",
  "+chrome/browser/ash/platform_keys",
  "+chrome/browser/ash/plugin_vm",
  "+chrome/browser/ash/policy/core",
  "+chrome/browser/ash/policy/dlp",
  "+chrome/browser/ash/policy/handlers",
  "+chrome/browser/ash/policy/multi_screen_capture",
  "+chrome/browser/ash/printing",
  "+chrome/browser/ash/privacy_hub",
  "+chrome/browser/ash/profiles",
  "+chrome/browser/ash/remote_apps",
  "+chrome/browser/ash/scanning",
  "+chrome/browser/ash/settings",
  "+chrome/browser/ash/smart_reader",
  "+chrome/browser/ash/sync",
  "+chrome/browser/ash/system",
  "+chrome/browser/ash/system_web_apps",
  "+chrome/browser/ash/trusted_vault",
  "+chrome/browser/ash/video_conference",
  "+chrome/browser/ash/wallpaper_handlers",
  "+chrome/browser/browser_process.h",
  "+chrome/browser/browser_process_platform_part_ash.h",
  "+chrome/browser/browser_process_platform_part.h",
  "+chrome/browser/certificate_provider",
  "+chrome/browser/chromeos/extensions/file_system_provider",
  "+chrome/browser/chromeos/extensions/login_screen/login",
  "+chrome/browser/chromeos/platform_keys",
  "+chrome/browser/chromeos/policy/dlp",
  "+chrome/browser/component_updater",
  "+chrome/browser/device_identity",
  "+chrome/browser/extensions/api/image_writer_private",
  "+chrome/browser/extensions/api/printing",
  "+chrome/browser/extensions/extension_apitest.h",
  "+chrome/browser/extensions/extension_keeplist_chromeos.h",
  "+chrome/browser/extensions/forced_extensions",
  "+chrome/browser/feedback/show_feedback_page.h",
  "+chrome/browser/file_system_access/cloud_identifier",
  "+chrome/browser/lifetime",
  "+chrome/browser/media/router/discovery/access_code",
  "+chrome/browser/metrics",
  "+chrome/browser/net",
  "+chrome/browser/notifications",
  "+chrome/browser/platform_util.h",
  "+chrome/browser/policy",
  "+chrome/browser/prefs",
  "+chrome/browser/printing",
  "+chrome/browser/profiles",
  "+chrome/browser/screen_ai",
  "+chrome/browser/sharesheet",
  "+chrome/browser/signin",
  "+chrome/browser/speech",
  "+chrome/browser/task_manager",
  "+chrome/browser/ui/ash",
  "+chrome/browser/ui/browser_commands.h",
  "+chrome/browser/ui/browser.h",
  "+chrome/browser/ui/browser_list.h",
  "+chrome/browser/ui/browser_navigator.h",
  "+chrome/browser/ui/browser_navigator_params.h",
  "+chrome/browser/ui/browser_window.h",
  "+chrome/browser/ui/chrome_pages.h",
  "+chrome/browser/ui/settings_window_manager_chromeos.h",
  "+chrome/browser/ui/views/task_manager_view.h",
  "+chrome/browser/ui/web_applications/test",
  "+chrome/browser/ui/webui/ash/app_install",
  "+chrome/browser/ui/webui/ash/cloud_upload",
  "+chrome/browser/ui/webui/ash/kerberos",
  "+chrome/browser/ui/webui/ash/parent_access",
  "+chrome/browser/ui/webui/chrome_web_ui_controller_factory.h",
  "+chrome/browser/ui/webui/management",
  "+chrome/browser/web_applications/preinstalled_web_app_config_utils.h",
  "+chrome/browser/web_applications/preinstalled_web_app_utils.h",
  "+chrome/browser/web_applications/test",
  "+chrome/browser/web_applications/web_app_id_constants.h",
  "+chrome/browser/web_applications/web_app_provider.h",
  "+chrome/browser/web_applications/web_app_ui_manager.h",
  "+chrome/browser/web_applications/web_app_utils.h",
  "+chrome/browser/web_applications/user_uninstalled_preinstalled_web_app_prefs.h",
  "+chrome/common/chrome_constants.h",
  "+chrome/common/chrome_features.h",
  "+chrome/common/chrome_paths.h",
  "+chrome/common/chrome_switches.h",
  "+chrome/common/extensions",
  "+chrome/common/logging_chrome.h",
  "+chrome/common/media",
  "+chrome/common/pref_names.h",
  "+chrome/common/printing",
  "+chrome/common/ref_counted_util.h",
  "+chrome/common/url_constants.h",
  "+chrome/common/webui_url_constants.h",
  "+chrome/test/base",
]

specific_include_rules = {
  "crosapi_ash\.cc": [
    "+services/video_capture/ash",
  ],
  "crosapi_ash\.h": [
    "+media/gpu/buildflags.h",
  ],
  "eye_dropper_ash\.cc": [
    "+components/eye_dropper",
  ],
  "message_center_ash(\.cc|_unittest\.cc)": [
    # Provides a mojo interface around the message center, but lives in this
    # directory for consistency with other crosapi classes.
    "-chrome",
    "+chrome/browser/ash/crosapi",
    "+ui/message_center/message_center.h",
  ],
  "power_ash\.cc": [
    "+services/device/wake_lock/power_save_blocker/power_save_blocker.h",
  ],
  "remoting_ash\.cc": [
    # For remote support functionality.
    "+remoting/host/chromeos",
  ],
  "screen_manager_ash\.cc": [
    "+services/video_capture/ash",
  ],
  "select_file_ash\.cc": [
    # For Chrome OS-specific file manager parameters.
    "+chrome/browser/ui/views/select_file_dialog_extension.h",
  ],
  "test_controller_ash\.cc": [
    # For Chrome OS-specific tab scrubbing tests.
    "+chrome/browser/ui/views/tabs/tab_scrubber_chromeos.h",
  ],
}