mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-29 15:52:07 +00:00
a606cd8b60
This version of the Dynamic Toolbar moves the animation of the toolbar from the Android UI thread to the compositor thread. All animation for showing and hiding the toolbar are done with the compositor and a static snapshot of the real toolbar. MozReview-Commit-ID: BCe8zpbkWQt
44 lines
1.3 KiB
C++
44 lines
1.3 KiB
C++
/* -*- Mode: c++; c-basic-offset: 4; tab-width: 20; indent-tabs-mode: nil; -*-
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#ifndef mozilla_widget_AndroidCompositorWidget_h
|
|
#define mozilla_widget_AndroidCompositorWidget_h
|
|
|
|
#include "GLContext.h"
|
|
#include "GLLibraryEGL.h"
|
|
#include "GLTypes.h"
|
|
#include "mozilla/widget/InProcessCompositorWidget.h"
|
|
|
|
struct ANativeWindow;
|
|
|
|
namespace mozilla {
|
|
namespace widget {
|
|
|
|
/**
|
|
* AndroidCompositorWidget inherits from InProcessCompositorWidget because
|
|
* Android does not support OOP compositing yet. Once it does,
|
|
* AndroidCompositorWidget will be made to inherit from CompositorWidget
|
|
* instead.
|
|
*/
|
|
class AndroidCompositorWidget final : public InProcessCompositorWidget
|
|
{
|
|
public:
|
|
using InProcessCompositorWidget::InProcessCompositorWidget;
|
|
|
|
AndroidCompositorWidget* AsAndroid() override { return this; }
|
|
|
|
EGLNativeWindowType GetEGLNativeWindow();
|
|
|
|
EGLSurface GetPresentationEGLSurface();
|
|
void SetPresentationEGLSurface(EGLSurface aVal);
|
|
|
|
ANativeWindow* GetPresentationANativeWindow();
|
|
};
|
|
|
|
} // namespace widget
|
|
} // namespace mozilla
|
|
|
|
#endif // mozilla_widget_AndroidCompositorWidget_h
|