- Popup - Popup can now position elements correctly even when they have a different offset context than their activating element. Like in this example.
- Popup - Popup will now align the center of the arrow (not the edge of the popup) when it would be reasonable (up to 2x arrow's offset from edge). See this explanation
To preserve functionality movePopup
default has remained as true
(moving the popup to the same offset context), however now setting movePopup: false
should now always position correctly. Be sure to use movePopup: true
to avoid issues with ui popup
inside menu
, input
or other places where it may inherit rules from its activating element or its context.
- Popup -
arrowBackground
now inherits frombackground
#6059 Thanks @devsli - Popup - Adds new variable
headerFontWeight
- Popup - Popup will now use
content
specified in settings beforetitle
attribute #4614 Thanks @aaronbhansen
- Popup - Fixed an error which could cause popup not to move to right offset context when using a different target setting.
- Menu / Popup - Fixed issue where
inverted menu
rules would cause popup inside a menu to have incorrect link styling inlink list
Thanks @banandrew #5585 #5603
- Popup - Fixed a regression with
popup
in2.2.11
that caused popups to appear out of place in some cases due to incorrect calculation ofoffsetParent
#5549 #5597 #5590
- Popup - Added
bind clickaway
bind touch close
bind close on scroll
behaviors to make it easier foron: 'manual'
popup to specify behavior - Popup - Separated className setting for
visible
intovisible
andpopupVisible
, this way you can remove visible indication on activating element without modifying popup visibility. - Popup - Fixed bug where
supports svg
was not working correctly due to incorrect comparison toundefined
Thanks @mathiasrw #4544 - Popup - Fixed issue where popup would incorrectly add itself to the wrong offset context when using
popup
andtarget
setting together in cases where thetarget
has a differentoffsetParent
than the activating element.
- Popup/Menu - Fixed issue where popup would not appear correctly when nested in menu in some ways.
- Popup - Fixed issue where
observeChanges: false
setting in popup would not prevent mutation observers - Popup - Fixed popup in menu example
- All UI - Added new setting
silent
to all modules which allows you to disable all console output including errors. This can be useful for preventing known errors, like a popup which cannot place itself on screen, orsticky
content which initializes before it is visible #3713 - Popup - Added new
tooltip
popup type that works without javascript. Tooltips can specify positioning and some variations usingdata
attributes, and will handle positioning automatically with CSS only. - Popup - Added new setting
boundary
andscrollContext
.boundary
lets you specify an element that the popup will try to position itself to be contained inside of.scrollContext
lets you specify the element which when scrolled should hide the popup - Popup - Added new settings
observeChanges
, which is enabled by default. This will add special mutation observers to triggerdestroy
when the element is removed from the document, preventing memory leaks. - Popup - Fixed issue where clicking element inside popup removed from DOM (like clicking a multi select label) would cause popup to close #3887
- Popup - checking
instanceof SVGGraphicsElement
caused error in IE11 #3043
- Popup - Adds
onUnplaceable
callback when element cannot be placed in visible screen #3388 - Popup - Fixed
is visible
,is animating
, andis fluid
to always returntrue/false
and not the DOM element. #2781 - Popup - Fixed issue with
onEnable
callback being defined with nameonEnabled
andonDisable
withonDisabled
in default settings, causing an error. To preserve backwards compatibility, the misspelled callback name has been left, but the bug has been fixed. #3148
- Popup Added three new variables for
arrow
background color based on position, top, center or bottom. This makes it easier to use gradient backgrounds with popups and still match arrow colors. - Popup - Added behaviors
get popup
andchange content
to more easily determine popup from activating element and change text - Popup - Fixes positioning issue when
movePopup: false
#3213 Thanks @parisholley - Popup - Popup now works with
svg
elements #3043
- Popup - Popup will now look for inline popup as any next adjacent sibling #2772 Thanks @malacalypse
- Popup - Fixes issue where variation would not be added to a pre-existing popup even if specified in javascript #26011
- Popup - Fixed
onRemove
firing even when popup is not removed
- Popup - Fixed issue where popup would not open on tablets with both touchscreen and mouse on mouseenter. #2715
- Popup - Fixed terribly typo where popup
onShow
was mistakenly being called instead ofonHide
when hiding popup - Popup - Popup on
touchstart
now occurs immediately without waiting fordelay.show
- Popup -
fluid
popup withsetFluidWidth: true
(default value), will now useparent
width and notoffsetContext
width #2526 - Popup - Fixed issues where rounding could cause elements that are against edge of page from not appearing. Add new
jitter
setting for allowing popups to escape page boundaries by a small margin #2526 - Popup -
wide
andvery wide
popup will now limit themselves to normal popup widths on mobile so that they still appear on screen.
- Popup - Popup
preserve
setting (which preserves popup in DOM to avoid regenerating on each show/hide) was set totrue
by default causing generated popups to remain in DOM. #1369
- Popup - Popups are no longer exclusive by default. Opening a popup will not necessarily close other visible popups. You can change this behavior by using the setting
exclusive: true
. Additionally the default theme now uses1rem
size for standard popups. - Popup - Popup has been rewritten to drastically improve performance, especially when testing multiple positions.
- Transition - Fallback javascript animations have been removed from UI components like dropdown and popup to increase performance. This removes need for expensive pseudo selectors like
:visible
,:animated
and:hidden
and reduces filesize. - Popup - Popup now defines a
transform-origin
so animations will be affected by the direction the element is placed - Popup -
onShow
andonHide
callback can now cancel popup from showing or hiding by returning false - Popup - Added more size variations for popup
mini
,tiny
- Popup - Popup now correctly adjusts if
data
attributes change - Popup - Fixes issue with
min-width
in firefox exceedingmax-width
causing element to not wrap correctly - Popup - Popup will now produce an error message and not mistakenly appear in the top left corner of page, if called with a
popup
ortarget
that does not exist. - Popup - Popup will no longer appear incorrectly if the targeted element is not visible on page
- Popup - Fixed bug which could cause pre-existing inline popup to be removed from DOM after hiding
- Popup - Fixes popup offstage position calculations with pages including horizontal scrollbars
- Popup - Added
addTouchEvents
to specify whether touch events should be added to trigger popup on mobile - Popup - Popups now default to
exclusive: false
and will not hide other popups when opening - Popup - Popup no longer produces a console error when a position cannot be found on the page.
- Popup - Removes
min-width: moz-max-content
from popups, which may cause display differences between chrome and FF
- Popup - Popup no longer produces a console error when it cannot find an adequate position in the browser viewport.
- Popup - Added
exclusive
parameter to automatically close other popups on open - Popup - Fix issue with
popup
not re-opening until another element gains focus on a mobile touchscreen - Popup - Popup will now fire
onHidden
when an element is hidden by opening a different popup - Popup - Fix popup not namespacing
window
events and unbinding ondestroy
Thanks @revov
- Transition - Transitions with direction now use word order dependency to prevent conflict with component directions, for example `bottom left popup slide down in transition
- Popup - Popup
hide all
will now use transition set insettings.transition
when closing other popups
- Popup - Popup will now only use a max of one element when
settings.popup
mistakingly passes multiple DOM elements - Popup - Popups will now by default appear over all UI content, even dimmers.
- Popup - Popup now uses its own custom method for determining
offsetParent
meaning 3D contexts (like inside an animation) no longer should break positioning - Popup - Popup now uses
preserve: false
by default, this is slightly less performant but will reduce page clutter caused by leaving generated elements in the DOM - Popup -
wide
andvery wide
popup will now appear when screen size is below theirmax-width
- Popup - Popup no longer blurs element on popup hide
- Popup - Fix issue with
ui popup
receiving error$offsetParent is undefined
when using a pre-defined popup - Popup - Fix issue with
ui popup` not appearing with
ui flowing popupdue to newly added
min-width: max-content``
- Popup - Popup now uses the new property
min-width: max-content
to allow for better display withinline
in some circumstances where it escapes parent element. - Popup - Popup destroy will now also destroy any unfired timers (show/hide delay)
- Popup - Popup now moves to the same offset context to avoid positioning errors when using a named pre-existing popup.
- Popup - Popup now has a
settings.prefer
that defaults toadjacent
. This setting sets prefered next placement when a popup cannot fit on screen in the chosen placement.prefer
can also be set toopposite
to prefer the same position on the opposite side - Popup - Popup can now use a setting
lastResort
. When set to a position it will be used as a last resort even if popup does not entirely fit on the page. Setting this tofalse
will produce an error when a popup cannot fit on screen.
- Popup - Popup can now allow itself not to be closed when hovered over
- Popup - A popup element can now be specified on initialization.
- Popup - Positioned popups will now extend in the opposite direction to fit better with floated content
- Popup - Fixes javascript animation of popup missing easing dependency
- Popup - Popup now has an
onRemove
callback after removing element from DOM
- Popup - Fixes issue where popups using
title
attribute to store data were losing title content instead of correctly restoring it
-Popup - Fixes popup sometimes opening and closing when event:click
is used and a user double clicks
- Popup - Native browser popups no longer if using
title
attribute
Fixes - Fixes popup not repositioning itself when offstage.
- Popup - Adds context option for popup (thanks jefmathiot)
- Popup - Fixes issue with popup's using setting inline: true
- List - Popups can now have a different target than itself
- Popup - Popup .toggle() now always hides/shows popup correctly
- Popup - Popup fixed a bug where "top right" placed popup might sometimes be too large
- Popup - Popup will not reshow a visible popup on hover
- Popup - Popup border now uses RGBA to look sexier on dark backgrounds
- Popup - Popup default duration is now 200ms (slighty slower)
- Popup - Popup metadata attribute arrowOffset is now offset for simplicities sake
- Popup - Popup no-longer receives class name 'visible' on show, this allows popups to be used on dropdowns and other elements with a visible state
- Popup - Popups are no longer inline by default
- Fixes regression where popup was overriding variation class name on positioning
- Fixes an issue where popup that was set to inline: false was being removed prematurely
- Adds an example to popup where inline is set to false
- Added onCreate to popup module
- Fixes popup position sometimes appearing off-stage on second appearance
- Fixes popup positions top left, top right, bottom left, bottom right being flipped
- Fixes issue with popup display in some edge cases Issue #128