It’s update time! The good news is that most of these changes are non-breaking. Specifically, all of the changes except Bootstrap. Bootstrap 3.0 came out a week or two ago and I’ve updated my MooTools Bootstrap implementation to match it. Bootstrap itself changed the way that the modals work and that forced a breaking change in my library. It’s not so bad though; you can just define “Bootstrap.version = 2” in your code and you’ll get the old setup.
If you want to see all this stuff in action, just mosey on over to dev.clientcide.com and check it out. Be sure to select the “Bootstrap” option from the select list at the top if you want to see that stuff. Here’s the demo of all the Bootstrap stuff.
- Fixes #87 – Stickywin.Ajax update error
- Correction of options and cachedRequest.
- Corrected offset.
- Fixes #88 – StickyWin.UI with non-integer width options
- removing redundant option definition
- Updated version string 3.0.10 > 3.0.12
- Removed unused var left. Removed unnessecary semicolons (the right ones this time).
- Changed mask style background color to official camel case, to prevent default option overwrite problems.
- Removed unnessecary semicolon.
- Add click event for hideOnClick, only if necessary.
- Check for this.visible to prevent accidently mutliple execution of hide (close, destroy)
- Adding cookie option to Tabswapper behavior
- Adding TabSwapper.Hash
- Adding ability for links that reference a section with a #href name to change the tabs.
- fixing reference error in tabs / hash work
- tabswapper’s reference to its tabs is an Array, not an Elements collection
- Fixing dependency for MooHash; fixing destroy handler for Tabswapper.Hash when the hash option isn’t in use.
- adding getElement and getElements helpers to the api object.
- Fixing Delegator specs; small typo in expect statement.
More Behaviors 1.0.8
- removing useless function wrapper
- Updating Delegator.Ajax to allow for setting method of AJAX call.
- Adding logic to prevent forms in FormRequest submitting w/o ajax if their `.submit` method is called. Adding some controls to prevent flooding if this happens.
- Adding the textOverride option to the OverText behavior api
- not using the element setter for Fx.Reveal so that it doesn’t reset the state of the class.
- Adding loadOnce to Ajax delegator.
- Adding option to HtmlTable Behavior to specify reverse sort on startup.
- Adding the ability to encode content into an Ajax request as well as the ability to throttle an Ajax Delegator.
- Allow addRemoveClass delegator to target multiple elements.
- new class: Bootstrap.Affix and the associated behavior
- Popovers (and tooltips if you like) can now have their ‘trigger’ option set to ‘click’ which allows you to show them on click instead of mouseover if you like.
- Delegator.BS.ShowPopup now allows you to just use a #href reference to the id of the popup to show.
- Dropdown now allows for you to have its behavior on the Dropdown itself instead of a container.
- Bootstrap.Popup now expects that the layout matches Bootstrap 3. *This is a breaking change* but compatibility has been left in place for Bootstrap 2. For this to work, you must set `Bootstrap.version = 2` in your code.
- Bootstrap.Popover’s offset defaults are now zero unless `Bootstrap.version` == 2
As previously noted, there’s a french MooTools book. Now there’s a nice review of it on MooTools.net. That is all.
Got an email from Xavier Lecomte this morning that his MooTools book is now available. In French. As my French is terrible I’m a poor judge of it’s quality, but Xavier has been emailing me questions and details over the past several months and seems like a bright guy. If French is your native tongue and you’ve been waiting for some MooTools knowledge, I’d say this is worth checking out. Here’s an excerpt if you care to peruse it.
Rolling a quick release to get some bug fixes out the door. Nothing major here. This is a drop-in release that shouldn’t require you to change anything.
- Added support for dropdown buttons (thanks to Fabien Pennequin for the contribution)
- Fixed tab behavior to add the “active” class to the right elements; makes tabs w/ dropdown menus work more betters.
- Modals now close in Safari
- StickyWin.UI no longer freaks out when you use non-integer width options (i.e. ‘500px’ works).
Other, quite minor, bug fixes.
Alas, it’s all jQuery stuff, which is fine if you aren’t already using MooTools (really, if you just want Bootstrap and nothing else, use jQuery). But if you’re hooked on MooTools and want to use Bootstrap 2.0, I’m apparently still the only game in town.
So what’s new in MooTools Bootstrap? Mostly just support for all the breaking changes in Bootstrap 2.0. If you’ve already got a project running Bootstrap, you don’t need to upgrade unless you want some of the new features there (like the flexible layouts for mobile and whatnot.
Updating for Bootstrap 2.0
- All the “*.Twipsy” files are now “*.Tooltip” to reflect the change in Bootstrap
- Numerous conventions changed in Bootstrap 2.0. In particular things like tabs, tables, and dropdowns now prefix their component name to all their classes (table-striped instead of zebra-striped, “btn btn-primary” instead of “btn primary”)
- Added support for drop down lists in tabs
Another maintenance release for the most part. What’s new?
* StickyWin.Ajax now can cache requests (useful for tips and whatnot); thanks @zipz
* New class: StickyWin.PointyTip.Ajax – provides for ajax tips. Again, thanks @zipz
* Fixed errant reference to old Browser property. This was breaking when used with MooTools 1.4* w/o compat.
* Tabswapper now allows you to specify if it should call preventDefault on tab clicks (useful if you’re being good with your HTML and using hrefs for the tabs).
* Delegator no longer throws an error if it encounters a trigger for a different event type. This means that if you have a click delegator and, say, a focus delegator, you won’t get errors in your console when the click event encounters the delegator for the focus event and vice versa. This isn’t a functional change, it just means you aren’t notified in the console.
As always, you can get all this at dev.clientcide.com.
Here’s a little command line utility I use the hell out of:
Basically, this script tracks the directories you cd into on the command line and builds a rank order of their locations. Here’s a chunk of mine (with some fake directory names to protect the innocent):
If I type “z Source” I’ll automatically jump to that last line because it’s the highest ranked entry that matches that string. “z interface” will take me to the line above it. “z Devel” will take me to the line above that. It’s remarkably smart; it’s very rare that I end up somewhere other than what I want to be, even when I only use one or two characters from the location I’m after (“z clientcide” takes me to clientcide/Source, which may not be what I wanted).
Note: Originally it was called “j” (https://github.com/rupa/j) and I got so used to using that alias that I have “j” aliased to this script. z is the more recent implementation.
Oh, and here’s another one:
alias gr='[ ! -z `git rev-parse --show-cdup` ] && cd `git rev-parse --show-cdup || pwd`'
That command (gr) will take me to the root of any git repo I’m in.
In my previous release of bootstrap I complained about my inability to test in IE. A few of you were kind enough to hit my specs and let me know that my low expectations of IE were not unfounded. Well, I finally got bootcamp and VMWare installed and went through the super-happy-fun-time that is IE debugging and this release has all my latest stuff working in IE8 at least.
In today’s release:
- Various IE fixes to Autocompleter, Behavior filters for Autocompleter and StickyWin
- Updated specs expectations which were ignored because I can’t remember the names of my own options signatures.
- StickyWin.Fx is nerfed for IE. IE users don’t get fading! Deal with it!
- Various fixes for IE
- Updating docs for inline JSON options – they previously stated that you didn’t have to quote the names in the JSON object; this was never true.
- Updated for MooTools More 188.8.131.52
- Various fixes for IE support
- Dropdowns no longer hide when inputs or labels in the menu are clicked.
- More support for browsers w/o CSS animations (they don’t get any animation at all, but they don’t break either). Old versions of Firefox and IE for example.
- Various IE fixes.
There you has it. Nothing really sexy, but hey, you get what you pay for.
A few weeks ago MooTools released version 1.4. I held off on pushing it to my repos here because I knew there were one or two (very minor) issues and that 1.4.1 was forthcoming and I I didn’t want to go through the work of releasing for it twice.
Now that 1.4.1 is out I’ve pulled it in and updated the few things that required it and it’s now available. The Clientcide release didn’t iterate because nothing changed. There were a few minor changes in some of the other repos (More Behaviors, Bootstrap) that had to do with things like dependencies moving around. Nothing major. If you were running 3.0.8 of Clientcide already, you don’t need to do anything.
If you’ve been playing with Bootstrap or Behavior in general, there have been a few changes over the past week or two. Since my last post:
- Delegator now passes the ammendDom and destroyDom events to its behavior instance.
- Popup now uses CSS animations for sliding in, mimicking precisely the same behavior that is found in Bootstrap’s js for jQuery/Ender.
- Twipsy and Popover now have options to only display when the text is cropped. This works great with text-overflow: ellipsis in your css.
- You can now add a .dismiss class to anything in a Popup that will close it. This was true of adding a .close class already, but Bootstrap adds styles to .close elements in the popup that you may not want.
I’ve made a few updates here and fixed a few issues. For starters, there was a misconfiguration in one of the Bootstrap files that broke the builder, so that’s fixed. Also, I’ve fixed the benchmarks; those weren’t working because my server was having issues with github’s SSL certificate and wouldn’t update the submodule for benchmark.js.