nextcloud / contacts

📇 Contacts app for Nextcloud
https://apps.nextcloud.com/apps/contacts
GNU Affero General Public License v3.0
569 stars 172 forks source link

Design review #1923

Closed skjnldsv closed 10 months ago

skjnldsv commented 4 years ago

Overall

Papercuts and bugs

  1. [x] In social media dropdown: "Other ... ial media" is ellipsized --> "Other" https://github.com/nextcloud/contacts/issues/3316
  2. [ ] Settings > "enable/disable" --> "Enable", don’t change on edit
    • Should not be possible to disable if it’s the last writable address book
    • Directly reflect state change also for disabling
    • [ ] create new group could be inline like in deck (right now there's the create whatever component but it's in a tooltip looking thing)
    • [ ] menu stayed focused but settings closes when you toggle enable/disable --> keep everything open
    • [ ] little shift in "Title" field when any field is filled and is saving
    • [ ] displayed name and name under the "Detailed name" property are not synced?
    • [ ] obscure field (eg: anniversary) is more easily visible than (what I think to be) a more commonly used field (eg: group)

Navigation

Contact list

Search

Detail view

Layout improvements

Settings

Import

Circles integration

Profiles integration

Acceptance criteria

Work packages for Nextcloud 27

jancborchardt commented 2 years ago

Updated with the notes by @nimishavijay and me from the additional 2 design reviews we had beginning of 2021. :)

nimishavijay commented 2 years ago

So @jancborchardt and I went through this list and thought that having a view/edit mode would be a good place to start, along with some more minor visual changes mainly in the content.

View mode:

image

Edit mode:

image

This could be a good place to start, moving forward we could make changes to more sections.

arnowelzel commented 1 year ago

By the way - also see https://github.com/nextcloud/contacts/issues/2699 where I created a set of custom CSS rules which can be used with the CustomCSS app to modify the layout of the contacts app.

I am also willing to participate and provide an updated layout for the app itself and not only as workaround using CSS, but before doing so it would be nice to learn what plans you may have already.

ChristophWurst commented 1 year ago

There are no plans for the items in this ticket. They can be picked up at any time. Ideally they are tackled in individual fixes to keep the changes trackable and reviewable.

caplod commented 1 year ago

I am also willing to help. The layouts from nimishavijay are looking great. How can we go on with this?

arnowelzel commented 1 year ago

I am also willing to help. The layouts from nimishavijay are looking great. How can we go on with this?

The first step would be to get a working development environment up and running, so one can work on this.

Also see https://nextcloud.com/developer/ and the links to the tutorials like "Setting up a development environment".

The contacts app can also just be checked out out from Github and built locally. Experience in Vue.js is also helpful.

GretaD commented 1 year ago

I will start from the more complicated ones by opening a separate issue for them, if the points above dont have an open issue, it means im not working on it. So, if someone wants to pick up the easy ones, feel free to do so

RokeJulianLockhart commented 1 year ago

@GretaD, if you're able to edit this issue, you can easily create new ones simply by clicking on them.

arnowelzel commented 1 year ago

I will start from the more complicated ones by opening a separate issue for them, if the points above dont have an open issue, it means im not working on it. So, if someone wants to pick up the easy ones, feel free to do so

Can you link the issues here, so it is easy to find them? Thank you!

ChristophWurst commented 1 year ago

@GretaD, if you're able to edit this issue, you can easily create new ones simply by clicking on them.

Thanks for the tip. Unfortunately those tickets are not very useful. Github just takes the single of the checklist here and creates an empty ticket with a subject. Therefore we prefer to create proper tickets manually and replace the checklist items with a ticket link.

Can you link the issues here, so it is easy to find them? Thank you!

We will link the tickets as per above.

@GretaD maybe you can tackle this preparation work first. Then we have a set of small tickets and distribute them across a bunch of people. Most work should be independent and can be worked on in parallel.

