Mikael Magnusson [Wed, 13 Jun 2012 03:41:17 +0000 (05:41 +0200)]
edges: do something clever with xinerama
This is useful now that X actually constrains the cursor to visible
areas of the screen, so you have a chance of hitting edges and possibly
corners too. More cleverness is possible, should not map edges where
there is a screen on both sides probably.
Mikael Magnusson [Tue, 10 Jan 2012 01:20:05 +0000 (02:20 +0100)]
dunno why this was lying around as an uncommitted change..
Mikael Magnusson [Wed, 5 Sep 2007 01:54:24 +0000 (03:54 +0200)]
WIP version 3 of edges thinger
This is lets you bind actions to clicking on screen edges/corners.
Eventually it should also let you bind hovering or entering/leaving and
whatnot.
Mikael Magnusson [Wed, 31 Mar 2010 23:44:29 +0000 (01:44 +0200)]
Stop moving stuff onscreen when the screen size changes
Mikael Magnusson [Sun, 5 Jul 2009 15:07:18 +0000 (17:07 +0200)]
Listen to key press events on the support window
This allows us to make binds that are only active when no clients are
focused with the grab=no option. However, this will mean that these
binds will also be launched if the keyboard is otherwise grabbed, for
example during alt-tab or when showing a menu.
Mikael Magnusson [Tue, 20 May 2008 16:22:24 +0000 (18:22 +0200)]
Do focus menus with the mouse.
Mikael Magnusson [Fri, 8 Jan 2010 17:06:56 +0000 (18:06 +0100)]
Crazy focus model.
Mikael Magnusson [Sat, 8 Mar 2008 16:19:38 +0000 (17:19 +0100)]
I can drag on buttons.
Mikael Magnusson [Wed, 27 Feb 2008 15:53:43 +0000 (16:53 +0100)]
Save screen_last_desktop to the root prop _OB_LAST_DESKTOP.
Mikael Magnusson [Thu, 26 Jul 2007 06:19:14 +0000 (08:19 +0200)]
Resist on skip_taskbar windows too
Mikael Magnusson [Mon, 23 Jul 2007 23:53:59 +0000 (01:53 +0200)]
Make the menu pop up centered below the mouse pointer.
also move the menu one pixel down so you can click and the menu doesn't stick.
Mikael Magnusson [Wed, 22 Aug 2007 21:58:57 +0000 (23:58 +0200)]
Add a _OB_FOCUS client message for obpanel to use.
Mikael Magnusson [Mon, 23 Jul 2007 23:50:04 +0000 (01:50 +0200)]
Disable the evil calling of a kde program on startup
Mikael Magnusson [Mon, 23 Jul 2007 23:48:34 +0000 (01:48 +0200)]
Various style related changes.
This includes:
Not forcing an even label_height
Changing the cursor to BUSY (from BUSYPOINTER)
Making the label area in the dirfocus popup different
No menu item padding
Nice blue colors for the focus cycle indicator
Not making shadows increase text boundaries
Mikael Magnusson [Mon, 23 Jul 2007 23:41:32 +0000 (01:41 +0200)]
Add a window icon that is more transparent to stand out less.
Mikael Magnusson [Mon, 23 Jul 2007 23:40:15 +0000 (01:40 +0200)]
Put the client-list-menu in the client menu, just for fun. Possibly useful when there are a lot of maximized windows or the desktop is otherwise unreachable and you want to access an app without using the keyboard.
Mikael Magnusson [Mon, 23 Jul 2007 23:38:43 +0000 (01:38 +0200)]
Change the client list menus back to separating iconified windows with a line instead of bracketing them.
Mikael Magnusson [Mon, 23 Jul 2007 23:38:03 +0000 (01:38 +0200)]
Stop focus from moving if scroll lock is enabled. Useful when some program decides to pop up a window every 2 seconds while you're chatting away on irc.
Mikael Magnusson [Mon, 23 Jul 2007 23:36:47 +0000 (01:36 +0200)]
Make the default window icon randomly tinted.
Mikael Magnusson [Fri, 8 Jan 2010 18:51:57 +0000 (19:51 +0100)]
handle locked windows in client list menus also. this is a really stupid way of doing it.
Mikael Magnusson [Sat, 4 Oct 2008 22:04:10 +0000 (00:04 +0200)]
Add "locked" to if action
Mikael Magnusson [Sat, 4 Oct 2008 11:03:18 +0000 (13:03 +0200)]
Disallow some more stuff on locked windows
Mikael Magnusson [Sat, 4 Oct 2008 10:49:56 +0000 (12:49 +0200)]
Don't allow deiconifying locked windows via the focus action.
Mikael Magnusson [Thu, 28 Feb 2008 18:42:46 +0000 (19:42 +0100)]
Make * not crash when something isn't focused.
Mikael Magnusson [Thu, 28 Feb 2008 03:40:25 +0000 (04:40 +0100)]
Set a prop on locked windows, so panels can see it, and so it persists over restarts.
Mikael Magnusson [Thu, 28 Feb 2008 01:23:25 +0000 (02:23 +0100)]
Lock some stuff in event.c too.
Mikael Magnusson [Thu, 28 Feb 2008 01:12:19 +0000 (02:12 +0100)]
Better locking for client menu.
Mikael Magnusson [Wed, 27 Feb 2008 14:54:26 +0000 (15:54 +0100)]
Disable locking for some actions where it didn't make sense.
Mikael Magnusson [Sat, 23 Feb 2008 19:15:34 +0000 (20:15 +0100)]
Add Lock action.
Allows locking windows so you can't move/resize/close/etc them by mistake.
It's probably better to check in client.c than the actions, just
testing if I want it at all for now.
Mikael Magnusson [Sun, 9 Mar 2008 19:38:43 +0000 (20:38 +0100)]
Add FocusFallback action.
Mikael Magnusson [Thu, 28 Feb 2008 18:43:07 +0000 (19:43 +0100)]
Make Unfocus do what the name says.
Mikael Magnusson [Tue, 5 Feb 2008 10:19:10 +0000 (11:19 +0100)]
New SendKeyEvent and SetKeyTarget actions.
These let you define SendKeyEvent actions that send a specified key to a target
window. The target window can be changed at runtime with the SetKeyTarget action.
Mikael Magnusson [Sat, 1 Mar 2008 17:17:20 +0000 (18:17 +0100)]
Don't bring windows when uniconifying.
Mikael Magnusson [Mon, 23 Jul 2007 23:36:14 +0000 (01:36 +0200)]
Add "de" option to Iconify action that makes it deiconify windows (useful while alt-tabbing).
Mikael Magnusson [Wed, 16 Jan 2008 21:41:10 +0000 (22:41 +0100)]
Add RaiseTemp action.
This has the same effect as giving the <raise>yes</raise> option to next/prevwindow
but makes it optional and keybindable, so if W-Tab is nextwindow, you can have W-q
as raisetemp.
Mikael Magnusson [Fri, 8 Jan 2010 19:11:08 +0000 (20:11 +0100)]
This commit is mostly a reminder to refactor the desktop popup creation, but it gives it the menu title font
Mikael Magnusson [Tue, 29 Apr 2008 14:56:31 +0000 (16:56 +0200)]
Allow to use a pango font description string.
Mikael Magnusson [Mon, 23 Jul 2007 23:35:12 +0000 (01:35 +0200)]
Add emulatexinerama option in desktops section that splits the screen in two side-by-side areas.
Mikael Magnusson [Sun, 8 Feb 2009 07:51:25 +0000 (08:51 +0100)]
Warp to the top of the combined menu and back.
Mikael Magnusson [Fri, 6 Feb 2009 01:16:06 +0000 (02:16 +0100)]
Put current desktop on top of combined client list menu.
This probably needs an option.
Mikael Magnusson [Sun, 28 Sep 2008 20:05:25 +0000 (22:05 +0200)]
Center text in pager popup and make it at least as wide as it is high.
Mikael Magnusson [Tue, 18 Mar 2008 20:55:20 +0000 (21:55 +0100)]
Show popup even earlier.
But ideally, the window should have moved/resized by now, it doesn't until the next pixel...
Mikael Magnusson [Mon, 23 Jul 2007 23:44:15 +0000 (01:44 +0200)]
Add grab option to <keybind> to not grab the keycombo.
This is for example to let you bind stuff to the Alt key while alt-tabbing,
but you don't want those keys to be grabbed in normal usage.
Mikael Magnusson [Thu, 7 Feb 2008 15:15:45 +0000 (16:15 +0100)]
Don't update hints when the title is the same.
What I really wanted was to not redraw the titlebar but that seems much harder.
Mikael Magnusson [Mon, 23 Jul 2007 23:49:23 +0000 (01:49 +0200)]
Various uninteresting changes to the test programs.
Mikael Magnusson [Mon, 23 Jul 2007 23:45:41 +0000 (01:45 +0200)]
Allow selecting the random placement strategy. The hunk for place.c that actually does this seems to have been lost somewhere on the way.
Mikael Magnusson [Mon, 23 Jul 2007 23:30:50 +0000 (01:30 +0200)]
Commented version of color cycling core cursor. I think it leaks the color specs.
Mikael Magnusson [Mon, 6 Oct 2014 19:54:16 +0000 (21:54 +0200)]
Pass the GravityPoint as const* instead of by value
Mikael Magnusson [Mon, 6 Oct 2014 18:15:08 +0000 (20:15 +0200)]
Let the menu placement code know if the position was user specified
This way, it can avoid running the code that moves it to a good position
relative to a mouse that isn't there
Mikael Magnusson [Mon, 6 Oct 2014 17:52:14 +0000 (19:52 +0200)]
Move common gravity application to screen.c
Mikael Magnusson [Mon, 6 Oct 2014 17:38:51 +0000 (19:38 +0200)]
Resolve gravity coords in menuframe so it can use the widths
Mikael Magnusson [Mon, 6 Oct 2014 16:21:38 +0000 (18:21 +0200)]
Add <position> tag to ShowMenu action
Mikael Magnusson [Mon, 6 Oct 2014 16:20:51 +0000 (18:20 +0200)]
Fix negative relative coordinate placement
Mikael Magnusson [Mon, 6 Oct 2014 16:25:14 +0000 (18:25 +0200)]
double space
Mikael Magnusson [Thu, 24 Apr 2014 22:22:59 +0000 (00:22 +0200)]
Fix thinko in if.c, *o in Stop can never be pointing at the right place.
Use a file static boolean instead.
Mikael Magnusson [Thu, 10 Apr 2014 20:51:28 +0000 (22:51 +0200)]
Fix typo in variable name
Mikael Magnusson [Mon, 17 Feb 2014 16:55:16 +0000 (17:55 +0100)]
Avoid initializing a VLA of 0 length
Mikael Magnusson [Wed, 14 Aug 2013 12:19:09 +0000 (14:19 +0200)]
Declare variables at start of blocks in place.c
Mikael Magnusson [Tue, 17 Sep 2013 16:52:11 +0000 (18:52 +0200)]
Break loop if is_true was set to false in If
Mikael Magnusson [Tue, 17 Sep 2013 16:47:45 +0000 (18:47 +0200)]
Don't segfault when there's no target in If
Mikael Magnusson [Wed, 25 Dec 2013 15:37:04 +0000 (16:37 +0100)]
Some fixes in french translation
Derek Foreman [Thu, 10 Apr 2014 20:12:56 +0000 (15:12 -0500)]
Cache results of offset/shift functions so we don't do 6 function calls per pixel when reducing color depth
Rafael Ignacio Zurita [Thu, 9 Jan 2014 14:49:00 +0000 (11:49 -0300)]
Fix gcc warnings in screen.c
Markus Roesch [Wed, 1 Jan 2014 12:25:31 +0000 (13:25 +0100)]
Added missing break statement (Bug 6043)
Dana Jansens [Mon, 2 Dec 2013 16:35:44 +0000 (11:35 -0500)]
Include rsvg-cairo.h for cairo-specific things
Dana Jansens [Sun, 8 Sep 2013 17:39:59 +0000 (13:39 -0400)]
Add a strict option to the ToggleShowDesktop action
When the strict option is used, normal windows are not able to show themselves
while showing the desktop.
Sérgio Marques [Fri, 6 Sep 2013 08:51:02 +0000 (09:51 +0100)]
Portuguese update for openbox
Dana Jansens [Sun, 1 Sep 2013 21:37:53 +0000 (17:37 -0400)]
Allow FillToEdge to grow when all its edges are blocked.
This change points out how useless the return value from client_find_resize_directional()
was, so it also removes that.
When all edges are blocked, the FillToEdge action will try to grow all four edges agin
without blocking any of them on their current edge. This more closely matches the
behaviour of the GrowToEdge action.
Dana Jansens [Sun, 1 Sep 2013 20:48:39 +0000 (16:48 -0400)]
Clean up the FillToEdge action implementation
This extend the client_find_resize_directional() method to support
two growing modes, and return a bool for whether it was able to grow/shrink.
The client_find_resize_directional() method now takes an enum instead
of a bool, with two growing modes. The old mode which always tries to
grow, the a new mode that will only grow if the client's edge is not
already at a grow stopping point (ie against the edge of another window).
Lucas Augusto Deters [Sat, 28 Aug 2010 05:21:18 +0000 (02:21 -0300)]
Created a 'GrowToFill' action. (Bug 3356)
Dana Jansens [Sun, 1 Sep 2013 19:17:11 +0000 (15:17 -0400)]
Use the BSEARCH() macro in overlap placement
Currently the code rolls its own binary search, but now that we have
a well-tested binary search implementation in obt/ we can make use
of that.
Dana Jansens [Sun, 1 Sep 2013 18:54:51 +0000 (14:54 -0400)]
Fix bugs and add unit tests for BSEARCH()
Also adds running unit tests to the release/go script so we can be
sure that all tests pass before we make a release.
Dana Jansens [Sun, 1 Sep 2013 15:49:06 +0000 (11:49 -0400)]
Fix nits for overlap placement center option
Ian Zimmerman [Sat, 17 Aug 2013 23:08:25 +0000 (16:08 -0700)]
Add the old <center> option for the placement policy. (Bug 5946)
Original commit messages:
. Reformat to move closer to house style
. Add center on top of leat overlap place algo
. Add sentinel value to edge arrays
. Use a Size instead of a Rect for a centering field
. Fix off by one bug
. Need to declare dx and dy
. Pass length of edge array instead of recomputing
. Fix missing open-brace in config.c
. Address the more trivial subset of danakj comments
. Revert "Remove now-unused config_place_center option."
This reverts commit
5e282dae08be3b900e0337efa0fae8f3ffa92cd7.
. Remove reliance on sentinel value when scanning edge arrays
. Avoid need to initialize Size structure by removing it :)
. Clean up field expansion code somewhat
. Compress code further by using a structure for common args
. Fix search for next grid point
. Squeeze it even more by not using Size at all
Ian Zimmerman [Sat, 17 Aug 2013 22:13:05 +0000 (15:13 -0700)]
Fix gcc warnings
Tom Sires [Tue, 27 Aug 2013 13:02:31 +0000 (08:02 -0500)]
Fix a typo causing submenuShowDelay to be ignored (Bug 6019)
Mikael Magnusson [Mon, 19 Aug 2013 01:25:40 +0000 (03:25 +0200)]
Add window type to If as well
This one required some extra helpers so is separate commit
Mikael Magnusson [Mon, 19 Aug 2013 00:40:21 +0000 (02:40 +0200)]
Allow matching class, name and role in If action
Mikael Magnusson [Sun, 18 Aug 2013 22:03:51 +0000 (00:03 +0200)]
Add ForEach action which is like If but runs on all clients
Also adds a Stop action that lets you stop running, in case you only
want to run actions on the first match.
Dana Jansens [Mon, 19 Aug 2013 00:03:46 +0000 (20:03 -0400)]
Remove the else-on-newline rule from HACKING
Dana Jansens [Sun, 18 Aug 2013 23:29:05 +0000 (19:29 -0400)]
Add queries to If actions
This allows the If action to run queries against a client other than
the target of the actions being run, for example to check state on
the focused window while performing actions on another window during
focus cycling.
The syntax looks like
<action name="If">
<query target="default">
<title>FooBar</title>
<maximized>yes</maximized>
</query>
<query target="focus">
<desktop>3</desktop>
</query>
<then>
<action name="NextDesktop"/>
</then>
</action>
The above checks the client window that the actions will run on to
verify that its title is "FooBar" and that it is maximized. If that
is true, it also checks that the currently focused client window is
on desktop 3. If that is true also, then it runs the NextDesktop
action.
The target="" option can be set to "default" which uses the client
window that the actions will run on, or it can be "focus" which uses
the client window that is currently focused.
The <query> tag is optional, and the conditions inside the query can
be placed directly inside the If <action> tag, as they were before
this change. In that case, a default <query> tag is assumed with
target="default" which matches the previous behaviour.
Multiple <query> tags can be present, and they must all be true in
order to run the actions in <then>. If any one is false, the actions
in <else> will be run instead.
Dana Jansens [Sun, 18 Aug 2013 22:11:26 +0000 (18:11 -0400)]
Update HACKING for brace rules
The rules in HACKING for braces are kind of unclear, so add some
more rules and provide examples too.
Dana Jansens [Mon, 12 Aug 2013 20:52:48 +0000 (16:52 -0400)]
Add a note to add the version to the bug tracker for new releases.
Also important to update IRC and keep hydrated.
Dana Jansens [Mon, 12 Aug 2013 01:30:20 +0000 (21:30 -0400)]
Update po files for 3.5.2
Dana Jansens [Mon, 12 Aug 2013 01:28:22 +0000 (21:28 -0400)]
Add CHANGELOG for 3.5.2
Dana Jansens [Mon, 12 Aug 2013 01:26:08 +0000 (21:26 -0400)]
Update version in configure.ac to 3.5.2
No library interfaces were changed since 3.5.1.
Dana Jansens [Sun, 11 Aug 2013 20:37:14 +0000 (16:37 -0400)]
Maximized undecored windows have incorrect top border. (Bug 5996)
If the window has no border since the theme has bwidth=0, or because the
window is truly undecorated via MWM hints, then we should not allocate space
for the frame of the window which will just be empty pixels.
Dana Jansens [Sun, 11 Aug 2013 20:12:25 +0000 (16:12 -0400)]
window.inactive.label.text.color should default to white.
Currently it defaults to itself, which is NULL, and causes a crash.
The spec http://openbox.org/wiki/Help:Themes#window.inactive.label.text.color
claims that the default is white.
In
98b02c6b60bbde2a5db026b3ee3e6e6dc44d1a92 we had this property being read
twice, once with the NULL backup and once with white. It seems that we kept
the wrong one, so just switching this to white now.
Dana Jansens [Sun, 11 Aug 2013 20:04:50 +0000 (16:04 -0400)]
Fix a write out of bounds in splitvertical gradients (Bug 3612)
If the gradient has height 1, then y1sz is 0. We don't want to use the
first color and move the data pointer, since this will move it past the
end of the array.
Dana Jansens [Sun, 11 Aug 2013 18:43:48 +0000 (14:43 -0400)]
We use congfigure.ac not configure.am
Dana Jansens [Sun, 11 Aug 2013 18:39:26 +0000 (14:39 -0400)]
Fix some compiler warnings
Void function should actually be declared void. Not-reached switch
condition should still return something.
Dana Jansens [Sun, 11 Aug 2013 17:47:53 +0000 (13:47 -0400)]
Update line numbers in po files
Mikael Magnusson [Sun, 11 Aug 2013 17:26:52 +0000 (19:26 +0200)]
Change "plain" to "exact" for If's <title>
Mikael Magnusson [Sun, 11 Aug 2013 14:24:29 +0000 (16:24 +0200)]
Update CHANGELOG
Mikael Magnusson [Sun, 11 Aug 2013 13:47:31 +0000 (15:47 +0200)]
Add matching which monitor the client is on in the If action (Bug 5426)
Mikael Magnusson [Sun, 11 Aug 2013 13:45:48 +0000 (15:45 +0200)]
Use enum value for monitor in MoveToCenter
Mikael Magnusson [Sat, 14 Aug 2010 23:36:10 +0000 (01:36 +0200)]
Let the If action match window titles with GRegex
Mikael Magnusson [Sat, 9 Oct 2010 22:41:29 +0000 (00:41 +0200)]
Use a helper function to make if.c a bit shorter
Mikael Magnusson [Sat, 9 Oct 2010 22:41:10 +0000 (00:41 +0200)]
Add activedesktop to If
Lefteris Chatzimparmpas [Sun, 11 Aug 2013 12:45:29 +0000 (14:45 +0200)]
Dock used showDelay for both hiding and showing (Bug 5811)