renderer: add more uniforms to the screen shader (#11986)
These are: pointer_shape from the cursor-shape-v1 protocol prepared for v2, along with left_ptr...bottom_right_corner and killing (Hyprland specific)
pointer_shape_previous with
pointer_switch_time to blend between shapes
pointer_size scaled size as used by the normal cursor
pointer_pressed_positions[32] with
pointer_pressed_times[32] and
pointer_pressed_killed(32 bits) for click/touch animations and if they killed something
pointer_inactive_timeout with
pointer_last_active to smoothly fade the pointer out
pointer_hidden to hide it when the cursor is hidden (excluding by cursor:invisible as this config value can be used to turn off the normal cursor, which is useful when drawing it with the screen shader)
This commit is contained in:
parent
474cd004df
commit
46dab01bcc
11 changed files with 215 additions and 25 deletions
|
|
@ -390,6 +390,12 @@ class CHyprOpenGLImpl {
|
|||
void initMissingAssetTexture();
|
||||
void requestBackgroundResource();
|
||||
|
||||
// for the final shader
|
||||
std::array<CTimer, POINTER_PRESSED_HISTORY_LENGTH> m_pressedHistoryTimers = {};
|
||||
std::array<Vector2D, POINTER_PRESSED_HISTORY_LENGTH> m_pressedHistoryPositions = {};
|
||||
GLint m_pressedHistoryKilled = 0;
|
||||
GLint m_pressedHistoryTouched = 0;
|
||||
|
||||
//
|
||||
std::optional<std::vector<uint64_t>> getModsForFormat(EGLint format);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue