Commit Graph

474 Commits

Author SHA1 Message Date
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
66cf42e0d9 Made PrimaryToggleSwitch a sub class of JButton 2019-12-23 15:35:27 +01:00
DieGurke
3020125334 Removed ON OFF Text 2019-12-23 15:20:20 +01:00
91880424d3 Adjusting PrimaryToggleSwitch implementation to SettingsItem class 2019-12-23 14:51:52 +01:00
89e8fc62dc Saving settings in a file, added SettingsItem class 2019-12-23 14:25:46 +01:00
DieGurke
7ec9e6b13a Merge pull request #77 from informatik-ag-ngl/f/onCloseToggleSwitch
General Settings screen
2019-12-23 14:20:47 +01:00
eebc5ab7ad Added custom Color class to envoy.ui with invert() and toHex() methods. 2019-12-23 11:28:00 +01:00
762d7630e3 Fixed formatting, Javadoc and other cosmetic problems
Also fixed PrimaryToggleSwitches having editable text in their state and
description fields
2019-12-23 10:56:33 +01:00
DieGurke
5090e81b56 Enter to Send and Revising
* Revised style and improved object architecture
* Added Enter to Send mechanism.
2019-12-23 00:03:22 +01:00
DieGurke
141b2371cc Formatting 2019-12-22 21:48:19 +01:00
DieGurke
abe36d999a 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
e201ec3da1 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
965aa5a2d2 Delete SettingsScreen.java 2019-12-21 22:28:22 +01:00
142bcd53c1 Merge branch 'master' into develop 2019-12-21 21:23:19 +01:00
0c80d934fe Added missing since tags as requested by @delvh 2019-12-21 21:07:18 +01:00
9c03f2dab2 Loading ChatWindow in parallel to Client and LocalDB
Fixes #26
2019-12-21 19:00:29 +01:00
27dc78cfe8 Merge pull request #71 from informatik-ag-ngl/f/improveeed_logging
Improved logging
2019-12-21 18:30:51 +01:00
7212e10d54 Removed unnecessary log message from LocalDB, logging Sync 2019-12-21 18:29:59 +01:00
34e9dc9e8b 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
d83dc2931f 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
ea45c51cf0 Adjustment
* Adjusted standard dark theme
* Changed Save and Cancel buttons to PrimaryButtons
2019-12-21 13:18:20 +01:00
732c8d1d20 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
c0f47acd22 Fixed Javadoc as requested by @delvh 2019-12-21 12:36:26 +01:00
DieGurke
941d8266bc Merge branch 'develop' into f/UserFriendlySettings 2019-12-21 12:35:38 +01:00
DieGurke
7ec8257aff Revising
Added Author
Removed Comments
2019-12-21 12:31:32 +01:00
DieGurke
90429d8615 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
d62793b810 Implemented logger level configuration, added Javadoc
Fixes #45
2019-12-21 12:20:23 +01:00
1324356827 Moved local files to .envoy directory in user home
Fixes #57
2019-12-21 11:50:01 +01:00
8b6e501c2e Improved Config machanism with ConfigItems
Added logger levels and home directory to Config
2019-12-21 11:35:01 +01:00
DieGurke
474480abb6 Fixed UI Alignment of theme customization components
Fixes #39
2019-12-21 11:17:23 +01:00
a8406cb033 Merge pull request #63 from informatik-ag-ngl/f/settings_panel
Added SettingsPanel architecture
2019-12-21 10:02:18 +01:00
84353c66d6 Added Javadoc since tags as requested by @delvh 2019-12-21 10:02:25 +01:00
e6accec291 Fixed layout of SettingsPanel in SettingsScreen 2019-12-21 08:06:05 +01:00
5570d845ae 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
442bf79c69 Added missing Javadoc since tags as requested by @delvh 2019-12-21 00:43:38 +01:00
10dd3635a5 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
c7959e5287 Added and fixed existing Javadoc, configured Javadoc validation 2019-12-20 20:25:54 +01:00
a0c214b178 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
e8f989902a Saving settings and local database on application exit
Fixes #55
2019-12-20 15:05:31 +01:00
delvh
95fa3a539f Merge branch 'develop' into f/javadoc 2019-12-20 12:58:06 +01:00
delvh
1e1b078a37 Updated malformed Javadoc 2019-12-20 12:53:40 +01:00
delvh
e7f6826e37 Deleted an unnecessary comment as per @CyB3RC0nN0Rs request 2019-12-20 12:51:35 +01:00
02baf70d92 Fixed errors caused by preparing the merge into develop 2019-12-20 12:36:53 +01:00
delvh
e8d15be940 Merge branch 'develop' into f/logger 2019-12-20 12:30:53 +01:00
88d2e42494 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
500555c8db Added Javadoc requested by @delvh 2019-12-18 22:07:05 +01:00
delvh
7e02217002 Updated EnvoyLogger -> still not working 2019-12-18 17:11:56 +01:00
69153005cd Fixed vertical scroll bar drawing on 4K monitors 2019-12-17 08:17:22 +01:00
396686bfdc Added ThemeChangeEvent, improved EventHandler declaration 2019-12-16 09:41:21 +01:00
DieGurke
f6bd6ab754 Formatting
* Split applyTheme method in applyTheme and autoscroll.
* Added Javadoc
2019-12-15 20:18:43 +01:00
acc7424503 Added PrimaryScrollPane class with default scroll pane UI settings 2019-12-15 17:44:13 +01:00
adb5c417c5 Improved code style and formatting 2019-12-15 16:26:11 +01:00
DieGurke
4f777412f3 Cold style improvement
Changed if query with isVertical in PrimaryScrollBar to short form.
2019-12-15 12:53:01 +01:00
DieGurke
3fefeb1082 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
6bfa3c2b79 Horizontal Scroll Bar
Implemented primaryScrollBar support for horizontal scroll bar as well.
2019-12-15 00:34:44 +01:00
DieGurke
4a2d6f913b 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
8267fa4d0d Implemented a (not working) own version of a logger
and reformatted code
2019-12-14 14:58:07 +01:00
12b0cc1d0b Merge pull request #53 from informatik-ag-ngl/f/background_execution
Added background execution
2019-12-14 14:30:19 +01:00
f0353c8c72 Added background execution 2019-12-14 14:17:24 +01:00
DieGurke
049b2872db Merge branch 'develop' into b/incorrect_color_change 2019-12-14 14:03:02 +01:00
DieGurke
25eab59d7c Merge branch 'develop' into f/primaryComponents 2019-12-14 13:54:22 +01:00
DieGurke
4d35129a67 Formatted 2019-12-14 13:52:47 +01:00
DieGurke
4ba1f6360c Revised code according to reviews by @delvh and @CyB3RC0nN0R 2019-12-14 13:46:19 +01:00
DieGurke
a0e72a6e56 Changed colors management in the displaying of the themes settings
screen.
2019-12-14 12:54:32 +01:00
ac7b7fa3d6 Added documentation, refined exception handling 2019-12-14 11:30:00 +01:00
DieGurke
89b75b00c8 Fixes bugs with the incorrect applying of the changed colors.
Fixes #50
2019-12-14 11:22:37 +01:00
0123935cea Not starting the sync thread in offline mode 2019-12-14 11:02:01 +01:00
ea3ad85611 Implemented offline mode for Client and LocalDB 2019-12-14 10:53:20 +01:00
5b84578a0a Removed user id, name and email from Settings 2019-12-14 09:58:25 +01:00
2b1ece1c48 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
e69deb9bd6 Moved client.properties loading from Startup to Config 2019-12-13 08:50:15 +01:00
0f64ce0a01 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
ecf2566431 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
418a60c074 Primary Button
Took primaryButton class from corresponding branch.
Implemented constructors in ChatWindow.
2019-12-07 22:48:12 +01:00
e7a567d7bb Silent failure when StatusTrayIcon is not supported on a platform 2019-12-07 21:14:55 +01:00
DieGurke
ecfd3b17bf Revised requested changes besides 2 (please change by yourself) 2019-12-07 17:58:59 +01:00
delvh
94dc68e2c5 Fixed an indentation error in Javadoc 2019-12-07 14:54:03 +01:00
delvh
6510c26ba2 Merge branch 'develop' into f/themes 2019-12-07 14:50:20 +01:00
DieGurke
d36f3cc9dd Fixes themes list display bug and error when loading client with custom
theme
2019-12-07 13:31:08 +01:00
b0b76984ea Added new Envoy logo designed by @DieGurke 2019-12-07 13:02:38 +01:00
057c21061b Implemented theme serialization to a file 2019-12-07 11:48:41 +01:00
delvh
22e9593e90 Merge branch 'develop' into f/logger 2019-12-07 11:22:47 +01:00
DieGurke
e245a129af Themes & Themes Configuration
Added themes to choose from and provides customization setting for
these.
2019-12-07 10:58:03 +01:00
delvh
c79500acde Improved logging and code readability 2019-12-07 10:44:25 +01:00
8f7e115219 Implemented changes requested by @delvh 2019-12-07 09:53:55 +01:00
f55fe47db0 Fix merge conflict 2019-12-05 16:20:18 +01:00
8247e18fce Javadoc fixes and using superclass when injecting WindowFocusListener 2019-12-05 16:17:33 +01:00
e4249919ad Merge branch 'develop' into f/message_notification 2019-12-05 16:11:28 +01:00
6cf8c462b9 Re-added logging to LocalDB to resolve merge conflict 2019-12-05 16:10:28 +01:00
2831b9a7a3 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
6dad4eda08 Fixed Envoy logo loading for StatusTrayIcon 2019-12-05 15:13:19 +01:00
50945a45a2 Simplified and optimized sync related code in LocalDB 2019-12-05 15:05:05 +01:00
dca65df9bd Added Javadoc to event related classes and StatusTrayIcon 2019-12-04 23:27:17 +01:00
af7408142c 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
b5badae773 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
3c7f95f869 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
378a83638a Added a small popup menu to StatusTrayIcon and loading it in Startup 2019-12-04 07:50:59 +01:00
fbe2d0d0b0 Moved system tray logic to StatusTrayIcon class 2019-12-03 21:48:16 +01:00
06bd127432 Added a test call to the system tray displaying a message 2019-12-02 21:44:18 +01:00
delvh
eed12695bb Merge branch 'develop' into f/logging 2019-11-29 21:04:44 +01:00
363aa1a889 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
8e5d166d75 Deleted unnecessary blank line 2019-11-29 20:54:33 +01:00
delvh
cb0e7db444 Fixed minor Javadoc errors 2019-11-29 20:48:21 +01:00
delvh
9e83cc1c66 Merge branch 'develop' into f/logging 2019-11-29 20:33:42 +01:00
derharry333
c93f9fe230 Replaced print statements with logger statements. 2019-11-27 17:07:25 +01:00
de23c185c6 Envoy Client v0.1-alpha 2019-11-27 06:30:05 +01:00
delvh
8f0bf6012a 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
da7f898f1a 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
7dc7ec385c improved Javadoc in some files, especially UIColors 2019-11-22 22:40:00 +01:00
delvh
92fb3d706c 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
812c4e82ec updated Javadoc 2019-11-16 14:16:27 +01:00
84e8e42fbb Removed LocalDB#addWaitingMessageToLocalDB, fixed formatting 2019-11-16 10:47:32 +01:00
5a3365b4cb Preventing sent messages from being added to the sync again
Fixed #25
2019-11-16 08:23:04 +01:00
49ea688770 Mark all newly received messages in the current chat as read
Fixes #24
2019-11-16 08:06:07 +01:00
63b1809c90 Loading config from properties before command line args 2019-11-13 05:59:51 +01:00
DieGurke
acb744a34d Revised merge conflict changes 2019-11-09 17:47:18 +01:00
DieGurke
c28f3e2e26 Merge branch 'develop' into f/sync 2019-11-09 17:23:15 +01:00
DieGurke
e1ef85d702 Edit syncTimeout property, made Config a singleton 2019-11-09 14:23:26 +01:00
DieGurke
cd8a92c619 Fixed reading messages
Fixes #23
2019-11-09 14:06:09 +01:00
42f3a97e8a Removed empty lines 2019-11-09 13:37:51 +01:00
4ff67c69a2 Fixed grammar 2019-11-09 13:35:17 +01:00
f69754d476 Removed unnecessary TODO item 2019-11-09 13:29:47 +01:00
DieGurke
6c212df309 Revised structure 2019-11-09 13:25:18 +01:00
delvh
b70dabb02f Improved ChatWindow according to CyB3RC0nN0Rs Feedback 2019-11-09 10:23:00 +01:00
d91fb6bf21 Update Client.java 2019-11-09 10:04:58 +01:00
delvh
b1733372a0 minor changes in ChatWindow and SettingsScreen 2019-11-09 09:52:27 +01:00
c58a4a73d3 Extracted updateUserStates method, fixed localDB initialization 2019-11-09 09:38:10 +01:00
delvh
d9870f9b22 Added KeyListeners for sending the message and an automatic line break 2019-11-05 13:30:23 +01:00
Maxi
a0dc25ba61 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
0edd9d998f 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
f1b6869945 Fixed Javadoc formatting and spelling 2019-10-30 17:01:55 +01:00
delvh
043219135f Updated Javadoc for LocalDB File 2019-10-30 08:10:40 +01:00
delvh
236564c32d Updated Javadoc in Config File 2019-10-30 07:45:33 +01:00
f8ce1ee6d9 Merge branch 'develop' into f/local_db 2019-10-30 06:26:50 +01:00
018753e115 Fixed formatting 2019-10-30 06:19:50 +01:00
07dc11eebd Renamed ChatSynchronizer to LocalDB, added user-specific files 2019-10-27 21:40:40 +01:00
delvh
ab3a18d4df 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
d2dbf91b8a Added ChatSynchronizer class to store chats locally 2019-10-27 17:25:58 +01:00
4147df262d Moved GET request implementations into a single method 2019-10-26 18:31:49 +02:00
b7b4e95e65 Reduced the number of user list requests to one
Fixes #16
2019-10-26 17:49:45 +02:00
5201eaa320 Fixed NullPointerException on empty date 2019-10-23 17:17:15 +02:00
bab984fb1f 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
18a078475d Added HTML formatting to message list elements 2019-10-23 05:49:15 +02:00
Maxi
aeb138334e Requesting unread messages an assigning them to the right chat element. 2019-10-19 15:09:32 +02:00
78f9f4c883 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
ea42bcc63b Formatted Chat file
Formatted Getters and Setters
2019-10-19 10:14:46 +02:00
Maxi
2761e178da 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
a00a2748ae Merge pull request #7 from informatik-ag-ngl/f/startup
senderID
2019-10-13 18:06:57 +02:00
f22c4fa9df Fixed formatting and Javadoc
Closes #5
2019-10-13 17:25:20 +02:00
Maxi
b9157ca992 Added the setting of the senderID in the xml. 2019-10-12 17:35:58 +02:00
delvh
d5dd076ce2 Added Startup class and login by username. 2019-10-12 14:45:58 +02:00
leon
3321ee01b1 Added Javadoc to Config file. 2019-10-12 11:52:29 +02:00
fe95e6bfb6 Renamed EnvoyClient to Client, added Config class 2019-10-12 11:19:29 +02:00
bc0d519cce Added Javadoc, changed getFirstTextContent from public to private 2019-10-12 08:24:15 +02:00
a3e2d6e311 Replaces AbstractListModel with ListCellRenderer, optimized threading 2019-10-12 08:19:00 +02:00
Maxi
6390be5e8b Added user list (abstractListModel), setting the recipientID (in message
object) by selecting user from the list.
2019-10-09 21:54:31 +02:00
5c495e5bd8 Using JAX-RS to retrieve user list 2019-10-07 17:35:57 +02:00
Maxi
09dba0fa4f Added user list download 2019-10-07 16:14:14 +02:00
c2fe1c8240 Fixed runtime error related to XML marshaling 2019-10-06 13:33:23 +02:00
b39cecbfbc Fixed compile error caused by missing import declaration 2019-10-06 13:30:31 +02:00
043990c64d Merge branch 'develop' into f/config 2019-10-06 10:45:19 +02:00
efffbb75eb Fixed formatting 2019-10-06 10:41:32 +02:00
affbcc1774 Added support for new message schema 2019-10-05 18:20:38 +02:00
derharry333
17fe38a377 Added server.properties 2019-10-05 14:37:24 +02:00
88a3a785b4 Improved code style, added debug XML output 2019-10-05 12:48:21 +02:00
Maxi
b4530df1cc Added Message List 2019-10-05 10:07:52 +02:00
37ebc77d71 Moved main method to ChatWindow, made message sending asynchronous 2019-09-30 09:53:16 +02:00
DieGurke
b0d4416053 Add files via upload 2019-09-29 18:53:47 +02:00
36910930bd Added message sending request 2019-09-28 16:23:00 +02:00
f8a2126f10 Added Maven project 2019-09-28 11:51:52 +02:00