djmaze
7db7d5545b
Improved observables
2020-10-27 11:09:24 +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
500575dc32
Sync is already there
...
https://github.com/the-djmaze/snappymail/issues/24
2020-10-21 21:53:55 +02:00
djmaze
15e07a73e9
merge all Model JSON @Object parsers into a reviveFromJson()
2020-10-18 19:46:47 +02:00
djmaze
4806dc968d
onkeypress is obsolete
2020-10-15 14:43:04 +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
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
c3a2da65df
Revamp array filtering
...
Replaced fakeMd5 with new Jua.randomId
Cleanup more code
2020-10-02 23:54:15 +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
0181d9645a
Rebranding to SnappyMail because this fork of RainLoop has way too many changes to be compatible.
2020-09-23 17:23:04 +02:00
djmaze
e1d3a143f4
Removed simplestatemanager, use @media queries
2020-09-20 12:33:33 +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
28fb9a4cbd
Move hideLoading into AbstractApp
2020-09-16 23:19:34 +02:00
djmaze
467f615713
Move Knoin routOff, routOn, routReload & setHash to rl.route.*
2020-09-16 20:35:29 +02:00
djmaze
03a40f3249
Remove unused AbstractBoot
2020-09-16 20:01:47 +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
e1f1a3aa12
Embed boot.min.js and boot.min.css into index.html for fast response
2020-09-06 11:13:43 +02:00
djmaze
f2d194947d
Merge Objects prototype extensions
2020-09-04 17:07:35 +02:00
djmaze
0647b5201f
Bugfix: i've broken the download() function
2020-09-04 16:11:57 +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
fcaa2fd6de
Don't use webpack on boot.js
2020-09-03 16:34:23 +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
e3e5929b21
Removed more non-community (aka Prem/Premium/License) code
2020-08-24 20:56:14 +02:00
djmaze
89395d5ae4
Drop custom_login_link and custom_logout_link
2020-08-24 11:17:42 +02:00
djmaze
31bb7267ec
Revamp aBootstrapDropdowns
2020-08-24 11:14:35 +02:00
djmaze
d88855ebd9
Remove addHook/runHook system as it is never used
2020-08-22 01:04:15 +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
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
1d4224d733
Drop License code (not used by comunity)
2020-08-18 20:45:43 +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
29367a0ea7
Use proper HTMLTemplateElement for all knockoutjs templates
2020-08-14 23:09:36 +02:00
djmaze
efc2dd89e1
Momentor.reload to CustomEvent
2020-08-14 21:19:06 +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
55f74c5d10
Compress boot.js even more
2020-08-10 11:32:05 +02:00
djmaze
ecbe543b15
cleanup webpack
2020-08-07 16:28:30 +02:00
djmaze
e42c94d471
Bugfix: reloadDomainList() failed due to wrong recode of underscore.js map() to Object.entries()
2020-07-30 12:02:43 +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
dc233bfc90
Bugfix: this.moveCache is an Object not an Array
2020-07-27 12:14:47 +02:00