chromium/chrome/browser/web_applications/web_app_launch_queue.cc

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "chrome/browser/web_applications/web_app_launch_queue.h"

#include <memory>
#include <utility>
#include <vector>

#include "base/files/file_path.h"
#include "base/memory/ptr_util.h"
#include "build/chromeos_buildflags.h"
#include "chrome/browser/web_applications/web_app_registrar.h"
#include "content/public/browser/file_system_access_entry_factory.h"
#include "content/public/browser/navigation_handle.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/storage_partition.h"
#include "content/public/browser/web_contents.h"
#include "extensions/common/constants.h"
#include "mojo/public/cpp/bindings/associated_remote.h"
#include "storage/browser/file_system/external_mount_points.h"
#include "third_party/blink/public/common/associated_interfaces/associated_interface_provider.h"
#include "third_party/blink/public/common/storage_key/storage_key.h"
#include "third_party/blink/public/mojom/file_system_access/file_system_access_directory_handle.mojom.h"
#include "third_party/blink/public/mojom/web_launch/web_launch.mojom.h"
#include "url/origin.h"

namespace web_app {

namespace {

// On Chrome OS paths that exist on an external mount point need to be treated
// differently to make sure the File System Access code accesses these paths via
// the correct file system backend. This method checks if this is the case, and
// updates `entry_path` to the path that should be used by the File System
// Access implementation.
content::FileSystemAccessEntryFactory::PathType MaybeRemapPath(
    base::FilePath* entry_path) {}

class EntriesBuilder {};

// TODO(crbug.com/40169582): Add Lacros support.
// TODO(crbug.com/40169582): Consider adding an {extension, pwa} enum to
// `launch_params` instead of checking the scheme specifically for extensions?
bool IsExtensionURL(const GURL& gurl) {}

}  // namespace

WebAppLaunchQueue::WebAppLaunchQueue(content::WebContents* web_contents,
                                     const WebAppRegistrar& registrar)
    :{}

WebAppLaunchQueue::~WebAppLaunchQueue() = default;

void WebAppLaunchQueue::Enqueue(WebAppLaunchParams launch_params) {}

bool WebAppLaunchQueue::IsInScope(const WebAppLaunchParams& launch_params,
                                  const GURL& current_url) {}

void WebAppLaunchQueue::Reset() {}

const webapps::AppId* WebAppLaunchQueue::GetPendingLaunchAppId() const {}

void WebAppLaunchQueue::DidFinishNavigation(content::NavigationHandle* handle) {}

void WebAppLaunchQueue::SendQueuedLaunchParams(const GURL& current_url) {}

void WebAppLaunchQueue::SendLaunchParams(WebAppLaunchParams launch_params,
                                         const GURL& current_url) {}

}  // namespace web_app