Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Client Resource UX #3514

Closed
9 of 10 tasks
jamilbk opened this issue Feb 1, 2024 · 6 comments · Fixed by #5134
Closed
9 of 10 tasks

Client Resource UX #3514

jamilbk opened this issue Feb 1, 2024 · 6 comments · Fixed by #5134
Assignees
Labels
area/android_client Issues related to the Android client area/apple_client Issues related to the Apple client area/linux_client Linux client area/windows_client Issues related to the Windows client complexity/epic Large, multi-issue changes affecting multiple components kind/feature New feature or request kind/feedback Issue created as a direct result of customer feedback kind/refactor Code refactoring

Comments

@jamilbk
Copy link
Member

jamilbk commented Feb 1, 2024

@jamilbk jamilbk added area/android_client Issues related to the Android client area/apple_client Issues related to the Apple client area/windows_client Issues related to the Windows client area/linux_client Linux client kind/feature New feature or request kind/refactor Code refactoring labels Feb 1, 2024
@ReactorScram
Copy link
Collaborator

What's the next step? Waiting for connlib to add the site to the resource struct?

@jamilbk
Copy link
Member Author

jamilbk commented Feb 21, 2024

  • Update resource schema sent by portal to include [{site.id, site.name}] embedded in each resource (there can be mutliple)
  • Display <site.name> labels for
  • In the expansion on hover (desktop), show address and address description field with click-to-copy
  • In the mobile UI resource list, clicking a resource should show a pop up with the Address and address description field with tap to copy

@jamilbk
Copy link
Member Author

jamilbk commented Feb 21, 2024

Still need to determine how to sort resources if they're in a flat list with just the site labels/badges attached to them.

@jamilbk jamilbk changed the title Update client Resource menu Client Resource UX Feb 28, 2024
@roop
Copy link
Contributor

roop commented Feb 28, 2024

@jamilbk Can you show an example JSON with the newly added fields?

@jamilbk
Copy link
Member Author

jamilbk commented Mar 22, 2024

Customer feedback:

@jamilbk jamilbk added kind/feedback Issue created as a direct result of customer feedback complexity/epic Large, multi-issue changes affecting multiple components labels Apr 16, 2024
@jameswinegar
Copy link

This would be useful as I want to know which sites are shared across users and then when they can or cannot connect.

github-merge-queue bot pushed a commit that referenced this issue May 22, 2024
github-merge-queue bot pushed a commit that referenced this issue May 24, 2024
- Adds admin portal, docs, and support links to menu. The support link
is a 404 for now, see firezone/gtm#249
- Adds more details including site online/offline status to submenu
- If the `address_description` field looks like a URL, open it on click.
Otherwise, copy to clipboard
- Adds relevant tooltips

<img width="550" alt="Screenshot 2024-05-23 at 9 37 40 PM"
src="https://github.com/firezone/firezone/assets/167144/cae4f6ce-e581-459c-82dd-032bf4ea4eb4">



<img width="481" alt="Screenshot 2024-05-23 at 9 54 51 PM"
src="https://github.com/firezone/firezone/assets/167144/0f4eb80f-47f6-49a8-8830-ebfbdad7dd26">
<img width="577" alt="Screenshot 2024-05-23 at 9 54 38 PM"
src="https://github.com/firezone/firezone/assets/167144/e93fefc8-3f55-45b2-9a69-cf885996a857">


Refs #3514
github-merge-queue bot pushed a commit that referenced this issue May 28, 2024
refs #3514 

- Show more Resource details when tapping a Resource
- Update logo text to be a stacked variant and SVG so it scales better,
also apply to all scale sizes
- Refactor SessionView so that Resources occupy more space, and move
auth controls to contextual menu
- Add `iOSNavigationView` that wraps child views to keep the navbar
controls consistent

<p align="center">
<img
src="https://github.com/firezone/firezone/assets/167144/6b337227-2b32-4864-b5b0-47a541b94476"
width="300">
</p>

--- 

<p align="center">
<img
src="https://github.com/firezone/firezone/assets/167144/5e129c38-37b5-4487-9b34-36b303434fac"
width="300">
</p>

---

<p align="center">
<img
src="https://github.com/firezone/firezone/assets/167144/edc56e34-a660-4256-a719-6886ff63c1a1"
width="300">
</p>

---


![IMG_0069](https://github.com/firezone/firezone/assets/167144/48c6bd87-7297-4fb4-81fa-3fa96110a17e)
github-merge-queue bot pushed a commit that referenced this issue May 28, 2024
- Refactor ResourcesAdapter and SessionActivity to use ListAdapter which
is faster/more efficient according to AI
- Deserialize remaining properties from onUpdateResources
- Show a bottom sheet fragment when Resource is tapped instead of simply
copying the address

<img width="672" alt="Screenshot 2024-05-26 at 6 39 09 PM"
src="https://github.com/firezone/firezone/assets/167144/eab06f6f-e67b-4127-8d90-b5ab22035506">


Fixes #3514
ReactorScram added a commit that referenced this issue May 28, 2024
github-merge-queue bot pushed a commit that referenced this issue May 28, 2024
…5142)

Refs #3514 

```[tasklist]
### Issues
- [x] Add special case if `address_description` is empty
- [x] Submenus aren't showing up in GNOME
- [ ] Accelerator keys don't seem work on Linux nor Windows
- [ ] Can't get a Resource in staging to automatically open a URL even though other Resources can do this
- [ ] Accelerator for Settings isn't even displayed on Linux
- [ ] Submenus spawn halfway off-screen in KDE
```

# Linux

## GNOME menu height issue

This happens when the menu, including an opened submenu, is taller than
the screen. GNOME doesn't seem to scroll the root menu at all, so the
"Quit" option gets cut off at the default low resolution of my VMs. It
does allow submenus to scroll... but it computes their viewport size
based on how much spare space there is between the height of the screen
and the height of the root menu. So if the root menu is too big, you
don't get to see the Resource submenus.

What a mess.

If we put all the Resources into their own submenu it might work, but
that's a big deviation from other Clients. We can probably live with it
for now if a typical customer has, say, 10 Resources and a 1080p screen.
More Resources or smaller screens will be a problem.

Long-term we're replacing all this anyway.

<img width="386" alt="image"
src="https://github.com/firezone/firezone/assets/13400041/bb2e0677-372a-441b-805c-2d6714d245e6">

<img width="372" alt="image"
src="https://github.com/firezone/firezone/assets/13400041/3bbdf2f3-1231-4488-a293-61c373ca0021">

## No activity

<img width="381" alt="image"
src="https://github.com/firezone/firezone/assets/13400041/d50533bf-686e-44e0-ba01-fe1b6ef745cf">

## Gateway connected

<img width="508" alt="image"
src="https://github.com/firezone/firezone/assets/13400041/e5e0b5e4-153a-4d03-a6a1-f8f2da7bf442">

# Windows

## No activity

<img width="568" alt="image"
src="https://github.com/firezone/firezone/assets/13400041/046e9786-278f-4a2c-a1c8-7c536fcb8442">

## Gateway connected

<img width="562" alt="image"
src="https://github.com/firezone/firezone/assets/13400041/5484810a-e766-43a6-8245-191181c08d5b">
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/android_client Issues related to the Android client area/apple_client Issues related to the Apple client area/linux_client Linux client area/windows_client Issues related to the Windows client complexity/epic Large, multi-issue changes affecting multiple components kind/feature New feature or request kind/feedback Issue created as a direct result of customer feedback kind/refactor Code refactoring
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants