mirror of
https://github.com/TheAnachronism/docspell.git
synced 2025-06-06 07:05:59 +00:00
Allow to hide the search menu
This is more convenient on small screens
This commit is contained in:
parent
f45b40342c
commit
62111e5f93
@ -79,16 +79,13 @@ view model =
|
|||||||
|
|
||||||
viewGroup : ItemLightGroup -> Html Msg
|
viewGroup : ItemLightGroup -> Html Msg
|
||||||
viewGroup group =
|
viewGroup group =
|
||||||
div [] <|
|
div [ class "item-group" ]
|
||||||
List.concat
|
[ div [ class "ui horizontal divider" ]
|
||||||
[ [ div [ class "ui horizontal divider" ]
|
[ text group.name
|
||||||
[ text group.name
|
|
||||||
]
|
|
||||||
]
|
|
||||||
, [ div [ class "ui one column grid" ]
|
|
||||||
(List.map viewItem group.items)
|
|
||||||
]
|
|
||||||
]
|
]
|
||||||
|
, div [ class "ui one column grid" ]
|
||||||
|
(List.map viewItem group.items)
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
viewItem : ItemLight -> Html Msg
|
viewItem : ItemLight -> Html Msg
|
||||||
|
@ -17,6 +17,7 @@ type alias Model =
|
|||||||
, itemListModel : Comp.ItemCardList.Model
|
, itemListModel : Comp.ItemCardList.Model
|
||||||
, searchInProgress : Bool
|
, searchInProgress : Bool
|
||||||
, viewMode : ViewMode
|
, viewMode : ViewMode
|
||||||
|
, menuCollapsed : Bool
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -26,6 +27,7 @@ emptyModel =
|
|||||||
, itemListModel = Comp.ItemCardList.init
|
, itemListModel = Comp.ItemCardList.init
|
||||||
, searchInProgress = False
|
, searchInProgress = False
|
||||||
, viewMode = Listing
|
, viewMode = Listing
|
||||||
|
, menuCollapsed = False
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -36,6 +38,7 @@ type Msg
|
|||||||
| ItemCardListMsg Comp.ItemCardList.Msg
|
| ItemCardListMsg Comp.ItemCardList.Msg
|
||||||
| ItemSearchResp (Result Http.Error ItemLightList)
|
| ItemSearchResp (Result Http.Error ItemLightList)
|
||||||
| DoSearch
|
| DoSearch
|
||||||
|
| ToggleSearchMenu
|
||||||
|
|
||||||
|
|
||||||
type ViewMode
|
type ViewMode
|
||||||
|
@ -68,6 +68,11 @@ update key flags msg model =
|
|||||||
DoSearch ->
|
DoSearch ->
|
||||||
doSearch flags model
|
doSearch flags model
|
||||||
|
|
||||||
|
ToggleSearchMenu ->
|
||||||
|
( { model | menuCollapsed = not model.menuCollapsed }
|
||||||
|
, Cmd.none
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
doSearch : Flags -> Model -> ( Model, Cmd Msg )
|
doSearch : Flags -> Model -> ( Model, Cmd Msg )
|
||||||
doSearch flags model =
|
doSearch flags model =
|
||||||
|
@ -12,21 +12,33 @@ import Page.Home.Data exposing (..)
|
|||||||
view : Model -> Html Msg
|
view : Model -> Html Msg
|
||||||
view model =
|
view model =
|
||||||
div [ class "home-page ui padded grid" ]
|
div [ class "home-page ui padded grid" ]
|
||||||
[ div [ class "four wide column" ]
|
[ div
|
||||||
[ div [ class "ui top attached ablue-comp menu" ]
|
[ classList
|
||||||
[ h4 [ class "header item" ]
|
[ ( "sixteen wide mobile six wide tablet four wide computer column", True )
|
||||||
[ text "Search"
|
, ( "invisible hidden", model.menuCollapsed )
|
||||||
|
]
|
||||||
|
]
|
||||||
|
[ div
|
||||||
|
[ class "ui top attached ablue-comp menu"
|
||||||
|
]
|
||||||
|
[ a
|
||||||
|
[ class "item"
|
||||||
|
, href "#"
|
||||||
|
, onClick ToggleSearchMenu
|
||||||
|
]
|
||||||
|
[ i [ class "ui angle down icon" ] []
|
||||||
|
, text "Search"
|
||||||
]
|
]
|
||||||
, div [ class "right floated menu" ]
|
, div [ class "right floated menu" ]
|
||||||
[ a
|
[ a
|
||||||
[ class "item"
|
[ class "icon item"
|
||||||
, onClick ResetSearch
|
, onClick ResetSearch
|
||||||
, href "#"
|
, href "#"
|
||||||
]
|
]
|
||||||
[ i [ class "undo icon" ] []
|
[ i [ class "undo icon" ] []
|
||||||
]
|
]
|
||||||
, a
|
, a
|
||||||
[ class "item"
|
[ class "icon item"
|
||||||
, onClick DoSearch
|
, onClick DoSearch
|
||||||
, href ""
|
, href ""
|
||||||
]
|
]
|
||||||
@ -38,8 +50,28 @@ view model =
|
|||||||
[ Html.map SearchMenuMsg (Comp.SearchMenu.view model.searchMenuModel)
|
[ Html.map SearchMenuMsg (Comp.SearchMenu.view model.searchMenuModel)
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
, div [ class "twelve wide column" ]
|
, div
|
||||||
[ case model.viewMode of
|
[ classList
|
||||||
|
[ ( "sixteen wide mobile ten wide tablet twelve wide computer column", not model.menuCollapsed )
|
||||||
|
, ( "sixteen wide column", model.menuCollapsed )
|
||||||
|
]
|
||||||
|
]
|
||||||
|
[ div
|
||||||
|
[ classList
|
||||||
|
[ ( "invisible hidden", not model.menuCollapsed )
|
||||||
|
, ( "ui segment container", True )
|
||||||
|
]
|
||||||
|
]
|
||||||
|
[ a
|
||||||
|
[ class "ui basic large circular label"
|
||||||
|
, onClick ToggleSearchMenu
|
||||||
|
, href "#"
|
||||||
|
]
|
||||||
|
[ i [ class "search icon" ] []
|
||||||
|
, text "Search Menu…"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
, case model.viewMode of
|
||||||
Listing ->
|
Listing ->
|
||||||
if model.searchInProgress then
|
if model.searchInProgress then
|
||||||
resultPlaceholder
|
resultPlaceholder
|
||||||
|
Loading…
x
Reference in New Issue
Block a user