Commit Graph

458 Commits

Author SHA1 Message Date
delvh
8bb6b051b9
Merge branch 'develop' into f/groupMessages 2020-07-08 09:04:51 +02:00
delvh
8f48ad4cc2 Dismissed rethrowing of image loading error
Additionally cleaned up Javadoc A LOT in IconUtil and banned the word
"icon" from appearing in Javadoc there (it returns an Image, not an
Icon).
2020-07-07 21:00:45 +02:00
delvh
1312a4afc7 Defined theme specific icon folders, renamed icon loading method 2020-07-07 17:02:39 +02:00
delvh
4f2c1f8a97 Added multiple (recording) icons and change them on recording 2020-07-06 22:35:06 +02:00
delvh
00a9185f81 Updated and simplified IconUtil API 2020-07-06 22:33:04 +02:00
delvh
3af3592e7a Added attachment icons and notified user if an attachment is present 2020-07-05 23:25:07 +02:00
delvh
11b50e4fe5
Merge branch 'develop' into f/groupMessages 2020-07-05 17:01:11 +02:00
60ce5a086e
Fix fat JAR generation
* Replace Maven Assembly Plugin with Maven Shade Plugin
* Extract main method to separate Main class
2020-07-05 16:11:00 +02:00
9e15dbbaca
Merge pull request #172 from informatik-ag-ngl/f/voice_messages
Voice Messaging
2020-07-05 14:03:00 +00:00
delvh
3afe896137 Cleaned up a bit 2020-07-05 15:53:12 +02:00
DieGurke
b4fa74caf0 Implemented GroupChat as subclass of Chat and adjusted calls of such 2020-07-05 14:38:19 +02:00
c5b42385aa
Add Exception Logging 2020-07-05 14:25:58 +02:00
DieGurke
1b08076bdb Fixed display type of messages in all chats 2020-07-05 13:53:00 +02:00
DieGurke
349bf9d34f Fixed bug regarding adding new Message to wrong chats 2020-07-05 13:28:17 +02:00
e1025a1569
Cancel an active recording if the chat is switched 2020-07-05 12:21:07 +02:00
4a1cf8c348
Add Audio Playback Capability
* Add envoy.client.data.audio package
* Move AudioRecorder to the audio package
* Add AudioPlayer class
* Add AudioControl class that acts as a small media player
* Display the audio control in message controls that contain voice
  messages
2020-07-05 12:08:29 +02:00
a3f3a9dcbb
Merge branch 'develop' into f/groupMessages 2020-07-05 11:15:00 +02:00
delvh
4bef603698 Apply suggestions from code review 2020-07-04 16:07:10 +02:00
6df3590f22
Apply suggestions from code review
Co-authored-by: delvh <dev.lh@web.de>
2020-07-04 14:00:09 +00:00
DieGurke
b3fc13f8e2 Implemented GroupMessageStatusChangeProcessor and a Cache for those 2020-07-04 15:43:46 +02:00
delvh
d6de1be7de Partially fixed bug not showing "Add user to contact list?" - Alert 2020-07-04 15:27:42 +02:00
delvh
b721771672 Added ability to execute code when a scene is restored 2020-07-04 15:26:12 +02:00
4bf785d896
Detect LV Encoding Errors in Receiver
When the length value encoding is violated, which can occur by sending
an incorrect object length to the client, the error is logged and the
receiver continues to run.
2020-07-03 23:37:25 +02:00
60d3e65574
Add Voice Recording to ChatScene
The ChatScene layout has been adjusted to include a voice message
button. When pressed, a recording starts. To finish the recording, press
the button again. The recording will be saved as a pending attachment.

The next message sent will include the attachment. When a pending
attachment is present, a message can be sent without text.

When the chat is switched, the pending attachment is discarded. This
does not stop active recordings, however.

