Skip to content
This repository was archived by the owner on Feb 24, 2025. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
e70ea23
Initial commit
octavo-dev Mar 4, 2024
ed274b7
Adding supported languages dinamically
octavo-dev Mar 7, 2024
dede15d
Adding constants and first working version
octavo-dev Mar 7, 2024
5c9e9d0
Adds refresh method
octavo-dev Mar 7, 2024
411b4e1
Sets en-US as default
octavo-dev Mar 7, 2024
9583a46
Updates GUI when user selects a language
octavo-dev Mar 8, 2024
7deb07e
Sets new icon. Sets JFileChooser CANCEL button based on language sele…
octavo-dev Mar 8, 2024
2b82846
Updates README.md
octavo-dev Mar 8, 2024
b3c5f7b
Completes user-selected language implementation
octavo-dev Mar 10, 2024
4042ed8
Localizes language.languageChanged string
octavo-dev Mar 10, 2024
d811540
Adds UT for language
octavo-dev Mar 10, 2024
7a668d6
Adds UTs for increasing Jacoco Coverage
octavo-dev Mar 10, 2024
2600417
Update readme.txt
gaborbata Apr 8, 2024
2c98640
bump versions
gaborbata Apr 22, 2024
8f5da7e
set release version 1.0.6
gaborbata Apr 22, 2024
4cafd3a
set snapshot version for 1.0.7
gaborbata Apr 22, 2024
cf5fdad
update gradle build to jdk 21
gaborbata Apr 24, 2024
d001610
Update install.sh
gaborbata May 9, 2024
cb2be39
Update jpass.desktop to show icon on Ubuntu Dock
gaborbata Sep 2, 2024
8b9b29f
Addressed review comments
octavo-dev Feb 20, 2025
d3c2fc7
Initial commit
octavo-dev Mar 4, 2024
b840cb3
Adding supported languages dinamically
octavo-dev Mar 7, 2024
e839c73
Adding constants and first working version
octavo-dev Mar 7, 2024
3456e5e
Adds refresh method
octavo-dev Mar 7, 2024
519e006
Sets en-US as default
octavo-dev Mar 7, 2024
197b6a4
Updates GUI when user selects a language
octavo-dev Mar 8, 2024
95713f8
Sets new icon. Sets JFileChooser CANCEL button based on language sele…
octavo-dev Mar 8, 2024
0da2934
Updates README.md
octavo-dev Mar 8, 2024
bb44617
Completes user-selected language implementation
octavo-dev Mar 10, 2024
7f44aca
Localizes language.languageChanged string
octavo-dev Mar 10, 2024
59c60af
Adds UT for language
octavo-dev Mar 10, 2024
02eb962
Adds UTs for increasing Jacoco Coverage
octavo-dev Mar 10, 2024
3c854c8
Addressed review comments
octavo-dev Feb 20, 2025
a2d9f76
Addressed review comments
octavo-dev Feb 20, 2025
838cde6
Merge branch 'user_selected' of https://github.com/edimoral/jpass int…
octavo-dev Feb 20, 2025
36355cf
Addressed review comments
octavo-dev Feb 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,13 @@ jobs:

steps:
- uses: actions/checkout@v3
- name: Set up JDK 11
- name: Set up JDK 21
uses: actions/setup-java@v3
with:
java-version: '11'
java-version: '21'
distribution: 'temurin'
- name: Build with Gradle
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
gradle-version: 7.5
gradle-version: 8.7
arguments: build
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Usage
Java 8 or later is recommended to run JPass.
You can run the application from the command line by typing (the password file is optional):

java -jar jpass-1.0.6-SNAPSHOT.jar [password_file]
java -jar jpass-1.0.7-SNAPSHOT.jar [password_file]

For convenience, batch/shell scripts are also available for launching JPass for various platforms (i.e. `jpass.bat` for Windows, `jpass.sh` for Linux, `jpass.command` for macOS).
Please make sure `PATH`, or `JAVA_HOME` environment variables point to a valid Java installation.
Expand Down Expand Up @@ -56,20 +56,20 @@ Configuration
Default configurations can be overridden in `jpass.properties` file:

| Configuration key | Value type | Default value |
| ---------------------------------- | ---------- | ---------------- |
| ---------------------------------- | ---------- |------------------|
| ui.theme.dark.mode.enabled | boolean | `false` |
| clear.clipboard.on.exit.enabled | boolean | `false` |
| default.password.generation.length | integer | `14` |
| date.format | string | `yyyy-MM-dd` |
| entry.details | list | `TITLE,MODIFIED` |
| file.chooser.directory | string | `./` |
| language.languageSetting | string | en-US |
| language.languageSetting | string | `en-US` |

Regarding `language.languageSetting` please check
[languages](https://github.com/gaborbata/jpass/tree/master/src/main/resources/resources/languages)
resources folder for possible configuration values.

Each configuration property can be overridden by system properties, with the `jpass.` key prefix, e.g.

java -Djpass.entry.details=TITLE -jar jpass-1.0.6-SNAPSHOT.jar
java -Djpass.entry.details=TITLE -jar jpass-1.0.7-SNAPSHOT.jar

6 changes: 3 additions & 3 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@ plugins {

compileJava.options.encoding = 'UTF-8'

version = '1.0.6-SNAPSHOT'
version = '1.0.7-SNAPSHOT'

repositories {
mavenCentral()
}

dependencies {
implementation group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-xml', version: '2.16.1'
implementation group: 'com.formdev', name: 'flatlaf', version: '3.4'
implementation group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-xml', version: '2.16.2'
implementation group: 'com.formdev', name: 'flatlaf', version: '3.4.1'
implementation group: 'com.formdev', name: 'svgSalamander', version: '1.1.4'
}

Expand Down
6 changes: 3 additions & 3 deletions jpass.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"version": "1.0.2",
"version": "1.0.6",
"description": "Password manager application with strong encryption (AES-256)",
"homepage": "https://github.com/gaborbata/jpass",
"license": {
Expand All @@ -17,8 +17,8 @@
"java/openjdk11"
]
},
"url": "https://github.com/gaborbata/jpass/releases/download/v1.0.5/jpass-1.0.5-RELEASE.zip",
"hash": "0c6fc348b55c21e69c2c34d042316fa023773ef42fb8b8ec478e59ed0658be51",
"url": "https://github.com/gaborbata/jpass/releases/download/v1.0.6/jpass-1.0.6-RELEASE.zip",
"hash": "ba390f0cc63aa88c5b667c3fe6d2c69d15aad2afa5f196beca110a331309173b",
"bin": "jpass.bat",
"shortcuts": [
[
Expand Down
6 changes: 3 additions & 3 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<groupId>jpass</groupId>
<artifactId>jpass</artifactId>
<packaging>jar</packaging>
<version>1.0.6-SNAPSHOT</version>
<version>1.0.7-SNAPSHOT</version>
<name>JPass</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
Expand All @@ -13,12 +13,12 @@
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.16.1</version>
<version>2.16.2</version>
</dependency>
<dependency>
<groupId>com.formdev</groupId>
<artifactId>flatlaf</artifactId>
<version>3.4</version>
<version>3.4.1</version>
</dependency>
<dependency>
<groupId>com.formdev</groupId>
Expand Down
2 changes: 1 addition & 1 deletion src/main/config/jpass.properties
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,4 @@ date.format=yyyy-MM-dd
file.chooser.directory=./

# Locale ID to set the program language
language.languageSetting=en-US
language.languageSetting=en-US
15 changes: 0 additions & 15 deletions src/main/distribution/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,6 @@

# JPass installation script for Linux

# check if java executable exists
if [ -d "$JAVA_HOME" -a -x "$JAVA_HOME/bin/java" ]; then
JAVACMD="$JAVA_HOME/bin/java"
else
JAVACMD=java
fi

$JAVACMD -version >/dev/null 2>&1
if [ "$?" != "0" ]; then
echo "Install Java (JDK or JRE) if you do not already have. JPass will not work without it."
echo "Please make sure PATH, or JAVA_HOME environment variables point to a valid Java installation."
echo "Could not execute JPass (exit: $?)"
exit
fi

# detect the absolute path of jpass
JPASS_HOME=`dirname "$0"`

Expand Down
2 changes: 1 addition & 1 deletion src/main/distribution/jpass.bat
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ pause
goto end

:launch
start "JPass" /B "%JAVA_EXE%" -jar "%JPASS_HOME%\jpass-1.0.6-SNAPSHOT.jar" %*
start "JPass" /B "%JAVA_EXE%" -jar "%JPASS_HOME%\jpass-1.0.7-SNAPSHOT.jar" %*
goto end

:end
2 changes: 1 addition & 1 deletion src/main/distribution/jpass.command
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,4 @@ else
fi

# execute jpass
exec "$JAVACMD" "$LAF_OPTS" -jar "$JPASS_HOME/jpass-1.0.6-SNAPSHOT.jar" "$@"
exec "$JAVACMD" "$LAF_OPTS" -jar "$JPASS_HOME/jpass-1.0.7-SNAPSHOT.jar" "$@"
2 changes: 1 addition & 1 deletion src/main/distribution/jpass.desktop
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ Comment=Password manager with strong encryption
Exec=/opt/jpass/jpass.sh
Icon=/opt/jpass/jpass.png
Terminal=false

StartupWMClass=jpass-JPass
2 changes: 1 addition & 1 deletion src/main/distribution/jpass.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,4 @@ else
fi

# execute jpass
exec "$JAVACMD" -jar "$JPASS_PATH/jpass-1.0.6-SNAPSHOT.jar" "$@"
exec "$JAVACMD" -jar "$JPASS_PATH/jpass-1.0.7-SNAPSHOT.jar" "$@"
9 changes: 7 additions & 2 deletions src/main/distribution/readme.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# JPass - Password Manager 1.0.6-SNAPSHOT
# JPass - Password Manager 1.0.7-SNAPSHOT

Overview
--------
Expand All @@ -21,7 +21,7 @@ Java 8 or later is recommended to run JPass.
You can run the application from the command line by typing (the password
file is optional):

java -jar jpass-1.0.6-SNAPSHOT.jar [password_file]
java -jar jpass-1.0.7-SNAPSHOT.jar [password_file]

For convenience, batch/shell scripts are also available for launching JPass
for various platforms (i.e. `jpass.bat` for Windows, `jpass.sh` for Linux,
Expand All @@ -42,6 +42,11 @@ Default configurations can be overridden in `jpass.properties` file:
| file.chooser.directory | string | ./ |
| language.languageSetting | string | en-US |

Each configuration property can be overridden by system properties,
with the `jpass.` key prefix, e.g.

java -Djpass.entry.details=TITLE -jar jpass-1.0.7-SNAPSHOT.jar

License
-------
Copyright (c) 2009-2024 Gabor Bata
Expand Down
22 changes: 11 additions & 11 deletions src/main/java/jpass/ui/EntryDetailsTable.java
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,12 @@ public class EntryDetailsTable extends JTable {
private static final DateTimeFormatter FORMATTER
= DateUtils.createFormatter(Configuration.getInstance().get("date.format", "yyyy-MM-dd"));

private enum DetailType {
TITLE(getLocalizedMessages().getString(VIEW_WINDOW_TITLE), Entry::getTitle),
URL(getLocalizedMessages().getString(VIEW_WINDOW_URL), Entry::getUrl),
USER(getLocalizedMessages().getString(VIEW_WINDOW_USER), Entry::getUser),
MODIFIED(getLocalizedMessages().getString(VIEW_WINDOW_MODIFIED), entry -> DateUtils.formatIsoDateTime(entry.getLastModification(), FORMATTER)),
CREATED(getLocalizedMessages().getString(VIEW_WINDOW_CREATED), entry -> DateUtils.formatIsoDateTime(entry.getCreationDate(), FORMATTER));
public enum DetailType {
TITLE(VIEW_WINDOW_TITLE, Entry::getTitle),
URL(VIEW_WINDOW_URL, Entry::getUrl),
USER(VIEW_WINDOW_USER, Entry::getUser),
MODIFIED(VIEW_WINDOW_MODIFIED, entry -> DateUtils.formatIsoDateTime(entry.getLastModification(), FORMATTER)),
CREATED(VIEW_WINDOW_CREATED, entry -> DateUtils.formatIsoDateTime(entry.getCreationDate(), FORMATTER));

private final String description;
private final Function<Entry, String> valueMapper;
Expand Down Expand Up @@ -111,7 +111,7 @@ public EntryDetailsTable() {
}

tableModel = new DefaultTableModel();
detailsToDisplay.forEach(detail -> tableModel.addColumn(detail.getDescription()));
detailsToDisplay.forEach(detail -> tableModel.addColumn(getLocalizedMessages().getString(detail.getDescription())));
setModel(tableModel);
getTableHeader().setReorderingAllowed(false);
addMouseListener(new TableListener());
Expand All @@ -135,6 +135,10 @@ public Component prepareRenderer(TableCellRenderer renderer, int row, int column
return component;
}

public List<DetailType> getDetailsToDisplay() {
return detailsToDisplay;
}

public void clear() {
tableModel.setRowCount(0);
}
Expand All @@ -144,8 +148,4 @@ public void addRow(Entry entry) {
.map(detail -> detail.getValue(entry))
.toArray(Object[]::new));
}

public int rowCount() {
return tableModel.getRowCount();
}
}
Loading
Loading