Commit Graph

419 Commits

Author SHA1 Message Date
2cba9352df Added GeneralSettingsPane, added JavaFX support in SettingsItem
Also removed the old settings ui components.
2020-04-18 12:03:32 +02:00
f18525476e Added SettingsScene selection infrastructure 2020-04-18 11:03:06 +02:00
delvh
00edd59f97 Fixed bug duplicating messages 2020-04-18 10:34:03 +02:00
09f7f5482e Replaced TimeLimitExceededException by TimeoutException
This allows the removal of the java.naming module dependency.
2020-04-10 21:57:05 +02:00
935ee58c4b Added a rudimentary settings scene with an empty controller 2020-04-10 21:52:19 +02:00
3d1eec4ee0 Moved all FXML files to the resource folder 2020-04-10 21:26:24 +02:00
ee4fa78f38 Grouping JavaFX package import statements 2020-04-10 21:05:08 +02:00
b38700500e Merge pull request #132 from informatik-ag-ngl/f/login_dialog
JavaFX LoginDialog
2020-04-10 20:44:46 +02:00
873e2437c6 Implemented review recommendations 2020-04-10 20:42:20 +02:00
1e0722ac94 Using dialog buttons instead of custom ones 2020-04-10 17:07:27 +02:00
fb2f379dfc Completed LoginDialog implementation except for closing the dialog 2020-04-10 16:18:01 +02:00
7285375447 Moved the LoginDialogController class inside the LoginDialog class 2020-04-10 11:01:03 +02:00
delvh
de00601a2c Performed updating of the UI on the UI thread 2020-04-09 22:30:24 +02:00
delvh
d61cd8a36e slightly adapted some logging messages 2020-04-06 22:55:59 +02:00
840ec53277 Added JavaFX login dialog scene 2020-04-06 15:08:00 +02:00
delvh
5d76bbbcb0 restored compatibility with envoy common (and envoy server standalone) 2020-04-02 22:03:43 +02:00
delvh
487c6a6573 Added BASIC group capability (#128)
* Changed serialVersionUID everywhere to 0L

* Added support for GroupResizeEvents and NameChangeEvents

Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-04-02 09:23:47 +02:00
c12eac1cbc Removed most Swing components 2020-03-31 21:54:56 +02:00
b5fd690f43 Wrapping data into ObservableList instances instead of copying it 2020-03-30 21:27:07 +02:00
a29608c627 Copied event listeners from ChatWindow to ChatSceneController 2020-03-29 22:15:05 +02:00
67433275bd Fixed chat loading from LocalDB into messagList 2020-03-29 09:16:29 +02:00
bd0da338a7 Added user and message loading and message posting 2020-03-28 15:32:24 +01:00
a68a01b455 Added custom list cells for the user and message list views 2020-03-28 10:39:15 +01:00
0403729a63 Started moving Startup contents into the new Startup class 2020-03-27 21:14:49 +01:00
6e0b95384b Set Envoy logo as stage icon 2020-03-26 21:01:42 +01:00
c6d074b84a Prepare JavaFX integration
* Added JavaFX and FXML dependencies to pom.xml and module-info.java
* Added Startup Application
* Added ChatScene with ChatSceneController
2020-03-26 20:23:25 +01:00
delvh
364ec6f04e Renamed every identifier according to new convention 2020-03-26 16:06:18 +01:00
delvh
5c2abe7c1c Renamed classes with a two-letter initialism according to convention 2020-03-24 18:38:47 +01:00
86d437760d Normalized since tags to fit envoy-common and envoy-server
Envoy vXXX -> Envoy Client vXXX
2020-03-23 21:52:59 +01:00
delvh
3dd9884cd9 Added theme support for ContextMenu 2020-03-23 21:35:55 +01:00
31f9d5bcef Finalized forwarding UI 2020-03-23 21:28:00 +01:00
delvh
1dbc818019 Added renderer to ContactsChooserDialog 2020-03-23 21:04:32 +01:00
delvh
376c026b2a Added disabling of postButton while String.isBlank() returns true 2020-03-22 17:20:05 +01:00
delvh
f08a7a6f5e Fixes #121 (first displayed theme is current theme)
Additionally removed okButton from SettingsScreen
2020-03-22 17:05:28 +01:00
delvh
e4eaf7239c ContactsChooserDialog is now centered around a parent component
additionally:
* fixed bug not updating date color when changing themes
* improved style of forwardMessage-Methoden
2020-03-22 16:51:44 +01:00
delvh
08f6ee62ca Fixed bug adding a line break when sending via enter
* additionally merged full input of f/enhanced_component_list with the
current working state of f/forward_messages:
* implemented setting of colors (theming) for ContextMenu
* renamed messageTextColor to textColor
2020-03-21 19:26:11 +01:00
0a81273860 Revised the rendering and selection mechanism in ComponentList 2020-03-21 16:10:59 +01:00
a5e43db8de Extracted MessageComponent from MessageListRenderer 2020-03-21 13:20:45 +01:00
10f498ca03 Adjusted ChatWindow and ContactsChooserDialog to new interface 2020-03-20 18:32:57 +01:00
4c70702d02 Added SelectionMode enum to ComponentList, prepared integration
These changes are not ready to build yet, as ChatWindow and
ContactsChooserDialog have to be adjusted first.
2020-03-19 22:16:31 +01:00
0258e04612 Unrelated cleanup in UserComponentListRenderer 2020-03-19 21:52:06 +01:00
delvh
480961370c added missing merge content,mnemonics support(ContextMenu)and Nullchecks 2020-03-18 22:13:58 +01:00
delvh
24ce40c24a Merged current working status of f/icon_util into f/forward__messages
* added ContextMenu
* added ContactsChooserDialog
2020-03-18 08:03:35 +01:00
8bc8507feb Added Javadoc to IconUtil 2020-03-17 12:45:50 +01:00
1e11948e10 Fixed message list dimension 2020-03-17 12:35:31 +01:00
DieGurke
5b6f6bf058 Changed bgc of testArea and played on pref size of list and scrollPane 2020-03-17 12:11:59 +01:00
DieGurke
bb1cb6658e Minimum size of application and added forward and settings icons 2020-03-17 11:20:45 +01:00
a6865a5399 Cleanup 2020-03-17 11:08:58 +01:00
29d2eeaa7e Fixed horizontal message placement
This commit contains potentially unstable changes to ComponentList. If
the ListCellRenderer is not set, the class might behave in an unexpected
way.
2020-03-17 10:08:58 +01:00
461a395439 Working on message scaling 2020-03-17 09:37:19 +01:00
011e85c18e Working on line wrapping and message height (borders currently broken) 2020-03-16 21:49:02 +01:00
DieGurke
c9c2cd9f4d Message displaying
Implemented message status icons and revised message displaying
(unfinished)
2020-03-16 19:08:26 +01:00
e93cd8761f Added IconUtil utility class 2020-03-16 14:30:14 +01:00
delvh
2127018b58 fixed minor inconveniences 2020-03-16 11:21:41 +01:00
delvh
d0fded868e implemented UserComponentListRenderer 2020-03-15 19:11:02 +01:00
delvh
9ef9282432 Added multiple selection capability to the component list 2020-03-15 18:55:07 +01:00
delvh
b4e8a67b93 Implemented method to forward a message 2020-03-14 22:44:03 +01:00
delvh
9eaa9dc9d2 Created packages ui.renderer and ui.primary 2020-03-14 21:34:17 +01:00
delvh
4c94686172 added newline at EOF for any file not having one at its end 2020-03-14 19:59:37 +01:00
00e6d6c8a1 Fixed NullPointerException caused by ComponentListModel 2020-03-14 17:10:11 +01:00
delvh
b23c506d77 fixed typo 2020-03-14 17:04:51 +01:00
7f2c4d0519 Fixed state errors in offline mode (#116)
* Display all contacts as offline while in offline mode

* Update message status to sent after relaying message cache
2020-03-14 16:58:19 +01:00
delvh
349ffeaa25 Added the display of multi-line messages (#115)
* Added multi-line messages

* Added shutdown method for LoginDialog

* Fixed login bug in LoginDialog

* Added a maximum length for messages

* Implemented update of component list elements on resizing

* Improved visual appearance of some files
2020-03-14 11:17:43 +01:00
delvh
9896339f92 Changed compiler compliance to 11, modularized all packages (#114)
* added module- and package-info.java, changed JRE from 8 to 11

* updated maven from Java 1.8 to 11

Co-authored-by: CyB3RC0nN0R <kske@outlook.de>
2020-03-07 19:38:06 +01:00
930d1cebe1 Migrated configuration and logging to Envoy Common (#113)
* Moved client specific configuration to ClientConfig

* Finished ClientConfig integration, checking init state in EnvoyLog

* Migrated Config, ConfigItem and EnvoyLog to envoy-common

* Updated envoy-common dependency to develop-SNAPSHOT
2020-03-05 14:27:40 +01:00
69537d843d Added selection capability to ComponentList (#112)
* Fixed Javadoc error in EnvoyLog

* Added selection support to ComponentList using MouseListener injection

* Added selection support to MessageListRenderer

* Clearing selection when reselecting an already selected element
2020-02-22 19:01:47 +01:00
aaa6044ade Adjusted logging locations and levels 2020-02-18 16:34:14 +01:00
9c73289bda Updated Javadoc in EnvoyLog 2020-02-18 16:10:33 +01:00
c692fe25ff Adder EnvoyLog#attach(String) method to log specific packages 2020-02-18 08:14:04 +01:00
5f9ebd4c43 Fixed logger level configuration, using logger hierarchy
Loggers are now created with a class object
2020-02-18 07:16:35 +01:00
1b3ef2a712 Appended timestamp to log file names 2020-02-16 21:53:10 +01:00
18c693a6d6 Fixed error message layout in LoginDialog
Updated envoy-common dependency to v0.2-alpha in pom.xml
2020-02-13 10:11:25 +01:00
8c1cfedb2e Fixed entering offline mode 2020-02-12 22:22:29 +01:00
8714c8fe0e Performing handshake and online init in LoginDialog 2020-02-12 17:31:20 +01:00
17eeed0bfb Split Client#onlineInit method up into performHandshake and initReceiver 2020-02-12 07:53:24 +01:00
c697b099ee Clean-up, moved Settings and SettingsItem into the data package 2020-02-12 07:12:22 +01:00
c5389a6af4 Merge branch 'develop' into f/invalid_login 2020-02-12 06:41:02 +01:00
84e350c02e Removed event handler casts, simplified logging statements 2020-02-12 06:12:04 +01:00
48e1d791c6 Cleanup, fixed offline cache relay when starting in offline mode 2020-02-11 19:35:23 +01:00
DieGurke
577ee6364d Implemented contact list update 2020-02-11 18:15:15 +01:00
8a6f729abf Adjusted to event system refactoring 2020-02-11 17:17:22 +01:00
39d4cbd8ba Merge branch 'develop' into f/contacts 2020-02-11 10:06:06 +01:00
DieGurke
73ba6b0456 Small improvements
* Resettings the searchField after adding a contact and clearing the
contactsModel after adding a contact.

* Revised LoginDialoge UI
2020-02-10 23:21:06 +01:00
c90bbbc262 Refactored to the new contact related classes in envoy-common 2020-02-10 22:31:40 +01:00
DieGurke
128d5bec4a Updated client
* Updated ContactsRequest constructor to work with new versin of this
event.
*Implemented LocalDB updates when adding a contact and display it
immediately, so you can chat directly.
2020-02-10 19:51:50 +01:00
DieGurke
48a64b08f9 Commented out the localDb client update stuff (temporary) 2020-02-09 22:15:15 +01:00
delvh
d663f3ff8f fixed Javadoc error. Current implementation is NOT working! 2020-02-09 20:48:08 +01:00
delvh
d37ab53275 Added handling of incorrect logins 2020-02-09 20:43:12 +01:00
DieGurke
e8062be346 Adding contacts technical aspects
* Contact SearchResult from server is now getting processed and
correctly displayed.
* Sending a AddContact event to server, if button is pressed.
* Added several interface objects
2020-02-09 16:26:36 +01:00
DieGurke
90409c1d90 Implemented ContactRenderer and built a properScrollPane with list, etc. 2020-02-08 11:43:37 +01:00
e6c4139b4d Fixed threading issue when receiving unread messages 2020-02-08 11:43:02 +01:00
delvh
337c74ded1 Redesigned UserStatusChangeProcessor to please @CyB3RC0nN0R s wishes 2020-02-07 15:57:41 +01:00
delvh
f28d4e2e55 added newline at the end of UserStatusChangeProcessor file 2020-02-07 15:43:33 +01:00
delvh
278e7a8a0a added newline at the end of Client file 2020-02-07 15:41:17 +01:00
delvh
0aba82fd9f Added the UserStatusChangeProcessor and its implementation
this commit serves as solution to the merge conflict between
f/user_status_change_processor and develop
2020-02-07 15:27:26 +01:00
120ba8a60d Fixed Javadoc errors 2020-02-07 13:44:09 +01:00
e1f248c2b8 Added logging statement to WriteProxy#flushCache() 2020-02-07 09:39:15 +01:00
DieGurke
5086ad62b6 Implemented advanced UI 2020-02-06 22:19:33 +01:00
effe41f458 Implemented login through command line arguments
* Moved Config and ConfigItem to data package
* Added mandatory property to ConfigItem
* Added user and password ConfigItems to Config
2020-02-06 22:17:14 +01:00
74715bbf82 Persisting cache in PersistentLocalDb 2020-02-06 21:42:17 +01:00
4afe073e79 Integrated WriteProxy into the sending process 2020-02-06 21:28:02 +01:00
bf38d2f19f Added WriteProxy with creation method in Client, added caches to LocalDb 2020-02-06 21:03:08 +01:00
cdef310a69 Replaced MessageCache by Cache<T>
This class will be used to implement the offline cache for both messages
and events.
2020-02-06 18:35:05 +01:00
81dcee27f1 Renamed database package to data, moved Chat to data package 2020-02-05 20:58:30 +01:00
d005ed8d50 Fixed UI update after message status changes 2020-02-05 20:08:24 +01:00
DieGurke
8f4cf1428a Reading current chat when a new message is received 2020-02-05 17:23:30 +01:00
58b9ac8081 Updating status of received messages to RECEIVED 2020-02-05 16:12:10 +01:00
5e335a98bd Listening to message status changes, sending READ status updates 2020-02-05 07:09:25 +01:00
8f967afa88 Moved client to net package, removed unnecessary recipient property 2020-02-04 19:46:18 +01:00
44541936d3 Implemented receiving unread messages using a message cache
Fixes #98
2020-02-04 19:13:31 +01:00
7e0ae2e831 Added Chat#isUnread() for future use in message notifications 2020-02-03 22:06:56 +01:00
d43b45d36b Made local database persistence optional
* Split LocalDB into abstract class LocalDb and PersistentLocalDb and
TransientLocalDb
* Moved LocalDb to database package
* Added ignoreLocalDb option to Config
2020-02-03 21:52:48 +01:00
63990f6d57 Fixed message reading 2020-02-03 06:57:19 +01:00
delvh
76a9e2c043 Moved Receiver + ReceivedMessageProcessor in the net package
additionally added serialVersionUIDs for the Event classes
2020-02-02 13:44:10 +01:00
82fd57d19c Moved dimension and spacing calculation to MessageListRenderer 2020-02-02 11:37:46 +01:00
07b5ee841a Fixed spacing in ComponentList 2020-02-01 11:34:57 +01:00
2fb419b0e7 Fixed receiving messages 2020-02-01 10:41:59 +01:00
8e449d150b Removed old sync thread, implemented chat reading 2020-02-01 10:20:06 +01:00
c0f4e5d270 Implemented message ID generation and generator requests
* Persisting IdGenerator in LocalDB
* Added Client#requestIdGenerator()
* Listening to MessageCreationEvents in ChatWindow
2020-01-29 07:44:25 +01:00
cd5030735a Added Javadoc for the ui.list package 2020-01-27 21:01:38 +01:00
5ecda78cf1 Changed message list components to JPanels 2020-01-27 20:23:30 +01:00
063f5798dc Implemented ComponentList rendering and integration of message list 2020-01-27 20:11:47 +01:00
43851d9893 Started ComponentList integration for message list 2020-01-26 22:10:15 +01:00
8d41a2230a Added component list classes (unfinished) 2020-01-25 11:33:28 +01:00
DieGurke
b06a4cfe05 Registration UI 2020-01-18 13:13:03 +01:00
0165d6aa27 Prepared user registration implementation 2020-01-18 10:34:04 +01:00
29a7fce343 Moved MessageEvent back from envoy-common. 2020-01-06 18:13:00 +01:00
942c8b4c72 Fixed ObjectInputStream header error by reading chunks. 2020-01-06 17:37:38 +01:00
1e4bd12c23 Adjusted message creation to the updated MessageBuilder. 2020-01-06 15:00:44 +02:00
5bbf8c3503 Added contact initialization to handshake and ReceivedMessageProcessor 2020-01-02 17:11:41 +02:00
96066863ca Added LoginDialog 2020-01-01 18:18:18 +02:00
7e2956ca11 Acquiring user list through the sender object 2019-12-31 16:38:52 +02:00
46d9cd49f4 Added Client#sendMessage(Message), closing socket on exit 2019-12-31 11:57:11 +02:00
3cebdc8997 Integrated the new Message class from envoy-common 2019-12-31 11:27:52 +02:00
e66dba8812 Receiving objects from server on separate thread 2019-12-30 18:18:03 +02:00
61d3d44ee5 Working on handshake mechanism with login 2019-12-29 12:54:05 +02:00
88c810c2f4 Started integration of new server architecture
* Removed JAX-RS dependency from POM
* Changed version in POM to 0.3-alpha

The errors that appear throughout LocalDB and Client are caused by the
architecture change and will be removed in future commits.
2019-12-28 22:20:43 +02:00
DieGurke
286f487fc9 Fixed not updating theme when editing active theme bug. 2019-12-27 17:34:28 +01:00
DieGurke
b21b212695 Added a v 2019-12-27 17:04:02 +01:00
3df4556c49 Merge branch 'f/themeNameCollision' of https://github.com/informatik-ag-ngl/envoy-client into f/themeNameCollision 2019-12-27 16:58:43 +02:00
0785732f15 Added instantaneous theme change, fixed dialog modality 2019-12-27 16:56:48 +02:00
DieGurke
81e21c3652 Fixed Javadoc comment 2019-12-27 13:30:40 +01:00
DieGurke
fd40cadf6c Added new theme name choose window
* Added NewThemeScreen Class
OptionsScreen when name conflict
* Added functionality to overwrite themes.
2019-12-26 21:46:35 +01:00
DieGurke
83ddbf5360 Fixed possible name conflict when creating new themes. 2019-12-25 21:43:59 +01:00
e19b647432 Added Javadoc since tag to SettingsItem 2019-12-23 19:37:09 +01:00
DieGurke
2f090ad5d6 Fixed theme customization bug 2019-12-23 19:00:17 +01:00
3f8702b17c Added Javadoc for SettingsItem and SerializationUtils. 2019-12-23 16:59:57 +01:00
DieGurke
494102b765 Javadoc and short notation 2019-12-23 16:43:59 +01:00
07b2c73b50 Polished settings mechanism
* Set initial value of onCloseMode setting to true
* Added setting change handlers
* Applying settings changes immediately
* Made PrimaryToggleSwitch round
2019-12-23 16:33:13 +01:00
DieGurke
4ef0b3352c Fixed weird toggle switch programming from @CyB3rC0nN0R 2019-12-23 15:54:55 +01:00