djmaze
0158a5fe1e
Improve Squire toolbar
...
Cleanup some JS code
2021-02-22 17:28:54 +01:00
djmaze
e52b9abc61
Cleanup more CSS and JS
...
and merge/cleanup/redesign composer attachments
2021-02-22 15:16:33 +01:00
djmaze
bc64fe6d0d
Use custom dropdown icon on <select>
2021-02-19 14:40:13 +01:00
djmaze
b6d8fa5b3f
Split admin css from app.css
...
Cleanup normalize and bootstrap css
Removed almost all css float
Removed CKEditor from app.css
2021-02-18 21:06:19 +01:00
djmaze
6dacfb3cf4
v2.3.2
2021-02-17 16:31:29 +01:00
djmaze
2c23955269
Improve font middle arrows
...
Simplify login spinner
2021-02-17 16:00:51 +01:00
djmaze
65e9deda2a
v2.3.1
2021-02-12 12:42:06 +01:00
djmaze
c47ed18db9
Improved and cleanup CSS
2021-02-12 11:39:02 +01:00
djmaze
60e29fdd66
Improved folder glyph
2021-02-12 01:05:02 +01:00
djmaze
f1a3f54547
Fix menu dropdown icon (rainloop resized the font, not the glyph)
2021-02-11 21:07:40 +01:00
djmaze
e141ee8ea3
remove unused glyph from snappymail font
2021-02-11 20:15:07 +01:00
djmaze
4a8c9f8e18
Improved icon font view
2021-02-11 17:46:29 +01:00
djmaze
93738eac22
Improved snappymail font unicode points
2021-02-11 12:21:04 +01:00
djmaze
e55dc49e34
Cleanup some bootstrap css
2021-02-11 10:58:33 +01:00
djmaze
75b7176ada
Remove knockout evaluatorFunctionTarget
...
Drop deprecated knockout throttle extender
Added knockout debounce extender
2021-02-10 11:33:36 +01:00
djmaze
57158bd55a
Less float & less html is mobile view profit
2021-02-08 21:19:58 +01:00
djmaze
004378ed8c
Merge and cleanup more CSS rules
2021-02-08 17:37:21 +01:00
djmaze
43c4293330
Cleanup some css and remove a float
2021-02-05 15:56:15 +01:00
djmaze
5e9941d58f
Also convert template body-background-image to var()
...
And cleanup more CSS
2021-02-05 15:31:42 +01:00
djmaze
d9bece04b2
Revamp CSS template system using var() feature
2021-02-05 10:42:20 +01:00
djmaze
f08dfac99d
Cleanup fontastic
2021-02-04 17:52:46 +01:00
djmaze
b26586f2ba
Cleanup Crossroads & Hasher and dropped Signals
2021-02-04 12:54:03 +01:00
djmaze
6a92912a3d
Bugfix: Inputosaurus modifications got broken.
...
Replaced completely with EmailAddressesComponent
2021-02-03 23:36:36 +01:00
djmaze
b0e3020aab
Bugfix: inputosaurus failed due to changes
2021-02-03 12:55:49 +01:00
djmaze
5001dcc4d8
'use strict' already in libs.js
2021-02-02 14:10:48 +01:00
djmaze
b015454b02
Cleanup unused CSS
2021-02-01 22:54:19 +01:00
djmaze
ebe2c0536f
Bugfix: compose mail select contacts for cc/bcc failed
...
Cleanup: Inputosaurus and Knockout
Change: Knockout domData now uses WeakMap
Replaced: Knockout domManipulation with a documentFragment
2021-02-01 14:34:24 +01:00
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
djmaze
3757324e32
Cleanup hash routing
2020-09-23 14:44:46 +02:00
djmaze
673f1bff79
Bugfix: inputosaurus revamp failed due to missing onChange handling
2020-09-23 13:07:44 +02:00
djmaze
65032e3b89
Bugfix: CKEditor failed to load
2020-09-23 11:20:00 +02:00
djmaze
6c6a5dd03b
Enable Squire by default and put CKEditor as option
2020-09-22 15:21:23 +02:00
djmaze
996c747e45
Bugfix: Squire setHTML failed with hidden exception
2020-09-22 15:03:14 +02:00
djmaze
df1d0fc8d6
Array.from() to spread syntax
2020-09-22 10:13:32 +02:00
djmaze
079d119f8a
Removed lightgallery to drop whole jQuery
2020-09-21 17:33:58 +02:00
djmaze
1cd07955a2
drop jQuery support completely from knockoutjs
2020-09-21 16:11:06 +02:00
djmaze
06abbf0713
inputosaurus jQuery to native so we can drop jquery-ui
2020-09-21 16:05:04 +02:00
djmaze
4e449b9c66
replace knockout-sortable with html5 native
2020-09-20 23:15:06 +02:00
djmaze
3ea2f5f452
Replaced knockout-sortable with a slimmed down version (for now)
2020-09-19 13:46:02 +02:00
djmaze
4da5543c27
Remove more IE9 stuff from Knockoutjs
2020-09-19 13:36:05 +02:00
djmaze
1ec45a9f8e
Bugfix: somehow Jua minified was broken. Cleaned it up and it works again
2020-09-19 13:32:50 +02:00
djmaze
5ef3006f4f
Cleanup Jua code
2020-09-19 11:21:11 +02:00
djmaze
970e9d7d7d
Bugfix: knockout-sortable was broken due to a knockoutjs change of me
2020-09-17 23:48:18 +02:00
djmaze
118c1613a4
Removed more IE workarounds from knockoutjs
2020-09-17 23:15:16 +02:00
djmaze
0f56c7d28f
knockout appendChild => append
...
and tested closure-compiler 0.2.12 but still broken for es6 mode
2020-09-17 21:34:38 +02:00
djmaze
7713f459ac
Replace $().trigger() and document.createEvent() with element.dispatchEvent(new Event())
2020-09-17 21:18:39 +02:00
djmaze
d06fed09d6
Drop support for old browsers and some jQuery
2020-09-17 16:40:43 +02:00
djmaze
091c4ec811
Clone 3.5.1 from github
2020-09-17 16:27:00 +02:00
djmaze
f300ec94ee
https://github.com/neilj/Squire/pull/344
2020-09-14 12:33:36 +02:00
djmaze
8b53b189f8
Cleanup CSS and fix SquireUI css
2020-09-13 14:13:16 +02:00
djmaze
a022139403
Added: browse/upload image button to SquireUI
2020-09-11 14:40:13 +02:00
djmaze
a7cc115bfb
Move SquireUI into libs.js
2020-09-11 12:39:56 +02:00
djmaze
bdc961dfab
Improved Squire with the missing 'plain' mode.
2020-09-10 18:47:28 +02:00
djmaze
dd66824cd1
Added the modified Squire HTML editor
2020-09-09 18:45:33 +02:00
djmaze
aeb5275648
Improved boot.js with existing global window.rl
...
Put dev/Storage/Settings.js in boots.js global rl.settings
2020-09-04 12:05:17 +02:00
djmaze
0e8bf13d5d
Bugfix: the new endShowHide failed in Edge and mobile browsers
...
Cleanup bootstrap less files
2020-09-02 21:30:23 +02:00
djmaze
7135cc38fe
Remove bootstrap Modal feature for improved transition effects (in future might use <dialog>)
2020-09-02 17:06:35 +02:00
djmaze
eb5fb5342e
Cleanup bootstrap
2020-09-01 21:50:17 +02:00
djmaze
1802dda136
Removed jQuery dependencies from Jua.js
2020-09-01 16:57:14 +02:00
djmaze
645831368d
Again replaced some jQuery to native and cleaned up normalize.css without IE
2020-08-31 12:45:43 +02:00
djmaze
39ba67de4b
Bugfix: bootstrap native dropdown failed for Compose "from"
2020-08-30 16:17:36 +02:00
djmaze
69fcc240e9
More jQuery to native (including bootstrap.js)
2020-08-30 10:30:50 +02:00
djmaze
bdb36ec128
Use less jQuery, more native
2020-08-27 15:45:47 +02:00
djmaze
63af2e25ed
v1.14.0-djmaze4
2020-08-19 12:39:19 +02:00
djmaze
9f73377a88
Bugfix: compose e-mail file upload failed to wrong conversion to ES2015
...
Must be a 39 degrees workplace failure
2020-08-15 20:11:56 +02:00
djmaze
f5a444aa14
Removed opentip
...
Cleanup lightgallery
2020-08-13 13:16:08 +02:00
djmaze
a8ef5ec75b
Bugfix: Email addressparser
...
Cleanup vendor scripts
2020-08-12 11:49:40 +02:00
djmaze
e7180a86ce
Made eslint using 'browser' environment and added globals, because RainLoop is used in browsers.
...
This also allowed to remove all webpack 'externals' overhead.
2020-08-12 00:25:36 +02:00
djmaze
c3a213802d
Bugfix: jQuery UI classesElementLookup value is Object, not an Array
2020-08-11 23:52:36 +02:00
djmaze
b9b9cd736f
Replaced ProgressJS with simple native dropin
2020-08-10 10:40:25 +02:00
djmaze
4383281de6
Removed unused bootstrap code
2020-08-08 14:39:51 +02:00
djmaze
a0dcd93fea
Removed jQuery UI widgetSlice
2020-08-07 13:27:43 +02:00
djmaze
656fd72319
$.isArray() is deprecated
...
$.bind() is deprecated
$.parseJSON is deprecated
$.unique is deprecated
jQuery .bind() is deprecated
jQuery .unbind() is deprecated
jQuery .load() is deprecated
removed $.support.transition
2020-08-07 09:40:36 +02:00
djmaze
bbd9f49dcd
$.proxy is deprecated
...
$.trim is deprecated
2020-08-06 18:24:46 +02:00
djmaze
ae1b7610fd
Remove use of $.error in jquery-ui
2020-08-06 16:24:19 +02:00
djmaze
7584e9003f
Cleanup ProgressJS
2020-07-30 12:17:41 +02:00
djmaze
ea48f5060b
isArray to native Array.isArray
...
isUnd(*) to native undefined === *
isFunc to native typeof * === 'function'
isObject to native typeof * === 'object'
microtime() to native Date().getTime();
noop to native ()=>{}
noopFalse to native ()=>false
noopTrue to native ()=>true
boolToAjax to native *?'1':'0'
Underscore.js to native
2020-07-29 21:49:41 +02:00
djmaze
2ba34532c2
JavaScript string compare '' is always a ToBoolean
...
See https://www.ecma-international.org/ecma-262/5.1/#sec-9.2
2020-07-28 17:20:14 +02:00
djmaze
db5751cd00
Cleaner boot.js
2020-07-28 11:23:06 +02:00
djmaze
d28e193556
cleanup Progress.js
2020-07-27 17:40:00 +02:00
djmaze
c9d444250f
Strip webpack and iframe support from Jua.js (only use xmlhttprequest)
2020-07-27 16:58:04 +02:00
djmaze
1b331aca32
Removed unused code from JavaScript files
2020-07-27 14:52:18 +02:00
djmaze
a12a3815f9
deprecated jQuery.delegate() to jQuery.on()
2020-07-25 13:50:46 +02:00
djmaze
281a5df732
Cleanup custom Underscore.js
2020-07-23 20:50:20 +02:00
djmaze
dca0ff02ed
Use jQuery.slim
...
Underscore.js _.uniq(_.compact( to native Array.filter((value, index, self) => !!value && self.indexOf(value) == index)
Underscore.js _.compact to native Array.filter(value => !!value)
Underscore.js _.uniq to native Array.filter((value, index, self) => self.indexOf(value) == index)
Underscore.js _.values to native Object.values
Underscore.js _.flatten to native Array.flat
Underscore.js _.union to native Array.concat + unique filter
Underscore.js _.reduce to native Array.reduce
Underscore.js _.escape replaced with advanced htmlspecialchars()
Underscore.js _.memoize replaced
Now Underscore.js is a slim custom version (only _.debounce, _.defer & _.throttle)
2020-07-23 16:06:16 +02:00
djmaze
84ac7dc893
Get rid of deprecated $.ui.plugin
2020-07-20 21:40:36 +02:00
djmaze
ec3fd5b7e4
Remove jquery-letterfx, just like cd55e3ccc2
2020-07-20 11:26:40 +02:00
djmaze
f16f604f48
Get the stored resized layout working again
2020-07-17 15:04:50 +02:00
djmaze
1e71698b79
Improved initHorizontalLayoutResizer and initVerticalLayoutResizer with custom resizer
2020-07-17 13:46:49 +02:00
djmaze
e3aaea8035
Get rid of jQuery.wakup
...
Get rid of jQuery UI resizable (use HTML5 with ResizeObserver/MutationObserver, work-in-progress not as beautiful yet)
Get rid of hidden download() iframe
2020-07-16 19:49:56 +02:00
djmaze
fca0bb5d56
Bugfix broken jQuery UI
2020-07-16 11:07:28 +02:00
djmaze
854d723927
Upgrade to custom jQuery UI 1.12.1 due to errors with jQuery 3
2020-07-15 14:16:07 +02:00
djmaze
eb731a4183
Updated inputosaurus.js to work with jQuery3
2020-07-09 16:01:41 +02:00
djmaze
aae7883b99
Bugfix: bootstrap jQuery('#') syntax error
...
Changed: use ES2015
Changed: gulp uglify to terser
Removed: ChangePassword
Removed: nanoscroll
Removed: JS polyfills
2020-03-13 15:30:39 +01:00
djmaze
6e0d0b3b6e
CRLF to LF
2020-03-11 14:17:52 +01:00
djmaze
4468d5bd22
Removed: twitter, google, dropbox, facebook, owncloud, modernizr from JavaScript
2020-03-11 12:55:03 +01:00
RainLoop Team
35ef89c2a6
Optimize building process
2018-03-30 00:43:46 +03:00
RainLoop Team
9dc3c97c79
Update translations
2018-03-06 22:26:43 +03:00
RainLoop
d76fde37df
Fix crippled contact names ( #1447 )
2017-09-27 20:58:15 +03:00
RainLoop
16ca116b30
Fix 'Horizontal scroll in message view broken' ( close #1494 )
2017-09-20 23:47:54 +03:00
RainLoop
39ddb49cd6
Fix Start reply at top of email ( close #865 )
2017-09-20 20:26:16 +03:00