tdesktop icon indicating copy to clipboard operation
tdesktop copied to clipboard

Remove smooth scrolling in profiles when "Interface Animations" setting is disabled

Open i-walk-away opened this issue 1 month ago • 4 comments

disabling "Interface Animations" option in battery settings does not disable the smooth scrolling in profiles. experimental option "Use legacy scroll processing in profiles" does not disable it either. smooth scrolling is not present in any other scrollable interface element except for just profiles, which makes it inconsistent across the application

Expected behavior

disabling "Interface animations" also should disable smooth scrolling in profiles

Factual behavior

smooth scrolling in profiles is unaffected by any setting

Implementation

disable smooth scrolling animation in profile pages when Interface Animations setting is turned off in battery saving settings. the fix checks anim::Disabled() before starting scroll animations in setupScrollHandling() and setupScrollHandlingWithFilter() methods

i have reviewed how the check for disabled Interface Animations is implemented in other parts of the source code to make sure that my changes are consistent with the already existing patterns, and it was, in fact, a simple "if else" check for anim::Disabled(), so i did just that

i-walk-away avatar Nov 21 '25 16:11 i-walk-away

CLA assistant check
All committers have signed the CLA.

CLAassistant avatar Nov 21 '25 16:11 CLAassistant

experimental option "Use legacy scroll processing in profiles" does not disable it either

Yeah, looks like it just switches between different smooth scroll impls

ilya-fedin avatar Nov 22 '25 11:11 ilya-fedin

I would say, if we want to disable the smooth scrolling, we should check anim::Disabled before this snippet.

	if (AlternativeScrollProcessing.value()) {
		setupScrollHandling();
	} else {
		setupScrollHandlingWithFilter();
	}

23rd avatar Nov 22 '25 11:11 23rd

I would say, if we want to disable the smooth scrolling, we should check anim::Disabled before this snippet.

	if (AlternativeScrollProcessing.value()) {
		setupScrollHandling();
	} else {
		setupScrollHandlingWithFilter();
	}

sounds valid

i-walk-away avatar Nov 22 '25 11:11 i-walk-away