mirror of
https://github.com/the-djmaze/snappymail.git
synced 2024-09-20 15:45:55 +08:00
Improve and cleanup isMobile
This commit is contained in:
parent
10f9ce39d9
commit
b1c7bd2c50
|
@ -858,11 +858,11 @@ class AppUser extends AbstractApp {
|
|||
}
|
||||
}
|
||||
|
||||
initHorizontalLayoutResizer(sClientSideKeyName) {
|
||||
initHorizontalLayoutResizer() {
|
||||
const top = doc.querySelector('.b-message-list-wrapper'),
|
||||
bottom = doc.querySelector('.b-message-view-wrapper'),
|
||||
fDisable = bDisable => {
|
||||
this.setLayoutResizer(top, bottom, sClientSideKeyName,
|
||||
this.setLayoutResizer(top, bottom, ClientSideKeyName.MessageListSize,
|
||||
(bDisable || !$htmlCL.contains('rl-bottom-preview-pane')) ? null : 'height');
|
||||
};
|
||||
if (top && bottom) {
|
||||
|
|
|
@ -8,7 +8,7 @@ export const $htmlCL = doc.documentElement.classList;
|
|||
export const Settings = rl.settings;
|
||||
|
||||
/** @media screen and (max-width: 600px) { */
|
||||
export const isMobile = () => $htmlCL.contains('rl-mobile'); // || rl.settings.app('mobile')
|
||||
export const isMobile = () => $htmlCL.contains('rl-mobile');
|
||||
|
||||
export const dropdownVisibility = ko.observable(false).extend({ rateLimit: 0 });
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import ko from 'ko';
|
||||
|
||||
import { doc, $htmlCL/*, isMobile*/ } from 'Common/Globals';
|
||||
import { doc, $htmlCL } from 'Common/Globals';
|
||||
import { isNonEmptyArray } from 'Common/Utils';
|
||||
|
||||
let currentScreen = null,
|
||||
|
@ -9,7 +9,6 @@ let currentScreen = null,
|
|||
|
||||
const SCREENS = {},
|
||||
autofocus = dom => {
|
||||
// if (!isMobile()) {
|
||||
const af = dom.querySelector('[autofocus]');
|
||||
af && af.focus();
|
||||
};
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { Capa } from 'Common/Enums';
|
||||
import { Focused, ClientSideKeyName } from 'Common/EnumsUser';
|
||||
import { Focused } from 'Common/EnumsUser';
|
||||
import { doc, leftPanelDisabled, leftPanelType, moveAction, Settings, isMobile } from 'Common/Globals';
|
||||
import { pString, pInt } from 'Common/Utils';
|
||||
import { getFolderFromCacheList, getFolderFullNameRaw, getFolderInboxName } from 'Common/Cache';
|
||||
|
@ -56,9 +56,7 @@ export class MailBoxUserScreen extends AbstractScreen {
|
|||
AppStore.focusedState(Focused.None);
|
||||
AppStore.focusedState(Focused.MessageList);
|
||||
|
||||
if (isMobile()) {
|
||||
leftPanelDisabled(true);
|
||||
}
|
||||
isMobile() && leftPanelDisabled(true);
|
||||
|
||||
if (Settings.capa(Capa.Folders)) {
|
||||
leftPanelType('');
|
||||
|
@ -118,9 +116,7 @@ export class MailBoxUserScreen extends AbstractScreen {
|
|||
*/
|
||||
onBuild() {
|
||||
if (!isMobile()) {
|
||||
setTimeout(() =>
|
||||
rl.app.initHorizontalLayoutResizer(ClientSideKeyName.MessageListSize)
|
||||
, 1);
|
||||
setTimeout(() => rl.app.initHorizontalLayoutResizer(), 1);
|
||||
}
|
||||
|
||||
doc.addEventListener('click', event =>
|
||||
|
|
|
@ -104,9 +104,7 @@ export class SettingsUserScreen extends AbstractSettingsScreen {
|
|||
keyScope(KeyState.Settings);
|
||||
leftPanelType('');
|
||||
|
||||
if (isMobile()) {
|
||||
leftPanelDisabled(true);
|
||||
}
|
||||
isMobile() && leftPanelDisabled(true);
|
||||
}
|
||||
|
||||
setSettingsTitle() {
|
||||
|
|
|
@ -42,9 +42,9 @@ class SettingsUserStore {
|
|||
subscribers() {
|
||||
const htmlCL = doc.documentElement.classList;
|
||||
this.layout.subscribe(value => {
|
||||
htmlCL.toggle('rl-no-preview-pane', isMobile() || Layout.NoPreview === value);
|
||||
htmlCL.toggle('rl-side-preview-pane', !isMobile() && Layout.SidePreview === value);
|
||||
htmlCL.toggle('rl-bottom-preview-pane', !isMobile() && Layout.BottomPreview === value);
|
||||
htmlCL.toggle('rl-no-preview-pane', Layout.NoPreview === value);
|
||||
htmlCL.toggle('rl-side-preview-pane', Layout.SidePreview === value);
|
||||
htmlCL.toggle('rl-bottom-preview-pane', Layout.BottomPreview === value);
|
||||
dispatchEvent(new CustomEvent('rl-layout', {detail:value}));
|
||||
});
|
||||
}
|
||||
|
|
|
@ -333,6 +333,7 @@ html.rl-left-panel-none #rl-right {
|
|||
width: 10px !important;
|
||||
}
|
||||
|
||||
html.rl-mobile,
|
||||
html.rl-no-preview-pane {
|
||||
|
||||
#rl-sub-left {
|
||||
|
@ -349,11 +350,11 @@ html.rl-no-preview-pane {
|
|||
}
|
||||
}
|
||||
|
||||
html.rl-side-preview-pane #rl-right .resizer {
|
||||
html.rl-side-preview-pane:not(.rl-mobile) #rl-right .resizer {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
html.rl-bottom-preview-pane {
|
||||
html.rl-bottom-preview-pane:not(.rl-mobile) {
|
||||
|
||||
#rl-sub-left {
|
||||
right: @rlBottomMargin !important;
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
|
||||
html.rl-mobile,
|
||||
html.rl-no-preview-pane {
|
||||
.messageList.message-selected {
|
||||
display: none;
|
||||
|
|
|
@ -1,13 +1,3 @@
|
|||
html.rl-no-preview-pane {
|
||||
|
||||
.messageView {
|
||||
display: none;
|
||||
|
||||
&.message-selected {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.messageView {
|
||||
|
||||
|
@ -591,7 +581,15 @@ html.rl-resizer .b-message-view-iframe-backdrop {
|
|||
display: block !important;
|
||||
}
|
||||
|
||||
html.rl-mobile .messageView,
|
||||
html.rl-no-preview-pane .messageView {
|
||||
|
||||
display: none;
|
||||
|
||||
&.message-selected {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.toolbar {
|
||||
padding-left: @rlMainBorderSize;
|
||||
}
|
||||
|
@ -607,7 +605,7 @@ html.rl-no-preview-pane .messageView {
|
|||
}
|
||||
}
|
||||
|
||||
html.rl-bottom-preview-pane .messageView {
|
||||
html.rl-bottom-preview-pane:not(.rl-mobile) .messageView {
|
||||
.b-content {
|
||||
bottom: @rlBottomMargin;
|
||||
}
|
||||
|
|
|
@ -1090,7 +1090,6 @@ class ComposePopupView extends AbstractViewPopup {
|
|||
}
|
||||
|
||||
setFocusInPopup() {
|
||||
// isMobile() ||
|
||||
setTimeout(() => {
|
||||
if (!this.to()) {
|
||||
this.to.focused(true);
|
||||
|
|
|
@ -160,9 +160,7 @@ class FilterPopupView extends AbstractViewPopup {
|
|||
}
|
||||
|
||||
onShowWithDelay() {
|
||||
if (this.isNew() && this.filter()/* && !isMobile()*/) {
|
||||
this.filter().nameFocused(true);
|
||||
}
|
||||
this.isNew() && this.filter() && this.filter().nameFocused(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -72,7 +72,6 @@ class FolderCreatePopupView extends AbstractViewPopup {
|
|||
}
|
||||
|
||||
onShowWithDelay() {
|
||||
// isMobile() ||
|
||||
this.folderNameFocused(true);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -166,9 +166,7 @@ class IdentityPopupView extends AbstractViewPopup {
|
|||
}
|
||||
|
||||
onShowWithDelay() {
|
||||
if (!this.owner()/* && !isMobile()*/) {
|
||||
this.emailFocused(true);
|
||||
}
|
||||
this.owner() || this.emailFocused(true);
|
||||
}
|
||||
|
||||
onHideWithDelay() {
|
||||
|
|
|
@ -49,7 +49,6 @@ class TwoFactorTestPopupView extends AbstractViewPopup {
|
|||
}
|
||||
|
||||
onShowWithDelay() {
|
||||
// isMobile() ||
|
||||
this.codeFocused(true);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,11 +19,9 @@ export class MenuSettingsUserView extends AbstractViewLeft {
|
|||
}
|
||||
|
||||
onBuild(dom) {
|
||||
if (isMobile()) {
|
||||
dom.addEventListener('click', event =>
|
||||
isMobile() && dom.addEventListener('click', event =>
|
||||
event.target.closestWithin('.b-settings-menu .e-item.selectable', dom) && leftPanelDisabled(true)
|
||||
);
|
||||
}
|
||||
|
||||
shortcuts.add('arrowup,arrowdown', '', KeyState.Settings,
|
||||
settingsMenuKeysHandler(dom.querySelectorAll('.b-settings-menu .e-item')));
|
||||
|
|
Loading…
Reference in a new issue