Skip to content

Conversation

@adjogima
Copy link
Contributor

@adjogima adjogima commented Dec 17, 2025

#2177 put the structure in place, this PR actually makes some changes targeted at the Android and iOS apps.
I'm applying changes to mobile web as well so let's discuss if we do want it that way or not.
Desktop should look unchanged.


First stop, the header

with bigger icon buttons and actions always above title 👇

Before After
Capture d’écran 2025-12-18 à 09 00 12 Capture d’écran 2025-12-18 à 09 00 16
Capture d’écran 2025-12-18 à 09 03 41 Capture d’écran 2025-12-18 à 09 03 44

Next, card perma

with a bit less background and a horizontal layout for the column picker 👇

Before After
Capture d’écran 2025-12-18 à 09 18 32 Capture d’écran 2025-12-18 à 09 18 34

The column picker is automatically centered on the current column, so when the page loads, you're getting this 👇

Capture d’écran 2025-12-18 à 09 23 35

Pins

making /my/pins usable. It's only used by the native apps as we have dedicated tabs instead of alway-on-screen-stacks 👇

Before After
Capture d’écran 2025-12-18 à 09 31 16 Capture d’écran 2025-12-18 à 09 31 19

This is mostly done by moving existing styles.

For example, instead of applying some styles based on a .card being in a .tray:

.tray {
  .card { [some style] }
}

apply based on being in a .tray__item:

.tray__item {
  .card { [some style] }
}

Or instead of applying some style based on being a .tray__item in .tray--pins:

.tray--pins {
  .tray__item { [some style] }
}

apply based on being a .tray__item--pin:

.tray__item--pin {
  [some style]
}

This allows us to pick up the tray formatting of pinned tickets in /my/pins, like we do with the tray formatting of notifications in /notifications


Search

making /search usable. Like /my/pins it's only used by the native apps, search being its own tab instead of an alway-on-screen bar 👇

Before After
Capture d’écran 2025-12-18 à 09 49 44 Capture d’écran 2025-12-18 à 09 49 46

I also took the liberty to slightly alter search results in the bottom bar 👇

Before After
Capture d’écran 2025-12-18 à 10 02 36 Capture d’écran 2025-12-18 à 10 02 37

Again, this is mostly done by repurposing existing stuff.


Web views

the rest is hiding stuff we don't want in the native apps 👇

Mobile Web Native Apps
Capture d’écran 2025-12-18 à 10 07 52 Capture d’écran 2025-12-18 à 10 07 55
Capture d’écran 2025-12-18 à 10 08 12 Capture d’écran 2025-12-18 à 10 08 16

@adjogima adjogima changed the base branch from main to mobile-app/scoped-styles December 17, 2025 09:47
... in card perma
* mobile-app/scoped-styles:
  Replace android and ios css layers with platform layer
  Change how show-on-native works
  Use the correct css layers for Android and iOS
... when the container is larger than needed
... to pick up the url change and <head> update
@adjogima adjogima marked this pull request as ready for review December 18, 2025 09:14
Copy link
Member

@jzimdars jzimdars left a comment

Choose a reason for hiding this comment

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

Looking good @adjogima. Huge improvement! No objections to adjusting the webviews, as you have, where it makes sense.

Base automatically changed from mobile-app/scoped-styles to main December 18, 2025 16:57
@andyra
Copy link
Contributor

andyra commented Dec 18, 2025

Good stuff!

Before you merge, I'm going to pitch in and make a small change to get this text to be full width. It's in a grid cell right now, and I think just dropping it onto its own row is the way to go.

CleanShot 2025-12-18 at 10 59 49@2x

@andyra
Copy link
Contributor

andyra commented Dec 18, 2025

That's better:

Before After
CleanShot 2025-12-18 at 11 19 14@2x CleanShot 2025-12-18 at 11 22 10@2x

@adjogima
Copy link
Contributor Author

Sweet! Thanks @andyra

@adjogima
Copy link
Contributor Author

I'm excluding mobile devices from loading the navigable list controller. It's a keyboard thing.
I should still load on a touch screen laptop. Not on tablets with a hardware keyboard attached though which is not ideal but we can revisit.

* main: (107 commits)
  Document the new sign in method
  Replace handle_ naming
  Use same constant for fake magic links
  Replace FakeMagicLink with a temporary object
  Tidy up session_token
  Clean up interfaces
  Split tests by controller or responsibility
  Simplify auth logic
  Fix due to unit test when creating with invalid emails
  Restore sessions_controller test on creating invalid email address
  Move magic link api tests to their own files
  Rename test to clarify what they're about
  Cleanup session creation
  Update to always return a pending auth token for JSON responses.
  Update API test for cross code
  Change test expectation on single tenant mode account creation
  Add unit tests for the new endpoints
  Pass a server token when creating a magic link via API
  Simplify code a bit
  Simplify session create logic for both html and json
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants