Hide sidebar by default on small devices

Closes: #1169
This commit is contained in:
eikek 2021-11-12 23:21:39 +01:00
parent 927c3dfac9
commit 28b4546607
4 changed files with 8 additions and 3 deletions

View File

@ -58,6 +58,7 @@
var elmFlags = { var elmFlags = {
"account": account, "account": account,
"pdfSupported": pdfSupported, "pdfSupported": pdfSupported,
"innerWidth": window.innerWidth,
"config": {{{flagsJson}}} "config": {{{flagsJson}}}
}; };
</script> </script>

View File

@ -125,7 +125,7 @@ init key url flags_ settings =
, userMenuOpen = False , userMenuOpen = False
, subs = Sub.none , subs = Sub.none
, uiSettings = settings , uiSettings = settings
, sidebarVisible = settings.sideMenuVisible , sidebarVisible = flags.innerWidth > 768 && settings.sideMenuVisible
, anonymousTheme = Data.UiTheme.Light , anonymousTheme = Data.UiTheme.Light
, anonymousUiLang = Messages.UiLanguage.English , anonymousUiLang = Messages.UiLanguage.English
, langMenuOpen = False , langMenuOpen = False

View File

@ -14,7 +14,7 @@ import Api
import App.Data exposing (..) import App.Data exposing (..)
import Browser exposing (UrlRequest(..)) import Browser exposing (UrlRequest(..))
import Browser.Navigation as Nav import Browser.Navigation as Nav
import Data.Flags import Data.Flags exposing (Flags)
import Data.ServerEvent exposing (ServerEvent(..)) import Data.ServerEvent exposing (ServerEvent(..))
import Data.UiSettings exposing (UiSettings) import Data.UiSettings exposing (UiSettings)
import Data.UiTheme import Data.UiTheme
@ -349,10 +349,13 @@ applyClientSettings texts model settings =
let let
setTheme = setTheme =
Ports.setUiTheme settings.uiTheme Ports.setUiTheme settings.uiTheme
flags =
model.flags
in in
Util.Update.andThen2 Util.Update.andThen2
[ \m -> [ \m ->
( { m | sidebarVisible = settings.sideMenuVisible } ( { m | sidebarVisible = flags.innerWidth > 768 && settings.sideMenuVisible }
, setTheme , setTheme
, Sub.none , Sub.none
) )

View File

@ -42,6 +42,7 @@ type alias Config =
type alias Flags = type alias Flags =
{ account : Maybe AuthResult { account : Maybe AuthResult
, pdfSupported : Bool , pdfSupported : Bool
, innerWidth : Int
, config : Config , config : Config
} }