Skip to content

Commit b9279f7

Browse files
committed
Release 2.1.2
- Ask for save location when creating a new database [#302] - Remove Libmicrohttpd dependency to clean up the code and ensure better OS X compatibility [#317, #265] - Prevent Qt from degrading Wifi network performance on certain platforms [#318] - Visually refine user interface on OS X and other platforms [#299] - Remove unusable tray icon setting on OS X [#293] - Fix compositing glitches on Ubuntu and prevent flashing when minimizing to the tray at startup [#307] - Fix AppImage tray icon on Ubuntu [#277, #273] - Fix global menu disappearing after restoring KeePassXC from the tray on Ubuntu [#276] - Fix result order in entry search [#320] - Enable HiDPI scaling on supported platforms [#315] - Remove empty directories from installation target [#282]
2 parents 44c58a6 + d892312 commit b9279f7

Some content is hidden

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

73 files changed

+7707
-703
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,6 @@
11
CMakeLists.txt.*
22
build*/
3+
release*/
4+
.idea/
5+
*.iml
6+
*.kdev4

AppImage-Recipe.sh

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,6 @@ cp -a ../../bin-release/* .
4949
cp -a ./usr/local/* ./usr
5050
rm -R ./usr/local
5151
rmdir ./opt 2> /dev/null
52-
patch_strings_in_file /usr/local ././
53-
patch_strings_in_file /usr ./
5452

5553
# bundle Qt platform plugins and themes
5654
QXCB_PLUGIN="$(find /usr/lib -name 'libqxcb.so' 2> /dev/null)"
@@ -76,6 +74,11 @@ cat << EOF > ./usr/bin/keepassxc_env
7674
#export QT_QPA_PLATFORMTHEME=gtk2
7775
export LD_LIBRARY_PATH="../opt/qt58/lib:\${LD_LIBRARY_PATH}"
7876
export QT_PLUGIN_PATH="..${QT_PLUGIN_PATH}"
77+
78+
# unset XDG_DATA_DIRS to make tray icon work in Ubuntu Unity
79+
# see https://github.com/probonopd/AppImageKit/issues/351
80+
unset XDG_DATA_DIRS
81+
7982
exec keepassxc "\$@"
8083
EOF
8184
chmod +x ./usr/bin/keepassxc_env

CHANGELOG

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,18 @@
1+
2.1.2 (2017-02-17)
2+
=========================
3+
4+
- Ask for save location when creating a new database [#302]
5+
- Remove Libmicrohttpd dependency to clean up the code and ensure better OS X compatibility [#317, #265]
6+
- Prevent Qt from degrading Wifi network performance on certain platforms [#318]
7+
- Visually refine user interface on OS X and other platforms [#299]
8+
- Remove unusable tray icon setting on OS X [#293]
9+
- Fix compositing glitches on Ubuntu and prevent flashing when minimizing to the tray at startup [#307]
10+
- Fix AppImage tray icon on Ubuntu [#277, #273]
11+
- Fix global menu disappearing after restoring KeePassXC from the tray on Ubuntu [#276]
12+
- Fix result order in entry search [#320]
13+
- Enable HiDPI scaling on supported platforms [#315]
14+
- Remove empty directories from installation target [#282]
15+
116
2.1.1 (2017-02-06)
217
=========================
318

CMakeLists.txt

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ option(WITH_XC_AUTOTYPE "Include Autotype." OFF)
3838
option(WITH_XC_HTTP "Include KeePassHTTP." OFF)
3939
option(WITH_XC_YUBIKEY "Include Yubikey support." OFF)
4040

41-
set(KEEPASSXC_VERSION "2.1.1")
42-
set(KEEPASSXC_VERSION_NUM "2.1.1")
41+
set(KEEPASSXC_VERSION "2.1.2")
42+
set(KEEPASSXC_VERSION_NUM "2.1.2")
4343

4444
if("${CMAKE_C_COMPILER}" MATCHES "clang$" OR "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
4545
set(CMAKE_COMPILER_IS_CLANG 1)
@@ -166,6 +166,9 @@ find_package(Qt5Widgets 5.2 REQUIRED)
166166
find_package(Qt5Test 5.2 REQUIRED)
167167
find_package(Qt5LinguistTools 5.2 REQUIRED)
168168
find_package(Qt5Network 5.2 REQUIRED)
169+
if (UNIX AND NOT APPLE)
170+
find_package(Qt5DBus 5.2 REQUIRED)
171+
endif()
169172
set(CMAKE_AUTOMOC ON)
170173

171174
# Debian sets the the build type to None for package builds.
@@ -176,10 +179,6 @@ find_package(LibGPGError REQUIRED)
176179

177180
find_package(Gcrypt 1.6.0 REQUIRED)
178181

179-
if (WITH_XC_HTTP)
180-
find_package(LibMicroHTTPD REQUIRED)
181-
endif(WITH_XC_HTTP)
182-
183182
find_package(ZLIB REQUIRED)
184183

185184
check_cxx_source_compiles("
@@ -217,7 +216,7 @@ if(UNIX)
217216
endif()
218217
endif()
219218

220-
include_directories(SYSTEM ${GCRYPT_INCLUDE_DIR} ${MHD_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR})
219+
include_directories(SYSTEM ${GCRYPT_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR})
221220

222221
include(FeatureSummary)
223222

share/CMakeLists.txt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,11 @@ install(FILES ${DATABASE_ICONS} DESTINATION ${DATA_INSTALL_DIR}/icons/database)
2121

2222
if(UNIX AND NOT APPLE)
2323
install(DIRECTORY icons/application/ DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor
24-
FILES_MATCHING PATTERN "keepassx*.png" PATTERN "keepassx*.svgz")
24+
FILES_MATCHING PATTERN "keepassx*.png" PATTERN "keepassx*.svgz"
25+
PATTERN "status" EXCLUDE PATTERN "actions" EXCLUDE)
2526
install(DIRECTORY icons/application/ DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor
26-
FILES_MATCHING PATTERN "application-x-keepassxc.png" PATTERN "application-x-keepassxc.svgz")
27+
FILES_MATCHING PATTERN "application-x-keepassxc.png" PATTERN "application-x-keepassxc.svgz"
28+
PATTERN "status" EXCLUDE PATTERN "actions" EXCLUDE)
2729
install(FILES linux/keepassxc.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
2830
install(FILES linux/keepassxc.xml DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages)
2931
endif(UNIX AND NOT APPLE)

share/translations/keepassx_en.ts

Lines changed: 30 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@
1616
<translation type="unfinished"></translation>
1717
</message>
1818
<message>
19-
<source>KeePassXC is distributed under the term of the GNU General Public License (GPL) version 2 or (at your option) version 3.</source>
19+
<source>Extensions:
20+
</source>
2021
<translation type="unfinished"></translation>
2122
</message>
2223
<message>
23-
<source>Extensions:
24-
</source>
24+
<source>KeePassXC is distributed under the terms of the GNU General Public License (GPL) version 2 or (at your option) version 3.</source>
2525
<translation type="unfinished"></translation>
2626
</message>
2727
</context>
@@ -100,10 +100,6 @@ Please select whether you want to allow access.</source>
100100
<source>Repeat password:</source>
101101
<translation type="unfinished"></translation>
102102
</message>
103-
<message>
104-
<source>Key file</source>
105-
<translation type="unfinished"></translation>
106-
</message>
107103
<message>
108104
<source>Browse</source>
109105
<translation type="unfinished"></translation>
@@ -157,6 +153,10 @@ Please select whether you want to allow access.</source>
157153
%2</source>
158154
<translation type="unfinished"></translation>
159155
</message>
156+
<message>
157+
<source>&amp;Key file</source>
158+
<translation type="unfinished"></translation>
159+
</message>
160160
</context>
161161
<context>
162162
<name>DatabaseOpenWidget</name>
@@ -255,10 +255,6 @@ You can now save it.</source>
255255
<source>Default username:</source>
256256
<translation type="unfinished"></translation>
257257
</message>
258-
<message>
259-
<source>Use recycle bin:</source>
260-
<translation type="unfinished"></translation>
261-
</message>
262258
<message>
263259
<source> MiB</source>
264260
<translation type="unfinished"></translation>
@@ -275,6 +271,10 @@ You can now save it.</source>
275271
<source>Max. history size:</source>
276272
<translation type="unfinished"></translation>
277273
</message>
274+
<message>
275+
<source>Use recycle bin</source>
276+
<translation type="unfinished"></translation>
277+
</message>
278278
</context>
279279
<context>
280280
<name>DatabaseTabWidget</name>
@@ -402,6 +402,10 @@ Do you want to open it anyway? Alternatively the database is opened read-only.</
402402
Do you want to save it anyway?</source>
403403
<translation type="unfinished"></translation>
404404
</message>
405+
<message>
406+
<source>Passwords</source>
407+
<translation type="unfinished"></translation>
408+
</message>
405409
</context>
406410
<context>
407411
<name>DatabaseWidget</name>
@@ -649,31 +653,31 @@ Do you want to save it anyway?</source>
649653
<translation type="unfinished"></translation>
650654
</message>
651655
<message>
652-
<source>Inherit default Auto-Type sequence from the group</source>
656+
<source>+</source>
653657
<translation type="unfinished"></translation>
654658
</message>
655659
<message>
656-
<source>Use custom Auto-Type sequence:</source>
660+
<source>-</source>
657661
<translation type="unfinished"></translation>
658662
</message>
659663
<message>
660-
<source>+</source>
664+
<source>Window title:</source>
661665
<translation type="unfinished"></translation>
662666
</message>
663667
<message>
664-
<source>-</source>
668+
<source>Inherit default Auto-Type sequence from the &amp;group</source>
665669
<translation type="unfinished"></translation>
666670
</message>
667671
<message>
668-
<source>Window title:</source>
672+
<source>&amp;Use custom Auto-Type sequence:</source>
669673
<translation type="unfinished"></translation>
670674
</message>
671675
<message>
672-
<source>Use default sequence</source>
676+
<source>Use default se&amp;quence</source>
673677
<translation type="unfinished"></translation>
674678
</message>
675679
<message>
676-
<source>Set custom sequence:</source>
680+
<source>Set custo&amp;m sequence:</source>
677681
<translation type="unfinished"></translation>
678682
</message>
679683
</context>
@@ -799,14 +803,6 @@ Do you want to save it anyway?</source>
799803
</context>
800804
<context>
801805
<name>EditWidgetIcons</name>
802-
<message>
803-
<source>Use default icon</source>
804-
<translation type="unfinished"></translation>
805-
</message>
806-
<message>
807-
<source>Use custom icon</source>
808-
<translation type="unfinished"></translation>
809-
</message>
810806
<message>
811807
<source>Add custom icon</source>
812808
<translation type="unfinished"></translation>
@@ -851,6 +847,14 @@ Do you want to save it anyway?</source>
851847
<source>Can&apos;t delete icon. Still used by %1 items.</source>
852848
<translation type="unfinished"></translation>
853849
</message>
850+
<message>
851+
<source>&amp;Use default icon</source>
852+
<translation type="unfinished"></translation>
853+
</message>
854+
<message>
855+
<source>Use custo&amp;m icon</source>
856+
<translation type="unfinished"></translation>
857+
</message>
854858
</context>
855859
<context>
856860
<name>EditWidgetProperties</name>

src/CMakeLists.txt

Lines changed: 13 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -149,24 +149,9 @@ set(keepassx_FORMS
149149
add_feature_info(KeePassHTTP WITH_XC_HTTP "KeePassHTTP support for ChromeIPass and PassIFox")
150150
add_feature_info(Autotype WITH_XC_AUTOTYPE "Auto-type passwords in Input fields")
151151

152+
add_subdirectory(http)
152153
if(WITH_XC_HTTP)
153-
set(keepasshttp_SOURCES
154-
http/AccessControlDialog.cpp
155-
http/EntryConfig.cpp
156-
http/HttpPasswordGeneratorWidget.cpp
157-
http/HttpSettings.cpp
158-
http/OptionDialog.cpp
159-
http/Protocol.cpp
160-
http/Server.cpp
161-
http/Service.cpp
162-
)
163-
set(keepasshttp_FORMS
164-
http/AccessControlDialog.ui
165-
http/HttpPasswordGeneratorWidget.ui
166-
http/OptionDialog.ui
167-
)
168-
set(keepasshttp_LIB keepasshttp)
169-
qt5_wrap_ui(keepasshttp_SOURCES ${keepasshttp_FORMS})
154+
set(keepasshttp_LIB keepasshttp)
170155
endif()
171156

172157
add_subdirectory(autotype)
@@ -195,31 +180,32 @@ qt5_wrap_ui(keepassx_SOURCES ${keepassx_FORMS})
195180
add_library(zxcvbn STATIC zxcvbn/zxcvbn.cpp)
196181
target_link_libraries(zxcvbn)
197182

198-
if(WITH_XC_HTTP)
199-
add_library(keepasshttp STATIC ${keepasshttp_SOURCES})
200-
target_link_libraries(keepasshttp ${MHD_LIBRARIES} Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network)
201-
endif()
202-
203183
add_library(autotype STATIC ${autotype_SOURCES})
204184
target_link_libraries(autotype Qt5::Core Qt5::Widgets)
205185

206186
set(autotype_LIB autotype)
207187

208188
add_library(keepassx_core STATIC ${keepassx_SOURCES})
209-
set_target_properties(keepassx_core PROPERTIES COMPILE_DEFINITIONS KEEPASSX_BUILDING_CORE)
210-
target_link_libraries(keepassx_core zxcvbn ${keepasshttp_LIB} ${autotype_LIB} Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network)
211189

212-
add_executable(${PROGNAME} WIN32 MACOSX_BUNDLE ${keepassx_SOURCES_MAINEXE})
213-
target_link_libraries(${PROGNAME}
214-
keepassx_core
190+
set_target_properties(keepassx_core PROPERTIES COMPILE_DEFINITIONS KEEPASSX_BUILDING_CORE)
191+
target_link_libraries(keepassx_core
192+
${keepasshttp_LIB}
193+
${autotype_LIB}
215194
zxcvbn
195+
qhttp
216196
Qt5::Core
217197
Qt5::Concurrent
218198
Qt5::Widgets
219199
Qt5::Network
220200
${GCRYPT_LIBRARIES}
221201
${GPGERROR_LIBRARIES}
222202
${ZLIB_LIBRARIES})
203+
if (UNIX AND NOT APPLE)
204+
target_link_libraries(keepassx_core Qt5::DBus)
205+
endif()
206+
207+
add_executable(${PROGNAME} WIN32 MACOSX_BUNDLE ${keepassx_SOURCES_MAINEXE})
208+
target_link_libraries(${PROGNAME} keepassx_core)
223209

224210
set_target_properties(${PROGNAME} PROPERTIES ENABLE_EXPORTS ON)
225211

src/gui/AboutDialog.ui

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<x>0</x>
88
<y>0</y>
99
<width>455</width>
10-
<height>238</height>
10+
<height>266</height>
1111
</rect>
1212
</property>
1313
<property name="windowTitle">
@@ -53,7 +53,7 @@
5353
</sizepolicy>
5454
</property>
5555
<property name="text">
56-
<string notr="true">&lt;a href=&quot;https://www.keepassxc.org/&quot;&gt;https://www.keepassxc.org/&lt;/a&gt;</string>
56+
<string notr="true">&lt;a href=&quot;https://keepassxc.org/&quot;&gt;https://keepassxc.org/&lt;/a&gt;</string>
5757
</property>
5858
<property name="openExternalLinks">
5959
<bool>true</bool>
@@ -69,7 +69,7 @@
6969
</sizepolicy>
7070
</property>
7171
<property name="text">
72-
<string>KeePassXC is distributed under the term of the GNU General Public License (GPL) version 2 or (at your option) version 3.</string>
72+
<string>KeePassXC is distributed under the terms of the GNU General Public License (GPL) version 2 or (at your option) version 3.</string>
7373
</property>
7474
<property name="wordWrap">
7575
<bool>true</bool>
@@ -82,7 +82,7 @@
8282
<string/>
8383
</property>
8484
<property name="textInteractionFlags">
85-
<set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set>
85+
<set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse</set>
8686
</property>
8787
</widget>
8888
</item>
@@ -91,6 +91,9 @@
9191
<property name="text">
9292
<string>Using:</string>
9393
</property>
94+
<property name="textInteractionFlags">
95+
<set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set>
96+
</property>
9497
</widget>
9598
</item>
9699
<item>
@@ -99,6 +102,9 @@
99102
<string>Extensions:
100103
</string>
101104
</property>
105+
<property name="textInteractionFlags">
106+
<set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set>
107+
</property>
102108
</widget>
103109
</item>
104110
<item>

src/gui/ChangeMasterKeyWidget.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,3 +136,8 @@ void ChangeMasterKeyWidget::reject()
136136
{
137137
Q_EMIT editFinished(false);
138138
}
139+
140+
void ChangeMasterKeyWidget::setCancelEnabled(bool enabled)
141+
{
142+
m_ui->buttonBox->button(QDialogButtonBox::Cancel)->setEnabled(enabled);
143+
}

src/gui/ChangeMasterKeyWidget.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ class ChangeMasterKeyWidget : public DialogyWidget
3838
void clearForms();
3939
CompositeKey newMasterKey();
4040
QLabel* headlineLabel();
41+
void setCancelEnabled(bool enabled);
4142

4243
Q_SIGNALS:
4344
void editFinished(bool accepted);

0 commit comments

Comments
 (0)