483ab9e344
Merge branch 'develop' into f/groupMessages
2020-07-05 11:15:00 +02:00
delvh
d8b0e335f3
Apply suggestions from code review
2020-07-04 16:07:10 +02:00
9883a5ddd3
Apply suggestions from code review
...
Co-authored-by: delvh <dev.lh@web.de>
2020-07-04 14:00:09 +00:00
DieGurke
96fc06a8e5
Implemented GroupMessageStatusChangeProcessor and a Cache for those
2020-07-04 15:43:46 +02:00
delvh
b597dec63a
Partially fixed bug not showing "Add user to contact list?" - Alert
2020-07-04 15:27:42 +02:00
delvh
74290051ff
Added ability to execute code when a scene is restored
2020-07-04 15:26:12 +02:00
19fdb25bfa
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
d9bf20b88e
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
7d15285da5
Add AudioRecorder
2020-07-03 14:17:04 +02:00
DieGurke
289f2b7032
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
4f877d3d5b
(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
b88f21f71e
Fixed unforgivable Javadoc error
2020-07-01 23:32:32 +02:00
delvh
74734777cd
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
7f536eacc6
Fix insertion of oldest message
2020-07-01 08:58:02 +02:00
c54e7085ce
Fix message insertion into empty list and from sender
2020-07-01 08:45:39 +02:00
26a8650353
Fix message order with insertion method
...
Fixes #168
2020-07-01 08:36:21 +02:00
delvh
2c00539f8a
Removed unnecessary Label creation
2020-06-30 22:11:09 +02:00
delvh
2b1debbad7
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
2cccddc606
Merge branch 'develop' into f/clearable_textfield
2020-06-28 22:48:35 +02:00
delvh
1fb2f04202
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
6eb726af31
Updated UI (again)
2020-06-28 22:30:14 +02:00
DieGurke
7723db672b
Implemented pendingMessage processing using an extra cache
2020-06-28 13:20:10 +02:00
delvh
dee66458d9
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
08e5fad42b
Fixed padding of status icon and implemented Tooltip
...
Additionally added commentary in MessageListCell.
2020-06-27 18:27:13 +02:00
1361c29d4f
Bind message list cell width to message list width
...
Fixes #156
2020-06-27 17:36:42 +02:00
ad83d6d2d4
Display status for own messages instead of received ones
2020-06-27 17:14:07 +02:00
delvh
63aa7859d3
Added working ClearableTextField
...
additionally designed the clear button icon both in black and white
2020-06-27 15:35:35 +02:00
e1e8315ace
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
3aace6d255
Merge branch 'develop' into f/notify_user_of_empty_IDGenerator
2020-06-27 11:25:49 +02:00
5eea90ce68
Merge pull request #160 from informatik-ag-ngl/b/user_name_validation
...
Contact Name Validation
2020-06-27 09:22:03 +00:00
delvh
5c086630f6
Removed unnecessary IOException in IconUtil
...
This is a normal @CyB3RC0nN0R commit: Adding functionality by deleting
code.
2020-06-27 11:03:30 +02:00
c1a1030864
Rename groupNameBar to groupNameField
2020-06-27 09:48:41 +02:00
743ef8ab45
Validate group name and size on creation
2020-06-27 09:36:59 +02:00
delvh
78b560cddd
Made postingPermanentlyDisabled further idiot-proof
...
Additionally deleted annoying alert notifying me that I'm offline.
2020-06-27 09:34:30 +02:00
55066f2cb8
Validate user name during login and registration
2020-06-27 08:25:37 +02:00
delvh
3e4e7a1a40
Cleaned up Envoy client: no more <br><br>, is now <p>
...
...and some other funny mistakes found in Javadoc
2020-06-26 23:36:14 +02:00
delvh
90df627831
Implemented notification of user if he can no longer send messages
...
This only occurs when he is in offline mode and runs out of messageIDs
to use.
Additionally implemented:
- automatically disabled user of posting after that condition is reached
- an infoLabel used to commjunicate some events with the user
- (in parts) a new UI design
2020-06-26 23:16:03 +02:00
delvh
f68412a752
Merge branch 'develop' into f/enhanced_UI
2020-06-26 20:18:00 +02:00
delvh
d11b1363f9
Merge branch 'f/enhanced_UI' of git@github.com:informatik-ag-ngl/envoy-client.git into f/enhanced_UI
2020-06-26 17:33:49 +02:00
delvh
487cac77fb
Added display of settings-icon for the settings button
...
additionally modified margin of elements in ChatScene
2020-06-26 17:33:32 +02:00
0dda75cb09
Prevent groups from being stored in the user database
...
This only affects top-level map entries. Groups that are contacts of the
client user are still persisted.
2020-06-26 16:37:00 +02:00
66eddab143
Fix double status increment on cached message relay
2020-06-26 09:28:48 +02:00
35f4ca2a1a
Display correct contact status on startup
...
Fixes #152
2020-06-26 09:08:41 +02:00
delvh
de2af7b1a9
Fixed small formatting error
2020-06-25 12:32:57 +02:00
delvh
36ea72954c
Apply suggestions from code review
...
Co-authored-by: CyB3RC0nN0R <CyB3RC0nN0R@users.noreply.github.com>
2020-06-25 11:19:59 +02:00
delvh
374f23c3c3
Apply suggestions from @CyB3RC0nN0R's code review
2020-06-25 11:17:25 +02:00
delvh
c2b4ddaea9
Merge remote-tracking branch 'origin/develop' into f/enhanced_UI
2020-06-25 10:45:37 +02:00
3ce9c03f8b
Clear repeat password field when unequal passwords are entered
2020-06-25 10:21:27 +02:00
8291223532
Stop clearing password fields, remove prompt text
2020-06-25 07:49:45 +02:00
delvh
da52e9a5ae
Improved message coloring, messageStatus display only for own messages
...
additionally loaded the message status icons smaller and (visually) hid
the vertical scrollbars (they can still be used, but cannot be seen).
Lastly checked all context menu functions for a NullPointerException, as
also no element can be selected when the context menu is created.
2020-06-23 23:32:31 +02:00
delvh
cb0ff03072
Added "Copy and Send" capability
...
additionally added context menu to delete a contact, currently without
function
2020-06-23 18:32:34 +02:00
delvh
4d81b741bb
Merge remote-tracking branch 'origin/develop' into f/enhanced_UI
2020-06-23 17:27:02 +02:00
0bbade44a7
Merge branch 'develop' into f/compatibility_verification
...
Conflicts:
src/main/java/envoy/client/net/Client.java
src/main/java/envoy/client/net/MessageStatusChangeEventProcessor.java
src/main/java/envoy/client/ui/Startup.java
src/main/java/envoy/client/ui/controller/ChatScene.java
src/main/java/envoy/client/ui/controller/ContactSearchScene.java
src/main/java/envoy/client/ui/controller/GroupCreationScene.java
src/main/java/envoy/client/ui/controller/LoginScene.java
2020-06-23 08:43:20 +02:00
delvh
df3edb72e1
Added a context menu to the message list and ability to copy a message
...
context menu contains a few menu items that will be populated with
functionality later on.
2020-06-22 22:51:10 +02:00
delvh
51b0e06e80
Added alignment and coloring of messages according to who is the sender
...
additionally added:
- the label on top of the ChatScene now displays the own users name
- the messageList now scrolls to the bottom when a message is
created/received
2020-06-22 20:53:44 +02:00
delvh
1387a3f81c
Merge pull request #149 from informatik-ag-ngl/f/visually_pleasing_experience
...
Improved general appearance of Envoy, both in FXML and CSS
2020-06-21 17:40:57 +02:00
bb81ec6042
Move user status color to CSS, refactor ContactListCell
2020-06-21 17:25:24 +02:00
delvh
d389637259
Moved remainingCharsLabel styling from code to CSS
2020-06-21 17:04:27 +02:00
delvh
8b27857db1
Merge pull request #147 from informatik-ag-ngl/b/postbutton_bug_and_logging
...
Fixed postButton - bug and improved logging
2020-06-21 16:25:45 +02:00
0ee639c63c
Merge pull request #146 from informatik-ag-ngl/f/single_file_local_db
...
Store user specific local database information inside a single file
2020-06-21 07:12:23 +00:00
delvh
50ee56ba5a
Fixed error caused by my own stupidity
2020-06-20 22:42:44 +02:00
delvh
d375bb8417
Apply suggestions from code review
...
Reworded the suggestions slightly
2020-06-20 22:29:32 +02:00
e50078cc35
Shorten event names, compatibility verification
2020-06-20 11:00:58 +02:00
delvh
5cb3de37ad
Fixed incorrect logger statement
...
No one needs redundancy in a logging statement, right?
Co-authored-by: CyB3RC0nN0R <CyB3RC0nN0R@users.noreply.github.com>
2020-06-19 17:07:33 +02:00
delvh
f513480020
Improved general appearance of Envoy
2020-06-18 22:20:34 +02:00
delvh
c162376589
Merge branch 'develop' into b/postbutton_bug_and_logging
2020-06-14 16:18:02 +02:00
delvh
092caaef9f
Applying suggestions from code review 2
2020-06-14 16:11:46 +02:00
delvh
2653ec5fee
Apply suggestions from code review
...
Co-authored-by: CyB3RC0nN0R <CyB3RC0nN0R@users.noreply.github.com>
2020-06-14 16:03:02 +02:00
delvh
3960f955d8
Fixed multiple bugs concerning enterToSend and the postButton
2020-06-13 22:38:49 +02:00
delvh
9bf28acfcb
Added improved logging capabilities
2020-06-13 22:36:52 +02:00
c87ab7c9e1
Store user specific local database information inside a single file
...
Closes #141
2020-06-13 18:46:41 +02:00
ec923b5620
Reformat a logger statement
...
Co-authored-by: delvh <dev.lh@web.de>
2020-06-13 17:00:44 +02:00
DieGurke
7a11b556d9
Added ReceivedGroupMessageProcessor
...
Receiving groupMessages works now properly(only if online)
2020-06-13 10:40:47 +02:00
DieGurke
8826d0c3d3
Added support for sending groupMessages
...
* Implemented distinguishing between regular messages and groupMessages
when sending messages to the server (and sends the right object
obviously)
2020-06-12 23:50:52 +02:00
6c7a80c708
Reading the current chat if it changes or a message is received
...
Closes #144
2020-06-12 10:54:55 +02:00
DieGurke
1a8c7dcfea
Update src/main/java/envoy/client/ui/controller/GroupCreationScene.java
...
Co-authored-by: CyB3RC0nN0R <CyB3RC0nN0R@users.noreply.github.com>
2020-06-11 15:06:59 +02:00
DieGurke
7025cabd2f
Fixed issue reagarding missing chats
2020-06-11 13:21:16 +02:00
DieGurke
c2a627529a
MessageStatusChangeEventCache
...
Added a cache storing all messageStatusChangeEvents received during
handshake just like the already existing cache for received messages
during the handshake
This new cache is needed because the functionality regarding the pending
messages (and now messageStatusChanges as well) has changed!
2020-06-10 22:50:09 +02:00
DieGurke
3439aee112
Merged branch 'develop' into f/groups
...
Contains several bug fixes
2020-06-10 22:23:59 +02:00
f876f4e05c
Add received messages to their chat
2020-06-10 13:05:44 +02:00
d14cc47365
Properly override updateItem method of list cells
2020-06-10 11:33:49 +02:00
8a3ffec859
Replace UserStatusChangeProcessor with inline code in ChatScene
2020-06-10 11:22:36 +02:00
c228519d4b
Adjust stage size after changing the scene
2020-06-10 10:05:25 +02:00
delvh
d6e12df076
Fixed visual issues as per @delvh 's request
2020-06-09 22:24:09 +02:00
DieGurke
54bbed4a54
Added Group Creation Functionality
...
* Implemented new group creation scene (fxml)
* Added group creation controller
* Adjusted contact search scene (fxml)
2020-06-09 21:22:45 +02:00
delvh
3e0b73ef12
Added (currently useless) comboBox to change your status
2020-06-09 21:03:19 +02:00
delvh
77f3db0ba3
Added color display of user statuses
2020-06-09 20:42:17 +02:00
delvh
9a6214eb82
Fixed bug automatically sending a message when ctrl is being pressed
2020-06-09 17:11:17 +02:00
fc4fb4cdae
Process ContactOperationEvent
2020-06-09 17:06:40 +02:00
4835cc68fb
Rename UserListCell to ContactListCell
2020-06-09 15:49:11 +02:00
3d71cda884
Ask user before adding a contact
2020-06-09 15:41:01 +02:00
bec49ff9e8
Implemented contact removal operation (untested)
2020-06-09 14:21:11 +02:00
ab626d3226
Fix user list in offline mode
2020-06-09 14:12:27 +02:00
cb3913d95d
Display message date and status
2020-06-09 11:36:38 +02:00
933232e2a4
Converted the login dialog into a scene
2020-06-08 11:58:57 +02:00
e576877943
Move scene controllers to separate package
2020-06-08 10:36:30 +02:00
1761044e9e
Add theme selection in settings
2020-06-08 10:02:39 +02:00
5e73334e35
Remove Theme class and code related to it
...
This is a preparation for loading themes from CSS files.
2020-06-08 09:14:57 +02:00
6974d44958
Fix minor error when popping the last scene
2020-06-08 08:45:15 +02:00
delvh
a3add72838
Added elegant way of displaying remaining characters for a message
...
additionally FOUND (not fixed) a bug automatically posting a message
when ctrl is no longer pressed
2020-06-07 23:28:25 +02:00