On Sun, 14 Jun 2026 16:58:05 GMT, Marius Hanl <[email protected]> wrote:
>>> The question whether reducedMotion should override animated or if it should >>> be the other way around is indeed a very good question >> >> I was also wondering how we want to handle or retrofit that. But ... >> >>> I'd interpret it differently: Chart.setAnimated(true) doesn't necessarily >>> mean that the animation must be forced to run, no matter what. For me, >>> another interpretation makes more sense: that the author intended for the >>> animation to run, but not if the user clearly expressed that they don't >>> want animations. Mind you: the author still has full control to ignore the >>> users's wish by just setting Scene.Preferences.setReducedMotion(false). >> >> This convinced me and makes sense. >> >> When I wrote JavaFX applications, I would, for example, enable animations >> for `TitledPane`s if I thought they looked good, and disable them if I did >> not think they fit (like in an `Accordion` with many panes - it just took to >> long to navigate through them). Same for for `Chart`s or `Tab`-closing >> animations. >> >> I often did things the way I thought was best for usablity and style. >> This does not mean every single User may likes that. It is always hard to >> get that right. >> >> So IMHO, it makes sense that we treat `setAnimated` as the developer choice. >> And `reducedMotion` as the user choice: >> They can decide if they want to see the animations I enabled. >> >>> In addition to the language used in the javadoc of the reducedMotion >>> property, some users also choose to reduce motion because they perceive it >>> to be >>> [faster](https://www.reddit.com/r/LifeProTips/comments/1expslr/lpt_if_you_want_your_windows_11_pc_to_feel_a) >>> and [snappier](https://news.ycombinator.com/item?id=33222434), so they >>> don't have to wait a few hundred milliseconds for the animation to >>> complete. This is a legitimate use case that we shouldn't dismiss. >> >> This is correct and I disabled Animations in Windows 11 for a long time >> because they took to long - it feels snappier without them. >> >> All that brings me to the same conclusion: We as a developer decide what we >> want to get animated and what we do not want to. The user can disable that >> completely with the `reducedMotion` preference and I think we should honor >> that. > >> For me, another interpretation makes more sense: that the author intended >> for the animation to run, but not if the user clearly expressed that they >> don't want animations. > > I'd just like to add that modern browsers work exactly this way. For example, > website developers often set smooth scrolling via CSS. However, your browser > will not use/honor it if `reducedMotion` is enabled (automatically). This > should leave no doubt that this PR is the right way forward. > @Maran23 perhaps we should add these checks to the test suite? Sure, can create a ticket when I have some time. (Also had some ideas regarding `ComboBoxTest` in the PR from Christopher - maybe a ticket to add or improve some tests even?). ------------- PR Comment: https://git.openjdk.org/jfx/pull/2177#issuecomment-4711370524
