0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-11-29 11:24:18 +01:00
Commit Graph

483 Commits

Author SHA1 Message Date
Vasilii Artemchuk
5a2d6c70f4 Use native pseudo-selectors instead of jQuery selectors (#24713) 2017-11-09 07:51:19 +02:00
XhmikosR
fc9967e175
Fix test failure with jQuery 1.9.1 (#24706) 2017-11-07 14:13:52 +02:00
Johann-S
79d6b574cc
Escape ID in Util.getSelectorFromElement (#24700) 2017-11-07 12:41:06 +01:00
Johann-S
26dc17bcd2 Popover - call content once if it's a function. (#24690) 2017-11-07 09:18:52 +02:00
Johann-S
41fbec1188 Fix unit tests. 2017-10-27 19:19:55 +03:00
Pierre-Denis Vanduynslager
6fe72c6de8 Dropdown handle keydown on input and textarea. 2017-10-27 19:19:55 +03:00
Johann-S
988327032d Add unit tests for util.js 2017-10-25 12:59:40 +02:00
Johann-S
62fbb23ee6 Change Rollup config to wrap our dist files with jQuery instead of $ 2017-10-24 12:39:25 +02:00
Johann-S
1487c3a994 Add Util.jQuery which will detect jQuery instead of relying on global $ (#24513) 2017-10-23 10:35:27 +03:00
XhmikosR
be9e6f3638 Update modal.js 2017-10-04 15:03:06 +03:00
lucascono
47968c8126 Unit test for modal bug fix
Unit test for pull request #24240
2017-10-04 08:55:40 -03:00
XhmikosR
31c8721913 Normalize all links. (#24109)
* use a trailing slash when possible
* use https when possible
* remove a few redirected links
* consistently use `https://popper.js.org/`
* fix `iconUrl` in nuget files
* change Jekyll Windows guide to the official one
2017-09-26 15:24:14 +03:00
Johann-S
9b8356ba52 Collapse - Allow to pass jQuery object or DOM element to the parent option 2017-09-25 13:23:13 +02:00
Patrick H. Lauke
fd56ea370c Accessibility fixes to dynamic tabs (aria-selected, remove dynamic tabs with dropdowns)
* Use `aria-selected` instead of `aria-expanded`
* Change tab.js to use `aria-selected` rather than `aria-expanded`
* Add `aria-orientation=vertical` to vertical tab list
* Remove dynamic tabs with dropdowns
* Fix non-interactive code examples
* Only set `aria-selected` on the `role="tab"` trigger - this stops `aria-selected` being incorrectly added to the `role="tabpanel"` itself (probably harmless, but nonetheless incorrect)
2017-09-24 12:00:54 +02:00
Troy Morehouse
6c70c70f63 fix(scrollspy): Spying on nested navs fails to activate for .nav-link's inside nav-item's (#23967)
* fix(scrollspy): Handle nested navs when nav-link inside nav-item

* [scrolspy] Find only child .nav-link's inside .nav-item

* [scrollspyt] Add tests for nested navs with nav-link inside nav-item

* fix troy-o's in test
2017-09-17 09:30:37 +02:00
Johann-S
e04e42d08c Merge branch 'v4-dev' into fix-jumping-modal-on-resize 2017-09-03 12:56:04 +02:00
David Bailey
ce41d3fd15 Add failing test 2017-08-29 15:36:37 +01:00
David Bailey
2622a015f2 Fix unit tests in PhantomJS
Use a virtual scrollbar as this is simpler than having a real one (overflow: scroll doesn't seem to work in Phantom), and disable it for the new test.

One test has also been altered to prevent erroneous fails when other inline styles are added to the body (e.g. overflow).
2017-08-29 12:01:41 +01:00
David Bailey
487513ff03 Add failing test
When the body does not overflow (achieved by hiding the QUnit container), it should not be given a margin.
2017-08-28 16:21:04 +01:00
meeque
9612830701 Add unit test for xss in data target attribute 2017-08-25 23:20:14 +01:00
David Bailey
ba6a6f1369 Fix sticky margin when a modal is opened (#23669)
* Adjust margin for sticky elements on modal

Previously white space was visible to the right of sticky elements due to right padding being added to the body. This fixes #23661.

* Add unit tests for margin of sticky elements on modal
2017-08-25 22:01:41 +01:00
Johann-S
5a90b4aa3e Collapse - preventDefault only on <a> elements not inside the collapsible
element
2017-08-25 09:48:35 +01:00
Johann-S
4571ab0e57 Fix toggle for Tooltips/Popover which was called even if the Tooltip/Popover was disabled 2017-08-24 09:33:49 +01:00
XhmikosR
ef8c77d8dc Tweak ESLint rules. 2017-08-23 00:05:38 +03:00
Johann-S
58994a16c5 Add a unit test to check if the carousel do not cycle when its parent isn't visible 2017-08-17 17:48:14 +01:00
Johann-S
d2bd8fb7a9 Unit test to check if our carousel do not cycle when we cannot see it 2017-08-17 17:48:14 +01:00
Johann-S
2eb1e687bd Improve previous selector for nested tabs 2017-08-11 15:04:07 +03:00
Johann-S
edf90c1bc4 Add unit test for nested tabs 2017-08-11 15:04:07 +03:00
Johann-S
0480a75a5a Dropdown - Disable applyStyle modifier instead of removing inline style applied by Popper.js 2017-07-04 10:37:44 +02:00
Mark Otto
9c0e423008 Rename popover classes
Part of an update to align the naming schemes across our components.

- Renames .popover-title to .popover-header
- Renames .popover-content to .popover-body

Refs: #22092
2017-06-15 09:05:30 -07:00
Johann-S
f0124769c9 Collapse supports multi-target thanks to @vanduynslagerp (#22713) 2017-06-14 13:21:49 +02:00
Johann-S
4a2b183e48 Fix unit tests with no assertion 2017-06-14 11:18:12 +02:00
Geremia Taglialatela
db44e4b311 Update nav and navbar HTML markup
According to the docs, you just need to apply the `navbar-nav` to an
`<ul>` tag in a list-based navbar. In fact, `navbar-nav` seems to
override all the css properties set by `nav`.

Also, `nav-item` class should be used only for `<li>` tags, or in
conjunction with `<a>` tags to entirely avoid the list-based approach.

This commit removes the redundant `nav` class from `navbar-nav` `<ul>`
tags, moves `nav-item` from `<a>` tags to `<li>` tags and properly
adds `nav-item` class to `<li>` tags where missing.

Refs:

* https://v4-alpha.getbootstrap.com/components/navs/
* https://v4-alpha.getbootstrap.com/components/navbar/#nav
2017-05-27 15:21:49 -07:00
Johann-S
53ee455bc7 Handle dropup for Dropdown 2017-05-14 11:41:19 +02:00
Johann-S
69de65180f Fix unit tests + Update Popper to 1.6.0 2017-05-14 11:41:19 +02:00
Johann-S
d8996a7e0a Fix arrow for tooltip and popover 2017-05-14 11:41:19 +02:00
Johann-S
b40b1bc396 Add attachment classes 2017-05-14 11:41:19 +02:00
Anna
33715a73d2 Fix Toggle buttons don't honor [disabled] or .disabled 2017-04-26 18:46:05 +02:00
Pierre Vanduynslager
ab39defe74 Detach accordion from card without requiring 'data-children' 2017-04-25 09:32:14 +02:00
Bardi Harborow
b4ac48fdec Build system overhaul. 2017-04-20 14:31:22 +10:00
Patrick H. Lauke
6ae5fb12e6 Fix carousel "hover" behavior on touch-enabled devices
* Add carousel mouse listeners even if touch events enabled

- touch events are enabled not just on "mobile", just also on
touch-enabled desktop/laptop devices; additionally, it's possible to
pair a mouse with traditionally touch-only devices (e.g. Android
phones/tablets); currently, in these situations the carousel WON'T pause
even when using a mouse

* Restart cycle after touchend

as `mouseenter` is fired as part of the touch compatibility events, the
previous change results in carousels which cycle until the user
tapped/interacted with them. after that they stop cycling (as
`mouseleave` is not sent to the carousel after user scrolled/tapped
away).
this fix resets the cycling after `touchend` - essentially returning
to the previous behavior, where on touch the carousel essentially never
pauses, but now with the previous fix it at least pauses correctly for
mouse users on touch-enabled devices.
includes documentation for this new behavior.
2017-04-17 13:26:46 +01:00
Pierre Vanduynslager
025ddb185e Merge branch 'v4-dev' into dropdown-keyboard 2017-04-10 11:04:05 -04:00
Patrick H. Lauke
18e8704221 Fix collapse.js aria-expanded behavior
* Remove aria-expanded from collapse.js target element

aria-expanded="true"/aria-expanded="false" only applies to the trigger,
not the element that is being expanded/collapsed.

* Tweak collapse.js accessibility section

...to make it clearer that the aria-expanded attribute always just goes
on the control.

* Fix collapse.js unit tests

- reword some of the text to make it clear we're checking behavior of
trigger/control
- move incorrect aria-expanded out of the <div>s and to the actual
trigger/control <a>s
- fix incorrect test assertion text output false -> true
2017-04-10 14:51:22 +01:00
Patrick H. Lauke
3f6e1faf45 Only change aria-pressed if it's not an input-based radio or checkbox group
* Only change aria-pressed if it's not an input-based radio or checkbox group

aria-pressed="true"/aria-pressed="false" is really only useful for
making on/off toggles out of, say, `<button>` elements. the attribute is
useless (and potentially confusing/conflicting) on, say, `<label>`
elements for an existing `<input type="radio">` or similar.

* Add unit test for buttons.js and radio/checkbox inputs in button groups
2017-04-10 14:43:54 +01:00
Pierre Vanduynslager
fe72daf2b3 Merge branch 'v4-dev' into dropdown-keyboard 2017-04-08 18:43:25 -04:00
Ilias
e6e070b02a Fix #22332: Adjust tests for hidden scrollbar 2017-04-03 13:27:15 +02:00
Ilias
a14451deb3 Fix #18373: properly adjust padding-right of body and fixed elements when opening or closing modal 2017-04-02 13:26:25 +02:00
Pierre Vanduynslager
91b62941af Tabs/Scrollspy/.nav/.list-group/.active independent of markup (<nav>, .nav-item, <li> etc...) 2017-04-02 11:21:04 +02:00
Johann-S
5142de7e59 Popover + Tooltip - fix error when content or title is a number 2017-03-31 10:03:54 +02:00
Johann-S
fb42d6e043 Collapse - Fix check to not prevent event for input and textarea 2017-03-29 00:10:27 +02:00
Johann
904efc043d Fix different tooltips offset when hovering 2017-03-28 15:55:03 +02:00
Johann
24924c23b2 Collapse - do not prevent event for input and textarea 2017-03-27 10:08:39 +02:00
Pierre Vanduynslager
37f438910f Accordion behavior with JQuery interface (#21726)
Fix accordion behavior with JQuery interface
2017-03-23 21:15:41 +01:00
Johann
c72a315740 Carousel - Add attributes from and to for Slid and Slide events (#21668)
Carousel - Add attributes from and to for Slid and Slide events
2017-03-22 22:42:13 +01:00
Pierre Vanduynslager
78fc4d23fc Always append element to fixture in Scrollspy unit tests (#22234) 2017-03-21 10:21:00 -07:00
Mark Otto
3730c5dbf5 Merge branch 'collapse' of https://github.com/Johann-S/bootstrap into Johann-S-collapse 2017-03-19 18:43:13 -07:00
Johann
1a46d8c730 Allow to use Tab.js with list-group (#21756)
* Allow to use Tab.js with list-group

* Allow to use list-group with div parent instead of an ul parent
2017-03-18 16:36:33 -07:00
Johann-S
21b537cc24 Add unit test 2017-03-09 11:08:47 +01:00
Pierre-Denis Vanduynslager
4ab576a419 Fixes #21941 2017-02-08 18:51:50 -05:00
Pierre-Denis Vanduynslager
ef2181ff4d Harmonize document.activeElement comparison 2017-01-20 23:22:50 -05:00
Pierre-Denis Vanduynslager
4448ca057b Refactor test to event and async 2017-01-20 23:02:45 -05:00
Pierre-Denis Vanduynslager
1a783a4255 Add unit test for keyboard navigation 2017-01-20 23:02:19 -05:00
Pierre-Denis Vanduynslager
9daf681478 Fix test to retrieve the proper item instead of it's parent 2017-01-20 20:27:14 -05:00
Pierre-Denis Vanduynslager
4c2f544359 Merge branch 'twbs/v4-dev' into dropdown-keyboard 2017-01-06 15:57:15 -05:00
Pierre-Denis Vanduynslager
eb84c03ddf Update dropdown unit test to new markup 2017-01-06 15:56:38 -05:00
Johann-S
0463b01282 Close #21090 - Fix aria-pressed attribute for buttons in container with data-toggle='buttons' 2017-01-04 11:02:16 +01:00
Pierre-Denis Vanduynslager
bbb0d2b573 Dropdown: close menu when focusing outside element (#21375)
* Close dropdown menu when focusing an outside element
* Update unit test to new markup
2017-01-02 14:44:27 -08:00
Mark Otto
c61a0059ad update seletors in js 2017-01-02 11:52:38 -08:00
Johann-S
026e1a1421 Allow to use nav with tab JS 2016-12-31 00:54:00 -08:00
Johann-S
95ce03f000 Close #21249 : Add a Unit test for #21227 2016-12-29 13:28:42 -08:00
Max Beatty
aa7f95fd77 update click state when hiding so can be shown again by trigger. fixes #16732 2016-12-27 14:19:12 -08:00
Alessandro Rodi
9103bffe37 [Fix #19849] Tabs are opened even if disabled. (#20795)
* [Fix #19849] Tabs are opened even if disabled.

* fix hund code review hints

* rollback hound issues because Travis fails
2016-12-24 23:31:34 -08:00
Matheus Azzi
dab6a41e04 Carousel: Only prevents default for ARROW_LEFT and ARROW_RIGHT keys
Fixes 2 bugs:

1. All keydowns were being prevented. Because of that the user wasn't able to navigate in the whole page using ARROW_UP/ARROW_DOWN.

2. Even when  is an input or textarea the keydowns were being prevented. Because of that the user wasn't able to type any text on these elements.
2016-12-23 17:55:40 +11:00
Starsam80
bf39bb3ac3
Rename .active to .show 2016-12-07 21:20:15 -07:00
Rob Ruana
5eddb0b0fd Closes #21055: Prevents ScrollSpy from clearing active item when Safari rubberbands (#21056)
When the rubberband effect causes Safari to scroll past the top of the
page, the value of scrollTop becomes negative. If the offset of the first
ScrollSpy target is 0 - essentially if the target is at the top of the
page - then ScrollSpy should not clear the active item. Conceptually, the
first item should remain active when rubberbanding past the top of the
page.

This commit fixes issue #21055 by verifying the first scrollspy target is
not at the top of the page before clearing the active nav-item.
2016-11-27 16:20:33 -08:00
Mark Otto
b6b8280938 Merge pull request #18900 from vlastikcz/v4-dev-buttonChange
Button toggling - trigger change event on input. Fixes #16673, fixes #17599.
2016-11-26 01:18:21 -08:00
Mark Otto
ce31f54c36 Merge pull request #19058 from Johann-S/carouselInput
Carousel - Do not prevent on keydown for input and textarea
2016-11-26 01:14:55 -08:00
Mark Otto
25d218b02d Merge branch 'v4-dev-18796' of https://github.com/maxbeatty/bootstrap into maxbeatty-v4-dev-18796 2016-11-26 00:58:51 -08:00
Johann
ce18a66809 Add test unit to check logic of ignoreBackdropClick (#18245) 2016-11-25 22:57:20 -08:00
Mark Otto
432fe74c31 Merge branch 'eslint' of https://github.com/bardiharborow/bootstrap into bardiharborow-eslint 2016-11-25 14:59:28 -08:00
Matt Hernandez
b1b1f30cbd [Fix #17371][V4] Deactivating dropdown links in nav tab (#17642)
* Fix bug with dropdown tab links not deactivating when other tab or dropdown link is clicked

* Revise bug fix for more stability
2016-11-25 14:56:41 -08:00
Bardi Harborow
c2616fb74e Make JS compliant with the new ESLint rules. 2016-11-24 11:59:55 +11:00
Johann
a7f1b59959 Making .tooltip('show') throw an error on elements with display:none (#20940) 2016-10-31 20:33:53 -07:00
Mark Otto
c01fa6b369 Merge pull request #17536 from Johann-S/testPadding
[Fix #17400] Add tests about padding restoration
2016-10-28 13:46:14 -07:00
Johann-S
9d129a43d6 Use a single class name for opened/expanded/shown state of widgets 2016-10-25 14:07:41 +02:00
Mark Otto
73154d0392 Merge pull request #20467 from maxbeatty/v4-dev-17754
add support for ol in tab plugin
2016-10-24 20:50:52 -07:00
Johann-S
9bc7de9395 Fix bug multiple accordions collapse 2016-10-19 09:35:48 +02:00
Johann-S
de1255b14e Collapse using card component 2016-10-11 13:25:36 +02:00
Mark Otto
4d725c90d6 Merge pull request #17568 from Johann-S/fixCollapseHeight
[Fix #17555][V4] fix resetting style on closing collapse
2016-10-09 20:32:40 -07:00
VarelloThemes
63129112bb replace some profanities (#20715) 2016-09-15 09:39:31 -07:00
Max Beatty
dc1b4e78d4 add support for ol in tab plugin. fixes #17754 2016-08-04 16:57:08 -07:00
Max Beatty
bfa714ae1e prevent navigating to area href when modal target. fixes #18796 2016-08-04 13:47:30 -07:00
Dave Methvin
8900d953ed ScrollSpy unit test: Use single done() in a then() instead of multiple done()s (#20198)
Fixes test flakiness on OS X Safari and Android when using jQuery 3.
Fixes #20182 more
Refs #20191
2016-06-28 13:24:28 -07:00
Dave Methvin
208d587c7e Scrollspy test: Allow for async .then() in jQuery 3; fixes #20182
Instead of doing a new assert.async(), just do a single one for the entire test
and let the .then() be async as well.

Closes #20190
2016-06-27 22:37:31 -07:00
Chris Rebert
aa369bd8f9 Remove unnecessary usage of Promises in non-async ScrollSpy tests (#20180)
Closes #19906

[skip validator]
2016-06-26 21:33:07 -07:00
Chris Rebert
14c7ba95f9 Fix load & scroll event usage in ScrollSpy tests (#19986)
* Use $.one() instead of $.on() since there are no $.off()s in the code.
* Remove unnecessary namespacing of listeners for the `scroll` & `load` events.
    These are vanilla DOM events (not custom jQuery namespaced events)
    and we're not using jQuery namespacing to manage these event listeners either (e.g. `$.off()`).

[skip validator]
2016-05-30 09:39:45 -07:00
Chris Rebert
d35973c2b3 js/tests/unit/scrollspy.js: Fix "offsed" typos (#19985)
[skip sauce]
[skip validator]
2016-05-29 18:36:09 -07:00
Patrick H. Lauke
b107e3342a Handle aria-hidden on modal container when showing/hiding
Fixes #19878
2016-05-11 02:01:56 +01:00
Johann-S
14ec4fdfc1 Carousel - Do not prevent on keydown for input and textarea 2016-02-01 00:06:07 +01:00
Kotas Vlastimil
866e99b00c Button toggling - trigger change event on input
Bootstrap’s .button styles can be applied to other elements, such as labels, to provide checkbox or radio style button toggling.

When the checkbox or radio state is changed, there should be triggered the change event. Currently, the change event is triggered on the Button, which is not correct. Only input fields do support the change event.
2016-01-14 20:26:32 +01:00