Work Note: Stream for Mac

What did I get done today? šŸ¤”

I Love RSS!I did a bunch of little things to make the app have fewer rough edges.

  • Removed the border around the blog list (Thanks, Lucien)
  • Updated the selected Blog in the blog list to use white text
  • Rounded the corners of the selected blog item in the blog list
  • Adjusted the position of Blog list items to have some space around them
  • Set the divider between panes to be thin
  • If one blog is select and you refresh it, we only refresh that one item (Thanks, John)
  • Updated the All and Read Later icons to have some color

I tried to fix an issue that causes the preview text in the feed item list to sometimes display only a single line but the text view is three lines high. Weird, I know. Sometimes it will display a single line but the text could be three lines high. I know this has something to do with cell recycling. I tried some recommended things to get the cells to resize their Text but no luck yet. I’ll get there.

Another thing I need to do to fix this is decode any HTML included in the feed and strip everything at the top that’s not a paragraph marker. What happens now is you won’t get any preview text because the top bit is an image or other HTML I’m not accounting for.

I didn’t get around to fixing OPML Import so it displays some sort of progress indicator while it’s working. I’m thinking about displaying a simple spinner with text to the right that reads something like ā€œImporting: [blog name goes here]ā€ in the toolbar. I think I’ll hide the refresh button and the Stream title text and replace it with the spinner and import text. That sounds good in my brain at the moment. 🧠

Time to work on Stream.

Code by me, coffee by Grit

Someone must’ve mentioned Stream yesterday? šŸ˜€

I had 130 downloads, which is a good day for it!

Thank you to whoever mentioned it! šŸ™šŸ¼

Decisions, decisions

Brain in a jarSitting at Grit — my favorite coffee shop — sipping my mocha trying to decide what to work on.

Stream for Mac, Stream for iOS, or Thunder Chicken?

It should be Stream for Mac. I haven’t worked on it in a while because I’ve been working on Thunder Chicken.

I’ve thought about doing a German localization for Stream.

Adding a right mouse action menu to the Mac version of Stream, and whatever else I can complete.

What about having Claude create an NSCellView for me that sizes properly when the column it’s in resizes. I could never get this working properly but did it in SwiftUI rather quickly.

How about completing the first full implementation of a network client for Thunder Chicken? Get posts, create posts, update post, delete posts, etc. I have an abstraction so I can support multiple blogging platforms.

Oh, I forgot about Arrgly. It’s my link shortener that uses YOURLS for its backend. I have a new SwiftUI version of it I need to finish off, just because.

Decisions, decisions.

Work Note: Stream for Mac

I decided to go with working on Stream for Mac today.

The feed item cell has been a complete mess for years, yes, you read that right. It’s been a complete wreck for years now. I kept on insisting I do all the work using AppKit.

Today that changed. I needed to make progress and even though my SwiftUI experience is very limited I was able to get the general layout working the way I’d like it. It’s not complete by any means but each UI element is displaying in the place I want it to (mostly) and the cell resizes properly, oh, and the date label/text remains pinned to the right side of the cell. That was a big issue with my AppKit NIB attempt.

Polish, polish, polish is the next course of business with the new cell. It needs spacing updates, text size fixes, color changes, highlighting support, keyboard support, so many things. But, now that it lays out the way I want I can move forward.

This is the first SwiftUI code introduced to the Stream codebase, which began life in 2018.