Commit Graph

823 Commits

Author SHA1 Message Date
Albert Weichselbraun
6b33298a6e Merge branch 'bug-116-autotype-new' into bug-116-autotype 2013-11-17 21:10:29 +01:00
Albert Weichselbraun
68e1fc0cd0 Use XKeysymToKeycode together with XkbTranslateKeyCode for translating KeySyms to the corresponding keycode and modifier sequences. 2013-11-17 21:08:55 +01:00
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
Francois Ferrand
41be9e8178 Implement option to search all open databases. 2013-05-02 13:58:01 +02:00
Francois Ferrand
be24872bba Notifications pseudo-code. 2013-05-02 13:58:01 +02:00
Francois Ferrand
db56546871 Filter GetAllLogins entries, to return only entries with an URL. 2013-05-02 13:58:01 +02:00
Francois Ferrand
53b30e267c Fix entry partial matching rules. 2013-05-02 13:58:01 +02:00
Francois Ferrand
8f33c5235b Fix StringField copy. 2013-05-02 13:58:00 +02:00
Francois Ferrand
d8857bf42d Fix currentMode() while DB is not yet open. 2013-05-02 13:58:00 +02:00
Francois Ferrand
a85ac07576 Qocoa compilation fix for MacOS. 2013-05-02 13:58:00 +02:00
Felix Geyer
db6ac26794 Initialize variables to silence compiler warnings. 2013-05-01 12:03:03 +02:00
Francois Ferrand
d2ab008aa0 Auto-reload settings. 2013-04-30 17:31:08 +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
Francois Ferrand
f4ff8b17f7 Use search field for search.
Search options are presented in a context menu on the search field, as well as
links in search header.
2013-04-29 18:05:08 +02:00
Francois Ferrand
d5c8787451 Detect background changes to database file.
This gives the option to reload the database.

TODO:
 - Settings for reloadBehavior (ask, reloadUnchanged, ignore)
 - Improve notification, by using a header instead of dialog: nicer, less
intrusive, gives more options to user, and works better when multiple databases
are open.
 - Keep tab order on reload.
2013-04-29 09:11:26 +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
Francois Ferrand
850c7c7ecf Option to automatically reopen databases which were last opened. 2013-04-24 13:30:30 +02:00
Francois Ferrand
7ff475977e Favicon download button. 2013-04-22 11:25:01 +02:00
Francois Ferrand
478d30b529 Fix typo. 2013-04-19 17:20:26 +02:00
Francois Ferrand
d6597400de Support IPv6 as well as IPv4. 2013-04-19 11:30:11 +02:00
Francois Ferrand
af394ff65c Settings UI integration. 2013-04-19 11:29:46 +02:00
Francois Ferrand
f6fa6d6563 KeyPassX/Http settings. 2013-04-19 11:29:46 +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
Francois Ferrand
fd7a49f4a6 Sort entries. 2013-04-18 17:57:00 +02:00
Francois Ferrand
47d7598e99 Fix confirmation allowing access to all entries. 2013-04-18 17:57:00 +02:00
Francois Ferrand
e2ba754f91 Default icon. 2013-04-18 17:57:00 +02:00
Francois Ferrand
c98aad698a Cleanup reference/pointer declarations. 2013-04-18 17:57:00 +02:00
Francois Ferrand
75f0d132e5 Add removeSharedEncryptionKeys() and removeStoredPermissions() 2013-04-18 17:57:00 +02:00
Francois Ferrand
f82725139a Support "KPH: " extra fields. 2013-04-18 17:57:00 +02:00
Florian Geyer
ba3baf3595 Open EditEntryWidget when empty url column is activated. 2013-04-14 19:14:06 +02:00
Francois Ferrand
b9e58c77af Use splitter in 'Additional attributes'. 2013-04-12 15:18:10 +02:00
Francois Ferrand
ad67eac257 Confirmation dialog to list entries. 2013-04-12 15:17:56 +02:00
Francois Ferrand
eef51f26f0 Cleaner qobject2qvariant(). 2013-04-12 15:17:19 +02:00
Francois Ferrand
ea992bc3e6 Support KeyPassHttp protocol.
Allows using passIfox (firefox) and Chromeipass (chrome).
2013-04-12 15:16:56 +02:00
Francois Ferrand
20f3f23576 Customizable toolbar icon size. 2013-04-11 12:11:33 +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