Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Maemo: Developers

Programmatically showing the desktop in Fremantle

 

 

Maemo developers RSS feed   Index | Next | Previous | View Threaded


obb770 at gmail

Jan 14, 2010, 1:29 PM

Post #1 of 9 (992 views)
Permalink
Programmatically showing the desktop in Fremantle

Is there a way in Fremantle to programmatically change the view from
application view directly to the desktop home view (perhaps similar to
the com.nokia.hildon_desktop.exit_app_view dbus signal)?

The specific use is for a standalone application that is launched (or
brought to the foreground if it is already running) by a
hildon-status-menu plugin. When the application is done with user
interaction, it should continue running but "minimize" itself so that
the desktop will be shown (as it was before the application was
activated). Using the exit_app_view signal causes the task navigator
view to show where the initial desktop view is still one click away on
the blurred area.

Of course it would be possible to have the application windows be part
of and shown by the plugin itself. But it seems cleaner to have
application logic in a separate process and keep the status plugin
just doing status icon indication and providing a launch button.

Given that if there isn't a "good" way to do this, then it might not
be fixed in the Fremantle lifetime - is there an ugly way to show the
desktop? like simulating pressing the right place on the screen,
somehow getting into non-public API of hildon-desktop, or something
else?

Thanks,

-obb
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers


simon at budig

Jan 14, 2010, 1:47 PM

Post #2 of 9 (969 views)
Permalink
Re: Programmatically showing the desktop in Fremantle [In reply to]

obb770 (obb770 [at] gmail) wrote:
> Given that if there isn't a "good" way to do this, then it might not
> be fixed in the Fremantle lifetime - is there an ugly way to show the
> desktop? like simulating pressing the right place on the screen,
> somehow getting into non-public API of hildon-desktop, or something
> else?

Can't you just gtk_window_hide() the application window?

Bye,
Simon
--
simon [at] budig http://simon.budig.de/
simon.budig [at] kernelconcepts http://www.kernelconcepts.de/
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers


obb770 at gmail

Jan 14, 2010, 1:58 PM

Post #3 of 9 (965 views)
Permalink
Re: Programmatically showing the desktop in Fremantle [In reply to]

On Thu, Jan 14, 2010 at 11:47 PM, Simon Budig <simon [at] budig> wrote:
> obb770 (obb770 [at] gmail) wrote:
>> Given that if there isn't a "good" way to do this, then it might not
>> be fixed in the Fremantle lifetime - is there an ugly way to show the
>> desktop? like simulating pressing the right place on the screen,
>> somehow getting into non-public API of hildon-desktop, or something
>> else?
>
> Can't you just gtk_window_hide() the application window?

It seems to still show the task navigator view with other minimized
applications (if other applications happened to be already running).

Thanks,

-obb
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers


matan at svgalib

Jan 14, 2010, 2:56 PM

Post #4 of 9 (966 views)
Permalink
Re: Programmatically showing the desktop in Fremantle [In reply to]

On Thu, 14 Jan 2010, obb770 wrote:

> Is there a way in Fremantle to programmatically change the view from
> application view directly to the desktop home view (perhaps similar to
> the com.nokia.hildon_desktop.exit_app_view dbus signal)?
>
> The specific use is for a standalone application that is launched (or
> brought to the foreground if it is already running) by a
> hildon-status-menu plugin. When the application is done with user
> interaction, it should continue running but "minimize" itself so that
> the desktop will be shown (as it was before the application was
> activated). Using the exit_app_view signal causes the task navigator
> view to show where the initial desktop view is still one click away on
> the blurred area.
>
> Of course it would be possible to have the application windows be part
> of and shown by the plugin itself. But it seems cleaner to have
> application logic in a separate process and keep the status plugin
> just doing status icon indication and providing a launch button.
>
> Given that if there isn't a "good" way to do this, then it might not
> be fixed in the Fremantle lifetime - is there an ugly way to show the
> desktop? like simulating pressing the right place on the screen,
> somehow getting into non-public API of hildon-desktop, or something
> else?

There is no way equivalent to exit_app_view, but in a modified
hildon-desktop I am working on, I add a similar dbus signal for
selecting any of the desktop modes. See here for details:

http://talk.maemo.org/showthread.php?t=38314

I'll use this thread for a question regarding hildon-desktop. Where is
hildon-desktop developed? In other words If I want a patch to be
included in hildon-desktop, whom should I contact?



--
Matan.

_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers


hald at icandy

Jan 15, 2010, 12:42 AM

Post #5 of 9 (948 views)
Permalink
Re: Programmatically showing the desktop in Fremantle [In reply to]

On Fri, 2010-01-15 at 00:56 +0200, Matan Ziv-Av wrote:
> I'll use this thread for a question regarding hildon-desktop. Where is
> hildon-desktop developed? In other words If I want a patch to be
> included in hildon-desktop, whom should I contact?

Have a look here:
http://maemo.gitorious.org/fremantle-hildon-desktop

Cheers!
Conny


_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers


apinheiro at igalia

Jan 15, 2010, 3:29 AM

Post #6 of 9 (946 views)
Permalink
Re: Programmatically showing the desktop in Fremantle [In reply to]

