[NEW VERSION] EmailViews 1.1 → 1.1.1 available

I have just released Version 1.1 1.1.1 of EmailViews. This release brings several improvements based on community feedback and contributions from testers.

New

  • Undo Move to Trash (Alt+Z) — restore the most recently deleted batch of emails to their original location, up to 10 levels deep
  • Bulk delete confirmation — moving 50 or more emails to Trash at once now requires confirmation

Fixed

  • Mark Unread no longer overwrites Sent and Replied statuses
  • Alt+A (Select All) now correctly enables Trash, Mark Read, and Mark Unread buttons while disabling Reply, Forward, and navigation buttons
  • Keyboard navigation and Alt+A now work immediately after switching views, without requiring a mouse click first
  • 32-bit build fix (contributed by Humdinger)
  • Beta 5 compatibility fix (contributed by Humdinger)

Compatibility

Now compatible with Haiku R1/beta5 and later (contributed by Humdinger)


Downloads

EDIT: had to release v1.1.1 to address beta 5 regressions, so updated download link.

6 Likes

Build still fails on R1B5 (64bit)?

EmailViews.cpp:1624:56: error: request for member 'ItemAt' in 'qcd->QueryCountData::customQueries', which is of non-class type 'int'
 1624 |         QueryCountCustomQuery* cq = qcd->customQueries.ItemAt(c);
      |                                                        ^~~~~~
EmailViews.cpp:1632:44: error: request for member 'CountItems' in 'qcd->QueryCountData::volumes', which is of non-class type 'int'
 1632 |         for (int32 v = 0; v < qcd->volumes.CountItems(); v++) {
      |                                            ^~~~~~~~~~
EmailViews.cpp:1635:44: error: request for member 'ItemAt' in 'qcd->QueryCountData::volumes', which is of non-class type 'int'
 1635 |             BVolume* volume = qcd->volumes.ItemAt(v);
      |                                            ^~~~~~
EmailViews.cpp: In member function 'void EmailViewsWindow::ApplySearchFilter()':
EmailViews.cpp:1816:48: error: cannot convert 'int*' to 'BObjectList<BVolume>*'
 1816 |     fEmailList->StartQuery(fullQuery.String(), &fSelectedVolumes, fShowTrashOnly, fAttachmentsOnly);
      |                                                ^~~~~~~~~~~~~~~~~
      |                                                |
      |                                                int*
In file included from EmailViews.h:65:
EmailListView.h:146:58: note:   initializing argument 2 of 'void EmailListView::StartQuery(const char*, BObjectList<BVolume>*, bool, bool)'
  146 |                                    BObjectList<BVolume>* volumes = NULL,
      |                                                          ^
EmailViews.cpp: In member function 'void EmailViewsWindow::RefreshQueryCountDisplay()':
EmailViews.cpp:1984:44: error: request for member 'CountItems' in '((EmailViewsWindow*)this)->EmailViewsWindow::fSelectedVolumes', which is of non-class type 'int'
 1984 |     for (int32 i = 0; i < fSelectedVolumes.CountItems(); i++) {
      |                                            ^~~~~~~~~~
EmailViews.cpp:1985:41: error: request for member 'ItemAt' in '((EmailViewsWindow*)this)->EmailViewsWindow::fSelectedVolumes', which is of non-class type 'int'
 1985 |         BVolume* vol = fSelectedVolumes.ItemAt(i);
      |                                         ^~~~~~

(just a small part of the build error)

@Begasus

Can you provide the complete compile error? DM me if necessary.

Thank you!

This commit has reverted some of the beta5 fixes: EmailViews: add undo move to Trash (Alt+Z) with multi-volume support · ilfelice/EmailViews@dfd088b · GitHub

1 Like

Just did a succesful build on beta5 :slight_smile: :+1:

ready for a new release?

EDIT: maybe 1.1.1?

1 Like

EDIT: maybe 1.1.1?

Bumped version to 1.1.1 in master.

Thank you @Begasus!

1 Like

I Installed the new binary in my VM. It seems that localisations are not included in 1.1.1. They were in 1.1.0. Note that even then the new line ‘Undo move to Trash’ which doesn’t appear on polyglot wasn’t translated. Some translations were not matching either. For example, on polyglot some translations have a comment ‘Toolbar, short as possible’ those were not used. Though, strings were translated but long versions were used. I guess things are not in synch.
Perhaps, in some places, using plural forms could simplify things a bit.
Some translations are identical to those from
Haiku Mail app. It could be a good idea to either get them in synch or to distinguish them to avoid user confusion.

Hi @Starcrasher

I fixed the binary in the release page; it is now locale aware again. Please download again. Sorry about that.

2 Likes

You were right. Another beginner’s mistake. :sob:

I will be adding B_TRANSLATION_CONTEXT to the toolbar strings to make sure the right context is applied. Will upload the correct en.catkey file to Polyglot after testing locally, maybe later today or tomorrow.

Sorry about that.

1 Like

Howdy,

I have added translation context to the toolbar in the main window and the viewer/composer window. The new catkeys have been uploaded to Polyglot for translation (the toolbar strings will have to be translated again, sorry).

1 Like

In addition to email queries, EmailViews now has email body search. :smiling_face_with_sunglasses:

4 Likes