Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pointer_dispatch.hpp File Reference
#include <pulp/view/overlay_dismissal.hpp>
#include <pulp/view/view.hpp>
#include <cstdint>
#include <functional>
#include <string>

Go to the source code of this file.

Classes

struct  pulp::view::PointerAttributes
 Device identity of the pointer a delivery verb is dispatching, stamped onto every MouseEvent the verb builds (including the ancestor-bubble copies). More...
struct  pulp::view::WheelHost
 Host hooks the portable wheel router calls back into. More...
struct  pulp::view::MouseDownHost
 Optional host-owned continuation check for re-entrant press delivery. More...
struct  pulp::view::MouseUpHost
 Host hooks the portable mouse-up router calls back into. More...

Namespaces

namespace  pulp
namespace  pulp::view
 Hover-cursor tracking for platform window hosts.

Functions

Point pulp::view::point_to_local (Point root_pos, View *target, View *root)
 Convert root_pos (root-local, i.e.
void pulp::view::dispatch_dom_pointer_event (View &root, View *target, const MouseEvent &event, bool moving, bool bubble=true)
 Enter rich + JS pointer delivery from a platform host.
bool pulp::view::dispatch_context_menu (View &root, Point root_pos)
 Route a right-click at root_pos to the view under it.
bool pulp::view::dispatch_context_menu (View &root, View *target, Point root_pos)
 Route a context menu to an already-resolved pointer target.
bool pulp::view::should_yield_to_gesture (View &root, const MouseEvent &event)
 Feed one pointer event to root's gesture arbiter and report whether the host must now YIELD — i.e.
bool pulp::view::yield_to_gesture_with_handoff (View &root, View *&drag_target, const MouseEvent &event, int click_count=1)
 Apply the host-side gesture gate and close an already-delivered press when a recognizer claims after that press.
bool pulp::view::transfer_input_focus (View &root, View *target)
 Move input focus within one hosted root while tolerating callbacks that synchronously unmount either the previous or requested focus target.
View * pulp::view::focused_input_under_root (View &root)
 Return this root's live focused input.
void pulp::view::deliver_mouse_drag (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count=1, PointerType pointer_type=PointerType::mouse, float pressure=0.5f)
 Deliver one drag tick of an in-flight gesture to the captured target.
void pulp::view::deliver_mouse_drag (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, PointerType pointer_type, float pressure, MouseButton button)
 Button-aware overload.
void pulp::view::deliver_mouse_drag (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, MouseButton button, const PointerAttributes &pointer)
 Attribute-carrying overload — the only drag form that also carries pointer_id.
void pulp::view::deliver_hover_move (View &root, Point root_pt, uint16_t modifiers=0)
 Deliver one BUTTONLESS pointer move — a hover — to the view under root_pt, which is in root-view space.
void pulp::view::deliver_hover_move (View &root, Point root_pt, uint16_t modifiers, const PointerAttributes &pointer)
 Attribute-carrying hover overload, for a host that knows the pointer device (a trackpad/stylus hover) or reports movement deltas.
void pulp::view::deliver_mouse_wheel (View &root, Point root_pt, float scroll_delta_x, float scroll_delta_y, const WheelHost &host)
 Route one wheel/scroll tick to the view tree rooted at root.
void pulp::view::deliver_mouse_wheel (View &root, Point root_pt, float scroll_delta_x, float scroll_delta_y, uint16_t modifiers, const WheelHost &host)
 Attribute-carrying wheel delivery.
bool pulp::view::deliver_mouse_down (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count=1, bool bubble=true)
 Deliver a press to an already-resolved target (the host has done the hit_test, any combo/overlay pre-routing, and the focus protocol before calling in — those steps diverge per platform/host and stay host-side).
bool pulp::view::deliver_mouse_down (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, bool bubble, MouseButton button)
 Button-aware overload; the original ABI remains the left-button wrapper.
bool pulp::view::deliver_mouse_down (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, bool bubble, MouseButton button, const MouseDownHost &host)
 Guarded button-aware overload.
bool pulp::view::deliver_mouse_down (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, bool bubble, MouseButton button, const MouseDownHost &host, const PointerAttributes &pointer)
 Attribute-carrying overload.
void pulp::view::deliver_mouse_up (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, const MouseUpHost &host)
 Deliver a release for an in-flight gesture captured on target.
void pulp::view::deliver_mouse_up (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, const MouseUpHost &host, MouseButton button)
 Button-aware overload; the original ABI remains the left-button wrapper.
void pulp::view::deliver_mouse_up (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, const MouseUpHost &host, MouseButton button, const PointerAttributes &pointer)
 Attribute-carrying overload.
void pulp::view::deliver_mouse_cancel (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count, MouseButton button, const PointerAttributes &pointer={})
 Cancel an in-flight gesture through the same identity-safe terminal router as deliver_mouse_up.
void pulp::view::deliver_gesture_handoff (View &root, View *target, Point root_pt, uint16_t modifiers, int click_count)
 Close the press bracket when a recognizer CLAIMS the pointer mid-gesture, after a press was already delivered to target.