UrlKit 0.92 now available with IE7, Safari support
December 20, 2007 on 4:34 am | In Flex, Programming | 18 CommentsI’ve posted a new download of UrlKit version 0.92 to the UrlKit project on Google Code. (Note that 0.91 was formerly mentioned here, but a distribution script error was discovered to have omitted a few files.) It has some nice new features, some based on user feedback:
- Uses deep linking approach from Flex 3 to support all major browsers including IE7 and Safari
- Code for UrlKit apps in Flex 2 and Flex 3 is now identical
- New
navigate()method allows apps to internally change state by directly specifying a new URL fragment - New
enabledproperty ofFlexBrowserManagerAdapteroptionally delays UrlKit startup until application is fully initialized
Happy Holidays!
18 Comments »
RSS feed for comments on this post. TrackBack URI
Leave a comment
Entries and comments feeds.
Valid XHTML and CSS.
All content copyright (c) 2006-2007 Joseph Berkovitz. All Rights Reserved.
Just downloaded this. With Flex 2 it looks like it doesn’t work with the js included in th zip file. Possbily needs the history files from flex 3 instead?
Comment by Kevin Langdon — January 3, 2008 #
Kevin,
Thanks for discovering this; it is a stupid distribution script error on my part. I am uploading a new version 0.92 now, but you can fix
the one you have by merely running “ant stage” in the sample/ directory which will copy over the JS and CSS files from the html-template/ directory.
Note that you must run Urlkit applications from a web server in order for things to operate at all; running from a file:// URL does not work correctly.
Comment by joe — January 4, 2008 #
Is there a possibility to activate the back-button from flex when the backspace button is pressed. Even hints on how I could do this would be greatly appreciated.
Comment by Fabian Bijl — January 30, 2008 #
Fabian,
I am not sure offhand, but I think that there is no reliable cross-browser means of navigating the browser history. This would mean that it’s impossible to do what you ask for. I think one browser does support this, but I forget which one.
Comment by joe — January 30, 2008 #
Hi,
I just downloaded the 0.92 version. It looks like the FlexBrowserManagerAdapter has a Flex 3 dependency? It references the Flex 3 BrowserChangeEvent.BROWSER_URL_CHANGE which does not exist in 2.01.
Or do I have to do the trick in your other post to get it working under Flex 2.
Thanks a lot!!!
Comment by Joe Hung — March 4, 2008 #
Joe H –
You need to link with the included library flex2BrowserManager.swc, which contains a munged BrowserManager API for Flex 2 as per my other post. It is in the urlkit/libs/ directory of the distribution.
Comment by joe — March 4, 2008 #
Having trouble getting UrlKit working with modules…
So I have really stripped down test with 2 containers in a TabNavigator:
1) Container 1 has the same hi/lo price slider from the example – the deeplinking works here.
2) Container 2 loads a module which is essentially the contents of module 1 (a slider). I’ve ensured ApplicationDomain is set to currentDomain within the loader’s context – deeplinking fails here.
Any ideas? Pointers?
Comment by Al — April 2, 2008 #
The approach shown in the sample app assumes that the actual TabNavigator is instantiated as soon as the child component is created. With a module that is not the case, because the module loads later and the TabNavigator is not instantiated until the module is completely loaded and initialized.
I think you will have to set up the UrlDelegateRule’s child yourself by listening for the event that tells you the module is ready, and fishing the navigator out of it
Comment by joe — April 3, 2008 #
Thanks Joe.
The tab navigator is in the main application (not a module) and the modules contain a bunch of controls (such as the slider). I need to deeplink which item within the viewstack is in view (this works) and any values set in each module, i.e. the slider’s hi/lo (this does not work).
No matter how I try all my urlRules within a module are ignored by the parent application.
If my explanation is confusing I can post an example.
Any tips would be much appreciated!
Comment by Al — April 9, 2008 #
I think you’ll have to post a bug to Google Code and attach some sort of example. I have no doubt that there are some difficulties with Modules as UrlKit was never tested with them.
I know of at least one approach which should definitely work, which is to maintain the navigational state in the main app (i.e. the model whose values the sliders are bound to).
Comment by joe — April 10, 2008 #
for some reason i dont see the url updated,
when i try to run the samples.
the sample are inside webserver(tomcat), and i tried it over iexplorer and firefox.
i tried to debug it, and saw the code that should update the url, but nothing happened.
any clue ?
thanks.
Comment by Eran — January 15, 2009 #
Nope, I don’t know why there would be a problem. What version of Flex SDK are you using?
Comment by joe — January 15, 2009 #
So it looks like deep linking in Flex 3 is broken in IE7. From what I have read on your blog that makes sense. Can you user URLKit 0.92 in Flex3 instead of the built in Deep Linking?
Comment by Roberto A. Santiago — February 26, 2009 #
I don’t think deep linking is severely broken in IE7, although there are a few bugs. But maybe there’s something I don’t know, since I haven’t been working on deep linking lately.
It’s probably possible to use Urlkit 0.92 somehow or other but I have never tried it and I’d probably try to work with the Flex 3 deep linking approach.
Comment by joe — February 26, 2009 #
i absolutely love the simplicity of urlkit. except i am running into one problem that breaks my head.
i am not using the flex navigator components on which most examples are based. but i am using states which inside of them have custom components with their own rules so i found this in the documentation:
so i did this with the delegate rule:
that works fine if i have 2 states but what if want to have multiple state equality checks in there?
or is there another way around this?
any help would be greatly appreciated
cheers
Comment by J Harts — April 1, 2009 #
sorry first time comment system didnt like me
i absolutely love the simplicity of urlkit. except i am running into one problem that breaks my head.
i am not using the flex navigator components on which most examples are based. but i am using states which inside of them have custom components with their own rules so i found this in the documentation:
so i did this with the delegate rule:
that works fine if i have 2 states but what if want to have multiple state equality checks in there?
or is there another way around this?
any help would be greatly appreciated
cheers
Comment by J Harts — April 1, 2009 #
=( that didnt work either…. ill stop spamming the comments now..
Comment by J Harts — April 1, 2009 #
Hi there,
I have been playing around with UrlKit today and I am still trying to figure out how I could get the following URLs matched:
http://www.example.com/#hello/world
http://www.example.com/#hello/world/1
http://www.example.com/#hello/world?query=string
http://www.example.com/#hello/world/1?query=string
now the first two parts of the url (hello and world) should be also “dynamic” meaning that I want an endless path to be matched like
http://www.example.com/#hello/world/how/are/you/today
etc.
How would I go about doing that?
Any help would be great.
Cheers,
Moz
Comment by Mozzy — November 10, 2009 #