Commit Graph

261 Commits

Author SHA1 Message Date
DieGurke
56afbc5422 Formatting 2019-12-22 21:48:19 +01:00
DieGurke
b577f785b5 OnCloseMode
* Toggle Switch in general settings effects the onCloseMode of the
window.
* Saving in prefs.
* Styled the general settings screen and added some text.
2019-12-22 21:28:13 +01:00
DieGurke
7a3edb932d PrimaryToggleSwitch
* Adds a component, that can be used to toggle between two options.
* Is built to be able to be used for any event, that is structured like
the OnCloseChangeEvent class.
2019-12-22 18:07:30 +01:00
70d2ef6538
Delete SettingsScreen.java 2019-12-21 22:28:22 +01:00
abcb0cd1e1
Merge branch 'master' into develop 2019-12-21 21:23:19 +01:00
d449192d17 Added missing since tags as requested by @delvh 2019-12-21 21:07:18 +01:00
675488beb8 Loading ChatWindow in parallel to Client and LocalDB
Fixes #26
2019-12-21 19:00:29 +01:00
3e2a44130a
Merge pull request #71 from informatik-ag-ngl/f/improveeed_logging
Improved logging
2019-12-21 18:30:51 +01:00
5f3fce1f71 Removed unnecessary log message from LocalDB, logging Sync 2019-12-21 18:29:59 +01:00
ab13d5adb4 Improved logging
Logs are now written to System.out instead of System.err. Also they are
not duplicated as the default ConsoleHandler has been removed.

When using the application, logs may not appear in the console
immediately as the StreamHandler used to output them used an internal
buffer that may only be flushed when closing the application.

Logs are now formatted as [DATE TIME] [LEVEL] [LOGGER] MSG
2019-12-21 18:19:10 +01:00
DieGurke
2e033a4e84 Revised Cancel and Save Buttons
* Fixed weird gbl_buttonPane declaration.
* Added correct resizing and repositioning of cancel and save buttons
when resizing the settings window.
* Fixed incorrect buttonName displaying.
2019-12-21 18:05:31 +01:00
DieGurke
7c41296149 Adjustment
* Adjusted standard dark theme
* Changed Save and Cancel buttons to PrimaryButtons
2019-12-21 13:18:20 +01:00
be8059f2c0
Merge pull request #65 from informatik-ag-ngl/f/config
Added logger level and home folder configuration
2019-12-21 12:48:43 +01:00
0393a0af81 Fixed Javadoc as requested by @delvh 2019-12-21 12:36:26 +01:00
DieGurke
d7688e8bcc
Merge branch 'develop' into f/UserFriendlySettings 2019-12-21 12:35:38 +01:00
DieGurke
f22f0a766b Revising
Added Author
Removed Comments
2019-12-21 12:31:32 +01:00
DieGurke
b1dbe58f2c User Friendly Settings
* Removed CreateNewButton button and added it's functionality to the
save button.
* Revised theme dropDown style.

