Commit graph

281 commits

Author SHA1 Message Date
djmaze
e52b9abc61 Cleanup more CSS and JS
and merge/cleanup/redesign composer attachments
2021-02-22 15:16:33 +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
0d6335ed2c messagelist search without float
and remove some usePreviewPane
2021-02-15 20:05:51 +01:00
djmaze
b1c7bd2c50 Improve and cleanup isMobile 2021-02-15 16:05:38 +01:00
djmaze
10f9ce39d9 Revamp mobile including CSS flexbox for messageListItem 2021-02-15 15:20:22 +01:00
djmaze
997e0561ad Rename inbox() to mailbox() because we select any mailbox folder 2021-02-12 14:56:16 +01:00
djmaze
a2727c65fe Bugfix: messages list ArrowUp/ArrowDown broken 2021-02-12 12:00:06 +01:00
djmaze
4a8c9f8e18 Improved icon font view 2021-02-11 17:46:29 +01:00
djmaze
325f3c8eea Cleanup unused login error animations 2021-02-10 17:16:46 +01:00
djmaze
15631427b0 Use PharData to create Zip when ZipArchive is not available 2021-02-10 15:47:22 +01:00
djmaze
3fa9bc6963 Speedup messagelist hasCheckedOrSelectedLines 2021-02-08 22:04:24 +01:00
djmaze
57158bd55a Less float & less html is mobile view profit 2021-02-08 21:19:58 +01:00
djmaze
32c3f1f059 Cleanup links 2021-02-04 11:25:00 +01:00
djmaze
3983932bc0 Bugfix and cleanup rollup based javascript even more 2021-01-27 10:59:15 +01:00
djmaze
7ccc44616d Small code cleanups and fix translations 2021-01-27 00:26:31 +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
864da66b5f Replace viewDecorator and popupDecorator with proper AbstractView classes 2021-01-24 10:25:23 +01:00
djmaze
1535dd00f1 cleanup webpack export references 2021-01-22 16:32:08 +01:00
djmaze
b6f0b634fb Cleanup calls to Knockout observableArray
Improved Knockout observableArray
2021-01-22 12:23:20 +01:00
djmaze
4adc672ccd Cleanup Login and removed the ancient obsolete <center> with small redesign
Also placed the loading description above the login form
2020-11-26 10:41:53 +01:00
djmaze
4f8b07fe85 Remove more RainLoop standard/premium licensed code 2020-11-25 14:31:20 +01:00
djmaze
7db7d5545b Improved observables 2020-10-27 11:09:24 +01:00
djmaze
8d7e25fc7c Bugfix: subscribables should be created after computables 2020-10-26 14:44:34 +01:00
djmaze
250caab957 Bugfix: create computable should be after property defines 2020-10-26 13:43:56 +01:00
djmaze
3eb6ab1ef7 Improved knockout observables management to prevent memory leaks 2020-10-26 12:54:03 +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
76c4f62186 Improved reviveFromJson() for *Model 2020-10-23 15:15:54 +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
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
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
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
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
e566494a87 Bugfix: move messages button [Ctrl] copy method 2020-10-01 11:11:14 +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
c7054ff56c Resolve https://github.com/the-djmaze/snappymail/issues/14
There this works
2020-09-26 10:20:24 +02:00
m hagoort
5e7f531c7f Revamp shortcuts handler (not tested yet) 2020-09-26 00:02:29 +02:00
djmaze
302f2847b8 Resolve https://github.com/the-djmaze/rainloop-webmail/issues/8 2020-09-23 10:08:34 +02:00
djmaze
662e6b3466 cleanup some code 2020-09-22 10:54:00 +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
ea2e0c09d8 improved html5 d&d 2020-09-21 09:29:00 +02:00
djmaze
b66e68a3b1 Merge some parts of initByJson and initUpdateByMessageJson
Cleanup messageListChecked handling
2020-09-20 11:29:31 +02:00
djmaze
c282e2c9b5 Replace messages jQuery drag/drop with native HTML5 2020-09-18 14:01:27 +02:00
djmaze
467f615713 Move Knoin routOff, routOn, routReload & setHash to rl.route.* 2020-09-16 20:35:29 +02:00
djmaze
b904eca98e Cleanup __APP__/getApp code 2020-09-15 09:29:25 +02:00
djmaze
29cf711a6a Converted *Ajax into *Fetch (because we use the Fetch API, not jQuery.ajax) 2020-09-14 19:40:56 +02:00
djmaze
f2d194947d Merge Objects prototype extensions 2020-09-04 17:07:35 +02:00
djmaze
097fb4896d Bugfix: invalid settingsGet in dev/Stores/Admin/App.js
Cleanup login/logout location reloading
2020-09-04 14:36:24 +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
b837013cfb Replaced dev/Common/ClientStorageDriver/* with webstorage polyfill
Cleanup some other code
2020-09-03 12:51:15 +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
2bf96ab33e Bugfix: typo in querySelectorAll 2020-08-30 17:40:54 +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
496c8f59ae Removed User About Screen, it is unused 2020-08-24 21:05:32 +02:00
djmaze
b0942a7ff7 Move popupVisibility to knoin 2020-08-23 21:51:26 +02:00
djmaze
d88855ebd9 Remove addHook/runHook system as it is never used 2020-08-22 01:04:15 +02:00
djmaze
996723a486 Removed: KnockoutJS 'hasFocus:' because HTML5 has autofocus=""
Knoin.js now searches for [autofocus] and handles it
2020-08-22 01:03:03 +02:00
djmaze
7a21694396 Drop windowResize/windowResizeCallback in favor of ResizeObservable 2020-08-19 12:34:05 +02:00
djmaze
b634a50e0f Remove triggers rl.tooltips.diactivate and rl.tooltips.activate 2020-08-19 11:31:18 +02:00
djmaze
97a73c6639 Replace timeOutAction() with debounce
Replace delegateRun()
Revert my throttle/debounce setTimeout() to Function.prototype[throttle/debounce]
2020-08-18 20:24:17 +02:00
djmaze
f6a55898c7 Removed isNormal() because 'null == undefined' so 'null != value' is sufficient 2020-08-17 21:57:56 +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
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
ecbe543b15 cleanup webpack 2020-08-07 16:28:30 +02:00
djmaze
bbd9f49dcd $.proxy is deprecated
$.trim is deprecated
2020-08-06 18:24:46 +02:00
djmaze
e1b274fcb4 Bugfix: scrollTop/scrollLeft never worked because .b-content has overflow:auto not the sub-div .content 2020-08-06 16:14:50 +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
996a71ad8a missed one _.delay() to setTimeout() 2020-07-22 20:29:48 +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
a5d41edb24 Underscore.js _.each() to native Array.forEach() (optional with Object.entries/values) 2020-07-22 14:49:18 +02:00
djmaze
9c0072d626 Underscore.js _.find() to native Array.find() 2020-07-22 10:43:19 +02:00
djmaze
eb15c6e45f Changes _.filter(array) to native array.filter() 2020-07-20 21:29:44 +02:00
djmaze
af136f46c4 _.bind(function, object) to function.bind(object) 2020-07-20 15:47:33 +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
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
32ceafa37f Add Gmail XAUTH support 2019-12-31 20:44:41 +03:00
RainLoop Team
0c38f42197 Small improvements 2019-07-11 21:45:47 +03:00
RainLoop Team
8a0be3212d prettier --write 2019-07-04 22:19:24 +03:00
RainLoop Team
e449261277 autocomplete attributes 2019-03-30 01:45:12 +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