- Fixed a bug preventing folders from being removed with
Remove()
. - There was an issue introduced by 0.15.0 where the guify-container covers all content and has a higher z-index than the content underneath, eating all touch/click events. To fix this, the z-index of guify-container is now unset, and the sub-elements are given the z-index that guify-container used to get (9999).
- POTENTIALLY BREAKING CHANGE: Modified the way the GUI elements are constructed internally. If you're modifying the internals in your CSS, make sure everything looks right!
- Made menu bar visible in fullscreen
- If
panelMode
isouter
, the menu will becomeinner
when fullscreen - Introduced
.guify-fullscreen
CSS class that attaches to the root when fullscreen is enabled - Fixed up
barMode = "none"
behavior to match docs - Added
panelOverflowBehavior
parameter to GUI opts, which lets you make the panel scrollable if it grows beyond the edge of the container. - Fixed brief display of incorrect value when initializing
range
anddisplay
- Added a bit of top margin for
title
components - Fixed styling issues on Safari iOS for
text
,range
, andcheckbox
- Fixed incorrect font use on Safari iOS.
- Added an
inputFontFamily
param to theme objects, allowing a secondary font just for input fields - If you provide your own font URL to the theme object, the default
"Hack"
font won't be downloaded - Made
range
andinterval
components respectprecision
more closely.precision
now affects the value itself, meaning the value and its display will always match. - Fixed a bug in
interval
components with alog
scale, wherein setting the value text would cause the wrong value to be used
- Fixed vertical alignment of arrow in
folder
component
- Fixed extra padding below
range
andcolor
components - Fixed vertical alignment of
title
component
- Fixed incorrect
interval
height and background - Made component height
2rem
by default- Should fix component height issues on some pages
- Reduced line height for
display
component
- Allow setting input listening mode on
text
components using a newlistenMode
option. New values are"input"
(default) and"change"
. - Rewrote
interval
component, and added the new features from therange
improvements in 0.13.0.steps
has been removed for logarithmic sliders.- You can now specify
precision
for the readouts.
- Added the ability to enable/disable components with
SetEnabled(Bool)
.- I added new theme elements
"colorTextDisabled"
and"colorComponentBackgroundDisabled"
to support this. If you're using a custom theme, make sure you add values for these! - This involved totally rewriting the way styles are added to components internally. This shouldn't cause any issues externally, but if you encounter anything, please file an issue!
- I added new theme elements
- Updated dependencies
- Redid NPM build scripts. See readme for updated commands
- Fixed checkbox bug reported in #6
- Checkbox can now be toggled by clicking anywhere in the row
- Made it possible to have nested folders with identical names
Thank you to @indivisualvj for your PR (#20)!
- Fix missing upload artifacts
- Rewrote logic for
range
component.steps
has been removed for logarithmic sliders.
- Updated dependencies.
- Added Interval control type (Thank you @ccrisrober!)
- Step for Range and Interval controls is now 0.01 if not specified. Fixes weirdness with values changing in unexpected ways when typing in a new value.
- Improved fullscreen API; Safari is now supported
- Addded a fullscreen button
- Updated NPM dependencies to fix vulnerabilities
- Fix issue where checkboxes cannot be focused with tab
- Breaking change: Export syntax has been simplified. Instead of
new guify.GUI(...)
, the call is nownew guify(...)
. - Styling:
- Components now grow to fit the
componentHeight
property of the current theme - Set z-index on entire plugin so it overlaps everything else
- Styles moved from component files to style files where appropriate
- Fix Range vertical spacing
- Improve Checkbox style coverage (should fix issues with iOS)
- Components now grow to fit the
- Simplify document model for container
- Fix Range slider vertical offset in Firefox
- Adjusted spacing of Range and Color's subcomponents
- Improved example layout
- Make Color's Value subcomponent
readonly
instead ofdisabled
- Added
"panelMode"
initialization option - Allow user input in Range component value boxes
- Fix button text vertical alignment
- Force Value component font size to be the same across all themes
- Fix Toast text coloring
- Added
open
opt. Set to true to have the panel forced open on startup.
- Updated Menu Bar look
- Removed
menuBarContentHeight
property of themes - Added new button for opening/closing a Panel when
barMode
is"none"
- Refactored theming code
- Added new parameters for themes
- Added new theme preset (
"yorha"
, based on https://metakirby5.github.io/yorha/) - File and Folder components now release focus if using a mouse to interact
- Fix Range component not highlighting when focused in Firefox
- Removed seam between the Panel and the container's edge on Chrome
- Actually fixed
"above"
barMode
- Fixed
"above"
barMode
- Menu Bar, Panel and Toast Area have been moved into their own classes and files
- Now using ES6-style imports in all source files
- Added
"none"
option toopts.barMode
(removedopts.useMenuBar
) - Improve styling resistance against Bootstrap
- Massive rewrite of styling:
- Using CSJS instead of Sass so we can load CSS with dynamic variables
- Themes now work
- Toast notifications now have
aria-live="polite"
[accessibility] - Components with bound variables will now update themselves only if the bound value has changed
- This is still checked every frame, which is something I'd like to avoid. I'm looking into it.
- Made component polling rate part an option in GUI
opts
- Text and Range components will no longer update from their bound variables while focused
- Styling update:
- Component elements can now grow vertically
- Range now defocuses after mouseup when using the mouse (stays focused if using a keyboard) [accessibility]
- Checkbox now shows on/off styles when focused using a keyboard [accessibility]
- Button and File components now give visual feedback when clicked
- File component shows an outline when a file is dragged onto it
- Select component now highlights on mouseover or focus
- Fix focus highlighting issues on Firefox
- Add font support to themes [tentative]
- Changed Title component look
- Display component text is now selectable.
- Adjusted margin spacing for folders and titles
- Add File component
- Add Display component
- Accessibility update: made components keyboard-accessible
- Color component still needs work
- Added folder component
- Made
Register()
a method that can accept multiple options objects to instantiate many at once - Components now update themselves from bound variables