Skip to content

Commit e808a32

Browse files
authored
Merge pull request #83 from doubleSlashde/develop
release 1.2.0
2 parents 5f45b9a + b355bf0 commit e808a32

File tree

74 files changed

+2921
-1175
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+2921
-1175
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,4 @@ logs/
2929
*.jar
3030

3131
config.xml
32-
db/
32+
/db/

CHANGELOG.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# Change Log
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
## v1.2.0 - yyyy-mm-dd
6+
7+
### Added
8+
9+
- export functionality of database
10+
- search functionality
11+
- functionality to edit past work items
12+
- possibility to save position on screen
13+
- minutely auto-save to not lose work on crash
14+
- optional reminder for notes if switching projects without notes
15+
- shortcut for minimizing window (Win+Down)
16+
17+
### Changed
18+
19+
- hotkey popup has same functionality now as main project selection
20+
- removed old xml import feature
21+
- adapted report layout
22+
- the main ui is always on top
23+
- Icons changed
24+
25+
### Fixed
26+
27+
## v1.1.0 - 2019-07-15
28+
29+
### Added
30+
31+
Linux support (tested on Ubuntu 18.04), hot keys are disabled for Linux
32+
33+
- about screen with licenses of third party software
34+
- colored time line to report screen
35+
- copy to clipboard button to report screen
36+
- convenient keyboard controls
37+
38+
### Changed
39+
40+
- new Font (OpenSans)
41+
42+
### Fixed
43+
44+
## v1.0.0 - 2018-10-28
45+
46+
### Added
47+
48+
- setting to prevent hiding the project list.
49+
50+
### Changed
51+
52+
- Decreased height of projects in list, so more projects fit in the same space
53+
- "Styled" settings window
54+
55+
### Fixed
56+
57+
- (workaround) 'stuck' key when using hotkeys and locking the pc
58+
59+
## v1.0-beta.2 - 2018-09-25
60+
61+
### Added
62+
63+
- Import functionality for old config.xml
64+
- Database Migrations
65+
66+
### Changed
67+
68+
- Cleaning works from UI if the work is changed on another day
69+
- Moved db folder from user home/keeptime/db to ./db (relative to .jar like logs folder)
70+
71+
### Fixed

CONTRIBUTING.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Contributing
2+
3+
If you want to contribute please follow this guideline.
4+
5+
## FXML files
6+
7+
For editing fxml files, use the "JavaFX Scene Builder" in version 8.5.0.
8+
Layouting is generally done with fxml files.
9+
10+
For fontawesome support add Libraries
11+
`de.jensd:fontawsomefx-commons:8.15`
12+
`de.jensd:fontawsomefx-fontawsome:4.7.0-5`
13+
to the "JavaFX Scene Builder"
14+
15+
Scene Builder may sometimes delete unicode Charakters when fxml file is changed.
16+
reset Glyph Name to reset uniocode Charakter.

README.md

Lines changed: 35 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,41 @@
11
# KeepTime
2+
23
Application to track your time spent on different projects each day. Aim was to create an easy and fast way to track the doings over the day. In the end you get a summary for the day.
34

45
Create projects and choose if they are counted as 'work time'. Select the project you work on. Before you switch the project, write a comment on what u did. Change the project. Repeat.
56

6-
Main view (when you hover over the app):\
7-
![Alt text](/readme/images/main.png?raw=true "Main")
7+
## Usage
8+
9+
### Main view:
10+
![Main Ui with description](readme/images/contextMenuDescription.png?raw=true "Main")
811

912
+ You can move the window by dragging it around
10-
+ If you don't hover over the application the project list collapses
11-
+ Open the context menu for a project to edit/delete or change the project and transfer n minutes of the current running one
12-
+ You can change the project by clicking in the project list, or by using the Hotkey feature (if activated in settings) Strg+Win button. A popup will appear at the mouse cursor. With a mouseclick you have to first focus the app before you can make use of the search functionality. Up/Down will scroll through the projects and Enter will select the project.
13+
+ Open the context menu (with a right-click) for a project to edit/delete or change the project and transfer n minutes of the current running one
1314
+ In the taskbar you will also see the current time + the color of the active project
14-
+ You can choose the used colors for the main window, if the project list should be left or right and if you want to use the Hotkey
15+
+ The current Project will be saved eyery minute to mitigate loss on system crash or shutdown without closing window manually first.
1516
+ After a day you can open the Reports, which will summarize the work done for the different projects during the day
1617

