Re: [Geary] Geary/Mail collab



Hey Mike,

That's probably not an inaccurate assessment. We don't really intend to build a GNOME 3 app. I think we're 
pretty all-in on switching to EDS. Maintaining a custom IMAP backend seems like a lot of development burden 
and our users are asking for features that EDS would provide like exchange support.

We are definitely looking into porting the message list to gtk.listbox instead of that custom cell renderer. 
For the folder list, we'll most likely use granite.sourcelist. There was some talk of creating a 
gtk.stacksidebar subclass. 

Cheers,
Daniel Foré

On Apr 4, 2016, at 4:15 AM, Michael Gratton <mike vee net> wrote:


Hey Daniel,

It's good to hear Elementary's plans for Mail, thanks for getting back to us. I've always been keen to see 
Geary moving towards the GNOME3 HIG, and since Elementary has its own visual identity and set of 
foundational UI widgets, I have been assuming that some divergence in the UI was going to be likely. After 
a quick look at Mail's code changes and screenshots, that does indeed seem to be the case.

So given that, one possible avenue for collaboration would be to split the IMAP backend out of Geary/Mail 
and maintain it a a separate standalone library, one that both Geary and Mail could both use and contribute 
to, while the two teams focus on making our respective frontends provide the best possible UX for our 
respective desktops. The engine is a large chunk of Geary's codebase, so this would spread the maintenance 
burden.

I guess on that basis it's not surprising you're looking at switching over to EDS as a backend. Regardless 
of whether Geary sticks with the existing backend or also switches over to EDS, that only really leaves 
foundational and utility libraries like GTK and GMime left in common. Maybe there's still some widgets that 
could be shared - the folder and conversation lists and conversation viewer perhaps? But that seems like a 
lot of work for a small gain, and again they might diverge as well.

It sounds like you may not have made a completely final decision to switch to EDS, and if that doesn't work 
out then we'd be happy to work with the Mail team on a librarified version of engine, and regardless of 
that on any other parts of the codebase that makes sense to split out. Aside from that, I can't think of 
too many other ways we could directly help each other.

Anyway, have I overstated the UX divergence? Is there some other large chunk of shareable code I'd 
forgotten about? What do you think?

//Mike


On Mon, Apr 4, 2016 at 2:13 AM, Daniel Fore <daniel elementaryos org> wrote:
So we actually didn't do the webkit2 port just yet. We did the native widgets port first so we could 
minimize the use of the webview. As far as the conversation view goes, I think the only use of granite is 
because we have an avatar widget in granite trunk (bzr term for master) these days.
This is working very well for us, using only native Gtk widgets. Gtk.CSS is really powerful these days and 
with a couple revealers and such we still have all the nice animations and features like collapsing and 
that. We are currently including a basic stylesheet so that it doesn't look too awful in other themes.
We have indeed been trying to migrate code from Geary code style to elementary code style. It just makes 
things a little nicer for developers at elementary who are bouncing from project to project. I've 
personally done a lot of work trying to get rid of things like the PillHeaderBar. I think it just makes 
the code really hard to read and is a bit over-engineered.
We technically have an elementary developer mailing list, but honestly nobody uses it. Everything is done 
in Slack these days. I've sent invites to Mike and Adam. Let me know if anyone else would like invites. 
We're more than happy to chat about things that might be useful for you folks.
The really big thing that we've been on lately is actually to port Mail over to an Evolution Data Server 
backend. We've been doing work upstream on completing GObject Introspection for LibCamel and one of our 
guys has some ideas about making the API a bit nicer in general. He's had a lot of success pushing 
branches already, so that's great. One of our other guys is working on a little prototype app before we 
try to actually make the conversion. You can see the code for that here: 
https://github.com/matzipan/eds-sample
Let me know if you have any questions about Mail and I'll do my best to try to address them :)




-- 
⊨ Michael Gratton, Percept Wrangler.
⚙ <http://mjog.vee.net/>




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]