void MembersBox::Inner::mouseReleaseEvent(QMouseEvent *e) { auto pressed = _pressed; auto kickPressed = _kickPressed; setPressed(-1); if (e->button() == Qt::LeftButton) { if (pressed == _selected && kickPressed == _kickSelected) { if (kickPressed >= 0) { if (!_kickRequestId) { _kickConfirm = _rows.at(_kickSelected); if (_kickBox) _kickBox->deleteLater(); auto text = (_filter == MembersFilter::Recent ? (_channel->isMegagroup() ? lng_profile_sure_kick : lng_profile_sure_kick_channel) : lng_profile_sure_kick_admin)(lt_user, _kickConfirm->firstName); _kickBox = Ui::show(Box<ConfirmBox>(text, base::lambda_guarded(this, [this] { if (_filter == MembersFilter::Recent) { _kickRequestId = MTP::send(MTPchannels_KickFromChannel(_channel->inputChannel, _kickConfirm->inputUser, MTP_bool(true)), rpcDone(&Inner::kickDone), rpcFail(&Inner::kickFail)); } else { _kickRequestId = MTP::send(MTPchannels_EditAdmin(_channel->inputChannel, _kickConfirm->inputUser, MTP_channelRoleEmpty()), rpcDone(&Inner::kickAdminDone), rpcFail(&Inner::kickFail)); } })), KeepOtherLayers); } } else if (pressed >= 0) { chooseParticipant(); } } } }
void ContactsInner::mousePressEvent(QMouseEvent *e) { _mouseSel = true; _lastMousePos = e->globalPos(); updateSel(); if (e->button() == Qt::LeftButton) { chooseParticipant(); } }