Detecting when Flex app terminates

In a editor-type application I'm writing using Flex 2 I'd
like to show a
popup dialog "Save changes?" when the user closes the browser
window (or a tab in case of tabbed browsing) or when the
browser
navigates to another site / page.
Anyone know if there's an event that signals the end of a
flex app.
Preferably a canceable event so the popup dailog could
include
a Cancel button.
Thanks

Not from within Flex. Some solutions involve using javascript
onBeforeUnload and flex's ExternalInterface to do this.
Tracy

Similar Messages

  • Detecting when Flex App is in background tab in safari

    So here is my dilemma:
    I load up my application (which streams data from a socket),
    make a new tab in safari, wait x amount of minutes, and go back to
    the application. I'm streaming video across the socket and on
    return the frame rate goes through the roof, faster than the source
    actually transfers at. So what I believe is happening is the flash
    application stops playing, but the socket is still open so data is
    being buffered at the lower level. Is there any way to detect when
    the flex app goes into the background so I can close the sockets
    and then reopen them later? Thanks!

    okay spoke a little too soon - deactivate is fired off on any
    time the app loses focus, not necessarily when it stops playing. Is
    there an event which signals right before the player is going to be
    paused? Thanks!

  • Detecting when the app is not visible (behind start screen, etc)

    What is a good mechanism to detect when an application is behind a start screen (or loaded, but not visible?)

    use:
    CoreWindow.GetForCurrentThread().Visible and
    CoreWindow.GetForCurrentThread().VisibilityChanged;
    event
    Microsoft Certified Solutions Developer - Windows Store Apps Using C#

  • Is it a security concern when Flex app in 2 browser tabs share the same session?

    This is a common senario. Want to hear from the experts here.

    Hi,
    on the ApplicationModule, did you set the locking behavior to optimistic ? For web applications it should be optimistic and not pessimistic, which is the default setting. Select the AM and choose "Configurations" from the context menu. Click edit and select the property tabs. Look for the locking setting, which should be set to "pessimistic if you did not change it before. Just replace the current value with optimistic
    Frank

  • Flex app doesn't work when moved from original location

    I'm trying to make an image gallery in flex. It works when I run it in Flex Builder perfectly fine. The html and swf files from the bin-debug folder work perfectly fine when opened in any browser also, but ONLY when those files and all related files are opened from the default location that the application was built in. When I export a build to a different folder, the swf loads but none of the information from the xml file displays. I tried setting all of the paths of the reference files (namely the xml) in the flex app to the exact absolute location on the server, and it still didn't work when I uploaded it to the server.
    I've tried several approaches starting from scratch and they have all come up with the same issue. I'm working with an educational license for Flex Builder, I'm not sure if they jip you on those and ruin the compiled swf.
    Please help! I'm losing my mind over this.I think it has to do with something else besides the code since it works fine when I hit "Run", but if anyone thinks it will help to post the code let me know.

    when you build an application using one of the wizards (like coldfusion flex application wizard) it hard codes
    paths to cold fusion CFC's, and sometimes gets it wrong.
    If your application references cfc's (or other remote objects) then it may be necessary to adjust the flex code
    when moving the code into a different base folder.
    For example in my own application, the url is http://localhost/crm_dev_flex and the built application gets put into
    c:\inetpub\wwwroot\crm_dev_flex\bin-debug
    References in the code to components found in c:\inetpub\wwwroot\crm_dev_flex\bin-debug\components\cfgenerated
    (in the flex code these looks like crm_dev_flex.bin-debug.components.cfgenerated.<mycomponent> )
    These need to change when you move the code to somewhere else.
    Also, if you are using wizard generated cfc's then these also contain similar references that need to be changed.
    IHTH.
    Cheers

  • I have a production mobile Flex app that uses RemoteObject calls for all data access, and it's working well, except for a new remote call I just added that only fails when running with a release build.  The same call works fine when running on the device

    I have a production mobile Flex app that uses RemoteObject calls for all data access, and it's working well, except for a new remote call I just added that only fails when running with a release build. The same call works fine when running on the device (iPhone) using debug build. When running with a release build, the result handler is never called (nor is the fault handler called). Viewing the BlazeDS logs in debug mode, the call is received and send back with data. I've narrowed it down to what seems to be a data size issue.
    I have targeted one specific data call that returns in the String value a string length of 44kb, which fails in the release build (result or fault handler never called), but the result handler is called as expected in debug build. When I do not populate the String value (in server side Java code) on the object (just set it empty string), the result handler is then called, and the object is returned (release build).
    The custom object being returned in the call is a very a simple object, with getters/setters for simple types boolean, int, String, and one org.23c.dom.Document type. This same object type is used on other other RemoteObject calls (different data) and works fine (release and debug builds). I originally was returning as a Document, but, just to make sure this wasn't the problem, changed the value to be returned to a String, just to rule out XML/Dom issues in serialization.
    I don't understand 1) why the release build vs. debug build behavior is different for a RemoteObject call, 2) why the calls work in debug build when sending over a somewhat large (but, not unreasonable) amount of data in a String object, but not in release build.
    I have't tried to find out exactly where the failure point in size is, but, not sure that's even relevant, since 44kb isn't an unreasonable size to expect.
    By turning on the Debug mode in BlazeDS, I can see the object and it's attributes being serialized and everything looks good there. The calls are received and processed appropriately in BlazeDS for both debug and release build testing.
    Anyone have an idea on other things to try to debug/resolve this?
    Platform testing is BlazeDS 4, Flashbuilder 4.7, Websphere 8 server, iPhone (iOS 7.1.2). Tried using multiple Flex SDK's 4.12 to the latest 4.13, with no change in behavior.
    Thanks!

    After a week's worth of debugging, I found the issue.
    The Java type returned from the call was defined as ArrayList.  Changing it to List resolved the problem.
    I'm not sure why ArrayList isn't a valid return type, I've been looking at the Adobe docs, and still can't see why this isn't valid.  And, why it works in Debug mode and not in Release build is even stranger.  Maybe someone can shed some light on the logic here to me.

  • Flex app can't connect to the internet / server when uploaded?

    I made a simple app that submits a data via POST using the HTTPService. My problem is, when I Run the application from the Flash Builder IDE, and it opens in the browser as a local file, it interacts with my server (remote server) without any problem and does its job well. However, when I upload it to my website, it fails to interact. It displays on the status bar of Firefox that it's connecting to the server that requires interaction but after some time the status reverts to "Done" with my Flex app not showing any Alert boxes if it either succeeded or failed.
    It's really making me frustrated not knowing what's wrong..
    Also if it would be an added help, I decided to use the Flex 3.5 SDK to make it more compatible with commonly installed Flash Players on people's computers since the features that I used doesn't really need those of 4.0.

    Contact the app developer and ask... That's an XML error on the host.

  • Are 'projects' required when creating flex apps

    hello;
    I have spent 2 days doing several flex tutorials, and it seems everyone of them requires me to create a new project. Eclipse, then, automatically creates lots of files with names hardcoded into them.
    I, personally, am uncomfortable with this approach: a tool creates my tool-shed automatically.
    is there an alternative to developing flex apps in flash builder?
    thanks.

    After reading your response and rereading the original question a bit closer, the metadata prompting feature does not apply to creating new folders, only content.
    Again, though, I think the focus here is in the wrong place. The metadata applied to a folder is intended to be ultimately applied to the content. You can build global rules that fire on submission of content to check if a field has a value, and throw an error if the value is empty.
    If you expect users to create folders (and actually apply any metadata to the actual folder itself), you will be disappointed. Experience shows that users are not interested in that level of detail when creating content, let alone folders. Letting typical users create folders is a bad idea anyway, as they tend to create the same inefficient folder structures they previously created in file shares within Content Server.
    If you need to tightly control folder attributes, you'll be better served by locking down the ability to create new folders. Otherwise you're looking at some type of customization. Keep in mind that you won't be able to customize the right click behavior of DIS. Any changes to DIS would have to be an enhancement request.

  • Detect when context menu opens or closes

    Is there an easy way to detect when a (righ-click) context
    menu is visible? I wish there was a "visible" property for the
    Contextmenu class, but there isn't one.
    I've tried to listen to events to know when the menu opens or
    closes but it would seem as though there are far too many
    (undocumented) events to take into account and some of the events
    may be OS specific.
    For example, the following 3 events cover much of the
    scenarios of when the menu opens/closes...
    cmMenu.addEventListener(ContextMenuEvent.MENU_SELECT,
    onShow);
    cmMenu.addEventListener(Event.DEACTIVATE, onHide);
    stage.addEventListener(MouseEvent.MOUSE_DOWN, onHide);
    But you can also click either the f10, alt, esc, or enter
    keys to also close the menu. There could be other ways to close the
    menu, but since it is not well documented, I can't be certain.
    Too bad Event.CLOSE isn't dispatched when the menu closes.
    If anyone knows of a resource that documents how to determine
    when a context menu is opened or closed, please let me know.
    thanks! :-)

    Hello,
    I'm also having problems with this topic.  I'm developing an AIR app that uses context menus, and I've noticed that if I bring up a context menu, mouse around it and highlight items, but DON'T select them (i.e. click off to close the menu) that the main application loses focus.  There seems to be an invisible window or something blocking mouse events, until I move the app or do a command-~ (I'm on a Mac...it's as if there are multiple open windows and this toggles them.)  Note that this only seems to happen in the exact sequence above - selecting an item or avoiding the items altogether after the menu pops up results in the correct (expected) behavior when the menu closes.
    I'd like to be able to catch a close event of some kind for the context menu, and even better, find a way to prevent the problem described above.
    Below is a very simple AIR app that will demonstrate the problem. (I'm compiling with Flex 3.4.1 framework and running it on Snow Leopard...)  Much thanks in advance to anyone who can help me with this problem!
    -Chris
    <mx:WindowedApplication layout="absolute" applicationComplete="init()"
    xmlns:mx="http://www.adobe.com/2006/mxml">
    <mx:Script>
    <![CDATA[
    private function init():void {
    // Listener to trace mouseX property
    myCanvas.addEventListener(MouseEvent.MOUSE_MOVE,
    function (e:MouseEvent):void {
    trace(myCanvas.mouseX);
    // Create a simple context menu
    myCanvas.contextMenu= new ContextMenu();
    myCanvas.contextMenu.addItem(new NativeMenuItem("test"));
    ]]>
    </mx:Script>
    <mx:Canvas id="myCanvas" height="50%" width="50%" backgroundColor="0x00FF00"/>
    </mx:WindowedApplication>

  • Flex App with remoting works on local Apache server - fails on production server

    Hi Everyone,
    I have a Flex app that uses Data Services. The application works correctly on my local Mac Server and Apache. When uploaded to my production CentOS server, the Data Services fail. When the app is done loading, the following error message comes up:
    Class "ModelsService" does not exist: Plugin by name 'ModelsService' was not found in the registry; used paths:
    : /www/html/mdubb//PHP2/bin-debug/services/
    #0 /var/www/html/mdubb/ZendFramework/library/Zend/Amf/Server.php(550): Zend_Amf_Server->_dispatch('getAllModels', Array, 'ModelsService')
    #1 /var/www/html/mdubb/ZendFramework/library/Zend/Amf/Server.php(626): Zend_Amf_Server->_handle(Object(Zend_Amf_Request_Http))
    #2 /var/www/html/mdubb/PHP2/bin-debug/gateway.php(73): Zend_Amf_Server->handle()
    #3 {main}
    Where getAllModels is a method of my custom ModelsService.
    I changed the Zend path in the amf_config.ini file so it references the correct directory. If I browse to gateway.php, it prompts to download the file, which I think is correct.
    I added in the config file the path to the services folder.
    I tried adding $server->addClass("ModelServices") in gateway.php, but it didn't like that.
    The file structure on the production server is the same as the local server (I litterally uploaded everything in my local web root), so I can't think of what would be differenet between the two.
    I have already pulled one all nighter trying to get this to run. Do you know what I should troubleshoot next?
    Thanks in advance,
    Ryan

    Hi,
    With reference to Lumira 1.15, the minimal SP we support is BI 4.0 SP6. Please upgrade at least to this. Everything is detailed in the PAM https://websmp107.sap-ag.de/~sapidb/011000358700001095842012E
    Best regards,
    Antoine

  • Loading purchased swf into Flash Builder 4 Flex app

    I have purchased a Flash "fundraising thermometer" from an online Flash components site. It takes input from an xml file and displays a thermometer with the goal at the top and the current amount raised indicated. It came with the following files:
    thermometer.swf
    thermometer01.fla
    thermometer01.html (A sample that works.)
    xml/thermometer.xml (The source file: goal amount, current amount, mark interval, etc.)
    caurina/transitions (Mostly .as files.)
    Since the test html (thermometer01.html) works fine, I thought this would be a no-brainer.
    I first unzipped the files into a "thermometer" folder in my current project. I then went into Flash Builder and created a SWFLoader object as follows:
    <mx:SWFLoader 
    id="myLoader" source="../thermometer/thermometer.swf" complete="initThermometer();" autoLoad="true" scaleContent="false"/>\
     private function initThermometer():void { 
         Alert.show('Thermometer loaded');
    The Design view looks fine. I can see the thermometer default image (see below).
    When I run the app, I get no errors, just a broken image link in a box (see below). The alert box also never shows up.
    I'm new to Flex, so I may be doing something stupid that keeps this from working. I contacted the author of the thermometer widget but he doesn't know anything about Flex.
    Any help figuring out how to get this to work in a flex app would be appreciated.

    You should probably add more event handlers to see what's going on.  Especially "ioError". The complete list is below.  For coverage, add a handler for each event. You can also use in MXML
         complete="initThermometer(event)
    and add an argument to your Actionscript method, to find out details about the event.
    private function initThermometer(event:Event):void { 
         Alert.show('Thermometer loaded ' + event.type);}
    Events
        complete="No default"
        httpStatus="No default"
        init="No default"
        ioError="No default"
        open="No default"
        progress="No default"
        securityError="No default"
        unload="No default
    General info here:
         http://livedocs.adobe.com/flex/3/langref/mx/controls/SWFLoader.html
    I did not test my code suggestions, but it's probably close.

  • Why would I need to use LiveCycle Data Services in a Flex app?

    I cannot figure out what additional functionality is provided by using LiveCycle Data Services in my Flex apps.  I cannot get a clear understanding of how using LiveCycle Data Services would benefit my applications.  Does someone out there use LiveCycle Data Services?  If so, what do you do with it in Flex?
    Thanks!

    - data push for publish/subscribe implementations
    User has to do nothing to get updated information. You push it to their machine when new data is available, like Yahoo finance updated quotes.
    - data paging
    You don't want to display one million rows in your datagrid at once. Get a batch of data, if the user scrolls down, get the next batch, etc.
    - server side clustering
    One server does not get overloaded. High traffic sites have their large number of concurrent connections managed more efficiently.
    - JMS services
    JMS is a powerful technology for messaging throughout an application, and LCDS makes it much easier.
    - RTMP tunneling
    Allows the use of the RTMP protocol in LiveCycle Data Services applications. Makes it easier to traverse firewalls and proxies appropriately that currently prevent direct RTMP client connections to the server.
    If this post answered your question or helped, please mark it as such.

  • Using Weblogic to Deploy Simple Flex App

    Hi,
       I am trying to deploy a simple Flex application in a weblogic8.1  server , so that I can use it locally.
    Can any one please guide me where and how I have to deploy my flex app .
    I am pretty new to this can any body provide me a guide or walk through step wise for me.
    More over What is the url I need to give in the browser to access the flex app I deploy in the Weblogic server.
    (At present I am using the IIS -- just copying the .swf file and wrapper html page in to the C:\Inetpub\wwwroot and giving http://localhost/test.html
    in the browser to access it) ---  How do I do this using Weblogic 8.1
    thanks
    Nash

    Hi again Nash,
    the stuff I am doing at present is not yet permitted to be publicly available, but the principles are very straightforward. Remember that WebLogic is primarily concerned with server-side functionality and Flex with client-side, so there is not really a great deal of overlap. The place where your Flex instantiation code will sit is in one or other JSP, using code very like the templates that Adobe generate. The only thing you have to do is ensure that your JSP (or the controller/code files behind it) generate HTML that contains the necessary. I tend to use the Apache Beehive libraries for UI stuff, but from vague memory I don't think these were around in WL8 - however, it doesn't really matter what tag library you prefer as all you are doing is generating HTML that looks like the usual JavaScript calls to AC_FL_RunContent (or swfobject if you are using that method). Basically, just take the Adobe-generated template and wrap the necessary bits and pieces round the edge to make it a proper JSP.
    When you need to make calls to get functionality, just use something like
                        service = new HTTPService();
                        separator_date = new Date();
                        service.url = "get_tool_list.jsp?sep=" + separator_date.valueOf();
                        service.addEventListener(FaultEvent.FAULT , fault_handler);
                        service.addEventListener(ResultEvent.RESULT, resultHandler);
                        service.resultFormat = "text";
                        CursorManager.setBusyCursor();
                        service.requestTimeout = WEB_SERVICE_TIMEOUT;
                        service.send();
    and then inside get_tool_list.jsp (or whatever...) do the server-side functionality you need, and return the result in a suitable format that the Flex resultHandler method can then interpret and make use of.
    Hope that helps,
    Richard

  • Output CFC query to Flex app

    I have a CFC which simply calls the DB and returns the
    results to the Flex app.
    CFC:
    <cfcomponent>
    <cffunction name="runQuery" output="false"
    access="public" returntype="Query">
    <cfquery name="qry_login" datasource="EWPROJ">
    SELECT *
    FROM ROBERTTEST
    </cfquery>
    <cfreturn qry_login>
    </cffunction>
    </cfcomponent>
    Simple enough.......
    Here is my Flex file...
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="
    http://www.adobe.com/2006/mxml"
    layout="absolute" creationComplete="initApp();">
    <mx:Script>
    <![CDATA[
    import mx.rpc.events.ResultEvent;
    import mx.collections.ArrayCollection;
    [Bindable]
    private var qry_result:ArrayCollection;
    private function initApp():void //first thing to load
    callCFC.runQuery()
    private function resultHandler(event:ResultEvent):void
    var qry_result:ArrayCollection = new ArrayCollection();
    //New Array Object called p1
    qry_result.source=event.result as Array;
    trace(qry_result);
    ]]>
    </mx:Script>
    <mx:RemoteObject id="callCFC" destination="ColdFusion"
    source="CFIDE.samples.FlexToCFC.CFC.myCFC"
    result="resultHandler(event)"
    showBusyCursor="true" />
    </mx:Application>
    my problem is within the [resultHandler] I want to simply
    create a variable that will contain my results of the object I
    passed so I can trace it to the screen.... I know that the object
    is returning correctly, by tracing result.event. What am I doing
    wrong here, cause it shows nothing.
    I'm guessing that my problem is that I am not putting the
    object into some sort of array or string where I can access it...
    How do I do this correctly? Thanks everyone.

    Ahhh,,, yes, I appologize. I will make better headings next
    time.. Okay, I tried your solution and it printed out what I wanted
    and more. SWEET!! Now I think all I need to do is put it in an
    associated array so I can reference things better. Not sure yet,
    but I'll play with it. Thanks again... Genius! BTW, here is the
    output when I ran it:
    mx.collections::ArrayCollection)#0
    filterFunction = (null)
    length = 6
    list = (mx.collections::ArrayList)#1
    length = 6
    source = (Array)#2
    [0] (Object)#3
    NAME = "Rob Capilli"
    TYPE = "Male"
    [1] (Object)#4
    NAME = "Meatball"
    TYPE = "Cat"
    [2] (Object)#5
    NAME = "Sanket"
    TYPE = "male"
    [3] (Object)#6
    NAME = "Sarah"
    TYPE = "Female"
    [4] (Object)#7
    NAME = "1"
    TYPE = "1"
    [5] (Object)#8
    NAME = ""
    TYPE = ""
    uid = "21B5BECE-6A2E-6940-9543-E830E43DAAFA"
    sort = (null)
    source = (Array)#2

  • HTTP request logger/simulator for flex app

    I have a server that provides input xml data to a flex app in a browser be displayed on the screen for editing over http. Can someone suggest a way to cache and simulate this server's response? I need the flex app in the browser to work even when the server is down (for testing and UI dev). Any tools or ideas that I may be able to use?
    Thx

    just point your HTTPService tag to any local xml file having static data snapshot using url attribute
    If you feel this message answers your question or helps, please mark it respectively

Maybe you are looking for

  • Expression to Hide Column

    Hello everyone...I am using web application.Can anybody tell me how to hide column if data is not present in it in RDLC table using nchar type of data.I have used expression for it but its not working As column is hided but  if I insert some value in

  • Oracle 9iAS Orion Server Crashes on Running RWSERVLET

    We are developing a product with JSP as front end,EJB as middle tier and Oracle as DB.Oracle 9iAS is the deployment environment.We are using the RWSERVLET configuration. We have configured Orion to communicate with RWSERVLET.Rwservlet copied to web-i

  • All active favourites

    Hi, I need to write a program which will give me all Active favourites i.e. the output should be in the form of: <user_id>, <Total # of folders the user has under KM Favourites>. Can anyone please point me in the right direction? Thanks.

  • Google history

    Does anyone know how to clear the search history from the google search bar on a web page (which is my home page...http://www.google.com.au/)... not the google search bar on the safari tool bar. Thanks Matt

  • App Store not displaying

    My iPad 3 has up to date ios6, everything has been running fine, except the App Store has stopped working. It opens with the feature tabs at the bottom etc, try's to load then stops with a blank page. I have also noticed the YouTube app has disappear