Commit graph

734 commits

Author SHA1 Message Date
scottjehl
3162428558 added hashListeningEnabled global flag. This is meant as a global config option for end users to disable hashchange listening (as opposed to urlHistory.listeningEnabled, which is an internal toggle). Unit test included. Fixes #748 2011-01-31 23:25:36 -05:00
scottjehl
3b5b615451 whitespace and code style 2011-01-31 22:43:17 -05:00
scottjehl
d509404b72 Merge remote branch 'origin/master'
Conflicts:
	js/jquery.mobile.navigation.js
2011-01-31 17:33:25 -05:00
scottjehl
b3a8230638 This commit includes simplifications to the hashchange event handling & changePage logic, which results in a few bug fixes and removal of some previous limitations. Details:
- jquery.mobile.core.js  no longer creates pages from every page and dialog in the DOM automatically at domready. Instead, pages are created as they are referenced via changePage, which can speed up pageload in multi-page documents, and means local "dialogs" referenced via data-rel="dialog" no longer need a data-role="dialog" attribute when served.

- in changePage, "from" is now allowed to be undefined. This simplifies the logic involved in showing the first page, which never had a "from" page, and previously needed a custom pageChange workaround to accommodate that.

- The pageshow event is no longer used as a callback for returning false and preventing the $.mobile.activePage from being set to the newly shown page. In other words, a page always becomes $.mobile.activePage once its shown now (the only reason this was optional before was because of a dialog restriction that's no longer true)

- the hashchange event logic for showing a particular page is now greatly simplified. It either shows the page referenced in location.hash, or if there's no hash it changes to the first page in the dom. This means every pageshow (including the first one) now uses pageChange internally.

- the hashchange event listener is no longer disabled when ajaxEnabled == false. Doing this before prevented local non-ajax page navigation from working properly. To disable hashchange listening, use $.mobile.urlHistory.listeningEnabled. We might consider defining (or moving) this on the $.mobile hash later as well for easier access.

- The internal var $.mobile.startPage is now $.mobile.firstPage, because it's not necessarily the page you started on, but merely a reference to the first "page" in the dom.

- Back buttons are auto-added to every page after the first one you first visit (this includes generated pages, such as those in a multipage document or nested listviews). Keep in mind that a "back" button does not take the place of a standard "home" link, and when building an app with jQuery Mobile, it's good to make use of both (particularly on deep-linked pages). Fixes #908
2011-01-31 17:05:57 -05:00
John Bender
591593dd49 misplaced semicolon 2011-01-31 00:13:01 -08:00
adammessinger
cb4f540645 Fixes #900 - buttons with rel attribute set to external don't show active state 2011-01-30 23:43:53 -08:00
John Bender
8b5f083974 whitespace and missing semicolon in setTimeout for non webkit animationComplete 2011-01-30 22:03:30 -08:00
Alex Kovar
4830ac9e9b tweak for animationComplete 2011-01-30 23:00:51 -06:00
Alex Kovar
62af59983f made $.fn.animationComplete behave more consistently between webkit/non-webkit. Closes gh-918 2011-01-30 17:06:33 -06:00
scottjehl
2f9d1bce33 position loading message either center screen (if scrollTop supported), above active clicked button (if defined), or 100px off the top. Fixes #892 2011-01-30 13:34:45 -05:00
John Bender
badefe1ee1 whitespace and missing semicolon fix 2011-01-30 00:19:15 -08:00
scottjehl
29fbc9c3c5 removed the Position plugin and modified selectmenu to position its menu without it. Removes off about 3-4kb after minify. 2011-01-29 07:15:40 -08:00
scottjehl
58cb69788c bound slider drag event handling to touch and mouse events, which allows us to support Opera Mobile and others. Fixes #852 2011-01-28 15:47:03 -08:00
scottjehl
b4c8e2f98e moved search input clear buttons over to "tap" event 2011-01-28 15:20:56 -08:00
scottjehl
1b72203096 checks and radios no longer check when a scroll starts on top of them. Fixes #893 2011-01-28 14:39:58 -08:00
scottjehl
b10c5c04c2 don't destroy dialogs on close. Now same-page dialogs can be reopened after close, and selects don't need to unbind dialog change events to override the destroy. 2011-01-28 14:30:24 -08:00
John Bender
e5fd56985c added global native select configuration, docs to follow. Also corrected selector error when reloading a lib in tests 2011-01-27 23:20:57 -08:00
John Bender
1afb3a08f0 whitespace corrections in core 2011-01-27 22:53:17 -08:00
John Bender
b1d356bfd7 Merge branch 'nativeselectmenu' 2011-01-27 09:50:40 -08:00
Jesse Streb
d3077b491c [455] Am now setting the min-height of a page so that the address bar can always be hidden on a silent scroll. This helps our transitions feel smoother as the page does not jump down if the page is not taller then 100% of the window. On orientation change we also update this value. 2011-01-27 12:28:04 -05:00
Jesse Streb
378fb51225 [#455] For the transitions we now have overflow: hidden in order to limit the flickering. We always scroll to the top before we start our transitions in order to make it scroll. The CSS changed to have overflow: hidden during transitions and have a height that is larger enough to keep the address bar hidden. 2011-01-27 12:28:04 -05:00
scottjehl
e2c66fad49 Merge remote branch 'origin/master' 2011-01-26 22:15:10 -08:00
John Bender
d94e25acd6 merge from origin selectmenu fixes 2011-01-26 21:35:00 -08:00
John Bender
b81248f238 fixed android select menu failure with a delay. I'm doubtful that this is the best solution to the problem but the cause was the click being passed through to the screen or the select menu itself a split second after opening. Open to alternatives. Fixes #873 2011-01-26 21:20:40 -08:00
scottjehl
9a492d06fd allow form data to be passed to $.mobile.changePage as a query string or object. 2011-01-26 22:04:36 -05:00
scottjehl
61bee4e276 fixed issue with select menus not opening again after you close them. 2011-01-26 21:02:08 -05:00
scottjehl
d1976fa265 removed click handler on back button - used data-rel='back' instead. 2011-01-26 18:57:14 -05:00
scottjehl
fa2b1903de only add a back button when there's a history entry to return to. 2011-01-26 17:56:20 -05:00
Kin Blas
63a82967fa Temporary workaround for Issue 785 - jQM text input forces use of iOS auto-correction.
- Added code to enhanceControls() that sets the autocorrect and autocomplete attributes on all inputs of type="text" to "off". This basically disables the use of autocorrection on iOS.

- Modified the code in enhanceControls() to cache the form controls query to reduce the number of times we search for controls in the current page.
2011-01-26 14:31:47 -08:00
scottjehl
700ca984bb finished up some navigation changes. Also added and documented a data-rel="back" attribute, which can be applied to links to enhance them to mimica the browser's back button (good for closing dialogs). In these changes, dialogs now create a history hash entry, and the back button works better for closing dialogs. Also, nested list deep-linking is restored after a recent regression. Tests in Navigation and Listview are passing. Fixes #885. Fixes #866. 2011-01-26 14:38:17 -05:00
scottjehl
2c6cc45ad0 incomplete, but close to fixing the dialog-create-history entry piece. Also includes fix for nested-listview deep linking regression. 2011-01-26 14:27:10 -05:00
John Bender
244e46b8ed data-native attribute check for native select menus Fixes #847 2011-01-25 23:12:20 -08:00
John Bender
aa234961cc whitespace correction on rebase fix 2011-01-25 22:50:55 -08:00
scottjehl
0cdf9df11c added option for useNativeMenu. Should be updated so, when set, the custom menu markup is never created. 2011-01-25 22:43:53 -08:00
scottjehl
9ed13f86c8 hashchange event handler should still load the first url, even if Ajax is disabled. Fixes #879 2011-01-25 22:39:29 -05:00
John Bender
bc473f48a7 comments for added clarity on bindings 2011-01-24 23:55:52 -08:00
John Bender
0cdd401f3a removed commented code from refactor 2011-01-24 23:54:22 -08:00
John Bender
23807769ac refactor off slider to move value retrieval to closure for _create method 2011-01-24 23:53:17 -08:00
John Bender
442e4b19b0 updated slider refresh function with an extra param for preventing validation on its input Fixes #468 2011-01-24 23:38:50 -08:00
scottjehl
3df24fab6d fixed a regression in safari where images wouldn't load properly because base was being set after html was appended. 2011-01-25 00:29:19 -05:00
scottjehl
5d5336d8b0 fixed firefox regression. check if base is set/supported before setting. 2011-01-24 23:56:53 -05:00
scottjehl
0ba9acfc33 added support for URL updating via a preset data-url on the page div when it is sent from the server.
If data-url is set on a page div when it returns from the server, it's value will be used to replace the url in the hash, and as the base url for future requests if it adds additional segments (such as a trailing slash). This will enable developers to work around the limitation of directory links requiring a trailing slash, and will also allow developers to specify a new url after a redirect occurs (such as after a login). Fixes #867
2011-01-24 19:35:45 -05:00
scottjehl
a5b8e42fc1 updated jQuery to 1.5rc1. This update includes Nokia support in jQuery core, which is getting closer in JQM itself. 2011-01-24 17:56:32 -05:00
scottjehl
80b0d9ef4b Merge branch 'master' of github.com:jquery/jquery-mobile 2011-01-24 13:05:04 -05:00
scottjehl
4a9b374eea make sure change events fire whenever custom checks/radios change. 2011-01-24 13:04:41 -05:00
Kin Blas
1dad50e536 Fix for the header/footer positioning problem, mentioned in issue 58, that is caused by the browser url/nav bar scrolling offscreen due to the silentScroll() call triggered when the document is first loaded.
- Modified silentScroll() to trigger a "silentscroll" event. This was necessary because programatically scrolling the window does not generate "scroll" events.

- Got rid of the hideAfterDelay() function that was not used.

- Added startShowTimer() and clearShowTimer() functions.

- Added event handlers for "resize" and "silentscroll" events. This causes headers/footers to be positioned properly as "scroll" and "orientationchange" events cause the visual viewport to resize.

Issues this fix causes:

- On some Android platforms, clicking in textfields/textareas trigger a "resize" event. This causes the footer to show up in the minimized visual viewport, right above the keyboard.
2011-01-24 07:11:19 -08:00
scottjehl
977e075ece improved tap event and added a quick event logger page so we can get these neglected events in order. 2011-01-23 19:34:17 -05:00
scottjehl
2e6a396278 added ajaxEnabled option. ajaxLinksEnabled and ajaxFormsEnabled are deprecated and will be removed by 1.0. Fixes #851 2011-01-23 19:03:35 -05:00
scottjehl
2ebf659fbd made sure linking to the same page from within a dialog closes the dialog. 2011-01-23 18:26:48 -05:00
scottjehl
be8eb3d0c6 deprecated data-back attribute on links in favor of data-direction="reverse". Updated docs and relevant demos. 2011-01-23 18:12:46 -05:00