| 938 | } |
| 939 | |
| 940 | void MainWindow::updateUIFrequent() |
| 941 | { |
| 942 | /* Only update every 50 ms */ |
| 943 | int64_t elapsed = updateTimer->elapsed(); |
| 944 | if (elapsed < 50) { |
| 945 | /* Call this function on timeout, if not already done */ |
| 946 | if (!callTimer->isActive()) { |
| 947 | callTimer->start(50 - elapsed); |
| 948 | } |
| 949 | return; |
| 950 | } |
| 951 | |
| 952 | updateTimer->start(); |
| 953 | |
| 954 | updateFrequentRuntimeDisplay(); |
| 955 | windowManager->updateFrequentWindowViews(); |
| 956 | |
| 957 | /* Detect if the debugger was detached from the game and allow user to attach again */ |
| 958 | if (context->attach_gdb && debugger_pid) { |
| 959 | int ret = waitpid(debugger_pid, nullptr, WNOHANG); |
| 960 | if (ret == debugger_pid) { |
| 961 | context->attach_gdb = false; |
| 962 | debugger_pid = 0; |
| 963 | launchGdbButton->setEnabled(true); |
| 964 | } |
| 965 | } |
| 966 | } |
| 967 | |
| 968 | void MainWindow::updateFrequentRuntimeDisplay() |
| 969 | { |
nothing calls this directly
no test coverage detected