fixes #64
2019-12-21 12:24:11 +01:00
57ffbc2b2c Implemented logger level configuration, added Javadoc
Fixes #45
2019-12-21 12:20:23 +01:00
921f1f8689 Moved local files to .envoy directory in user home
Fixes #57
2019-12-21 11:50:01 +01:00
c2f7bd7b21 Improved Config machanism with ConfigItems
Added logger levels and home directory to Config
2019-12-21 11:35:01 +01:00
DieGurke
f31f252613 Fixed UI Alignment of theme customization components
Fixes #39
2019-12-21 11:17:23 +01:00
f9a1db90ea
Merge pull request #63 from informatik-ag-ngl/f/settings_panel
Added SettingsPanel architecture
2019-12-21 10:02:18 +01:00
cd508af2d9 Added Javadoc since tags as requested by @delvh 2019-12-21 10:02:25 +01:00
5c93255fb6 Fixed layout of SettingsPanel in SettingsScreen 2019-12-21 08:06:05 +01:00
e367e5d57d Added custom import organization preferences
Imports are converted to .* after 4 imports from the same package,
static imports are converted to .* after 2 imports from the same type
2019-12-21 07:54:15 +01:00
9234ab87ae Added missing Javadoc since tags as requested by @delvh 2019-12-21 00:43:38 +01:00
b0ce8fe340 Refined theme customization mechanism
* Created abstract SettingsPanel class for defining settings screen
pages
* Moves theme customization related settings to new class
ThemeCustomizationPanel
* Changes Theme to use a map internally
2019-12-21 00:29:16 +01:00
ccff438c7f Added and fixed existing Javadoc, configured Javadoc validation 2019-12-20 20:25:54 +01:00
eaa384d018
Merge pull request #61 from informatik-ag-ngl/b/save_exit
Saving settings and local database on application exit
2019-12-20 19:30:26 +01:00
23d7d6b164 Saving settings and local database on application exit
Fixes #55
2019-12-20 15:05:31 +01:00
delvh
771f358eb3
Merge branch 'develop' into f/javadoc 2019-12-20 12:58:06 +01:00
delvh
549fc3de7a Updated malformed Javadoc 2019-12-20 12:53:40 +01:00
delvh
c9c99b3117 Deleted an unnecessary comment as per @CyB3RC0nN0Rs request 2019-12-20 12:51:35 +01:00
e77abd3b00 Fixed errors caused by preparing the merge into develop 2019-12-20 12:36:53 +01:00
delvh
bf440d367c
Merge branch 'develop' into f/logger 2019-12-20 12:30:53 +01:00
2685276ae3 Fixed Logger initialization
Renamed EnvoyLogger to EnvoyLog and moved it to the newl< created
envoy.client.util package.
2019-12-20 11:59:11 +01:00
9b679aa049 Added Javadoc requested by @delvh 2019-12-18 22:07:05 +01:00
delvh
3652a5bc97 Updated EnvoyLogger -> still not working 2019-12-18 17:11:56 +01:00
7de411f735 Fixed vertical scroll bar drawing on 4K monitors 2019-12-17 08:17:22 +01:00
0cd0380c87 Added ThemeChangeEvent, improved EventHandler declaration 2019-12-16 09:41:21 +01:00
DieGurke
4d235c2cd9 Formatting
* Split applyTheme method in applyTheme and autoscroll.
* Added Javadoc
2019-12-15 20:18:43 +01:00
2405d4a6ad Added PrimaryScrollPane class with default scroll pane UI settings 2019-12-15 17:44:13 +01:00
b051ddb831 Improved code style and formatting 2019-12-15 16:26:11 +01:00
DieGurke
cf56b2f7ad Cold style improvement
Changed if query with isVertical in PrimaryScrollBar to short form.
2019-12-15 12:53:01 +01:00
DieGurke
cda5c37a4a Autoscroll
* Implemented functionality to automatically scroll down when user is on
the bottom of the chat and then there are new messages added.
* When chat is opened, the vertical scroll bar starts at the bottom.
* When rereading messages, the chat doesn't scroll down if new messages
are added. (Besides see first point)
2019-12-15 12:48:40 +01:00
DieGurke
b1f9172b63 Horizontal Scroll Bar
Implemented primaryScrollBar support for horizontal scroll bar as well.
2019-12-15 00:34:44 +01:00
DieGurke
c5956ef6f4 Custom scroll bar
* Added PrimaryScrollBar class
* Implemented PrimaryScrollBar in ChatWindow for the ScrollPanes
vertical scroll bar
2019-12-14 19:10:45 +01:00
delvh
cac42e2d83 Implemented a (not working) own version of a logger
and reformatted code
2019-12-14 14:58:07 +01:00
043c166840
Merge pull request #53 from informatik-ag-ngl/f/background_execution
Added background execution
2019-12-14 14:30:19 +01:00
62635b9cfa Added background execution 2019-12-14 14:17:24 +01:00
DieGurke
054da369e7
Merge branch 'develop' into b/incorrect_color_change 2019-12-14 14:03:02 +01:00
DieGurke
7d38656b54
Merge branch 'develop' into f/primaryComponents 2019-12-14 13:54:22 +01:00
DieGurke
01d4c9eb13 Formatted 2019-12-14 13:52:47 +01:00
DieGurke
507e249512 Revised code according to reviews by @delvh and @CyB3RC0nN0R 2019-12-14 13:46:19 +01:00
DieGurke
59dff7bf25 Changed colors management in the displaying of the themes settings
screen.
2019-12-14 12:54:32 +01:00
f044c5cc8d Added documentation, refined exception handling 2019-12-14 11:30:00 +01:00
DieGurke
6ab38e1e1a Fixes bugs with the incorrect applying of the changed colors.
Fixes #50
2019-12-14 11:22:37 +01:00
fb3b53efd8 Not starting the sync thread in offline mode 2019-12-14 11:02:01 +01:00
2eb9c79106 Implemented offline mode for Client and LocalDB 2019-12-14 10:53:20 +01:00
27c420afdc Removed user id, name and email from Settings 2019-12-14 09:58:25 +01:00
f983b6ffe7 Added user list serialization to LocalDB
* Added user list to LocalDB
* Removed client user from LocalDB constructor
2019-12-14 08:44:03 +01:00
daca66d729 Moved client.properties loading from Startup to Config 2019-12-13 08:50:15 +01:00
117f9043ce Added offline mode to Client
+ Saving the user ID in Settings
+ Loading the user ID from Settings in Client if the server can't be
reached
2019-12-11 18:52:30 +01:00
DieGurke
3c8a4c445f Primary TextArea
* Added PrimaryTextArea Class
* Implemented PrimaryTextArea in ChatWindow (messageEnterArea)
* Made some slight adjustments to the PrimaryButton Class
2019-12-07 23:23:25 +01:00
DieGurke
4d7e0bdbe0 Primary Button
Took primaryButton class from corresponding branch.
Implemented constructors in ChatWindow.
2019-12-07 22:48:12 +01:00
10b1cc0001 Silent failure when StatusTrayIcon is not supported on a platform 2019-12-07 21:14:55 +01:00
DieGurke
bafadca4cb Revised requested changes besides 2 (please change by yourself) 2019-12-07 17:58:59 +01:00
delvh
c078c33d8b
Fixed an indentation error in Javadoc 2019-12-07 14:54:03 +01:00
delvh
6679685b3f
Merge branch 'develop' into f/themes 2019-12-07 14:50:20 +01:00
DieGurke
233e3bcb83 Fixes themes list display bug and error when loading client with custom
theme
2019-12-07 13:31:08 +01:00
6f7bee4509 Added new Envoy logo designed by @DieGurke 2019-12-07 13:02:38 +01:00
78be2e01a7 Implemented theme serialization to a file 2019-12-07 11:48:41 +01:00
delvh
9adc2d6289
Merge branch 'develop' into f/logger 2019-12-07 11:22:47 +01:00
DieGurke
860d2b0dcf Themes & Themes Configuration
Added themes to choose from and provides customization setting for
these.
2019-12-07 10:58:03 +01:00
delvh
354f46d0cf Improved logging and code readability 2019-12-07 10:44:25 +01:00
f7bb3e6789 Implemented changes requested by @delvh 2019-12-07 09:53:55 +01:00
8ca2bc0fd8 Fix merge conflict 2019-12-05 16:20:18 +01:00
eaa1e4e1ae Javadoc fixes and using superclass when injecting WindowFocusListener 2019-12-05 16:17:33 +01:00
bfa6455e16
Merge branch 'develop' into f/message_notification 2019-12-05 16:11:28 +01:00
c5988731e1 Re-added logging to LocalDB to resolve merge conflict 2019-12-05 16:10:28 +01:00
d105c48c9e Creating message notifications only if ChatWindow has lost focus
StatusTray injects a WindowFocusListener into ChatWindow in its
constructor and does only react to received messages if ChatWindow has
currently lost focus.
2019-12-05 15:42:20 +01:00
ca4369d60e Fixed Envoy logo loading for StatusTrayIcon 2019-12-05 15:13:19 +01:00
25181a1408 Simplified and optimized sync related code in LocalDB 2019-12-05 15:05:05 +01:00
cf6735f621 Added Javadoc to event related classes and StatusTrayIcon 2019-12-04 23:27:17 +01:00
e7b5eaa959 Added message events, triggering message creation event
+ Abstract MessageEvent class with MessageCreationEvent and
MessageModificationEvent subclasses
+ Made StatusTrayIcon an event handler
- Fixed EventBus#getInstance not being static
2019-12-04 22:26:24 +01:00
761db20f5f Added StatusTrayIcon#displayMessageNotification method
Using this method, a message object can be displayed as a OS-specific
notification, which can be useful in the future to alert the user about
an incoming message while the application is not in focus.
2019-12-04 18:52:48 +01:00
c70416df28 Added event system
+ Event interface for defining event objects
+ EventHandler interface for defining event handlers
+ EventBus singleton class for managing event handlers and dispatching
events
2019-12-04 18:50:06 +01:00
3d4b472afb Added a small popup menu to StatusTrayIcon and loading it in Startup 2019-12-04 07:50:59 +01:00
8c9cddfa53 Moved system tray logic to StatusTrayIcon class 2019-12-03 21:48:16 +01:00
652ca8d28b Added a test call to the system tray displaying a message 2019-12-02 21:44:18 +01:00
delvh
f5845b1645
Merge branch 'develop' into f/logging 2019-11-29 21:04:44 +01:00
8696d4d3d9
Merge pull request #31 from informatik-ag-ngl/f/improved_config
Loading config from properties before command line args
2019-11-29 20:59:41 +01:00
delvh
b3befc3514
Deleted unnecessary blank line 2019-11-29 20:54:33 +01:00
delvh
f3078bf7f3
Fixed minor Javadoc errors 2019-11-29 20:48:21 +01:00
delvh
2ea35bd97c
Merge branch 'develop' into f/logging 2019-11-29 20:33:42 +01:00
derharry333
30d380857c Replaced print statements with logger statements. 2019-11-27 17:07:25 +01:00
d09432cecf Envoy Client v0.1-alpha 2019-11-27 06:30:05 +01:00
delvh
ddc6e27abb Added settings object and light theme
Improvements:
* settings are implemented via Preferences API
* fixed "bug" that made partner name pane editable
* light theme is added as new display method
2019-11-23 13:25:12 +01:00
delvh
85e31bc186 Merge branch 'develop' into f/actual_settings
Conflicts:
	src/main/java/envoy/client/LocalDB.java
	src/main/java/envoy/client/ui/ChatWindow.java
