Author vtudorache
Recipients vtudorache
Date 2018-08-10.10:07:16
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1533895636.89.0.56676864532.issue34370@psf.upfronthosting.co.za>
In-reply-to
Content
Run the python script below.

import tkinter

root = tkinter.Tk()

text = tkinter.Text(root)
vbar = tkinter.Scrollbar(root)

vbar.pack(side=tkinter.RIGHT, fill=tkinter.Y)
text.pack(side=tkinter.LEFT, fill=tkinter.BOTH, expand=1)

text.config(yscrollcommand=vbar.set)
vbar.config(command=text.yview)

lines = ['This is the line number %d.\n' % i for i in range(256)]
text.insert(tkinter.END, ''.join(lines))
 
def click_trace(event):
    text.insert('%d.%d' % (1, 0), 'Clicked at (%d,%d) on %s.\n' % (event.x, event.y, vbar.identify(event.x, event.y)))

vbar.bind('<Button-1>', click_trace)

root.mainloop()

When the slider is at the top of the scrollbar, clicking on its upper half doesn't allow dragging. The little script shows that the Scrollbar considers it as being on "through1" - in Tk the zone between the upper arrow and the "slider" - and not on "slider". Another consequence is that one can drag (up and down) the slider when clicking a little bit below the slider, on "through2" region. This issue doesn't manifest on Windows, where the scrollbar's arrows are shown.
I've seen this issue when trying to explore the reasons of another (34047, fixed) concerning the slider locked at the end of the scrollbar in IDLE.
History
Date User Action Args
2018-08-10 10:07:16vtudorachesetrecipients: + vtudorache
2018-08-10 10:07:16vtudorachesetmessageid: <1533895636.89.0.56676864532.issue34370@psf.upfronthosting.co.za>
2018-08-10 10:07:16vtudorachelinkissue34370 messages
2018-08-10 10:07:16vtudorachecreate