CVSROOT: /cvs/gnome
Module name: metacity
Changes by: newren 05/11/12 18:47:31
Modified files:
. : Tag: constraints_experiments ChangeLog
constraints-ideas.txt
src : Tag: constraints_experiments display.c
display.h keybindings.c window.c window.h
Log message:
2005-11-12 Elijah Newren <[EMAIL PROTECTED]>
Get keyboard buildup edge resistance working, and convert old (and
buggy) edge resistance for keyboard move/resize to new framework.
Despite this being a large increase in functionality, I almost
removed as many lines as I added from the cleanups that were
made possible (388 lines added, 328 removed).
* src/constraints-ideas.txt: Mark edge resistance as done (there
may be a few bugs left, and I'm sure I'll need to tweak some of
the parameters but there's nothing big left)
* src/display.[hc]:
(struct MetaDisplay):
rename grab_last_used_state_for_resize field to
grab_last_user_action_was_snap
(meta_display_apply_edge_resistance):
take a keyboard_op parameter and pass it on to
apply_edge_resistance() and apply_edge_snapping()
* src/display.c:
(struct EdgeResistanceTimeoutData):
add a keyboard_buildup field
(meta_display_begin_grab_op):
handle rename of grab_last_used_state_for_resize to
grab_last_user_action_was_snap
(points_on_same_side):
new function
(find_nearest_position):
take an only_forward parameter and if true, only look for the
nearest position in the direction away from old_postion towards
(or past) position.
(apply_edge_resistance):
take a keyboard_op parameter, don't do timeout for keyboard op,
add special case for keyboard op that does keyboard energy buildup
resistance, explain the pixel distance mouse resistance better
(apply_edge_snapping):
take a keyboard_op parameter, add some comments, make sure that
the snapping is in the right direction for keyboard ops
(compute_resistance_and_snapping_edges):
initialize the keyboard_buildup field of the edge resistance data
* src/keybindings.c:
(process_keyboard_move_grab, process_keyboard_resize_grab):
SIMPLIFY MASSIVELY by using the new edge resistance and snapping
functionality.
* src/window.[ch]:
(meta_window_edge_resistance_for_move,
meta_window_edge_resistance_for_resize):
new functions needed for handling common operations for both mouse
and keyboard moves and resizes; most of the work is handled by
meta_display_apply_edge_resistance() but these functions prepare
the necessary input parameters and correctly interpret the output
as needed.
* src/window.c:
(update_move, update_resize,
meta_window_handle_mouse_grab_op_event):
have update_move() and update_resize() take a snap boolean
parameter instead of a mask unsigned int parameter since we don't
really know the keystate in some places where these functions need
to be called and don't really need that much info anyway
(update_move, update_resize):
move common functionality needed by keyboard move/resize into
meta_window_edge_resistance_for_move() and
meta_window_edge_resistance_for_resize()
(update_move_timeout, update_resize_timeout,
meta_window_handle_mouse_grab_op_event):
handle rename of grab_last_used_state_for_resize to
grab_last_user_action_was_snap
URL :
http://cvs.gnome.org/bonsai/cvsquery.cgi?branch=&dir=metacity&who=newren&date=explicit&mindate=2005-11-12%2018:46&maxdate=2005-11-12%2018:48
_______________________________________________
cvs-commits-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/cvs-commits-list