blob: e8777f28dd37e3670edebe2b03dc00d867abd1f3 [file] [log] [blame]
// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_ANDROID_VR_UI_MODULE_FACTORY_H_
#define CHROME_BROWSER_ANDROID_VR_UI_MODULE_FACTORY_H_
#include <memory>
#include "chrome/browser/android/vr/ui_factory.h"
namespace vr {
// The bundle-specific UI factory implementation. This variant handles opening
// of the native library from the DFM, and pulling required symbol(s) from it to
// construct a UI.
class UiModuleFactory : public UiFactory {
public:
std::unique_ptr<UiInterface> Create(
UiBrowserInterface* browser,
PlatformInputHandler* content_input_forwarder,
std::unique_ptr<KeyboardDelegate> keyboard_delegate,
std::unique_ptr<TextInputDelegate> text_input_delegate,
std::unique_ptr<AudioDelegate> audio_delegate,
const UiInitialState& ui_initial_state) override;
};
} // namespace vr
#endif // CHROME_BROWSER_ANDROID_VR_UI_MODULE_FACTORY_H_