0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-12-13 01:08:58 +01:00
Commit Graph

793 Commits

Author SHA1 Message Date
Markus Hatvan
4d101491da Remaining JS linting TODO (#29289)
* Enable and fix all occurrences with no-mixed-operators rule
* Take care of the max-depth warning in button.js

Signed-off-by: mhatvan <markus_hatvan@aon.at>
2019-08-22 22:17:34 +03:00
Johann-S
6885d65578 dropdown - destroy old popper.js references 2019-08-22 20:30:16 +02:00
Johann-S
a9c35b3ca8 Remove useless check for null object with spread operator 2019-08-18 17:19:36 +03:00
XhmikosR
9cee3c2808 Minor wording tweaks 2019-08-18 17:19:36 +03:00
Johann-S
f03c10a189 allow to pass popper.js configuration for tooltip/popover and dropdown 2019-08-18 17:19:36 +03:00
Johann-S
8b2b490f9b add a way to disable jQuery detection 2019-08-02 16:50:05 +02:00
XhmikosR
eecd75db00
Fix typos. (#29178) 2019-07-31 16:14:21 +03:00
Johann-S
dcba526775 remove underscore for static methods 2019-07-29 11:34:12 +02:00
Johann-S
2ea71a9e78 allow dynamic modal body for scrollable modals 2019-07-28 12:11:10 +02:00
Johann-S
fc02932946 use get selector from element only when needed 2019-07-24 11:27:35 +02:00
Johann-S
e48e498bf4 fix arrow popover (#29115) 2019-07-24 10:53:58 +03:00
Shohei Yoshida
ebb1eea520 Force reflow for fade-in animation (#29113) 2019-07-23 17:21:23 +03:00
Johann-S
233f3fb1ce rewrite tab unit tests 2019-07-23 14:23:50 +02:00
Johann-S
e1b5d8471a use qunit css for our fixture 2019-07-23 14:23:50 +02:00
Johann-S
b7b56cb10a rewrite scrollspy unit tests 2019-07-23 14:23:50 +02:00
Johann-S
85b70cef3c rewrite tooltip unit tests 2019-07-23 14:23:50 +02:00
Johann-S
c9e650a56f rewrite popover unit tests 2019-07-23 14:23:50 +02:00
Johann-S
1ac07a66ce rewrite modal unit tests 2019-07-23 14:23:50 +02:00
Anton Bershanskiy
e916a9bc03 rewrite toast unit tests 2019-07-23 14:23:50 +02:00
Johann-S
6a59c58480 rewrite dropdown unit tests 2019-07-23 14:23:50 +02:00
Johann-S
0ed1618c06 rewrite collapse unit tests 2019-07-23 14:23:50 +02:00
Johann-S
62730d9afd rewrite carousel unit tests 2019-07-23 14:23:50 +02:00
Johann-S
747f0f4c7b test jquery interface for our alert plugin 2019-07-23 14:23:50 +02:00
Johann-S
891a187059 rewrite button unit tests 2019-07-23 14:23:50 +02:00
Johann-S
c834895fa0 rewrite unit tests for selector engine 2019-07-23 14:23:50 +02:00
Anton Bershanskiy
fe6ba2384a rewrite manipulator unit tests 2019-07-23 14:23:50 +02:00
Johann-S
c8c2074650 Switch from QUnit to Jasmine. 2019-07-23 14:23:50 +02:00
Patrick H. Lauke
f0f75379f6 Closing dropdown with ESC correctly sets focus to toggle (#28928)
Just firing the focus event isn't enough ... need to actually call the proper `focus()` method for it to actually do it...
2019-06-19 12:23:41 +03:00
david-lallement
0829decce0 tooltip dispose:removing only own event handler (#28896) 2019-06-13 10:42:54 +02:00
XhmikosR
8a79cf894d event-handler.js: use a plain for loop. (#28853) 2019-06-03 13:08:17 +02:00
Johann-S
d5752a18ab toast should allow prevent default for hide and show events 2019-05-16 13:24:29 +02:00
Johann-S
c805aec770 fix popover arrow by selecting the first element child 2019-05-14 15:28:43 +02:00
XhmikosR
438e01b61c Rename eventHandler and selectorEngine files. 2019-05-08 17:26:37 +03:00
XhmikosR
afc63ec887 Fix xo error: use for...of. 2019-04-10 15:18:57 +03:00
ysds
f4877dbf03 Remove _close() and marge with _hide() 2019-04-09 13:59:41 +02:00
ysds
91ebb4b3b2 Call hide() after delay time 2019-04-09 13:59:41 +02:00
Johann-S
1752addadf Reset carousel touch delta x to prevent click transformation in swipe (#28558) 2019-03-27 14:37:04 +02:00
Johann-S
08679ac0b5 Add back support for IE 11 2019-03-18 01:11:05 +02:00
XhmikosR
6aa475c82e
Use one-line imports when possible. (#28467) 2019-03-13 14:55:53 +02:00
Johann-S
2fd50f98a5 build bootstrap in esm 2019-03-11 17:59:08 +02:00
XhmikosR
3ffe3a5d82 collapse.js: minor refactoring. 2019-03-11 17:01:28 +02:00
XhmikosR
1393678f0b Remove obsolete comments. 2019-03-11 17:01:28 +02:00
XhmikosR
dd0239d169 Remove more unused properties. 2019-03-11 17:01:28 +02:00
Johann-S
dce47b5451 scrollspy.js: remove unused properties 2019-03-11 17:01:28 +02:00
XhmikosR
5ac1a12625 Remove assignment from return. 2019-03-11 17:01:28 +02:00
XhmikosR
46c037410b Comply to the new rules. 2019-03-11 17:01:28 +02:00
XhmikosR
f7b55da450
dom/manipulator.js: minor simplification. (#28358)
Combine two checks since we return the same value for both.
2019-02-26 13:13:01 +02:00
Johann-S
8a37045b79 move util in a util folder with the sanitizer 2019-02-26 13:04:04 +02:00
Johann-S
fee11fd7ae use our selector engine instead of native api 2019-02-20 22:05:45 +02:00
XhmikosR
68e6de42ec Use Util.makeArray(). 2019-02-20 22:05:45 +02:00
Johann-S
e58b47cf74 improve event handler 2019-02-20 22:05:45 +02:00
XhmikosR
30861cbc6d Simplify checks. 2019-02-20 22:05:45 +02:00
XhmikosR
4b7c058a25 Remove unneeded ESLint suppression. 2019-02-20 22:05:45 +02:00
Johann-S
08227506f2 use only dataset to get data attributes 2019-02-20 22:05:45 +02:00
Johann-S
764bab2941 remove polyfills which override browsers default 2019-02-20 22:05:45 +02:00
XhmikosR
f0c6b24bd7 4.3.1. 2019-02-20 22:05:45 +02:00
Joshua Wilson
fdbb5db919 minor jQuery.hasclass removal (#28158) 2019-02-20 22:05:45 +02:00
Peter Blazejewicz
cbd333185e Use consistent arrow class (#28105) 2019-02-20 22:05:45 +02:00
Emil Müller
049a500d18 Fixed Util.jQuery: window.$ is not reliable. Both Firefox and Chrome implements $ natively. 2019-02-20 22:05:45 +02:00
Johann-S
661db08eeb rewrite toast plugin without jquery 2019-02-20 22:05:45 +02:00
Johann-S
57d50b2134 Improve manipulator coverage 2019-02-20 22:05:45 +02:00
Alessandro Chitolina
6cfc78f2d9 Remove IE support and button bsChecked hack 2019-02-20 22:05:45 +02:00
Johann-S
a2f1d79045 Refactor util plugin and some tests 2019-02-20 22:05:45 +02:00
Johann-S
c44db783bf chore(update): bump to 4.1.3 2019-02-20 22:05:45 +02:00
Johann-S
467dd113c5 fix(plugins): save instance in constructor 2019-02-20 22:05:45 +02:00
Johann-S
0b726de94e fix(carousel): on load page create a carousel 2019-02-20 22:05:45 +02:00
Johann-S
6b0808354d fix(unit-test): dropdown, collapse and carousel 2019-02-20 22:05:45 +02:00
Johann-S
8010c010e9 fix(event-handler): use Object.key for passing values in an event 2019-02-20 22:05:45 +02:00
Johann-S
096413a994 fix(selector-engine): increase coverage for selector engine 2019-02-20 22:05:45 +02:00
Johann-S
4510e7e61d fix(util): remove extend 2019-02-20 22:05:45 +02:00
Johann-S
b4a3b00ac8 fix(event-handler): remove polyfill and move it to index 2019-02-20 22:05:45 +02:00
Johann-S
fe580a8e5a fix(polyfill): disable coverage for our polyfills 2019-02-20 22:05:45 +02:00
Johann-S
64591b3722 fix(manipulator): increase coverage for manipulator 2019-02-20 22:05:45 +02:00
Johann-S
4d6e41dea6 refactor(polyfill): a file for polyfills 2019-02-20 22:05:45 +02:00
Johann-S
0b719e065c fix(data): increase coverage for data 2019-02-20 22:05:45 +02:00
Johann-S
2b78078779 fix(data): do not use data object in our unit tests 2019-02-20 22:05:45 +02:00
Johann-S
7eddee286e remove old references to jquery and some fixes 2019-02-20 22:05:45 +02:00
Alessandro Chitolina
0263d1742c rewritten scrollspy without jquery 2019-02-20 22:05:45 +02:00
Johann-S
9744886519 upgrade to v4 stable 2019-02-20 22:05:45 +02:00
Alessandro Chitolina
7f08061eca rewritten tab without jquery 2019-02-20 22:05:45 +02:00
Johann-S
90261b484c Dropdown without jQuery 2019-02-20 22:05:45 +02:00
Alessandro Chitolina
ec69de4b7e allow register the same handler for different delegated selectors in eventHandler 2019-02-20 22:05:45 +02:00
Johann-S
99c3119c82 Return a new function with Util.noop 2019-02-20 22:05:45 +02:00
Johann-S
b5077a1a81 fix one forgets of using jQuery in Carousel and Tooltip 2019-02-20 22:05:45 +02:00
Johann-S
2929bf9619 fix weird case with jQuery 2019-02-20 22:05:45 +02:00
Alessandro Chitolina
cc6e130fc1 tooltip without jquery 2019-02-20 22:05:45 +02:00
Johann-S
7c1d0a1097 Wrap our objects into IIFE 2019-02-20 22:05:45 +02:00
Johann-S
69e4d4f3ac Rewrite Collapse without jQuery 2019-02-20 22:05:45 +02:00
Alessandro Chitolina
53ca76ebc0 Workaround for M$ Edge resetting defaultPrevented flag upon dispatchEvent 2019-02-20 22:05:45 +02:00
Alessandro Chitolina
33211eefdf Rewritten modal without jquery (#23955)
* Trigger jquery events if available in event handler

* Rewritten modal without jquery
2019-02-20 22:05:45 +02:00
Johann-S
9f9712b98c Add Manipulator object to add shortcuts for dom manipulations 2019-02-20 22:05:45 +02:00
Johann-S
44f38e4128 Rewrite carousel without jquery 2019-02-20 22:05:45 +02:00
Johann-S
c5595e5b67 Add polyfill for focusin and focusout 2019-02-20 22:05:45 +02:00
XhmikosR
aba87279fd button without jquery 2019-02-20 22:05:45 +02:00
Johann-S
47242cd0fe Fix delegation events 2019-02-20 22:05:45 +02:00
Johann-S
7d7873b6f2 Check jQuery version only if jQuery is available 2019-02-20 22:05:45 +02:00
Johann-S
6b5850212e Second element of find and findOne should be optional, not the first one 2019-02-20 22:05:45 +02:00
Johann-S
b69fa9db95 Fix our data storage 2019-02-20 22:05:45 +02:00
Johann-S
f2f69970eb Add findOne to our SelectorEngine 2019-02-20 22:05:45 +02:00
Johann-S
79144adb12 Fix detection of nativeEvents + trigger events with arguments 2019-02-20 22:05:45 +02:00
XhmikosR
3e8bc9d9ec Extend SelectorEngine.find() to include an element first arg.
If not supplied, it'll just use `document`.
2019-02-20 22:05:45 +02:00
Johann-S
3664d14908 fix declaration of alert jquery plugin only if jquery is available 2019-02-20 22:05:45 +02:00
Johann-S
4aef395e49 Disable ESlint on no-return-assign and temporary for arrow-body-style 2019-02-20 22:05:45 +02:00
Johann-S
2970d14dd9 Remove jQuery from alert.js and add .alert only if jQuery is available 2019-02-20 22:05:45 +02:00
Johann-S
a3398fffd6 Add event delegation + fix EventHandler.one 2019-02-20 22:05:45 +02:00
Johann-S
00ca781171 Add namespaced events 2019-02-20 22:05:45 +02:00
Johann-S
744071040e Add CustomEvent polyfill and a working preventDefault for IE 2019-02-20 22:05:45 +02:00
Johann-S
d6560bbc81 better polyfill for closest and matches functions 2019-02-20 22:05:45 +02:00
Johann-S
0b16c8c6d9 alert without jquery 2019-02-20 22:05:45 +02:00
Johann-S
8d34bc136b Move transition end detection to dom/event.js instead of util.js 2019-02-20 22:05:45 +02:00
Johann-S
fb465c4745 Remove jQuery from Util.js
s
2019-02-20 22:05:45 +02:00
XhmikosR
8fa0d30101
Release v4.3.1. (#28252) 2019-02-13 18:01:40 +02:00
Johann-S
7bc4d2e0bc Add sanitize template option for tooltip/popover plugins. 2019-02-13 08:32:15 +02:00
Mark Otto
1ded0d6a4e
Release v4.3.0 (#28228)
* Prep for v4.3.0

* More updates for v4.3.0.

* rerun to build docs source map
2019-02-11 11:15:34 -08:00
Johann-S
3c49467224 allow to override default toast options (#28186) 2019-02-06 15:19:04 +02:00
Johann-S
11880109fc
fix tabs, apply show class only when fade class is present (#28183) 2019-02-06 11:12:02 +01:00
Jason Golieb
e44d0475e0 Move dropdown offset function logic into private function. (#28138) 2019-02-05 10:31:18 +02:00
Jason Golieb
8f6cffde97 Move offset function logic to a private function. 2019-02-05 10:24:49 +02:00
Jason Golieb
88a34aacbe Add support for tooltip offset option to be a function. 2019-02-05 10:24:49 +02:00
Shohei Yoshida
de0bb1e052 Scrollable modal (#27769) 2019-01-20 23:28:16 +02:00
Johann-S
d51ee0dcf1 Fix Carousel's touch option to not add touch listeners when set to false (#28046) 2019-01-14 18:53:54 +02:00
Johann-S
89a73f100e carousel should not cycle when there is no data-ride on init (#27968) 2019-01-04 18:15:01 +02:00
Johann-S
3bd9fb3649 getSelectorFromElement return null on bad selectors (#27912) 2018-12-23 14:30:35 +02:00
Mark Otto
9e4e94747b
Bump to v4.2.1 (#27892) 2018-12-21 10:55:28 -08:00
Mark Otto
eda851ee76 Prep for v4.2.0 release
- Move 4.1 docs to 4.2
- Update versions everywhere to 4.1.3 with release script
- Manually bump the shorthand version in package.json
- Add 4.2 to the versions docs page
- Update some redirects
- Fix tests asset URLs
- Bump Nuget and more
2018-12-21 09:03:29 -08:00
Johann-S
1f4d7903db fix fade animation for toast 2018-12-10 10:38:11 +01:00
Mike Vastola
fc15c4c4ce Change button checkbox/radios to ignore hidden input fields (#27802) 2018-12-10 10:40:08 +02:00
Patrick H. Lauke
c70b043a76 Remove nonsensical boolean check (#27787)
...as it always evaluates to true
2018-12-06 13:30:12 +02:00
Patrick H. Lauke
6c00dd08bc Add aria-modal to modals (#27780)
Dynamically set/remove `aria-modal="true"` when a modal is shown/hidden
2018-12-05 20:58:09 +02:00
Johann-S
b16127fc10 Allow Tooltips/Popovers to work in shadow DOM 2018-12-05 16:02:59 +01:00
Johann-S
37f74c7070 fix regression about using element for tooltip container option 2018-12-05 10:57:02 +01:00
ysds
0140552322 Fix body scrolling issue when modal open (#27698) 2018-11-23 13:41:42 +01:00
Tieson Trowbridge
ab183384ee Allows both OL and UL lists for tab buttons 2018-11-20 09:58:04 +01:00
Johann-S
9201a80510 some cleaning and changes for readability 2018-11-14 10:54:50 +01:00
Johann-S
557d5ac74d Remove the show delay for our toast plugin 2018-11-13 08:47:32 +02:00
Laussel Loïc
4cac833447 Implement data-dismiss="toast" to allow user to interact itself with the component (#27155) 2018-11-13 08:47:32 +02:00
Johann-S
16cf76ff1a Create toast JS plugin, add unit tests. 2018-11-13 08:47:32 +02:00
patrickhlauke
c46a0c7e88 Replace touch-action: none with pan-y, remove preventDefault from touch event handling 2018-11-04 14:40:19 +02:00
Johann-S
f7a4b39767 handle detached tooltip when we try to hide a modal 2018-11-02 13:39:58 +01:00
Andrew Luca
bd2851938a test(Modal): check if modal is disposed 2018-10-30 16:28:32 +01:00
Andrew Luca
65dc8c9070 refactor(Modal): add _isTransitioning default value
Having variables initialised from start `_isTransitioning` is better.
Would be better to add an eslint rule to check for undeclared variables use.
Reordered enter checks for `show` and `hide` by priority.
2018-10-30 16:28:32 +01:00
Martijn Cuppens
5aed968750 Prevent the background to be shown when transitioning 2018-10-30 08:57:02 +02:00
Johann-S
91f8077ed5 add unit tests for our carousel 2018-10-29 14:49:29 +01:00
dercodercom
a282c22fc7 Update tab.js
I'm using Tab.js with remove function and get an error "TypeError: container is undefined [more info]", with this check the error is fixed.
2018-10-29 14:01:03 +01:00
Martijn Cuppens
45610a0f39 fix tab fade out (#27533) 2018-10-29 09:54:45 +01:00
Johann-S
ffc8d507c7 calculate modal transition duration based on modal-dialog element 2018-10-28 23:59:17 +02:00
XhmikosR
0a3755b30a
Fix typo in the Popper.js checks. (#27488) 2018-10-21 11:51:20 +03:00
Johann-S
b1dc6b324c avoid drag img 2018-10-20 15:32:09 +03:00
patrickhlauke
9164f77269 Refactor (and correct) start/move/end functions
in particular, no need to use originEvent, and preventDefault() only needed for touch events
2018-10-20 15:32:09 +03:00
patrickhlauke
39ae077837 Remove unnecessary pointer event listeners
these may also be the cause of weird behavior in Chrome/Surface, where scrolling vertically triggers slide advance
2018-10-20 15:32:09 +03:00
patrickhlauke
6be7293a85 Abandon swipe altogether if more than one touch detected 2018-10-20 15:32:09 +03:00
Johann-S
735c374e9c use pointer events if available 2018-10-20 15:32:09 +03:00
Johann-S
c08652cfe8 swipe left/right without hammerjs 2018-10-20 15:32:09 +03:00
Johann-S
caefd70463 Add touch support in our carousel with HammerJS. 2018-10-20 15:32:09 +03:00
galczo5
6cbcd03efb Add show and hide methods to dropdown (#27370) 2018-10-20 14:27:51 +03:00
Johann-S
7c7a1706c3 remove useless iife 2018-09-26 15:03:38 +02:00
Christopher Morrissey
ea0faadde5 feature(carousel): carousel-item interval (#26667)
adds the ability to assign data-interval to an individual carousel-item
2018-09-18 15:55:48 +03:00
Johann-S
a689120fd2 throw error when folks try to use a bad selector 2018-09-13 22:13:36 +02:00
Johann-S
6e2a823a44 collapse children with no data-parent 2018-09-10 21:10:00 +02:00
Johann-S
a3e45d8ced
add information about valid selectors (#27137) 2018-08-31 21:00:29 +02:00
XhmikosR
acd19de6a9 Use ES6 arrow function. 2018-08-12 22:22:12 +03:00
Johann-S
eab9da5beb fix(util): use querySelector for ids 2018-08-12 17:01:01 +02:00
Johann-S
6b92321f6a fix(util): use getElementById when it's possible 2018-08-07 18:49:02 +02:00
jarstelfox
198091d635 Fix dispose causing popover title to change
see: https://github.com/twbs/bootstrap/issues/26847
in v4, destroy was replaced by dispose
2018-08-02 13:51:08 +02:00
Mark Otto
3b55873438 Ship v4.1.3 2018-07-24 08:54:34 -07:00
Mark Otto
c4ccfbe04e Ship v4.1.2 2018-07-12 09:27:14 -07:00
Johann-S
283ab30164 fix(modal): fix unit test and resetting style 2018-07-11 11:05:38 +02:00
Catalin Zalog
cb82394fc8 fix(modal): removes .navbar-toggler margin 2018-07-11 11:05:38 +02:00
Johann-S
e57a2f244b fix(tooltip): get tip on placement change 2018-06-25 16:54:14 +02:00
jakubhonisek
49e094619b feat(dropdown): add original click event 2018-06-25 15:29:34 +02:00
Johann-S
a79b8aa16a refactor(plugins): query elements without jquery 2018-06-03 11:40:08 +02:00
Johann-S
b1eb3fccfa refactor(plugins): improve how we query elements 2018-06-01 10:30:11 +02:00
Johann-S
cc61edfa8a fix(scrollspy): xss in target option 2018-06-01 09:10:25 +02:00
Johann-S
149096016f fix(collapse): xss in parent option 2018-06-01 09:10:25 +02:00
Johann-S
2d90d369bb fix(tooltip): xss in container option 2018-06-01 09:10:25 +02:00
Mark Otto
779ad9f174 Bump version to v4.1.1 2018-04-30 09:04:33 -07:00
XhmikosR
5fd67a6f86 Bump version to 4.1.0 for remaining files. 2018-04-16 09:37:58 +03:00
Johann-S
ba10b63c9d fix issue related to Object.keys and Dropdown issue 2018-04-13 18:59:30 +02:00
MietekN
418fd76ba9 modal use global scope for default 2018-04-12 11:21:10 +02:00
Johann-S
0871d69ec9
v4 improve coverage (#25945)
* Improve code coverage for our Button plugin

* improve coverage for our Alert plugin

* test tooltip update method

* test update and dispose for dropdown

* increase code coverage requirements
2018-04-10 09:28:29 +02:00
Mark Otto
8f7bd41993
Ship v4.1.0 (#26218)
* update docs path from docs/4.0/ to docs/4.1/

* bump version to 4.1.0

* Update redirects to work for 4.1 docs move

* Update docs version switcher to include latest and link to 4.0 docs

* re-run dist

* Update package-lock.json

* Update docs-navbar.html
2018-04-09 09:00:23 -07:00
vsn4ik
68db42c9f8 Fix skip element disabled via attribute when using keyboard navigation 2018-03-26 09:37:25 +02:00
Johann-S
bedc96e48b Use transitionEnd in QUnit since we moved away from PhantomJS 2018-03-20 15:56:51 +01:00
Johann-S
2c41b0aea6 fix get the transition duration parent 2018-03-13 12:57:44 +01:00
Martijn Cuppens
1fadad1c33 Variable transition durations (#25662) 2018-03-13 09:59:20 +01:00
Ed Morley
b33316dba3 Fix leftover reference to v4.0.0-alpha.6
Running `./build/change-version.js v4.0.0-alpha.6 v4.0.0` fixed this,
so the version change script works fine. I'm presuming instead this
change was just omitted from 35f80bb12e, and then wouldn't have
been caught by subsequent runs of `change-version`, since it only
ever replaces the exact old version string specified.
2018-03-03 21:07:35 +01:00
Martijn Cuppens
29f178d891 Remove unused variable (#25670)
This variable is not used anywhere.

Leftover from #18373.
2018-02-25 11:22:50 +02:00
Martijn Cuppens
8cfbf6933b Consistent usage of $(document.body) instead of $('body') (#25671) 2018-02-21 09:01:02 +01:00
Martijn Cuppens
3dd0bde664 Fix carousel transition duration (#25218) 2018-02-19 10:10:25 +01:00
Johann-S
65ae622d40 Dropdown - Allow to disable Popper.js style (#24092)
* Dropdown - Allow to disable Popper.js style

* Update dropdown.js

* Update dropdown.html

* copy changes
2018-02-11 16:45:59 -08:00
Johann-S
5a6be71791 Remove escaping selector and add a warning to inform folks to escape their selectors (#25390) 2018-01-21 22:02:16 +02:00
denisx
db70164d13 ignore case (#25373)
Less on 2 symbols
2018-01-21 21:51:49 +02:00
719media
bd9084d249 Update dropdown.js to allow referenceElement (#25219) 2018-01-21 19:09:23 +01:00
Mark Otto
572d00ac7e Bump version to 4.0.0 2018-01-18 10:24:51 -08:00
XhmikosR
80d0943b95 Comply to the new rules. 2018-01-11 18:48:46 +02:00
Łukasz
1a231e4bee Check for window before window.QUnit (#25199) 2018-01-08 13:15:22 +01:00
Martijn Cuppens
a1d134f8a8 Multiple accordion support (#25161) 2018-01-03 16:40:58 +02:00
Martijn Cuppens
ae71e71fe1 Allow nested structure for accordions (#25121)
This commit allows nested structures for accordions. Also a part of
the documentation about data-children is removed because this
functionality didn't work and it's not applicable anymore.

Tests with the collapse accordion are also a bit adjusted to the new
situation.
2017-12-31 14:53:33 +02:00
XhmikosR
bf0e753517
Update devDependencies and gems. (#25083) 2017-12-31 02:03:22 +02:00
Mark Otto
ced70da441 Update version to 4.0.0-beta.3 2017-12-28 09:50:04 -08:00
Troy Morehouse
6f1e746d70 tooltip+popover: add boundary config option (#24979) 2017-12-12 11:36:54 +02:00
Troy Morehouse
8839c03865 dropdown: add boundary config option (#24976) 2017-12-12 11:28:30 +02:00
Mr_Green
9d373d7112 Use only transitionend event (#24962) 2017-12-07 12:10:18 +01:00
Alessandro Chitolina
80d4a51e79 tab.js: do not remove fade class if there's no initial active pane 2017-11-26 20:29:19 +01:00
Vasilii Artemchuk
2cafb9f127 Simplify spread (#24774) 2017-11-15 09:44:17 +01:00
Johann-S
9a0bba9afa
Object spread : less jQuery more ES6 (#24665) 2017-11-13 11:25:36 +01: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
6d00ed586b Do not create a Popper.js instance when we don't need it 2017-10-30 09:51:57 +01:00
Johann-S
2232b6b4d1 Throw error about Popper.js only when it's needed because some of our plugins don't use it (#24573) 2017-10-29 15:51:04 -07:00
Johann-S
e454c8ec1e Add dropright and dropleft (right and left placements for our dropdown) (#23860)
* Add dropright (right placement for our dropdown)

* Add dropleft

* moves drop left arrow to the left
2017-10-29 15:29:13 -07: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
62fbb23ee6 Change Rollup config to wrap our dist files with jQuery instead of $ 2017-10-24 12:39:25 +02:00
XhmikosR
ca4ad8bee8 Clean up transitionEnd properties. (#24511)
We don't support Opera 12, and Firefox's property was the unprefixed one.
2017-10-23 10:45:27 +03: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
Mark Otto
dbf5405cfd fix version number 2017-10-19 12:23:29 -07:00
Mark Otto
cf00548f4e new version number 2017-10-19 12:23:29 -07:00
XhmikosR
d763d019ad Make 1.9.1 the minimum jQuery version again. (#24434) 2017-10-19 09:02:27 -07:00
Johann-S
8e7ba02c5c Modal plugin set _isTransitioning after the trigger of hide event 2017-10-10 14:19:22 +02:00
lucascono
4b6537bef3 Fix modal bug
Fix for issue #24117
2017-10-04 06:08:34 -03:00
Johann-S
b29b1e1558 Use imported jQuery object 2017-10-04 09:55:32 +02:00
Roman O
527f55c2f3 Offset option for dropdown can be function (#24222)
* Offset option can be function (Popper.js)

* Fix...add function type for offset option

* Remove constants for popper config

* Optimize code. Remove foreach loop.

* Refactoring. Remove getOffset method
2017-10-03 14:34:44 +02: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
vsn4ik
d5890cb82f Remove not necessary condition in tooltip.js 2017-09-11 22:44:42 +03:00
Patrick Yeo
4527652177 Collapse.js preventDefault if [data-toggle="collapse"] is an anchor tag 2017-09-08 14:53:15 -07:00
Johann-S
b822b5a17f Remove placement attribute from our Dropdown plugin 2017-09-07 13:51:25 +02:00
Johann-S
e04e42d08c Merge branch 'v4-dev' into fix-jumping-modal-on-resize 2017-09-03 12:56:04 +02:00
Johann-S
37e105333d Merge branch 'v4-dev' into fix-unwanted-padding-on-modal 2017-09-02 09:04:04 +02:00
Johann-S
a4667be152 Regroup our jQuery check in the same IIFE 2017-08-31 20:54:15 +03:00
Johann-S
9936bf5944 Create a bundled release of Bootstrap with Popper.js inside 2017-08-31 18:43:04 +02:00
David Bailey
cbaf7a7b79 Fix failing test
_adjustDialog should be called when the modal is first displayed to prevent it jumping position when the viewport is resized
2017-08-29 15:42:58 +01:00
David Bailey
3f2a8db471 Use getBoundingClientRect instead of jQuery 2017-08-28 18:55:45 +01:00
David Bailey
2725acc9e5 Use jQuery outerWidth instead of offsetWidth 2017-08-28 18:44:56 +01:00
David Bailey
a4fff7c383 Fix unwanted body padding when a modal opens
Prevents the test from failing
2017-08-28 18:35:47 +01:00
Johann-S
bcad4bcb5f Fix XSS in data-target 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
Johann-S
6063b0dc65 Enable the no-return-assign rule. 2017-08-23 00:05:38 +03:00
XhmikosR
ef8c77d8dc Tweak ESLint rules. 2017-08-23 00:05:38 +03:00
XhmikosR
74d96392d2 Update devDependencies and fix a typo in comment. (#23534) 2017-08-18 16:55:59 +03:00
Johann-S
58b54b6c15 Carousel - do not call next when the carousel or the parent isn't visible 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
640c13062c When we show our tabs element use children to be more restrictive 2017-08-11 15:04:07 +03:00
XhmikosR
b55fa5579b tabs: make the active selector more restrictive again.
When one uses say a carousel inside a tab, the `.active` selector previously matches the carousel ones too leading to broken tabs.

It's not the perfect solution but should the job for now.
2017-08-11 15:04:07 +03:00
Mark Otto
35f80bb12e bump to beta 2017-08-10 20:56:35 -07: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
Johann-S
8170816094 Detect if the dropdown is in a navbar or not when update is called 2017-06-17 13:12:39 -07:00
Catalin Zalog
f640ec9662 Some .navbar .dropdown-menu optimisation (#22776) 2017-06-17 13:12:39 -07:00
Johann-S
af93db294b Reset Popper.js styles for Dropdowns in navbar 2017-06-17 13:12:39 -07:00
Johann-S
6ed8a735d0 fix some errors in our js 2017-06-16 10:57:13 +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
5f493cfc74 Remove the use of x-arrow attribute for Tooltips/Popovers arrows 2017-05-31 09:54:58 +02:00
Johann-S
4c3b6c5ceb Placement auto for popovers 2017-05-24 14:57:40 +02:00
Johann-S
2c72af88ee Placement auto for tooltips 2017-05-24 14:57:40 +02:00
Johann-S
aa36439e17 Use Popper.js to manage arrow position 2017-05-23 15:19:54 +02:00
Johann-S
70f4a30def Better management of dropdown/dropup with alignment 2017-05-22 16:14:10 +02:00
Johann-S
b36d8ae6cb Use popper to align dropdown menu instead of using css with important 2017-05-17 22:03:11 +02:00
Johann-S
c78cbb275b Change fallbackPlacement to flip by default for Tooltips/Popovers 2017-05-14 11:41:19 +02:00
Johann-S
cc455c16c3 Fix bad position for Tooltips with animation at true 2017-05-14 11:41:19 +02:00
Johann-S
0cdf176f7a Use _jQueryInterface for Dropdown to call toggle method 2017-05-14 11:41:19 +02:00
Johann-S
0ae9d28ba3 Add fallbackPlacement option for Tooltip and Popover 2017-05-14 11:41:19 +02:00
Johann-S
4f882a840c Allow to disable flip behaviour on Dropdown + documentation 2017-05-14 11:41:19 +02:00
Johann-S
e5a0471b0b Add an update method to allow to update position for Tooltip/Popover/Dropdown manually 2017-05-14 11:41:19 +02:00
Johann-S
fc8b85b626 Fix some css for the arrow of Popover/Tooltip + update documentation 2017-05-14 11:41:19 +02:00
Johann-S
18e4e851e2 Better placement for Dropdown + Handle flip of Tooltip/Popover 2017-05-14 11:41:19 +02:00
Johann-S
d5fabf8de5 Remove totaly Tether from documentation + dependencies 2017-05-14 11:41:19 +02: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
c21a2b0d92 Remove constraints option and check every options 2017-05-14 11:41:19 +02:00
Johann-S
54a8ab4011 Begin to use Popper for Dropdown 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
Johann-S
81e07ec052 Begin to add arrow to Popover and Tooltip 2017-05-14 11:41:19 +02:00
Johann-S
6cf0fe8780 Use Popper for tooltip and popover 2017-05-14 11:41:19 +02:00
Joyce Babu
db2db6cd0e Fix typo removeData for Tabs plugin
Should remove `data` not `class` on dispose
2017-04-28 15:31:35 +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
Patrick H. Lauke
fb3303f5dd Fix for copy/paste error in iOS hack to tooltips
(with apologies, this slipped through due to build system problems on my
end)
2017-04-20 14:35:33 +01:00
Patrick H. Lauke
1f37c536b2 Tweak iOS hack for dropdown
Tweak to https://github.com/twbs/bootstrap/pull/22426, where the wrong selector slipped through the net (selecting all of `<body>`s grand-children rather than children)
2017-04-20 14:08:40 +01:00
Patrick H. Lauke
ef099ad05d Add iOS hack to tooltips
Same hack as in https://github.com/twbs/bootstrap/pull/22426 (modulo the selector, which is wrong in that PR and will be updated in a separate PR) to get tooltips to work correctly on iOS. Dynamically adds/removes empty (`noop`) `touchstart` event handlers to all children of `<body>` in order to coax iOS into proper event delegation/bubbling
2017-04-20 13:49:35 +01: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
Patrick H. Lauke
6d64afe508 Replace dropdown backdrop hack with cleaner JS-only hack
* Replace backdrop with simple noop mouse listener

As discussed in https://github.com/twbs/bootstrap/pull/22422 the current
approach of injecting a backdrop (to work around iOS' broken event
delegation for the `click` event) has annoying consequences on
touch-enabled laptop/desktop devices.
Instead of a backdrop `<div>`, here we simply add extra empty/noop
mouse listeners to the immediate children of `<body>` (and remove
them when the dropdown is closed) in order to force iOS to properly
bubble a `click` resulting from a tap (essentially, method 2 from
https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html)
This is sufficient (except in rare cases where the user does manage to tap
on the body itself, rather than any child elements of body - which is not
very likely in an iOS phone/tablet scenario for most layouts) to get iOS to
get a grip and do the correct event bubbling/delegation, meaning the regular
"click" event will bubble back to the `<body>` when tapping outside of the dropdown,
and the dropdown will close properly (just like it already does, even without
this fix, in non-iOS touchscreen devices/browsers, like Chrome/Android and
Windows on a touch laptop).
This approach, though a bit hacky, has no impact on the DOM structure, and
has no unforeseen side effects on touch-enabled laptops/desktops. And crucially,
it works just fine in iOS.

* Remove dropdown backdrop styles

* Update doc for dropdowns and touch-enabled devices
2017-04-14 09:19:00 +01:00
Pierre Vanduynslager
2f94166276 Merge branch 'v4-dev' into dropdown-keyboard 2017-04-12 16:31:50 -04:00
Patrick H. Lauke
3275ca4b30 Reword "mobile" to "touch-enabled"
...as touch is not exclusive to "mobile" anymore nowadays. also explicitly clarifies this is a fix for iOS, and that it impacts touch laptops etc as well. lastly, renames the variable from "dropdown" to "backdrop" for clarity/consistency
2017-04-12 18:39:23 +01:00
Pierre-Denis Vanduynslager
81e12d5715 Indent 2017-04-12 09:41:27 -04: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
d3fbebefcd Merge branch 'v4-dev' into dropdown-keyboard 2017-04-09 18:16:37 -04:00
Patrick H. Lauke
2626eba5f1 Prevent default for ESC in modal.js
ESC can be used to close modals, but on OS X/macOS this also jumps out
of full-screen mode. `preventDefault` suppresses this.
2017-04-09 16:19:20 +01:00
Pierre Vanduynslager
fe72daf2b3 Merge branch 'v4-dev' into dropdown-keyboard 2017-04-08 18:43:25 -04: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
Pierre Vanduynslager
48c5efa4c3 Fix JS components console error "Error: <Component> is transitioning" 2017-03-28 23:43:15 +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
Johann
3f247a42f2 Fix Modal documentation about _handleUpdate method + move to public scope (#21877)
Fix Modal documentation about _handleUpdate method + move to public scope
2017-03-23 22:22:09 +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
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
Pierre Vanduynslager
275821bbb0 HTMLElement.offset* by getBoundingClientRect() (#21788)
* Replace element.offet* by getBoundingClientRect()

* Use variable to store BoundingClientRect

* Fix cc issue...
2017-03-18 18:24:54 -07:00
Johann
f2f2e39a45 Fix getSelectorFromElement when # is a selector (#21615)
* Fix getSelectorFromElement when # is a selector

* Thanks to @vanduynslagerp remove regex to validate selector
2017-03-18 17:42:11 -07:00
Pierre Vanduynslager
f2f8051285 Fix backdrop for dropdown menu on mobile (#21578)
- Create backdrop only if the menu is actually open (do not create it if the show event is prevented)
- Drop the backdrop only when the corresponding menu is closed (do not remove if there is no menu to close or if the hide event is prevented)
2017-03-18 17:41: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
fa1504e6f6 Fix code style 2017-03-08 11:15:58 +01:00
Johann-S
099486f294 Detach accordions from .card 2017-03-07 10:46:08 +01:00
Pierre-Denis Vanduynslager
4ab576a419 Fixes #21941 2017-02-08 18:51:50 -05:00
Pierre-Denis Vanduynslager
403f55fba9 Fix spacebar key in Firefox for button elements 2017-01-22 17:34:54 -05:00
Pierre-Denis Vanduynslager
a85b80fa75 Merge branch 'twbs/v4-dev' into dropdown-keyboard 2017-01-15 10:33:54 -05:00
Pierre-Denis Vanduynslager
8fbd4aaa38 Correct reference to Direction.PREV constant. (#21709) 2017-01-15 13:46:03 +11:00
Pierre-Denis Vanduynslager
c80e13a48a Use existing keycode constants in dropdown. (#21697) 2017-01-15 13:42:24 +11:00
Pierre-Denis Vanduynslager
4c2f544359 Merge branch 'twbs/v4-dev' into dropdown-keyboard 2017-01-06 15:57:15 -05:00
Mark Otto
045888fa38 version bump 2017-01-06 08:38:04 -08:00
Patrick H. Lauke
85a1fdcb29 Merge pull request #21093 from Johann-S/fixButtonGrpAria
Close #21090 - Fix aria-pressed attribute for buttons in container with data-attribute="buttons"
2017-01-05 09:35:43 +00:00
Pierre-Denis Vanduynslager
d1b742f228 Use pageYOffset instead of scrollY 2017-01-04 11:42:08 -08:00
Pierre-Denis Vanduynslager
67958f35e8 Merge conflict 2017-01-04 12:24:33 -05:00
Pierre-Denis Vanduynslager
c4867cfedb Merge branch 'twbs/v4-dev' into dropdown-keyboard
# Conflicts:
#	js/src/dropdown.js
2017-01-04 12:22:06 -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
Pierre-Denis Vanduynslager
425d156df2 Merge branch 'twbs/v4-dev' into dropdown-keyboard 2016-12-28 19:57:38 -05: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
Johann-S
b0508a975d Closes: #21412: Fix unit test for carousel 2016-12-23 22:56:55 +11: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
mr-july
1d6cdb65b3 scrollspy: fix wrong activation of all nested links (#20304)
* fix wrong activation of all nested links;
just first level item should be activated

* use template instead of string concatenation
2016-12-22 22:00:56 -08:00
Mark Otto
1f9619a517 Merge branch 'patch-1' of https://github.com/tracker1/bootstrap into tracker1-patch-1 2016-12-21 20:34:29 -08:00
Starsam80
d991c868a4
Fix tabs by using new classes 2016-12-07 21:20:18 -07:00
Starsam80
bf39bb3ac3
Rename .active to .show 2016-12-07 21:20:15 -07:00
Mark Otto
1afb6959fa remove commented out code 2016-12-04 21:05:57 -08:00
Mark Otto
1e3ec89355 Merge branch 'v4-dev' into carousel 2016-12-04 21:05:19 -08:00
Mark Otto
01f81dd552 fix js for previous 2016-12-04 20:27:21 -08:00
Mark Otto
94e2d80af4 pull in js changes from #18830 2016-12-04 19:53:16 -08:00
Johann
297c47c3fd [V4] Throw error when a plugin is in transition (#17823)
* Throw error when a plugin is in transition
* Add unit tests about plugins in transition
2016-12-02 09:52:19 -08:00
Bardi Harborow
535fec93cf Hide popovers when their containing modal is closed. (#21227) 2016-11-29 09:45:14 -08:00
Juno_okyo
8c17e5fb3c Use multi-selector to remove the same event handler (#20642) 2016-11-28 13:42:32 -08:00
Mark Otto
82875586c1 Merge branch 'v4-js-carousel' of https://github.com/J2TeaM/bootstrap into J2TeaM-v4-js-carousel 2016-11-28 13:39:56 -08: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
87a0749f89 Merge branch 'container-tooltip-option' into v4-dev 2016-11-26 17:02:40 -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
b110070dcd Follow up fix to #19953 for linting error in builds
See https://travis-ci.org/twbs/bootstrap/jobs/179010884 for build failure
2016-11-26 01:04:02 -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
Pierre-Denis Vanduynslager
3606c5b9c5 Dropdown perf - on keyboard nav, find active item in the active dropdown rather than the whole document (#19953) 2016-11-26 00:35:49 -08:00
andyexeter
0ded703f6b Implement container option for tooltips and popovers. 2016-11-26 19:13:15 +11:00
matus
39d7861f34 Scrollspy selecting the last element when at the bottom of the page (fixes #17739) 2016-11-25 17:38:42 -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
Bardi Harborow
0974267b8c Move from $.proxy to es6 arrow functions. (#21049) 2016-10-31 20:32:36 -07:00
Ilias
bf43936377 Fix #17964 (#17997)
* Fix #17964

Some browsers are lazy when updating dom elements after transition effects. This can be fixed by reading element properties such as offsetHeight or offsetWidth. However, creating a function using the Function constructor just to access such element, results in a violation of Content Security Policy (where applied), which in turn crashes the application. This fix actually reverts to the way this was handled in v3 and should work as intended.
2016-10-30 14:47: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
Mark Otto
60e51bc918 Merge pull request #18847 from Johann-S/fix18824
Fix bug multiple accordions collapse
2016-10-24 20:50:04 -07:00
Mark Otto
8ff7edaab4 version bump to alpha 5 2016-10-19 08:27:41 -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
259fa88e3e Merge pull request #17614 from Johann-S/patchTooltip
[Fix #17611][V4] Change destroy to dispose for tooltip in _JQueryInterface
2016-10-10 13:03:28 -07: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
Mark Otto
e7f79b32f2 Merge branch 'tooltip-arrow' of https://github.com/brnrdog/bootstrap into brnrdog-tooltip-arrow 2016-10-09 19:56:30 -07:00
Bardi Harborow
2e69dfa8c1 Fix broken/redirected links, moving to HTTPS where possible. (#20557) 2016-10-03 09:55:59 -07:00
J2TeaM
4f520c7ff3
Merge #20563 and #20567 2016-09-07 10:09:54 +07:00
J2TeaM
4f5a7c96e7
Fix eslint (prefer-template) 2016-09-07 03:17:19 +07:00
J2TeaM
edc43a4ea6
Remove classes at one time 2016-09-07 02:55:48 +07:00
Mark Otto
5495a4b3d3 versions 2016-09-05 12:41:44 -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
Mark Otto
24e992a6ff bump versions 2016-07-27 09:31:24 -07:00
Chris Rebert
c955868982 Enable more rules from ESLint 2.0; refs #19999 (#20076)
[skip sauce]
[skip validator]
2016-06-05 11:17:05 -07:00
Chris Rebert
2b16f5c510 Update ESLint to v2.5.3 (#20043)
Refs #19908.

[skip sauce]
[skip validator]
2016-06-04 14:28:34 -07:00
Chris Rebert
5dcd1a743d Tweak Esc key comment in modal.js
[skip sauce]
[skip validator]
2016-05-31 02:19:56 -07:00
Chris Rebert
c4add0c2f3 Comply with consistent-return ESLint rule 2016-05-31 00:45:32 -07:00
Chris Rebert
5a35ad6d74 Use named constants for magic numbers (#19992)
Mostly KeyboardEvent.which and MouseEvent.which values.

[skip validator]
2016-05-30 23:42:00 -07:00
Pierre-Denis Vanduynslager
ab2fc63d08 Dropdown: remove dependency to role="menu", role="listbox" a and li elements => fix keyboard navigation 2016-05-22 02:16:27 -04:00
akai
4d1b9d7ce7 Remove stray "~" in modal paddingRight value (#19932)
[skip validator]
2016-05-18 13:53:01 -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
Chris Rebert
afdd62d161 Modal: Remove IE8-specific window.innerWidth workaround
[skip validator]
2016-04-21 01:15:24 -07:00
Michael J. Ryan
681d390a05 Update tooltip.js
match project's style check
2016-03-14 13:29:03 -07:00
Michael J. Ryan
1a23279237 Update tooltip.js
Don't reference `Tether` via attachment to `window`, with the update one can import bootstrap providing the dependencies in webpack with:

```
new webpack.ProvidePlugin({
  $: 'jquery',
  jQuery: 'jquery',
  Tether: 'tether',
});
```

Then inside one's own bootstrap/globals, `import 'bootstrap';` will simply work, and $/jQuery can be used from there.

I had wanted to do this, but also expose jQuery, Tether, etc when in development build in my code, but if I provide `window.Tether`, I can't then expose it to the outside...
2016-03-14 13:18:08 -07:00
Patrick H. Lauke
701b12bf58 Replace jQuery with vanilla JS 2016-02-17 15:21:02 +00:00
Patrick H. Lauke
a496cb8be4 Focus (visually hidden) input radio/checkbox
This allows for keyboard navigation (e.g. arrow keys left/right to
trigger different radio buttons) following an initial mouse click
interaction
2016-02-16 14:29:59 +00:00
Johann-S
14ec4fdfc1 Carousel - Do not prevent on keydown for input and textarea 2016-02-01 00:06:07 +01:00
Chris Rebert
f2d77b674c scrollspy.js: Avoid gratuitous non-ASCII for consistency+compatibility
Fixes #19028

[skip sauce]
[skip validator]
2016-01-26 11:58:40 -08: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
Chris Rebert
ad4c0ee52f Exempt getUID() from ESLint's no-bitwise rule
[skip sauce]
[skip validator]
2015-12-24 18:53:08 -07:00
Chris Rebert
74f1d3b9b8 Merge pull request #18393 from twbs/dropdown-bitwise-less-tricksy
dropdown.js: Use more straightforward phrasing for index bound check
2015-12-24 08:16:19 -07:00
Chris Rebert
d12ed5520e Modal: Ignore spurious focus event that Firefox fires at document when switching back to its tab
Fixes #18365
Refs https://bugzilla.mozilla.org/show_bug.cgi?id=1228802
2015-12-22 23:08:03 -07:00
Chris Rebert
31d4139a74 Update version numbers using npm script
Errata from:
* 8ce5da3026
* 5d3144e8fb
which missed a few numbers.

[skip sauce]
[skip validator]
2015-12-08 18:16:47 -08:00
Mark Otto
5d3144e8fb manually bump versions because npm script wasn't working for me 2015-12-08 09:36:08 -08:00
Chris Rebert
75c39f9138 Fix version numbers is JS files; fixes #18435
[skip sauce]
[skip validator]
2015-12-05 02:19:46 -08:00
XhmikosR
92d0a71fb6 Merge pull request #18391 from twbs/double-bitwise-not-comment
util.js: Add comment explaining ~~ trick
2015-12-05 10:37:27 +02:00
XhmikosR
79a4273891 Tweak ESLint rules. 2015-12-03 08:41:46 +02:00