hn-wm-types.h

00001 /* -*- mode:C; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
00002 
00003 /*
00004  * This file is part of maemo-af-desktop
00005  *
00006  * Copyright (C) 2005 Nokia Corporation.
00007  *
00008  * Contact: Karoliina Salminen <karoliina.t.salminen@nokia.com>
00009  *
00010  * This library is free software; you can redistribute it and/or
00011  * modify it under the terms of the GNU Lesser General Public License
00012  * as published by the Free Software Foundation; either version 2.1 of
00013  * the License, or (at your option) any later version.
00014  *
00015  * This library is distributed in the hope that it will be useful, but
00016  * WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00018  * Lesser General Public License for more details.
00019  *
00020  * You should have received a copy of the GNU Lesser General Public
00021  * License along with this library; if not, write to the Free Software
00022  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
00023  * 02110-1301 USA
00024  *
00025  */
00026 
00031 #ifndef HILDON_NAVIGATOR_WM_TYPES_H
00032 #define HILDON_NAVIGATOR_WM_TYPES_H
00033 
00034 enum
00035 {
00036   HN_ATOM_WM_CLASS,
00037   HN_ATOM_WM_NAME,
00038   HN_ATOM_WM_STATE,
00039   HN_ATOM_WM_TRANSIENT_FOR,
00040   HN_ATOM_WM_HINTS,
00041   HN_ATOM_WM_WINDOW_ROLE,
00042   
00043   HN_ATOM_NET_WM_WINDOW_TYPE,
00044   HN_ATOM_NET_WM_WINDOW_TYPE_MENU,
00045   HN_ATOM_NET_WM_WINDOW_TYPE_NORMAL,
00046   HN_ATOM_NET_WM_WINDOW_TYPE_DIALOG,
00047   HN_ATOM_NET_WM_WINDOW_TYPE_DESKTOP,
00048   HN_ATOM_NET_WM_STATE,
00049   HN_ATOM_NET_WM_STATE_MODAL,
00050   HN_ATOM_NET_SHOWING_DESKTOP,
00051   HN_ATOM_NET_WM_PID,
00052   HN_ATOM_NET_ACTIVE_WINDOW,
00053   HN_ATOM_NET_CLIENT_LIST,
00054   HN_ATOM_NET_WM_ICON,
00055   HN_ATOM_NET_WM_USER_TIME,
00056   HN_ATOM_NET_WM_NAME,
00057 
00058   HN_ATOM_HILDON_APP_KILLABLE,
00059   HN_ATOM_HILDON_ABLE_TO_HIBERNATE,
00060   HN_ATOM_HILDON_VIEW_LIST,
00061   HN_ATOM_HILDON_VIEW_ACTIVE,
00062   HN_ATOM_HILDON_FROZEN_WINDOW,
00063 
00064   HN_ATOM_MB_WIN_SUB_NAME,
00065   HN_ATOM_MB_COMMAND,
00066   HN_ATOM_MB_CURRENT_APP_WINDOW,
00067   HN_ATOM_MB_APP_WINDOW_LIST_STACKING,
00068 
00069   HN_ATOM_UTF8_STRING,
00070 
00071   HN_ATOM_COUNT
00072 };
00073 
00074 typedef struct HNWM HNWM;
00075 
00076 /* 
00077  *  HNWMWatchableApp instances are created from .desktop files and through
00078  *  key values represent windows that are valid for watching/tracking via 
00079  *  the HN.
00080  */
00081 typedef struct HNWMWatchableApp      HNWMWatchableApp;
00082 
00083 /* A HNWMWatchedWindow is a running watched / tracked instance of a window 
00084  * that references a valid HNWMWatchableApp. A watched window *may* contain
00085  * a list of views ( see below ). 
00086  */
00087 typedef struct HNWMWatchedWindow     HNWMWatchedWindow;
00088 
00089 /* A HNWMWatchedWindowView is a window in a window of a watched window,
00090  * but to WM it appears as a *single* window, yet to HN as multiples via
00091  * having a _NET_CLIENT_LIST and _NET_ACTIVE_ID set on *it* rather than 
00092  * the usual root window.
00093  */
00094 typedef struct HNWMWatchedWindowView HNWMWatchedWindowView;
00095 
00096 /* callbacks for external application switch code - actual menu updates */
00097 typedef struct HNWMCallbacks         HNWMCallbacks;
00098 
00099 /* Used to pass data to launch banner timeout callback */
00100 typedef struct HNWMLaunchBannerInfo  HNWMLaunchBannerInfo;
00101 
00102 #endif

Generated on Fri Jun 9 16:23:08 2006 for maemo-af-desktop-documentation by  doxygen 1.4.6