summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnne Jan Brouwer <brouwer@annejan.com>2016-12-14 22:56:38 +0100
committerAnne Jan Brouwer <brouwer@annejan.com>2016-12-14 22:56:38 +0100
commitb42bb45e6074b3213aaf752e7dc906e95e01790a (patch)
treebd694541f8a32ec6163aef278bb9b614acc0643f
parent816e5aac5030c3f3dd5ae8ae11eb3c97e034f68c (diff)
parentfdb5c50ee7b89d9eaf1e2bf08e802996edc58131 (diff)
Updated from master
-rw-r--r--CHANGELOG.md7
-rw-r--r--localization/localization_ar_MA.ts371
-rw-r--r--localization/localization_cs_CZ.ts281
-rwxr-xr-xlocalization/localization_de_DE.ts284
-rwxr-xr-xlocalization/localization_de_LU.ts343
-rw-r--r--localization/localization_el_GR.ts225
-rw-r--r--localization/localization_en_GB.ts300
-rw-r--r--localization/localization_en_US.ts309
-rw-r--r--localization/localization_es_ES.ts575
-rw-r--r--localization/localization_fr_BE.ts262
-rw-r--r--localization/localization_fr_FR.ts264
-rw-r--r--localization/localization_fr_LU.ts262
-rw-r--r--localization/localization_gl_ES.ts493
-rw-r--r--localization/localization_he_IL.ts371
-rw-r--r--localization/localization_hu_HU.ts501
-rw-r--r--localization/localization_it_IT.ts490
-rw-r--r--localization/localization_lb_LU.ts217
-rw-r--r--localization/localization_nl_BE.ts216
-rw-r--r--localization/localization_nl_NL.ts216
-rw-r--r--localization/localization_pl_PL.ts405
-rw-r--r--localization/localization_ru_RU.ts270
-rw-r--r--localization/localization_sv_SE.ts605
-rw-r--r--localization/localization_zh_CN.ts216
-rw-r--r--src/imitatepass.cpp117
-rw-r--r--src/imitatepass.h7
-rw-r--r--src/mainwindow.cpp182
-rw-r--r--src/mainwindow.h4
-rw-r--r--src/mainwindow.ui20
-rw-r--r--src/pass.cpp77
-rw-r--r--src/pass.h27
-rw-r--r--src/passworddialog.cpp9
-rw-r--r--src/passworddialog.h3
-rw-r--r--src/qtpasssettings.cpp38
-rw-r--r--src/qtpasssettings.h16
-rw-r--r--src/realpass.cpp89
-rw-r--r--src/realpass.h12
-rw-r--r--src/storemodel.cpp179
-rw-r--r--src/storemodel.h24
-rw-r--r--src/util.cpp38
-rw-r--r--src/util.h7
40 files changed, 6668 insertions, 1664 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2489f4f7..0edab383 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,14 +4,21 @@
[Full Changelog](https://github.com/IJHack/qtpass/compare/v1.1.6...HEAD)
+**Implemented enhancements:**
+
+- Feature: CTRL/CMD + Q closes the mainwindow \#258 [\#259](https://github.com/IJHack/QtPass/pull/259) ([YoshiMan](https://github.com/YoshiMan))
+- enabled drag and drop support for passwords and passwordfolders [\#245](https://github.com/IJHack/QtPass/pull/245) ([YoshiMan](https://github.com/YoshiMan))
+
**Fixed bugs:**
- Weird behavior when turning on git support \(auto push/pull\) with non-clean git dir [\#128](https://github.com/IJHack/QtPass/issues/128)
**Closed issues:**
+- Feature: CTRL/CMD + Q closes the mainwindow [\#258](https://github.com/IJHack/QtPass/issues/258)
- Pass environment not set-up correctly [\#250](https://github.com/IJHack/QtPass/issues/250)
- Make fails - std c++11 not set [\#244](https://github.com/IJHack/QtPass/issues/244)
+- Double-clicking might open previous entry instead of one double-clicked on [\#243](https://github.com/IJHack/QtPass/issues/243)
**Merged pull requests:**
diff --git a/localization/localization_ar_MA.ts b/localization/localization_ar_MA.ts
index 15241203..a74c9fbb 100644
--- a/localization/localization_ar_MA.ts
+++ b/localization/localization_ar_MA.ts
@@ -4,284 +4,359 @@
<context>
<name>ConfigDialog</name>
<message>
+ <location filename="../configdialog.ui" line="20"/>
<source>Configuration</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Settings</source>
+ <location filename="../configdialog.ui" line="68"/>
+ <source>Clipboard behaviour:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Clipboard behaviour:</source>
+ <location filename="../configdialog.ui" line="87"/>
+ <source>Autoclear after:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Autoclear after:</source>
+ <location filename="../configdialog.ui" line="136"/>
+ <source>Password Behaviour:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Seconds</source>
+ <location filename="../configdialog.ui" line="164"/>
+ <source>Autoclear panel after:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Password Behaviour:</source>
+ <location filename="../configdialog.ui" line="221"/>
+ <source>Password Generation:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Hide content</source>
+ <location filename="../configdialog.ui" line="233"/>
+ <source>Password Length:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Hide password</source>
+ <location filename="../configdialog.ui" line="295"/>
+ <source>Use characters:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Autoclear panel after:</source>
+ <location filename="../configdialog.ui" line="313"/>
+ <source>Select character set for password generation</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Password Generation:</source>
+ <location filename="../configdialog.ui" line="317"/>
+ <source>All Characters</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Password Length:</source>
+ <location filename="../configdialog.ui" line="322"/>
+ <source>Alphabetical</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Characters</source>
+ <location filename="../configdialog.ui" line="327"/>
+ <source>Alphanumerical</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Use characters:</source>
+ <location filename="../configdialog.ui" line="332"/>
+ <source>Custom</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Select character set for password generation</source>
+ <location filename="../configdialog.ui" line="437"/>
+ <source>Git:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>All Characters</source>
+ <location filename="../configdialog.ui" line="512"/>
+ <source>System:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Alphabetical</source>
+ <location filename="../configdialog.ui" line="570"/>
+ <source>Programs</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Alphanumerical</source>
+ <location filename="../configdialog.ui" line="588"/>
+ <source>Select password storage program:</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Custom</source>
+ <location filename="../configdialog.ui" line="604"/>
+ <source>&amp;Use pass</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789</source>
+ <location filename="../configdialog.ui" line="628"/>
+ <source>Native</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Use pwgen</source>
+ <location filename="../configdialog.ui" line="634"/>
+ <source>git</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Exclude capital letters</source>
+ <location filename="../configdialog.ui" line="644"/>
+ <location filename="../configdialog.ui" line="651"/>
+ <location filename="../configdialog.ui" line="678"/>
+ <location filename="../configdialog.ui" line="709"/>
+ <location filename="../configdialog.ui" line="847"/>
+ <source>...</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Include special symbols </source>
+ <location filename="../configdialog.ui" line="658"/>
+ <source>gpg</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Generate easy to memorize but less secure passwords</source>
+ <location filename="../configdialog.ui" line="671"/>
+ <source>pwgen</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Exclude numbers</source>
+ <location filename="../configdialog.ui" line="688"/>
+ <source>Pass</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Git:</source>
+ <location filename="../configdialog.ui" line="699"/>
+ <source>pass</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Use git</source>
+ <location filename="../configdialog.ui" line="927"/>
+ <source>&lt;a href=&quot;https://QtPass.org/&quot;&gt;QtPass&lt;/a&gt; version </source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Automatically add .gpg-id files</source>
+ <location filename="../configdialog.ui" line="545"/>
+ <source>Always on top</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Automatically push</source>
+ <location filename="../configdialog.ui" line="912"/>
+ <source>login
+url
+email</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Automatically pull</source>
+ <location filename="../configdialog.ui" line="42"/>
+ <source>Settings</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>System:</source>
+ <location filename="../configdialog.ui" line="267"/>
+ <source>Characters</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Use TrayIcon</source>
+ <location filename="../configdialog.ui" line="387"/>
+ <source>Use pwgen</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Start minimized</source>
+ <location filename="../configdialog.ui" line="104"/>
+ <location filename="../configdialog.ui" line="187"/>
+ <source>Seconds</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Hide on close</source>
+ <location filename="../configdialog.ui" line="155"/>
+ <source>Hide password</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Always on top</source>
+ <location filename="../configdialog.ui" line="524"/>
+ <source>Use TrayIcon</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Programs</source>
+ <location filename="../configdialog.ui" line="148"/>
+ <source>Hide content</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Select password storage program:</source>
+ <location filename="../configdialog.ui" line="449"/>
+ <source>Use git</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Nati&amp;ve git/gpg</source>
+ <location filename="../configdialog.ui" line="538"/>
+ <source>Hide on close</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>&amp;Use pass</source>
+ <location filename="../configdialog.ui" line="404"/>
+ <source>Include special symbols </source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Native</source>
+ <location filename="../configdialog.ui" line="370"/>
+ <source>ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>git</source>
+ <location filename="../configdialog.ui" line="531"/>
+ <source>Start minimized</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>...</source>
+ <location filename="../configdialog.ui" line="463"/>
+ <source>Automatically add .gpg-id files</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>gpg</source>
+ <location filename="../configdialog.ui" line="394"/>
+ <source>Exclude capital letters</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>pwgen</source>
+ <location filename="../configdialog.ui" line="411"/>
+ <source>Generate easy to memorize but less secure passwords</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Pass</source>
+ <location filename="../configdialog.ui" line="418"/>
+ <source>Exclude numbers</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>pass</source>
+ <location filename="../configdialog.ui" line="470"/>
+ <source>Automatically push</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="477"/>
+ <source>Automatically pull</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="597"/>
+ <source>Nati&amp;ve git/gpg</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../configdialog.ui" line="718"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;a href=&quot;https://www.passwordstore.org/&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0000ff;&quot;&gt;www.passwordstore.org&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="748"/>
<source>Profiles</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="797"/>
<source>Name</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="802"/>
<source>Path</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="812"/>
<source>Add</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="826"/>
<source>Delete</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="840"/>
<source>Current password-store</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="860"/>
<source>Template</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="881"/>
<source>Templates add extra fields in the password generation dialouge and in the password view.</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="890"/>
<source>Use template</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="897"/>
<source>Show all lines beginning with a word followed by a colon as fields in password fields, not only the listed ones</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.ui" line="900"/>
<source>Show all fields templated</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>login
-url
-email</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <source>&lt;a href=&quot;https://QtPass.org/&quot;&gt;QtPass&lt;/a&gt; version </source>
- <translation type="unfinished"></translation>
- </message>
- <message>
+ <location filename="../configdialog.cpp" line="26"/>
<source>No Clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="27"/>
<source>Always copy to clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="28"/>
<source>On-demand copy to clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="483"/>
<source>No profile selected</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="484"/>
<source>No profile selected to delete</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="522"/>
<source>GnuPG not found</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="523"/>
<source>Please install GnuPG on your system.&lt;br&gt;Install &lt;strong&gt;gpg&lt;/strong&gt; using your favorite package manager&lt;br&gt;or &lt;a href=&quot;https://www.gnupg.org/download/#sec-1-2&quot;&gt;download&lt;/a&gt; it from GnuPG.org</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="543"/>
<source>Create password-store?</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="544"/>
<source>Would you like to create a password-store at %1?</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="562"/>
<source>Password store not initialised</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../configdialog.cpp" line="563"/>
<source>The folder %1 doesn&apos;t seem to be a password store or is not yet initialised.</source>
<translation type="unfinished"></translation>
</message>
@@ -289,35 +364,46 @@ email</source>
<context>
<name>ImitatePass</name>
<message>
+ <location filename="../imitatepass.cpp" line="78"/>
+ <location filename="../imitatepass.cpp" line="279"/>
<source>Can not edit</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../imitatepass.cpp" line="79"/>
+ <location filename="../imitatepass.cpp" line="280"/>
<source>Could not read encryption key to use, .gpg-id file missing or invalid.</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../imitatepass.cpp" line="156"/>
<source>Cannot update</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../imitatepass.cpp" line="157"/>
<source>Failed to open .gpg-id for writing.</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../imitatepass.cpp" line="170"/>
<source>Check selected users!</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../imitatepass.cpp" line="171"/>
<source>None of the selected keys have a secret key available.
You will not be able to decrypt any newly added passwords!</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../imitatepass.cpp" line="222"/>
<source>Re-encrypting from folder %1</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../imitatepass.cpp" line="226"/>
+ <location filename="../imitatepass.cpp" line="310"/>
<source>Updating password-store</source>
<translation type="unfinished"></translation>
</message>
@@ -325,34 +411,42 @@ You will not be able to decrypt any newly added passwords!</source>
<context>
<name>KeygenDialog</name>
<message>
+ <location filename="../keygendialog.ui" line="14"/>
<source>Generate GnuPG keypair</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.ui" line="38"/>
<source>Generate a new key pair</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.ui" line="84"/>
<source>Passphrase</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.ui" line="91"/>
<source>Email</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.ui" line="108"/>
<source>Name</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.ui" line="128"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;There is no limit on the length of a passphrase, and it should be carefully chosen. From the perspective of security, the passphrase to unlock the private key is one of the weakest points in GnuPG (and other public-key encryption systems as well) since it is the only protection you have if another individual gets your private key. &lt;br/&gt;Ideally, the passphrase should not use words from a dictionary and should mix the case of alphabetic characters as well as use non-alphabetic characters.&lt;br/&gt;A good passphrase is crucial to the secure use of GnuPG.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.ui" line="138"/>
<source>Expert</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.ui" line="157"/>
<source># QtPass GPG key generator
#
# first test version please comment
@@ -371,26 +465,32 @@ Expire-Date: 0
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.ui" line="184"/>
<source>For expert options check out the &lt;a href=&quot;https://www.gnupg.org/documentation/manuals/gnupg/Unattended-GPG-key-generation.html&quot;&gt;GnuPG manual&lt;/a&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.cpp" line="133"/>
<source>Invalid name</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.cpp" line="134"/>
<source>Name must be at least 5 characters long.</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.cpp" line="144"/>
<source>Invalid email</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.cpp" line="145"/>
<source>The email address you typed is not a valid email address.</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location filename="../keygendialog.cpp" line="160"/>
<source>This operation can take some minutes.&lt;br /&gt;We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy.</source>
<translation type="unfinished"></translation>
</message>