Commit graph

34 commits

Author SHA1 Message Date
scottjehl
a2bfc27492 Implemented and documented the tapToggleBlacklist option of the fixedtoolbar plugin, which tells the plugin to ignore certain targets for tap toggling the toolbars. The default list is "a, input, select, textarea, .ui-header-fixed, .ui-footer-fixed". 2012-01-27 19:34:14 +07:00
scottjehl
45eb085167 ensure that fullscreen toolbars do not animate in when the page is first shown 2012-01-26 17:24:23 +07:00
scottjehl
bb62031cc3 added support for the updatelayout event, so that fixed toolbars can be manually updated through this event alongside other plugins that subscribe to it. 2012-01-26 16:21:02 +07:00
scottjehl
bb17f146e4 added an argument to the show and hide methods to specify that no transition should be used, regardless of the default transition type. This is now used on pageshow, so the toolbar does not use an animated transition when the page is initially shown. 2012-01-26 16:06:44 +07:00
scottjehl
ee0573e7d2 set the default toolbars transition to slide, because it looks kinda nice 2012-01-26 15:18:33 +07:00
scottjehl
82ed98cffc some edits to make sure proper classes are toggled for the slide transition to work, if it's set. 2012-01-26 15:16:52 +07:00
scottjehl
893508710a renamed togglePageZoom option disablePageZoom 2012-01-26 14:26:26 +07:00
scottjehl
716bf7f45d removed ability to set "fullscreen" on the page itself. Instead, this should be set on the fixed toolbar elements. 2012-01-26 12:18:00 +07:00
scottjehl
72b0d46dff Added updatePagePadding option to automate the use of the updatePagePadding method, with a default value of true. When true, this method calls the updatePagePadding method on webkitAnimationStart, animationstart, pageshow, and throttledresize. The animation events catch the page before it transitions in, whereas pageshow event serves the purpose of catching the page when animations are not in play, or when there's no FROM page that you're transitioning from. Lastly, the throttledresize event updates the value on resize.
This method still needs unit test coverage. Fixes #3484
2012-01-25 22:15:40 +07:00
scottjehl
99db3d039f Merge remote branch 'origin/master' 2012-01-25 18:26:57 +07:00
scottjehl
699001a3c6 Added an experimental "updatePagePadding" method, which allows developers to adjust the page element's padding to accommodate a taller toolbar, so there is no overlap.
Addresses Issue #3484

Caveats:

- This method must be called when the toolbar is visible, meaning you'll see a visible jump when a page is shown. For this reason, I'm hesitant to recommend this feature. It would be a lot smoother to set the page padding in a custom CSS file to make up for whatever EM height your toolbars happen to be.

- Height is set in Pixels, meaning changes in font size could  render it inaccurate. If we want to set height in ems, we'll need to add an em conversion  utility function to jQM.

- To ensure it works properly, this method will need to be called on page show, and at any time a content reflow might occur: resize, orientationchange, zoom?

This method is not currently called automatically.

It can be called like this: $(".ui-header-fixed").fixedtoolbar( "updatePagePadding" );
2012-01-25 18:26:04 +07:00
scottjehl
544cdb49d6 if the option to disable page zoom on pages that contain a fixed toolbar is true, the plugin needs to use the lock to prevent other plugins from enabling zoom again while the page is in view. Fixes #3477 2012-01-25 17:39:13 +07:00
scottjehl
56607b946c this dependency is already in the define statement, which should be enough 2012-01-25 17:32:51 +07:00
jrburke
096e90bbfe Update to relative AMD dependencies, allows proper use of source in an AMD project. 2012-01-24 14:43:24 -08:00
scottjehl
40c400d657 Merge remote branch 'origin/master' 2012-01-24 17:34:20 +07:00
scottjehl
29373214c6 added zoom dependency and removed internal handling of page zoom enable/disable, opting to use the zoom plugin methods instead 2012-01-24 17:31:05 +07:00
Mat Marquis
201058bc90 Cached window in show/hide functions, since I was in the neighborhood. 2012-01-23 15:54:08 -05:00
scottjehl
f00e3a1164 added new fixedToolbar plugin (its matching css is already in from the previous messy merge). Docs page is updated to match the new preferred syntax (no changes in API, however) 2012-01-19 00:19:06 +07:00
John Bender
f2802bdc65 reverted fixed toolbar merge, there are some issues with the branch that need to be addressed 2012-01-17 21:46:28 -08:00
scottjehl
c4df92203d required core and now unit tests are passing again 2012-01-17 12:34:47 +07:00
scottjehl
91cffd3e85 added the AMD enclosure 2012-01-13 17:44:07 +07:00
scottjehl
a75f4d1361 removed debug line 2011-12-27 21:07:50 +07:00
scottjehl
a89f2989eb blacklisted Opera Mobile from fixies 2011-12-27 20:51:29 +07:00
scottjehl
273642e2bc cleaned up the opt-out formatting and added Fennec < 6 and WebOS < 3. 2011-12-26 21:29:29 +07:00
scottjehl
ca3f67981e Blocked out Android 2.1 and older, running Webkit version older than 233 (the one that comes with 2.2) 2011-12-26 19:30:09 +07:00
scottjehl
5de358b8a5 make sure all page classes are removed at destroy 2011-12-20 17:45:38 +07:00
scottjehl
aae2d1b22c ensure tapping the toolbar itself (or something in it) will not trigger a toggle of the toolbars. 2011-12-20 17:44:20 +07:00
scottjehl
d442a0bc0f removed commented-out code for polyfilling fixed support - it wouldn't have worked as we'd want it to anyway. 2011-12-20 17:38:05 +07:00
scottjehl
6bc63b7f09 fixed the page class name for fullscreen to include "header" or "footer". Also improved the show and hide methods so that they don't apply a transition when showing or hiding a toolbar that is fixed (not fullscreen) when the user is scrolled to the top or bottom of the viewport already. 2011-12-20 17:38:05 +07:00
scottjehl
16f73e737f removed the hideOnScrollStop option and feature - too complicated for a default option. Might be worth supporting as an extension though. 2011-12-20 17:38:05 +07:00
scottjehl
deadbe67b2 changed scrollToggle to hideOnScrollStop, which does just that. It only works if tapToggle is true, so that once hidden, the bar can be toggled visible again with a tap. 2011-12-20 17:38:05 +07:00
scottjehl
6aa3e384fe fixed the restorePageZoom method so that it does what it says on the tin. 2011-12-20 17:38:05 +07:00
scottjehl
32a2e34e07 patched up support for transition: "none" rather than false, for consistency with other uses of the option in jQM. 2011-12-20 17:38:05 +07:00
scottjehl
103f409c47 added new script and associated styles for handling "fixed" toolbars using native support for CSS position: fixed, where possible. Non-supporting platforms will fall back to inline positioning, either by gracefully degrading on their own or by opting them out through a blacklist (fixed positioning detection's got issues...).
unit tests and api documentation coming next, but for the most part, the API is the same as before.
2011-12-20 17:38:05 +07:00