Page MenuHomeSchine - Phabricator

Starmade | Scrollbars to follow cursor more naturally
Confirmed task for development, TrivialPublic

Description

#1 original report ...
Zaflis:
Scrollbars in GUI dialogs behave weird, where when i drag and move the knob it's not centering the knob to mouse. Instead the scrollbar position is updated by exact position of mouse on the scrollbar.

Basically currently Scrollable area = Scrollbar.Top .. Scrollbar.Top+Scrollbar.Height
Scrollable area height = Scrollbar.Height

Suggestion for the area: Scrollbar.Top+Scrollknob.Height/2 .. Scrollbar.Top+Scrollbar.Height-Scrollknob.Height/2
Scrollable area height = Scrollbar.Height-Scrollknob.Height

#2
Zaflis:
Try dragging the scrollbar with mouse. Compare for example to the web browser you are using to read this page, and then any starmade ingame dialog with scrollbar, it should be plain obvious.

Scrollbar in most applications behaves kind of like "empty pipe that is attached to thick rope". Imagine that you grab it with your hand from 1 point and then drag it to some direction, same way as you drag it with a cursor.

But in starmade it's very different. You don't actually get a grip of the scrollbar, you point to it where it is to go and it goes.

Sounds silly explain but it's only a slight mathematical difference that makes it behave wonky, and yeah you might call it a bug. It's something that would a trivial issue to fix if you just understand it. It wouldn't make much of a difference if i captured a video of dragging a scroll bar either, it's something you just have to try yourself to feel the difference. Pay special attention to the top and bottom end points when scrolling.

Basically, with scrollbar on any other software i don't have to pinpoint cursor exactly 1 pixel away from up arrow in order to scroll all the way up. If the scrollbar handle moves at same speed as my cursor, the handle's top end reaches the top before the cursor.


#3 Andy:
Hm, yes thats a really trivial one, but its a difference to most other sliders I tried to compare it with. =)
This shows the 'problem'
We always assume the 'center' of the slider for the mouse reference, not the spot where you 'grabbed' it.

#3.1 Andy:
Oh, read the posts again, maybe this is another different bug I found... xD

So the other statement seems to point to the difference between cursor position and scroll area position.
So when seeing line 1-10 of a 20 line document, moving the cursor to line 9 or 10 will move the scrollbutton? (even when the 'scrollarea' did not move at all?
#3.2 Andy
Okay, compared all the sliders around a bit, and also the starmade ones.

Seems like the most noticable effect is:
Sliders in starmade are fixed in size.

So, to word it:

Starmade:
200pixel lenght scroll bar (viewport)
400 pixel long list to scroll
20 pixel wide slider (fixed size)

Others:
200pixel lenght scroll bar (viewport)
400 pixel long list to scroll
100 pixel wide slider (covering 50% of the scrollbar)
(Numbers fictional)

So the 'slider' represents the current viewport of the total scrollarea in size, while starmade uses fixed size.

Details

Task Type
Bug
Testing Results
Affected Gamemode(s)
Single and Multi
Reproducible
Yes
Last tested (version)
0.19439 (Dev)
Category
Ingame GUI/HUD
First occurrence (version)
0.14
Hardware/Software/System
OS-Specific
No
Hardware-Specific
No
Video Card Vendor
uncertain
Serverconfig (server.cfg)
<replace this line with the file content>
Clientconfig (settings.cfg)
<replace this line with the file content>

Event Timeline

SmilingDemon updated the task description. (Show Details)Jun 18 2015, 9:05 AM
SmilingDemon changed Category from none/unspecified to Ingame GUI/HUD.
SmilingDemon changed Affected Gamemode(s) from none/unspecified to Single and Multi.
SmilingDemon set First occurrence (version) to 0.14.
SmilingDemon changed Reproducible from uncertain to Yes.
SmilingDemon set Last tested (version) to 0.19274 (Dev).
SmilingDemon edited a custom field.
SmilingDemon edited Serverconfig (server.cfg). (Show Details)
SmilingDemon edited Clientconfig (settings.cfg). (Show Details)
SmilingDemon added a subscriber: SmilingDemon.
SmilingDemon created this task.
SmilingDemon changed the task status from Open to In Queue (Game).
SmilingDemon raised the priority of this task from to Trivial.
Restricted Application edited projects, added Game Development; removed Issue Navigation. · View Herald TranscriptJun 18 2015, 9:06 AM
AndyP shifted this object from the S1 Public space to the S3 Starmade space.Aug 11 2015, 11:06 PM
AndyP changed the edit policy from "Starmade (Project)" to "All Users".
AndyP set Task Type to Bug.
AndyP set OS-Specific to No.
AndyP set Hardware-Specific to No.
AndyP set Video Card Vendor to uncertain.
AndyP renamed this task from Scrollbars to follow cursor more naturally to Scrollbars to follow cursor more naturally .
lancake changed Last tested (version) from 0.19274 (Dev) to 0.19439 (Dev).Oct 2 2015, 9:20 PM

I've committed a partial fix, where the scrollbar should now scale properly to the size of the contained list. This does not fix all issues reported here, but I will continue to work on this over time.

AndyP changed the task status from In Queue (Game) to In Queue.Mar 10 2017, 5:26 PM
Restricted Application added a project: GUI/HUD. · View Herald TranscriptMar 10 2017, 5:26 PM
AndyP moved this task from Backlog / Unclassed to Beta on the GUI/HUD board.Mar 24 2017, 10:25 AM