Open Dejal opened 4 years ago
Oh I remember attempting to transition to WKWebView a long time ago and it was not fun. I ultimately abandoned that branch.
That said, I would love to see this. NewsBlur was originally developed to replace NNW, a Mac app.
NetNewsWire has a new lease on life now. But I'm sure Brent would welcome other Mac newsreaders.
Yeah, transitioning to WKWebView
will be a fair bit of work, but I'm confident that it is feasible, useful for Catalyst, and ultimately probably required for a future iOS version.
Okay, I will begin work on that in the next month or two, depending on other priorities that come up in the meantime.
A partial list of issues I've noticed, that I'll work on in the coming months, as time allows:
On the three-pane, I would love to rethink how NewsBlur iOS app has the panes. Today it's not great, but it works. I would be happy to move to something a bit more like sliding doors (ala Reeder), although that would make the dashboard river harder to show.
Work on the three pane option (and much more) is underway; see #817 for more info.
Looking good! Stories aren't tappable right now, but using the keyboard shortcut got around that. Also, the login screen needs adjustment (ugh, such an old view too).
For Catalyst, let's reintroduce story content previews, story date, and author, as well as larger fonts.
I take that back, I prefer the extra story titles. But that's for the widget (#1334).
Let's widen the story titles a bit. Looks like they widen on their own at ~2000px.
Also, let's add a max-width to images of 1200px or something.
The Catalyst branch and Mac app are not ready for release yet. This is on hold until more required changes are done.
Should I still be merging in catalyst into testflight?
No, merge Dejal to TestFlight.
I've resumed work on the macOS edition of NewsBlur, in the Catalyst branch. The NewsBlur Alpha app for macOS is available via internal-only TestFlight.
There's still a bunch of refinements to do (so don't bother reporting issues yet), but it's in a usable shape already:
It's really great! What happened to the widget? I want to see it in my widget dashboard on macos.
As I recall, the widget isn't included in the Alpha build, for some technical reason I forget right now (maybe related to the bundle identifier or something). I'll take another look at that when next working on it.
More progress, with the user profile in the window body like on web, and work on menus. I spent a fair bit of time struggling to get the navigation bars to behave; they appear to be implemented outside the scope of the app with Catalyst, using separate windows for each button. And clicking on one disabled the menus. A bit of a mess. But I've found a solution, using Mac-native toolbars, and have started implementing that. I'll finish that next time.
I think the app is almost ready for release now. Just a few issues left. You can begin to report issues or request tweaks now if you wish.
Are you sure you want me to report issues? There's some quality of life issues in the Grid view on Catalyst. I suggest taking a look at how that's transitioning between stories.
Also, the scroll is much slower than I would expect from a native app. Isn't there a faster scroll option for story titles and the story detail?
Yes, you're welcome to report issues. I'm aware of some, but you may have other priorities.
I'll take a look at the Grid view, and the scrolling performance, though it's basically using the same code as on iOS, with the Catalyst translation layer to work on macOS, so there may be some performance impact. Still, I might be able to do something. Any performance improvement would probably also benefit the iOS app.
I've addressed all known issues now, so unless you have some specific issues, I think it is ready for public TestFlight feedback. Let me know if you want me to produce a public TestFlight build (it's currently internal-only).
I've finished my polishing; I don't have anything more on my list to do on this. Ready for a public TestFlight? Rather than making the NB Alpha app TestFlight public, we could merge into the Dejal branch, and do a main app TestFlight from there. Let me know if you want me to prepare that.
Nicely done. I've got some show stoppers that we need to fix before putting out a public beta. And sorry about the delay, I've been deep on server maintenance and transition for the past month, which you might have noticed from the flurry of commits. But we're now on dedicated hardware and it's much faster!
https://github.com/samuelclay/NewsBlur/assets/44229/9dddc160-7129-4058-af5f-1233dc54aa2f
Clicking on story titles in the widget doesn't open stories in the app
Notifications aren't showing up on macOS. Anything I need to do on the server to get this working?
I've addressed some of those issues. The training one was a challenge; it appears that Catalyst doesn't support web views in sheets. So I took that as an opportunity to do something I've wanted to do for a while: make the trainer a native view. I rewrote it as a SwiftUI view.
Here's the feed trainer:
And the story trainer:
Notice in the Story Title section, instead of selecting text and choosing a menu item to train words, I implemented an innovative approach where you tap words to add them to a neutral trainer (which can be cleared to start again). Then tap it to toggle to like or dislike, at which point it is saved (and another phrase can be started if desired).
I hope you like this new & improved edition of the trainer.
This is looking nearly ready to go. One issue I found is that when I return to the app after 30 minutes, the image previews disappear.
I think the Mac app is ready for a public TestFlight. Do you have any further issues? I'll save my time in May for any more issues with it, pre-and/or-post release.
I've added an Xcode Cloud workflow to build the macOS TestFlight, and disabled the iOS one for now. So all we need to do is merge the Catalyst
branch changes into the Dejal
branch, and it'll run automatically. If you're ready, you can do the honors, or I can if you prefer.
Just merged catalyst
into dejal
. As soon as it's public, I'll tweet about it and maybe even blog about it to get folks involved in testing it.
Looks like the build failed due to missing the macOS scheme (probably a merge issue). Let me know if you want me to fix that for you.
I've fixed the build issues. The app is currently awaiting beta review, so should be live in TestFlight soon.
And now it has been approved for TestFlight, so you can publicize it when you're ready.
Looks like we've got some feedback:
Just getting started with it, but some basic Mac OS conventions are missing. Menu items are missing for basic commands (like next, open in browser). And since they are missing, key commands are not labeled, and not changeable. I also miss that there is no in app browser. A lot of feeds have broken story mode and reader mode to drive views, and so to read any of these, I need to open in a browser. So basically, to read every story, I need to open in browser. If so, then I might as well go use the web app, since I end up in Safari primarily.
Another user:
I've mentioned this in the context of the iPad app, but it's also true here - I would really like if it supported all of the keyboard shortcuts that work on the web. In particular, it would be great if I could refresh the current view by pressing "R" (or by scrolling-to-refresh at the top of the current feed/folder). Thanks for continuing to develop Newsblur rather than put it in maintenance mode. I am excited to have a Mac app, but until it has parity with the web I probably won't make much use of it.
A third user:
Can you please make the sidebar resizable? Also, it'd be nice to be able to customize the toolbar in the main content area.
Agreed with all of these points! Let's:
I'll see what I can do. Though showing keyboard commands when holding Cmd isn't a Mac paradigm, so we shouldn't do that; you see keyboard commands by looking in the menus.
Just installed the latest TF: on iPhone, going back to the feed list, the selected feed no longer deselects (it should fade out so you know where you've just been).
I wasn't able to set a notification using the catalyst app.
Here's how it works on iOS:
I'm working on fixes.
Speaking of notifications, I've just created #1867 (Mac-specific notifications).
Done all of the requests. TestFlight builds available.
Note that in addition to the keyboard shortcuts via the menus, the Mac app also supports the non-modified shortcuts of the iPad app, e.g. "j" to go to the next story, "o" to open in the browser, "u" to mark unread/read, etc.
Since macOS doesn't have an overlay to show such shortcuts, perhaps you could add a help page on the website, and I could make the NewsBlur Help menu item show that? Online help is common for Mac apps, and would be a good thing.
I'm starting to rely on the app more but I'm having a few issues:
Done some fixes. I can't reproduce the widget not loading the correct story, but I did have a recent widget fix, so that might help. If not, please show your Widget Sites view with the selected feeds, so I can try to reproduce it.
Also, as noted elsewhere, I can't do a TestFlight until you update the Apple agreements.
Agreement has been agreed
Any more feedback on the Mac app? It'd be great to get this launched! I'll be available over the next week if any issues come up.
It's still showing blank stories. I haven't been able to leave it running because it's empty when I come back to it.
Huh, my fix on June 27 didn't solve it?
Nope, I'm still seeing it just as often.
I had the Mac app running in the background all day today, every hour or so bringing it to the foreground and changing feeds/stories, but every time it has shown the story on activating the app; no blank stories. I was able to reproduce the issue before my June 27 fix, but not since.
So I'll need you to re-check it, and hopefully provide more clues if it is still occurring.
Yeah I've noticed it went away so I'll chalk it up to running an older build. At this point I'll need to assembly screenshots and launch it on the mac app store, which I'll try to do in the next few days.
I just moved to SF so I'm without furniture for the next couple weeks, so I'll be limited in what I can achieve.
Yeah, likely using an older build. I'm glad it's resolved.
I'll have a new TestFlight in the next few days, so it'd make sense to wait for that.
Best of luck getting set up in SF!
As I was taking screenshots, I noticed the app doesn't switch from light to dark like the iOS app does.
I manually changed it but we should include a way to use the system theme. This probably goes for the iOS app as well, as a fifth theme color for "Auto"
Now that iOS 13 and macOS Catalina introduces the ability to build iOS apps for macOS, via Catalyst, there may be customer demand for a Mac edition of NewsBlur.
I've turned on the checkbox to build under Catalyst in a local branch, as an experiment, but there are a number of issues preventing successful building of a Mac app:
The most significant is the reliance on
UIWebView
. That is not supported in Catalyst, requiring usingWKWebView
instead. That isn't a simple transition, though: the web view is used extensively in NewsBlur, with JavaScript interactions and such, which would require many changes. It should be feasible, though. And may have to be done in due course even for the iOS app, sinceUIWebView
has been discouraged since iOS 8, and is now formally deprecated as of iOS 13, in addition to being unavailable for Catalyst.There's an error related to using the
AddressBook
framework, but that doesn't seem to be used, so can be removed.There are many deprecation warnings, but those shouldn't be too hard to fix (and again will need to be addressed in due course).
Beyond those, of course, the app would need many changes to work well as a Mac app, including adding a menubar, probably some layout changes, and other UI tweaks.
But I think it could a a popular option for many people. Something to consider. Let me know if you want me to explore further.