Skip to content

insert newDatabase icon in ToolBar#289

Merged
TheZ3ro merged 3 commits intodevelopfrom
fix/ui-fix
Feb 11, 2017
Merged

insert newDatabase icon in ToolBar#289
TheZ3ro merged 3 commits intodevelopfrom
fix/ui-fix

Conversation

@TheZ3ro
Copy link
Copy Markdown
Contributor

@TheZ3ro TheZ3ro commented Feb 11, 2017

Description

insert newDatabase icon in ToolBar, fix #203

How Has This Been Tested?

Screenshots (if appropriate):

(this screenshot shows the 16x16 icon, I've added a new commit with the correct 22x22 icon)
istantanea_2017-02-11_12-14-52

Types of changes

  • ✅ Bug fix (non-breaking change which fixes an issue)

Checklist:

  • ✅ I have read the CONTRIBUTING document. [REQUIRED]
  • ✅ My code follows the code style of this project. [REQUIRED]
  • ✅ All new and existing tests passed. [REQUIRED]

@phoerious phoerious added this to the v2.2.0 milestone Feb 11, 2017
Copy link
Copy Markdown
Member

@phoerious phoerious left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice addition. However, you should also add a keyboard shortcut. Unfortunately, Ctrl+N is already taken, but maybe Ctrl+Shift+N?
I always try to create a new DB with a shortcut, but for some stupid reason, there is none.

And BTW the branch should be named feature/203-new-icon-in-toolbar or so. ;-)

@TheZ3ro
Copy link
Copy Markdown
Contributor Author

TheZ3ro commented Feb 11, 2017

I think we should assign a new KeySequence to the newEntry event and use CTRL+N for the new database.

Yeah, I've used an old branch I was working on for other ui-related issues and forgot to change.

@phoerious
Copy link
Copy Markdown
Member

Fine by me. Ctrl+N for new DB and Ctrl+Shift+N for new entry?

@TheZ3ro
Copy link
Copy Markdown
Contributor Author

TheZ3ro commented Feb 11, 2017

Yeah, Done

@TheZ3ro
Copy link
Copy Markdown
Contributor Author

TheZ3ro commented Feb 11, 2017

Fixed a typo with a force push

@TheZ3ro TheZ3ro merged commit 606a1f4 into develop Feb 11, 2017
@TheZ3ro TheZ3ro deleted the fix/ui-fix branch February 11, 2017 13:11
@jsoref
Copy link
Copy Markdown
Contributor

jsoref commented Feb 12, 2017

I'm not sure about the wholesale reassignment of cmd-n.

If you don't have a database open, then cmd-n can't possibly do anything useful as new-entry, and thus mapping it to new-database is a good idea.

But, if you have a database open, the most common action is new-entry, and thus I'd argue in favor of it doing that instead of new-database. (With cmd-shift-n as a reasonable alternate for this case.)

@phoerious
Copy link
Copy Markdown
Member

I would argue that Ctrl+N is almost always used for creating a new document and a document in our case is a database, not a single entry.
Besides, Ctrl+Shift+N is not so complicated that it would become a burden to use.

@droidmonkey
Copy link
Copy Markdown
Member

It could be contextual. If you are not inside an active database CTRL+N could be new database. If you ARE inside an active database CTRL+N could be new entry.

@phoerious
Copy link
Copy Markdown
Member

I was thinking about that solution as well, but I suppose that would be rather confusing. That would maybe be a practicable solution if only one of those shortcuts worked at the same time. But you can always create a new database, even if you already have one.

@jsoref
Copy link
Copy Markdown
Contributor

jsoref commented Feb 12, 2017

While you can create a database if you have one, you are unlikely to want to, and thus it really shouldn't be the default action.

One could make the half-argument that an entry is a document which is why ^N is the right marking for it, but in the case where you don't have a document-container, we're defaulting to creating the container first.

A slightly different model would be that ^N always creates a new entry, and if you don't have a database what it does is creates the new database and inserts a new entry into it so that you're always creating a new entry :-) -- that might be easier to reason through...

@phoerious
Copy link
Copy Markdown
Member

I would leave it as is, but we can discuss switching the shortcuts.
Having context-dependent shortcuts, however, is too confusing.

@jsoref
Copy link
Copy Markdown
Contributor

jsoref commented Feb 12, 2017

That's fine.

I'd strongly encourage you to make ^N the new entry key*. Users may have 2-3 databases, but they'll have hundreds of entries. They're much more likely to be creating entries than databases, and if they've been using KeyPass or others in the past (including KeyChain.app), that's the action that they expect.

For reference, macOS has 3 levels of commands:

  1. cmd-N -- normal actions
  2. cmd-shift-N -- related actions
  3. cmd-option-N -- exotic but related actions

For KeyChain.app, new item is in the first category, and new database is in the last. -- A keychain is the KeyChain.app equivalent of a KeePass database.

http://web.archive.org/web/20170212220541im_/https://circleci.com/docs/assets/img/docs/ios-getting-started-keychain-file-menu.png
image

  • by ^, I mean "whatever is the first level thing" -- on macOS that's command and .everywhere else that's control.

