From f1785f82fe21ac3a7504780ed13c4c8fa2660819 Mon Sep 17 00:00:00 2001 From: Clemens Zeidler Date: Mon, 21 Mar 2011 09:38:12 +0000 Subject: [PATCH] Leave status when quit window using the control+shift+w shortcut. Fixes #7382. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41063 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/apps/mail/MailWindow.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/apps/mail/MailWindow.cpp b/src/apps/mail/MailWindow.cpp index 1b42d3ea84..88c6f2e456 100644 --- a/src/apps/mail/MailWindow.cpp +++ b/src/apps/mail/MailWindow.cpp @@ -188,7 +188,6 @@ TMailWindow::TMailWindow(BRect rect, const char* title, TMailApp* app, BMenu* subMenu; BMenuItem* item; BMessage* msg; - attr_info info; BFile file(ref, B_READ_ONLY); if (ref) { @@ -240,14 +239,13 @@ TMailWindow::TMailWindow(BRect rect, const char* title, TMailApp* app, menu->AddSeparatorItem(); subMenu = new BMenu(B_TRANSLATE("Close and ")); - if (file.GetAttrInfo(B_MAIL_ATTR_STATUS, &info) == B_NO_ERROR) - file.ReadAttr(B_MAIL_ATTR_STATUS, B_STRING_TYPE, 0, str, info.size); - else - str[0] = 0; - if (!strcmp(str, "New")) { + read_flags flag; + read_read_attr(file, flag); + + if (flag == B_UNREAD) { subMenu->AddItem(item = new BMenuItem(B_TRANSLATE("Leave as New"), - new BMessage(B_QUIT_REQUESTED), 'W', B_SHIFT_KEY)); + new BMessage(kMsgQuitAndKeepAllStatus), 'W', B_SHIFT_KEY)); #if 0 subMenu->AddItem(item = new BMenuItem(B_TRANSLATE("Set to Read"), new BMessage(M_CLOSE_READ), 'W')); @@ -260,7 +258,7 @@ TMailWindow::TMailWindow(BRect rect, const char* title, TMailApp* app, subMenu->AddItem(item = new BMenuItem(status, new BMessage(B_QUIT_REQUESTED), 'W')); AddShortcut('W', B_COMMAND_KEY | B_SHIFT_KEY, - new BMessage(B_QUIT_REQUESTED)); + new BMessage(kMsgQuitAndKeepAllStatus)); } subMenu->AddItem(new BMenuItem(B_TRANSLATE("Move to trash"),