nimishavijay commented 1 year ago
Worked on updated mockups with @jancborchardt and came up with this: ![image](https://user-images.githubusercontent.com/52440189/231748464-39cc019e-a317-45e1-a271-65001583a94c.png) ![image](https://user-images.githubusercontent.com/52440189/231748352-ba00dde3-3987-416a-aab0-ae86f928b256.png) Mobile view: ![image](https://user-images.githubusercontent.com/52440189/231755324-1cc257a8-bd1e-427f-b806-38f778900c16.png) Includes 2 bigger enhancements which can be worked on separately as well: - [ ] Single column layout #3305 - [ ] Improved `Add new property` #3304 **Enhancements related to view/edit mode**, including points from the original design review and previous mockups: - [ ] Use vue components - [ ] When a new contact is created: - [ ] It should be in edit mode - [ ] The name field should be focused and selected View mode: - [ ] None of the fields are editable in view mode - [ ] They can be edited by clicking on an "Edit" button which takes you to Edit mode - [ ] Fields which are not filled are not shown - [ ] Don't show address books in view mode as it's kind of an obscure field - [ ] Convert "Title" and "Company" fields to read more nicely in view mode, for eg. Analyst at Company Edit mode: - [ ] In edit mode, users can edit the properties and save using the "Save" button - [ ] Fields in the header (name, title, company) should look like input fields with the appropriate placeholder when they are empty - [ ] Fields that are not set are not shown - [ ] Groups are always shown even if the contact is not a part of any group yet so that they can be easily added. It can be the second-to-last item - [ ] Address book is shown in edit mode but as read-only (ie, similar to how it would be shown if it was in view mode). It can be the last item - [ ] The properties that already exist (Phone, email, address) have an option to add another value using a "+" icon on the right (eg. add another phone number for work) - [ ] Positions of all elements should remain consistent when editing (currently, "Title" field position shifts slightly when syncing to server) - [ ] If contact name is empty: - [ ] Should default to "New contact" on saving - [ ] Or the save button should be disabled - [ ] Order of newly added properties: - [ ] The newly added properties should appear in the same order as their position in the list of properties (If new "Phone" property is added, it will always show up as the first item, "Mail" is always second item, etc) - [ ] Scroll to the newly added property **Nice to have/future enhancements** - [ ] Switch between view and edit mode should not cause jumping around of text. The text is placed such that on changing to edit mode, the position of the text itself changes as little as possible, and only a border appears around the text indicating an input field. - [ ] Switching between view and edit mode should not change the position of the Edit/save button either, esp. in mobile - [ ] Avatar color should not change frequently when you are typing the name. Use UID to determine avatar color not displayName - [ ] Don't show groups unless the contact is in a user created group (so "Recently Contacted" and other automatically created groups wouldn't be shown) - [ ] View mode has quick actions and shared items cc @jancborchardt and @GretaD :)

Moved into https://github.com/nextcloud/contacts/issues/3284

st3iny commented 1 year ago

The mockups look gorgeous! ~I extracted them to a separate issue at #3306.~ It may even be possible to split it up further and I'll have a look at that.

EDIT: Oops, there already is a ticket at #3305.

GretaD commented 1 year ago

I am also willing to help. The layouts from nimishavijay are looking great. How can we go on with this?

Hello and thank you for offering to help :), I created some first good issue tickets from the long list: https://github.com/nextcloud/contacts/labels/good%20first%20issue Feel free to pick up one that nobody is assigned yet and let us know if you need help to start. If you are an experienced dev and want to pick up a ticket that is a bit more complicated, that is also fine and very much appreciated, but please let us know here which one you want to pick, so together with the design team we can agree on how to approach it(if its not clear yet from the mockups). :smile:

ChristophWurst commented 1 year ago

moved this from 🏗️ In progress to ☑️ Done

Because all major changes for Nextcloud 27 are done. The rest of the design improvements are done during stabilization phase when time allows.

jancborchardt commented 10 months ago

Closing as done, lots have changed since the review and it’s best to do a separate follow-up review. :)

punkyard commented 2 months ago

hi, let me put my 20 cents in the subject again It's a while I have posted request or remarks on Contacts as you may see, there is nothing below the roll down menu for adding new fields in to a contact details plus it takes a second click to access another restricted list

I suggest to unfold this roll down menu to a fixed list of all field types one click on a field type and it is added to the contact details

thanks for your work and concern