https://bugs.kde.org/show_bug.cgi?id=477700
fanzhuyi...@gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |WAITINGFORINFO Status|CONFIRMED |NEEDSINFO --- Comment #25 from fanzhuyi...@gmail.com --- (In reply to Milian Wolff from comment #20) > This code here is enough for me to trigger the behavior - it clearly isn't > konsole specific at all: > > ``` > #include <QApplication> > #include <QTabBar> > #include <QShortcut> > #include <QDebug> > #include <QMainWindow> > #include <QVBoxLayout> > #include <QTabWidget> > #include <QTimer> > #include <QWindow> > > int main(int argc, char** argv) > { > QApplication app(argc, argv); > > QMainWindow window; > > auto center = new QTabWidget; > window.setCentralWidget(center); > > auto tab = center->tabBar(); > > auto addTab = [tab]() { > static int counter = 0; > tab->addTab(QString::number(counter++)); > qWarning() << "add" << counter; > }; > addTab(); > > auto removeTab = [tab]() { > tab->removeTab(tab->currentIndex()); > qWarning() << "rem"; > }; > > auto newTab = new QShortcut(QKeySequence::New, tab); > qWarning() << newTab->key(); > newTab->setContext(Qt::ApplicationShortcut); > QObject::connect(newTab, &QShortcut::activated, tab, addTab); > > auto closeTab = new QShortcut(QKeySequence::Close, tab); > qWarning() << closeTab->key(); > closeTab->setContext(Qt::ApplicationShortcut); > QObject::connect(closeTab, &QShortcut::activated, tab, removeTab); > > window.resize(600, 400); > window.show(); > > QObject::connect(window.windowHandle(), &QWindow::heightChanged, > &window, [&](int height) { > qWarning() << "height changed:" << height; > }); > > if (app.arguments().contains("--auto")) { > auto timer = new QTimer(tab); > timer->setInterval(100); > QObject::connect(timer, &QTimer::timeout, &app, [&]() { > static int i = 0; > if ((i % 2) == 0) > removeTab(); > else > addTab(); > ++i; > }); > timer->start(); > } > > return app.exec(); > } > ``` > > Example output when run: > > ``` > ./tab --auto > 0.000 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:25]: add 1 > 0.000 warning: main[/home/milian/projects/bugs/tab/tab.cpp:35]: > QKeySequence("Ctrl+N") > 0.000 warning: main[/home/milian/projects/bugs/tab/tab.cpp:40]: > QKeySequence("Ctrl+W") > 0.040 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:48]: height changed: > 399 > 0.111 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:31]: rem > 0.207 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:25]: add 2 > 0.210 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:48]: height changed: > 398 > 0.302 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:31]: rem > 0.305 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:48]: height changed: > 397 > 0.397 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:25]: add 3 > 0.492 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:31]: rem > 0.494 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:48]: height changed: > 396 > 0.587 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:25]: add 4 > 0.590 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:48]: height changed: > 395 > 0.686 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:31]: rem > 0.787 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:25]: add 5 > 0.791 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:48]: height changed: > 394 > 0.887 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:31]: rem > 0.890 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:48]: height changed: > 393 > 0.987 warning: main(int, > char**)::<lambda[/home/milian/projects/bugs/tab/tab.cpp:25]: add 6 > ``` Is this on wayland or X11? Which version are you on? Can you try reproducing this on plasma 6, if possible? Thanks! -- You are receiving this mail because: You are watching all bug changes.