Conversation
|
Thank you for all the changes. This is great. Here's some thoughts:
How does it look when you enable Sandbox mode? In Work Mode, there's also a title text that shows up in the empty space. The reason why it was fixed on the left was to prevent layout shifting when it adds title text.
We do have Themes section that allows users to customize the layout. Let's make sure we double check the theme editor + user preferences, and right align user messages feels more like a preference to me. |
fair enough because it does sound like a preference. I've reverted the right alignment of user messages |
|
I'm gonna add a fix for #644 as well |
|
Done! |

Summary
This PR addresses a few UI/UX enhancements.
a. Added an "Add Model" button in ModelPickerView
When I first started using Osaurus, I had a difficult time figuring out how I could download new models besides the ones that I downloaded during onboarding. It took me a few minutes to understand that the Settings button at the top right is visible only when starting a new chat and disappears after the first prompt in the conversation. Since new models can only be downloaded from the settings screen, I think its reasonable to add another way to get to the settings window without having to create a new conversation. So I added an "Add Model" button which takes us directly to the Models section of the settings window.
Add.Model.mov
b. Show scroll bar in chat input text view only when necessary
This is a minor UI issue that bugged me every time I opened the app
Before

After
c. Center
ChatToolbarModeToggleViewbased on macOS HIGCurrently the app has a "left-heavy" layout where the toolbar toggle is too close to the sidebar button and traffic lights. This change adheres to macOS HIG by establishing the primary state switching control as a symmetrical visual anchor and clearly distinguishing global navigation from localized utilities.
Before

After

d. Created a filter menu in
ModelDownloadViewfor better model browsingThe new filter menu will let users filter the model list by several parameters like model type, model download size, model parameter size and model family.
filters.mov
d. Improved scroll stagger animation
The model cell's animation is currently out of sync with the scroll speed. When scrolling faster, the cells in the list seem to suffer a lot of delays before they appear. So I've implemented a better stagger animation strategy (max 0.04s) and a snappier spring curve that maintains a float up effect while still ensuring that the content appears almost instantly as it enters the viewport.
Before
Before.mov
After
After.mov
e. Constrain images to bounding box in chat list view
Currently the images are rendering at their native resolution which makes them appear massive in the chat list view. I've constrained the images to a fixed 280x200 bounding box to make them look compact.
Before

After

f. Right-align user messages
This is a continuation of previous enhancement. We now have unnecessary trailing space inside the user message bubble which we should get rid of.
Before

So I've made the contents of the user message bubble to align towards the right and wrap only the text content inside the bubble instead of all the views. The user bubble now dynamically grows based on the prompt text content instead of being a fixed width container.
After

g. Consistent padding for bottom bar buttons in chat input view
Addresses #644
Before

After

Changes
Checklist
CONTRIBUTING.md