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

Make sure to add the Windows Phone 8.1-style transition animations and add a way to turn them off if people don't like them or they're slow. #5

Open
DrewNaylor opened this issue Apr 15, 2021 · 4 comments

Comments

@DrewNaylor
Copy link
Owner

The 8.0 animations made me sick to my stomach after using 8.1 for a while, so that's why I'm doing the 8.1 ones. There are also transition animations when opening apps or going back to the previous app from the Start screen, so I have to be sure to implement those as well.

@DrewNaylor
Copy link
Owner Author

DrewNaylor commented Oct 12, 2021

You know what, I think the best way to implement this (at least for now) is by creating a Wayfire plugin that "swings" apps into view from (what looks like) the background on the left side. Apps that are opening other apps or other pages (like QML push/pop) will have to implement the "swinging" animation by themselves, but I'll make sure it's easy to add that to both third-party and first-party apps, at least for QML-based ones (apps using other toolkits will have to have to have the animation translated to that toolkit). I'll have to check how this works with the Start screen, but I think it just has an extra-fancy "swinging out" animation, then apps do a standard "swing in". Hopefully there's already a Wayfire plugin I can either customize or modify.

@DrewNaylor
Copy link
Owner Author

Didn't think about this earlier, but I think I'm going to have to have a solid color behind the apps as they "swing" in so the animation is accurate. A hacky way of doing it is to just change the Wayfire desktop wallpaper to a solid color image to handle both light and dark themes. Not all apps will use black or white for their main background though (plus it would look bad with a solid color wallpaper in docked mode, as I'd prefer to have the user's tile background show up if they want or use their accent color, or even use a different image altogether), so there has to be a way to know the size of the window beforehand and draw a background "behind" the window's final position. Not sure how to allow for using colors other than black or white based on what an app wants at runtime, but maybe I could create an API that apps would hook into in the "swinging" animation plugin that would allow them to specify the background rectangle's color so it's not just black or white. At the very least, the rectangle should be black when using the dark theme and white when using the light theme.

Some apps actually didn't use the "swinging" animation, like Cortana, in which case the animation plugin would probably just not animate those apps.

@DrewNaylor
Copy link
Owner Author

As mentioned in the last comment, some apps like Cortana didn't use a swing-in animation. However, some did use a fancier swing-in animation, so I need to figure out a way to let apps suppress the Wayfire animation plugin and do the animation themselves if they want to. The main ones I can think of are apps that use Pivots/Hubs, such as the WP8.0 Photos Hub app. Those apps will partially show stuff in parts of the app that aren't the main area as they're swinging in.

If an app doesn't say that it wants to override the animation or the user doesn't override it manually for that app, then the app will be subject to the swing-in animation, and maybe even a swing-out animation if I can set up the Start button properly. Of course, the user will always be able to choose a different animation or tweak the ones I provide, as customization where possible is the goal.

DrewNaylor added a commit that referenced this issue Nov 26, 2021
@DrewNaylor
Copy link
Owner Author

I forgot about this, but often there would be other page transition animations besides the swinging one, with one particular one being when tapping an email and the sender's name moves slightly up and off the right side of the screen, then circles back in to the final location by going slightly up and left to the name area. Obviously, the animation destinations will differ based on where the text is.

I think it might make more sense for the name to move directly to where it's supposed to go, without going offscreen first. Maybe it can circle to where it's supposed to go if possible, or maybe it goes offscreen because it's easier for development so they don't have to keep it always displayed through loading different pages.

The reason why there are different animations is because having everything be swinging would be too overwhelming for the users, from what I heard in a Mix11 video.

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