Dana Jansens
067776e783
base rudeness on if they have a strut or not
2003-07-28 19:56:52 +00:00
Dana Jansens
4d82dd3017
make the new placement restrictions not affect !normal windows like panels
2003-07-28 19:53:54 +00:00
Dana Jansens
e6486bff08
use plugin_open_reopen not plugin_open_full
2003-07-28 19:50:21 +00:00
Dana Jansens
742106511f
hover theme elements for window titlebar buttons
2003-07-28 19:21:45 +00:00
Dana Jansens
950516124f
make those apps stay/map on screen!! fuck stupid apps. thats right im talking to you mozilla and you too java.
2003-07-28 18:06:55 +00:00
Dana Jansens
d8d2fd7148
make things compile again. hover does not work yet.
2003-07-28 16:24:20 +00:00
Dana Jansens
09f178aa54
use the macro
2003-07-28 16:10:06 +00:00
Dana Jansens
eb1fb5580e
keep apps from moving/maping their titlebar underneath left/top panels
2003-07-28 07:19:47 +00:00
Dana Jansens
7da335f944
set teh clone comamnd
2003-07-28 05:32:39 +00:00
Dana Jansens
7b00edb343
use char not a long, since we're telling the SM that its 1 byte lone
2003-07-28 05:29:58 +00:00
Dana Jansens
4d7a7d9d4c
save the commands on startup
2003-07-28 05:20:50 +00:00
Dana Jansens
f531b18a44
use the path properly for the session file
2003-07-28 04:53:51 +00:00
Dana Jansens
ecab6fe3c8
use teh save file not the session id
2003-07-28 04:45:45 +00:00
Scott Moynes
73374510cc
demand load plugins from the menu
2003-07-28 03:41:28 +00:00
Scott Moynes
f37a919095
Menu stuff.
...
Testing may begin.
2003-07-28 02:52:56 +00:00
Scott Moynes
b8715ba309
Close menu on click if outside the menu.
...
I think, haven't tested.
2003-07-26 19:58:22 +00:00
Scott Moynes
702995014a
more fixes
2003-07-26 14:48:10 +00:00
Dana Jansens
364dfe10ab
dont stack groups together
2003-07-26 06:49:33 +00:00
Scott Moynes
3c92311b3c
Some menu updates.
...
Don't talk to me about menus.
2003-07-26 06:02:58 +00:00
Dana Jansens
11cde9683d
add client_search_transient which searches the tree from a client down for a client
2003-07-25 13:25:09 +00:00
Dana Jansens
1afc4180d7
stacking fixes
2003-07-25 06:27:37 +00:00
Dana Jansens
04a44af3c4
save and load the session save file, though its data is not used yet!
2003-07-24 18:19:26 +00:00
Scott Moynes
d51702affa
I had a commit message but my commit got stepped on so fuck it.
...
No one cares what I think anyway.
If the menu navigation isn't EXACTLY FUCKING RIGHT I WILL REMOVE IT
AND SOME OTHER POOR FUCK CAN PUT UP WITH ALL THE FUCKING BULLSHIT.
2003-07-24 06:10:55 +00:00
Dana Jansens
5be0a82a35
use ob_debug for any debug printing and only display the output when its a debug build or when --debug is passed to it
2003-07-24 06:02:38 +00:00
Dana Jansens
b6e3e1bc7e
unhilite the entry for the submenu when it is closed
2003-07-23 03:58:50 +00:00
Scott Moynes
0e69ae2b96
* Change xml parsing to pass the parent node, rather than the first
...
child.
* Add x,y co-ordinates on showmenu action so we can place menus on keypress.
2003-07-23 01:45:44 +00:00
Dana Jansens
845833226b
add the --replace command line option, and support for the WM_Sn selection
2003-07-22 18:09:41 +00:00
Dana Jansens
6a7d4de789
add the MANAGER atom.
...
allow prop_message to be used with a user-defined mask instead of only with the NetWM mask
2003-07-22 18:06:45 +00:00
Dana Jansens
a057d14c8b
stop shownig the desktop when a new window maps
2003-07-22 16:50:23 +00:00
Dana Jansens
56527d41b7
add a func to find a menu entry from a submenu.
...
keep menu entries highlighted while they have their submenu open
2003-07-22 16:41:08 +00:00
Dana Jansens
31cdb95963
add a func to find a menu entry from a submenu
2003-07-22 16:40:48 +00:00
Dana Jansens
ea6258ce0f
add a menuOverlap property to themes, and use it in the submenu placement
2003-07-22 16:14:42 +00:00
Scott Moynes
ea53850762
Keyboard navigatable menus
2003-07-21 23:19:03 +00:00
Scott Moynes
e9a8e272c0
Fix a couple memory leaks.
2003-07-19 23:58:45 +00:00
Scott Moynes
22ff8c587d
Menu parsing updates for plugins.
...
FIFO menus are the only plugin that takes advantage of this.
Example:
<menu id="root" label="Openbox 3">
<menu id="fonk" label="fonk" plugin="fifo_menu">
</menu>
</menu>
This creates a FIFO ~/.openbox/fifo_menu/fonk to which you can send
menus to. The menus sent to it must be like
<fifo>
<item>
etc...
</fifo>
I think. If my memory serves me right.
It is all hideous, but I just wanted to experiment and see if it was
possible.
2003-07-17 01:40:27 +00:00
Dana Jansens
4c1641bfc7
simple code cleanup
2003-07-12 06:17:13 +00:00
Dana Jansens
9d7244e646
when a transient maps on another desktop, give it focus when it deserves it
2003-07-11 15:32:03 +00:00
Dana Jansens
d3454e326f
add --g-fatal-warnings
2003-07-11 02:51:59 +00:00
Dana Jansens
1546430f12
fix a seggie i introduced, going too far in the dockapps list
2003-07-11 02:51:03 +00:00
Dana Jansens
130a42710c
move to the desktop of the activated window
2003-07-11 00:08:43 +00:00
Dana Jansens
81af5a8b0c
add disabled buttons, instead of now showing buttons at all when they wont do anything, now show a disabled button instead. this severely breaks compatibility with blackbox themes since there is no good way to automiatically create a disabled button that i can think of, so if they dont exist in the theme you get black and white for the button.
...
when a window cant be resized, its handle is not removed but its grips are.
change allowing the user to disable individual decorations as that is overkill,
instead allow a toggle through the client.decorate boolean.
2003-07-10 23:27:02 +00:00
Dana Jansens
112629400b
simply startup/shutdown
2003-07-10 21:13:35 +00:00
Dana Jansens
3044e87131
sync is in unistd.h
2003-07-10 19:40:22 +00:00
Dana Jansens
a95dc346fe
prefix and capitalize ObMenu ObMenuEntry and ObMenuEntryRenderType
...
make the ObMenuEntryRenderType a standard enum instead bitflags
2003-07-10 19:27:12 +00:00
Dana Jansens
1ffc7fa9ec
move ob_pointer_pos to screen_pointer_pos
2003-07-10 19:07:58 +00:00
Dana Jansens
bddbe94328
make ob_state a function so it cant be changed outside of openbox.c
2003-07-10 19:06:00 +00:00
Dana Jansens
35418ca0fc
remove the ob_root var, its redundant of what Xlib already provides
2003-07-10 19:01:41 +00:00
Dana Jansens
ec908528cf
use gint
2003-07-10 18:54:54 +00:00
Dana Jansens
a46b4ee434
ob_remote has been killed, remove ob_sync from the public header, its only used internally
2003-07-10 18:53:39 +00:00
Dana Jansens
6c39d26803
the --rc arg and rc_path var wasnt even being used so just rm it
2003-07-10 18:52:08 +00:00
Dana Jansens
eea43e6488
make the ob_restart/shutdown stuff static vars and expose them only through functions ob_restart_other(), ob_restart() and ob_exit()
2003-07-10 18:50:47 +00:00
Dana Jansens
452f3f8aae
remove useless include
2003-07-10 18:44:49 +00:00
Dana Jansens
d1d84711a2
replace the focus_backup with the screen_support_win, we dont need 2 offscreen windows.
2003-07-10 18:44:27 +00:00
Dana Jansens
120623d34e
use the xerror stuff to trap errors instead of dupliacted the effort here
2003-07-10 17:11:07 +00:00
Dana Jansens
85112c4d08
prefix the Timer->ObTimer and TimeoutHandler->ObTimeoutHandler shitz
2003-07-10 17:06:30 +00:00
Dana Jansens
122d55fbad
prefixing and capitalizing the StackLayer -> ObStackingLayer enum.
...
less includes in headers for less rebuilding on changes
2003-07-10 17:03:05 +00:00
Dana Jansens
59f318e897
prefix and capitalize the ObFocusFallbackType enum
2003-07-10 16:42:42 +00:00
Dana Jansens
5c2e4cced4
use the ObOrientation enum instead of a horz bool for configuring the dock's orientation
2003-07-10 16:38:45 +00:00
Dana Jansens
d206303a9f
prefixing for the dock. use ObDirection instead of dupliacting it in another enum for the dock's placement
2003-07-10 16:29:40 +00:00
Dana Jansens
33a2cdbeb9
prefixing for the Popup->ObPopup struct
2003-07-10 15:22:36 +00:00
Dana Jansens
06d3487d49
dont need client.h in this header
2003-07-10 07:17:05 +00:00
Dana Jansens
7d943a950e
prefixing and capitalization for the Frame->ObFrame struct and the Context->ObFrameContext enum and its constants.
2003-07-10 07:16:19 +00:00
Dana Jansens
5be23ec5a4
prefix Group to ObGroup
2003-07-10 07:03:40 +00:00
Dana Jansens
e4be1f860b
prefix TRAN_GROUP to OB_TRAN_GROUP
2003-07-10 07:01:13 +00:00
Dana Jansens
4736c257a5
prefix and capitalize some more constants/enums in client.h (Function -> ObFunctions and WindowType -> ObClientType)
2003-07-10 06:59:39 +00:00
Dana Jansens
2477a38d2f
rename the Client struct to ObClient
2003-07-10 06:38:42 +00:00
Dana Jansens
b42ef7362c
add a mwm.h for the mwm hint structure and flags.
...
use proper prefixing and capitalization for the new mwm stuff.
2003-07-10 06:23:38 +00:00
Dana Jansens
276b2be581
add misc.h with some standard enumerations with proper prefixing and capitalizations.
...
use the new enums throughout.
provide keycodes and cursors through ob_cursor and ob_keycode functions, which use the new misc.h enums for picking the cursor and keycode.
2003-07-10 06:18:47 +00:00
Dana Jansens
6357583c39
rename 'xinerama' stuff to 'monitors' to be more generic and descriptive.
2003-07-10 05:44:23 +00:00
Dana Jansens
416b9d5f5f
speed up pick_group_windows too
2003-07-10 05:35:22 +00:00
Dana Jansens
38d3cad249
make pick_windows waaaay faster
2003-07-10 05:33:51 +00:00
Dana Jansens
7f19b99a67
remove the use of the BINARY define. kill a compiler warning.
2003-07-10 04:38:02 +00:00
Dana Jansens
f0b09e265a
allow restacking of transients above one another
2003-07-10 04:37:26 +00:00
Dana Jansens
bd15aab855
put the transient's title before the parent's in the focus popup
2003-07-10 04:36:42 +00:00
Dana Jansens
9cc08630ca
remove the xinerama active boolean, just count the extension as not present if it is not active
2003-07-10 04:36:17 +00:00
Dana Jansens
0719843c68
add client_search_top_transient.
...
keep transients all on the same desktop together. use client_search_top_transient where possible in client.c
2003-07-10 04:34:18 +00:00
Dana Jansens
d2a628a487
add ob_debug for printing stuff only when debug is enabled
2003-07-10 04:32:33 +00:00
Dana Jansens
2abbf01125
update the build system, using a single Makefile.am for a sexyass non-recursive make. booyah!
2003-07-10 04:31:05 +00:00
Dana Jansens
425b1734c9
move the gettext header out to the root source dir
2003-07-10 04:30:15 +00:00
Dana Jansens
5d1718b81b
use --foo instead of -foo for cmd line arguments
2003-07-05 17:22:42 +00:00
Dana Jansens
c6945c1397
rename the raise and lower functions. raise is claimed by signal.h already
2003-07-02 16:11:04 +00:00
Dana Jansens
bbc2fa53ce
set te strut smaller when autohide is on
2003-06-30 23:11:58 +00:00
Scott Moynes
19df0324a6
Makes a simple click not so accidently annoying by making it not
...
execute a menu action if nothing is highlighted.
2003-06-30 23:06:50 +00:00
Dana Jansens
1a3bcbddbc
messed up the indexes while finding the combined size of all xineerama heads
2003-06-30 05:19:42 +00:00
Dana Jansens
e2b245dcad
oops, i want the max edges to find the full area
2003-06-30 05:10:51 +00:00
Dana Jansens
f544273eaf
the prop_get_strings_locale function looked for a utf8 typed property
2003-06-29 18:37:51 +00:00
Dana Jansens
1cacfa85d0
add some comments and asserts to make sure I don't ever add this bug again
2003-06-29 17:29:10 +00:00
Dana Jansens
dd80df31c4
create the popup's window before adding it to the stacking list, so that it is stacked properly and doesnt wreck everything
2003-06-29 17:18:19 +00:00
Dana Jansens
2f9efb384d
prepare for alpha1 release.
...
make 'make dist' work.
2003-06-29 08:47:24 +00:00
Dana Jansens
2fa7129ca3
waste of energy in stacking_add, and it even caused bugs. woops.
2003-06-29 04:00:43 +00:00
Scott Moynes
71b7b043a2
Handle menu events a little better: don't bother updating a submenu on
...
mouseover if it is already open, and call update on menus, even if
they aren't marked as invalid.
2003-06-29 01:44:31 +00:00
Dana Jansens
1ff042579e
use fprintf not g_message in the signal handler. no mallocing allowed.
2003-06-28 19:28:46 +00:00
Dana Jansens
52b99477db
set the values of the array at teh right indexes
2003-06-28 18:30:11 +00:00
Dana Jansens
7837faa340
fix memory bugs
2003-06-28 18:24:34 +00:00
Dana Jansens
b23fa507a8
put group members above the window when lowering it
2003-06-28 17:28:48 +00:00
Dana Jansens
4695749aab
set the stacking list when stacking changes
2003-06-28 17:21:42 +00:00
Dana Jansens
8a049a6d27
dont need to raise after adding
2003-06-28 16:16:45 +00:00
Dana Jansens
05a850b88e
build 'openbox' instead of 'openbox3'.
...
add the openbox.desktop file for gnome compat.
2003-06-27 13:01:31 +00:00
Dana Jansens
1821fb49dd
set "Openbox" as the name no "Openbox3"
2003-06-27 13:01:04 +00:00
Dana Jansens
7e777c7c20
add a .desktop file which gets installed for gnome
2003-06-27 13:00:25 +00:00
Dana Jansens
ea8c154ecf
add the openbox binary
2003-06-27 13:00:05 +00:00
Dana Jansens
083afe5e2e
add a call to g_set_prgname
2003-06-27 12:10:17 +00:00
Dana Jansens
c170d2f717
stacking changes, its more like the old code without being shitty and with support for raising groups at a time.
2003-06-27 05:42:03 +00:00
Dana Jansens
a9bc09161f
core when the list gets out of order
2003-06-27 04:23:05 +00:00
Dana Jansens
34e819738b
xinerama support
2003-06-27 04:20:30 +00:00
Dana Jansens
e846063fa8
4 space indents
2003-06-27 00:03:43 +00:00
Dana Jansens
f6b19a1dc4
return true when ungrabbing so that it can ungrab them all on shutdown
2003-06-26 23:33:29 +00:00
Dana Jansens
81cf4699df
set ret to true when grabbing and we alerady have it grabbed
2003-06-26 23:31:20 +00:00
Dana Jansens
22112d2b4e
check that extensions_vidmode is set before trying to use the vidmode functions
2003-06-26 16:32:40 +00:00
Dana Jansens
d3dd25a55c
return FALSE if a grab fails
2003-06-26 07:58:25 +00:00
Dana Jansens
da24f9156b
set the desktop hint when the window already has a hint but its out of range
2003-06-26 07:30:19 +00:00
Dana Jansens
0423b057ed
clear the over item in the menu when executing shit
2003-06-26 07:22:29 +00:00
Dana Jansens
9c8ee186d9
add NUM_STACKLAYER, fix some comments that dont apply
2003-06-26 07:08:16 +00:00
Dana Jansens
0443796e40
remove unused variable
2003-06-26 07:07:59 +00:00
Dana Jansens
ba76ffaa2b
remove/add instead of raising to put a window into a new layer
2003-06-26 07:07:42 +00:00
Dana Jansens
794ce0e083
new stacking code that doesnt suck ass to look at, woot
2003-06-26 07:05:27 +00:00
Dana Jansens
e39762b05b
use the minsize to keep the stuff ni the dock off of the bevel edges etc
2003-06-26 05:46:06 +00:00
Dana Jansens
549627402c
only render if there was an over existing
2003-06-25 18:46:51 +00:00
Dana Jansens
7af1c6a9c3
menus grab the keyboard and pointer, thus making only one menu visible at a time, and making them act like gtk menus and * menus do, where you can click and drag and release to select something as well as click-release to elave it open while you search around the menu
2003-06-25 18:43:42 +00:00
Dana Jansens
4b90b241ce
grab all motion events for pointer grabs
2003-06-25 18:34:28 +00:00
Dana Jansens
a385702349
position submenus correctly horizontally
2003-06-24 19:33:24 +00:00
Dana Jansens
b61a41c6b1
menus were too short by a border width
2003-06-24 19:22:41 +00:00
Dana Jansens
6dd3ee7271
check to make sure the window is on screen *after* positioning it
2003-06-24 19:19:06 +00:00
Dana Jansens
76aeb9b231
add a simple menu parser.
...
while menu parsing, the theme does not exist so we can't do any theme stuff while creating menu stuff, so put that off for later, i.e when the menu is shown.
2003-06-22 08:32:35 +00:00
Dana Jansens
197988af67
reorder startup so menu goes before config parsing
2003-06-22 08:29:40 +00:00
Dana Jansens
069e9607fa
add decoration state to the frame struct. make client_configure adjust the frame if the decorations do not match between the client and the frame, so that when they change it can send a configurenotify to the client.
2003-06-21 18:59:35 +00:00
Dana Jansens
d085756572
make client_reconfigure a non-user-type client_configure
2003-06-21 18:29:42 +00:00
Dana Jansens
75b23047d6
strdup the exec path cuz it gets freed by the time we restart otherwise
2003-06-21 18:14:42 +00:00
Dana Jansens
77062863f3
moveresize messages are not user-requests
2003-06-21 18:10:04 +00:00
Dana Jansens
7e83fa0866
remove debug print
2003-06-21 18:08:26 +00:00
Dana Jansens
716477fc40
send teh configure event to client on user-requested final configures even if not moved, cuz usualy the final isnt sent with a change, but just to end the move process.
2003-06-21 17:28:36 +00:00
Dana Jansens
bab8b41f5c
always use the session id from the session manager when setting the restart property
2003-06-21 16:37:39 +00:00
Dana Jansens
4cf23f53e7
add -sm-disable option
2003-06-21 09:51:15 +00:00
Dana Jansens
7f2550e0ce
only show -sm-client-id in the help when session management is build in
2003-06-21 09:40:15 +00:00
Dana Jansens
e6739af282
session management works, and it can resume with its old ID, so it works with gnome-session
2003-06-21 09:38:51 +00:00
Dana Jansens
373a4584d6
make session management optional
2003-06-21 08:45:25 +00:00
Dana Jansens
9befe65a65
set the required properties so that session managers see openbox
2003-06-21 08:03:56 +00:00
Dana Jansens
b3e9fea103
add libSM *client* support, so we should work with gnome-session now!
2003-06-21 05:31:54 +00:00
Dana Jansens
c100b72c5d
more namespacing with Rr*
2003-06-21 02:26:50 +00:00
Dana Jansens
4541959b8c
kill a warning
2003-06-21 02:24:18 +00:00
Dana Jansens
dbe2851b91
more namespacing to Rr*
2003-06-21 02:15:13 +00:00
Dana Jansens
10232a436a
fix a warning
2003-06-21 02:14:53 +00:00
Dana Jansens
092616de9a
rename pixel32/16 to RrPixel32/16
2003-06-21 02:00:42 +00:00
Dana Jansens
b1f5555218
put the render theme into a struct
2003-06-21 01:53:26 +00:00
Dana Jansens
a4a0cb7829
fixed to accomodate the changes to the render/ API.
2003-06-21 00:42:47 +00:00
Dana Jansens
cd12a2eae5
simply the render interface by not requiring the setting of all the areas. only take a w and h in paint(). best font layout ever.
2003-06-20 02:17:23 +00:00
Dana Jansens
6e93be1d2e
remove non-planar surfaces
2003-06-20 00:05:51 +00:00
Dana Jansens
36231e5cb3
fix for how base-size is used to comply with the icccm
2003-06-19 17:14:16 +00:00
Dana Jansens
8a8f2c831f
remove an extra useless call to focus_set_client(NULL)
2003-06-08 23:25:21 +00:00
Dana Jansens
7cbac3c4d5
describe the complicated if a bit :)
2003-06-08 22:38:31 +00:00
Dana Jansens
07539c38c8
more checks for when to do an XResizeWindow
2003-06-08 22:37:31 +00:00
Dana Jansens
43d109dd06
send the configure notify for resizes too, just to be a little more safe
2003-06-08 22:30:55 +00:00
Dana Jansens
ddeb066ed4
onlt send configurenotify if the client actually moved, to work around emacs, hopefully :)
2003-06-08 22:28:32 +00:00
Dana Jansens
05e52e3c8e
some more fixes for resizing clients. aspect ratio is not the last thing checked and so rules all, that might need to change.. however, it now uses base-size only for aspect ratios and base-size/min-size for other sizing shit, as per the ICCCM.
2003-06-08 21:38:06 +00:00
Dana Jansens
bda9e6aaf9
from icccm:
...
If a base size is not provided, the minimum size is to be used in its place and vice versa.
Added support for this.
2003-06-08 21:21:23 +00:00
Dana Jansens
ac4e6784dd
i was backwards
2003-06-08 01:20:13 +00:00
Dana Jansens
7c13920066
this cnofigure is FINAL!
2003-06-08 01:18:51 +00:00
Dana Jansens
5b3d5bda24
don't resize the client itself while doing a resize if its not final when config_opaque_resize is not on
2003-06-08 01:01:13 +00:00
Dana Jansens
f7de8e5a59
better VIDMODE support, handle the cases where the functions fail
2003-06-04 23:21:51 +00:00
Dana Jansens
abd8ec3c2e
size fullscreen applications to the resolution with the VIDMODE extension
2003-06-04 23:19:06 +00:00
Dana Jansens
68cc6e30b8
remove the client_remaximize function, and replace it with the client_reconfigure function, which just calls client_configure with the window's current location and dimensions, user=TRUE and final=TRUE.
...
add support for the VIDMODE extension in client_configure, namely, fullscreen windows are positioned at the point of the viewport rather than at 0,0.
call client_reconfigure when uniconifying a window, so that fullscreen windows are put at the point of the view port.
2003-06-04 23:11:26 +00:00
Dana Jansens
795d90c3bc
make key grabbing per window instead of always root
2003-06-04 22:45:54 +00:00
Dana Jansens
8a1fa6d3ac
allow cycling to iconic windows
2003-06-04 19:30:35 +00:00
Dana Jansens
c6fd3aa890
use client_can_focus from client_focus to always get the same result
2003-06-04 19:24:37 +00:00
Dana Jansens
4cb48bebb5
reverting the transient focus cycle change, its just not.. right. add the parent's title to the transient's for the popup instead of just relpacing it
2003-06-04 18:22:19 +00:00
Dana Jansens
1139d96e7f
better focus cycling for transients. use the parent instead of the transients in the list in case it has more than one, then after choosing it try focus a transient instead
2003-06-04 17:33:20 +00:00
Dana Jansens
0ce054c2b5
dont try change focus while looping thru the focus list
2003-06-04 17:17:55 +00:00
Dana Jansens
e0fa57d21c
allow focus_fallback to query if a client can be focused without changing the focus order on it
2003-06-04 17:16:50 +00:00
Dana Jansens
f827fbcaee
remove debug print
2003-06-03 05:17:32 +00:00
Dana Jansens
70a34967d6
ignore xerrors while using the pixmaps specified by the client, since they can certainly be invalid and there's nothing i can do about it.
2003-06-03 04:52:54 +00:00
Dana Jansens
f7b687487c
rm g_messages.. ones that segfault.. :>
2003-06-03 01:54:31 +00:00
Dana Jansens
5a8c164412
also dont increment the nicons if the w*h is 0
2003-06-02 23:16:50 +00:00
Dana Jansens
754391ea4d
watch out for 0x0 icons, and skip them
2003-06-02 23:10:27 +00:00
Dana Jansens
365a9fbb69
adjust what gets raised on map a bit, a little less selective.
2003-05-30 18:16:33 +00:00
Dana Jansens
3424de66b2
only add non-nonintrusively when both windows share a stacking layer
2003-05-29 15:24:56 +00:00
Dana Jansens
2e824eece1
rm the 'focusraise' action, it is redundant.
2003-05-28 23:50:43 +00:00
Dana Jansens
b7780b749f
proper centering of the text in popups without icons
2003-05-28 01:40:21 +00:00
Dana Jansens
4b2ec0d03c
use frame->visible, not the desktop number, other states exist too, like show_desktop
2003-05-26 18:39:48 +00:00
Dana Jansens
d1e355de2c
this is a big one! im putting stats in here just cuz!
...
59 files changed, 1691 insertions(+), 607 deletions(-)
Adding the beginings of ObConf. Adding a resistance-config plugin for ObConf.
Creating an obparser library that obrender can use, the kernel can use, plugins can use, and ObConf and its plugins can use. (its just code for using libXml2)
2003-05-24 21:47:06 +00:00
Dana Jansens
3753a0ed3e
convert shit from utf8 to filename before execing it
2003-05-24 16:15:29 +00:00
Dana Jansens
d2857b1194
ECKS EM ELL
2003-05-24 15:35:26 +00:00
Dana Jansens
75e691a2a5
add actions for showing the desktop
2003-05-24 09:22:19 +00:00
Dana Jansens
e483257007
soem changes to desktop actions.
...
instead of having *wrap actions, just default to having wrap on, and let it be optionally placed into the rc to disable it.
instead of next/prev desktop, just have actions for desktop to the right/left/up/down. this applies to sendtodesktop actions too.
2003-05-24 09:11:42 +00:00
Dana Jansens
26ebe251a9
add a DEBUG_FOCUS print
2003-05-24 08:39:14 +00:00
Dana Jansens
dc7a267af0
there's this case where we DONT want to ignore both events or we end up without anything we know of being focused, even tho something is. this case is now covered. ps i hate focus so much.
2003-05-24 08:38:37 +00:00
Dana Jansens
a373b1582e
use the user friendly desktop number
2003-05-24 08:37:21 +00:00
Dana Jansens
cd54e31a59
clarify comment
2003-05-24 08:10:28 +00:00
Dana Jansens
b1fe0dbbc2
dont refocus the focused window, that just causes so many problems (with alt-tab :)
2003-05-23 20:17:22 +00:00
Dana Jansens
f68eb1fc25
validate utf8 strings before using them
2003-05-23 18:56:33 +00:00
Dana Jansens
f54e8c9ba0
add --enable-gl support, and put the flags/libs in the appropriate makefiles
2003-05-23 05:30:00 +00:00
Dana Jansens
a83b590ff6
remove a todo item that seems to be.. done!
2003-05-23 02:03:40 +00:00
Dana Jansens
b69473054b
missed a case of using the stacking list and assuming that its all clients still. fixed that assumption now.
2003-05-23 02:00:54 +00:00
Dana Jansens
493e7d4a6e
ignore ancestor FocusIn events. i get them sometimes when hitting alt-tab and that totally fucks it up cuz it cancels teh alt-tab process.
2003-05-23 01:27:46 +00:00
Dana Jansens
d3980aa459
only button 1 can use menu items
2003-05-22 21:33:44 +00:00
Dana Jansens
3669da9cdd
a missing break!
2003-05-22 05:23:41 +00:00
Scott Moynes
04a85677e5
layers submenu on client
2003-05-22 02:49:08 +00:00
Dana Jansens
4d814a383b
add actions for changing client layers to abov/below/normal
2003-05-22 02:22:43 +00:00
Dana Jansens
d6cb5adbea
typo
2003-05-22 02:05:38 +00:00
Dana Jansens
68eba18b76
load the client_menu by default for nowc
2003-05-22 01:46:49 +00:00
Scott Moynes
71d2605e1c
Client menus
...
Add "client_menu" to pluginrc to use.
2003-05-21 23:58:40 +00:00
Dana Jansens
7da6e2271e
add 'movetoedge' actions
2003-05-21 03:58:32 +00:00
Dana Jansens
9f501638b5
add xerror.h
2003-05-21 03:56:56 +00:00
Dana Jansens
539f061b30
Openbox3 in the WM name, FUCK OFF XINE, YA YOU HEARD ME.
2003-05-21 03:27:10 +00:00
Dana Jansens
32390c6b6d
ignore errors when playing with application defined colormaps
2003-05-20 05:02:24 +00:00
Dana Jansens
ea6d0e0d4d
get the size for all the apps before positioning them
2003-05-19 20:27:11 +00:00
Dana Jansens
40f2e19ef4
set teh dock sizes before the app uses it for positioning
2003-05-19 20:18:46 +00:00
Dana Jansens
135d6d7bdc
center dock apps
2003-05-19 20:17:17 +00:00
Dana Jansens
81417dd344
use the resize increment when resizing relative
2003-05-19 04:13:06 +00:00
Dana Jansens
5a7953b36a
2 in 1 again..
...
a) directional focus actions
b) action system changes i.e. use structs/arrays for convertings strings to actions instead of gross if-else chains
2003-05-19 03:52:25 +00:00
Scott Moynes
00960995a2
Added a fifo_menu plugin
2003-05-18 23:36:13 +00:00
Dana Jansens
a18c1697b1
make icons use pixel32 data, and image_draw takes pixel32 data.
...
client.c gets pixmap icons as a backup to netwm ones, and they are converted into pixel32 data.
2003-05-18 23:06:11 +00:00
Dana Jansens
f41d06f583
include grab.h
2003-05-18 23:05:06 +00:00
Scott Moynes
d8921eb3d2
this is actually xor :) - fixing the focus search function to not return NULL if no valid group members exist to be a transient for
2003-05-18 17:49:17 +00:00
Dana Jansens
cea19c78c1
proper check to see if something was raised, the it==NULL would cause it to always return, incorrectly.
2003-05-18 17:37:03 +00:00
Dana Jansens
993fc6226d
2 in 1 deal :\
...
client.c stacking.c: fixing looping transient case for group transient windows. now a window which is transient for a group is *not* transient for any other transient windows in the group (perviously the other window had to be transient for the group to be excluded, now it can be transient for anything).
client.c/h event.c render.c/h: adjustnig icon handling a bit. will be converting the legacy pixmap icons into rgba data so they can be handled the same as netwm icons.
2003-05-18 17:09:55 +00:00
Dana Jansens
ac779e65ac
grab the mouse during focus cycling. this removes the bug of focusing following the mouse when the popup disappears and fuck up your cycling.
2003-05-18 03:32:34 +00:00
Dana Jansens
2b2beddc74
add (optional) support for showing a busy cursor via startup notification
2003-05-18 02:10:26 +00:00
Dana Jansens
f6b61bb60e
disallow drag events on title buttons.
...
dont redraw title button when the wheel buttons are used on them.
2003-05-17 15:16:45 +00:00
Dana Jansens
0b5f6589ba
print the class not the name
2003-05-16 21:34:00 +00:00
Dana Jansens
f8bbe46bce
get all the strings!
2003-05-16 21:32:42 +00:00
Dana Jansens
f17b225daa
save the dock's class/name for future evil purposes!
...
also print names of windows being managed/unmanaged
2003-05-16 20:20:33 +00:00
Dana Jansens
d9e1eb0cbe
FUCK dock is not an array anymore!
2003-05-16 19:32:22 +00:00
Dana Jansens
7a166a3838
give the dock a strut and use it
2003-05-16 19:15:56 +00:00
Dana Jansens
2d6c9a7ba6
remove debug prints
2003-05-16 18:34:51 +00:00
Dana Jansens
a0691941e8
dockapps are ObWindows now.
...
set the type when creating new dockapps.
2003-05-16 18:34:29 +00:00
Dana Jansens
b77e40e1c7
rename "Slit" to "Dock".
...
add config options to the rc3 for the dock.
create a window_map, add DockApps to the ObWindow types, use the window_map for translating windows into objects for event handling (only one lookup now) and remove the old maps (client_map, menu_map).
2003-05-16 18:10:10 +00:00
Dana Jansens
6e42b65bda
add anotehr stacking_add function.
...
make stacking_add take care of raising also.
make new windows that dont get focus also not raise above the focused window.
2003-05-16 15:16:33 +00:00
Dana Jansens
8367ab14e8
movnig shit around
2003-05-16 15:15:30 +00:00
Dana Jansens
7b65469aea
watch out for not loading the timed_menu plugin
2003-05-14 18:40:33 +00:00
Dana Jansens
c5b8ec744c
pass teh correct values for config notify events
2003-05-14 18:25:51 +00:00
Scott Moynes
78a8680cd7
Added a menu to read from a pipe.
...
File descriptors added to the event loop.
2003-05-14 03:34:29 +00:00
Dana Jansens
9938de3693
add opaque move/resize to the rc3
2003-05-11 23:57:56 +00:00
Dana Jansens
ea6b9cafe9
was using the frame window in the stacking list hint
2003-05-11 23:34:27 +00:00
Dana Jansens
7c7868f47d
add internal popups n shit to the stacking list.
...
some cleanups for the stacking order hint.
add non-opaque move/resize. cant toggle it yet.
2003-05-11 23:31:43 +00:00
Dana Jansens
fed4a9e70b
rm comment for shit i fixed
2003-05-11 21:39:25 +00:00
Dana Jansens
7e9ad37587
not everything in the stacking_list is a client anymore
2003-05-11 20:19:00 +00:00
Dana Jansens
81cc0749f8
Menus put themselves into the stacking list.
...
Clicking on the menu (but not on an entry) will raise it.
2003-05-11 19:50:30 +00:00
Dana Jansens
58cfbb7f84
Clients Menus and Slits are all 'ObWindow's now.
...
Stacking is done with ObWindows.
Slits add themselves to the stacking order, as do clients of course.
Added some macros for adding/removing to the stacking order.
2003-05-11 19:44:33 +00:00
Dana Jansens
506122a110
garb press events so they dont break bindings... X sucks
2003-05-11 17:49:12 +00:00
Dana Jansens
3689fa4b7a
grab button events on the slit so they dont go through to root
2003-05-11 17:45:21 +00:00
Dana Jansens
ffb76025fa
use the size of the icon window for slit apps, not the client window
2003-05-11 17:31:23 +00:00
Dana Jansens
ed4f84ac33
can drag slit-apps around in the slit
2003-05-11 05:15:43 +00:00
Dana Jansens
20ba24b741
add autohiding to the slit
2003-05-10 22:33:24 +00:00
Dana Jansens
4e88712158
some slit fixes, support resizing slitapps
2003-05-10 22:20:08 +00:00
Dana Jansens
c4a5149016
add a slit to the kernel
2003-05-10 20:52:32 +00:00
Dana Jansens
2508089df5
make the client menu not have a title
2003-05-10 16:03:06 +00:00
Dana Jansens
bd6d80f168
be more careful about ignoring focusin/out event pairs
2003-05-10 15:51:44 +00:00
Scott Moynes
24eb9f85df
Turn off timed_menu by default
2003-05-10 15:12:27 +00:00
Scott Moynes
03d42b5d82
Timed menu that reads output from a process while the window is hidden
2003-05-10 14:51:27 +00:00
Scott Moynes
3fab044f34
whitespace
2003-05-10 14:50:39 +00:00
Scott Moynes
a8a4a2cca3
Menu uber patch
...
Since we have no menu parser see menu_startup() to customize
2003-05-09 23:15:28 +00:00
Dana Jansens
d5eacc5642
add a client_activate function, use it for net_wm_active mesgs and for focus cycling.
2003-05-09 22:53:11 +00:00
Dana Jansens
380ddd2b9c
unshade windows when you cycle focus to them
2003-05-09 22:37:19 +00:00
Dana Jansens
bccb90b01d
add shit that i made in the last week!
2003-05-09 19:58:08 +00:00
Dana Jansens
f26f23de50
all my changes while i was offline.
...
better alt-tabbing. better transient handling. i dont even know. lots of fucking cool shit so WATCH the FUCK OUT.
2003-05-09 16:57:17 +00:00
Dana Jansens
1594828ec5
move windows before calcing struts. watch for windows on DESKTOP_ALL when removeing a desktop
2003-04-28 19:36:59 +00:00
Dana Jansens
f8e7ab509c
a more correct for the missing frame problem. don't restack windows when changing the window's layer while it is being managed.
2003-04-27 22:33:38 +00:00
Dana Jansens
5888e7ed4b
watch for windows without frames, they can be in the transient order before they get fully managed
2003-04-27 22:25:15 +00:00
Dana Jansens
04d6bf1e60
show the move coords for where the window will actually be
2003-04-26 21:11:50 +00:00
Dana Jansens
fd89a7eadc
only focus on startup if focus_new is true
2003-04-25 22:40:04 +00:00
Dana Jansens
d3c094357d
restore the desktop and focused window on restarts if possible
2003-04-25 22:35:08 +00:00
Dana Jansens
92d3f2342d
add helper functions for manipulating the focus_order list.
...
move the focus popup into focus.c, out of action.c
allow cycling to iconic windows, which are kept at the bottom of the focus_order lists.
2003-04-25 21:27:16 +00:00
Dana Jansens
16a9ac018e
let the frame hold a focus state so that it can lie.
...
dont focus windows while cycling, just highlight them as if they are focused
2003-04-25 19:55:41 +00:00
Dana Jansens
11b7764e5f
icons are not at +1 anymore
2003-04-25 17:50:08 +00:00
Dana Jansens
019c779f7d
some more checks for transients looping on eachother when they are transients of a group
2003-04-24 03:41:30 +00:00
Dana Jansens
957ffe9c03
client side shit ISNT 32 bits on 64 bit platforms, its 64 bits. fuck X so hard.
2003-04-22 20:05:25 +00:00
Dana Jansens
0ba6700655
even better checks for when to focus new windows. focus dialogs when they are the only member of their group
2003-04-22 07:06:10 +00:00
Scott Moynes
574dd66b32
More menu changes to facilitate plugins.
2003-04-22 03:48:34 +00:00
Scott Moynes
6a237b91bc
Render menus only when they are invalid.
2003-04-22 01:04:29 +00:00
Dana Jansens
5d973d35e8
yet more changes to choosing to focus windows when they mapp
2003-04-21 00:47:14 +00:00
Dana Jansens
d22e9c9c1d
try avoid cicular includes with the bison shit
2003-04-21 00:45:08 +00:00
Dana Jansens
573aaf7ede
make the icon larger than the buttons by one pixel in each direction, this makes it as tall as the label and lets it fit more image in
2003-04-20 07:08:40 +00:00
Dana Jansens
d3ce8451bc
new focus-new rules
2003-04-20 05:53:10 +00:00
Dana Jansens
8dfa16abae
i lied.. fuck @ those gnome dialogs
2003-04-19 21:11:04 +00:00
Dana Jansens
ccb8cd61ac
lighten up a bit on the focus new windows criteria
2003-04-19 21:10:27 +00:00
Dana Jansens
9c55fd5a57
rm invalid comment
2003-04-19 18:31:14 +00:00
Dana Jansens
540f547bab
only look for FocusOut events on the same window
2003-04-19 18:30:58 +00:00
Dana Jansens
bcbe5c8f82
convert STRING properties from "ISO-8859-1" instead of from the current locale, since this is what they apparently are, according to gdk.
2003-04-19 02:26:53 +00:00
Dana Jansens
be6d54a0e8
check the string not the pointer to it
2003-04-19 01:16:30 +00:00
Dana Jansens
6b7737acc3
the mouse grab screws that up
2003-04-18 22:31:00 +00:00
Dana Jansens
2829849b71
dispatch presses and releases during a move/resize
2003-04-18 22:27:24 +00:00
Dana Jansens
31fac363fb
kill the debug prints for now
2003-04-18 22:12:34 +00:00
Dana Jansens
142c14fcc8
nm cant do it.. damn
2003-04-18 22:05:39 +00:00
Dana Jansens
6a9e7dea8e
ignore another type of crossing event, caused when leaving gtk popup menus
2003-04-18 21:56:53 +00:00
Dana Jansens
c2b3a49e69
just formatting
2003-04-18 08:46:19 +00:00
Dana Jansens
01debc76b9
yet MORE changes to how focusin/out's are handled. more edge case fixing, this time with focus fallback when unmapping a window in sloppy focus mode.
2003-04-18 08:45:49 +00:00
Dana Jansens
b426f7667d
adjust choosing to focus new windows, make it more strict.
...
eat all Enter events when unmapping a window so focus fallback can be more smarter..
2003-04-18 08:44:32 +00:00
Dana Jansens
a8b8f2fc80
dont need to sync
2003-04-18 08:41:35 +00:00
Dana Jansens
a5f5b42455
check for client_normal before focusing
2003-04-18 06:55:51 +00:00
Dana Jansens
06663c245a
when unfocusing a window (e.g. unmanaging) try fallback to transient relations, if that fails, try group relations, then fallback to other window.
2003-04-18 06:55:28 +00:00
Dana Jansens
9d16ced24e
try focus other transients of the parent window when a transient falls back before focusing the parent
2003-04-18 06:32:54 +00:00
Dana Jansens
f8056d9c28
unset it AFTER using it...
2003-04-18 06:29:28 +00:00
Dana Jansens
bf14853e55
unset the client when done moveresizing
2003-04-18 06:28:57 +00:00
Dana Jansens
b5a5a8f384
don't wait(), the glib function does that for us woot.
2003-04-18 06:07:41 +00:00
Dana Jansens
c4fb053f2f
more strict rules on what will be focused by the focusNew option in the rc3. only strictly NORMAL windows will be focused, not dialogs or anything else when they are mapped.
2003-04-18 04:13:08 +00:00
Dana Jansens
e6a00eee31
comment typo
2003-04-18 01:51:55 +00:00
Dana Jansens
077cd7f944
watch out when unmanaging a window, that it is not being move/resized
2003-04-18 01:51:41 +00:00
Dana Jansens
cfe3dc9ec4
a) put transient windows on the same desktop as their parent
...
b) if a window is attempted to be focused but it is not on the current desktop,
then move it to the top of the focus order on its desktop
2003-04-17 18:21:19 +00:00
Dana Jansens
322b2d0a05
distribute focus when entering/leaving show-the-desktop mode
2003-04-17 17:32:09 +00:00
Dana Jansens
0a3d3245a6
remove debug print
2003-04-17 17:31:22 +00:00