Commit Graph

250 Commits

Author SHA1 Message Date
delvh c784ebb787 Added option to disable attachments and groups on both client and server 2020-08-22 18:14:26 +02:00
delvh eb4e421974 Made every class that can be final final 2020-08-22 13:51:17 +02:00
delvh 4bbc4189ec Updated config mechanism and added config for the server
Additionally fixed a small bug in EnvoyLog and envoy.server.Startup,
fixed Receiver not stopping when the server was stopped
and added access token authorization for the server config
2020-08-22 13:15:42 +02:00
delvh 2cb124505d Apply suggestions from code review
Additionally moved issue sanitization from server to client.

Co-authored-by: DieGurke <maxi@kske.dev>
Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-08-20 13:49:23 +02:00
Maximilian P. Käfer cb95c40ad6 Initial commit 2020-08-20 11:02:51 +02:00
delvh f4a3bfed97 Added option to autocreate bug issues on client and server side
Additionally cleaned up a few classes a bit
2020-08-16 17:14:41 +02:00
Kai S. K. Engelbart 33aa851090 Fix edge case in AbstractListCell
Clear the cell if the item is updated with a null value.
2020-08-03 22:07:12 +02:00
delvh 2491812ba0 Apply code review suggestions from @CyB3RC0nN0R 2 2020-08-03 15:10:35 +02:00
delvh 71bb329857 Apply code review suggestions from @CyB3RC0nN0R
Additionally added Tooltips to all current items in the SettingsScene,
added ReflectionUtil, changed the cursor on listcells and merged develop
into this branch
2020-08-02 20:26:22 +02:00
delvh c3dfedc642 Made system commands case insensitive and reworked /dabr mechanism 2020-08-01 21:40:20 +02:00
DieGurke a1d09d6550 Fixed errors caused by the new ListModel 2020-08-01 17:34:34 +02:00
DieGurke 0901f900e7 Some minor fixes
Co-authored-by: delvh <dev.lh@web.de>
2020-08-01 17:24:15 +02:00
delvh 56bb00cd32 Added logging and fixed some security concerns 2020-08-01 14:57:08 +02:00
DieGurke fe4f9bf219 Replaced shitty javadoc with nice new and young javadoc
Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-08-01 11:09:24 +02:00
DieGurke 209262b4c9 Merge branch 'develop' into f/new_ui 2020-08-01 10:49:40 +02:00
DieGurke 3fdbbfd756 redesigned the vertical scroll bar 2020-08-01 10:30:12 +02:00
delvh 0d77fbf831 Added ability to change the password, theoretically on client and server
(needs testing!)
2020-08-01 10:17:39 +02:00
DieGurke 59188711b8 Fixed size initialization bug regarding correct computation of scenesize 2020-08-01 10:04:53 +02:00
DieGurke 74ebd158f2 Made the contact search area appealing for the eye and relocated buttons 2020-08-01 10:00:34 +02:00
delvh 719aa4cd4f Added profile pic change mechanism on client and common side 2020-08-01 10:00:29 +02:00
delvh 498f3ef43d Added ability to change the user name on the client side 2020-08-01 09:54:18 +02:00
delvh b02c2fdc65 Changed SettingsPane mechanism a bit 2020-08-01 09:43:15 +02:00
Kai S. K. Engelbart b678ae295b Fix a casting issue 2020-07-31 22:52:42 +02:00
DieGurke 268e4439d7 implemented contact search 2020-07-31 18:46:32 +02:00
delvh 98ebb321ce Added OOP approach to some boilerplate code currently implemented
@DieGurke,as I don't want to interfere with your branch at all, I only
added the absolute minimum that should be mergeable without conflict.
I leave the rest of the implementation (usage in ChatScene, ChatControl
and referencing in FXML) up to you.
There's no way in hell I'll risk your wrath...
2020-07-30 20:46:28 +02:00
delvh 9234e23fae Fixed various bugs
These are:
* different size of addContact- and SettingsButton
* default icons in light mode for users and groups (even though they are
currently just the version used in dark mode)
* wrong preferred size of unnamed "Login" label in LoginScene
* unopenable LoginScene for some OS (Debian)
* white screen when the current scene is switched

