• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ossia / score / 30213925900

26 Jul 2026 06:03PM UTC coverage: 15.298% (-0.01%) from 15.311%
30213925900

push

github

jcelerier
3rdparty: bump libossia for the network-context poll fix

Brings in ossia/libossia#913: SDL joystick init no longer requires haptic
support (which the Emscripten SDL2 port does not have), and
network_context::poll() restarts the io_context, without which the
WebAssembly polling path stops after its first tick.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019oPj1zRcxSQX7FNni7EHM6

30400 of 198713 relevant lines covered (15.3%)

997.67 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/lib/score/widgets/MessageBox.cpp
1
#include "MessageBox.hpp"
2

3
#include <score/application/ApplicationContext.hpp>
4
#include <score/widgets/Pixmap.hpp>
5

6
#include <core/application/ApplicationSettings.hpp>
7

8
#include <QDebug>
9
#include <QMessageBox>
10

11
namespace score
12
{
13
#if defined(__EMSCRIPTEN__)
14
namespace
15
{
16
// QMessageBox::exec() needs a nested event loop, which the browser main thread
17
// cannot provide: the call must return before the user answers. Notifications
18
// (which nothing waits on) are therefore shown modeless, so that errors are at
19
// least visible; question(), whose answer is a return value, stays text-only.
20
int notify(
21
    QWidget* parent, const QString& title, const QString& text, const QString& icon)
22
{
23
  qDebug() << title << "\n" << text;
24

25
  if(!score::AppContext().applicationSettings.gui)
26
    return 0;
27

28
  auto msg = new QMessageBox{{}, title, text, QMessageBox::Ok, parent};
29
  msg->setIconPixmap(score::get_pixmap(icon));
30
  msg->setAttribute(Qt::WA_DeleteOnClose);
31
  msg->setWindowModality(Qt::NonModal);
32
  msg->show();
33
  msg->raise();
34
  return 0;
35
}
36
}
37
#endif
38

39
int question(QWidget* parent, const QString& title, const QString& text)
×
40
{
41
#if !defined(__EMSCRIPTEN__)
42
  if(score::AppContext().applicationSettings.gui)
×
43
  {
44
    auto msg
×
45
        = new QMessageBox{{}, title, text, QMessageBox::Yes | QMessageBox::No, parent};
×
46
    msg->setIconPixmap(
×
47
        score::get_pixmap(QStringLiteral(":/icons/message_question.png")));
×
48

49
    int idx = msg->exec();
×
50
    msg->deleteLater();
×
51
    return idx;
×
52
  }
53
  else
54
#endif
55
  {
56
    qDebug() << title << "\n" << text;
×
57
    return 0;
×
58
  }
59
}
×
60

61
int information(QWidget* parent, const QString& title, const QString& text)
×
62
{
63
#if defined(__EMSCRIPTEN__)
64
  return notify(
65
      parent, title, text, QStringLiteral(":/icons/message_information.png"));
66
#else
67
  if(score::AppContext().applicationSettings.gui)
×
68
  {
69
    auto msg = new QMessageBox{{}, title, text, QMessageBox::Ok, parent};
×
70
    msg->setIconPixmap(
×
71
        score::get_pixmap(QStringLiteral(":/icons/message_information.png")));
×
72

73
    int idx = msg->exec();
×
74
    msg->deleteLater();
×
75
    return idx;
×
76
  }
77
  else
78
  {
79
    qDebug() << title << "\n" << text;
×
80
    return 0;
×
81
  }
82
#endif
83
}
×
84

85
int warning(QWidget* parent, const QString& title, const QString& text)
×
86
{
87
#if defined(__EMSCRIPTEN__)
88
  return notify(parent, title, text, QStringLiteral(":/icons/message_warning.png"));
89
#else
90
  if(score::AppContext().applicationSettings.gui)
×
91
  {
92
    auto msg = new QMessageBox{{}, title, text, QMessageBox::Ok, parent};
×
93
    msg->setIconPixmap(score::get_pixmap(QStringLiteral(":/icons/message_warning.png")));
×
94

95
    int idx = msg->exec();
×
96
    msg->deleteLater();
×
97
    return idx;
×
98
  }
99
  else
100
  {
101
    qDebug() << title << "\n" << text;
×
102
    return 0;
×
103
  }
104
#endif
105
}
×
106
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc