Skip to content

Commit 837e974

Browse files
authored
Merge pull request #14 from saturneric/develop
Version 1.2.2
2 parents 9601cb5 + 62e1590 commit 837e974

25 files changed

+3953
-3411
lines changed

CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cmake_minimum_required(VERSION 3.16)
22

3-
project(GpgFrontend VERSION 1.2.1 LANGUAGES CXX)
3+
project(GpgFrontend VERSION 1.2.2 LANGUAGES CXX)
44

55
message(STATUS "GPGFrontend Build Configuration Started CMAKE Version ${CMAKE_VERSION}")
66

README.md

+30-14
Original file line numberDiff line numberDiff line change
@@ -13,22 +13,20 @@ GpgFrontend is a Powerful, Easy-to-Use, Compact, Cross-Platform, and
1313
Installation-Free [OpenPGP](https://www.openpgp.org/)
1414
Crypto Tool.
1515

16-
By using GpgFrontend, you can quickly encrypt and decrypt text or files. Or at the same time as the above
17-
operations, you can add your own signature to let others know that this document or this paragraph of text was
18-
issued by you. Please **take the initiative to protect privacy in your own hands**, instead of relying on servers and
19-
algorithms provided by large companies.
16+
By using GpgFrontend, you can quickly encrypt and decrypt text or files. Or at the same time as the above operations,
17+
you can add your own signature to let others know that this document or this paragraph of text was issued by you.
18+
Please **take the initiative to protect privacy in your own hands**, instead of relying on servers and algorithms
19+
provided by large companies.
2020

2121
**Notice:** GpgFrontend does not provide an embedded [gnupg](https://gnupg.org/) binary library and needs to be
2222
installed by the user. **This is to ensure safety and avoid code or binary files involved in encryption and decryption
2323
being implanted in the backdoor during the delivery process.**
2424

2525
If you find this tool useful and promising, welcome to encourage me through STAR this project. Thanks!
2626

27-
[>> Quick Start](#quick-start)
28-
29-
[>> Code & Binary Security](https://gpgfrontend.pub/#/about/code-binary-verify)
30-
31-
[>> 简体中文文档](https://github.com/saturneric/GpgFrontend/blob/main/README_CN.md)
27+
[>> Quick Start <<](#quick-start) |
28+
[>> Code & Binary Security <<](https://gpgfrontend.pub/#/about/code-binary-verify) |
29+
[>> 简中README <<](https://github.com/saturneric/GpgFrontend/blob/main/README_CN.md)
3230

3331
<div align="center">
3432
<img width="640" src="https://github.com/saturneric/Blob/blob/master/screenshots/main_mac.jpg?raw=true" alt="macOS Screenshot"/>
@@ -56,6 +54,7 @@ If you find this tool useful and promising, welcome to encourage me through STAR
5654
- [Document](#document)
5755
- [Purpose](#purpose)
5856
- [Build](#build)
57+
- [Languages Support](#languages-support)
5958
- [Contributing & Bugs Report](#contributing--bugs-report)
6059
- [Contract](#contract)
6160
- [Maintainers](#maintainers)
@@ -66,9 +65,7 @@ If you find this tool useful and promising, welcome to encourage me through STAR
6665
- Can run on **Windows, Linux and macOS**.
6766
- Open source, free, no need to install.
6867
- Just double-click, and then you can use it freely.
69-
- Supports multiple languages.
70-
- If you are interested, you can help
71-
me [translate the interface](https://gpgfrontend.pub/#/translate-interface).
68+
- Supports multiple [languages](#languages-support).
7269

7370
## Usage
7471

@@ -94,8 +91,7 @@ What about files?
9491

9592
### More Helpful Operation
9693

97-
Read the animated pictures in the [Document](https://gpgfrontend.pub/#/quick-start) to learn more
98-
awesome operations.
94+
Read the animated pictures in the [Document](https://gpgfrontend.pub/#/quick-start) to learn more awesome operations.
9995

10096
### How to Run it
10197

@@ -120,6 +116,8 @@ awesome operations.
120116

121117
#### Debian/Ubuntu/CentOS
122118

119+
[![!AppImage](https://docs.appimage.org/_images/download-appimage-banner.svg)](https://github.com/saturneric/GpgFrontend/releases/latest)
120+
123121
0. Install gnupg (If you have already followed please skip)
124122
- For Debian/Ubuntu
125123
```shell
@@ -159,6 +157,24 @@ The GpgFrontend project is as open source, and it also insists on using open sou
159157
The tutorial for building the software will be released shortly. Before the relevant documents are released, you can
160158
refer to the project-related Github Action file if you know it.
161159

160+
## Languages Support
161+
162+
The supported languages are listed here. Some languages use machine translation and have not been verified. If you want
163+
to join translation and verification work, please refer to
164+
the [translate the interface](https://gpgfrontend.pub/#/translate-interface).
165+
166+
Notice: The verification may not be complete and rigorous.
167+
168+
| Language | English | 简体中文 | français | Французский | Español |
169+
| ---- | ---- | ---- | ---- | ---- | ---- |
170+
| Support | Support | 支持 | Etre prêt | ожидать | apoyar |
171+
| Verification | Origin | 不完全 | Jamais |Никогда | Nunca |
172+
173+
| Language | 日本語 | 繁體中文 | عربى | português |
174+
| ---- | ---- | ---- | ---- | ---- |
175+
| Support | 未だに | 尚未 | ليس بعد | Ainda não |
176+
| Verification | | | | |
177+
162178
## Contract
163179

164180
If you want to contact me individually, you can email [[email protected]](mailto:[email protected]).

include/gpg/GpgContext.h

+11-8
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ namespace GpgME {
7171

7272
~GpgContext() override;
7373

74-
bool isGood() const;
74+
[[nodiscard]] bool isGood() const;
7575

7676
GpgImportInformation importKey(QByteArray inBuffer);
7777

@@ -115,7 +115,7 @@ namespace GpgME {
115115

116116
gpg_error_t
117117
sign(const QVector<GpgKey> &keys, const QByteArray &inBuffer, QByteArray *outBuffer, bool detached = false,
118-
gpgme_sign_result_t* result = nullptr);
118+
gpgme_sign_result_t *result = nullptr);
119119

120120
bool addUID(const GpgKey &key, const GpgUID &uid);
121121

@@ -125,6 +125,8 @@ namespace GpgME {
125125

126126
bool setExpire(const GpgKey &key, const GpgSubKey *subkey, QDateTime *expires);
127127

128+
QProcess * generateRevokeCert(const GpgKey &key, const QString &outputFileName);
129+
128130
static bool checkIfKeyCanSign(const GpgKey &key);
129131

130132
static bool checkIfKeyCanCert(const GpgKey &key);
@@ -133,6 +135,7 @@ namespace GpgME {
133135

134136
static bool checkIfKeyCanEncr(const GpgKey &key);
135137

138+
136139
/**
137140
* @details If text contains PGP-message, put a linebreak before the message,
138141
* so that gpgme can decrypt correctly
@@ -143,7 +146,7 @@ namespace GpgME {
143146

144147
GpgKey getKeyByFpr(const QString &fpr);
145148

146-
const GpgKey & getKeyById(const QString &id);
149+
const GpgKey &getKeyById(const QString &id);
147150

148151
static QString gpgErrString(gpgme_error_t err);
149152

@@ -173,7 +176,7 @@ namespace GpgME {
173176

174177
void slotRefreshKeyList();
175178

176-
void slotUpdateKeyList(const QString& key_id);
179+
void slotUpdateKeyList(const QString &key_id);
177180

178181
private:
179182
gpgme_ctx_t mCtx{};
@@ -204,11 +207,11 @@ namespace GpgME {
204207
const char *passphrase_info,
205208
int last_was_bad, int fd);
206209

207-
void executeGpgCommand(const QStringList &arguments,
208-
QByteArray *stdOut,
209-
QByteArray *stdErr);
210+
QProcess * executeGpgCommand(const QStringList &arguments,
211+
QByteArray *stdOut,
212+
QByteArray *stdErr, const std::function<void(QProcess *)> &interactFunc);
210213

211-
QString gpgBin;
214+
QString gpgExec;
212215
QString gpgKeys;
213216
};
214217
} // namespace GpgME

include/ui/keypair_details/KeyPairDetailTab.h

+6-4
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,10 @@ class KeyPairDetailTab : public QWidget {
3636
Q_OBJECT
3737

3838
/**
39-
* @details Return QString with a space inserted at every fourth character
40-
*
41-
* @param fingerprint The fingerprint to be beautified
42-
*/
39+
* @details Return QString with a space inserted at every fourth character
40+
*
41+
* @param fingerprint The fingerprint to be beautified
42+
*/
4343
static QString beautifyFingerprint(QString fingerprint);
4444

4545
void createKeyServerOperaMenu();
@@ -64,6 +64,8 @@ private slots:
6464

6565
void slotUpdateKeyToServer();
6666

67+
void slotGenRevokeCert();
68+
6769
private:
6870

6971
QString *keyid; /** The id of the key the details should be shown for */

include/ui/widgets/FilePage.h

+5
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,18 @@ private slots:
5757

5858
void onCustomContextMenu(const QPoint &point);
5959

60+
protected:
61+
62+
void keyPressEvent(QKeyEvent *event) override;
63+
6064

6165
private:
6266

6367
QFileSystemModel *dirModel;
6468
QTreeView *dirTreeView;
6569
QLineEdit *pathEdit;
6670
QString mPath;
71+
QString selectedPath;
6772

6873
QPushButton *upLevelButton;
6974
QPushButton *goPathButton;

0 commit comments

Comments
 (0)