2019-11-23 09:20:54 +01:00
delvh
22a9fb7822 improved Javadoc in some files, especially UIColors 2019-11-22 22:40:00 +01:00
delvh
48b9176ac2 Implemented settings object and cleaned up ChatWindow
Improvements:
* Settings were implemented
* Light theme support was implemented
* The readability of ChatWindow got improved
2019-11-22 06:37:59 +01:00
delvh
5e4e1449d2
updated Javadoc 2019-11-16 14:16:27 +01:00
b657f2a516 Removed LocalDB#addWaitingMessageToLocalDB, fixed formatting 2019-11-16 10:47:32 +01:00
eadccd7126 Preventing sent messages from being added to the sync again
Fixed #25
2019-11-16 08:23:04 +01:00
73eb312a90 Mark all newly received messages in the current chat as read
Fixes #24
2019-11-16 08:06:07 +01:00
bbdf17d17b Loading config from properties before command line args 2019-11-13 05:59:51 +01:00
DieGurke
a76f1aa743 Revised merge conflict changes 2019-11-09 17:47:18 +01:00
DieGurke
29d1fc784b
Merge branch 'develop' into f/sync 2019-11-09 17:23:15 +01:00
DieGurke
a9b3224924 Edit syncTimeout property, made Config a singleton 2019-11-09 14:23:26 +01:00
DieGurke
817117905d Fixed reading messages
Fixes #23
2019-11-09 14:06:09 +01:00
8cc132eeb5
Removed empty lines 2019-11-09 13:37:51 +01:00
f0a72d5851
Fixed grammar 2019-11-09 13:35:17 +01:00
b8f05578fe
Removed unnecessary TODO item 2019-11-09 13:29:47 +01:00
DieGurke
52f2f8e1c2 Revised structure 2019-11-09 13:25:18 +01:00
delvh
9c0be9cd9a Improved ChatWindow according to CyB3RC0nN0Rs Feedback 2019-11-09 10:23:00 +01:00
9c88e14d07
Update Client.java 2019-11-09 10:04:58 +01:00
delvh
59fc855364 minor changes in ChatWindow and SettingsScreen 2019-11-09 09:52:27 +01:00
67f9f5133f Extracted updateUserStates method, fixed localDB initialization 2019-11-09 09:38:10 +01:00
delvh
2d3d595164 Added KeyListeners for sending the message and an automatic line break 2019-11-05 13:30:23 +01:00
Maxi
ba0c588c77 Sync
* Completely revised communication between client and server.
* Added synchronization functionality.
* Added Message State updates
* Added UserStatus updates
2019-11-04 23:10:53 +01:00
delvh
4adc23d902 Added automatic line separation and Keylistener for posting
Improvements yet to be made (help wanted!):
* automatic line separation does not work
* automatic line separation needs a case for insertion of a String
* Keylistener for Posting does not work
* Method for listening to multiple keys needed (ctrl+enter)
* A template Settings screen was added, has yet to be polished
2019-10-31 22:11:50 +01:00
316936a1f8 Fixed Javadoc formatting and spelling 2019-10-30 17:01:55 +01:00
delvh
d739f7a445
Updated Javadoc for LocalDB File 2019-10-30 08:10:40 +01:00
delvh
46521d8230
Updated Javadoc in Config File 2019-10-30 07:45:33 +01:00
09ae179728
Merge branch 'develop' into f/local_db 2019-10-30 06:26:50 +01:00
9108961522 Fixed formatting 2019-10-30 06:19:50 +01:00
6e4b4e4d4e Renamed ChatSynchronizer to LocalDB, added user-specific files 2019-10-27 21:40:40 +01:00
delvh
16a3d32875 Updated Javadoc for the whole Repository
Aside from the files ChatWindow, Client and SettingsScreen, theirs is
already in my commit in f/settings
2019-10-27 20:23:36 +01:00
60c8b09b37 Added ChatSynchronizer class to store chats locally 2019-10-27 17:25:58 +01:00
b1467a5cc3 Moved GET request implementations into a single method 2019-10-26 18:31:49 +02:00
09b995ea0f Reduced the number of user list requests to one
Fixes #16
2019-10-26 17:49:45 +02:00
1ded9df82b Fixed NullPointerException on empty date 2019-10-23 17:17:15 +02:00
33d48515b9 Merge branch 'f/multiple_chats' of https://github.com/informatik-ag-ngl/envoy-client.git into f/multiple_chats 2019-10-23 05:49:27 +02:00
3916c14ab6 Added HTML formatting to message list elements 2019-10-23 05:49:15 +02:00
Maxi
0ed71e63a3 Requesting unread messages an assigning them to the right chat element. 2019-10-19 15:09:32 +02:00
8751bd8781 Changed message list to use JLabels as elements
* Using JLabel as message list element
* Managing sender and recipient in Client
* Reduced amount of ReST requests
2019-10-19 12:10:52 +02:00
delvh
4022e227ca
Formatted Chat file
Formatted Getters and Setters
2019-10-19 10:14:46 +02:00
Maxi
ce3d69c6b0 Implemented multiple chat system
* Local saving of these and displaying the partner name
* Added display of timestamp in chat.