The ChatScene layout handles large stages better now by ditching
percentage-wise row and column scaling in favor of absolute values for
all cells except the message list and text area.
2020-07-03 23:32:22 +02:00
0abd5cf17c
Add AudioRecorder 2020-07-03 14:17:04 +02:00
DieGurke
182a190099 Implemented GroupMessage reading (sending the right event)
Note: changed a lambda expression in LocalDB and not 100% sure if it is correct
2020-07-03 13:47:40 +02:00
delvh
cf84dd33b6
(IMPORTANT! read description) Merge pull request #166 from informatik-ag-ngl/f/clearable_textfield
Implemented ClearableTextField and redesigned UI.
TAKE CARE:
in order to use SceneBuilder further, you have to import the attached
JAR "CustomComponents.jar" into the SceneBuilder. If you don't do this,
Scenebuilder no longer can load FXML files that depend on a custom
component. If you are implementing another custom component, feel free
to add it to the jar.
Note however that SceneBuilder cannot load any components that rely on
libraries other than the standard Java library or the JavaFX standard.
Meaning that even if you are referencing another Envoy file, the
component will not be importable. Because of this, the
ClearableTextField is also present only in a slimmed down version, as
SceneBuilder additionally has problems when dealing with loading
resources.
2020-07-02 18:06:43 +02:00
delvh
50ff03697d
Fixed unforgivable Javadoc error 2020-07-01 23:32:32 +02:00
delvh
055b991326 Moved former ListCell#updateItem methods into separate Control objects
Additionally fixed bug showing wrong color of infoLabel after switching
scenes
2020-07-01 19:35:15 +02:00
e5ddf32b4a
Fix insertion of oldest message 2020-07-01 08:58:02 +02:00
b380efc38f
Fix message insertion into empty list and from sender 2020-07-01 08:45:39 +02:00
eeb918d37c
Fix message order with insertion method
Fixes #168
2020-07-01 08:36:21 +02:00
delvh
f6083d7086 Removed unnecessary Label creation 2020-06-30 22:11:09 +02:00
delvh
07cdbab097 Added (currently useless) message-info menuItem
additionally:
 - moved MessageListCell and ContactListCell into
envoy.client.ui.listcell
 - edited editable property of ClearableTextField
2020-06-30 21:20:54 +02:00
delvh
d168f57d2b
Merge branch 'develop' into f/clearable_textfield 2020-06-28 22:48:35 +02:00
delvh
589353a927 Finished implementing ClearableTextField (IMPORTANT! read description)
in order to use SceneBuilder further, you have to import the attached
JAR "CustomComponents.jar" into the SceneBuilder. If you don't do this,
Scenebuilder no longer can load FXML files that depend on a custom
component. If you are implementing another custom component, feel free
to add it to the jar.
Note however that SceneBuilder cannot load any components that rely on
libraries other than the standard Java library or the JavaFX standard.
Meaning that even if you are referencing another Envoy file, the
component will not be importable. Because of this, the
ClearableTextField is also present only in a slimmed down version, as
SceneBuilder additionally has problems when dealing with loading
resources.
2020-06-28 22:44:34 +02:00
delvh
28fe5cdb27 Updated UI (again) 2020-06-28 22:30:14 +02:00
DieGurke
21ad87d97d Implemented pendingMessage processing using an extra cache 2020-06-28 13:20:10 +02:00
delvh
18819a873f Wrapped text in userList
(as suggested by @CyB3RC0nN0R)
It is nice to see that JavaFX is less prone to shittyness than Swing is.
2020-06-27 18:44:57 +02:00
delvh
e6ac95ac14 Fixed padding of status icon and implemented Tooltip
Additionally added commentary in MessageListCell.
2020-06-27 18:27:13 +02:00
25b9103e23 Bind message list cell width to message list width
Fixes #156
2020-06-27 17:36:42 +02:00
c6e28aba10 Display status for own messages instead of received ones 2020-06-27 17:14:07 +02:00
delvh
406036c029 Added working ClearableTextField
additionally designed the clear button icon both in black and white
2020-06-27 15:35:35 +02:00
3446e24043 Merge branch 'develop' into f/groupMessages
Conflicts:
	src/main/java/envoy/client/ui/controller/ChatScene.java
2020-06-27 11:34:51 +02:00
delvh
17a9de64f2
Merge branch 'develop' into f/notify_user_of_empty_IDGenerator 2020-06-27 11:25:49 +02:00
adfeb64845
Merge pull request #160 from informatik-ag-ngl/b/user_name_validation
Contact Name Validation
2020-06-27 09:22:03 +00:00
delvh
b5fc80709e Removed unnecessary IOException in IconUtil
This is a normal @CyB3RC0nN0R commit: Adding functionality by deleting
code.
2020-06-27 11:03:30 +02:00
920c83c4d1 Rename groupNameBar to groupNameField 2020-06-27 09:48:41 +02:00
3d6a38e354 Validate group name and size on creation 2020-06-27 09:36:59 +02:00
delvh
5a933fab4e Made postingPermanentlyDisabled further idiot-proof
Additionally deleted annoying alert notifying me that I'm offline.
2020-06-27 09:34:30 +02:00