Builds Spark (minus the Install4j distributables) after every change to the code.

Build result summary

Details

Queued
Status
Reason for not building is unknown
Labels
None
Revision
91caf4288b161947ed6065cc0b86439cce641788 91caf4288b161947ed6065cc0b86439cce641788

Code commits

Author Commit Message Commit date
wroot <wrooot@users.noreply.github.com> wroot <wrooot@users.noreply.github.com> 91caf4288b161947ed6065cc0b86439cce641788 91caf4288b161947ed6065cc0b86439cce641788 Merge pull request #336 from guusdk/SPARK-1757_ChatWindow-rework
Transcript Window should be recomposable. SPARK-1757, SPARK-1909
Guus der Kinderen <guus.der.kinderen@gmail.com> Guus der Kinderen <guus.der.kinderen@gmail.com> 5532f2151893cbaa8ab9e3d62ce8037cb187ad72 5532f2151893cbaa8ab9e3d62ce8037cb187ad72 Transcript Window should be recomposable.
This commit started off as a fix for SPARK-1757, but ended up being somewhat of a rewrite of the
code that displays chat messages in the UI (the 'chat transcript window').

The original problem defines that chat messages are sometimes displayed out of order. The direct cause
of this is unknown (I suspect threading/timing issues). To work around the issue, this commit now
adds the capability to recompose the entire transcript window from memory.

A drawback of this is that a(nother) copy of the chat is now kept in memory (the 'entries' list that
is now added to TranscriptWindow). This might make Spark use more memory.

I've opted for a rewrite, as in the course of applying fixes to the existing code, I repreatedly got
lost in the jungle of reuse of styling, particularly. This commit adds new classes for all types of
entries in the Transcript Window (typically, a chat message), and makes each class responsible for
creating a UI representation of that type of entry. This removed quite a bit of boiler plate code.

As each entry now contains the original message, it's make-up as well as timestamp, the transcript
window is easily redrawn when messages start to arrive out of order. That bit is now implemented as
a responsibility of the TranscriptWindow class.

Various smaller changes were made:
- ctrl-space nickname completion in a MUC now no longer considers users on your roster (but not in the MUC)
- ctrl-space nickname completion now works for users that have no VCard (uses node-part of the JID instead)
- message color is now configurable (but still defaults to black).

Jira issues

IssueDescriptionStatus
Unknown Issue TypeSPARK-1757Could not obtain issue details from Jira
Unknown Issue TypeSPARK-1909Could not obtain issue details from Jira