Additionally cleaned up code a bit in MessageControl and
LoginScene(.java)
2020-07-29 21:59:55 +02:00
delvh 0167af54b0 Apply suggestions from code review
Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-07-28 08:53:10 +02:00
delvh 517c840487 Added customizable download path and ability to save without FileChooser 2020-07-27 22:52:43 +02:00
delvh e216152e6b Added ability to save attachments 2020-07-27 12:00:49 +02:00
delvh 5a5e6e2086 Refactored IsWriting to IsTyping 2020-07-25 17:13:50 +02:00
delvh e382a86623 Apply suggestions from code review
Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-07-25 16:51:46 +02:00
delvh 6f8859c3fd Added IsWriting event on common, server and partially on client side
additionally fixed NullPointerException in ContactSearchScene and typo
in Javadoc

PS: this is the 1000th commit in Envoy! 🥳 🎉
2020-07-25 16:26:13 +02:00
Kai S. K. Engelbart cd2e739529 Prevent Receiver from looping after connection loss 2020-07-25 15:09:00 +02:00
Kai S. K. Engelbart c34457730f Add smooth padding transition 2020-07-24 14:22:41 +02:00
Kai S. K. Engelbart 00fc160550 Adjust message padding immediately 2020-07-24 14:02:53 +02:00
delvh 9d7f85c58d Merge pull request #26 from informatik-ag-ngl/f/system_commands
Added system commands ( features: custom argument number, default values, system command builder, ...).
Fixed bug not copying attachment when using copy and send.
2020-07-24 13:54:05 +02:00
delvh 4d4de3a27f Update client/src/main/java/envoy/client/ui/controller/ChatScene.java
Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-07-24 13:42:39 +02:00
delvh 8718596be2 Added default values, SystemCommandBuilder
Additionally removed sending of SystemCommands as messages and added
sorting of recommendations by relevance.
2020-07-24 11:09:05 +02:00
Kai S. K. Engelbart 2ffcad9d35 Apply suggestions from code review 2020-07-24 10:26:31 +02:00
Kai S. K. Engelbart 59354c403d Integrated the tray icon with the hide on close setting 2020-07-24 09:57:09 +02:00
Kai S. K. Engelbart 07fbe3438a Notify about messages when out of focus 2020-07-23 19:20:58 +02:00
Kai S. K. Engelbart 2ed30c56cd Iconify stage on close, reopen it with the tray icon 2020-07-23 18:53:36 +02:00
delvh e49d390089 Apply suggestions from code review (1)
Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-07-23 18:51:20 +02:00
delvh d3c2eb4ff7 Added SystemCommandsMap in Chatscene and "DABR"-command 2020-07-23 17:18:53 +02:00
delvh 42184c47f7 Added onCall interface, InterruptEvent, and a relevance measurement 2020-07-23 16:37:28 +02:00
delvh 6a1a9ecdbb Added consistent and safer way to get the currently requested command 2020-07-23 15:50:45 +02:00
delvh f1856534c6 Adjusted formatter to new Envoy version 2020-07-23 15:36:23 +02:00
DieGurke 9ea8d24ab6 Adjusted MessageControl and linked css 2020-07-23 11:11:30 +02:00
delvh 38c57c997f Added mechanism to check whether a raw text contains a command 2020-07-23 11:07:54 +02:00
delvh 7bf35977f0 Added validity check for commands 2020-07-23 09:23:29 +02:00
DieGurke 5d2a3b83d2 Message Text Line-Wrap works properly now 2020-07-22 11:49:32 +02:00
DieGurke 9e427e1ec3 Adjusted message rendering 2020-07-22 00:03:12 +02:00
Kai S. K. Engelbart ebfe603bc7 Add binding from list width to message padding 2020-07-21 09:01:54 +02:00
DieGurke 60791f2913 Fixed problems with groupMemberName displaying 2020-07-20 14:09:30 +02:00
Kai S. K. Engelbart 5d03d0f0eb Make StatusTrayIcon work with JavaFX
* Remove Swing dependencies from StatusTrayIcon
* Pass a stage to the constructor
* Adjust focus change handler and reactivation
* Add IconUtil#loadAWTCompatible for BufferedImage loading
2020-07-20 12:57:34 +02:00
DieGurke 79a121b6b5 Added name displaying of groupMessages in groupChats 2020-07-20 12:32:53 +02:00
delvh a283217308 Fixed bug enabling contact duplication
...when two clients simultaneously add each other to the respective
contact list
2020-07-18 18:20:52 +02:00
DieGurke 01f81fadac Fixed resize problems and some other stuff 2020-07-18 14:41:25 +02:00
Kai S. K. Engelbart 1a17448724 Speed up build, move compiler configuration to parent POM 2020-07-18 13:32:49 +02:00
Kai S. K. Engelbart 0674035183 Reworked list cell framework to be more extensible 2020-07-18 11:50:49 +02:00
delvh fdbec3d652 Merge branch 'develop' into f/system_commands 2020-07-18 11:27:59 +02:00
delvh 5ce62c10ca Added System command description and added recommendation ability
Additionally removed ability to decide whether exceptions thrown by
SystemCommands should be rethrown as a mentally superior team member
intervened that it would be useless.
2020-07-18 11:25:41 +02:00
Kai S. K. Engelbart fa7be8c343 Merge branch 'develop' into f/new_ui
Conflicts:
	client/src/main/java/envoy/client/ui/controller/LoginScene.java