From: obb770 <obb770 [at] gmail>

> Given that if there isn't a "good" way to do this, then it might not
> be fixed in the Fremantle lifetime - is there an ugly way to show the
> desktop? like simulating pressing the right place on the screen,
> somehow getting into non-public API of hildon-desktop, or something
> else?

One option would use the current hildon-desktop a11y support. But
probably it isn't really useful, as to do that you would require to
install on the device libbonobo, at-spi, cally, etc.

Then you could access to the tast-switcher button and click on it, or
simulate the X event on the screen.

Anyway, as I just said, this solution doesn't seems really
comfortable, and seems a über-workaround.

Just FYI

===
API (apinheiro [at] igalia)
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers


kimmo.hamalainen at nokia

Jan 18, 2010, 3:10 AM

Post #7 of 9 (850 views)
Permalink
Re: Programmatically showing the desktop in Fremantle [In reply to]

On Thu, 2010-01-14 at 23:56 +0100, ext Matan Ziv-Av wrote:
> On Thu, 14 Jan 2010, obb770 wrote:
...
> There is no way equivalent to exit_app_view, but in a modified
> hildon-desktop I am working on, I add a similar dbus signal for
> selecting any of the desktop modes. See here for details:
>
> http://talk.maemo.org/showthread.php?t=38314
>
> I'll use this thread for a question regarding hildon-desktop. Where is
> hildon-desktop developed? In other words If I want a patch to be
> included in hildon-desktop, whom should I contact?

If more and more applications will start controlling the desktop state,
it could lead to unpredictable behaviour and/or chaos, so I'm not very
fond of that. The desktop UI and its transitions works as they were
specified by UI and interaction experts.

If you want the switcher to ignore your application, please try using
_NET_WM_STATE_SKIP_PAGER. See
http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#id2552903
for more information.

-Kimmo


_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers


kimmo.hamalainen at nokia

Jan 18, 2010, 3:13 AM

Post #8 of 9 (861 views)
Permalink
Re: Programmatically showing the desktop in Fremantle [In reply to]

On Mon, 2010-01-18 at 12:10 +0100, Hamalainen Kimmo (Nokia-D/Helsinki)
wrote:
> On Thu, 2010-01-14 at 23:56 +0100, ext Matan Ziv-Av wrote:
> > On Thu, 14 Jan 2010, obb770 wrote:
> ...
> > There is no way equivalent to exit_app_view, but in a modified
> > hildon-desktop I am working on, I add a similar dbus signal for
> > selecting any of the desktop modes. See here for details:
> >
> > http://talk.maemo.org/showthread.php?t=38314
> >
> > I'll use this thread for a question regarding hildon-desktop. Where is
> > hildon-desktop developed? In other words If I want a patch to be
> > included in hildon-desktop, whom should I contact?
>
> If more and more applications will start controlling the desktop state,
> it could lead to unpredictable behaviour and/or chaos, so I'm not very
> fond of that. The desktop UI and its transitions works as they were
> specified by UI and interaction experts.
>
> If you want the switcher to ignore your application, please try using
> _NET_WM_STATE_SKIP_PAGER. See

Sorry, I meant _NET_WM_STATE_SKIP_TASKBAR...

> http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#id2552903
> for more information.
>
> -Kimmo
>
>
> _______________________________________________
> maemo-developers mailing list
> maemo-developers [at] maemo
> https://lists.maemo.org/mailman/listinfo/maemo-developers

_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers


obb770 at gmail

Jan 19, 2010, 2:30 PM

Post #9 of 9 (821 views)
Permalink
Re: Programmatically showing the desktop in Fremantle [In reply to]

2010/1/18 Kimmo Hämäläinen <kimmo.hamalainen [at] nokia>:
> On Mon, 2010-01-18 at 12:10 +0100, Hamalainen Kimmo (Nokia-D/Helsinki)
> wrote:
>> If you want the switcher to ignore your application, please try using
>> _NET_WM_STATE_SKIP_PAGER. See
>
> Sorry, I meant _NET_WM_STATE_SKIP_TASKBAR...
>

If I understand correctly (couldn't get it to work), the effect will
be that the application will just not be in the task navigator view,
but pressing the task switcher icon (or sending exit_app_view) or
closing the application will still lead to the task navigator view and
not to the home view.

Yet, I found that the code suggested in [1] does what I wanted in
Fremantle. That is, sending _NET_SHOWING_DESKTOP with data 1 to the
root window from the application, causes the desktop home view to show
(at least in scratchbox - didn't try on a device), without showing the
task navigator view (even if other applications are running).

The problem is that if the status menu item that launched the
application was used from the status bar on top of another application
window (and not from the home view) the XEvent will still get to the
home desktop view rather than back to the other ("original")
application view.

Given that the user still might not get back to where they came from,
and the recommendation against messing with the desktop state. I might
just keep using exit_app_view (from where the user is one click away
from the home view or another application view).

Thanks,

-obb

[1] - http://www.linuxquestions.org/questions/linux-software-2/how-to-show-desktop-in-xfce4-601161/#post2967109
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://lists.maemo.org/mailman/listinfo/maemo-developers

Maemo developers RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.