While here:
* add hard dependency on Python.
* add options for image support, enable recommended imlib2 by default.
* fixes missing bump of API_DEPENDS to 3.5.
* easy and better handling for config files.
3.5.2:
* Fix crash in theme rendering code, and in theme parsing code.
* Maximize windows without borders to fill the whole screen, don't leave
a one-pixel empty space. (Bug #5996)
3.5.1:
* New translations: Afrikaans, Belarusian, Interlingua, Hebrew, Romanian,
Greek.
* Updated translations: Italian, Serbian, Spanish, Czech, Hungarian, Turkish,
German, Arabic, Polish, Dutch, Lithuanian, Portuguese, Estonian.
* SVG icon support. This is optional, depending on librsvg being installed.
* Allow application rules to control window size with a new <size> tag.
* Allow application rules to pick a monitor for new windows without forcing
a position.
* Allow non-interactive focus cycling with a new <interactive> tag.
* New LeastOverlap window placement policy replaces the old default
behaviour. It finds a place on a given monitor that overlaps as few
windows as possible. Contributed by Ian Zimmerman.
* Improved Xinerama behaviour.
* Correctly interface with latest gnome-session for Gnome/Openbox X sessions.
* Allow third-party control of window opacity in compositing managers.
* Improved themeing options. Contributed by Dave Foster.
* Add <monitor>, <title type="regex">, <title type="exact"> and
<activedesktop> options to If action.
* Addresses bugs #4661, #5506, #5186, #5758, #5410, #5228, #5277, #5731,
#5746, #5737, #5419, #5721, #5711, #5385, #5500, #4992, #5443, #5518,
#5444, #4782, #5237, #5228, #5173, #5203, #5246, #5180, #5179, #5150,
#5132, #4937, #4889, #5253, #3769, #5819, #5811, #5081, #5426 among others.
to address issues with NetBSD-6(and earlier)'s fontconfig not being
new enough for pango.
While doing that, also bump freetype2 dependency to current pkgsrc
version.
Suggested by tron in PR 47882
3.4.11.2:
* Updated Estonian and Portuguese translations.
* Fix a rare crash involving moving fullscreen windows to different monitors
* Fix a more common crash involving pressing right in a menu
3.4.11.1:
* Updated Polish translation.
* Fixed bug #4519 (Incorrect focus in reused windows).
* Lower the default submenu open/hide delay from 200ms to 100ms.
* Fix some more problems with gnome integration.
* Update Clearlooks theme.
* Some other small fixes.
3.4.11:
* Update Hungarian, Japanese, and Latvian translations.
* Make xdg-autostart use the OPENBOX environment by default, so you can use
OnlyShowIn=OPENBOX in an autostart .desktop and it will work as expected.
* Don't close the menu when you hold control and execute something.
* Fix bug #4503 (Adjust who shows up in the Alt-Tab list using SKIP_TASKBAR).
* Fix flickering window when moving maximized window between monitors of
different sizes.
* Fix bug #4355 (Allow multiple escaped _'s in a menu label and allow
a menu shortcut to come after an escaped _).
* Remember the maximized state of a window when it goes fullscreen, and
restore it when leaving fullscreen state.
* Fix bug #4072 (Openbox is stopped by terminal applications writing to
stdout).
* Fix bug #4492 (Mistake in openbox-gnome-session check while setting up).
* Fix obxprop to make --root and --id work correctly.
* Add _OB_APP_ROLE/CLASS/NAME/TYPE properties (replaces _OB_ROLE/CLASS/NAME).
* Make the focus cycling popup dynamic when windows appear/disappear.
* Fix bug #4411 (Crash when window appears during focus cycling).
* Allow the user to specify which properties should be shown by obxprop.
* Fix tilde expansion in the Execute action
* Make Home and End keys move to the top/bottom of the active menu.
* Use the submenuShowDelay when navigating menus with the keyboard.
3.4.10:
* Improve keyboard navigation in Openbox menus.
* Add a --root option and a manpage for obxprop.
* Use a negative value for submenuShowDelay and submenuHideDelay to
cause an infinite delay. This means you have to click to show a
submenu, rather than just hover over it.
* Improved code for submenu show/hide delay. Added the submenuHideDelay
config file option, under the "menu" section.
* Fixed bug #4464 (Typo in openbox-gnome-session script).
* Fixed bug #4436 (Focusing a window used to stop focus cycling).
* Renamed obprop to obxprop due to collision with Open Babel (See bug
#4419).
3.4.9:
* Allow focus to move while inside an Openbox menu, or during an
interactive action such as window cycling.
* Fixed bug #3717 (Empty dock interfered with move/grow to edge actions).
* Fixed bug #4411 (Crash when switching desktops and window cycling).
* Fixed bug #4377 (Window resistance against struts).
* Fixed bug #4035 (Prevent focus from moving under the mouse after
activating a window with an Openbox menu.
* Correct the value provided by the _NET_WORKAREA hint, so desktop icons
will place across all monitors.
* Don't hide submenus immediately when moving through the parent menu.
(Resolves request #3762).
* Fix for showing Openbox menus with multiple monitors, don't restrict
them to the monitor where the mouse is.
* Fixed bug #4023 (Allow the user to have multiple keys which perform the
same function in Openbox menus/move/resize. E.g. two keys which are
both bound to Escape.
* Add a new obprop tool, which can be used to read the _OB_ROLE,
_OB_NAME, and _OB_CLASS (as well as any other UTF-8 window properties)
off of a window.
* Add _OB_ROLE, _OB_NAME, and _OB_CLASS hints on each window that show
the respective values for use in the rc.xml applications section, to
modify the window when it appears.
* Improve Openbox interoperability with gnome-session >= 2.24.
* Fixed bug #4040 (Remove desktop hints set by gdm in the openbox-session
scripts, so that Openbox can set the number of desktops (assuming
gnome-settings-daemon doesn't first)).
* Fix a bug in xdg-autostart preventing some .desktop files from working.
* Show the desktop pager popup on the primary monitor instead of on all
monitors.
* Add a new primaryMonitor config option, which is where Openbox popups
will appear. Defaults to a fixed monitor, but can be made to behave as
before with the "active" value for it.
* Correct edge detection for move/grow to edge to properly use monitor
edges for multi-monitor setups.
* Change default window placement policy to stay on the active monitor
for multi-monitor setups.
* Fixed bug #1149 (Crash with some window icon sizes).
* Respond to all strut changes, fixes moving/hiding panels.
* Fix internal code to focus windows on other desktops correctly (Fixes
bug #4413).
* Focus correctness fixups for switching desktops.
* Fixed bug #4373 (Decoration bug for shaded maximized windows).
* Fixed bug #4350 (Allow a window to be made skip_taskbar but still get
focused by the user's rc.xml).
* Fixed bug #4307 (Set a minimum time for screenEdgeWarpTime).
* Fixed bug #4253 (Support for Solaris in openbox-session scripts).
* Fixed bug #3851 (Allow transient windows to be above helper windows).
3.4.8:
* Updated translations: Slovak.
* Allow windows to change their decorations at any time (Fix for
Google Chrome).
* Make openbox-session to respect the $XDG_CONFIG_HOME environment variable.
* Fixed bug #4344 where borders were given to windows that should not have
them.
* Merge the SessionLogout and Exit actions. They now test if connected to a
session manager and ask it to exit if so, or simply kill Openbox if not.
* Further tweaks to the _NET_ACTIVE_WINDOW message handling. Use the same
logic for focus-stealing as is used when mapping a new window.
* Don't go out of our way any more to prevent focus from moving while the
keyboard is grabbed.
* Fix openbox-gnome-session when using gnome-session > 2.22.
- Pull in upstream's 59eb52b7c6ccbe83742e5eb8b40b5e32bb6600cc, which
prevents windows from jumping to the current workspace when a
net_active_window message is received.
- Change an entry in the default menu file to use the Exit action instead
of SessionLogout, so as to not violate the POLA.
Shared directories can now be created independently by the pacakges
needing them and will be removed automatically by pkg_delete when empty.
Packages needing empty directories can use the @pkgdir command in PLIST.
Discussed and ok'd in thread starting at
http://mail-index.netbsd.org/tech-pkg/2009/06/30/msg003546.html
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
3.4.7.2:
* The system I used to generate the dist tarball didn't have the
docbook-to-man command so the manpages were empty.
3.4.7.1:
* Not to be outdone by the cairo team, I introduced a bug in the last release
which made resizing not give any feedback. This is now fixed.
3.4.7:
* Fully updated Czech, Simplified Chinese, Traditional Chinese, German,
French, Hungarian, Norwegian, Vietnamese, Dutch, Swedish, Finnish,
Brazilian Portuguese, Japanese and Portuguese translations
* Partially updated Spanish translation
* Add an example of the "force" option for the per-app placement options to
the default rc.xml file
* Add a new xdg-autostart script. This will eventually end up in the PyXDG
distribution hopefully, but it is included in Openbox for now. This script
runs things based on the freedesktop.org autostart specification. You can
have it run GNOME, KDE, ROX, or XFCE specific things if you want. The
new default system-wide autostart.sh script runs it automatically
* Update the default menu.xml to include a lot of common apps
* Fix white font shadows (negative shadowtint)
* Update the autostart.sh to find gnome-settings-daemon correctly, as the
GNOME people have moved it to libexec
* Fix focus possibly getting stolen when using the Focus action
* Drastically speed up rendering of Vertical and SplitVertical gradients
* Speed improvements also for Horizonal and Pyramid gradients
* Add new theme options, menu.overlap.x and menu.overlap.y options, that let
you independently control the horizontal and vertical position of submenus
* Change _NET_ACTIVE_WINDOW messages to not change the current desktop, but
to bring the window to the current desktop instead. This is the industry
standard policy
* Use the pretty new openbox.png icon as the default window icon
* Allow matching per-application rules to windows by their window type
(normal, dialog, splash, etc). The default rc.xml has more details
* Add new Openbox-themed prompt windows. Use these prompt windows to ask
before killing off windows that aren't responding. This also means we
don't need to ping every window constantly forever
* Add a new <prompt> option to the Execute action. If this is set to a
string, a dialog will be shown with that string in it and "yes"/"no"
buttons. The command to be executed will only be run if the user selects
"yes" in the dialog
* Add a new <prompt> option to the Exit action, which is a boolean (not a
string). When true, Openbox will show a dialog confirming if you want to
exit. The default is to show the prompt
* Reduce Openbox's memory footprint and speed up rendering through the use
of a new icon cache, so that Openbox only needs to keep 1 copy of an icon
when 100 different windows share it
* Make Openbox menus have the "menu type" hint for compositors to see and use
* Fix the MoveResizeTo action for negative coords (opposite edges)
* Fix key bindings getting lost if multiple bindings at the same level could
not be translated (Fixes VMWare causing Openbox keybindings to stop
working)
* Fix the resize popup box for terminal windows with a base size of 0 (show
the right size values for urxvt terminals)
* Fix some off-by-one bugs with the edge growing/shrinking code
* Add new theme options for menu line separators: menu.separator.color,
menu.separator.width, menu.separator.padding.width,
menu.separator.padding.height
* Add xfce-mcs-manager to the default autostart.sh, and run it automatically
when gnome-settings-daemon is not present to have GTK apps inherit settings
from the XFCE configuration tools
* Make the send-to-desktop menu in the client-menu indicate which is the current
desktop for omnipresent windows, and don't close it if just toggling
omni-presence when ctrl-clicking
* Add a new SessionLogout action that logs out through the session manager,
when running Openbox within a session manager such as within an
GNOME/Openbox or KDE/Openbox session. The action includes a <prompt>
option which is similar to the Exit action's
* Add a new gdm-control command that lets you control gdm from within an X
session. The gdm-control lets you change GDM's behaviour for when you end
the current session. For instance, you can tell GDM to reboot, and
then immediately log out of the current session, and the computer will be
rebooted
* Show an information dialog when an error occurs for Openbox, such as when
the Execute action fails or when XML syntax errors are present in the
configuration files
* When making a window very narrow, don't draw buttons to the right of the title
on top of the ones on its left.
3.4.6.1:
* Updated Clearlooks theme
* Add the force="yes/no" option for the per-app settings' <position> tag
* Raise and focus modal children and their direct parents together, improved
usability with direct modal transient windows
* Fix crash when using <raise> for NextWindow and there are no windows
to move focus to
* Add the <manageDesktops> option in the rc.xml <menu> section, which toggles
the "Manage Desktops" section appearing in the combined-client-list-menu
* Fix for menu headers showing the wrong text
* Fix for the <focusLast> behavior
* Treat modal direct children as one window with their parent consistently
3.4.6:
* Added Basque translation
* Updated French, Vietnamese German, Simplified Chinese, Russian, Portuguese,
Brasilian Portuguese, Norwegian, and Finnish translations
* New Clearlooks theme, updated by David Barr
* Updated the previous Clearlooks theme, and renamed it to Clearlooks-3.4
* Allow dialog type windows to go fullscreen (Fixes Kpdf)
* Remove the extraneous top border for undecorated windows while maximized
* Fixes for keyboard modifiers (Alt-tab dialog getting stuck on screen for
some users)
* Automatically catch changes to the keyboard map and reconfigure the key
bindings on the fly
* Fix focus moving incorrectly sometimes with focus under mouse enabled
* Make default configuration focus the desktop when you right click
* Add the <bar> and <raise> options for all window cycling actions, allowing
you to have your target window temporarily raised above all others, and to
turn the focus target indicator bar off
* Improve the LastDesktop action to not remember desktops you skipped across
* Ignore mouse clicks that are made on override-redirect (unmanaged) windows
* When opening a menu with a key binding, don't use the key binding to run
something in the menu
* Add a <monitor> option for window placement, which gives you the option
to place new windows on the active monitor, or the monitor where the mouse
is, instead of on any monitor (for xinerama multihead setups)
* Add options for placing the window move/resize coordinate popup window in
a fixed position on screen, rather than relative to the window being
moved or resized
* Prevent the dock from auto-hiding completely offscreen if the theme has
no borders for it
* New icon
* Fix race condition when running things that want to grab the keyboard
(e.g. gnome-panel-control --main-menu)
* When dialog windows ask to not appear in the taskbar, still give them focus
in normal ways (fixes new GNOME session logout dialogs)
* Fix bug with resizing corners on certain parts of the window frame
* Ping applications to tell when they are running or have become frozen.
Show a [Not Responding] message in the title bar of windows which are
frozen.
* When closing a window which is [Not Responding], kill the window's process
if it is running on the same machine as Openbox. Otherwise, just
disconnect
the window from the X display. A second attempt to close a [Not
Responding]
window will kill it forcefully (kill -9).
* Fixes for internal timers
* Add a <wmclass> option for the execute action's startup-notification. This
lets you tell Openbox that the application will map a window with the
specified class - for applications that do not support startup-notification
natively.
* Fix for empty dock taking up space onscreen after a reconfigure
* Reduce Openbox's additional memory footprint per-window and per-menu
* Faster horizontal gradient rendering
* Don't deiconify windows that aren't allowed to be directly iconified on
restart (eg toolbars), as they can be iconified by other means
* Improve support for fullscreen windows in xinerama (TwinView) and
multiple-screen setups
* Add a --config-file command line option, to specify an alternate
configuration file path
3.4.5:
* Added Hungarian translation
* Updated Finnish, Russian, German and French translations
* Fixed some very minor memory leaks
* Hide the desktop popup when showing the focus popup
* Fix a crash when trying to access the More... menu of
client-list-combined-menu
* Fix the coordinate popup only showing up on the first monitor in xinerama
* Add --exit to exit the currently running openbox instance
3.4.4:
* Updated Traditional Chinese translation
* Updated Norwegian translation
* Fix for MoveToEdge skipping edges sometimes
* Let you specify the vertical and horizontal padding independently in themes
* Fix so that if you select an omnipresent window on another desktop in the
client list menus, it will go to that desktop
* Make the GrowToEdge action shrink once there is no more room to grow,
similar to in 3.4.2, but shrinking to edges as well
* Move the Send To and Layers submenus to the top of the client menu
* Fix race causing omnipresent windows to lose focus when switching desktops
very quickly
* Don't focus new windows on other desktops if they aren't related to the
currently focused window
* Add corner resizing areas in the inner client border (Fixes themes such
as Onyx)
* New focus stealing prevention that is smart and not intrusive and not
annoying
* Revert a small change in 3.4.3 that caused windows to be placed funny in
Smart placement when there was a dock or something on the side of the
screen
* Show a notification when switching desktops
* Fix for delayed focus-follows-mouse interrupting move/resize or menus
* Make screen edge warp keep warping without having the move the mouse 1
pixel
* Fix for resizing terminals in the top/left sides getting a little confused
* Fix to keep oldschool (Non-EWMH) fullscreen windows from being moved and
resized inside of the struts (Fixes Acroread)
* Accept the <command> option for the Restart command, similar to the Execute
action
* Don't make clicking on dock apps sometimes act like clicking on the root
window (Don't propogate button events up)
* Fix a bug introduced in 3.4.3 which caused the Windows key as a modifier
for bindings to not work properly
* Let windows skip across monitors in a Xinerama setup when using MoveToEdge
or Shift-arrow in an interactive move
* Make move and resize take the dock into account for resistance
* Raise new windows when it makes sense, when they aren't being focused
* Change default config to use click events for mouse wheel bindings instead
of presses
3.4.3:
* Add Ukrainian translation
* Updated translations:
- Japanese, Dutch, Polish, Italian, Estonian, German, Portuguese,
Vietnamese, Finnish, Czech, Arabic, Spanish, Swedish, French
* Improve focus fallback - don't fallback to windows you can't focus cycle
(Alt-Tab) to
* Don't show the client border for undecorated windows when keepBorder is on,
just the outer border
* Some improvements in the smart placement to help it find a place more
often. This needs more work still.
* Don't focus windows that appear under the mouse in mouse-focus mode unless
underMouse is enabled
* Don't move focus when the window under the pointer iconifies unless
underMouse is enabled
* Respect min/max window sizes when a window is fullscreened or maximized.
This fixes problems experienced with maximizing vnc windows
* Don't XUngrabKeyboard unless we need to
* Correct calculations for the menu header width, so that they are not
ellisized unnecessarily
* Advanced support for partial struts. When you maximize a window it will
now only use the struts it needs to. This can greatly improve
xinerama functionality.
* Fixes for how the dock is placed in certain positions on screen (off by 1
errors)
* New default bindings:
- don't unshade when clicking on the titlebar
- raise when unshading with the scrollwheel
- lower when shading with the scrollwheel
* Don't show the top resize area in the titlebar when a window is shaded
* Optimize rendering of window decorations
* Optimize splitvertical gradients - no more malloc/free during render
* Let the theme specify all colors for a splitvertical gradient with the new
.splitTo theme elements
* Improve decorations for maximized windows. Don't draw the side borders in
the titlebar.
* Don't resist against desklet windows (below layer + skip taskbar)
* New actions for dynamically adjusting your desktop workspaces:
- AddDesktopLast, RemoveDesktopLast
- AddDesktopCurrent, RemoveDestopCurrent
* New <center> option for smart placement (default is on)
* Fix MoveToCenter in Xinerama (TwinView) setups
* Let you lower a window without lowering its children or siblings
* Don't set the default Openbox icon on child windows, let them inherit the
icon from their parents
* Fix Onyx themes - fade out disabled buttons
* Don't auto-resize windows to fit on screen if they are UserSpecified
Size or Position
* Don't activate windows which raise themselves anymore. It was a nice
thought, but it caused too much problems
* Rewrite of the actions subsystem
* Removed deprecated actions:
- ShowDesktop, UnshowDesktop (Use ToggleShowDesktop)
- ResizeRelativeVert, ResizeRelativeHorz (Use ResizeRelative)
* Combined the MoveFromEdge* actions with MoveToEdge* actions, and removed
the MoveFromEdge* action names.
* Switch desktops when moving a window and you drag it to the edge of the
screen (added the <screenEdgeWarpTime> option for this)
* Add actions to add/remove the last desktop in the client list menus
* Use startup notification when launching ObConf in the default root menu
* Remove the desktop switching dialog, as it confuses people and they don't
know how to turn it off to switch desktops instantly. Some other
incarnation may return in the future.
* Add optional <finalactions> option for NextWindow, PreviousWindow,
DirectionalFocus*, and DirectionalTarget* actions
* Don't focus new helper windows unless they are alone in their group. This
fixes gucharmap
* Fancy keyboard window moving:
- Shift-arrow will move the window to the next edge
- Control-arrow will move the window by only 1 pixel
- Arrow will move the window by a larger number of pixels
* Fancy keyboard window resizing:
- The first arrow will choose an edge to resize (then you can grow or
shrink the window on that edge)
- Hitting an arrow perpendicular to your selected edge will choose a
different edge to resize
- Shift-arrow will grow/shrink the window to the next edge
- Control arrow will grow/shrink the window by only 1 pixel
- Arrow will grow/shrink the window by a larger number of pixel
* Timeout when synchronously resizing a window so you can still resize busy
or dead application windows
* Let you specify keyboard shortcuts in your root menus with _. Such as
label="XTe_rm" would make 'r' the shortcut key.
* Fixes for placing windows with per-app settings:
- you can now place windows relative to any edge of the screen instead of
only the top left. (-0 uses the far edge, +0 uses the near edge. You can
use --0 and +-0 to specify negative numbers.)
- fix bug with windows being placed far off-screen occasionally
- allow you to place windows partially outside of the screen
- let per-app settings override program-specified positions (but not if it
is user-specified)
* Add user-specified margins to the configuration file
* Fix for transient windows in groups with transient windows of the group
transients. That wasn't supposed to be legible. i.e. 2 group transients
and 1 direct transient for one of the group transients.
* Don't include child/parent windows in tests for being occluded or occluding
other windows, since you can't raise/lower above/below them. This fixes
the raiselower action for windows which have children.
* Reduce the size of the middle gradient in splitvertical gradients. This
makes the split harder than it was in 3.4.2
* Don't include debian/ dir in releases
* Add resize bindings for the edges to the default hardcoded bindings
* Fix focus cycle indicator positioning for some windows (i.e. OpenOffice)
* Add the MoveResizeTo action. This is very xinerama aware! It also lets
you move a window to any edge of any screen.
* Make actions that look for edges include the dock's edges (e.g. MoveToEdge)
* New preferred option for the Execute action is <command> instead of
<execute> but the old one will still work.
* Fix for moving windows partially offsceen causing them to jump far away
* Fix for windows which are not on any monitor, to keep them on screen
partically too
* Require libstartupnotification 0.8 in configure (we use stuff that was not
around in some earlier versions)
* Grab the server when mapping windows to avoid race conditions in other
programs (getting MapNotify before you are visible)
* Handle case gracefully when ConfigureRequent for restacking specifies
a siblig which we aren't managing
* Use KeyRelease to run things from Openbox menus, so that the release
does not go to the focused window (causing the new window to not get
focus)
* Add new actions for controlling window decorations:
- Decorate, Undecorate
* Fix so that the values for per-app settings are not case sensitive
* Fix crash with very small windows
* Fix resize resistance for windows with aspect ratio limits
* Let you resize windows with aspect ratio limits in the vertical directions