2020-07-18 10:49:24 +02:00
Kai S. K. Engelbart 282db47153 Reconfigure Envoy Common Eclipse Project 2020-07-18 10:19:47 +02:00
Kai S. K. Engelbart 381740e087 Simplify project names 2020-07-18 10:11:46 +02:00
delvh da77afdc32 Fixed bug not copying attachment when using copy and send 2020-07-18 09:48:08 +02:00
delvh 2e45e375b1 Revised SystemCommand mechanism and implemented theoretical execution 2020-07-17 23:27:54 +02:00
DieGurke 2e4a17c6c5 Fixed scaling problems (especially on lower res displays)
Still a problem with max width of column 1 and max size of stage due to
sizeToScene property on the stage
2020-07-17 17:02:58 +02:00
DieGurke b4225b0d80 Implemented ProfilePics UI mechanism 2020-07-17 13:56:36 +02:00
Kai S. K. Engelbart f135a99fdd Merge branch 'develop' into f/handshake_sync 2020-07-16 22:35:09 +00:00
Kai S. K. Engelbart 698e260746 Turn logging off by default (ClientConfig)
Logging is still enabled through the client.properties however, where
console logging is set to FINER.
2020-07-17 00:29:48 +02:00
Kai S. K. Engelbart 47ab5d1e0c Fix unread message counter
A bug remains when the total status of a group message is SENT, but the
individual status for the client user is RECEIVED. In this case, the
counter should be incremented but isn't.
2020-07-17 00:27:00 +02:00
delvh 71145bbb24 Added System Commands basics - may change again 2020-07-17 00:23:35 +02:00
DieGurke 62d9df7ae8 Merge branch 'develop' into f/new_ui 2020-07-16 22:11:52 +02:00
DieGurke b88f260efc Changed color of messageList background 2020-07-16 22:10:04 +02:00
DieGurke 7b693e0328 Fixed some issues 2020-07-16 21:52:07 +02:00
Kai S. K. Engelbart afcf1e48a4 Remove filter from ReceivedMessageProcessor, improve handshake
The user is sent after the messages to avoid receiving messages on the
client while switching from handshake to normal mode.
2020-07-16 21:14:37 +02:00
DieGurke a21a5c8588 Improved top bar 2020-07-16 21:13:46 +02:00
delvh 00603bedf6 Update client/src/main/java/envoy/client/ui/controller/GroupCreationScene.java
Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-07-16 20:54:47 +02:00
delvh 96bfe489da Update client/src/main/java/envoy/client/ui/controller/GroupCreationScene.java
Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-07-16 20:54:15 +02:00
delvh 698b57d99d Fixed Bug not updating MessageStatusChanges 2020-07-16 20:34:24 +02:00
DieGurke c71c038317 Fixed styleSheet mess regarding the Lists 2020-07-16 19:07:27 +02:00
delvh 176f6c6463 Fixed bug not enabling the post-button when an attachment is present 2020-07-16 18:23:06 +02:00
DieGurke bf499da97d Adjusted message Enter bar (field and buttons) and changed color 2020-07-16 18:17:52 +02:00
delvh c0f4a8e212 Warned user on group creation if he already has a Group with that name 2020-07-16 17:47:59 +02:00
delvh fb4fd85fe4 Removed the selected user from ContactSearchScene upon addition 2020-07-16 17:36:57 +02:00
delvh bc355f190f Added deepRefresh - mechanism
additionally fixed bug not updating messageList when a
MessageStatusChange occurs (seriously, why did no one notice it before?)
2020-07-16 17:35:15 +02:00
DieGurke a76c2a347e Relocated existing Components of chatScene and adjusted them a bit 2020-07-16 17:28:00 +02:00
Kai S. K. Engelbart 07c4ccf3c8 Prepare handshake synchronization
Common
* Replace LocalDateTime with Instant everywhere

