aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/msgviewer.go
Commit message (Collapse)AuthorAgeFilesLines
* Move ANSI stripping from filters to GoDrew DeVault2019-06-071-4/+20
|
* Remove unnecessary branchDrew DeVault2019-06-071-3/+0
|
* implements ability to view headers in message viewYash Srivastav2019-06-071-53/+91
|
* Add date to message viewerDrew DeVault2019-06-021-3/+9
|
* widget: Add ProvidesMessage interfaceKevin Kuehler2019-06-021-1/+15
| | | | | | | | | | | Consists of 3 functions * Store: Access to MessageStore type * SelectedAccount: Access to Account widget that the target widget belongs to * SelectedMessage: Current message (selected in msglist or the one we are viewing) Signed-off-by: Kevin Kuehler <keur@ocf.berkeley.edu>
* Simplify layout of message viewer gridDrew DeVault2019-06-021-17/+3
| | | | This sub-grid was an artifact of an older design
* Add :save and :pipe commands to viewerGalen Abell2019-05-271-0/+19
| | | | | | | | | * :save takes a path and saves the current message part to that location * :pipe is the same as pipe on the account page, but uses the current message part rather than the whole email (ie :pipe gzip -d) * Refactored account:pipe and extracted common pipe code to commands.util.QuickTerm * Added helper command aerc.PushError
* msgviewer: copy stderr into pagerDrew DeVault2019-05-261-1/+17
| | | | This prevents a broken filter config from being a silent error
* Show unsupported mimetype message in redDrew DeVault2019-05-201-1/+1
|
* Show attachment names in multipart viewDrew DeVault2019-05-201-1/+5
|
* Implement :next-part, :prev-partDrew DeVault2019-05-201-2/+31
|
* Flesh out multipart switcherDrew DeVault2019-05-201-65/+141
|
* Refactor message part into dedicated widgetDrew DeVault2019-05-201-86/+148
|
* s/aerc2/aerc/gDrew DeVault2019-05-171-4/+4
|
* Add :send-message, prepares & writes email to /tmpDrew DeVault2019-05-141-4/+7
|
* lib/ui: introduce InvalidatableSimon Ser2019-04-271-17/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many Drawable implementations have their own Invalidate and OnInvalidate functions, with an unexported onInvalidate field. However OnInvalidate and Invalidate are usually not called in the same goroutine. This results in a race on this field, e.g.: Read at 0x00c000094748 by goroutine 7: git.sr.ht/~sircmpwn/aerc2/widgets.NewDirectoryList.func1() /home/simon/src/aerc2/widgets/dirlist.go:85 +0x56 git.sr.ht/~sircmpwn/aerc2/widgets.(*Spinner).Start.func1() /home/simon/src/aerc2/widgets/spinner.go:93 +0x1bb Previous write at 0x00c000094748 by main goroutine: [failed to restore the stack] Goroutine 7 (running) created at: git.sr.ht/~sircmpwn/aerc2/widgets.(*Spinner).Start() /home/simon/src/aerc2/widgets/spinner.go:46 +0x8f git.sr.ht/~sircmpwn/aerc2/widgets.NewDirectoryList() /home/simon/src/aerc2/widgets/dirlist.go:37 +0x286 git.sr.ht/~sircmpwn/aerc2/widgets.NewAccountView() /home/simon/src/aerc2/widgets/account.go:50 +0x5ca git.sr.ht/~sircmpwn/aerc2/widgets.NewAerc() /home/simon/src/aerc2/widgets/aerc.go:60 +0x800 main.main() /home/simon/src/aerc2/aerc.go:65 +0x33e To fix this, introduce a new type, Invalidatable, which protects the field. Unfortunately the Drawable must be passed to the callback function in Invalidate, so we still need to re-implement this in each Invalidatable user.
* Lowercase MIME types while matching filtersGokberk Yaltirakli2019-04-071-1/+2
|
* Remove extra debug statementDrew DeVault2019-03-311-1/+0
|
* Use shell to execute filters, fix non-determinismDrew DeVault2019-03-311-6/+3
|
* Implement header-regex-match filtersDrew DeVault2019-03-311-1/+18
|
* Improve error handling in message viewerDrew DeVault2019-03-311-10/+36
| | | | Still not great but at least it tells you when something went wrong
* Add basic filter implementationDrew DeVault2019-03-311-16/+65
|
* Decode messages before rendering themDrew DeVault2019-03-311-2/+22
|
* Make message viewer real, part twoDrew DeVault2019-03-311-10/+22
|
* Make the message viewer real, part oneDrew DeVault2019-03-311-118/+54
|
* Minor refactoring to header viewDrew DeVault2019-03-301-7/+12
|
* Use bold instead of inverted for header namesDrew DeVault2019-03-301-2/+3
|
* Add multipart selector mockup to msgviewerDrew DeVault2019-03-301-7/+50
|
* Add basic message viewer mockupDrew DeVault2019-03-301-0/+207