-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: updates to the minimal mode version #146
Conversation
crfmc
commented
Jun 25, 2024
•
edited
Loading
edited
- (Sehi) Implement tooltips for each track
- Implement popovers with instructions for interaction/interpretation
- Upload images to show in the documentation
- Relocate the chromosome search bar to the center
- (Non-minimal-mode) add navigation buttons and modals/popover
…inimal_mode_updates
-refactor: move modals into new components
-chore: implement popover content -refactor: reference new modal components
-style: style content
-style: modal styles -feat: popover contents
-refactor: correct popover/modal headers for accessibility
-chore: update overlapping driver image
-feat: update indel blocks/images
-refactor/accessibility: order tabIndex -fix: gosling panel padding bug
src/ui/trackData.ts
Outdated
|
||
// TODO: Not ideal to hard coded! | ||
// The heights of each track | ||
export const getTrackData = ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now that this contains the documents, we can clarify this better with the name
export const getTrackData = ( | |
export const getTrackDocData = ( |
src/App.tsx
Outdated
import 'bootstrap/dist/css/bootstrap.min.css'; | ||
import * as bootstrap from 'bootstrap/dist/js/bootstrap.bundle.min'; | ||
|
||
import { Track, getTrackData } from './ui/trackData.js'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
import { Track, getTrackData } from './ui/trackData.js'; | |
import { Track, getTrackDocData } from './ui/trackData.js'; |
src/App.tsx
Outdated
const trackTooltips = useMemo(() => { | ||
// calculate the offset by the Genome View | ||
const genomeViewHeight = Math.min(600, visPanelWidth); | ||
const TRACK_DATA = getTrackData(isMinimalMode); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
const TRACK_DATA = getTrackData(isMinimalMode); | |
const TRACK_DATA = getTrackDocData(isMinimalMode); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great to me! Thanks a lot for the changes you made.
I was wondering how you addressed the styling issue (the potential conflict with Bootstrap). I am wondering this since this may happen to any other projects using Gosling.
A very minor thing – I see now there is a long padding (longer than the padding in the non-minamal-mode Chromoscope) at the bottom (i.e., between the bottom edge of the browser and the alignment views). I think this makes it look like it is a bit off. Also, another tiny thing – there is now a grey rectangle overlayed underneath the "jump to the top" button which might be due to the conflict with Bootstrap. |
-style: decrease padding -style: correct navigation button text
-feat: update text, reformat
-chore: update coverage image and text -feat: add navigation buttons to normal mode
src/App.tsx
Outdated
@@ -52,7 +59,7 @@ function App(props: RouteComponentProps) { | |||
const VIS_PADDING = { | |||
top: isMinimalMode ? 0 : 60, | |||
right: isMinimalMode ? 0 : 60, | |||
bottom: isMinimalMode ? 0 : 60, | |||
bottom: 0, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
src/App.tsx
Outdated
className="navigation-button split-right" | ||
tabIndex={1} | ||
data-bs-toggle="modal" | ||
data-bs-target="#genome-view-modal" | ||
> | ||
<svg className="button question-mark" viewBox={ICONS.QUESTION_CIRCLE_FILL.viewBox}> | ||
<title>Question Mark</title> | ||
{ICONS.QUESTION_CIRCLE_FILL.path.map(p => ( | ||
<path fill="currentColor" key={p} d={p} /> | ||
))} | ||
</svg> | ||
</button> | ||
</div> | ||
<div className="navigation-button-container split navigation-button-variant"> | ||
<button | ||
className="navigation-button split-left" | ||
tabIndex={1} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should the modal view be shown when a user clicks on the question mark of either genome view or variant view in the normal mode? It seems like the modal view is only shown in the minimal mode, and clicking on the question marks does not do anything on the normal mode.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see labels of the Alignment view on the right side have unnecessary padding now that question marks are not displayed.
Could we remove such spaces, e.g., in coverage.ts:
- title: ' Coverage',
+ title: isLeft ? ' Coverage' : 'Coverage',
We can remove the space for Sequence and Alignment tracks as well at:
Line 183 in 23537dd
title: ' Sequence', |
Line 101 in 23537dd
title: ' Alignment', |
-style: add padding between navigation buttons
-fix: render modals in normal mode -style: make modal styles global