Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Animations] Clip to Display #1396

Open
Swivelgames opened this issue Dec 18, 2024 · 0 comments
Open

[Animations] Clip to Display #1396

Swivelgames opened this issue Dec 18, 2024 · 0 comments

Comments

@Swivelgames
Copy link

Swivelgames commented Dec 18, 2024

2024-12-18_17-30-42.mp4

My assumption is that this isn't really a bug, and likely a feature request. But it would be nice if certain animations could be "clipped" to a specific output.

animations = ({
	triggers = [ "open", "show" ];
	preset = "fly-in";
	direction = "left";
	duration = 0.1;
	clip = true; # or clipToOutput?
});

This might actually be the ideal default in most cases, so maybe if this is implemented, an option could be added to disable it in cases that people do in fact want the animation to occur across monitors?

animations = ({
	triggers = [ "open", "show" ];
	preset = "fly-in";
	direction = "left";
	duration = 0.1;
	noclip = true; # or disableOutputClip?
});

Platform

Arch Linux (Kernel: 6.12.4-zen1-1-zen)

GPU, drivers, and screen setup

Graphics Drivers and Libraries
amd-ucode					20241210.b00a7f7e-1
amd-vulkan-prefixes			2-1
amdgpu-pro-oglp				24.20_2044449-1
amdvlk						2024.Q4.2-1
amf-amdgpu-pro				24.20_2044449-1
lib32-amdgpu-pro-oglp		24.20_2044449-1
lib32-amdvlk				2024.Q4.2-1
lib32-libxxf86vm			1.1.5-2
lib32-mesa					1:24.3.1-3
lib32-vulkan-amdgpu-pro		24.20_2044449-1
lib32-vulkan-radeon			1:24.3.1-3
libxxf86vm					1.1.6-1
mesa						1:24.3.1-3
mesa-utils					9.0.0-5
vulkan-amdgpu-pro			24.20_2044449-1
vulkan-radeon				1:24.3.1-3
xf86-input-evdev			2.11.0-1
xf86-input-libinput			1.5.0-1
xf86-video-amdgpu			23.0.0-2
xf86-video-qxl				0.1.6-2

xrandr
Screen 0: minimum 320 x 200, current 3000 x 1920, maximum 16384 x 16384
DisplayPort-0 connected primary 1920x1080+1080+0 (normal left inverted right x axis y axis) 597mm x 336mm
   1920x1080     60.00 + 165.00*  143.85   120.00   100.00   119.88    84.62    60.00    50.00    59.94
   1680x1050     59.95
   1280x1024     75.02    60.02
   1440x900      59.89
   1280x800      60.00
   1280x720      60.00    50.00    59.94
   1024x768      75.03    70.07    60.00
   800x600       72.19    75.00    60.32    56.25
   720x576       50.00
   720x480       60.00    59.94
   640x480       75.00    72.81    66.67    60.00    59.94
DisplayPort-1 connected 1080x1920+0+0 right (normal left inverted right x axis y axis) 597mm x 336mm
   1920x1080     60.00 + 165.00   143.85   120.00   100.00   119.88    84.62    60.00*   50.00    59.94
   1680x1050     59.95
   1280x1024     75.02    60.02
   1440x900      59.89
   1280x800      60.00
   1280x720      60.00    50.00    59.94
   1024x768      75.03    70.07    60.00
   800x600       72.19    75.00    60.32    56.25
   720x576       50.00
   720x480       60.00    59.94
   640x480       75.00    72.81    66.67    60.00    59.94
DisplayPort-2 disconnected (normal left inverted right x axis y axis)
HDMI-A-0 disconnected (normal left inverted right x axis y axis)
glxinfo -B
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: AMD (0x1002)
    Device: AMD Radeon RX 6750 XT (radeonsi, navi22, LLVM 18.1.8, DRM 3.59, 6.12.4-zen1-1-zen) (0x73df)
    Version: 24.3.1
    Accelerated: yes
    Video memory: 12288MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 4.6
    Max compat profile version: 4.6
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 9748 MB, largest block: 9748 MB
    VBO free aux. memory - total: 31470 MB, largest block: 31470 MB
    Texture free memory - total: 9748 MB, largest block: 9748 MB
    Texture free aux. memory - total: 31470 MB, largest block: 31470 MB
    Renderbuffer free memory - total: 9748 MB, largest block: 9748 MB
    Renderbuffer free aux. memory - total: 31470 MB, largest block: 31470 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 12288 MB
    Total available memory: 44399 MB
    Currently available dedicated video memory: 9748 MB
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon RX 6750 XT (radeonsi, navi22, LLVM 18.1.8, DRM 3.59, 6.12.4-zen1-1-zen)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 24.3.1-arch1.3
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6 (Compatibility Profile) Mesa 24.3.1-arch1.3
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 24.3.1-arch1.3
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

Environment

i3

picom version

v12 (revision fcb4a2d)

Diagnostics
**Version:** v12 (revision fcb4a2d)

### X extensions:

* GLX: present
* Present: present
* RandR: present
* Shape: present
* Sync: present

### Misc:

* Use Overlay: No
  (Another compositor is already running)
* Config file specified: None
* Config file used: ~/.config/picom/picom.conf

### Drivers (inaccurate):

AMDGPU, Radeon

### Backend: egl

* Driver vendors:
 * EGL: Mesa Project
 * EGL driver: radeonsi
 * GL: AMD
* GL renderer: AMD Radeon RX 6750 XT (radeonsi, navi22, LLVM 18.1.8, DRM 3.59, 6.12.4-zen1-1-zen)

### Backend: glx

* Driver vendors:
 * GLX: Mesa Project and SGI
 * GL: AMD
* GL renderer: AMD Radeon RX 6750 XT (radeonsi, navi22, LLVM 18.1.8, DRM 3.59, 6.12.4-zen1-1-zen)
* Accelerated: 1

Configuration:

Configuration file

Relevant portion:

animations = ({
	triggers = [ "open", "show" ];
	preset = "fly-in";
	direction = "left";
	duration = 0.1;
}, {
	triggers = [ "close", "hide" ];
	preset = "fly-out";
	direction = "right";
	duration = 0.1;
}, {
	triggers = [ "geometry" ];
	preset = "geometry-change";
	duration = 0.1;
});

Steps of reproduction

  1. Enable fly-in and fly-out animations with latest version of picom
  2. Change Workspaces

Expected behavior

  • Fly-in/Fly-out animation will be clipped to the display

Current Behavior

  • Fly-in/Fly-out animation spans across both displays in multihead setup
@Swivelgames Swivelgames changed the title [Animations] Optionally Clip to Display [Animations] Clip to Display Dec 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant