fixed synch issues + memleak @ name fetching

This commit is contained in:
Hane 2025-01-25 17:27:36 +01:00
commit 3239e60471
7 changed files with 87 additions and 43 deletions

View file

@ -411,7 +411,8 @@ SessionWidget::SessionWidget(uint64_t idx, SessionHandler* sh, QWidget *parent)
if (sh->getVolumeInfo()->isNameChanged) {
mainLabel->setText(QString::fromStdWString(sh->getName()));
mainLabel->setToolTip(QString::fromStdWString(sh->getName()));
}
sh->getVolumeInfo()->isNameChanged = false;
}
const float roundingFactor = 0.005;
mainSlider->blockSignals(true);
muteButton->blockSignals(true);
@ -538,7 +539,7 @@ EndpointWidget::EndpointWidget(EndpointHandler* eph, QWidget *parent, uint64_t i
eph->createSessionHandlers();
//todo: sussy
this->eph->setState(EndpointState::ENDPOINT_ACTIVE, idx);
this->eph->setFrontVisibilityInfo(EndpointState::ENDPOINT_ACTIVE, idx);
this->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
widgetLayout = new QGridLayout(this);
//this->setContentsMargins(0, 0, 0, 0);
@ -698,9 +699,9 @@ EndpointWidget::EndpointWidget(EndpointHandler* eph, QWidget *parent, uint64_t i
});
log_debugcpp("ENDPOINT_WIDGETED");
eph->createSessionHandlersCallback();
}
void EndpointWidget::addSessionWidget(CustomWidgetEvent<SessionHandler*>* ev){
this->setUpdatesEnabled(false);
uint64_t index = this->sessionWidgets.size();
@ -779,7 +780,7 @@ void MainWindow::customEvent(QEvent* ev) {
}
//__attribute__((optimize("O0", "unroll-loops")))
void MainWindow::removeEndpointWidget(CustomWidgetEvent<uint64_t>* ev){
void MainWindow::removeEndpointWidget(CustomWidgetEvent<uint64_t>* ev) {
uint64_t i = ev->payload;
this->ews.at(i)->setParent(nullptr);
this->widgetLayout->removeWidget(ews.at(i));
@ -792,7 +793,7 @@ void MainWindow::removeEndpointWidget(CustomWidgetEvent<uint64_t>* ev){
return;
}
void MainWindow::addEndpointWidget(CustomWidgetEvent<EndpointHandler*>* ev){
void MainWindow::addEndpointWidget(CustomWidgetEvent<EndpointHandler*>* ev) {
EndpointWidget* epw = new EndpointWidget(ev->payload, containerWidget, this->ews.size());
//epw->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
epw->setParent(this);
@ -924,9 +925,9 @@ EndpointHandler* EndpointWidget::getEndpointHandler(){
* }
*/
void EndpointWidget::setIndex(uint64_t idx){
void EndpointWidget::setIndex(uint64_t idx) {
this->idx = idx;
this->eph->setState(EndpointState::ENDPOINT_ACTIVE, this->idx);
this->eph->setFrontVisibilityInfo(EndpointState::ENDPOINT_ACTIVE, this->idx);
}
uint64_t EndpointWidget::getIndex(){