@TheZ3ro
Copy link
Copy Markdown
Contributor Author

TheZ3ro commented Feb 12, 2017

If we want to make a behavior based shortcut (that is pretty confusing for users already), I think we should go for "^N default shortcut for create a new entry, if no database opened, open a database and create entry."

Otherwise (if we don't want a behavior based) we should decide and stick with that.

@jsoref
Copy link
Copy Markdown
Contributor

jsoref commented Feb 13, 2017

My general preference is just ^N = new-entry, but short of that, the other behavior that @TheZ3ro doesn't mind would be my second choice.

@phoerious
Copy link
Copy Markdown
Member

Having used develop for a while now, I think it is actually a good idea to switch the hotkeys. Use Ctrl+N for new entry and Ctrl+Shift+N for new database.

@TheZ3ro
Copy link
Copy Markdown
Contributor Author

TheZ3ro commented Feb 16, 2017

I will revert this PR this afternoon

@phoerious
Copy link
Copy Markdown
Member

Just make a new PR that switches the shortcuts.

@TheZ3ro
Copy link
Copy Markdown
Contributor Author

TheZ3ro commented Feb 16, 2017

Yep (reverting always mean doing a new PR)

droidmonkey added a commit that referenced this pull request Jun 25, 2017
- Added YubiKey 2FA integration for unlocking databases [#127]
- Added TOTP support [#519]
- Added CSV import tool [#146, #490]
- Added KeePassXC CLI tool [#254]
- Added diceware password generator [#373]
- Added support for entry references [#370, #378]
- Added support for Twofish encryption [#167]
- Enabled DEP and ASLR for in-memory protection [#371]
- Enabled single instance mode [#510]
- Enabled portable mode [#645]
- Enabled database lock on screensaver and session lock [#545]
- Redesigned welcome screen with common features and recent databases [#292]
- Multiple updates to search behavior [#168, #213, #374, #471, #603, #654]
- Added auto-type fields {CLEARFIELD}, {SPACE}, {{}, {}} [#267, #427, #480]
- Fixed auto-type errors on Linux [#550]
- Prompt user prior to executing a cmd:// URL [#235]
- Entry attributes can be protected (hidden) [#220]
- Added extended ascii to password generator [#538]
- Added new database icon to toolbar [#289]
- Added context menu entry to empty recycle bin in databases [#520]
- Added "apply" button to entry and group edit windows [#624]
- Added macOS tray icon and enabled minimize on close [#583]
- Fixed issues with unclean shutdowns [#170, #580]
- Changed keyboard shortcut to create new database to CTRL+SHIFT+N [#515]
- Compare window title to entry URLs [#556]
- Implemented inline error messages [#162]
- Ignore group expansion and other minor changes when making database "dirty" [#464]
- Updated license and copyright information on souce files [#632]
- Added contributors list to about dialog [#629]
@fluchtkapsel
Copy link
Copy Markdown

From a usability point of view, the omission of the "New Document" icon in the toolbar was one of the greater improvements. As creation of new databases is something users rather seldomly do it's not necessary to expose it prominently.

Thus said, I am curious what has been your rationale for adding it again?

@TheZ3ro
Copy link
Copy Markdown
Contributor Author

TheZ3ro commented Jul 14, 2017

@MasinAD for new users it's fundamental to have a new database icon right in front of their eyes. Also, if you open a document with LibreOffice or Geany, the first button is a new document button

@fluchtkapsel
Copy link
Copy Markdown

fluchtkapsel commented Jul 14, 2017 via email

@droidmonkey
Copy link
Copy Markdown
Member

Thanks for your feedback but i don't foresee this PR being reverted without major community backlash.

@fluchtkapsel
Copy link
Copy Markdown

Is there some kind of forum where to discuss such decisions? I understand the Github issue tracker might not be the best fit for it.

As to my motivation: I administrate about 100 client PCs of which about half are Ubuntu clients. Most of my users are computer literate but no enthusiasts. I need to provide them tools with as little friction in day-to-day use as possible. KeePassX works nice, but is lacking in a few areas (you might have noticed ;-) ). KeePassXC has tons of improvements, but I get the feeling the design decisions are not always … well reasoned, in lack of better words.

At my workplace, we have some UX experts. If you want I could ask them to take a look at the current state of the KeePassXC UI.

@phoerious
Copy link
Copy Markdown
Member

No, there is no forum. We prefer to keep discussions in one place.
We are open to well-founded UX concerns, but they have to be beyond "I like that better" or "I think people would prefer…" or "In our firm, users don't understand…"

@fluchtkapsel
Copy link
Copy Markdown

fluchtkapsel commented Jul 16, 2017 via email

@phoerious
Copy link
Copy Markdown
Member

Consistency with other applications.

@droidmonkey
Copy link
Copy Markdown
Member

droidmonkey commented Jul 17, 2017

If you really don't like it just comment it out and compile the application for your firm. Bantering back and forth on this PR is very fruitless at this point.

@phoerious phoerious added pr: new feature Pull request adds a new feature and removed new feature labels Nov 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: new feature Pull request adds a new feature user interface

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add a new database button to the left of open

5 participants