From #1797856-10: Make toolbar non-sticky, keep it in page flow.

It's lots of JS, a major performance issues on pages with several of them (open a 300+ comment page on d.o and feel the slowness. Then do the same on mobile and wait for 20+ seconds for the page to finish loading).

Comments

nod_’s picture

Issue tags: +mobile

tag

ry5n’s picture

+1 on the idea, subject to usability testing. It’s a minor win with comparatively heavy performance costs.

nod_’s picture

StatusFileSize
new1.61 KB

permission page kinda useless without this, so alternate solution: sticky defaults to false.

Status: Needs review » Needs work

The last submitted patch, core-js-tableheader-2014309-3.patch, failed testing.

catch’s picture

iirc this was added specifically for the permiissions page.

Defaulting to FALSE seems obvious.

Is there are decent (or no worse than) library for this anywhere we could use instead of the custom JS? It's several years since it was added.

nod_’s picture

I refactored it not long ago, perf is much better than it used to be (especially on scoll events). The alternate future-facing solution would be position: sticky as shown in #1764912-10: Fix regressions and further improve tableheader.js but that's not really widespread: http://updates.html5rocks.com/2012/08/Stick-your-landings-position-stick...

wim leers’s picture

Issue tags: +Novice

+1 to default to false. Test fixes should be trivial.

nod_’s picture

Title: Drop sticky table headers » Sticky table headers default to FALSE
Status: Needs work » Needs review
StatusFileSize
new2.54 KB

i guess that's where we're going for now.

wim leers’s picture

Issue tags: -Novice

Code is good to go.

Are there other places in Drupal core where sticky table headers are valuable? Pinging Bojhan.

wim leers’s picture

Issue tags: +front-end performance
yoroy’s picture

Speed is an important UX factor, so sounds like the right trade-off to make.

*Edit* I think only on the permissions page it's good to have them on by default because you really need the header labels to make sense of each checkbox. All other tables I say have values that are pretty much self-explanetory.

nod_’s picture

Issue tags: -Needs usability review, -mobile, -JavaScript clean-up, -front-end performance

#8: core-js-tableheader-2014309-8.patch queued for re-testing.

Status: Needs review » Needs work
Issue tags: +Needs usability review, +mobile, +JavaScript clean-up, +front-end performance

The last submitted patch, core-js-tableheader-2014309-8.patch, failed testing.

nod_’s picture

Status: Needs work » Needs review
StatusFileSize
new2.08 KB

reroll

nod_’s picture

Status: Needs review » Reviewed & tested by the community

per #9 and #11

I wish we'd have that on d.o

dries’s picture

Status: Reviewed & tested by the community » Fixed

Makes sense to me as well. Committed to 8.x. Thanks!

Automatically closed -- issue fixed for 2 weeks with no activity.

yesct’s picture

Issue summary: View changes
Issue tags: -front-end performance +frontend performance

changing to use the more common tag, so the less common one can be deleted, so it does not show up in the auto complete and confuse people.