Commit graph

283 commits

Author SHA1 Message Date
djmaze
b6f0b634fb Cleanup calls to Knockout observableArray
Improved Knockout observableArray
2021-01-22 12:23:20 +01:00
djmaze
fa5476e486 Added support for 'length' property to Knockout observable 2021-01-22 09:46:04 +01:00
djmaze
21e5d3733a Found a small word breaking bug in sieve raw filters editor 2021-01-18 09:27:26 +01:00
djmaze
950579c7f5 Rename 'ajax' to 'json' because we don't use XML
We use json as response
2020-12-30 15:50:47 +01:00
djmaze
1c20cc6d13 Cleanup snappymail glyphs font 2020-12-02 14:31:06 +01:00
djmaze
2a174d9114 Added font-display:swap to glyphs font
Since we use more correct unicode points, we improve performance score from 92% to 93%
2020-11-27 14:30:03 +01:00
djmaze
b57493bf0a Moved some font glyphs to their correct unicode code points
This improves visibility when webfonts are blocked (not downloaded).
2020-11-27 14:16:20 +01:00
djmaze
fb680596a6 Fix naming 2020-11-13 00:04:35 +01:00
djmaze
bdd68d0d8f improved knockout observableArray with all Array.prototype functions 2020-11-03 15:53:50 +01:00
djmaze
075762000b Resolve https://github.com/the-djmaze/snappymail/issues/32
Related https://github.com/the-djmaze/snappymail/issues/28
2020-10-30 16:59:52 +01:00
djmaze
1d57a62ddd Dropped more unused knockoutjs code 2020-10-29 11:15:04 +01:00
djmaze
5a0215987a knockoutjs replaced slow obj.__proto__ with Object.setPrototypeOf() 2020-10-28 20:19:38 +01:00
djmaze
d49916731f replaced ko.utils.array* with native 2020-10-28 20:17:45 +01:00
djmaze
8a8d64a2c1 Resolve https://github.com/the-djmaze/snappymail/issues/28
Issue was incorrect filter param in createTreeWalker
2020-10-28 17:03:03 +01:00
djmaze
ff6fb41812 Remove more unused knockout code 2020-10-28 13:58:37 +01:00
djmaze
d1dfa227ae cleanup fontastic 2020-10-28 10:35:17 +01:00
djmaze
f25d210f3e Solve menu arrow navigation
https://github.com/the-djmaze/snappymail/issues/22
2020-10-26 14:34:59 +01:00
djmaze
48a9a03762 Removed fakeSpan from Inputosaurus and cleanup 2020-10-23 15:16:42 +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
36fa52307f Added: knockout.js observable toJSON() 2020-10-20 15:39:14 +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
a177081224 Bugfix: container.remove() is not a function 2020-10-14 19:18:10 +02:00
djmaze
3db8befbba fontastic use woff2 and drop ttf and svg 2020-10-14 19:17:40 +02:00
djmaze
167e323c72 Bugfix for https://github.com/the-djmaze/snappymail/issues/15#issuecomment-706213859 2020-10-13 15:23:34 +02:00
djmaze
e02deee4f1 Make touchstart/touchmove events passive 2020-10-13 15:16:57 +02:00
djmaze
1e735bf4a9 Drop unused Knockout functionality
Especially dropped memoization for improved speed.
2020-10-13 14:56:23 +02:00
djmaze
e7975d4f82 Bugfix: Knockout 'with:' used on 1 place 2020-10-13 10:15:50 +02:00
djmaze
8bb05b41ce Bugfix: bootstrap dopdown undefined eventTarget.getAttribute 2020-10-12 15:04:11 +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
the-djmaze
52e6b9b0ed
Knockout visibleHidden to HTML5 2020-10-11 00:27:45 +02:00
djmaze
993d4c31cc Update knockout-latest.debug.js 2020-10-09 12:45:55 +02:00
djmaze
92836117ee Bugfix: put back the knockout bindings if/ifnot as they are in use 2020-10-09 12:44:39 +02:00
djmaze
ba7ed497b2 Cleanup JS and better terser compression 2020-10-09 11:58:15 +02:00
djmaze
ee23a5553e Resolve https://github.com/the-djmaze/snappymail/issues/22 2020-10-09 10:31:44 +02:00
djmaze
ac535b1d03 Remove more unused Knockout code 2020-10-09 10:20:22 +02:00
djmaze
07857a06a9 Cleanup knockout.js
- Remove AMD
- Manually removed closure-compiler polyfill for Object.entries
2020-10-05 13:46:19 +02:00
djmaze
72ed2b08b2 KnockoutJS to ES2015/ES6
TODO: use the new Proxy for ko.observable
2020-10-04 21:58:13 +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
cb2048f163 cleanup some code 2020-10-02 12:40:33 +02:00
djmaze
6c75dd12f8 Cleanup CSS and JS code 2020-10-01 11:10:40 +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
25b4c899d0 Removed country flags from language selection because country != language 2020-09-29 16:44:27 +02:00
djmaze
a1a413dca2 Modifications for https://github.com/the-djmaze/snappymail/issues/15 2020-09-28 09:51:12 +02:00
djmaze
5b986b7bb0 Bugfix: Chrome 84 on Android only accepts text/plain in Drag & Drop 2020-09-27 12:04:47 +02:00
djmaze
c7054ff56c Resolve https://github.com/the-djmaze/snappymail/issues/14
There this works
2020-09-26 10:20:24 +02:00
djmaze
e562ed159c Replace rainloop glyphs font with cleaned up snappymail glyph font 2020-09-25 17:42:14 +02:00
djmaze
a8ddeecb49 Improved Webkit and Gecko :empty selector.
But the real block level unfocusable bug is still not solved.
2020-09-24 16:11:46 +02:00
djmaze
0fde531dd3 Issue #12 has something todo with Webkit and Gecko
A DIV has no height, but we solve this with CSS :empty
It's not perfect because we can still not focus when there's no BR.
Will keep digging!
2020-09-24 15:13:33 +02:00
djmaze
d291716489 Cleanup some old browser support code in Squire 2020-09-24 13:01:07 +02:00