17-
**You need to close the application manualy before you shutdown your PC. Otherwise the last running project is not saved to database.**
18+
**You need to close the application manualy before you shutdown your PC. Otherwise the last running project is not saved completely to database. (will be last state saved by auto-save)**
19+
20+
### Settings:
21+
![Settings Screen](readme/images/settings.png?raw=true "Settings")
22+
23+
+ Colors: you can define various colors to use in the UI to customize the application. The Reset resets the color to the default color.
24+
+ Display projects on the right: Will show the list of projects on the right side, instead of the left
25+
+ Hide projects on mouse leave: If you don't hover over the application the project list collapses
26+
+ Use Hotkey (`Strg`+`Win`): Change the project by using the Hotkey feature. A popup will appear at the mouse cursor.
27+
+ Save Position on Screen: Remembers the last position of the Main UI on application start.
28+
+ Ask for notes when switching project (if empty): Pops up a dialog to add notes if no notes are given and you try to switch projects
29+
+ Export: export database for backup and later import (import currently not yet implemented)
30+
31+
### Reports:
32+
![Report Screen](readme/images/reportDescription.png?raw=true "Report")
1833

19-
# Install
20-
* Download keeptime.bat and keeptime-1.1.0-SNAPSHOT-bin.zip (see [releases](https://github.com/doubleSlashde/KeepTime/releases))
34+
+ the report screen gives you a summary for every day
35+
36+
## Install
37+
38+
* Download keeptime.bat and keeptime-<version>-bin.zip (see [releases](https://github.com/doubleSlashde/KeepTime/releases))
2139
* Extract the downloaded .zip
2240
* Copy the downloaded keeptime.bat file next to the *.jar*. Adapt the path inside the *keeptime.bat* to the name of the *.jar* file (if needed). Try starting the application by executing the *keeptime.bat* file. The start may take up to one minute.
2341

@@ -27,11 +45,16 @@ It is recommended to run the application at computer start so you do not forget
2745

2846
You should put the .jar in an extra folder as a *logs* and a *db* folder will be created next to it.\
2947

30-
**migrate from old version**
48+
### Migrate from old version
49+
50+
1. Download new version and replace the .jar file.
51+
2. Start new version of KeepTime. Notice that your old data is not available.
52+
3. Stop KeepTime
53+
4. Copy the files (not directories) of directory `db` (next to the .jar file) into `db/1.4.197/` (path now includes the database version).
54+
5. Start KeepTime again. Notice that your data is available again.
3155

32-
If you have a folder *db* next to the old .jar, the folder has to be next to the new .jar as well. The folder contains your tracked times.\
33-
If you used this application before with a *config.xml* you can import your old projects in the settings dialog. Place your config.xml next to the jar and press "parse config.xml". Otherwise no steps are needed.
3456
## Requirements
57+
3558
* Windows 7, 10
3659
* Linux (tested on Ubuntu 18.04)
3760
* Java 8 + JavaFX

pom.xml

Lines changed: 83 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>de.doubleslash</groupId>
77
<artifactId>keeptime</artifactId>
8-
<version>1.1.0-SNAPSHOT</version>
8+
<version>1.2.0-SNAPSHOT</version>
99
<packaging>jar</packaging>
1010

1111
<name>KeepTime</name>
@@ -27,15 +27,42 @@
2727
<parent>
2828
<groupId>org.springframework.boot</groupId>
2929
<artifactId>spring-boot-starter-parent</artifactId>
30-
<version>2.1.5.RELEASE</version>
30+
<version>2.3.7.RELEASE</version>
3131
<relativePath /> <!-- lookup parent from repository -->
3232
</parent>
3333

34+
<repositories>
35+
36+
<!-- Including for fontawesome-->
37+
<repository>
38+
<id>fontawesomefx-repo</id>
39+
<name>FontAwesome Repository</name>
40+
<url>https://dl.bintray.com/jerady/maven</url>
41+
</repository>
42+
43+
<!-- needed to resolve against central first-->
44+
<repository>
45+
<id>central</id>
46+
<name>Maven Central</name>
47+
<layout>default</layout>
48+
<url>https://repo1.maven.org/maven2</url>
49+
</repository>
50+
</repositories>
51+
3452
<properties>
3553
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3654
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
3755
<maven.compiler.source>1.8</maven.compiler.source>
3856
<maven.compiler.target>1.8</maven.compiler.target>
57+
58+
<h2.version>1.4.197</h2.version>
59+
60+
<maven-dependency-check.version>6.0.5</maven-dependency-check.version>
61+
<!-- USING HTML,XML (comma-separated list) did not work with plugin version 5.1.0 -->
62+
<maven-dependency-check.format>ALL</maven-dependency-check.format>
63+
<maven-dependency-check.failOnError>true</maven-dependency-check.failOnError>
64+
<!-- 11 is the default -->
65+
<maven-dependency-check.failBuildOnCVSS>8.9</maven-dependency-check.failBuildOnCVSS>
3966
</properties>
4067

4168
<dependencies>
@@ -47,10 +74,7 @@
4774
<dependency>
4875
<groupId>com.h2database</groupId>
4976
<artifactId>h2</artifactId>
50-
<scope>runtime</scope>
51-
<!-- overwriting managed version as newer version is not supported by flyway: H2 1.4.199 is newer than this version
52-
of Flyway and support has not been tested. -->
53-
<version>1.4.197</version>
77+
<version>${h2.version}</version>
5478
</dependency>
5579
<dependency>
5680
<groupId>org.springframework.boot</groupId>
@@ -63,6 +87,7 @@
6387
<artifactId>flyway-core</artifactId>
6488
</dependency>
6589

90+
<!-- https://mvnrepository.com/artifact/com.1stleg/jnativehook -->
6691
<dependency>
6792
<groupId>com.1stleg</groupId>
6893
<artifactId>jnativehook</artifactId>
@@ -82,9 +107,21 @@
82107
<dependency>
83108
<groupId>org.apache.maven.plugins</groupId>
84109
<artifactId>maven-assembly-plugin</artifactId>
85-
<version>3.1.1</version>
110+
<version>3.3.0</version>
86111
<type>maven-plugin</type>
87112
</dependency>
113+
114+
<dependency>
115+
<groupId>de.jensd</groupId>
116+
<artifactId>fontawesomefx-commons</artifactId>
117+
<version>8.15</version>
118+
</dependency>
119+
120+
<dependency>
121+
<groupId>de.jensd</groupId>
122+
<artifactId>fontawesomefx-fontawesome</artifactId>
123+
<version>4.7.0-5</version>
124+
</dependency>
88125
</dependencies>
89126

90127
<build>
@@ -94,6 +131,14 @@
94131
<artifactId>spring-boot-maven-plugin</artifactId>
95132
</plugin>
96133

134+
<plugin>
135+
<groupId>pl.project13.maven</groupId>
136+
<artifactId>git-commit-id-plugin</artifactId>
137+
<configuration>
138+
<generateGitPropertiesFile>false</generateGitPropertiesFile>
139+
</configuration>
140+
</plugin>
141+
97142
<plugin>
98143
<artifactId>maven-assembly-plugin</artifactId>
99144
<executions>
@@ -112,6 +157,29 @@
112157
</execution>
113158
</executions>
114159
</plugin>
160+
161+
<!-- see https://jeremylong.github.io/DependencyCheck/dependency-check-maven/ -->
162+
<!-- https://mvnrepository.com/artifact/org.owasp/dependency-check-maven -->
163+
<plugin>
164+
<groupId>org.owasp</groupId>
165+
<artifactId>dependency-check-maven</artifactId>
166+
<version>${maven-dependency-check.version}</version>
167+
<configuration>
168+
<format>${maven-dependency-check.format}</format>
169+
<failOnError>${maven-dependency-check.failOnError}</failOnError>
170+
<failBuildOnCVSS>${maven-dependency-check.failBuildOnCVSS}</failBuildOnCVSS>
171+
<outputDirectory>target/site</outputDirectory>
172+
<!--suppressionFile>${project.basedir}/dependency-check-report_suppressions.xml</suppressionFile -->
173+
</configuration>
174+
<executions>
175+
<execution>
176+
<goals>
177+
<goal>update-only</goal>
178+
</goals>
179+
</execution>
180+
</executions>
181+
</plugin>
182+
115183
</plugins>
116184
</build>
117185

@@ -121,13 +189,14 @@
121189
<plugin>
122190
<groupId>org.apache.maven.plugins</groupId>
123191
<artifactId>maven-site-plugin</artifactId>
124-
<version>3.7.1</version>
192+
<version>3.9.1</version>
125193
</plugin>
126194

127195
<plugin>
196+
<!-- https://mvnrepository.com/artifact/org.owasp/dependency-check-maven -->
128197
<groupId>org.owasp</groupId>
129198
<artifactId>dependency-check-maven</artifactId>
130-
<version>5.0.0-M2</version>
199+
<version>${maven-dependency-check.version}</version>
131200
<reportSets>
132201
<reportSet>
133202
<reports>
@@ -136,9 +205,11 @@
136205
</reportSet>
137206
</reportSets>
138207
<configuration>
139-
<failBuildOnAnyVulnerability>true</failBuildOnAnyVulnerability>
140-
<failBuildOnCVSS>8</failBuildOnCVSS>
141-
<!-- <suppressionFile>dependency-check-report_suppressions.xml</suppressionFile> -->
208+
<format>${maven-dependency-check.format}</format>
209+
<failOnError>${maven-dependency-check.failOnError}</failOnError>
210+
<failBuildOnCVSS>${maven-dependency-check.failBuildOnCVSS}</failBuildOnCVSS>
211+
<outputDirectory>target/site</outputDirectory>
212+
<!--suppressionFile>${project.basedir}/dependency-check-report_suppressions.xml</suppressionFile -->
142213
</configuration>
143214
</plugin>
144215
</plugins>

readme/images/addProject.png

-7.7 KB
Loading

readme/images/contextMenu.png

584 Bytes
Loading
42.8 KB
Loading

readme/images/editProject.PNG

13.5 KB
Loading

readme/images/editWork.PNG

14.1 KB
Loading

0 commit comments

Comments
 (0)