Mail: don't require a subject to save a draft (#9218)

Also :
 * if the body of message changes, ask to save draft when closing window
 * disable save button when successfully saving draft
This commit is contained in:
Philippe Saint-Pierre
2012-12-12 23:10:02 -05:00
parent 53b234eb1c
commit 4b84a0b5c8
+11 -2
View File
@@ -1691,6 +1691,8 @@ TMailWindow::QuitRequested()
|| strlen(fHeaderView->fSubject->Text())
|| (fHeaderView->fCc && strlen(fHeaderView->fCc->Text()))
|| (fHeaderView->fBcc && strlen(fHeaderView->fBcc->Text()))
|| (fContentView->fTextView
&& strlen(fContentView->fTextView->Text()))
|| (fEnclosuresView != NULL
&& fEnclosuresView->fList->CountItems()))) {
if (fResending) {
@@ -2550,8 +2552,13 @@ TMailWindow::SaveAsDraft()
{
char fileName[B_FILE_NAME_LENGTH];
// save as some version of the message's subject
strlcpy(fileName, fHeaderView->fSubject->Text(),
sizeof(fileName));
if (strlen(fHeaderView->fSubject->Text()) == 0)
strlcpy(fileName, B_TRANSLATE("Untitled"),
sizeof(fileName));
else
strlcpy(fileName, fHeaderView->fSubject->Text(),
sizeof(fileName));
uint32 originalLength = strlen(fileName);
// convert /, \ and : to -
@@ -2648,6 +2655,8 @@ TMailWindow::SaveAsDraft()
fDraft = true;
fChanged = false;
fSaveButton->SetEnabled(false);
return B_OK;
}