At present, if you want to vote on a topic, you have to scroll up to the first post in that topic. It’d be great if you could vote at any time (not sure how that would work on mobile, though), or if the voting options were duplicated at the bottom of the topic. That way, you could read through the entire discussion before deciding whether or not to expend your vote.
Agreed; the voting widget should stick to the header, just like the topic title.
Unlikely, as the header would be enormous. Provide mockups of how you see this working.
Perhaps something like this?
The plugin already shows the number of votes in the header (in the tags
area); what this mockup does is add the vote/unvote button next to this number.
You could also maintain the current “stacked” view if you shrunk it vertically and slotted it in between the site logo and the title – but I’m not sure that that would work. Or maybe even replace the site logo?
Just a reminder that none of this happens at Stack Overflow, where voting is rather critical. The vote area is fixed and scrolls.
I guess the key difference between this and Stack Overflow, though, is that at SO voting is on a per-comment basis, whereas this voting is per-thread. So given that a comment might be, say, 60 lines long, it’s not that far to find the vote buttons for it. But if you have five comments that are 60 lines long – or 500! – then scrolling to the top of all of those is much more arduous.
It’s identical when you are voting on the question. It’s also a single keyboard key press to get back to top, just press home.
Or click / tap on the topic title, that will take you to top.
I feel we are imagineering a solution to a problem that doesn’t really exist, here.
I imagine so. UserVoice doesn’t keep it in view all of the time either.
I’m not so sure. There’s a lot of engineering and thought that’s gone into keeping the “reply” button available at all times as you scroll through the thread – this way, people can engage easily. But it’s a lot harder to spend your votes. There are, I think, a few ways that people interact with voting:
- They open a suggestion, read the first message in the thread, and vote. This is handled really elegantly at present.
- They open a suggestion, read through the entire thread (or part of it), and vote. This is more problematic – they have to then scroll back up to the top.
- They return to an old topic when they get some votes “back”, and want to vote on it. Again, it’s necessary to scroll back up to the top.
Yes, I would agree that in the majority of cases, the voting as it is works well. But I do think it’s worth considering how we can keep engagement up at all times.
Is it worth considering (as in the original suggestion) duplicating the voting widget at the bottom of the thread, rather than trying to engineer an “always available” model?
More pragmatically, I’ve had a go at making the voting widget sticky through CSS, but I’ve been struggling to get it to work because of its placement in the DOM. Maybe we could change where it’s output so that it’s easier to experiment with this behaviour, and implement it via customisation?
If not interactive, could we at least make the vote count clickable, so that it’d send you to the top if you click it?
I am significantly more open to making “n votes” in the header a hyperlink that simply takes you to the first post, I think this captures a huge part of the use cases here. Cause then you can click “n votes” from topic list or header to get to the place you vote on, regardless of read position.
I think it is not too onerous to have to go back to the top to vote, especially since the majority of users will simply arrive at post #1 and then vote on it.
With the latest round of changes I tried to make the plugin simpler, I can’t really easily move the widget around to somewhere else in the DOM it just does not belong in the header by default. I feel this adds complexity without a very clear gain, even if engagement can be a bit up.
Keep in mind you have a very restricted pool of votes, its not as though making it much more trivial will make much of a difference for you when you only have 5 things to vote on.
Added a hyperlink to all “N votes” links per:
https://github.com/discourse/discourse-voting/commit/bdc6f4b2db4c5df264d3c0afb86a494cf0397c10
I’d like to bring this up again. We get a lot of people who hop into a voting topic at the end and comment on their desire for the request. But they don’t vote. Or they even ask how to vote because the VOTE button is not visible.
It would be great if the VOTE button stayed at the top when scrolling. Or alternatively, was duplicated in the bottom toolbar like this: