Commit graph

254 commits

Author SHA1 Message Date
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
RainLoop Team 0ea982671b PreRelease 1.8.3 2015-04-14 00:24:15 +04:00
RainLoop Team 1d943356f5 Simple mp3 player 2015-04-10 12:17:49 +04:00
RainLoop Team 351c12c002 Welcome page branding option 2015-04-10 02:07:03 +04:00
RainLoop Team acb013fbb5 Added "Enforce 2-Step verification" setting 2015-04-07 20:40:28 +04:00
RainLoop Team b7709c8117 Code refactoring 2015-04-07 20:40:27 +04:00
RainLoop Team 80c5e35a29 New styles for toltips (Opentip)
Selector new functionality
x-script tag support for templates
2015-04-02 01:59:03 +04:00
RainLoop Team 18931eaca0 Smooth reload animation 2015-03-31 04:12:05 +04:00
RainLoop Team 4a90e2406c Compose focus fixes (#547) 2015-03-21 02:22:06 +04:00
RainLoop Team 3090b44dae Interface fixes 2015-03-16 02:01:51 +04:00
RainLoop Team 147dce6e4a Momentor (moment optimization) 2015-03-07 04:41:38 +04:00
RainLoop Team 2616b911e1 Release commit 2015-02-17 19:52:33 +04:00
RainLoop Team 1a85330770 Small fixes and code refactoring 2015-02-16 01:58:24 +04:00
RainLoop Team b01f298b7b Release commit 2015-02-15 04:30:21 +04:00
RainLoop Team 1119022916 Added individual signatures for every identity. 2015-02-08 05:12:34 +04:00
RainLoop Team 79233ad83c Added counters of unread messages for additional accounts (#377) 2015-02-02 00:48:49 +04:00
RainLoop Team 0152f1583b Sieve filters (pre release) 2015-01-29 01:24:58 +04:00
RainLoop Team 63a286a6b6 Sieve test connection 2015-01-28 20:27:23 +04:00
RainLoop Team b42ce01e7e Code refactoring (Translator, Stores, ko) 2015-01-26 03:13:12 +04:00
RainLoop Team 68cc322bd5 Sieve filters (interface/vacation action) 2015-01-20 01:20:12 +04:00
RainLoop Team bce962328d Release fixes 2015-01-09 03:31:31 +04:00
RainLoop Team e4b286e257 Merged from sub repository (filters - step 4) 2014-12-18 01:02:29 +04:00
RainLoop Team ec7324b061 Merged from sub repository (updated ckeditor, filters - step 2) 2014-12-01 21:36:46 +04:00
RainLoop Team c2b7632c13 Added knockoutjs components (step 1) 2014-10-29 02:58:21 +04:00
RainLoop Team d8321a522e ko cleaning up 2014-10-04 15:58:01 +04:00
RainLoop Team 36bdce3084 Remove tags support from code. 2014-10-03 23:09:13 +04:00
RainLoop Team 7a374ebe03 Fixed Opening an email with specific content „hangs” RainLoop in the browser (Closes #308)
Code refactoring
2014-09-05 19:53:44 +04:00
RainLoop Team 27d4bd74ad browserify -> webpack
Code refactoring
2014-09-05 02:49:03 +04:00
RainLoop Team ccbf04cb67 Code refactoring
Fixed languages popup
Release commit
2014-09-02 04:15:31 +04:00
RainLoop Team fa795947cf Code refactoring 2014-09-01 20:05:32 +04:00
RainLoop Team b4f416b6f8 Code refactoring 2014-08-27 19:59:44 +04:00
RainLoop Team e600e32ddb CommonJS (research/5) 2014-08-25 19:49:01 +04:00