mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-24 17:37:30 +09:00
Issue #80- De-unify gfx/layers
Excludes layers/ipc/CompositorBridgeParent and CrossProcessCompositorBridgeParent because the latter purposely uses functions implemented in the former. See also code comment in CrossProcessCompositorBridgeParent.cpp Note: likely dead code for us anyway; likely not worth investing in to solve.
This commit is contained in:
parent
cdd925c155
commit
b8d9e7b8c0
15 changed files with 61 additions and 29 deletions
|
|
@ -85,6 +85,21 @@ struct APZCTreeManager::TreeBuildingState {
|
|||
std::map<ScrollableLayerGuid, AsyncPanZoomController*> mApzcMap;
|
||||
};
|
||||
|
||||
// Returns whether or not a wheel event action will be (or was) performed by
|
||||
// APZ. If this returns true, the event must not perform a synchronous
|
||||
// scroll.
|
||||
//
|
||||
// Even if this returns false, all wheel events in APZ-aware widgets must
|
||||
// be sent through APZ so they are transformed correctly for TabParent.
|
||||
static bool
|
||||
WillHandleWheelEvent(WidgetWheelEvent* aEvent)
|
||||
{
|
||||
return EventStateManager::WheelEventIsScrollAction(aEvent) &&
|
||||
(aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_LINE ||
|
||||
aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PIXEL ||
|
||||
aEvent->mDeltaMode == nsIDOMWheelEvent::DOM_DELTA_PAGE);
|
||||
}
|
||||
|
||||
class APZCTreeManager::CheckerboardFlushObserver : public nsIObserver {
|
||||
public:
|
||||
NS_DECL_ISUPPORTS
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@
|
|||
#include "mozilla/ClearOnShutdown.h" // for ClearOnShutdown
|
||||
#include "mozilla/ComputedTimingFunction.h" // for ComputedTimingFunction
|
||||
#include "mozilla/EventForwards.h" // for nsEventStatus_*
|
||||
#include "mozilla/EventStateManager.h"
|
||||
#include "mozilla/MouseEvents.h" // for WidgetWheelEvent
|
||||
#include "mozilla/Preferences.h" // for Preferences
|
||||
#include "mozilla/ReentrantMonitor.h" // for ReentrantMonitorAutoEnter, etc
|
||||
|
|
@ -44,6 +45,7 @@
|
|||
#include "mozilla/dom/Touch.h" // for Touch
|
||||
#include "mozilla/gfx/BasePoint.h" // for BasePoint
|
||||
#include "mozilla/gfx/BaseRect.h" // for BaseRect
|
||||
#include "mozilla/gfx/Coord.h"
|
||||
#include "mozilla/gfx/Point.h" // for Point, RoundedToInt, etc
|
||||
#include "mozilla/gfx/Rect.h" // for RoundedIn
|
||||
#include "mozilla/gfx/ScaleFactor.h" // for ScaleFactor
|
||||
|
|
@ -102,7 +104,12 @@ typedef GeckoContentController::APZStateChange APZStateChange;
|
|||
typedef GeckoContentController::TapType TapType;
|
||||
typedef mozilla::gfx::Point Point;
|
||||
typedef mozilla::gfx::Matrix4x4 Matrix4x4;
|
||||
using mozilla::gfx::CoordTyped;
|
||||
using mozilla::gfx::IntCoordTyped;
|
||||
using mozilla::gfx::IntRectTyped;
|
||||
using mozilla::gfx::PointTyped;
|
||||
using mozilla::gfx::RectTyped;
|
||||
using mozilla::gfx::ScaleFactors2D;
|
||||
|
||||
// Choose between platform-specific implementations.
|
||||
#ifdef MOZ_WIDGET_ANDROID
|
||||
|
|
@ -833,7 +840,9 @@ AsyncPanZoomController::ArePointerEventsConsumable(TouchBlockState* aBlock, uint
|
|||
}
|
||||
|
||||
template <typename Units>
|
||||
static CoordTyped<Units> GetAxisStart(AsyncDragMetrics::DragDirection aDir, const PointTyped<Units>& aValue) {
|
||||
static CoordTyped<Units> GetAxisStart(
|
||||
AsyncDragMetrics::DragDirection aDir,
|
||||
const PointTyped<Units>& aValue) {
|
||||
if (aDir == AsyncDragMetrics::HORIZONTAL) {
|
||||
return aValue.x;
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@
|
|||
#include "mozilla/SizePrintfMacros.h" // for PRIuSIZE
|
||||
#include "nsDebug.h" // for NS_WARNING
|
||||
#include "nsMathUtils.h" // for NS_hypot
|
||||
#include "InputBlockState.h" // for TouchBlockState
|
||||
|
||||
#define GEL_LOG(...)
|
||||
// #define GEL_LOG(...) printf_stderr("GEL: " __VA_ARGS__)
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@
|
|||
#include "mozilla/TimeStamp.h" // for TimeStamp
|
||||
#include "nsTArray.h" // for nsTArray
|
||||
#include "TouchCounter.h"
|
||||
#include "OverscrollHandoffState.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace layers {
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#define mozilla_layers_ContentProcessController_h
|
||||
|
||||
#include "mozilla/layers/GeckoContentController.h"
|
||||
#include "mozilla/dom/ipc/IdType.h"
|
||||
|
||||
class nsIObserver;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue