Hide navbar in fullscreen view mode

This commit is contained in:
Andrés Moya 2021-03-18 16:52:22 +01:00 committed by Andrey Antukh
parent d2d1eed68a
commit dcb913d9fa
6 changed files with 82 additions and 85 deletions

View file

@ -6,19 +6,6 @@ $width-settings-bar: 16rem;
grid-template-columns: 1fr; grid-template-columns: 1fr;
user-select: none; user-select: none;
&.fullscreen {
.viewer-header {
opacity: 0;
&:hover {
opacity: 1;
}
}
.viewer-content {
grid-row: 1 / span 2;
}
}
.viewer-header { .viewer-header {
grid-column: 1 / span 1; grid-column: 1 / span 1;
grid-row: 1 / span 1; grid-row: 1 / span 1;
@ -30,6 +17,25 @@ $width-settings-bar: 16rem;
} }
} }
.fullscreen .handoff-layout {
.viewer-header {
width: 100%;
position: fixed;
top: -39px;
left: 0;
transition: top 400ms ease 300ms;
}
& .viewer-header:hover {
top: 0;
transition: top 200ms;
}
.viewer-content {
grid-row: 1 / span 2;
}
}
.handoff-layout { .handoff-layout {
.viewer-preview { .viewer-preview {
flex-wrap: nowrap; flex-wrap: nowrap;

View file

@ -4,19 +4,6 @@
grid-template-columns: 1fr; grid-template-columns: 1fr;
user-select: none; user-select: none;
&.fullscreen {
.viewer-header {
opacity: 0;
&:hover {
opacity: 1;
}
}
.viewer-content {
grid-row: 1 / span 2;
}
}
.viewer-header { .viewer-header {
grid-column: 1 / span 1; grid-column: 1 / span 1;
grid-row: 1 / span 1; grid-row: 1 / span 1;
@ -27,3 +14,22 @@
grid-row: 2 / span 1; grid-row: 2 / span 1;
} }
} }
.fullscreen .viewer-layout {
& .viewer-header {
width: 100%;
position: fixed;
top: -39px;
left: 0;
transition: top 400ms ease 300ms;
}
& .viewer-header:hover {
top: 0;
transition: top 200ms;
}
& .viewer-content {
grid-row: 1 / span 2;
}
}

View file

@ -342,9 +342,7 @@
pparams (:path-params route) pparams (:path-params route)
qparams (:query-params route)] qparams (:query-params route)]
(rx/of (rx/of
(if (= :handoff section) (rt/nav :viewer pparams (assoc qparams :section section)))))))
(rt/nav :handoff pparams qparams)
(rt/nav :viewer pparams (assoc qparams :section section))))))))
(defn set-current-frame [frame-id] (defn set-current-frame [frame-id]

View file

@ -20,6 +20,7 @@
[app.main.store :as st] [app.main.store :as st]
[app.main.ui.auth :refer [auth]] [app.main.ui.auth :refer [auth]]
[app.main.ui.auth.verify-token :refer [verify-token]] [app.main.ui.auth.verify-token :refer [verify-token]]
[app.main.ui.components.fullscreen :as fs]
[app.main.ui.context :as ctx] [app.main.ui.context :as ctx]
[app.main.ui.cursors :as c] [app.main.ui.cursors :as c]
[app.main.ui.dashboard :refer [dashboard]] [app.main.ui.dashboard :refer [dashboard]]
@ -80,11 +81,6 @@
{:path-params ::viewer-path-params {:path-params ::viewer-path-params
:query-params ::viewer-query-params}}] :query-params ::viewer-query-params}}]
["/handoff/:file-id/:page-id"
{:name :handoff
:conform {:path-params ::viewer-path-params
:query-params ::viewer-query-params}}]
(when *assert* (when *assert*
["/debug/icons-preview" :debug-icons-preview]) ["/debug/icons-preview" :debug-icons-preview])
@ -151,22 +147,17 @@
section (get-in route [:query-params :section] :interactions) section (get-in route [:query-params :section] :interactions)
file-id (get-in route [:path-params :file-id]) file-id (get-in route [:path-params :file-id])
page-id (get-in route [:path-params :page-id])] page-id (get-in route [:path-params :page-id])]
[:& fs/fullscreen-wrapper {}
(if (= section :handoff)
[:& handoff {:page-id page-id
:file-id file-id
:index index
:token token}]
[:& viewer-page {:page-id page-id [:& viewer-page {:page-id page-id
:file-id file-id :file-id file-id
:section section :section section
:index index :index index
:token token}]) :token token}])])
:handoff
(let [file-id (get-in route [:path-params :file-id])
page-id (get-in route [:path-params :page-id])
index (get-in route [:query-params :index])
token (get-in route [:query-params :token])]
[:& handoff {:page-id page-id
:file-id file-id
:index index
:token token}])
:render-object :render-object
(do (do

View file

@ -14,7 +14,6 @@
[app.main.data.viewer.shortcuts :as sc] [app.main.data.viewer.shortcuts :as sc]
[app.main.refs :as refs] [app.main.refs :as refs]
[app.main.store :as st] [app.main.store :as st]
[app.main.ui.components.fullscreen :as fs]
[app.main.ui.handoff.left-sidebar :refer [left-sidebar]] [app.main.ui.handoff.left-sidebar :refer [left-sidebar]]
[app.main.ui.handoff.render :refer [render-frame-svg]] [app.main.ui.handoff.render :refer [render-frame-svg]]
[app.main.ui.handoff.right-sidebar :refer [right-sidebar]] [app.main.ui.handoff.right-sidebar :refer [right-sidebar]]
@ -97,7 +96,6 @@
(mf/use-effect on-mount) (mf/use-effect on-mount)
(hooks/use-shortcuts sc/shortcuts) (hooks/use-shortcuts sc/shortcuts)
[:& fs/fullscreen-wrapper {}
[:div.handoff-layout [:div.handoff-layout
[:& header [:& header
{:data data {:data data
@ -113,7 +111,7 @@
:state state :state state
:index index :index index
:page-id page-id :page-id page-id
:file-id file-id}]]]])) :file-id file-id}]]]))
(mf/defc handoff (mf/defc handoff
[{:keys [file-id page-id index token] :as props}] [{:keys [file-id page-id index token] :as props}]

View file

@ -21,7 +21,6 @@
[app.main.refs :as refs] [app.main.refs :as refs]
[app.main.store :as st] [app.main.store :as st]
[app.main.ui.comments :as cmt] [app.main.ui.comments :as cmt]
[app.main.ui.components.fullscreen :as fs]
[app.main.ui.hooks :as hooks] [app.main.ui.hooks :as hooks]
[app.main.ui.icons :as i] [app.main.ui.icons :as i]
[app.main.ui.viewer.header :refer [header]] [app.main.ui.viewer.header :refer [header]]
@ -243,7 +242,6 @@
(mf/use-effect on-mount) (mf/use-effect on-mount)
(hooks/use-shortcuts sc/shortcuts) (hooks/use-shortcuts sc/shortcuts)
[:& fs/fullscreen-wrapper {}
[:div.viewer-layout [:div.viewer-layout
[:& header [:& header
{:data data {:data data
@ -259,7 +257,7 @@
[:& main-panel {:data data [:& main-panel {:data data
:section section :section section
:state state :state state
:index index}]]]])) :index index}]]]))
;; --- Component: Viewer Page ;; --- Component: Viewer Page