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
Felix Geyer
5786d0c279
Regain focus after native file dialogs have been closed.
...
For some reason this happens on Mac OS X.
We work around it by calling activateWindow().
Closes #39
2012-07-25 12:18:16 +02:00
Florian Geyer
53ce522c08
Disable recent databases menu when in settings widget.
2012-07-23 23:50:17 +02:00
Florian Geyer
9f21b54c4e
Prevent selection of both entries when an entry is cloned via shortcut.
2012-07-23 22:27:02 +02:00
Florian Geyer
8bff332be0
Add shortcuts for entry creation, editing, cloning and deletion.
...
Closes #40
2012-07-23 21:54:24 +02:00
Florian Geyer
0755702fe3
Show last used databases in file menu.
...
Refs #36
2012-07-23 21:16:55 +02:00
Felix Geyer
a16f7e7cca
Use WildcardMatcher for simple Auto-Type window patterns.
2012-07-23 18:11:10 +02:00
Felix Geyer
92efb3d20b
Move autoTypeSequence() and windowMatches() to the AutoType class.
2012-07-23 18:06:04 +02:00
Felix Geyer
4f0600421c
Fall back to WM_NAME if _NET_WM_NAME does not exist.
2012-07-23 17:51:21 +02:00
Felix Geyer
ad0d120ae6
Coding style fixes.
2012-07-23 15:11:05 +02:00
Felix Geyer
ecea101962
Return Q_NULLPTR instead of 0 when the return type is a pointer.
2012-07-23 14:58:57 +02:00
Felix Geyer
fcc936ceff
Disable searching and auto-type for the Backup group imported from KeePass1.
2012-07-23 13:21:17 +02:00
Felix Geyer
7820bf2510
For global auto-type use the default sequence of the entry before the group.
2012-07-23 12:56:00 +02:00
Felix Geyer
4a357e791e
Set Auto-Type sequence edit to read only when in history mode.
...
Not the other way aroud.
2012-07-23 12:42:05 +02:00
Felix Geyer
cf15d1741f
Optimize WildcardMatcher a bit.
2012-07-23 12:33:37 +02:00
Felix Geyer
9ad4cc8783
Subclass QSortFilterProxyModel to hide the group column in EntryView.
...
QTreeView::hideColumn() does not work well with keyboard search.
2012-07-22 22:02:06 +02:00
Florian Geyer
7bd080760e
Make wildcard matcher case insensitive.
2012-07-22 14:58:15 +02:00
Florian Geyer
4f78c32461
Add custom wildcard matcher.
2012-07-22 14:43:45 +02:00
Felix Geyer
9a2aba56fc
Set name of the root group when importing KeePass 1 databases.
2012-07-21 22:21:49 +02:00
Felix Geyer
20e4643560
Implement global auto-type dialog.
...
It allows to select an entry when there are multiple entries
that match the window title.
2012-07-21 22:21:49 +02:00
Felix Geyer
34ad5d61f6
Allow EntryModel to be used with entries from different databases.
2012-07-21 22:21:49 +02:00
Felix Geyer
39b9260719
Rename methods in EntryModel and EntryView from "search" to "entry list mode".
2012-07-21 22:21:49 +02:00
Felix Geyer
33b4cd8636
Don't add new entries to EntryModel when in search mode.
...
Only allow moving entries from one group to the other.
2012-07-21 22:21:49 +02:00
Florian Geyer
f6e1af30b3
Move recycle bin creation method to Group class.
2012-07-21 11:58:00 +02:00
Felix Geyer
a50d2709e7
Replace EntryAttachments and EntryAttributes operator=() with copyDataFrom().
...
QObjects are not supposed to have assignment operators.
2012-07-20 12:15:19 +02:00
Felix Geyer
c7107de2a7
Improve window select combo box.
...
Create the WindowSelectComboBox subclass that refreshes the window
list whenever the popup is opened.
2012-07-20 12:15:14 +02:00
Felix Geyer
b5c3873cfd
Update auto-type association editing.
...
Correctly set enabled status of all elements.
Fix crash when clicking on the view and the entry has no auto-type associations.
2012-07-20 10:28:18 +02:00
Felix Geyer
ef579cbe3c
Refactor Entry::truncateHistory().
...
This allows us to drop Entry::getSize() and EntryAttachments::attachmentsSize()
which have weird semantics.
2012-07-20 00:45:34 +02:00
Felix Geyer
0c1fecfb2b
const_cast "this" instead of the member variable.
2012-07-19 23:32:31 +02:00
Felix Geyer
b6d9c2e486
Import Auto-Type associations in KeePass1Reader.
2012-07-19 23:21:12 +02:00
Felix Geyer
8cf6289d9c
Close search when the escape button is pressed.
2012-07-19 19:42:26 +02:00
Felix Geyer
8619682da3
Replace some more Q_WS_* with Q_OS_*.
2012-07-19 19:42:26 +02:00
Felix Geyer
308d3ad84b
Use constructor initialization lists where possible.
2012-07-19 19:42:14 +02:00
Felix Geyer
4152e93bb7
Add a cache for FilePath::icon().
2012-07-18 21:22:36 +02:00
Felix Geyer
f01076856b
Don't add double "/" to paths.
2012-07-18 21:22:36 +02:00
Felix Geyer
3100c202e8
Install the auto-type plugin.
2012-07-18 21:22:36 +02:00
Felix Geyer
2a45f57386
Support proper plugin finding.
...
So we don't have to hardcode the location anymore.
2012-07-18 21:22:36 +02:00
Felix Geyer
7fef3bd701
Rename DataPath to FilePath.
2012-07-18 21:22:26 +02:00
Felix Geyer
490414716d
Generate new random transform seed when changing transform rounds.
2012-07-17 10:57:08 +02:00
Felix Geyer
7e9343c697
Fix CompositKey self assignment.
2012-07-17 10:57:08 +02:00
Felix Geyer
f767a098d6
Add GUI test for changing the database transform rounds.
...
Refs #34
2012-07-17 10:56:56 +02:00
Felix Geyer
66422437d3
Regenerate key in Database::setTransformRounds().
...
Merge Database::updateKey() into Database::setTransformRounds() and
regenerate the key if the database already has a key.
Closes #34
2012-07-17 10:33:54 +02:00
Felix Geyer
965dba63d7
Use Q_OS_MAC instead of the nonexistent Q_OS_MACOS.
...
Thanks to Richard Johnson for spotting this.
Closes #33
2012-07-16 17:49:12 +02:00
Felix Geyer
676be9da16
Coding style fixes.
2012-07-16 17:47:21 +02:00
Felix Geyer
237d954b65
Add auto-type settings to EditEntryWidget.
2012-07-16 17:40:28 +02:00
Felix Geyer
af166a66b3
Add AutoTypeAssociationsModel class.
2012-07-16 17:39:20 +02:00
Felix Geyer
7db6850528
Add AutoTypeAssociations::removeEmpty().
2012-07-16 17:37:18 +02:00
Felix Geyer
7abaf0e215
Fix bug in Entry::autoTypeSequence() with default window sequences.
...
When using the default sequence autoTypeSequence() returned an empty string.
2012-07-16 17:34:19 +02:00
Felix Geyer
0b8f07f58e
Don't re-register the global shortcut when the keyboard mapping changes.
...
This breaks after the first global auto-type.
2012-07-16 17:33:23 +02:00
Felix Geyer
85d532953f
Emit globalShortcutTriggered() directly.
...
There is no need for a queued connection call.
2012-07-16 17:29:42 +02:00
Felix Geyer
f98d834edb
Move Auto-Type associations handling from Entry into an own class.
2012-07-16 09:54:04 +02:00
Felix Geyer
f4a4930f42
Entry::autoTypeSequence() returns null string when no window matches.
...
Return QString() when a windowTitle is passed but doesn't match any
auto-type association.
2012-07-15 11:30:30 +02:00
Felix Geyer
6d5b31f527
Normalize signal/slot signatures.
2012-07-14 19:34:38 +02:00
Felix Geyer
288fa732ca
Add global shortcut widget to SettingsWidget and register shortcut on startup.
2012-07-14 19:09:28 +02:00
Felix Geyer
d3af39a7ae
Reset and unregister global shortcut when it's not locked anymore.
2012-07-14 19:07:13 +02:00
Felix Geyer
fa51f7e10e
Make AutoType::performGlobalAutoType() a slot.
2012-07-14 19:06:05 +02:00
Felix Geyer
651c00239a
Add an auto-type entry action.
2012-07-12 22:35:51 +02:00
Felix Geyer
bc207714da
Add initial auto-type implementation.
...
The platform dependent bits are separated in plugins.
A plugin for X11 using Xlib is already done.
2012-07-12 22:33:20 +02:00
Felix Geyer
073f3f9dfc
Add ListDeleter class.
...
A class that deletes all elements of a QList when it goes out of scope.
2012-07-12 22:28:44 +02:00
Felix Geyer
549c3ce598
Fix memory leak in QSaveFile.
2012-07-12 21:30:37 +02:00
Felix Geyer
9de4cbbbd6
Use Q_OS_* defines instead of Q_WS_*.
2012-07-12 13:58:40 +02:00
Felix Geyer
13eb1f6330
Add Tools::sleep() and Tools::wait().
2012-07-12 13:51:50 +02:00
Felix Geyer
4b6cae0fcd
Fix some compiler warnings.
...
Implements parts of
https://gitorious.org/keepassx/keepassx/merge_requests/18
2012-07-08 11:27:11 +02:00
Felix Geyer
fb4367f9ef
Remove some unneeded includes.
2012-07-08 10:27:31 +02:00
Felix Geyer
ce633b54be
Prevent opening a database multiple times in the same instance.
...
Refs #18
2012-07-08 10:26:42 +02:00
Felix Geyer
2e38b01d80
Add Save and SaveAs gui tests.
2012-07-06 19:21:19 +02:00