Closes #9
2019-10-19 09:59:45 +02:00
DieGurke
b079f7e605
Merge pull request #7 from informatik-ag-ngl/f/startup
senderID
2019-10-13 18:06:57 +02:00
ff8beae4f6 Fixed formatting and Javadoc
Closes #5
2019-10-13 17:25:20 +02:00
Maxi
00f70f19fb Added the setting of the senderID in the xml. 2019-10-12 17:35:58 +02:00
delvh
adefab34cc Added Startup class and login by username. 2019-10-12 14:45:58 +02:00
leon
c2c5b6e105 Added Javadoc to Config file. 2019-10-12 11:52:29 +02:00
68aca9d0ab Renamed EnvoyClient to Client, added Config class 2019-10-12 11:19:29 +02:00
674389f83e Added Javadoc, changed getFirstTextContent from public to private 2019-10-12 08:24:15 +02:00
f840419345 Replaces AbstractListModel with ListCellRenderer, optimized threading 2019-10-12 08:19:00 +02:00
Maxi
4b449cef45 Added user list (abstractListModel), setting the recipientID (in message
object) by selecting user from the list.
2019-10-09 21:54:31 +02:00
d64e3af79d Using JAX-RS to retrieve user list 2019-10-07 17:35:57 +02:00
Maxi
4dcb1ce366 Added user list download 2019-10-07 16:14:14 +02:00
8b036021ab Fixed runtime error related to XML marshaling 2019-10-06 13:33:23 +02:00