CVSROOT: /cvs/gnome Module name: metacity Changes by: newren 05/11/01 01:54:41
Modified files: . : Tag: constraints_experiments ChangeLog src : Tag: constraints_experiments boxes.c boxes.h common.h testboxes.c workspace.c Log message: 2005-10-31 Elijah Newren <[EMAIL PROTECTED]> Add routines to find all the "screen edges" (where struts are considered to be offscreen), plus a thorough testing case. * src/boxes.[ch] (meta_rectangle_free_list_and_elements): * src/testboxes.c (test_regions_okay, test_region_fitting, test_clamping_to_region, test_clipping_to_region, test_shoving_into_region): * src/workspace.c (meta_workspace_free, meta_workspace_invalidate_work_area): meta_rectangle_free_spanning_set() was renamed to meta_rectangle_free_list_and_elements() * src/boxes.c: (meta_rectangle_region_to_string): Output SOMETHING if the list is empty (meta_rectangle_edge_to_string, meta_rectangle_edge_list_to_string): new printing functions for edges (meta_rectangle_get_minimal_spanning_set_for_region): clean up the overview comment a little (struts_are_disjoint): (sort_edges): (edges_overlap): (rectangle_and_edge_intersection): (add_edges): (split_edge): (fix_up_edges): (meta_rectangle_find_onscreen_edges): New functions to do various parts of finding all the screen edges * src/boxes.h: (BOX_LEFT, BOX_RIGHT, BOX_TOP, BOX_BOTTOM): convenience macros that I should have defined a long time ago (enum MetaEdgeType): (struct MetaEdge): new types for edges (meta_rectangle_edge_to_string): (meta_rectangle_edge_list_to_string): (meta_rectangle_find_onscreen_edges): new functions * src/common.h: (enum MetaDirection): direction stuff seems to be used everywhere so add a type here; only used in boxes for now, but add a note explaining several other places where it could be used to remove duplicative enums * src/testboxes.c: (new_onscreen_edge): (verify_edge_lists_are_equal): (test_find_onscreen_edges): new functions for testing the new "screen edge" finding abilities (main): add test_find_onscreen_edges() to the list (get_strut_list): new function factored out from get_screen_region() (get_screen_region): call get_strut_list() since it now has most of the code this function used to have. (get_screen_edges): new function to compute the screen edges using the struts in get_strut_list() and the meta_rectangle_find_onscreen_edges() function. URL : http://cvs.gnome.org/bonsai/cvsquery.cgi?branch=&dir=metacity&who=newren&date=explicit&mindate=2005-11-01%2001:53&maxdate=2005-11-01%2001:55 _______________________________________________ cvs-commits-list mailing list cvs-commits-list@gnome.org http://mail.gnome.org/mailman/listinfo/cvs-commits-list