Dana Jansens [Thu, 14 Feb 2008 09:47:49 +0000 (10:47 +0100)]
Introducing the icon cache.
If an icon is the same as one in the cache, then it uses that one.
icons of different sizes (from the same client) are linked together into
one, and resizes of icons are cached and linked to all the various sizes.
so you only need one icon in memory for all your terminals now. ya!
Mikael Magnusson [Thu, 14 Feb 2008 14:46:02 +0000 (15:46 +0100)]
put the char member at the bottom of the struct so that it doesnt mess up alignment for the other members (assuming the compiler doesn't pad the struct appropriately anyways)
Dana Jansens [Tue, 12 Feb 2008 03:45:27 +0000 (22:45 -0500)]
don't ping everything all the time. yay. ping when you close, and if it doesn't reply then show the kill prompt. also show a more correct prompt for windows connecting from non-local machines - ask to disconnect them from the X server.
Dana Jansens [Thu, 7 Feb 2008 06:03:05 +0000 (01:03 -0500)]
if a prompt is already showing and you try show it again, then make it active. in the "kill this?" prompt use the window's original title without any of the openbox-appended-ness
Mikael Magnusson [Thu, 14 Feb 2008 14:46:02 +0000 (15:46 +0100)]
put the char member at the bottom of the struct so that it doesnt mess up alignment for the other members (assuming the compiler doesn't pad the struct appropriately anyways)
Mikael Magnusson [Thu, 14 Feb 2008 09:51:35 +0000 (10:51 +0100)]
Merge branch 'backport' into work
Diffing against the old work branch where most of the changes
in backport were cherry-picked from indicates this should be
alright. (0de9097017d4d1991388a35e380a57dc1135b431)
Dana Jansens [Sun, 10 Feb 2008 21:49:16 +0000 (16:49 -0500)]
use memcpy's to make splitvertical gradient much faster - using log n memcpy's is much quicker than setting a pointer value n times
Here are some profiling results. splitvertical1 is the original code, splitvertical2 is some slight improvements in locality for it, and splitvertical3 is the new O(log n) memcpy code
i also tested this with 'time' to draw 1000 gradients, and the new code used approximately half the user time, and finished 10 seconds quicker. so yeah, it's magical and works well.
Dana Jansens [Sat, 9 Feb 2008 23:48:56 +0000 (18:48 -0500)]
Make a pending ReplayPointer happen before moving/showing/hiding a window in an action.
Commit c907f5af4ad16b1 broke kdesktop again, so we have to fix it at an even finer level.
add an override_redirect InputOnly window utility.
The intent was the following:
This is mostly a copy of override.c, it lets you map a small window
(1x1 at 0,0 by default) that openbox will treat like the root window,
useful for scrolling to change desktops over fullscreen and maximized
windows.
Since then openbox has learned to ignore other's override redirect windows
but I think it might still be useful to have this util.
Dana Jansens [Thu, 14 Feb 2008 09:47:49 +0000 (10:47 +0100)]
Introducing the icon cache.
If an icon is the same as one in the cache, then it uses that one.
icons of different sizes (from the same client) are linked together into
one, and resizes of icons are cached and linked to all the various sizes.
so you only need one icon in memory for all your terminals now. ya!
Dana Jansens [Tue, 12 Feb 2008 03:45:27 +0000 (22:45 -0500)]
don't ping everything all the time. yay. ping when you close, and if it doesn't reply then show the kill prompt. also show a more correct prompt for windows connecting from non-local machines - ask to disconnect them from the X server.
Dana Jansens [Sat, 9 Feb 2008 23:48:56 +0000 (18:48 -0500)]
commit d9d580e0382 broke kdesktop again, so we have to fix it at an even finer level. make a pending ReplayPointer happen before moving/showing/hiding a window in an action
Mikael Magnusson [Mon, 10 Dec 2007 03:28:55 +0000 (04:28 +0100)]
Improve menu behaviour when clicking on grandparents.
Some time ago the menus were changed to not trigger on mouseover on a grandparent or higher
so that you wouldn't lose a carefully navigated menu structure. Clicking on an item opens
it though. It used to be on ButtonRelease but now it is on ButtonPress. Additionally, a Press
now causes grandchildren to be closed when clicking on already selected parts of the hierarchy.
Dana Jansens [Thu, 7 Feb 2008 06:03:05 +0000 (01:03 -0500)]
if a prompt is already showing and you try show it again, then make it active. in the "kill this?" prompt use the window's original title without any of the openbox-appended-ness