FIX: [STUDIO-1873] scroll out of range in DropDown
Change-Id: Ide38f2e34f8b54380e72dc51509050c55b771f6d
This commit is contained in:
parent
3372313e13
commit
722fde9255
|
@ -417,11 +417,12 @@ void DropDown::mouseMove(wxMouseEvent &event)
|
||||||
wxPoint pt = event.GetPosition();
|
wxPoint pt = event.GetPosition();
|
||||||
if (pressedDown) {
|
if (pressedDown) {
|
||||||
wxPoint pt2 = offset + pt - dragStart;
|
wxPoint pt2 = offset + pt - dragStart;
|
||||||
dragStart = pt;
|
wxSize size = GetSize();
|
||||||
|
dragStart = pt;
|
||||||
if (pt2.y > 0)
|
if (pt2.y > 0)
|
||||||
pt2.y = 0;
|
pt2.y = 0;
|
||||||
else if (pt2.y + rowSize.y * texts.size() < GetSize().y)
|
else if (pt2.y + rowSize.y * int(texts.size()) < size.y)
|
||||||
pt2.y = GetSize().y - rowSize.y * texts.size();
|
pt2.y = size.y - rowSize.y * int(texts.size());
|
||||||
if (pt2.y != offset.y) {
|
if (pt2.y != offset.y) {
|
||||||
offset = pt2;
|
offset = pt2;
|
||||||
hover_item = -1; // moved
|
hover_item = -1; // moved
|
||||||
|
@ -443,11 +444,12 @@ void DropDown::mouseMove(wxMouseEvent &event)
|
||||||
void DropDown::mouseWheelMoved(wxMouseEvent &event)
|
void DropDown::mouseWheelMoved(wxMouseEvent &event)
|
||||||
{
|
{
|
||||||
auto delta = event.GetWheelRotation();
|
auto delta = event.GetWheelRotation();
|
||||||
wxPoint pt2 = offset + wxPoint{0, delta};
|
wxSize size = GetSize();
|
||||||
|
wxPoint pt2 = offset + wxPoint{0, delta};
|
||||||
if (pt2.y > 0)
|
if (pt2.y > 0)
|
||||||
pt2.y = 0;
|
pt2.y = 0;
|
||||||
else if (pt2.y + rowSize.y * texts.size() < GetSize().y)
|
else if (pt2.y + rowSize.y * int(texts.size()) < size.y)
|
||||||
pt2.y = GetSize().y - rowSize.y * texts.size();
|
pt2.y = size.y - rowSize.y * int(texts.size());
|
||||||
if (pt2.y != offset.y) {
|
if (pt2.y != offset.y) {
|
||||||
offset = pt2;
|
offset = pt2;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue