Commit Graph

794 Commits

Author SHA1 Message Date
Felix Geyer
755241df5c Focus entryView when pressing enter in the search field. 2013-11-17 10:55:58 +01:00
Felix Geyer
9080864167 Fix tab focus order in ui files. 2013-11-17 10:15:50 +01:00
Albert Weichselbraun
d25e883983 Fixed bug #116 - certain characters not working with de keyboard layout 2013-11-17 07:48:25 +01:00
Felix Geyer
091e87aeb3 EditEntryWidget: move the URL field beneath the password. 2013-11-16 22:30:39 +01:00
Charles Brunet
4a870f61f1 Added option to minimize window when copying data to clipboard
https://github.com/keepassx/keepassx/pull/24
2013-10-29 20:54:56 +01:00
Felix Geyer
5daf0853c9 Coding style fixes. 2013-10-13 18:08:50 +02:00
Felix Geyer
ef3d7b7772 Merge branch 'modulo-bias'
https://github.com/keepassx/keepassx/pull/21
2013-10-12 19:12:51 +02:00
Felix Geyer
7dde8a771f Use QUINT32_MAX in tests instead of hardcoding the number. 2013-10-12 19:11:57 +02:00
Felix Geyer
3dd4681e69 Fix EntryView not emitting activated() signals on return key press.
AutoTypeSelectDialog relies on this behavior.
2013-10-10 22:47:32 +02:00
Felix Geyer
9c788a6e84 Support custom backends in Random.
Useful for tests.
2013-10-09 22:06:32 +02:00
Felix Geyer
e087baeb48 Avoid modulo bias in Random::randomUInt(). 2013-10-09 21:59:24 +02:00
Felix Geyer
d5b70b1bef Add a QMessageBox wrapper class to help gui tests.
QMessageBox displays modal dialogs which blocks the gui tests.
To work around this we add a MessageBox wrapper class where
the tests can set the answer for the next dialog.
The answer is then returned without actually showing the dialog.
2013-10-08 22:09:20 +02:00
Felix Geyer
551637f0c2 Allow removing multiple entries. 2013-10-08 21:36:01 +02:00
Felix Geyer
8778df5789 Drop entries from search results when moved to the recycle bin. 2013-10-08 21:13:20 +02:00
Felix Geyer
67338aac7b Avoid using QApplication in core. 2013-10-08 17:37:12 +02:00
Felix Geyer
626351c5da Add several private header files to CMakeLists.txt. 2013-10-03 16:26:01 +02:00
Felix Geyer
6504b6f2bd Drop Qt module name from include statements.
This is a preparation to be able to build KeePassX against Qt 5.
2013-10-03 15:18:16 +02:00
Jens Dieskau
035271d469 Only edit entries on doubleclick (not single) or with enter key.
https://github.com/keepassx/keepassx/pull/19
2013-09-29 17:35:34 +02:00
Felix Geyer
5c84aa308d Improve error messages for reading and wriiting databases.
Closes #7
2013-06-30 14:43:02 +02:00
Felix Geyer
e1c82a4453 Print a cmake feature log.
This let's users know when the dependnecies for auto-type are missing.
Available only in cmake >= 2.8.3.

Closes #71
2013-06-30 14:07:25 +02:00
Felix Geyer
db6ac26794 Initialize variables to silence compiler warnings. 2013-05-01 12:03:03 +02:00
Felix Geyer
6df30df992 Really fix parsing when the db contains two Root (Group) elements. 2013-04-30 17:04:54 +02:00
Felix Geyer
0ec29b2354 Raise error if we don't find exactly one root group. 2013-04-29 22:31:50 +02:00
Felix Geyer
e16720d06d When parsing make sure that databases contain at least the root group. 2013-04-29 22:31:50 +02:00
Felix Geyer
3be7fa6b3b Raise error when required xml elements are missing. 2013-04-29 22:31:50 +02:00
Felix Geyer
e99e3ae6ca Initalize SymmetricCipherGcrypt::m_blockSize. 2013-04-29 22:31:50 +02:00
Felix Geyer
d182586557 Make sure KeePass1Reader::key() isn't used before the variables are set. 2013-04-29 22:31:50 +02:00
Felix Geyer
1f5564760f Make sure groupId and groupLevel are set in KeePass1Reader::readGroup(). 2013-04-29 22:31:50 +02:00
Felix Geyer
2be045eb8f Initalize m_database in EditGroupWidget ctor. 2013-04-29 22:31:50 +02:00
Felix Geyer
7a89510916 Make more key/value-type functions safe against reordered xml elements. 2013-04-29 22:31:50 +02:00
Felix Geyer
5588792344 Make KeePass2XmlReader::parseGroup() safe against reordered xml elements. 2013-04-29 22:31:50 +02:00
Felix Geyer
3acb33e05a Make KeePass2XmlReader::parseEntry() safe against reordered xml elements. 2013-04-29 22:31:50 +02:00
Felix Geyer
61ee763515 Add Entry::copyDataFrom(). 2013-04-29 22:31:49 +02:00
Felix Geyer
3658a65380 Use Q_NULLPTR instead of 0. 2013-04-29 22:31:49 +02:00
Felix Geyer
fd18bc0330 Use standard GNU install dirs and make them overridable. 2013-04-29 22:17:31 +02:00
Florian Geyer
b499a6df77 Fix coding style. 2013-04-27 11:40:10 +02:00
Florian Geyer
cabec57631 Make argument keys immutable. 2013-04-27 11:40:10 +02:00
Florian Geyer
63f7a0685f Small ArgumentParser refactoring. 2013-04-27 11:40:10 +02:00
Florian Geyer
94e6d3f89b Fix coding style. 2013-04-27 11:23:51 +02:00
Florian Geyer
94ac9c9ea1 Rename config key for last opened databases. 2013-04-27 11:22:38 +02:00
Florian Geyer
bbf183bef7 Add settings option to control if previous databases are opened on startup.
Closes #36
2013-04-18 22:42:22 +02:00
Florian Geyer
6f92188323 Open last used databases on startup.
Refs #36
2013-04-18 22:37:04 +02:00
Florian Geyer
f0985ff9d9 Remember opened databases on quit.
Refs #36
2013-04-18 21:52:08 +02:00
Florian Geyer
ba3baf3595 Open EditEntryWidget when empty url column is activated. 2013-04-14 19:14:06 +02:00
Florian Geyer
34c6b416b0 Add enum for EntryModel column. 2013-04-07 22:17:32 +02:00
Florian Geyer
bf906a7867 Open url when an entry is activated via its url column.
Closes #55
2013-04-07 22:17:32 +02:00
Felix Geyer
fe42861bed Add safety check so we don't insert empty icons. 2013-04-07 19:37:44 +02:00
Felix Geyer
5a96e19ce9 Copy custom icons when copying/moving entries/groups to another database. 2013-04-07 18:32:43 +02:00
Felix Geyer
8ed0379136 Enable the frame for QLineEdits in EditWidgetProperties. 2013-04-07 12:49:05 +02:00
Felix Geyer
4e2f5b1a5b Return true from dropMimeData() when IgnoreAction is passed. 2013-04-07 12:43:20 +02:00
Felix Geyer
317f603262 Support copying entries and groups using drag'n'drop.
Closes #74
2013-04-07 12:43:19 +02:00
Felix Geyer
701013baab Turn two for loops into Q_FOREACH. 2013-04-07 12:43:13 +02:00
Felix Geyer
4b3bee6400 Add extra checks so we never return empty QMimeData from mimeData(). 2013-04-07 11:50:42 +02:00
Felix Geyer
91868969ca Make sure we don't add entries/groups multiple times to the drag'n'drop data. 2013-04-07 11:47:50 +02:00
Tobias Tangemann
ef46b3e8ad Disable menu icons for osx.
https://gitorious.org/keepassx/keepassx/merge_requests/23
2013-04-06 18:02:43 +02:00
Florian Geyer
2558e6db79 First draft of an argument parser.
Possibility to set custom config path.
2013-04-06 11:00:45 +02:00
Felix Geyer
bee570c3cf Add Group::clone().
Move all the data we want to clone into a GroupData struct.
2013-04-04 21:48:55 +02:00
Felix Geyer
be288d26ca Change Entry::clone() to set a random uuid. 2013-04-04 21:25:11 +02:00
Felix Geyer
60335452a4 Add compiler flags to hide all symbols by default. 2013-03-30 00:14:32 +01:00
Felix Geyer
3a822c24e2 Add some more header files to CMakeLists.txt.
This makes them show up in the Qt Creator project.
2013-03-29 23:36:07 +01:00
Felix Geyer
98372f9df8 Drop unnecessary dllimport/dllexport statements in QtIOCompressor. 2013-03-29 16:31:26 +01:00
Felix Geyer
5550d7af0d Fix autotype test (build) failures on Mac OS and Windows.
We need to tell Windows what symbols the main program exports
and the autotype plugin imports.

On both systems the linker needs the path of the main program that
loads the plugin.
2013-03-29 16:27:02 +01:00
Felix Geyer
1c7e8f6921 Small optimizations. 2013-03-26 23:53:34 +01:00
Florian Geyer
97b488b2ba Ignore an unused variable. 2013-03-24 21:57:34 +01:00
Florian Geyer
13393ed2d3 Fix removal of history entries in release builds.
Closes #56
2013-03-24 21:57:34 +01:00
Felix Geyer
82eca1a5bf Coding style fixes. 2013-03-24 14:04:08 +01:00
Felix Geyer
095bf158b6 Close AutoTypeSelectDialog when there are no entries left.
This happens when the entries were deleted or the database
has been closed.
2013-03-24 14:00:23 +01:00
Felix Geyer
c7593a3047 Stop suppressing signals in Group dtor.
That way we emit entry/group removed signals.

Move cleanupParent() call to the bottom so we
maintain the group tree structure for objects that
connect to those signals.
2013-03-24 14:00:23 +01:00
Felix Geyer
72d17c045f Handle deleting groups more consistently.
Delete the entries and child groups in Group dtor
no what if the group has a database or not.
2013-03-24 14:00:23 +01:00
Felix Geyer
7be87051ab Add asserts in GroupModel::groupAboutToRemove(). 2013-03-24 14:00:23 +01:00
Felix Geyer
db08058c4e Ignore an unused variable. 2013-03-24 13:58:13 +01:00
Felix Geyer
eb6612b787 Fix database icons license issues.
Pull C62_Tux.png, C63_Feather.png, C64_Apple.png, C65_Apple.png
and C65_W.png from the latest KeePass 2 version.

Replace C68_BlackBerry.png with another icon from openclipart.org.
It's unclear where this KeePass 2 icon is from.

Closes #69
2013-03-23 21:50:23 +01:00
Felix Geyer
c6edeaddb7 Add icon for the auto-type action. 2013-03-22 19:51:39 +01:00
Felix Geyer
5dadedbf70 Implement the GUI for the password generator.
Closes #52
2013-03-12 22:42:06 +01:00
Felix Geyer
2ed3201b14 Add PasswordGenerator backend.
Refs #52
2013-03-12 21:55:11 +01:00
Florian Geyer
006eadfb9e Fix include statements. 2013-03-12 19:27:17 +01:00
Florian Geyer
870417d9c4 Add dummy PasswordGeneratorWidget.
Refs #52
2013-03-10 22:33:03 +01:00
Florian Geyer
f9dc314e72 Revert "Show correct group name when opening an entry from seach results."
Did not want to push this.

This reverts commit 4daac65cc5.
2013-03-10 20:03:22 +01:00
Florian Geyer
36ad91b447 Entry edit: merge notes and main widget.
Closes #59
2013-03-10 19:47:08 +01:00
Florian Geyer
4daac65cc5 Show correct group name when opening an entry from seach results. 2012-12-27 10:50:48 +01:00
Felix Geyer
23c787c4dd Use effectiveWinId() instead of winId() in widgetsToX11Windows().
winId() creates native handles as a side effect.
This sometimes triggers a bug that causes DatabaseTabWidget to
not be updated anymore.
2012-11-20 23:52:46 +01:00
Felix Geyer
8b0409b228 Handle KeyRelease events of global shortcuts. 2012-11-20 23:52:46 +01:00
Felix Geyer
54641a2304 Initialize global auto-type key variables. 2012-11-20 23:52:46 +01:00
Florian Geyer
50148e9640 Check if a database is present before trying to create the CopyAttributesMenu.
Closes #50
2012-11-10 18:46:01 +01:00
Florian Geyer
e85dbda62a Update timeinfo when cloning an entry. 2012-11-06 23:34:16 +01:00
Florian Geyer
107a2e4a5c Fix sort order when closing the search and an entry was moved. 2012-11-03 18:57:31 +01:00
Felix Geyer
41973d0e92 Revert "Handle DeferredDelete events in Tools::wait()."
Caused a crash when performing auto-type from AutoTypeSelectDialog.

