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

se-edu / addressbook-level4 / 4204
94%

Build:
DEFAULT BRANCH: master
Ran 14 Feb 2018 02:57AM UTC
Jobs 1
Files 92
Run time 3s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
4204

push

travis-ci

Zhiyuan-Amos
HelpWindow: modify HelpWindow#show() to use Stage#show()

opened by typing help in the command box. For instance, the command box 
does not display the result message of subsequent commands. However, 
this does not occur when opening the help window by pressing F1 or 
pressing help from the help menu. 

This occurs due to a combination of using the default Dispatcher used 
by the Guava EventBus system, Dispatcher#perThreadDispatchQueue(), 
along with calling Stage#showAndWait(). Calling Stage#showAndWait(), 
starts a nested event loop to handle subsequent JavaFX events. However, 
the default Dispatcher used by the EventBus does not allow nested 
callback invocations, and instead queues them to be invoked after the 
current invoked callback, the MainWindow#handleShowHelpEvent() 
completes. As such, EventBus events are queued up in the meantime 
resulting in the subscribers of these events having to wait until the 
nested event loop is terminated (i.e. when the callback completes, 
after the help window is closed.) And so, the UI components will only 
receive these events and therefore update after the help window is 
closed.

However, in the case of pressing F1 or pressing help from the help menu, 
MainWindow#handleHelp() is called immediately without posting the
MainWindow#handleShowHelpEvent(). Since this event never enters the 
EventBus's queue, the nested event loop started by Stage#showAndWait() 
does not block it and subsequent EventBus events get dispatched as 
usual.

Let's replace Stage#showAndWait() with Stage#show(), so 
that there will be no entering of a nested loop and hence no blockage 
of the Guava EventBus system.

Likewise, this could be fixed by using the Dispatcher#immediate() 
dispatcher instead of the default dispatcher used by the Guava EventBus 
system. However, replacing Stage#showAndWait() with Stage#show() is 
more suitable in this case as it is sufficient to show the help window 
instead of starting a nested event loop to ha... (continued)

1462 of 1593 relevant lines covered (91.78%)

0.92 hits per line

Jobs
ID Job ID Ran Files Coverage
1 4204.1 14 Feb 2018 02:57AM UTC 0
91.78
Travis Job 4204.1
Source Files on build 4204
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #4204
  • 433390f0 on github
  • Prev Build on master (#4185)
  • Next Build on master (#4208)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc