summaryrefslogtreecommitdiff
path: root/openbox/screen.c
AgeCommit message (Collapse)Author
2010-01-11More work on refreshing the focus cycle dialog when windows are ↵Dana Jansens
added/removed from the valid focus order
2010-01-11Add _OB_VERSION and _OB_APP_ROLE/CLASS/NAME/TYPEDana Jansens
Add _OB_VERSION property on the root window. Change _OB_ROLE/CLASS/NAME to _OB_APP_*. Add _OB_APP_TYPE which has a string for the type chosen for the window on mapping by Openbox. Adjust the rc.xml to match these changes.
2010-01-11Redraw the focus cycle popup when the list of focusable windows changes, ↵Dana Jansens
rather than closing it
2009-12-17Hide the focus popup if we change desktops and one of the windows in it ↵Dana Jansens
disappears
2009-12-17Don't move focus away from a window if it was focused and it didnt hide when ↵Dana Jansens
switching desktops
2009-12-16Calculate the work area using other already existing and better maintained ↵Dana Jansens
and trusted code
2009-12-15Make the NET_WORKAREA hint work the way it used to, across all monitorsDana Jansens
The spec is not going to change this hint, but rather add a new one. So for now just revert to the old behaviour.
2009-12-14Let menus place themselves on monitors where the mouse is not presentDana Jansens
This fixes a bug which forced menus to show up on the same monitor as the mouse pointer.
2009-12-11Set hints that remember the WM_WINDOW_ROLE and WM_CLASS properties for our ↵Dana Jansens
users. The hints are _OB_ROLE, _OB_NAME, and _OB_CLASS.
2009-12-09Make the desktop popup show on the primary monitor as defined in the config.Dana Jansens
This matches the behaviour of the focus cycle and key chain popups.
2009-12-09Revert "Show desktop switch popup on every monitor"Dana Jansens
This reverts commit 2e1adce628ee3234accc5d88cafb57672800cae0.
2009-12-09Revert "Some fixes for the pager popups, and avoid a crash if you destroy a ↵Dana Jansens
popup while it is going to be shown later by a delay." This reverts commit 33328583a143677d27eb3d081ce66532c3aaca1c.
2009-12-09Add a primaryMonitor config option, where the focus-cycle and keychain ↵Dana Jansens
popups will appear
2009-12-09Bug in choosing the active monitor when doing a move/resizeDana Jansens
2009-12-09When moving focus across desktops, make sure Openbox doesn't think that a ↵Dana Jansens
window which is no longer visible is still focused.
2009-11-21Add a comment for commit ec9fbf05df3ac807d60ae6af36236ffc6567bbdc regarding ↵Dana Jansens
struts with multiple monitors.
2009-11-21Some fixes for the pager popups, and avoid a crash if you destroy a popup ↵Dana Jansens
while it is going to be shown later by a delay.
2009-07-05Fix interpretation of struts with multiple screensGeoffrey Antos
According to the WM Specification, the left, top, right, and bottom fields are to be declared relative to the overall X screen dimensions, not the monitor dimensions. The example given in the spec (v1.3 or 1.4draft2) is: "Another example is a panel on a screen using the Xinerama extension. Assume that the set up uses two monitors, one running at 1280x1024 and the other to the right running at 1024x768, with the top edge of the two physical displays aligned. If the panel wants to fill the entire bottom edge of the smaller display with a panel 50 pixels tall, it should set a bottom strut of 306, with bottom_start_x of 1280, and bottom_end_x of 2303. Note that the strut is relative to the screen edge, and not the edge of the xinerama monitor." In my case, I have a 1680x1050 monitor to the left of a 1920x1200 monitor aligned at the top. I then have a gnome-panel along the bottom edge of the 1680x1050 monitor with a height of 24 pixels. xprop reports the following partial strut: _NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 0, 0, 175, 0, 0, 0, 0, 0, 0, 0, 1679 which is correct according to the spec. Gnome-panel is reserving the 150 pixels along the bottom that aren't visible on the screen plus the 25 it requests for itself. However, maximizing a window on this monitor leaves a gap of exactly 150 pixels between the bottom edge of the maximized window and the top edge of the panel. Also, when the 1680x1050 monitor is the primary monitor (id=1) then the _NET_WORKAREA property on the root window is also off by 150px for the same reason. This patch fixes the two issues I mentioned for exterior monitor edges. It doesn't attempt to account for "interior" monitor edges (i.e. a 'left' strut on monitor A when monitor B is directly to the left of monitor A) because it's not possible to do so with the current strut specification (see http://mail.gnome.org/archives/wm-spec-list/2004-March/msg00004.html for a discussion on this limitation) This could be avoided by having the partial strut atom contain a xinerama screen ID that the strut applies to, but unfortunately the discussion all those years ago never got anywhere. [ quoted from bug #3792 ]
2009-07-04Show desktop switch popup on every monitorMikael Magnusson
This should be a satisfactory fix for #3694 I hope.
2008-11-15Use ngettext for %d desktop(s).Mikael Magnusson
This poses a small problem. We currently let translators reorder this string, but ngettext only takes one numeric argument. This means that you can either get correct pluralization or the order you want, but not both. I fixed up the languages I understand at a very basic level, but the rest will need translator assistance.
2008-03-02add a RECONFIGURING state, and enter that when doing reconfiguringDana Jansens
2008-02-28Very inconsequential changes.Mikael Magnusson
2008-02-28Free copied glists when removing desktops.Mikael Magnusson
2008-02-25show the desktop change popup before mapping/unmapping all the windowsDana Jansens
this makes a big difference if the compmgr is being laggy trying to show windows
2008-02-17Add a comment for translators about how to change order of arguments.Mikael Magnusson
2008-02-13Fix a minor issue with lastdesktop right after startup.Mikael Magnusson
2008-02-08Don't bother setting screen_last_desktop here, it's inited in screen_startup ↵Mikael Magnusson
anyway.
2008-02-02add a --config-file command line option, and OB_CONFIG_FILE root hintDana Jansens
2008-01-22print a warning when the session has a different number of desktops than the ↵Dana Jansens
openbox config
2008-01-16Various fixes for sparse warnings.Mikael Magnusson
Define void functions with (void), not (). Add missing includes. Some functions were declared static but defined non-static. Some variables that should be file static were file global but not used in any other file. prop.h defined a new prop_atoms in each file that included it instead of declaring it extern.
2008-01-16add the new pid and ping atoms to the NET_SUPPORTED listDana Jansens
2008-01-11try to comment the code for when to save the "last desktop"Dana Jansens
2008-01-11make the time to remember last desktop a #define, and make it 750msDana Jansens
2008-01-11Don't record desktops for lastdesktop when switching away quickly again.Mikael Magnusson
When switching desktops, only record the previous desktop as the last desktop if the user stayed there for a while. This way you can scroll over a couple desktops quickly, then go back to the previous desktop you _used_, not the last you scrolled past.
2007-10-31Try to fix the popup only showing up on monitor 0.Mikael Magnusson
screen_find_monitor() should perhaps contain that big hunk of logic, I don't know if anything will break now that it returns screen_num_monitors sometimes. We'll see!
2007-09-04ANSI function declarations, ie () -> (void)Mikael Magnusson
2007-09-04Fix calling functions with wrong number of argumentsMikael Magnusson
2007-08-22Hide the desktop cycle popup when the focus cycle popup is shown.Mikael Magnusson
2007-08-07Another leaked Rect *aMikael Magnusson
2007-08-04don't make omnipresent windows lose focus when changing desktops. this is ↵Dana Jansens
done by allowing focus_fallback to specify if focus has been lost or not. usually if you're call it, focus is lost, but not always.
2007-08-03fallback focus when removing a desktop without doing a fake desktop switchDana Jansens
2007-08-03show a popup notification when switching desktops (also make all the config ↵Dana Jansens
options export time in milliseconds not half milli half micro)
2007-08-03new least-intrusive focus stealing preventionDana Jansens
2007-08-01remove focus-stealing-prevention stuff, don't use user_time crap at all. it ↵Dana Jansens
is broken in every application that has ever used it. ever. ever. \^_^/;;;
2007-07-26use the moveresize client to find the active monitor tooDana Jansens
2007-07-20don't move parents and children over when inserting desktops - cuz then they ↵Dana Jansens
all get moved a bunch of times, just move the top direct parent
2007-07-17remove trailing whitespaceMikael Magnusson
2007-07-12adding trunkDana Jansens
Signed-off-by: Dana Jansens <danakj@orodu.net>
2007-07-10user-sepcified marginsDana Jansens
2007-06-29compliance over functionlityDana Jansens