summaryrefslogtreecommitdiff
path: root/src/stack.c
AgeCommit message (Collapse)AuthorFilesLines
2002-02-09hmm, and don't set last_window at all if we don't ++newp. Fixes even moreHavoc Pennington1-1/+0
2002-02-09 Havoc Pennington <hp@pobox.com> * src/stack.c (meta_stack_sync_to_server): hmm, and don't set last_window at all if we don't ++newp. Fixes even more obscure stacking bug.
2002-02-09assign last_window prior to ++newp, so we don't try to stack windows withHavoc Pennington1-2/+2
2002-02-09 Havoc Pennington <hp@pobox.com> * src/stack.c (meta_stack_sync_to_server): assign last_window prior to ++newp, so we don't try to stack windows with respect to themselves. Fixes some obscure stacking bugs.
2002-02-09try to make more error message strings the same, easier for translatorsHavoc Pennington1-1/+1
2002-02-09 Havoc Pennington <hp@pobox.com> * src/theme-parser.c: try to make more error message strings the same, easier for translators * src/theme.c (meta_draw_op_free): free color spec for line op (meta_theme_free): free the integer_constants hash * src/theme-parser.c (parse_boolean): move above first use * src/theme-viewer.c: fixes for theme.h changes * src/frames.c (queue_recalc_func): don't recreate layout immediately, just save title text. should speed things up. (meta_frames_set_title): just remove the layout here also, and save title text. * src/theme-parser.c (parse_toplevel_element): parse title_scale attribute on frame_geometry * src/theme.c: support setting the text size * src/frames.c: support setting the text size * theme-format.txt: updates
2002-02-09put in some kind of distinctive frame for UTILITY, though it's ugly. AlsoHavoc Pennington1-0/+4
2002-02-09 Havoc Pennington <hp@pobox.com> * src/themes/Atlanta/metacity-theme-1.xml: put in some kind of distinctive frame for UTILITY, though it's ugly. Also put in the borderless look for maximized windows. * src/stack.c (compute_layer): put splash screen in the splash layer * src/stack.h (enum): create a splash screen layer * src/place.c (meta_window_place): center splashscreen, and fix a typo in the centering code * src/window.c (recalc_window_features): disable most features on splash screens * src/screen.c (set_supported_hint): add UTILITY and SPLASHSCREEN hints * src/window.c: add UTILITY, SPLASHSCREEN implementation * src/window.h (enum): add UTILITY, SPLASHSCREEN types * src/theme-parser.c (parse_toplevel_element): parser support for has_title attribute * src/theme.c (meta_frame_layout_get_borders): handle a has_title field in the layout, for utility windows that don't display a title (would be better to be able to shrink the title text, but that's kind of tricky to implement :-/)
2002-02-08Throughout: move to meta_topic rather than meta_verbose so metacity.logHavoc Pennington1-17/+17
2002-02-07 Havoc Pennington <hp@pobox.com> Throughout: move to meta_topic rather than meta_verbose so metacity.log can start being more useful * src/util.h (enum): add more debug topics * src/frames.c: clean up some cruft that caused warnings
2002-02-07disable custom log handler and fatal mask for nowHavoc Pennington1-4/+5
2002-02-06 Havoc Pennington <hp@pobox.com> * src/main.c (main): disable custom log handler and fatal mask for now * src/theme.c (meta_draw_op_list_draw): Add META_DRAW_CLIP * src/main.c: load theme, monitor current theme setting * src/prefs.c: add "current theme" setting * src/stack.c (meta_stack_free): don't try to free last_root_children_stacked if it doesn't exist * src/themewidget.c: pluggable GtkMisc subclass to use for menu icons * src/screen.c (meta_screen_manage_all_windows): fix signed/unsigned warning * src/frames.c: port to theme system (meta_frames_style_set): chain up * theme-format.txt: new file * configure.in: add more compiler warnings * src/theme.c: add various stuff needed to get theme parser working. Remove the "spacer" concept from FrameLayout object. Add draw op that references a draw op list. * configure.in: require GTK 1.3.13 * src/Makefile.am: add theme-parser.[hc], implement loading a theme * src/theme.c: add "draw title" and "draw window icon" operations (meta_draw_op_draw): put object_width/object_height in expression environment before computing x/y. Handle out-of-memory when creating pixbufs. Assorted other cleanups.
2002-01-11only bump unmaps_pending if the window was mappedHavoc Pennington1-0/+1
2002-01-10 Havoc Pennington <hp@pobox.com> * src/frame.c (meta_window_destroy_frame): only bump unmaps_pending if the window was mapped (meta_window_ensure_frame): ditto * src/keybindings.c: change arrow key bindings to use Ctrl+Alt not just Alt, and add debug mode key bindings * src/stack.c (meta_stack_get_default_focus_window): don't choose a default focus window with unmaps pending, since we probably just unmapped it. * src/display.c (event_callback): move notify_focus on UnmapNotify after the window_free check, so we can move focus to another window when we unmanage * src/window.c (meta_window_hide): invalidate work areas when hiding a window with struts (meta_window_free): invalidate work areas when unmanaging a window with struts
2002-01-03focus top window when switching to a new workspaceHavoc Pennington1-0/+54
2002-01-03 Havoc Pennington <hp@pobox.com> * src/workspace.c (meta_workspace_activate): focus top window when switching to a new workspace * src/util.c (meta_topic): start putting verbose output in categories * src/window.c (meta_window_shade): focus frame after we queue the calc_showing so the maps/unmaps have already happened. * src/display.c (meta_display_get_current_time): add the "get time of current event" function and call it occasionally. * src/window.c (meta_window_free): if we have focus, call meta_screen_focus_top_window(). (meta_window_minimize): ditto (meta_window_delete): ditto * src/screen.c (meta_screen_ensure_tab_popup): fix memory leak - didn't free tab list (meta_screen_focus_top_window): new function to use when we unmap or unmanage a focused window * src/stack.c (meta_stack_get_default_focus_window): function used in meta_screen_focus_top_window
2001-10-25I was using meta_workspace_contains_window() in a number of places whereHavoc Pennington1-6/+6
2001-10-25 Havoc Pennington <hp@pobox.com> * src/window.c (meta_window_visible_on_workspace): I was using meta_workspace_contains_window() in a number of places where on_all_workspaces should also have been considered, thus this new function. Fixes bugs such as pinned windows not appearing in the tab order. (meta_window_client_message): use meta_window_visible_on_workspace * src/stack.c (find_tab_forward): ditto (find_tab_backward): ditto (meta_stack_get_tab_next): ditto (meta_stack_get_tab_list): ditto * src/place.c (get_windows_on_same_workspace): ditto * src/keybindings.c (handle_focus_previous): ditto (handle_focus_previous): ditto
2001-10-23fix to keep desktop window from appearing on top of everything else, amongHavoc Pennington1-0/+6
2001-10-22 Havoc Pennington <hp@pobox.com> * src/stack.c (meta_stack_sync_to_server): fix to keep desktop window from appearing on top of everything else, among other stack bugs. Untested.
2001-10-14take a window mapped at fullscreen size/pos to desire maximization; once IHavoc Pennington1-4/+0
2001-10-14 Havoc Pennington <hp@pobox.com> * src/window.c (meta_window_new): take a window mapped at fullscreen size/pos to desire maximization; once I add a fullscreen state, will change to copy kwin and take this mapping as a desire for fullscreen, but for now testing with maximization. * src/window.h: remove fullscreen window type, now proposing it as a window state instead. 2001-10-14 Havoc Pennington <hp@pobox.com> * src/window.c (meta_window_maximize): always raise windows on maximize (meta_window_client_message): when activating a window, move it to current workspace, instead of moving user to the window's workspace.
2001-10-13set last window before setting newp, so we don't get the current window asHavoc Pennington1-4/+5
2001-10-13 Havoc Pennington <hp@pobox.com> * src/stack.c (meta_stack_sync_to_server): set last window before setting newp, so we don't get the current window as the last window and screw everything up (IN_TAB_CHAIN): use type not layer to decide if a window is in the tab chain, keeps panel out of alt-tab choices
2001-10-11fix mem leak of the MetaStack object (meta_stack_sync_to_server): try toHavoc Pennington1-4/+105
2001-10-10 Havoc Pennington <hp@pobox.com> * src/stack.c (meta_stack_free): fix mem leak of the MetaStack object (meta_stack_sync_to_server): try to avoid the restack-flicker thing
2001-09-16new functionHavoc Pennington1-1/+2
2001-09-16 Havoc Pennington <hp@pobox.com> * src/window.c (meta_window_lower): new function * configure.in: bump version to 2.3.8 * src/display.c (event_callback): raise dock on enter notify, lower it on leave notify (need to refine this behavior) * src/stack.c (compute_layer): experiment with putting the panel in the normal layer, and raising it on mouseover
2001-08-29Unbreak tab popup a bit.Havoc Pennington1-17/+19
2001-08-28 Havoc Pennington <hp@pobox.com> Unbreak tab popup a bit. * src/stack.c (meta_stack_get_tab_list): add workspace argument (meta_stack_get_tab_next): add workspace argument * src/window.c: implement recording of the last user-initiated window position, so we can magically handle moving panels around really nicely. * src/wm-tester/main.c (set_up_icon_windows): fix to use new GTK API
2001-08-20add a "fullscreen" semantic type; if a window requests the screen sizeHavoc Pennington1-0/+4
2001-08-19 Havoc Pennington <hp@pobox.com> * src/window.c: add a "fullscreen" semantic type; if a window requests the screen size exactly, and is undecorated, and is not a desktop window, we consider it a fullscreen window and keep it on top. Totally untested.
2001-08-19remove XSync, error traps already do thatHavoc Pennington1-0/+35
2001-08-19 Havoc Pennington <hp@pobox.com> * src/display.c (meta_display_grab_window_buttons): remove XSync, error traps already do that (meta_display_grab_window_buttons): implement * src/keybindings.c: src/display.c: wire up the tab window, it rulez!
2001-07-07...rhp1-1/+1
2001-06-24...rhp1-0/+37
2001-06-24...rhp1-26/+108
2001-06-24...rhp1-0/+60
2001-06-24...rhp1-0/+99
2001-06-23...rhp1-9/+16
2001-06-11...rhp1-1/+6
2001-06-10...rhp1-58/+121
2001-06-10...rhp1-5/+122
2001-06-10...rhp1-0/+471