Commit Graph

1858 Commits

Author SHA1 Message Date
Mark Otto 9c213b7f27 upgrade to node 8.9.x and dist 2017-11-07 22:45:26 -06:00
XhmikosR 4bacf8dd04 Update devDependencies. 2017-11-08 01:04:31 +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
patrickhlauke 96a9fa1c82 Remove invalid example of `title` attribute in an SVG and related vnu error suppression 2017-10-31 21:36:17 +02:00
Mark Otto 2fec9f13cd dist 2017-10-30 12:48:13 -07: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
Mark Otto c5af0a7d6a dist 2017-10-29 16:19:14 -07: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
Mark Otto bc53cb8bc5 dist 2017-10-28 12:04:47 -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
Mark Otto 8c587d4280 dist 2017-10-25 12:31:55 -07: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
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
XhmikosR 2ef5b90136 Tighten htmllint's rules. (#24471) 2017-10-22 15:02:24 +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
Mark Otto 6124e7f229 dist 2017-10-19 09:13:17 -07:00
XhmikosR d763d019ad Make 1.9.1 the minimum jQuery version again. (#24434) 2017-10-19 09:02:27 -07:00
Mark Otto 7ce2b03b1a dist 2017-10-15 15:51:44 -07:00
Johann-S 8e7ba02c5c Modal plugin set _isTransitioning after the trigger of hide event 2017-10-10 14:19:22 +02:00
Vasilii Artemchuk 1aea9d7517 Update js/tests/README.md (#24281) 2017-10-07 01:04:21 +03:00
Johann-S 347b3ac1c0 Remove global jQuery in eslint because we import jQuery (#24246) 2017-10-04 17:31:35 +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
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
XhmikosR ee574b76a7 Switch to lowercase `doctype`. (#24217)
Having it uppercase doesn't offer anything and the lowercase version slightly improves gzip compression.
2017-10-03 19:34:59 +03: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
XhmikosR 499f9dc960 js/tests/visual/tab.html: fix HTML validation errors. (#24183) 2017-10-01 09:49:35 +03:00
Mark Otto f5ad6e3987 dist 2017-09-30 14:28:03 -07:00
XhmikosR 502ac7ee4d Lint docs js too and use `strict consistently. (#24160) 2017-09-28 17:25:28 +03:00
XhmikosR e8d9a034d0 Add eslint-plugin-compat.
We can check for browser compatibility on lint time now.
2017-09-26 17:16:27 +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
Mark Otto 75d435f76e dist 2017-09-12 22:24:15 -07:00
vsn4ik d5890cb82f Remove not necessary condition in tooltip.js 2017-09-11 22:44:42 +03:00
Johann-S 96659a3cad Merge branch 'v4-dev' into collapse-js-with-text-truncate 2017-09-11 10:54:35 +02:00
Mark Otto d8a5147c38 dist 2017-09-09 16:59:37 -07: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
Mark Otto df47558ef6 dist 2017-09-05 21:05:12 -07: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 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 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
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
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
Mark Otto 6bea2e24fe dist 2017-08-20 13:36:58 -07:00
Mark Otto 25bbfcdd7c dist 2017-08-20 12:09:33 -07:00
XhmikosR 74d96392d2 Update devDependencies and fix a typo in comment. (#23534) 2017-08-18 16:55:59 +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 58b54b6c15 Carousel - do not call next when the carousel or the parent isn't visible 2017-08-17 17:48:14 +01:00
Mark Otto ca7b7cd377 dist 2017-08-14 20:23:45 -07:00
Mark Otto 2be34d5ce9 dist 2017-08-13 12:59:27 -07: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 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
XhmikosR 88c9a1609c Fix ESLint docs errors. (#23163)
Ignore ESLint error in ie-emulation-modes-warning.js.

Although the error is valid, enough time has been spent on old IE's problems, so just ignore it.
2017-07-28 09:18:47 +03:00
Mark Otto 082c9d92fe dist 2017-07-16 13:11:21 -07:00
Bardi Harborow 028863dd08 Fall back to ESLint v3 indentation behaviour. 2017-07-16 13:51:16 +10:00
Bardi Harborow d35020cee8 Update dependencies. 2017-07-16 13:51:16 +10:00
Mark Otto 2a745e54de npm build 2017-07-04 11:55:16 -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
Mark Otto 93b2682880 npm build 2017-07-02 10:40:27 -07:00
Mark Otto 337ead4b27 build dist 2017-07-01 22:25:38 -07:00
Mark Otto 7f6479b0d9 build dist 2017-06-30 15:45:27 -07:00
Mark Otto eedbe43ea7 build dist 2017-06-30 13:15:09 -07:00
Mark Otto 56d43eb3e9 Merge branch 'v4-dev' into colors-redux 2017-06-30 08:33:09 -07:00
Mark Otto f83c981d08 build dist 2017-06-30 08:32:49 -07:00
Mark Otto 6055453e41 Merge branch 'v4-dev' into colors-redux 2017-06-29 23:15:48 -07:00
Mark Otto f46f26bbaa build 2017-06-29 21:31:11 -07:00
Mark Otto 52cf0fe648 update instances of .bg-inverse and .bg-faded to .bg-dark and .bg-light 2017-06-25 18:31:23 -07:00
Mark Otto 36e482ed27 update navbars to rename .navbar-inverse to .navbar-dark, update all navbar examples and variables 2017-06-25 18:29:43 -07:00
Mark Otto 16d77b4cb0 build 2017-06-18 18:32:16 -07:00
Mark Otto 72a0093200 build 2017-06-18 00:14:35 -07: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
Mark Otto ce98a1da5b build 2017-06-17 10:13:43 -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
Mark Otto 6c8c0aa4cf Rename .card-block to .card-body to match nomenclature of modals 2017-06-15 09:05:16 -07:00
Mark Otto 2e798301ca build 2017-06-14 20:44:32 -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
Johann-S 1ec68d748b Upgrade QUnit to 2.3.3 2017-06-14 11:18:12 +02:00
Johann-S 2d87895089 Update path to our docs assets for visual tests 2017-06-04 11:08:31 +02:00
Mark Otto 620257456e build 2017-05-31 21:25:47 -07:00
Mark Otto 332d882cdb Merge branch 'v4-dev' into v4-docs-streamlined 2017-05-31 20:46:29 -07:00
Johann-S 5f493cfc74 Remove the use of x-arrow attribute for Tooltips/Popovers arrows 2017-05-31 09:54:58 +02:00
Mark Otto 2fd192968d Merge branch 'v4-dev' into v4-docs-streamlined 2017-05-30 23:31:40 -07:00
CDAGaming ccd86bdc96 Update Dependencies (REUPLOAD) (#22594)
* Update Dependencies (REUPLOAD)

Uglify-JS: 2.8.22 > 3.0.3
QUnitJS: 2.3.1 > 2.3.2
PostCSS-CLI: 3.1.1 > 4.0.0
Clean-CSS-CLI: 4.0.12 > 4.1.0
Babel-Eslint: 7.2.2 > 7.2.3
AutoPrefixer: 6.7.7 > 7.0.1

* Updates More Dependencies

Autoprefixer: v7.0.1 > v7.1.1
Clean-CSS-CLI: v4.1.0 > v4.1.3
Node-Sass: v4.5.2 > v4.5.3
PostCSS-FlexBugs-Fixes: v2.1.1 > v3.0.0
Uglify-JS: v3.0.3 > v3.0.11
Signed-off-by: CDAGaming <cstack2011@yahoo.com>

* Update Gem Bundler Dependency

Signed-off-by: CDAGaming <cstack2011@yahoo.com>

* Update Gemfile.lock Dependency

Signed-off-by: CDAGaming <cstack2011@yahoo.com>

* Update QUnit

Signed-off-by: CDAGaming <cstack2011@yahoo.com>

* Update Uglify-JS to v3.0.13

Signed-off-by: CDAGaming <cstack2011@yahoo.com>
2017-05-30 21:11:56 -07:00
Mark Otto 73a550c7f8 update paths 2017-05-29 23:32:28 -07: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
Mark Otto 4282d892f3 build 2017-05-26 20:20:10 -07: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 3719ed4cb6 build 2017-05-16 10:09:48 +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 ab7dc8ae2a Fix dropdown in scrollspy visual test (add Popper.js) 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
Mark Otto ba312c20a5 build 2017-04-21 23:58:09 -07:00
Zach Leatherman 638b97f19c Arguably more professional pictures of Rick Ross 2017-04-21 20:51:35 -07:00
Bardi Harborow 2906b612d5 More minor build tweaks and docs updates. 2017-04-21 21:08:40 +10: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
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
Mark Otto bc0cf36dc8 grunt 2017-04-16 13:54:07 -07: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 Vanduynslager 208e0384df Merge branch 'v4-dev' into dropdown-keyboard 2017-04-12 10:36:14 -04:00
Pierre-Denis Vanduynslager 81e12d5715 Indent 2017-04-12 09:41:27 -04:00
Patrick H. Lauke 53b2c5520b Remove inappropriate role="listbox" from carousels 2017-04-11 11:12:30 +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 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
Mark Otto 364e01885f grunt 2017-04-08 13:22:53 -07:00
Ilias e6e070b02a Fix #22332: Adjust tests for hidden scrollbar 2017-04-03 13:27:15 +02:00
Mark Otto 7d88f365c0 Merge branch 'v4-dev' of https://github.com/twbs/bootstrap into v4-dev 2017-04-02 12:00:52 -07: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
Mark Otto 49b6cf845d grunt 2017-04-01 19:18:29 -07: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
Mark Otto cf7d3e11e0 grunt 2017-03-28 09:31:32 -07:00
Johann 904efc043d Fix different tooltips offset when hovering 2017-03-28 15:55:03 +02:00
Mark Otto 7742ba6dc9 grunt 2017-03-27 22:56:14 -07:00
Johann 24924c23b2 Collapse - do not prevent event for input and textarea 2017-03-27 10:08:39 +02:00
Mark Otto 4ab06ca453 grunt 2017-03-26 11:26:31 -07:00
Mark Otto 90c5f6230b rename from .navbar-toggleable to .navbar-expand to reflect mobile first approach everywhere else 2017-03-23 23:02:28 -07:00
Mark Otto 11ba308b2f more docs updates 2017-03-23 23:02:28 -07: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
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
Bardi Harborow cab6f7d16c More config tweaks. 2017-03-21 21:37:33 +11:00
Bardi Harborow 09fb2b9af3 Update dependencies. 2017-03-20 17:37:05 +11:00
Mark Otto e506e59c45 grunt 2017-03-19 19:03:32 -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
Pierre-Denis Vanduynslager f5cc591456 Merge branch 'twbs/v4-dev' into dropdown-keyboard 2017-03-18 22:08:55 -04:00
Mark Otto ae50bb7845 grunt 2017-03-18 18:47:57 -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
Mark Otto 5a5ab4c0de grunt 2017-03-18 16:51:32 -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
Bardi Harborow 84ce248f06 Update config files across the board. 2017-03-12 16:15:00 +11:00
Johann-S 21b537cc24 Add unit test 2017-03-09 11:08:47 +01: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
Bardi Harborow 6593b15555 Refactor QUnit test page. 2017-02-22 11:14:47 +11:00
Pierre-Denis Vanduynslager 4ab576a419 Fixes #21941 2017-02-08 18:51:50 -05:00
Bardi Harborow cb87eebcbb Update dependencies. 2017-02-05 23:50:06 +11:00
Pierre-Denis Vanduynslager 403f55fba9 Fix spacebar key in Firefox for button elements 2017-01-22 17:34:54 -05:00
Pierre-Denis Vanduynslager 1cdd0d16c1 Merge branch 'twbs/v4-dev' into dropdown-keyboard 2017-01-22 17:32:50 -05:00
Mark Otto deb1c59c53 grunt 2017-01-21 17:50:45 -08: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 59f438b40e Merge branch 'twbs/v4-dev' into dropdown-keyboard 2017-01-20 20:27:17 -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 57713c9fc5 Fix missing closing tag 2017-01-18 15:01:06 -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
Patrick H. Lauke 6b48ba4e0d Remove incorrect aria-multiselectable
Closes https://github.com/twbs/bootstrap/issues/21635
2017-01-11 23:57:59 +00: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
Mark Otto d2fbf58546 grunt 2017-01-06 08:39:56 -08:00
Mark Otto 045888fa38 version bump 2017-01-06 08:38:04 -08:00
Mark Otto 43d9391fba grunt 2017-01-05 14:51:14 -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
Mark Otto 0015da793a grunt 2017-01-04 11:59:07 -08: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
Mark Otto 56f917dd8c grunt 2017-01-03 13:16:18 -08: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 9fc54f89f4 grunt 2017-01-02 11:54:28 -08:00
Mark Otto c61a0059ad update seletors in js 2017-01-02 11:52:38 -08:00
Mark Otto 20b05e42e3 update rest of docs, remove navbar specific modifiers, fix docs example css 2017-01-02 11:48:51 -08:00
Heinrich Fenkart daff021578 grunt 2017-01-01 03:21:02 +01:00
Mark Otto e2b6badb86 v4: Rip out IE compatibility mode meta tags (#21483)
* Remove IE compatibility mode meta tag from docs, examples, and JS tests as we no longer support IE9 and IE8
* update and remove some IE bits from our supported browser page
* update introduction.md to match
* reword starter template intro
2016-12-31 12:20:32 -08:00
Johann-S 026e1a1421 Allow to use nav with tab JS 2016-12-31 00:54:00 -08:00
Mark Otto d935cca9f6 one more test file 2016-12-31 00:52:08 -08:00
Mark Otto 55413e109f nuke local test vendor jquery and tether, replace with docs assets 2016-12-31 00:52:08 -08:00
Johann-S 719318f485 Update visual test carousel 2016-12-31 00:51:19 -08:00
Mark Otto 92fa9b2256 fix navbar in dropdown visual test file 2016-12-30 22:45:39 -08:00
Bardi Harborow a8100e1f01 Extend ESLint to cover all JS files and drop JSCS. 2016-12-31 16:49:15 +11:00
Johann-S 95ce03f000 Close #21249 : Add a Unit test for #21227 2016-12-29 13:28:42 -08:00
Pierre-Denis Vanduynslager 425d156df2 Merge branch 'twbs/v4-dev' into dropdown-keyboard 2016-12-28 19:57:38 -05:00
Mark Otto d3646e3884 grunt 2016-12-27 14:27:41 -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
Mark Otto 0e8ee1bfba grunt 2016-12-25 15:47:03 -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
Mark Otto cd18ee8af6 grunt 2016-12-24 14:29:41 -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
Mark Otto ab38529dcc grunt 2016-12-19 21:48:24 -08:00
Mark Otto 8eeb71c91c Merge branch 'fix-20982' of https://github.com/Starsam80/bootstrap into Starsam80-fix-20982 2016-12-19 21:44:03 -08:00
Mark Otto cd76a6775d grunt 2016-12-07 20:46:17 -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
Mark Otto 3ec37d4a4d grunt 2016-12-02 10:13:36 -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
Mark Otto 59dc3e174d grunt 2016-11-29 21:37:00 -08:00
Bardi Harborow 535fec93cf Hide popovers when their containing modal is closed. (#21227) 2016-11-29 09:45:14 -08:00
Mark Otto 9749bab4ce grunt 2016-11-28 17:18:44 -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
Mark Otto d6c1fa37bd grunt 2016-11-28 13:36:46 -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 0b8a281920 grunt 2016-11-26 19:17:23 -08:00
Mark Otto 87a0749f89 Merge branch 'container-tooltip-option' into v4-dev 2016-11-26 17:02:40 -08:00
Mark Otto c7b8451cdc grunt 2016-11-26 11:16:53 -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 bb6c197d9b grunt 2016-11-26 01:04:12 -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 19ab4873ff grunt 2016-11-26 01:00:16 -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
Mark Otto e953d5d4f0 grunt 2016-11-26 00:40:17 -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
Johann ce18a66809 Add test unit to check logic of ignoreBackdropClick (#18245) 2016-11-25 22:57:20 -08:00
matus d328c911cb Added a virtual test 2016-11-25 17:39:00 -08: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 49be9bc63a grunt 2016-11-25 15:00:23 -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
Bardi Harborow 26c16743fc Refactor ESLint configuration. 2016-11-24 11:59:55 +11:00
Bardi Harborow b9e7cef965 Update visual tests. 2016-11-13 02:34:18 +11:00
Mark Otto cd5c7a2263 grunt 2016-10-31 21:36:10 -07:00
Mark Otto ffaad0a819 Responsive display utilities (#20934)
* Explore responsive display utils, but with a twist: lowest breakpoint has no breakpoint modifier in the class name
* make floats use the same format, add float-none mixin
2016-10-31 21:27:56 -07:00
Mark Otto 76d53404b5 grunt 2016-10-31 21:14:23 -07: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
Mark Otto d1171ac44a grunt 2016-10-30 15:21:53 -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
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
Mark Otto 9dbfc90eae grunt 2016-10-27 09:51:22 -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 d4d53cad96 grunt 2016-10-19 08:28:19 -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
Mark Otto 6d6538fc81 grunt 2016-10-16 19:44:11 -07:00
vsn4ik 85327e4f9a v4: Fix outdated utilites classes 2016-10-12 01:46:10 +03: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 7407518fd1 grunt 2016-10-09 20:39:50 -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 4493701ee2 grunt 2016-10-09 20:26:49 -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
Mark Otto 571e86e770 grunt 2016-10-09 17:26:51 -07:00
Mark Otto 6def7a5d56 Merge pull request #20555 from bardiharborow/updatedeps
Update dependencies, including Babel to v6 and zeroUnits fix.
2016-10-09 17:08:39 -07:00
Mark Otto a2a53cb8c5 grunt 2016-10-09 12:39:56 -07:00
Bardi Harborow d57d5a606b Update dependencies, including Babel to v6 and zeroUnits fix. 2016-10-09 12:15:17 +11:00
Bardi Harborow 2e69dfa8c1 Fix broken/redirected links, moving to HTTPS where possible. (#20557) 2016-10-03 09:55:59 -07:00
VarelloThemes 63129112bb replace some profanities (#20715) 2016-09-15 09:39:31 -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 d90d060c8c grunt 2016-09-05 12:42:12 -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 0fd2f8b889 grunt dist 2016-07-27 09:32:05 -07:00
Mark Otto 24e992a6ff bump versions 2016-07-27 09:31:24 -07:00
Chris Rebert ed3ba47425 Support jQuery v3 in Bootstrap v4 (#20191)
* bower.json, package.json: Extend jQuery version ranges to include v3
* NuGet: Bump jQuery to v3.0.0.1
* Docs+Examples: Update jQuery to v3.0.0
* Use jQuery v3.0.0 for JS unit tests
* Update jqueryVersionCheck to allow jQuery v3.x.x
2016-06-28 22:19:46 -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
Mark Otto aaad85bc30 Merge branch 'v4-dev' of https://github.com/twbs/bootstrap into v4-dev 2016-06-12 21:17:14 -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 0f3d427bbd grunt
[ci skip]
2016-06-04 18:21:15 -07:00
Chris Rebert eb350d1a7c Upgrade to latest version of JSCS (v3.0.4) (#20070)
Fixes #20002

[skip sauce]
[skip validator]
2016-06-04 17:55:21 -07:00
Chris Rebert 04165ba6e3 Update ESLint to v2.11.1 (latest stable) (#20068)
Fixes #19908

[skip sauce]
[skip validator]
2016-06-04 17:08:59 -07:00
Chris Rebert d1b8ec85e2 Upgrade ESLint to v2.9.0 (#20047)
Refs #19908

[skip sauce]
[skip validator]
2016-06-04 15:07:16 -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 92ec110f08 Upgrade ESLint to v2.3.0 (#20041)
Refs #19908

[skip sauce]
2016-06-04 14:01:12 -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 92e9d9de62 Enable new ESLint-recommended rules in ESLint config
Refs http://eslint.org/docs/user-guide/migrating-to-2.0.0#new-rules-in-eslintrecommended
2016-05-31 00:49:48 -07:00
Chris Rebert 4d3bd8e6c5 Migrate parser & env config to ESLint 2.0.0 2016-05-31 00:46:33 -07:00
Chris Rebert c4add0c2f3 Comply with consistent-return ESLint rule 2016-05-31 00:45:32 -07:00
Chris Rebert 0efec1a3db Migrate ESLint rules config to ESLint 2.0.0
Refs http://eslint.org/docs/user-guide/migrating-to-2.0.0
2016-05-31 00:39:39 -07:00
Chris Rebert 9324da7aeb Upgrade ESLint to v1.10.3
Refs #19908
2016-05-31 00:12:17 -07:00
Chris Rebert 00a3e1d9ad Upgrade ESLint to v1.9.0
Refs #19908
2016-05-30 23:59:24 -07:00
Chris Rebert 324cbb2280 Upgrade ESlint to v1.7.3
Enable new rules:
* no-empty-pattern
* no-magic-numbers (exempting 0 and ±1)

Refs #19908

[skip sauce]
[skip validator]
2016-05-30 23:42:22 -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
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
XhmikosR 4bca0f878a Merge pull request #19894 from twbs/v4-dev-jquery223
Update jQuery to v2.2.4.
2016-05-26 15:40:02 +03:00
XhmikosR a950d5642b Update jQuery to v2.2.4. 2016-05-26 15:26:12 +03: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
Mark Otto 932d0aa068 grunt 2016-05-08 13:43:13 -07:00
Chris Rebert afdd62d161 Modal: Remove IE8-specific window.innerWidth workaround
[skip validator]
2016-04-21 01:15:24 -07:00
XhmikosR 8a878c1f7b Update jQuery to v2.2.2. 2016-03-19 15:21:12 +02: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
Chris Rebert 25cf50a4ac JS visual tests: Remove usages of defunct .page-header class
[skip sauce]
2016-02-27 18:01:12 -08:00
XhmikosR 96cafe2d2d Update tether to v1.2.0.
[skip sauce]
[skip validator]
2016-02-27 13:56:40 +02:00
XhmikosR 255e89b241 Run grunt.
[ci skip]
2016-02-19 13:14:47 +02:00
XhmikosR 79067a6440 Fix validation errors.
[skip sauce]
2016-02-19 11:26:54 +02:00
Patrick H. Lauke 701b12bf58 Replace jQuery with vanilla JS 2016-02-17 15:21:02 +00:00
Mark Otto 3b84ffcc54 grunt 2016-02-16 20:09:57 -08:00
Patrick H. Lauke 83217479c3 Visual/manual test for checkbox/radio button kbd behavior 2016-02-16 21:24:29 +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
Chris Rebert ff4792fcef js/tests/index.html: Replace jQuery event alias methods with functions that throw explanatory errors, instead of with undefined
Refs https://github.com/twbs/bootstrap/pull/19219#issuecomment-184653699

[skip validator]
2016-02-16 04:05:41 -08:00
Mark Otto 0e70c6a37f Merge branch 'v4-dev' of https://github.com/twbs/bootstrap into v4-dev 2016-02-03 19:23:29 -08: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 422ed9ab48 grunt dist docs
[ci skip]
2016-01-01 12:37:52 -08:00
Chris Rebert 5deb734b53 ESLint: enable no-bitwise rule
[skip sauce]
2015-12-24 18:53:41 -07: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 d30310feae Merge pull request #18638 from twbs/fix-18365
Modal: Ignore spurious focus event that Firefox fires at document when switching back to its tab
2015-12-24 08:15:27 -07:00
XhmikosR 612ff4f5d1 Run `grunt`.
[ci skip]
2015-12-24 12:50:15 +02: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 2c69e0f810 Add visual test for #18365
See also https://bugzilla.mozilla.org/show_bug.cgi?id=1228802
2015-12-22 23:08:03 -07:00
Chris Rebert 96e9205009 js/tests/unit/modal.js: Fix typo
[ci skip]
2015-12-22 17:11:21 -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
XhmikosR b7b448a0e7 Run `grunt`.
[ci skip]
2015-12-05 12:59:13 +02: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 34a0ce571e Run `grunt`.
[ci skip]
2015-12-05 11:43:23 +02: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 8a1685fdee Run `grunt`.
[ci skip]
2015-12-03 08:51:57 +02:00
XhmikosR 79a4273891 Tweak ESLint rules. 2015-12-03 08:41:46 +02:00
XhmikosR e55fcbcdfe tests: bump QUnit to v1.20.0.
[skip validator]
2015-12-03 08:41:46 +02:00
Chris Rebert 31ca64232d dropdown.js: Use more straightforward phrasing for index lower bound check
[skip sauce]
[skip validator]
2015-11-30 23:59:39 -08:00
Chris Rebert a887a1207c util.js: Add comment explaining ~~ trick
[skip sauce]
[skip validator]
2015-11-30 23:47:56 -08:00
Chris Rebert 580e2f7845 Remove stray </p> from js/tests/visual/scrollspy.html
[skip sauce]
2015-11-19 01:50:20 -08:00
XhmikosR eea6690d0e Run `grunt`.
[ci skip]
2015-11-16 10:03:57 +02:00
Jacob Thornton ece98f980c add undefined for now 2015-11-14 20:43:45 -08:00
Jacob Thornton d600831a15 add explicit error for lack of tether in tooltips - fixes #17273 2015-11-14 20:35:10 -08:00
Jacob Thornton 186c1c6d80 Merge branch 'v4-dev' of https://github.com/lincolndbryant/bootstrap into lincolndbryant-v4-dev 2015-11-14 19:49:48 -08:00
XhmikosR a291d79ecb Run `grunt`.
[ci skip]
2015-11-11 09:00:47 +02:00
Jon Tewksbury 2d87ec9a64 Add eslint no-undef rule and resolve errors 2015-11-03 15:04:26 -08:00
Chris Rebert 1dc8583bc5 grunt dist 2015-10-29 22:08:31 -07:00
XhmikosR 7a85751144 Remove html5shiv and respond.js from test files. 2015-10-26 23:57:19 +02:00
XhmikosR a50849f61b Switch to jQuery 2.1.4.
Now that we don't support IE 8 it's safe to do that.
2015-10-24 19:09:33 +03:00
Henry Zhu 8924b5044e update grunt-jscs to 2.1.0 to use jscs 2.x 2015-10-19 08:17:13 -04:00
XhmikosR 724bf86288 Run `grunt`.
[ci skip]
2015-10-14 00:49:31 +03:00
Johann-S 817d997b75 Use Page Visibility API in Carousel; fixes #17706
Avoids cycling carousels when the page isn't visible.
Closes #17710
Refs #15566
2015-10-11 15:10:49 -07:00
Chris Rebert b74536fa8c grunt dist 2015-10-09 21:03:57 -07:00
Chris Rebert 10f6e97ec2 Merge pull request #17616 from Johann-S/ThrowError
Fix #17612: Throw explicit error when a nonexistent method is invoked
2015-10-02 01:18:16 -07:00
Johann-S 21a65f181e Add throw error for undefined method on plugins 2015-10-02 10:01:24 +02:00
XhmikosR 22c8c1e887 Specify `root: true` for ESLint.
That way, ESLint won't look in parent dirs for configuration files.
2015-09-24 20:24:38 +03:00
XhmikosR b93c16341d Run `grunt`. 2015-09-23 09:39:13 +03:00
Johann-S 6d451ad99d Change destroy -> dispose 2015-09-16 09:46:55 +02:00
Johann-S 32f9a5d6a5 fix resetting style on closing collapse 2015-09-11 10:45:08 +02:00
Johann-S 8ece899ba8 Add tests about padding restoration 2015-09-10 08:19:59 +02:00
XhmikosR f0840c893b Run `grunt`. 2015-09-05 08:13:43 +03:00
muzige2000 3af4560c67 Modals: Fix bad paddingRight calculation; fixes #17399
We want to sum two numbers, not concatenate their stringifications.
Closes #17457 by merging a tweaked version of it.
2015-09-03 01:25:38 -07:00
Gleb Mazovetskiy c7d8e7a077 Accept elements as the tooltip / popover content
When a DOM node is passed to an HTML tooltip, the `title` node is only
moved if it is not already in the tooltip. Otherwise, `empty()` is used
instead of `detach()` before appending the `title` to avoid memory
leaks. If a DOM node is passed to a plain text tooltip, its text is
copied via jQuery `.text()`.

Replaces `.detach()` with `.empty()`, as `.detach()` is almost never
useful but instead leaks memory. The difference between `empty` and
`detach` is that the latter keeps all the attached jQuery events/data.
However, since we do not return the previous children, the user would
have to keep these themselves, thus they can `detach()` if necessary.

This is a port of https://github.com/twbs/bootstrap/pull/14552 to v4.
2015-08-31 01:06:13 +01:00
XhmikosR 4dd9a5a6dc Update QUnit to v1.18.0. 2015-08-27 08:15:19 +03:00
XhmikosR 13e33e329c Remove the obsolete JSHint references. 2015-08-27 08:11:11 +03:00
Bernardo Gurgel Filho 8ef66df6d7 Convert popover's arrows to generated CSS content via :before/:after 2015-08-26 17:20:01 -03:00
Bernardo Gurgel Filho 2ae5fdf9dd Convert tooltip's arrows to generated CSS content via :before 2015-08-26 17:20:01 -03:00
Chris Rebert d06f79e2f7 grunt babel:dev 2015-08-26 01:27:45 -07:00
Jelle Versele 54c4eb950b fixes #17097: Go back to using jQuery's text and html methods since innerText is nonstandard and not present in Firefox
Closes #17272 by merging a tweaked version of it.

[skip validator]
2015-08-26 01:00:46 -07:00
XhmikosR 7e2eb9e74a js/.eslintrc: sort rules by name.
[ci skip]
2015-08-25 08:45:07 +03:00
Heinrich Fenkart 73a88dbe86 Docs: Update all dropdowns to new HTML structure 2015-08-21 00:18:55 +02:00
Boris Kaiser 463837c1c7 Remove duplicate "spaced-comment" in eslintrc
Closes #17100
2015-08-20 01:27:47 -07:00
lbryant 8b15b5a262 _removeTetherClasses is no longer referenced 2015-08-20 01:22:16 -04:00
lbryant 926fb11158 use Tether addTargetClasses: false option instead of manually removing them 2015-08-20 01:03:29 -04:00
Jacob Thornton 03e732708c rewrite tab with new active shit 2015-08-18 22:03:34 -07:00
Jacob Thornton 4e45e2363c Merge branch 'v4' of github.com:twbs/derpstrap into v4 2015-08-18 21:23:53 -07:00
Jacob Thornton fd65b9f32e some minor alert shit 2015-08-18 20:33:57 -07:00
Mark Otto 1c19ded8c1 Merge branch 'v4' of https://github.com/twbs/derpstrap into v4 2015-08-18 20:25:48 -07:00
Jacob Thornton 8cfde5ef29 fix modal visual example for js 2015-08-18 19:50:32 -07:00
Jacob Thornton efae761c39 fix dropdown js visual example 2015-08-18 19:42:27 -07:00
Jacob Thornton 18ff57a183 js tests passing + eslint 2015-08-18 19:22:46 -07:00
Mark Otto 15b7ce59df grunt 2015-08-18 18:45:12 -07:00
Jacob Thornton f1827e5f9c add polyfil for bind for tether.js 2015-08-18 17:06:17 -07:00
Jacob Thornton 19e43b62ed use proxy not bind in alert 2015-08-18 17:01:56 -07:00
Jacob Thornton 05c7a37507 fix dropdown test 2015-08-15 12:17:13 -07:00
Jacob Thornton c830956d17 change modal.js to use is-fixed classes to target padding-right 2015-08-15 12:10:24 -07:00
Jacob Thornton 11abb0f7e9 fix modal 2015-08-12 21:12:03 -07:00
Jacob Thornton 23d05f1585 get the js working for docs 2015-08-12 19:59:55 -07:00
Mark Otto 1ddc3f5e21 Merge branch 'master' into v4m 2015-08-04 22:29:45 -07:00
Johann-S ef1ce9ac0b Fix triggering of {shown,hidden}.bs.dropdown events so relatedTarget gets set properly
Fixes #16828
Closes #16865
2015-07-27 00:58:51 -07:00
Melinda Sarnicki Bernardo cebea5b6f6 Removes unnecessary period at end of comment 2015-07-02 19:30:11 -07:00
Mark Otto 169d2a4a78 Merge branch 'master' into v4 2015-06-18 23:56:43 -07:00
Mark Otto 83bfff7f07 bump version 2015-06-16 09:10:22 -07:00
Patrick H. Lauke 5fd7bc1554 generalize dropdowns / drop role="menu"
as role="menu" is a very specific (and strict) ARIA pattern for
desktop-like application menus, and our dropdowns are often used
as pure navigation dropdowns, this change abandons ARIA menus for
a more open-ended and light-weight approach
(see http://heydonworks.com/practical_aria_examples/#submenus and
http://www.w3.org/WAI/tutorials/menus/flyout/#improve-screen-reader-support-using-wai-aria)
note that in dropdown.js, switched to now target ``.dropdown-menu``
instead of ``role["menu"]`` - this also prevents bootstrap scripts
from "bleeding" into non-bootstrap components on the same page.
also removed the ``role=["listbox"]`` part, which appears to be
vestigial/unused (only place in bootstrap that uses that
role are carousels, and their key handling is done separately)
2015-06-02 11:03:21 +01:00