summaryrefslogtreecommitdiff
path: root/libcef/common/main_runner_delegate.h
blob: 2f9224ea40fe78df871ea75c077bdd5473f4296d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// Copyright 2020 The Chromium Embedded Framework Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CEF_LIBCEF_COMMON_MAIN_RUNNER_DELEGATE_H_
#define CEF_LIBCEF_COMMON_MAIN_RUNNER_DELEGATE_H_
#pragma once

#include "include/cef_app.h"

namespace base {
class RunLoop;
}

namespace content {
class ContentMainDelegate;
}

class CefMainRunnerDelegate {
 public:
  virtual content::ContentMainDelegate* GetContentMainDelegate() = 0;

  virtual void BeforeMainThreadInitialize(const CefMainArgs& args) {}
  virtual void BeforeMainThreadRun() {}
  virtual void BeforeMainMessageLoopRun(base::RunLoop* run_loop) {}
  virtual bool HandleMainMessageLoopQuit() { return false; }
  virtual void AfterUIThreadInitialize() {}
  virtual void AfterUIThreadShutdown() {}
  virtual void BeforeMainThreadShutdown() {}
  virtual void AfterMainThreadShutdown() {}
  virtual void BeforeExecuteProcess(const CefMainArgs& args) {}
  virtual void AfterExecuteProcess() {}

  virtual ~CefMainRunnerDelegate() {}
};

#endif  // CEF_LIBCEF_COMMON_MAIN_RUNNER_DELEGATE_H_