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

ShellClients: Use translation y instead of clone and gesturetransition for animation #2192

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

leolost2605
Copy link
Member

Split out from #2150 for easier review.

This introduces some inconsistencies when opening multitasking view and switching workspaces but these will be fixed properly by the follow ups from #2150.

The changes here include using the translation-y property of the window actor to hide it instead of making it invisible and animating a clone. Also included is the use of the GesturePropertyTransition for the actual animation and the related introduction of GestureTrackers. This is preparation for moving all panel hiding stuff to the shell clients (instead of the multitasking view doing its own thing with additional clones) as well as one to one touch gestures for showing the dock.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can't we use default_gesture_tracker instead of passing gesture_tracker into update_overlap and update_hidden?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will be needed once we hook up the multitasking view hide because we'll have to deal with multiple gesture trackers for hiding. It could either be the one from the multitasking view to hide/show in sync with that animation, it can be the one for the workspace switch (

When switching from a workspace where an autohide panel should hide to a workspace where it should show reveal it in sync with the switch animation (I think that's something we want?)

(from the gesture improvements issue)
Or it can be the "default" one which is used for hiding and showing due to barrier trigger, window got moved, etc. and will eventually handle the one to one swipe up gesture.

Comment on lines 100 to 101
private void show (GestureTracker gesture_tracker, bool with_gesture) {
if (!panel_hidden || last_gesture_tracker.recognizing) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here, PanelClone already has default_gesture_tracker, why do we pass it here again?

@leolost2605 leolost2605 requested a review from lenemter December 24, 2024 12:31
@leolost2605 leolost2605 force-pushed the leolost/panel-translation-y branch 3 times, most recently from 9d6076b to d1b7e6f Compare December 25, 2024 20:15
@leolost2605
Copy link
Member Author

@lenemter ok I've removed the gesturetracker passing from this commit so that it will make more sense in the commit history where we'll introduce it once we actually need it :)

@leolost2605 leolost2605 force-pushed the leolost/panel-translation-y branch from d1b7e6f to b1668ed Compare December 25, 2024 20:50
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

Successfully merging this pull request may close these issues.

2 participants