summaryrefslogtreecommitdiff
path: root/src/prefs.h
Commit message (Collapse)AuthorAgeFilesLines
* Patch from Ed Catmur to fix keybindings with hex-values (coming fromElijah Newren2006-08-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | 2006-08-21 Elijah Newren <newren gmail com> Patch from Ed Catmur to fix keybindings with hex-values (coming from special extended keyboard keys). #140448. * src/keybindings.c (struct _MetaKeyBinding): change keycode from KeyCode to unsigned int (comment from Elijah: why???), (reload_keycodes): only grab keysyms for keybindings that have them, (count_bindings, rebuild_binding_table): bindings can be valid either due to a valid keysym or a valid keycode, (display_get_keybinding_action, meta_change_keygrab, process_tab_grab, process_workspace_switch_grab): handle keycode as well as keysym * src/prefs.[ch] (struct MetaKeyCombo, update_binding, update_list_binding): handle keycode as well as keysym * src/ui.[ch] (meta_ui_accelerator_parse): new function special cases strings of the form "0x[0-9a-fA-F]+" and otherwise calling gtk_accelerator_parse(), (meta_ui_parse_accelerator, meta_ui_parse_modifier): call meta_ui_accelerator_parse instead of gtk_accelerator_parse.
* Allow any keybinding pref to be specified either with <foo>, a string, orThomas Thurman2006-04-171-2/+14
| | | | | | | | | | | | 2004-04-17 Thomas Thurman <thomas@thurman.org.uk> * keybindings.c (count_bindings, rebuild_binding_table): * prefs.c (change_notify, screen_bindings, window_bindings, init_bindings, update_binding, find_and_update_list_binding, update_list_binding, meta_prefs_get_window_binding): Allow any keybinding pref to be specified either with <foo>, a string, or <foo>_list, a list of strings, or both. Fixes #164831.
* Add a tabbing function, bound to alt-f6 by default, to cycle through theThomas Thurman2006-04-151-0/+8
| | | | | | | | | | | | | | | | | | | 2006-04-14 Thomas Thurman <thomas@thurman.org.uk> Add a tabbing function, bound to alt-f6 by default, to cycle through the windows of the current application. Fixes #164831. * src/common.h: two new MetaGrabOpts values for group switching * src/display.c (ping_data_free, meta_display_in_grab_op, IN_TAB_CHAIN): adapt to new MetaGrabOpts * src/display.h: new enum value for MetaTabList for group switching * src/keybindings.c (meta_display_process_key_event): adapt to new MetaGrabOpts (process_tab_grab): adapt to new MetaGrabOpts, and use switch statement for cancelling instead of if statement * src/metacity.schemas.in: new keybindings * src/prefs.c, src/prefs.h: handle new keybindings * src/window.h: define META_WINDOW_IN_GROUP_TAB_CHAIN macro
* Patch from Ron Yorston to add a focus_new_windows option. Default isElijah Newren2006-04-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-04-12 Elijah Newren <newren gmail com> Patch from Ron Yorston to add a focus_new_windows option. Default is 'smart' (focus by default but normal focus-stealing-prevention can kick in); 'strict' is current other choice (like 'smart' except that programs launched by the terminal will not be focused). Fixes remainder of #326159. Should also close #152004 and a bunch of others. * src/common.h: Add a MetaFocusNewWindows enum giving the current types allowed * src/display.h: Update docs on allow_terminal_deactivation to note that it is only relevant when focus_new_windows is 'strict' * src/prefs.c: * src/prefs.h: * src/metacity.schemas.in: add the new gconf key and explanation * src/prefs.[ch] (#define KEY_FOCUS_NEW_WINDOWS, static gboolean focus_new_windows, update_focus_new_windows, meta_prefs_init, change_notify, meta_prefs_get_focus_new_windows, meta_preference_to_string): Add all the normal preference handling stuff for this new focus-new-windows option. * src/window.c (window_state_on_map, meta_window_set_user_time): Don't focus windows launched from a terminal
* New function.Søren Sandmann2006-02-161-1/+3
| | | | | | | | | | | | | | | | | | Thu Feb 16 15:24:42 2006 Søren Sandmann <sandmann@redhat.com> * src/screen.c (meta_screen_composite_all_windows): New function. * src/prefs.[ch], src/metacity.schemas.in: Add new compositing_manager key. * src/display.c (prefs_changed_callback): Handle META_PREF_COMPOSITOR_MANAGER * src/display.c (event_callback): Only call meta_compositor_process_event() if there is in fact a compositor. * src/display.c (enable/disable_compositor): Add code to enable/disable compositor at runtime
* Whoops, I forgot to keep my copyright info updated with my previousElijah Newren2006-01-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | 2006-01-10 Elijah Newren <newren@gmail.com> * src/bell.c: * src/boxes.c: * src/boxes.h: * src/constraints.c: * src/core.c: * src/display.c: * src/display.h: * src/edge-resistance.c: * src/frames.c: * src/keybindings.c: * src/main.c: * src/prefs.c: * src/prefs.h: * src/screen.c: * src/screen.h: * src/window.c: * src/window.h: Whoops, I forgot to keep my copyright info updated with my previous commits as Havoc had asked me to do. Doing that now...
* Add a raise on click option, basically only because all the major distrosElijah Newren2006-01-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-01-10 Elijah Newren <newren@gmail.com> Add a raise on click option, basically only because all the major distros are patching it in anyway. See #326156. * src/metacity.schemas.in: add the new gconf key and explanation * src/prefs.[ch] (#define KEY_RAISE_ON_CLICK, static gboolean raise_on_click, update_raise_on_click, meta_prefs_init, change_notify, meta_prefs_get_raise_on_click, meta_preference_to_string): Add all the normal preference handling stuff for this new raise-on-click option. * src/core.c (meta_core_show_window_menu): * src/display.c (event_callback, meta_display_begin_grab_op): * src/window.c (window_activate, meta_window_configure_request, ): Only raise the window if in raise_on_click mode. * src/display.c (meta_display_begin_grab_op, meta_display_end_grab_op, meta_display_check_threshold_reached): * src/display.h (struct MetaDisplay): * src/window.c (meta_window_handle_mouse_grab_op_event): if not in raise-on-click mode only raise on button release if the click didn't start a move or resize operation; needs a few extra MetaDisplay fields to handle this * src/core.c (meta_core_user_lower_and_unfocus): no need to do the MRU shuffling if not maintaining the stacking order == MRU order invariant * src/frames.c (meta_frames_button_press_event): * src/window.c (meta_window_begin_grab_op): remove an unneeded window raising that is already handled elsewhere
* React to cursor theme changes: (#308106)Matthias Clasen2005-07-111-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | 2005-07-11 Matthias Clasen <mclasen@redhat.com> React to cursor theme changes: (#308106) * src/prefs.h: * src/prefs.c: Expose the GConf keys for cursor theme and size as preferences META_PREF_CURSOR_THEME and META_PREF_CURSOR_SIZE with getters meta_prefs_get_cursor_theme() and meta_prefs_get_cursor_size(). * src/display.c (meta_display_open): Initialize the cursor theme and size. * src/display.h: * src/display.c (meta_display_set_cursor_theme): New function to change the cursor theme and update all cursors. * src/screen.h * src/screen.c (meta_screen_update_cursor): New function to refesh the root cursor of a screen. * src/main.c (prefs_changed_callback): Update the cursor theme when the cursor preferences change.
* Don't wireframe when accessibility is on, it apparently causes a desktopArvind Samptur2005-01-261-1/+3
| | | | | | | | | | | | | | | | 2005-01-26 Arvind Samptur <arvind.samptur@wipro.com> Don't wireframe when accessibility is on, it apparently causes a desktop wide freeze. * src/prefs.[ch] (meta_prefs_init) (change_notify) (update_gnome_accessibility) (meta_preference_to_string) (meta_prefs_get_gnome_accessibility) : Add code to monitor accessibility status. * src/display.c (meta_display_begin_grab_op): Check accessibility status before going ahead with wireframe. Fixes #159538
* Add a keybinding to launch a terminalVincent Untz2004-10-131-0/+5
| | | | | | | | | | | | | | | | | | | | 2004-10-13 Vincent Untz <vincent@vuntz.net> Add a keybinding to launch a terminal * src/keybindings.c: (handle_run_terminal): new function, (error_on_generic_command): new function, (error_on_command): wrapper around error_on_generic_command(), (error_on_terminal_command): new function * src/metacity.schemas.in: add run_command_terminal key * src/prefs.[ch]: (meta_prefs_init): cache the terminal command and register a gconf callback to update it, (change_notify): handle the notification of terminal command changes, (meta_preference_to_string): add the terminal command case, (update_terminal_command): new function, (meta_prefs_get_terminal_command): new function, (meta_prefs_get_gconf_key_for_terminal_command): new function
* remove trailing comma in MetaKeyBindingAction enum. Fix for #134868 thanksRob Adams2004-02-191-1/+1
| | | | | | | 2004-02-19 Rob Adams <readams@readams.net> * src/prefs.h: remove trailing comma in MetaKeyBindingAction enum. Fix for #134868 thanks to bugzilla-gnome@thewrittenword.com.
* Merge reduced_resources mode patch from the branch. Offers wireframe andHavoc Pennington2003-10-121-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-10-12 Havoc Pennington <hp@redhat.com> Merge reduced_resources mode patch from the branch. Offers wireframe and no-animations. * src/window.c (implement_showing): no animation if we are in reduced resources mode * src/prefs.c: add REDUCED_RESOURCES pref * src/window.c (meta_window_update_keyboard_resize): fix to modify grab_anchor_window_pos to grab_wireframe_rect if appropriate instead of window->rect * src/display.h (struct _MetaDisplay): add grab_start_serial used to avoid responding to events that occurred prior to the grab initialization. Still broken in various ways, specifically EnterNotify that occurred prior to XGrabPointer is processed as if it occurred after. * src/window.c (meta_window_update_keyboard_move): add this instead of meta_window_warp_pointer() crack * src/effects.c (meta_effects_update_wireframe): draw a kind of grid for the wireframe, instead of just a rectangle, like twm * src/screen.c (meta_screen_new): line width of 3 for the XOR gc "Reduced resources" mode based on wireframe patch from Erwann Chenede. Still pretty buggy. * src/keybindings.c (process_keyboard_move_grab) (process_keyboard_resize_grab): add gruesome wireframe hacks * src/display.c (meta_display_end_grab_op): end wireframe (meta_display_begin_grab_op): begin wireframe * src/effects.c (meta_effects_end_wireframe) (meta_effects_update_wireframe, meta_effects_begin_wireframe): routines to draw the wireframe stuff * src/window.c (window_should_be_showing): hide window when doing wireframe, commented out as it breaks grab * src/window.c (meta_window_refresh_resize_popup): handle wireframe * src/screen.c (meta_screen_new): create a screen->root_xor_gc for use in drawing wireframes * src/frames.c (meta_frames_push_delay_exposes): repaint everything before we delay
* Add keybinding to allow the user to toggle _NET_WM_STATE_ABOVE on windows.Rob Adams2003-06-271-0/+1
| | | | | | | | | | | | | | | | | | | 2003-06-26 Rob Adams <robadams@ucla.edu> Add keybinding to allow the user to toggle _NET_WM_STATE_ABOVE on windows. Disabled by default. See #98387. * src/keybindings.c (handle_toggle_above): new function implements the keybinding * src/metacity.schemas.in: add toggle_above keybinding * src/prefs.[ch]: add toggle_above keybinding * src/window.[ch] (meta_window_make_above): new function to put a window into the above state (meta_window_unmake_above): new function takes a window out of the above state
* Take control of the panel's global keybindings. The screenshot utility isMark McLoughlin2003-02-241-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | 2003-02-24 Mark McLoughlin <mark@skynet.ie> Take control of the panel's global keybindings. The screenshot utility is hooked up using a special case run_command and the menu and run dialog bindings are done using the _GNOME_PANEL_ACTION ClientMessage protocol. * src/display.[ch]: (meta_display_open): add some atoms. * src/keybindings.c: (handle_panel_keybinding): impl to handle a keybinding by sending an action message to the panel. * src/metacity.schemas.in: add schemas for the panel and screenshot keybindings and the screenshot commands. * src/prefs.[ch]: (update_command), (meta_prefs_get_gconf_key_for_command): impl special case handling for the screenshot commands. They are stored at the the end of the commands array but have named keys.
* when tabbing backward, we are still tabbing *from* the most recently usedHavoc Pennington2003-02-221-0/+2
| | | | | | | | | | | | | | | | | | | | 2003-02-22 Havoc Pennington <hp@pobox.com> * src/display.c (meta_display_get_tab_next): when tabbing backward, we are still tabbing *from* the most recently used window, not from the least recently used window. * src/keybindings.c (struct _MetaKeyBinding): make keycode unsigned to match XEvent Patch for #84999 based on patch from Mark McLoughlin * src/prefs.c: add an add_shift field to MetaKeyPref to add shift when grabbing the given keybinding. * src/keybindings.c (rebuild_screen_binding_table) (rebuild_window_binding_table): refactor to share code, and honor add_shift field in MetaKeyPref
* Reinstated visual-bell patch, fix for bug 99886.Bill Haneman2003-01-281-1/+16
|
* Increase the number of run_command bindings in screen_bindings from 12 toMETACITY_2_4_13_90Rob Adams2003-01-151-0/+20
| | | | | | | | | | | | | 2003-01-14 Rob Adams <robadams@ucla.edu> * src/prefs.c: Increase the number of run_command bindings in screen_bindings from 12 to 32. * src/prefs.h: Increase the number of META_KEYBINDING_COMMAND_N macros from 12 to 32. * src/keybindings.c: Increase the number of run_command handlers from 12 to 32.
* Reverted visual bell patch, #99886Havoc Pennington2002-12-191-16/+1
| | | | | | 2002-12-19 Havoc Pennington <hp@pobox.com> * Reverted visual bell patch, #99886
* Added visual bell feature, fix for 99886.Bill Haneman2002-12-171-1/+16
|
* new functions to resize to fill screenHavoc Pennington2002-12-081-0/+2
| | | | | | | | | | | | | | | | 2002-12-08 Havoc Pennington <hp@pobox.com> * src/window.c (meta_window_fill_vertical) (meta_window_fill_horizontal): new functions to resize to fill screen * src/keybindings.c: add vert, horiz maximize * src/prefs.c: had vert, horiz maximize * src/metacity.schemas.in: shorten some overlong short descriptions that make the keybindings capplet look ugly. Add maximize_vertically, maximize_horizontally keys.
* new function, and remove workspace->name field, instead just get the nameHavoc Pennington2002-11-031-1/+6
| | | | | | | | | | | | | | | | | | | 2002-11-03 Havoc Pennington <hp@pobox.com> * src/workspace.c (meta_workspace_get_name): new function, and remove workspace->name field, instead just get the name from prefs each time * src/screen.c (meta_screen_update_workspace_names): update the gconf key to persist workspace names here, instead of changing the names we use * src/util.c (topic_name): add META_DEBUG_PREFS * src/prefs.c: change NUM_COMMANDS to 32 to allow more custom commands, implement workspace names * src/metacity.schemas.in: add workspace_names/name_NN gconf keys.
* don't start the cycle process if the binding for switching windows has noHavoc Pennington2002-10-181-63/+71
| | | | | | | | | | | | | | 2002-10-18 Havoc Pennington <hp@redhat.com> * src/keybindings.c (do_choose_window): don't start the cycle process if the binding for switching windows has no modifier bits, just focus the window immediately. * src/prefs.c, src/keybindings.c: add a keybinding to move between windows that goes in the opposite direction. This is mostly useful if you want to bind unmodified keys to the switch windows functions, e.g. if you have "Forward" and "Back" keys on your keyboard. Patch from Shilad Sen <shilad sourcelight com>
* add "what happens when you double click the titlebar" setting, patch fromHavoc Pennington2002-10-181-0/+2
| | | | | | | | 2002-10-18 Havoc Pennington <hp@redhat.com> * src/prefs.c, src/frames.c: add "what happens when you double click the titlebar" setting, patch from Sean Middleditch bug #95625. This is basically an "add Windows emulation mode" patch.
* Add a modifier key preference for the Alt+click stuff. Can be set toHavoc Pennington2002-10-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | 2002-10-07 Havoc Pennington <hp@redhat.com> Add a modifier key preference for the Alt+click stuff. Can be set to "disabled" as well. * src/run-metacity.sh: load .Xmodmap in the Xnest if it exists * src/display.c (meta_display_ungrab_window_buttons): ungrab AnyModifier in case the modifier changed since we grabbed (meta_display_open): rearrange code to use meta_display_close() to mop up when we can't find any screens, avoiding the need to keep the bail-out code in sync with meta_display_close. * src/keybindings.c (devirtualize_modifiers): move this function to a public place in display.c * src/metacity.schemas.in: add setting for the modifier key to use for Alt+left/middle/right click. * src/prefs.c (update_binding): add a missing newline to a warning (meta_prefs_get_mouse_button_mods): new function * src/ui.c (meta_ui_parse_modifier): new function
* Button-reordering patch. Has all the code except actually installing aHavoc Pennington2002-10-041-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-10-03 Havoc Pennington <hp@pobox.com> Button-reordering patch. Has all the code except actually installing a gconf schema and reading the gconf key in prefs.c. metacity-theme-viewer displays the button layouts for testing themes. * src/preview-widget.c (meta_preview_size_request): make up a width/height if no child widget * src/prefs.c (meta_prefs_get_button_layout): new function * src/frames.c: get the button layout from prefs and use it when drawing * src/theme.c (meta_frame_layout_calc_geometry): enhance to be able to lay out buttons in different arrangements (button_rect): draw the new button background rectangles (meta_theme_draw_frame): require a button layout argument (meta_theme_calc_geometry): pass in the button layout * src/preview-widget.h: mod to handle button layouts * src/theme-viewer.c: mod to handle button layouts
* use MetaAccelLabel to display accelerators for the menu itemsHavoc Pennington2002-09-271-0/+4
| | | | | | | | | | | | | | | | 2002-09-26 Havoc Pennington <hp@pobox.com> * src/menu.c (meta_window_menu_new): use MetaAccelLabel to display accelerators for the menu items * src/metaaccellabel.c: cut-and-paste GtkAccelLabel and port to use virtual modifiers * src/Makefile.am (metacity_SOURCES): add metaaccellabel.[hc] * src/prefs.c (meta_prefs_get_window_binding): new function * src/core.c (meta_core_get_menu_accelerator): new function
* add maximize and unmaximize keybinding setting. Partly fixes bug# 78999.Deepa Natarajan2002-08-211-0/+2
| | | | | | | | 2002-08-21 Deepa Natarajan <deepa.natarajan@wipro.com> * src/keybindings.c, src/metacity.schemas.in, src/prefs.[ch]: add maximize and unmaximize keybinding setting. Partly fixes bug# 78999.
* leave has_fullscreen_func set to TRUE if the window is screen sized andMETACITY_REDHAT_2_4_0_91Havoc Pennington2002-08-151-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 2002-08-15 Havoc Pennington <hp@pobox.com> * src/window.c (recalc_window_features): leave has_fullscreen_func set to TRUE if the window is screen sized and undecorated, even if the window isn't resizable. idea from Christian - Manny Calavera - Neumair * src/keybindings.c (handle_toggle_fullscreen) (handle_toggle_maximize): these disabled fullscreen/maximize if the window wasn't resizable, should have used has_fullscreen_func has_maximize_func instead. 2002-08-15 Havoc Pennington <hp@pobox.com> * src/keybindings.c: implement raise/lower * src/metacity.schemas.in: add raise/lower * src/prefs.c: add "raise" and "lower" prefs to keybindings * src/display.c (meta_display_set_grab_op_cursor): assert that the screen arg is non-NULL in appropriate cases
* adapt to virtual modifiers (meta_display_process_mapping_event): we needHavoc Pennington2002-07-141-3/+2
| | | | | | | | | | | | | | | | | | | 2002-07-13 Havoc Pennington <hp@pobox.com> * src/keybindings.c: adapt to virtual modifiers (meta_display_process_mapping_event): we need to reload the binding tables now when the modmap changes. * src/prefs.c (update_binding): parse virtual modifiers, not plain modmask * src/common.h (MetaVirtualModifer): new enum * src/ui.c (meta_ui_parse_accelerator): use egg_accelerator_parse_virtual() * src/Makefile.am: add eggaccelerators.[hc] for the virtual accelerator parsing function
* option to display error when a command fails to run.Havoc Pennington2002-07-111-2/+31
| | | | | | | | | | | | | | | 2002-07-11 Havoc Pennington <hp@pobox.com> * src/metacity-dialog.c (main): option to display error when a command fails to run. * src/keybindings.c (handle_run_command): run commands in response to keybindings. * src/prefs.c: add command keybinding stuff * src/metacity.schemas.in: add keybindings for running commands, and keys to store the commands themselves.
* put _NET_DESKTOP_NAMES in the array of atom names, so desktop names mightHavoc Pennington2002-07-061-2/+4
| | | | | | | | | | | | | | | | | | | | | 2002-07-06 Havoc Pennington <hp@pobox.com> * src/display.c (meta_display_open): put _NET_DESKTOP_NAMES in the array of atom names, so desktop names might work and we don't read uninitialized memory. * src/main.c (main): add VERSION/timestamp verbose message. * src/keybindings.c: implement cycle_windows cycle_panels * src/metacity.schemas.in: add the cycle_windows cycle_panels keybindings * src/prefs.h (META_KEYBINDING_FOCUS_PREVIOUS): replace FOCUS_PREVIOUS key binding with CYCLE_WINDOWS and CYCLE_PANELS (not good names really, but I don't have ideas). * src/common.h: add a grab op for alt+esc window cycling
* Cleanups to workspace popup patch. Space before all parens in a coupleHavoc Pennington2002-06-091-1/+3
| | | | | | | | | | | | | | | | | | | | | | 2002-06-08 Havoc Pennington <hp@pobox.com> Cleanups to workspace popup patch. Space before all parens in a couple places. * src/prefs.c (meta_prefs_get_keybinding_action): fix brace indentation, and use while instead of for loop. Take a "mask" argument to avoid ambiguity issues. * src/keybindings.c (handle_workspace_switch): rename from handle_workspace_forward since there's no directionality here (handle_workspace_switch): add a FIXME about how screwed it is that we need a window in order to do our grab. Should be able to grab on a dummy window like no_focus_window or the root window. (process_workspace_switch_grab): rename from tab_grab for clarity, no tab involved here. * src/common.h (enum): have only one grab op for all workspace switching directions, instead of one for each.
* Apply big patch from blackc@speakeasy.net adding a popup window to theHavoc Pennington2002-06-091-0/+26
| | | | | | | | | | | | | | | | 2002-06-08 Havoc Pennington <hp@pobox.com> Apply big patch from blackc@speakeasy.net adding a popup window to the Ctrl+Alt+arrows shortcuts. #83940 2002-06-08 Havoc Pennington <hp@pobox.com> * src/screen.c (meta_screen_new): select key press/release on the display->no_focus_window, another attempted fix for not getting keybindings when no window is focused. Still doesn't seem to work though. I don't get what's going wrong. (meta_create_offscreen_window): new function, used instead of XCreateSimpleWindow so we get override redirect offscreen windows.
* Patch from Erwann Chenede for raise_or_lower keybindingHavoc Pennington2002-05-291-0/+1
| | | | | | | | | | | | | | | | | | 2002-05-28 Havoc Pennington <hp@pobox.com> Patch from Erwann Chenede for raise_or_lower keybinding * src/display.c, src/common.h: POINT_IN_RECT moved to a common location, removed from here (meta_rectangle_intersect): move here and make it public * src/prefs.c: add raise_or_lower keybinding * src/stack.c (meta_stack_get_below, meta_stack_get_above): add an arg to only get windows within the same layer * src/keybindings.c (handle_raise_or_lower): add handling for a "raise window if obscured, else lower" keybinding
* add minimize window bindingHavoc Pennington2002-05-251-0/+1
| | | | | | | | 2002-05-24 Havoc Pennington <hp@pobox.com> * src/metacity.schemas: add minimize window binding * src/keybindings.c (handle_minimize_window): add minimize keybinding
* fix for bugzilla bug #72314, filter out LeaveNotify caused by grabs whenJayaraj Rajappan2002-05-241-3/+0
| | | | | | | 2002-05-23 Jayaraj Rajappan <jayaraj.rajappan@wipro.com> * src/display.c (event_callback): fix for bugzilla bug #72314, filter out LeaveNotify caused by grabs when in mouse focus mode.
* Crack from ErwannHavoc Pennington2002-05-241-0/+4
| | | | | | | | | | | | | 2002-05-23 Havoc Pennington <hp@pobox.com> Crack from Erwann * src/metacity.schemas: add autoraise crackrock * src/display.c (event_callback): autoraise window if autoraise is enabled * src/prefs.c: autoraise crack
* don't try to decorate toolbars.Havoc Pennington2002-05-011-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-04-30 Havoc Pennington <hp@pobox.com> * src/window.c (recalc_window_features): don't try to decorate toolbars. * src/tools/metacity-window-demo.c: add menu and toolbar tests * src/place.c (meta_window_place): only dialogs should be centered over parent, not anything with transient for set. * src/window.c (meta_window_configure_request): become more fascist about window positioning if workarounds are disabled, and less fascist if they are enabled. * src/metacity.schemas: add a "disable_workarounds" option. Kind of crack-smoking. But we just can't get all applications fixed. And I need no-workarounds mode to monitor which apps are broken and what needs fixing in specs. * src/window.c (meta_window_configure_request): always allow windows to resize themselves * src/keybindings.c (reload_modmap): don't filter out Mode_switch, apparently some people bind window manager shortcuts to that.
* remove caveats about keybindingsHavoc Pennington2002-04-281-1/+63
| | | | | | | | | | | | | | | | | | | | | | | 2002-04-28 Havoc Pennington <hp@pobox.com> * README: remove caveats about keybindings * src/metacity.schemas: add schemas for all the keybindings. * src/window.c (meta_window_activate): if in "show desktop" mode when a window is activated, leave show desktop mode. So e.g. when you click on a task in the task list, show desktop mode will be turned off. * src/workspace.c (meta_workspace_get_neighbor): new function that doesn't quite work yet (needs support for getting workspace layout from the pager) * src/prefs.c: keybindings stuff * src/keybindings.c: make keybindings configurable * src/ui.c (meta_ui_parse_accelerator): new function
* support _NET_NUMBER_OF_DESKTOPS message so you can change number ofHavoc Pennington2002-03-101-0/+2
| | | | | | | | | | | | 2002-03-10 Havoc Pennington <hp@pobox.com> * src/display.c (event_callback): support _NET_NUMBER_OF_DESKTOPS message so you can change number of desktops with the pager * src/prefs.c (meta_prefs_set_num_workspaces): new function * src/display.c (meta_spew_event): print stacking aspects of configure request
* disable custom log handler and fatal mask for nowHavoc Pennington2002-02-071-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* make the check for whether to eat focus click a lot more complicatedHavoc Pennington2002-01-271-1/+3
| | | | | | | | | | | | | | | | 2002-01-27 Havoc Pennington <hp@pobox.com> * src/display.c (event_callback): make the check for whether to eat focus click a lot more complicated * src/window.c (meta_window_same_application): new function * src/prefs.h, src/prefs.c: add application based pref * src/metacity.schemas: add "application_based" setting to give me a mode to fool with being application based, without being unusable in the meantime. Yeah the crack flows freely these days. Everyone knew it would happen.
* update number of workspaces hintHavoc Pennington2001-12-101-1/+3
| | | | | | | | | | | | | | | | | | | 2001-12-09 Havoc Pennington <hp@pobox.com> * src/workspace.c (meta_workspace_free): update number of workspaces hint * src/screen.c (update_num_workspaces): implement number of workspaces setting * src/window.c (meta_window_configure_request): honor configure requests on windows of type NORMAL, but still be mean to those of type DIALOG * src/main.c (main): add more log domains to those we set a log handler for, and only set warnings fatal in debug mode * src/metacity.schemas: add number of workspaces setting
* move SM init a bit later in the process, and init prefsHavoc Pennington2001-12-091-0/+58
2001-12-09 Havoc Pennington <hp@pobox.com> * src/main.c (main): move SM init a bit later in the process, and init prefs * src/session.c: fix no SM case (though I hardly know why I'm bothering) * src/main.c (main): call bindtextdomain * src/util.h (_): actually call gettext * configure.in: put in AM_GLIB_GNU_GETTEXT and gconf stuff * src/prefs.c: Preferences - this marks the beginning of our doom. None of them are actually implemented yet, but we monitor some stuff from gconf.