On Wed, 3 Oct 2012 14:12:52 +0900 Daniel Juyung Seo <seojuyu...@gmail.com> said:

yeah. i dont see any way it could be different. it has to init elm stuff in case
u use an elm external from an app that doesnt use elm. it's needed. the only
possible way i see is one of:

1. make elm_exit a "we will never elm_run again without an elm_init so feel
free to delete all windows"

OR

2. we add an elm policy mode (we have ways of setting policy enums - eg auto do
elm_exit() when last window is deleted) that does this but then its opt-in

OR

3. add an elm_win_all_del() that does the deletion of all windows and again its
an explicit opt-in.

right now i don't smell any other solution.

> Understood.
> That looks quite complicated issue.
> I don't have any solid idea about that.
> But thanks for spotting this issue.
> 
> Daniel Juyung Seo (SeoZ)
> 
> On Mon, Oct 1, 2012 at 10:21 PM, Bruno Dilly <bdi...@profusion.mobi> wrote:
> > On Sun, Sep 30, 2012 at 11:53 PM, Daniel Juyung Seo
> > <seojuyu...@gmail.com> wrote:
> >> So elm_exit() means, we are not going to continue the main loop anyhow?
> >
> > We'll keep elm_exit() the way it is, a call to ecore_main_loop_quit()
> >
> > Right now, on elm_shutdown, when _elm_init_count reaches 0, it will
> > call _elm_win_shutdown, that will go through the list of windows and
> > delete all of them.
> > But, if your theme uses externals, the count won't reaches 0 unless
> > you explicitly deletes the externals before exiting.
> >
> > I thought about adding a policy that would delete all the windows
> > forcedly on elm exit, but I decided to see if anybody could have some
> > ideas about changing externals init / shutdown design first. So we
> > could have applications with themes with or without externals working
> > the same way.
> >
> >>
> >> Daniel Juyung Seo (SeoZ)
> >>
> >> On Sun, Sep 30, 2012 at 8:58 PM, Cedric BAIL <moa.blueb...@gmail.com>
> >> wrote:
> >>> Cedric Bail
> >>> On Sep 29, 2012 10:26 PM, "Gustavo Sverzut Barbieri" <
> >>> barbi...@profusion.mobi> wrote:
> >>>>
> >>>> On Saturday, September 29, 2012, Cedric BAIL wrote:
> >>>>
> >>>> > On Sep 29, 2012 6:28 AM, "Bruno Dilly" <bdi...@profusion.mobi
> >>> <javascript:;>>
> >>>> > wrote:
> >>>> > > I just saw that when an elm external is added it calls elm_init(),
> >>>> > > and calls shutdown when it's deleted.
> >>>> > > But it's not a nice place to put these calls, because you'll create
> >>>> > > scenarios where elm won't shutdown properly.
> >>>> > >
> >>>> > > Example:
> >>>> > >
> >>>> > > A elm application that uses elm_exit() to quit.
> >>>> > >
> >>>> > > it will have
> >>>> > >
> >>>> > > elm_main() {
> >>>> > >  ...
> >>>> > >  elm_run()
> >>>> > >  ...
> >>>> > >  elm_shutdown()
> >>>> > > }
> >>>> > > ELM_MAIN
> >>>> > >
> >>>> > > If you are not using externals, when you call elm_exit() it will quit
> >>>> > > the main loop, call elm_shutdown, elm init count will be 0, so it
> >>>> > > will delete the windows and it's widgets, call possible callback
> >>>> > > functions for object delete. Nice.
> >>>> > >
> >>>> > > But if you are using externals in your theme, when you call
> >>>> > > elm_shutdown(), elm init count will be the number of externals used,
> >>>> > > so it won't really shutdown, it won't delete the objects, no
> >>>> > > callbacks will be called. Not good.
> >>>> > >
> >>>> > > Does anybody have ideas about how to fix it ?
> >>>> >
> >>>> > Evas_object_del on the window should do the job and seem logical to me.
> >>>>
> >>>>
> >>>> That's the problem: windows are never destroyed since elm initialization
> >>>> count never drops to zero, then no Evas shutdown and no canvas deleted.
> >>>>
> >>>> He was talking to me about elm policy to request windows to be deleted on
> >>>> elm_exit() and I like that idea.
> >>>
> >>> Make sense to me to, as it's the common case.
> >>>
> >>>> > > --
> >>>> > > Bruno Dilly
> >>>> > > Senior Developer
> >>>> > > ProFUSION embedded systems
> >>>> > > http://profusion.mobi
> >>>> > >
> >>>> > >
> >>>> >
> >>>> >
> >>> ------------------------------------------------------------------------------
> >>>> > > Got visibility?
> >>>> > > Most devs has no idea what their production app looks like.
> >>>> > > Find out how fast your code is with AppDynamics Lite.
> >>>> > > http://ad.doubleclick.net/clk;262219671;13503038;y?
> >>>> > > http://info.appdynamics.com/FreeJavaPerformanceDownload.html
> >>>> > > _______________________________________________
> >>>> > > enlightenment-devel mailing list
> >>>> > > enlightenment-devel@lists.sourceforge.net <javascript:;>
> >>>> > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>>> > >
> >>>> >
> >>>> >
> >>> ------------------------------------------------------------------------------
> >>>> > How fast is your code?
> >>>> > 3 out of 4 devs don\\\'t know how their code performs in production.
> >>>> > Find out how slow your code is with AppDynamics Lite.
> >>>> > http://ad.doubleclick.net/clk;262219672;13503038;z?
> >>>> > http://info.appdynamics.com/FreeJavaPerformanceDownload.html
> >>>> > _______________________________________________
> >>>> > enlightenment-devel mailing list
> >>>> > enlightenment-devel@lists.sourceforge.net <javascript:;>
> >>>> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>>> >
> >>>>
> >>>>
> >>>> --
> >>>> Gustavo Sverzut Barbieri
> >>>> http://profusion.mobi embedded systems
> >>>> --------------------------------------
> >>>> MSN: barbi...@gmail.com
> >>>> Skype: gsbarbieri
> >>>> Mobile: +55 (19) 9225-2202
> >>>>
> >>> ------------------------------------------------------------------------------
> >>>> How fast is your code?
> >>>> 3 out of 4 devs don\\\'t know how their code performs in production.
> >>>> Find out how slow your code is with AppDynamics Lite.
> >>>> http://ad.doubleclick.net/clk;262219672;13503038;z?
> >>>> http://info.appdynamics.com/FreeJavaPerformanceDownload.html
> >>>> _______________________________________________
> >>>> enlightenment-devel mailing list
> >>>> enlightenment-devel@lists.sourceforge.net
> >>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>>>
> >>> ------------------------------------------------------------------------------
> >>> Everyone hates slow websites. So do we.
> >>> Make your web apps faster with AppDynamics
> >>> Download AppDynamics Lite for free today:
> >>> http://ad.doubleclick.net/clk;258768047;13503038;j?
> >>> http://info.appdynamics.com/FreeJavaPerformanceDownload.html
> >>> _______________________________________________
> >>> enlightenment-devel mailing list
> >>> enlightenment-devel@lists.sourceforge.net
> >>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>
> >> ------------------------------------------------------------------------------
> >> Got visibility?
> >> Most devs has no idea what their production app looks like.
> >> Find out how fast your code is with AppDynamics Lite.
> >> http://ad.doubleclick.net/clk;262219671;13503038;y?
> >> http://info.appdynamics.com/FreeJavaPerformanceDownload.html
> >> _______________________________________________
> >> enlightenment-devel mailing list
> >> enlightenment-devel@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >
> >
> >
> > --
> > Bruno Dilly
> > Senior Developer
> > ProFUSION embedded systems
> > http://profusion.mobi
> >
> > ------------------------------------------------------------------------------
> > Got visibility?
> > Most devs has no idea what their production app looks like.
> > Find out how fast your code is with AppDynamics Lite.
> > http://ad.doubleclick.net/clk;262219671;13503038;y?
> > http://info.appdynamics.com/FreeJavaPerformanceDownload.html
> > _______________________________________________
> > enlightenment-devel mailing list
> > enlightenment-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> 
> ------------------------------------------------------------------------------
> Don't let slow site performance ruin your business. Deploy New Relic APM
> Deploy New Relic app performance management and know exactly
> what is happening inside your Ruby, Python, PHP, Java, and .NET app
> Try New Relic at no cost today and get our sweet Data Nerd shirt too!
> http://p.sf.net/sfu/newrelic-dev2dev
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    ras...@rasterman.com


------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to