summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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-04Fix a typo in debug messageMikael Magnusson
2009-07-04Show desktop switch popup on every monitorMikael Magnusson
This should be a satisfactory fix for #3694 I hope.
2009-07-04Give the popup to the timer remove so it does the right oneMikael Magnusson
Only the chroot popup uses delayed mapping so this is just a latent bug.
2009-07-04Fix memory corruption when y2sz is 0.Reilly Grant
data is incremented one too many times when y2sz is zero, leading to memory corruption. [ also changed % 2 to & 1 -- Mikael ]
2009-07-04Add "prev" and "next" as possible targets for moveto/resizeto actions.Nico Golde
One of the Debian users asked if it's possible to send a window to other monitor when using xinerama, especially useful of you have 2 monitors and want to toggle a window to the other one. I wrote a patch that implements next and prev to also make that work for 3 or more workspaces.
2009-07-04Only open the default font once, then ref it.Mikael Magnusson
As suggested in #3622, we don't need to open the default font for every place that wasn't specified in the theme. Solved a bit differently than the patch given there.
2009-07-04client_validate should return FALSE only for UnmapNotifies that will cause ↵Dana Jansens
the window to become unmanaged
2009-07-03Show window role in the debug message for name/class too.Mikael Magnusson
2009-07-03Fix for #3715, app settings applied too late.Mikael Magnusson
This caused problems for placing windows with decor turned off, the placement code thought they had it on.
2009-06-06Add support for 24bitMikael Magnusson
2009-04-15Make at least the default configs validateMikael Magnusson
More things need to be case insensitive and whatnot.
2009-04-05Update and reactivate croatian translation.Mikael Magnusson
2009-03-31Add latvian translation.Einars Sprugis
2009-03-29Avoid anonymous unionsMikael Magnusson
Some compilers, like sun studio and clang don't support them.
2009-02-25Update italian translation.Davide Truffa
2009-02-20Close openbox.log when restartingMikael Magnusson
2009-02-20Merge branch 'backport' into workMikael Magnusson
Conflicts: openbox/config.c
2009-02-20Fix per-app monitor settingMikael Magnusson
A couple of things were wrong, the parser added 1 to the value despite expecting the user to give values in the range of 1 to screen_num_monitors, rc.xml documented the values to start from 0 and finally the monitor value wasn't copied over at all when matching the client.
2009-01-29Merge branch 'backport' into workMikael Magnusson
Conflicts: openbox/event.c openbox/frame.c
2009-01-29Add Plural-Forms header to .po files that need it.Mikael Magnusson
2009-01-29Handle InputShape type shaping too.Mikael Magnusson
Many composite apps use this to pass through clicks where they are transparent.
2009-01-29Typos in error message from gdm-controlMikael Magnusson
2009-01-29install-sh should be executableMikael Magnusson
Apparently on solaris, you can't invoke -x scripts via "sh install-sh".
2008-11-19Merge branch 'backport' into workMikael Magnusson
2008-11-19Only update the focus cycle indicator when already visible in frame.c to ↵Mikael Magnusson
avoid overriding bar=no
2008-11-15Another problem pointed out by clangMikael Magnusson
Using format specifiers without arguments in printf is still bad. openbox/debug.c:105:18: warning: format string is not a string literal (potentially insecure) fprintf(out, log_domain); ^~~~~~~~~~ openbox/debug.c:107:18: warning: format string is not a string literal (potentially insecure) fprintf(out, level); ^~~~~ openbox/debug.c:109:18: warning: format string is not a string literal (potentially insecure) fprintf(out, message); ^~~~~~~
2008-11-15Merge branch 'backport' into workMikael Magnusson
Conflicts: openbox/event.c
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-11-10Fix a problem pointed out by clangMikael Magnusson
openbox/client.c:269:10: warning: incompatible pointer types passing 'gint *', expected 'guint32 *' if (!OBT_PROP_GET32(self->window, NET_WM_USER_TIME, CARDINAL, &user_time)) ^~~~~~~~~~~~~~
2008-11-05Don't move windows to current desktop on net_active_window if the event ↵Mikael Magnusson
didn't come from the user. Instead, just activate the flashy thinger.
2008-11-05Using format specifiers without arguments in printf is bad.Mikael Magnusson
2008-10-29Merge branch 'backport' into workMikael Magnusson
2008-10-29Bring helper windows when following a window.Mikael Magnusson
2008-10-29_NET_WM_USER_TIME=0 means don't focus the new window.Mikael Magnusson
2008-10-27Merge branch 'backport' into workMikael Magnusson
Conflicts: openbox/client.c openbox/prop.c openbox/prop.h
2008-10-27No \n on ob_debug in this branch.Mikael Magnusson
2008-10-27The code to replace $wid/$pid died on $foo.Mikael Magnusson
It failed to increment a variable after finding a $ but no pid or wid, which led to a fun infinite loop. Also don't check if c[1] is w if we already established it was p.
2008-10-27Show name/class when mapping in debug mode.Mikael Magnusson
2008-10-27Revert "make windows stay on screen when they..."Mikael Magnusson
This reverts commit 73adc6480d59fc5dccf9fe19ed5234c9582b328c. I know I had a good reason for reverting this commit, I don't know what that reason was though.
2008-10-27Correct a 64-bit bug in event_time_afterMikael Magnusson
The code assumed the timestamps had the same domain as the type Xlib uses for them, which is almost never the case with Xlib. Change all involved variables to guint32.
2008-10-27give the compiler hints about what can be kept in registers so that it can ↵Dana Jansens
optimize the gradient code better with all the pointers going on
2008-10-22Make sure the _MOTIF_WM_INFO atom exists.Mikael Magnusson
Without this, urxvt won't use motif hints for borderless mode.
2008-10-22Update Basque translation.Inko Illarramendi Arancibia
2008-09-140 is the first monitor here, not 1.Mikael Magnusson
2008-08-19Add danish translation.Jesper Sander
2008-07-13Properly escape strings before writing XML.Nico Golde
2008-05-29Openbox doesn't support _NET_WM_USER_TIME_WINDOW atm.Mikael Magnusson
2008-05-25Update catalan translation.David Majà Martínez
2008-05-25Add a translators note about not translating the word "SessionLogout" in an ↵Mikael Magnusson
error message.