Commit graph

915 commits

Author SHA1 Message Date
djmaze
3eb6ab1ef7 Improved knockout observables management to prevent memory leaks 2020-10-26 12:54:03 +01:00
djmaze
b165a1de4f Added addComputables() to *Model 2020-10-25 14:14:14 +01:00
djmaze
22f606ea75 Bugfix: revamp MessageModel broke flags cache
And took the liberty to put all MessageFlagsCache functions into a class
2020-10-25 13:50:26 +01:00
djmaze
d7a4639d6b Prevent memory leaks in *Model 2020-10-25 11:46:58 +01:00
djmaze
76c4f62186 Improved reviveFromJson() for *Model 2020-10-23 15:15:54 +02:00
djmaze
500575dc32 Sync is already there
https://github.com/the-djmaze/snappymail/issues/24
2020-10-21 21:53:55 +02:00
djmaze
188a40b196 Basic JSON object properties revival now handled by AbstractModel
This will be better for future use of JSON.stringify() and JSON.parse()
For now the difference between the PHP JSON being PascalCase and the JS object properties being camelCase is handled by AbstractModel
2020-10-20 17:39:00 +02:00
djmaze
53bf7c1d60 setFromJson was not called at reviveFromJson 2020-10-20 17:29:24 +02:00
djmaze
3a315bc543 Bugfix: Contacts management failed
It had a strange array type structure and buggy
2020-10-20 15:37:06 +02:00
djmaze
2470f1add6 ContactProperty and FilterCondition use reviveFromJson 2020-10-20 10:27:00 +02:00
djmaze
9844c1882c Split RainLoop/Actions.php and use JsonSerializable 2020-10-19 22:09:25 +02:00
djmaze
15e07a73e9 merge all Model JSON @Object parsers into a reviveFromJson() 2020-10-18 19:46:47 +02:00
djmaze
76648f04ae Cleaner CollectionModel code 2020-10-18 19:36:57 +02:00
djmaze
ddc866735c Drop unused sModelName 2020-10-18 19:19:45 +02:00
djmaze
7d89de2fdb CollectionModels reviveFromJson 2020-10-18 11:46:22 +02:00
djmaze
d747de7649 Revert my Squire node.remove() back to detach(node) and
Cleanup some code
2020-10-17 14:08:27 +02:00
djmaze
b908d7b46f Resolve https://github.com/the-djmaze/snappymail/issues/26 2020-10-17 13:53:04 +02:00
djmaze
d0f686c657 Rename basefolder 'rainloop' to 'snappymail'
this prevents conflicts with original rainloop
2020-10-15 16:21:52 +02:00
djmaze
4806dc968d onkeypress is obsolete 2020-10-15 14:43:04 +02:00
djmaze
0528bcf911 Cleanup language loader 2020-10-15 12:59:56 +02:00
djmaze
b68d04aacd Bugfix: inboxFolderName was incorrect
You could have potentionally deleted INBOX and other issues
2020-10-15 12:23:11 +02:00
djmaze
3bfe2c67d1 Droppped momentjs in favor of Intl
Uses a fallback for Intl.RelativeTimeFormat in Date.prototype.fromNow
2020-10-15 10:45:18 +02:00
djmaze
6f585e1f1d Use Intl.DateTimeFormat instead of momentjs where we can
Need to solve the Intl.RelativeTimeFormat to drop momentjs
2020-10-15 00:26:40 +02:00
djmaze
1d6a636433 Split Common/Utils.js
Because admin app doesn't need most of them
2020-10-14 19:16:37 +02:00
djmaze
e02deee4f1 Make touchstart/touchmove events passive 2020-10-13 15:16:57 +02:00
djmaze
cc046907ed ko.utils.unwrapObservable => ko.unwrap 2020-10-13 14:56:45 +02:00
djmaze
0eba94f671 Drop AbstractAppStore and
put the properties/observables where they belong
2020-10-12 19:46:41 +02:00
djmaze
cb9e393fbc Pagenator should be Paginator 2020-10-12 15:11:25 +02:00
djmaze
527694f361 Replace bootstrap .divider with cleaner .dividerbar which also reduces knockout calls 2020-10-12 15:03:45 +02:00
djmaze
c2a5d0fda5 ko hidden: use html5 hidden attribute
ko visible: rollback to use style.display
2020-10-11 11:59:36 +02:00
djmaze
267426b07d Resolve https://github.com/the-djmaze/snappymail/issues/23 2020-10-09 17:12:56 +02:00
djmaze
4177467f81 Bugfix: '`' backtick shortcut being dead key
* remove 'Insert' key from class Selector and bugfix Selector ' ' space.
* replace 'M' (move) shortcut with 'Insert' (like: insert into)
* '`' backtick being dead key shortcut with 'M' and 'ContextMenu' keys.
2020-10-09 15:00:26 +02:00
djmaze
ba7ed497b2 Cleanup JS and better terser compression 2020-10-09 11:58:15 +02:00
djmaze
058217de02 Resolve https://github.com/the-djmaze/snappymail/issues/21 2020-10-09 11:04:35 +02:00
djmaze
ee23a5553e Resolve https://github.com/the-djmaze/snappymail/issues/22 2020-10-09 10:31:44 +02:00
djmaze
a0f8ac0dad Cleanup Date.fromNow() and friendlySize() 2020-10-03 14:02:33 +02:00
djmaze
2bd9528098 Clean message preview/print 2020-10-03 13:04:23 +02:00
djmaze
c3a2da65df Revamp array filtering
Replaced fakeMd5 with new Jua.randomId
Cleanup more code
2020-10-02 23:54:15 +02:00
djmaze
9992b20163 Merge file and mime code into simple Common/File.js 2020-10-02 14:44:29 +02:00
djmaze
cb2048f163 cleanup some code 2020-10-02 12:40:33 +02:00
djmaze
e566494a87 Bugfix: move messages button [Ctrl] copy method 2020-10-01 11:11:14 +02:00
djmaze
6c75dd12f8 Cleanup CSS and JS code 2020-10-01 11:10:40 +02:00
djmaze
0eea2cb5ad Modifications for https://github.com/the-djmaze/snappymail/issues/12 2020-09-30 17:11:06 +02:00
djmaze
cfdbe3251e Removed the DATA_IMAGE_USER_DOT_PIC
Because viewUserPic is always false due to the removed Gravatar feature
2020-09-30 16:10:01 +02:00
djmaze
0a95e2c6dc Cleanup constants 2020-09-30 14:07:03 +02:00
djmaze
efcefbaf78 Cleanup CSS and drop bMobileDevice detection.
Touch devices can be any size and can use (bluetooth/usb-c mouse/keyboard) these days.
It's all about pixels and currently if the mode is mobile/no-mobile (this can be improved later).
2020-09-30 12:31:34 +02:00
djmaze
17575f19f0 Activated a working HTML5 Drag & Drop polyfill for the Firefox Mobile browser 2020-09-28 20:04:09 +02:00
djmaze
d735893cd6 Added HTML5 Drag & Drop for Gecko/Firefox Mobile
Chrome does support dragstart and was fixed previously.
This is not active yet as i'm testing for touch issues.
2020-09-28 17:23:22 +02:00
djmaze
9b94265844 Resolve https://github.com/the-djmaze/snappymail/issues/17 2020-09-28 11:26:20 +02:00
djmaze
2d429297ad Resolve https://github.com/the-djmaze/snappymail/issues/18 2020-09-28 10:29:58 +02:00