
The methodology used to generate this CL is documented in https://crbug.com/1098010#c34. No-Try: true No-Presubmit: true Bug: 1098010 Change-Id: I8c0f009d16350271f07d8e5e561085822cc9dd27 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3895935 Owners-Override: Avi Drissman <avi@chromium.org> Reviewed-by: Mark Mentovai <mark@chromium.org> Commit-Queue: Mark Mentovai <mark@chromium.org> Auto-Submit: Avi Drissman <avi@chromium.org> Cr-Commit-Position: refs/heads/main@{#1047456}
39 lines
1.1 KiB
C++
39 lines
1.1 KiB
C++
// Copyright 2015 The Chromium Authors
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#include "content/browser/font_service.h"
|
|
|
|
#include "base/no_destructor.h"
|
|
#include "base/task/thread_pool.h"
|
|
#include "components/services/font/font_service_app.h"
|
|
|
|
namespace content {
|
|
|
|
namespace {
|
|
|
|
base::SequencedTaskRunner* GetServiceTaskRunner() {
|
|
static base::NoDestructor<scoped_refptr<base::SequencedTaskRunner>>
|
|
task_runner{base::ThreadPool::CreateSequencedTaskRunner(
|
|
{base::MayBlock(), base::WithBaseSyncPrimitives(),
|
|
base::TaskPriority::USER_BLOCKING})};
|
|
return task_runner->get();
|
|
}
|
|
|
|
void BindToBackgroundFontService(
|
|
mojo::PendingReceiver<font_service::mojom::FontService> receiver) {
|
|
static base::NoDestructor<font_service::FontServiceApp> service;
|
|
service->BindReceiver(std::move(receiver));
|
|
}
|
|
|
|
} // namespace
|
|
|
|
void ConnectToFontService(
|
|
mojo::PendingReceiver<font_service::mojom::FontService> receiver) {
|
|
GetServiceTaskRunner()->PostTask(
|
|
FROM_HERE,
|
|
base::BindOnce(&BindToBackgroundFontService, std::move(receiver)));
|
|
}
|
|
|
|
} // namespace content
|