diff options
author | Srirama Sharma <srirama.sharma@wipro.com> | 2006-01-21 19:52:50 +0000 |
---|---|---|
committer | Elijah Newren <newren@src.gnome.org> | 2006-01-21 19:52:50 +0000 |
commit | 40e5390ddbbb19784f53a79351648e59db46da76 (patch) | |
tree | 0208a0eff3aeec5d6baae219beecb900bcdf470d /libwnck/window.h | |
parent | 798c5ff5f003d3bd4d28464b5bcba64ea2c5be2b (diff) | |
download | libwnck-40e5390ddbbb19784f53a79351648e59db46da76.tar.gz |
This patch is union of patches given by Leena Gunda and Christian Neumair
2006-01-21 Srirama Sharma <srirama.sharma@wipro.com>
This patch is union of patches given by Leena Gunda and Christian
Neumair along with some minor modifications; it synchronizes the
right-click-menu with that of Metacity's. #135710.
* libwnck/screen.c :
(wnck_create_window_action_menu): Add "Move to Workspace Left/
Right/Up/Down" menu item.
(item_activated_callback): Implement code to move the window to
the workspace at left/right/up/down.
* libwnck/screen.h :
Added the WnckWorkspaceLayout and WnckMotionDirection structure.
* libwnck/window-action-menu.c :
(wnck_screen_get_workspace_index): Get the index of the
workspace.
(wnck_screen_get_workspace_neighbor): Get the neighbor of the
workspace in specified direction.
(_wnck_screen_process_property_notify): If the workspace layout
has changed, call the idle handler to update the screen info.
(wnck_screen_calc_workspace_layout): calculate the workspace
layout.
(wnck_screen_free_workspace_layout): free the layout grid.
(update_workspace_layout): idle handler to update the screen
info. if the layout has changed.
The code to calculate the workspace layout is taken from
metacity sources.
(make_check_menu_item): create a check menu item with the given
mnemonic text.
(update_menu_state): replace the Roll up/Unroll menu item with
On Top check menu item.
* libwnck/window.[ch] :
(wnck_window_make_above): Put the window on top of all window.
(wnck_window_is_above): check whether the window is above all
other window.
(wnck_window_unmake_above): if the window is on top then uncheck
the menu item.
Diffstat (limited to 'libwnck/window.h')
-rw-r--r-- | libwnck/window.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libwnck/window.h b/libwnck/window.h index 6e23e57..6f40fab 100644 --- a/libwnck/window.h +++ b/libwnck/window.h @@ -45,6 +45,7 @@ typedef enum WNCK_WINDOW_STATE_FULLSCREEN = 1 << 8, WNCK_WINDOW_STATE_DEMANDS_ATTENTION = 1 << 9, WNCK_WINDOW_STATE_URGENT = 1 << 10, + WNCK_WINDOW_STATE_ABOVE = 1 << 11 } WnckWindowState; typedef enum @@ -65,7 +66,8 @@ typedef enum WNCK_WINDOW_ACTION_UNMINIMIZE = 1 << 13, WNCK_WINDOW_ACTION_MAXIMIZE = 1 << 14, WNCK_WINDOW_ACTION_UNMAXIMIZE = 1 << 15, - WNCK_WINDOW_ACTION_FULLSCREEN = 1 << 16 + WNCK_WINDOW_ACTION_FULLSCREEN = 1 << 16, + WNCK_WINDOW_ACTION_ABOVE = 1 << 17 } WnckWindowActions; typedef enum @@ -157,6 +159,7 @@ gboolean wnck_window_is_maximized_horizontally (WnckWindow *window); gboolean wnck_window_is_maximized_vertically (WnckWindow *window); gboolean wnck_window_is_maximized (WnckWindow *window); gboolean wnck_window_is_shaded (WnckWindow *window); +gboolean wnck_window_is_above (WnckWindow *window); gboolean wnck_window_is_skip_pager (WnckWindow *window); gboolean wnck_window_is_skip_tasklist (WnckWindow *window); gboolean wnck_window_is_fullscreen (WnckWindow *window); @@ -184,6 +187,8 @@ void wnck_window_maximize_vertically (WnckWindow *window); void wnck_window_unmaximize_vertically (WnckWindow *window); void wnck_window_shade (WnckWindow *window); void wnck_window_unshade (WnckWindow *window); +void wnck_window_make_above (WnckWindow *window); +void wnck_window_unmake_above (WnckWindow *window); void wnck_window_stick (WnckWindow *window); void wnck_window_unstick (WnckWindow *window); void wnck_window_keyboard_move (WnckWindow *window); |