djmaze
3a32a09f2a
KnockoutJS:
...
* remove deprecated allBindings as Accessor https://github.com/knockout/knockout/pull/2133
* remove unused event '*Bubble' https://knockoutjs.com/documentation/event-binding.html#note-4-preventing-the-event-from-bubbling
* remove unused 'completeOn' https://knockoutjs.com/documentation/binding-lifecycle-events.html#indicating-that-a-control-flow-binding-completes-asynchronously
2021-08-10 15:00:49 +02:00
djmaze
5590fd4860
isNonEmptyArray => arrayLength
2021-07-21 21:34:17 +02:00
djmaze
d5f0b1d06c
Resolve Issue #98
2021-07-14 12:03:09 +02:00
djmaze
af3c79ce80
Moved CKEditor to be plugin
2021-03-25 13:35:15 +01:00
djmaze
673bd49095
Improvements for #62
2021-03-25 10:08:29 +01:00
djmaze
fe4dbc729c
Added isFunction()
2021-03-24 14:22:25 +01:00
djmaze
0b64083543
Array.isArray to isArray
...
Array.isNotEmpty to isNonEmptyArray
2021-03-16 16:49:14 +01:00
djmaze
4b6f6b1bfc
Move addObservablesTo, addComputablesTo & addSubscribablesTo to Common/Utils
2021-03-16 10:59:47 +01:00
djmaze
0696e20878
Bugfix: improved firefox mobile draggable solution
2021-02-24 10:41:24 +01:00
djmaze
fac36e828b
Cleanup Squire and Knockout with help of Chromium Code Coverage
...
Bugfix: Squire inlineNodeNames the 'I' tag was missing
Improved: Squire style editing
2021-02-23 22:50:48 +01:00
djmaze
e52b9abc61
Cleanup more CSS and JS
...
and merge/cleanup/redesign composer attachments
2021-02-22 15:16:33 +01:00
djmaze
fe45179847
Cleanup some mobile modal screen sizes
...
And simplify the ko command bindinghandler to use CSS :enabled
2021-02-19 23:31:50 +01:00
djmaze
bc64fe6d0d
Use custom dropdown icon on <select>
2021-02-19 14:40:13 +01:00
djmaze
158991ed55
Improve Squire UI design
2021-02-19 12:11:20 +01:00
djmaze
540b12ed26
Replace babel command decorators with proper knockout command decorators
2021-02-19 12:09:20 +01:00
djmaze
db0d03db83
Bugfix: conflicting File object with native JS
...
Cleanup: Stores and tooltips
2021-02-17 14:40:21 +01:00
djmaze
d7994ddab6
Revamp Mobile/Desktop switcher without completely reloading.
...
Remove switcher from login page, it became useless.
2021-02-16 20:12:23 +01:00
djmaze
10f9ce39d9
Revamp mobile including CSS flexbox for messageListItem
2021-02-15 15:20:22 +01:00
djmaze
a2727c65fe
Bugfix: messages list ArrowUp/ArrowDown broken
2021-02-12 12:00:06 +01:00
djmaze
ce4ee3ba3f
Revamp saveTrigger
2021-02-11 10:08:27 +01:00
djmaze
111455054e
Speedup message bodies cache cleanup
...
Remove ko.bindingHandlers.link
2021-02-10 16:50:58 +01:00
djmaze
8c780ad353
Replace deprecated Knockout throttle with new debounce extender
...
Replace admin general mainAttachmentLimit with input type="number"
2021-02-10 12:12:36 +01:00
djmaze
004378ed8c
Merge and cleanup more CSS rules
2021-02-08 17:37:21 +01:00
djmaze
92bbaadbf3
bugfix: changed css broke spinner querySelector
2021-02-04 22:47:38 +01:00
djmaze
f08dfac99d
Cleanup fontastic
2021-02-04 17:52:46 +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
90ee39b114
Improve switching of wysiwyg/plain composer
2021-02-02 12:23:32 +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
7ccc44616d
Small code cleanups and fix translations
2021-01-27 00:26:31 +01:00
djmaze
b31bf3d7f5
Improved js minification
2021-01-26 11:46:30 +01:00
djmaze
ad8fd8879b
This version uses Rollup instead of WebPack.
...
Due to that the code is smaller and has changes to prevent Circular Dependencies
2021-01-25 22:00:13 +01:00
djmaze
f3bfa0e8c1
Cleanup and split Enums
2021-01-24 22:58:06 +01:00
djmaze
0474f29272
Bugfix: wrote a buggy fix for safari
2020-11-23 17:05:13 +01:00
djmaze
4986de6b93
Bugfix: Safari doesn’t fire the visibilitychange event as expected when visibilityState transitions to hidden
2020-11-23 16:44:34 +01:00
djmaze
7db7d5545b
Improved observables
2020-10-27 11:09:24 +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
3eb6ab1ef7
Improved knockout observables management to prevent memory leaks
2020-10-26 12:54:03 +01: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
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
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
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
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
djmaze
35b531caac
Resolve https://github.com/the-djmaze/snappymail/issues/20
2020-09-28 09:50:31 +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
344c478a45
Release v2.0.0-rc1
2020-09-26 12:25:57 +02:00
djmaze
31828b125f
cleanup some orphan css
2020-09-25 17:42:40 +02:00
djmaze
673f1bff79
Bugfix: inputosaurus revamp failed due to missing onChange handling
2020-09-23 13:07:44 +02:00
djmaze
1bb154d6f4
Bugfix: The ability to list more than one selector in :not() is experimental and not yet widely supported.
2020-09-23 11:48:08 +02:00
djmaze
65032e3b89
Bugfix: CKEditor failed to load
2020-09-23 11:20:00 +02:00
djmaze
302f2847b8
Resolve https://github.com/the-djmaze/rainloop-webmail/issues/8
2020-09-23 10:08:34 +02:00
djmaze
996c747e45
Bugfix: Squire setHTML failed with hidden exception
2020-09-22 15:03:14 +02:00
djmaze
067c502592
Fix SquireUI on mobile
2020-09-22 11:19:52 +02:00
djmaze
df1d0fc8d6
Array.from() to spread syntax
2020-09-22 10:13:32 +02:00
djmaze
06abbf0713
inputosaurus jQuery to native so we can drop jquery-ui
2020-09-21 16:05:04 +02:00
djmaze
ea2e0c09d8
improved html5 d&d
2020-09-21 09:29:00 +02:00
djmaze
4e449b9c66
replace knockout-sortable with html5 native
2020-09-20 23:15:06 +02:00
djmaze
9fc5a3ff6a
Cleanup some code
2020-09-19 13:53:14 +02:00
djmaze
c282e2c9b5
Replace messages jQuery drag/drop with native HTML5
2020-09-18 14:01:27 +02:00
djmaze
7713f459ac
Replace $().trigger() and document.createEvent() with element.dispatchEvent(new Event())
2020-09-17 21:18:39 +02:00
djmaze
7ac8143f34
Cleanup knockout commands and replaced EventKeyCode with native KeyboardEvent.key
2020-09-17 17:47:35 +02:00
djmaze
5d281486d0
Try to fix HtmlEditor isHtml() issue with SquireUI
...
Real fix should be made with the wrong use of modeToggle()
2020-09-17 16:10:27 +02:00
djmaze
9c18126843
Move some knockoutjs bindings, extenders and functions to Admin and User specific areas
2020-09-17 00:02:35 +02:00
djmaze
b904eca98e
Cleanup __APP__/getApp code
2020-09-15 09:29:25 +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
ecb9bd8ac1
Added the insertSignature code in SquireUI
...
Added hints/title (in english) to SquireUI toolbar buttons
2020-09-10 21:44:01 +02:00
djmaze
bdc961dfab
Improved Squire with the missing 'plain' mode.
2020-09-10 18:47:28 +02:00
djmaze
72cbdfa7f2
Split SquireUI from HtmlEditor.js and improved SquireUI with styling
2020-09-10 12:56:45 +02:00
djmaze
f2d194947d
Merge Objects prototype extensions
2020-09-04 17:07:35 +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
088945b636
v1.14.0-djmaze5
2020-08-31 16:33:40 +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
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
d5665463fe
Remove rl-anim feature and use no-mobile
2020-08-24 18:53:47 +02:00
djmaze
1e0586f124
upgraded yarn
2020-08-24 11:26:19 +02:00
djmaze
31bb7267ec
Revamp aBootstrapDropdowns
2020-08-24 11:14:35 +02:00
djmaze
0ccfa6a9b1
Bugfix: droppable area (folders) failed to scroll
2020-08-23 21:58:30 +02:00
djmaze
53451a1236
cleanup ko.js unused functions
2020-08-19 16:23:15 +02:00
djmaze
7a21694396
Drop windowResize/windowResizeCallback in favor of ResizeObservable
2020-08-19 12:34:05 +02:00
djmaze
d1c06a8ece
Extend the use of ResizeObserver by dropping all knockoutjs observable this.resizerTrigger in mail composer
...
As benefit this also drops the CustomEvent('resize.real')
2020-08-19 11:30:31 +02:00
djmaze
9f1ea1a0fd
Bugfix boostrap alerts.less was accidentally removed
...
Bugfix Date.fromNow('past'/'future') reversed
Replace Events[pub/sub]('interval.*') with setInterval()
Events[pub/sub] to native
Cleanup knockout extensions
Replaced momentToNode with proper HTML5 <time>
Cleanup Momentor
2020-08-14 20:35:39 +02:00
djmaze
6541a1de7c
Remove Common/Enums Magics.*
2020-08-13 22:58:41 +02:00
djmaze
382aef7ebb
Replaced ifvisible.js with simple drop-in to handle prefetch messages
2020-08-13 21:25:42 +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
4383281de6
Removed unused bootstrap code
2020-08-08 14:39:51 +02:00
djmaze
12c88e34b3
Removed pikaday (unused)
2020-07-30 12:05:47 +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
82bed1ed80
Cleanup array.length checks and for() to forEach()
2020-07-28 12:35:41 +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
43c92a82e6
Underscore.js _.delay() to native setTimeout()
2020-07-22 20:28:25 +02:00
djmaze
a82575a830
Underscore.js _.map() to native Array.map() (optional with Object.entries/values)
2020-07-22 20:09:31 +02:00
djmaze
961fa305c9
-1…*.indexOf() to native .includes()
2020-07-20 21:39:00 +02:00
djmaze
db2d95d684
JavaScript inArray()/indexOf() to .includes()
2020-07-20 14:33:33 +02:00
djmaze
0b0747b8dc
Upgraded some old JavaScript to ECMAScript 1.6
...
Removed some jQuery references
Added JavaScript Globals.$htmlCL for frequently used window.document.documentElement.classList
2020-07-15 14:25:51 +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
RainLoop Team
8a0be3212d
prettier --write
2019-07-04 22:19:24 +03:00
RainLoop Team
afef42ba5d
eslint fixes
2019-02-01 19:05:44 +03:00
RainLoop Team
791f0ff6ad
Small fixes and improvements
2018-07-10 00:05:02 +03:00
RainLoop
d76fde37df
Fix crippled contact names ( #1447 )
2017-09-27 20:58:15 +03:00
RainLoop Team
8da988fef2
Synchronize localizations from Transifex
...
Update package.json dependencies
Fix eslint errors
webpack 2 -> webpack 3
2017-06-24 22:26:27 +03:00
RainLoop Team
77fb74bc4a
Update package.json dependencies
2017-02-28 21:44:13 +03:00
RainLoop Team
0bbb2f14a4
1.10.4.183
...
---
Fixes:
New login form style display problem since version 1.10.4 (#1196 )
Collapse the TO: field in message view (#1199 )
Paste with HTML tags fails (#1193 )
2016-09-29 00:40:17 +03:00
RainLoop Team
e6e0b02849
Code refactoring
...
Flow first look
2016-09-10 02:27:53 +03:00
RainLoop Team
4ee1712fac
Fix glass styles
2016-09-03 02:51:17 +03:00
RainLoop Team
1526130bfc
Add asserts folder
...
Add @command decorator
2016-09-03 02:19:37 +03:00
RainLoop Team
a60ffc06e1
Update ckeditor
...
Avoid empty commands
Small fixes
2016-09-01 23:41:36 +03:00
RainLoop Team
962391e2a0
Add cmd interface
...
Code refactoring
2016-08-24 01:17:50 +03:00
RainLoop Team
e6e1a19477
Add cmd interface
2016-08-23 23:15:14 +03:00
RainLoop Team
17669b7be0
es5 -> es2015 (last stage)
...
Signature plugin fixes
Add view decorator
A large number of fixes
2016-08-20 20:30:16 +03:00
RainLoop Team
161ddc9920
More fixes for scrutinizer-ci (+ enable php)
2016-08-09 23:11:54 +03:00
RainLoop Team
59b32241bf
More fixes for scrutinizer-ci
2016-08-09 22:52:30 +03:00
RainLoop Team
062483f078
Small code optimization
2016-08-09 01:54:25 +03:00
RainLoop Team
c3985da102
Move almost all libs to node_modules
...
Update libs
2016-07-30 18:35:08 +03:00
RainLoop Team
cec53b111f
Code refactoring (5) (es5 -> es2015)
2016-07-17 18:05:15 +03:00
RainLoop Team
d7ab67a460
Code refactoring (4) (es5 -> es2015)
2016-07-15 22:54:37 +03:00
RainLoop Team
38a1041a73
Code refactoring (es5 -> es2015)
2016-07-07 00:03:30 +03:00
RainLoop Team
52e2698cdf
Add more strict rules (eslint)
2016-07-02 01:49:59 +03:00
RainLoop Team
8a6765faeb
Fix eslint version
2016-07-01 01:50:11 +03:00
RainLoop Team
8e8a041032
eslint (additional rules)
2016-07-01 01:05:04 +03:00
RainLoop Team
77a1d3f3df
jshint -> eslint
2016-06-27 23:55:37 +03:00
RainLoop Team
68890f8083
Add datepicker component ( #716 )
2016-06-24 00:57:35 +03:00
RainLoop Team
253a19987f
Fix arguments -> ...args
2016-06-09 19:46:03 +03:00
RainLoop Team
99cdd1f43f
Add use_native_scrollbars setting
2016-06-08 21:07:16 +03:00
RainLoop Team
08ccf55577
js -> jsx
2016-06-07 00:58:44 +03:00
RainLoop Team
b0ffd84ac6
Add mobile version (beta)
2016-05-01 04:07:29 +03:00
RainLoop Team
f64b63c549
Improve GUI ( #1014 )
2016-04-29 01:45:33 +03:00
RainLoop Team
445cd155e5
ES2015 first look / babeljs
2015-11-15 03:24:02 +03:00
RainLoop Team
87887373c1
Updated: ckeditor 4.5.3, jquery 1.11.3, openpgpjs 1.2.0
...
OpenPGP decrypt fix
+ Small fixes
2015-09-18 21:35:30 +03:00
RainLoop Team
42bac6aa2f
PreRelease fixes
2015-07-06 00:33:55 +04:00
RainLoop Team
34a9b8cbc5
OpenPGP improvements (first step)
...
openpgpjs: 0.7.2 -> 0.10.1
additional fixes
2015-06-23 01:34:52 +04:00
RainLoop Team
09334159c2
A lot small fixes
2015-06-23 01:34:51 +04:00
RainLoop Team
9a98bff931
Release fixes
2015-05-18 00:41:57 +04:00
RainLoop Team
f91f74fe7c
Release fixes
2015-05-12 20:33:02 +04:00
RainLoop Team
a11dcbed4b
Focused state for custom checkbox ( Closes #604 )
2015-04-25 17:50:10 +04:00
RainLoop Team
b062e9b190
Composer fixes
2015-04-16 21:58:30 +04:00