jQuery Mobile Team Meeting – May 17 2012

link jQM Modularity

  • I’ve heard a bunch of questions recently about how monolithic the library is. I know we’ve done a lot of decoupling work internally and now have the download builder which will help quite a bit.

  • Modularity questions: how much make we break things up for consumption:

    • Only want utilities like touch events, zoom fix, orientation (not yet?)
    • Want a specific subset of widgets and transitions (yes)
    • Only want certain widgets, no nav model (yes)
    • Only want nav model/transitions, no widgets or CSS framework (yes)
  • I’d like to do some analysis for LOE and see if we should focus on this for 1.3.

  • All modules use $.mobile - requires core

  • Also jQ core dependencies to consider - tree shaking to see how much we use

  • What is core? What is a module?

link Team

  • Adobe changes - Kin
  • New committers - Jason and Jasper
  • More people to add to the team?

link Timing

  • 1.1.1 beta - conference?

  • 1.2.0 alpha - conference?

  • Need to discuss this more as we get closer.


link Open dev questions

.ui-li-static { background-image: none; }

link Git current issue

  • event.html in 1.1-stable needs resolving.

link 1.1.1 Planning

link Pull requests

link PhoneGap blinky transitions

link Button/form consistency

link 2.3 nav issues

link 1.2 Features

link Read-only lists

  • New styling including removal smaller font-size and padding of ui-li-static for 1.2 #4347

  • Changes to discuss

    • Modal overlay screen - default to none, only show if data-overlay-theme option is set to a swatch letter✓
    • Remove "Fade" as an option and just fade in overlay screen if one is specified, CSS override of keyframes if needed✓
    • Popup container - inherits the theme from the parent page by default, data-theme attr can be set to a swatch letter or to "none" to have the container have an invisible background (just won't write in the ui-content-a/b/c class)✓
    • Popup won't have any padding by default to let widgets like lists (menus), photos, etc. be edgeless. To add padding, recommend people add the "ui-content" class to the popup wrapper add the standard 15px of page padding or write custom styles as needed
    • Corner classes are a bit tricky with nested edgeless elements. Ex. if a inset list is inside a popup, will the corners look ok?
    • Popup transition. Use the same fallback mechanism as the dialogs >> create a utility that is used for both dialogs and popups. Factor out the mechanism (which is currently inline inside a function in navigation.js) into a public function: degradedTransition = $.mobile.maybeDegradeTransition( originalTransition ); It need not be public - but the little dance it does with looking up the transition in a hash of fallbacks is kind of important, and I don't want to copy/paste that code into popup.✓
    • Add an example of how to add a close button, like dialog, false by default = data-close-btn=”true”. Note that if we add this, we’ll also need a data-close-btn-text=”Close popup” option for accessibility and a11y. https://github.com/jquery/jquery-mobile/issues/4267#issuecomment-5492106
      • Q: Dialog doesn’t have an option currently to not write in the close button, add this feature there for consistency? Probably
    • The custom select should also be ported over to use popup as part of 1.2. Need to create a ticket. Any other widgets that could be ported over? - https://github.com/jquery/jquery-mobile/issues/4329

link 1.3 Features

link Library modularity?

link Themes: Multiple active states

  • Support active state per swatch instead of a global active (Tyler - LOE?)

link 1.future

  • Prioritize and start sequencing the next few releases for the remainder of the year
  • Tablet responsive layout patterns - YES!
  • Decoupling things to use standalone (touch events, vmouse, etc.)
  • Overflow regions - overthrow.js, be very defensive here to not break platforms
  • Performance optimizations to speed up rendering and interactions, enhancement - if you’re building a dynamic app, writing out the enhanced markup directly instead of starting with basic then enhancing via create makes more sense
  • Slider lag (look at UI?)
  • Pre-enhance markup
  • Carousel?
  • Pull in autocomplete from UI?
  • Pull in position from UI?
  • Pull in progressbar from UI?
  • Light calendar picker?

link Infrastructure

###Migration to Grunt (Bender)

  • Migration to Grunt in progress - JS and CSS only, not docs or zip because they aren’t public targets. Need to check with team on this. DONE

link Sort out Test / TestSwarm issues

  • Migrated existing tests to Phantomjs. Need to setup multiple jquery versions. Fixing existing build issues. Soon.

link Redirects for Branch Preview / Test to new server (per D. Heberden)

  • Looking into this.

link Plugin site requirements

  • Package JSON file for our plugins

link UI Integration

  • Test port of mobile TR framework onto a UI widget (TBD) as a POC - Scott/Mat
  • Download builder - status of UI’s tool?

link 3rd Party Widgets

  • Think about how to curate semi-official widgets that we recommend to offload some of the dev work. Bender wants to think about how to register and init widgets to make this easier.

link ThemeRoller - 3rd party tools

  • All sorts of web apps or software tools may want to integrate ThemeRoller functionality - how to make this as seamless as possible w/o hooking in too deeply?

  • Current idea: Support a lightweight round trip theme solution that lets a 3rd party tool have a button that would launch TR in a new window/iframe. This could either be a default TR theme (Create new theme) or it could support editing by pushing in a theme (via the import mechanism) so the theme would appear in TR, ready for modification. In TR, allow the Download button to be customized in appearance (Save to App X + icon) and the 3rd party tool would write a handler to manage the manipulation and saving of the TR output on their side. We'd just provide the hooks in and out so this would be a new API for developers to use TR without forking it and making a custom build.

  • Tyler needs to do more work on the versioning side of things to support this. The guys from Codiqa have volunteered to help with some of the engineering and to be the test case for this to help us work out the kinks. This would launch as an open platform and others tools can help participate in shaping this as we go.

  • Help test the new ThemeRoller versioning: http://jquerymobile.com/themeroller-test/

link Download builder