This reverts commit 6b3fed1ce5.
2012-11-03 15:12:04 +01:00
Florian Geyer
363396037d Remove redundant resolvePlaceholders call. 2012-11-02 17:48:16 +01:00
Florian Geyer
e9b704d21f Make sure the presets menu has a parent. 2012-11-02 16:33:10 +01:00
Florian Geyer
bd90ba9326 Move initial auto-type timeout to plugins. 2012-11-02 15:49:25 +01:00
Felix Geyer
6b3fed1ce5 Handle DeferredDelete events in Tools::wait(). 2012-11-02 15:43:45 +01:00
Florian Geyer
8347fd36ba More auto-type tests. 2012-11-02 15:09:54 +01:00
Florian Geyer
848abfc1a7 Handle entry/group title with %1 etc. correctly. 2012-11-02 10:31:06 +01:00
Florian Geyer
64394c0b15 Correct window title when database name contains %1. 2012-11-02 10:15:37 +01:00
Florian Geyer
8748c76de2 Refactor updateWindowTitle function. 2012-11-02 01:07:39 +01:00
Florian Geyer
a77c426b2d Adjust title when settings widget is active. 2012-11-02 00:41:34 +01:00
Florian Geyer
b0280e9d93 Small refactoring in EditWidget and EditEntryWidget. 2012-10-29 23:44:10 +01:00
Florian Geyer
25f15073cc Refactor EditEntryWidget. 2012-10-29 23:11:42 +01:00
Florian Geyer
34a1eef252 Clear out includes. 2012-10-29 22:50:57 +01:00
Florian Geyer
771a041750 Refactor EditWidgetProperties. 2012-10-29 22:41:37 +01:00
Florian Geyer
ff0d53d945 Add properties tab in EditEntryWidget. 2012-10-29 19:59:09 +01:00
Florian Geyer
afe2c00841 Rename "EditGroupWidgetProperties" to "EditWidgetProperties". 2012-10-29 19:29:18 +01:00
Florian Geyer
9a7a88eea2 Rename "Advanced" to "Properties" in EditGroupWidget. 2012-10-29 19:05:51 +01:00
Florian Geyer
ac56ac98f7 Extend auto-type test. 2012-10-28 18:18:24 +01:00
Felix Geyer
d7cbec1a02 Make sure that TestGui doesn't leave a temp file behind.
Swap the parent/child relationship between QTemporaryFile and Config
because the QTemporaryFile dtor is called before its chidren are destroyed.
2012-10-28 18:07:23 +01:00
Felix Geyer
606dbc6eb4 Add infrastructure for auto-type tests. 2012-10-28 15:33:44 +01:00
Felix Geyer
f1719cfc5f Small optimizations. 2012-10-28 11:27:10 +01:00
Florian Geyer
f5eafe6522 Assert that the tmp group has no children when import is finished. 2012-10-28 10:25:43 +01:00
Andreas Piesk
00908856c3 don't abort import if there are entries with invalid groups,
log it and assign them to the root-group
2012-10-28 09:36:27 +01:00
Felix Geyer
16094be4a3 Reduce required cmake version to 2.8.8 again.
It doesn't seem to be required in all cases.
2012-10-27 10:52:54 +02:00
Felix Geyer
0399feff4d Include some more Qt plugins in the Mac OS package.
Require at least cmake 2.8.9 for packages which fixes a bug
when using multiple Qt plugins.
2012-10-27 10:24:01 +02:00
Felix Geyer
c1a45d6258 Fix typo. 2012-10-27 00:26:43 +02:00
Florian Geyer
ddd5e8a209 Add menu entry to copy an entry attribute to clipboard. 2012-10-24 20:03:33 +02:00
Felix Geyer
18337927f5 Fix includes for ptrace(PT_DENY_ATTACH, ...). 2012-10-23 17:06:50 +02:00
Felix Geyer
34f595cc78 Build icon into the main executable on Windows. 2012-10-23 14:52:59 +02:00
Felix Geyer
7d57d08b32 Enable CPack on Windows. 2012-10-22 20:40:03 +02:00
Felix Geyer
59847f4f30 Make QSaveFile work on Windows when the target file already exists. 2012-10-22 17:48:13 +02:00
Felix Geyer
caec47b1e5 Fix drag'n'drop of multiple entries.
Previously only the first entry was moved.
2012-10-21 22:31:21 +02:00
Florian Geyer
08415bd824 Improve headline in EditEntryWidget. 2012-10-21 21:50:05 +02:00
Florian Geyer
92bf7c94d0 Whitespace separated search terms are AND concatenated. 2012-10-21 21:09:27 +02:00
Felix Geyer
4d263a09db Include config-keepassx.h in Tools.cpp for the HAVE_* defines. 2012-10-21 19:24:17 +02:00
Felix Geyer
59da03d660 Make TriState strings translatable. 2012-10-21 15:11:09 +02:00
Felix Geyer
b17cb60b5c Coding style fixes. 2012-10-21 15:09:01 +02:00
Felix Geyer
788cc02685 Make sure all auto-type settings are saved and the UI is reset before loading entries. 2012-10-21 12:47:30 +02:00
Felix Geyer
169e6327ea Disable core dumps and tracing on *nix.
But only when built in release mode.

Closes #4
2012-10-21 12:33:00 +02:00
Florian Geyer
807924c0bc Refactor EditGroupWidget. 2012-10-20 17:53:33 +02:00
Florian Geyer
1558dd8309 Make group autotype setting editable via GUI. 2012-10-20 17:26:23 +02:00
Florian Geyer
dd82c9f8f9 Search in root group by default. 2012-10-20 16:57:14 +02:00
Felix Geyer
e166722026 Implement database locking.
Closes #35
2012-10-12 12:12:00 +02:00
Felix Geyer
8117809901 Add small comment. 2012-10-12 12:11:34 +02:00
Felix Geyer
7286b1847d Add Database::verifyKey().
And make Database::hasKey() const.
2012-10-12 12:10:41 +02:00
Felix Geyer
b8b4d35763 Add CompositeKey::isEmpty(). 2012-10-12 12:10:13 +02:00
Felix Geyer
78c125af4e Check if all required database headers were present. 2012-10-12 12:09:22 +02:00
Felix Geyer
18d3fe55f8 Add support for database format 3.01 (HeaderHash).
Add test for the format 3.00 and upgrade Compressed.kdbx, NonAscii.kdbx
and ProtectedStrings.kdbx to 3.01.

Add a test for an incorrect HeaderHash.
2012-09-25 22:33:36 +02:00
Felix Geyer
40ccd219f4 Allow only selecting one row in AutoTypeSelectView. 2012-09-25 17:51:49 +02:00
Felix Geyer
ba7b787dd3 Minimize the main window with Command + M on Mac OS.
Closes #42
2012-09-01 11:14:05 +02:00
Florian Geyer
de1a94ff61 Add presets for expire date.
Closes #44
2012-08-18 17:33:41 +02:00
Florian Geyer
6c695e3fd0 Remember show toolbar option.
Closes #43
2012-08-15 19:50:31 +02:00
Felix Geyer
0bac9752ba Use QTime instead of QElapsedTimer with Qt 4.6.
The latter has been introduced in Qt 4.7.
2012-08-05 19:19:01 +02:00
Felix Geyer
138ca8d3a3 Select the first entry when the model has been reset.
This avoids overriding setEntryList().
2012-08-05 18:51:19 +02:00
Felix Geyer
6e206704f9 Make sure the clipboard is cleared before the QApplication instance is destroyed.
Also add safety check so we don't try to use the clipboard if it's not available.
2012-08-04 22:06:41 +02:00
Felix Geyer
013a924e43 Activate the auto-type select dialog after showing it.
That way it is brought to the front even when the main window is minimized.
2012-08-04 22:06:41 +02:00
Felix Geyer
54433637eb Disable dragging items from the AutoTypeSelectView. 2012-08-04 22:06:41 +02:00
Felix Geyer
8fb2f9db7c Move inline keyword to function definition. 2012-08-04 22:06:41 +02:00
Felix Geyer
9c378216f6 Coding style fixes. 2012-08-04 22:06:41 +02:00
Felix Geyer
668103a00f Show group and entry view context menus from MainWindow.
This allows us to drop the duplicate actions in DatabaseWidget.
2012-08-04 22:06:41 +02:00
Florian Geyer
15c18dd899 Do not try to open a non-existing database. 2012-07-28 10:19:32 +02:00
Felix Geyer
886187baee Show a busy cursor while doing master key transformations. 2012-07-27 18:54:35 +02:00
Felix Geyer
3a2f387892 Add action to open the entry URL.
Closes #37
2012-07-27 18:38:52 +02:00
Felix Geyer
e9a96ff80a Mark m_pixmapCacheKey as mutable so we don't have to const_cast. 2012-07-25 12:18:16 +02:00