Client
* Display message creation date with system time zone in MessageControl
* LocalDB#users now strictly contains Users
* lastSync time stamp in LocalDB (saved per user)
* isOnline parameter in save function (lastSync updated if true)
* lastSync time stamp in LoginCredentials
* No ClientConfig#getLoginCredentials because of missing information,
  moved to LoginScene
* Pass LocalDB#lastSync to LoginCredentials in LoginScene

Server
* Explicit lastSync parameter for
  PersistenceManager#getPending(Group)Messages

This sends the correct time stamp to the server, however the JPQL
queries have yet to be adjusted.
2020-07-16 17:04:35 +02:00
DieGurke e7e4c5af42 Login Scene is not resizable, logo gets loaded correctly 2020-07-16 16:02:03 +02:00
delvh c5094e52cd Fixed bug not scrolling to the correct message 2020-07-15 21:44:57 +02:00
DieGurke 9a9a475c0e Implemented completely new UI for the login scene 2020-07-15 18:45:55 +02:00
DieGurke f608b2d6ec Replaced custom clearableTextField with normal TextField 2020-07-15 14:05:47 +02:00
Kai S. K. Engelbart ba336908d1 Add Generic ListViewFactory 2020-07-13 22:08:08 +02:00
Kai S. K. Engelbart 0267a7bbab Fix FXML naming error 2020-07-13 19:16:48 +02:00
Kai S. K. Engelbart a437fb25da Fix FXML formatting 2020-07-13 19:12:03 +02:00
Kai S. K. Engelbart 659a468049 Add ContactListCellFactory
- Refactor chatList to userList in ContactSearchScene and
  GroupCreationScene
- Narrow contact searches down to users on a datamodel basis
- Refactor ContactSearchRequest and ContactSearchResult to
  UserSearchRequest and UserSearchResult
2020-07-13 19:02:40 +02:00
Kai S. K. Engelbart 062c9f418d Extract ContactControl from ChatControl
The new class ContactControl displays the contact name and status (user)
or member count (group) and is used inside ChatControl, which adds the
unread message count label.
2020-07-13 17:55:00 +02:00
Kai S. K. Engelbart 3023039f50 Refactor Maven Project Structure
- Convert client/, common/ and server/ to modules
- Add parent pom.xml
- Update templates and workflow
- Remove old documentation
2020-07-13 15:16:22 +02:00
Kai S. K. Engelbart 0309d0d860 Move Envoy Client to client/ subdirectory 2020-07-13 11:37:45 +02:00