Julien Danjou
3310b974b4
Allow skip to be focused (by mouse) but refuse to focus them if they're newcomer
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-24 10:58:32 +01:00
Julien Danjou
db0932f77a
Cleanup stuff in client_manage for loading properties
...
Remove a double call to ewmh_check_client_hints, and only call
move_client_to_screen() when needed.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 21:56:12 +01:00
Julien Danjou
be12562ab7
Stop client_find_visible to loop for ever
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 20:58:39 +01:00
Julien Danjou
e261ad7b5d
Refuse to give focus on skippable windows
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 20:55:37 +01:00
Steffen Schulz
3b8cf66822
new directive opacity_focused=<int>
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 20:36:55 +01:00
Julien Danjou
d07ca5f76d
Fix potential segfault in client_focus()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 17:33:48 +01:00
Julien Danjou
904cd4e06a
Normalize some window functions protos
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:22 +01:00
Julien Danjou
1d468c5583
Lot of cosmetic changes: proto change, etc.
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:22 +01:00
Julien Danjou
0a6c6e017b
Store physical screen id in statusbar and client, change get_phys_s() to screen_virttophys()
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:22 +01:00
Julien Danjou
08f1e90384
Do not set urgent on window if it is focused
2008-03-23 15:52:21 +01:00
Julien Danjou
279e83ba05
Update titlebar with real floating info now if client is floating
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:21 +01:00
Julien Danjou
b1cd7d16c6
Do not compute smart floating geometry on awesome restart
2008-03-23 15:52:21 +01:00
Julien Danjou
1acc6ec8f6
Fix various bug with smart/mouse floating placement
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:21 +01:00
Julien Danjou
7c79f94341
Move titlebar initialization routine in titlebar.c
2008-03-23 15:52:20 +01:00
Julien Danjou
0b6d6d738a
Do nothing it the client already has focus
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:20 +01:00
Julien Danjou
720dabbaf6
Add support for titlebar on right
2008-03-23 15:52:20 +01:00
Julien Danjou
bb0fab396f
Add an ismoving attribute to client to fix a bug with titlebar and mouse moving in Xinerama
2008-03-23 15:52:20 +01:00
Julien Danjou
a42d43a853
Fix various placement issue with titlebar
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:20 +01:00
Julien Danjou
850145f994
Changing floating geometry is bad
2008-03-23 15:52:20 +01:00
Julien Danjou
466ed47c2a
Remove useless code
2008-03-23 15:52:20 +01:00
Julien Danjou
dbe2052320
Check for sw also before restacking titlebars
2008-03-23 15:52:20 +01:00
Julien Danjou
c99bc4dc1d
Fix titlebar drawing on max
2008-03-23 15:52:20 +01:00
Julien Danjou
3eef1842e4
Do not use titlebar_update_geometry_floating() which sucks in client_resize()
2008-03-23 15:52:20 +01:00
Julien Danjou
e22d57a0ca
Change the way to do resize
...
Go back to old school
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:20 +01:00
Julien Danjou
cf58c338e4
Add drawing support for left titlebars
2008-03-23 15:52:20 +01:00
Julien Danjou
99d72010c5
Fix various metrics problems with titlebar
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:20 +01:00
Julien Danjou
dd71f55469
Fix regression introduced by 7e2f59d851437d68c47b5827644eba117c0e7b82
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-23 15:52:20 +01:00
Julien Danjou
31f6010eda
Put titlebar resize for floating in titlebar_update_geometry_floating() function and call it for movemouse
...
This fix the problem when moving a window on a floating layout on screen N to
non-floating layout on screen M
2008-03-23 15:52:19 +01:00
Julien Danjou
c9450c6fbd
Remove switch/case for sw creation of titlebar, useless
2008-03-23 15:52:19 +01:00
Julien Danjou
eb595fe06e
Add support for Bottom titlebar
2008-03-23 15:52:19 +01:00
Julien Danjou
9bd32fc3b8
Split titlebar stuff into titlebar.[ch], and uicb_client_toggletitlebar
2008-03-23 15:52:19 +01:00
Julien Danjou
bc6656320d
Add support for text_align option in titlebars
2008-03-23 15:52:19 +01:00
Julien Danjou
f9f75629e1
Rule for titlebar applies event if we restart; set default to auto, which means off
2008-03-23 15:52:19 +01:00
Julien Danjou
cc56ccd2e9
Use section for titlebar parameters
2008-03-23 15:52:19 +01:00
Julien Danjou
3aa550ef6b
Cosmetic changes
2008-03-23 15:52:19 +01:00
Julien Danjou
bb453bd444
s/client_titlebar_update_position/client_titlebar_update_geometry/g
2008-03-23 15:52:19 +01:00
Julien Danjou
b51e352ed8
Fix errors with windows without titlebar
2008-03-23 15:52:19 +01:00
Julien Danjou
539636c77e
Fix bug with floating windows and titlebar
2008-03-23 15:52:19 +01:00
Julien Danjou
95f8325c06
Fix titlebar width (add borders)
2008-03-23 15:52:19 +01:00
Julien Danjou
b6f86ebb63
Smart placement support handling titlebar
2008-03-23 15:52:19 +01:00
Julien Danjou
a6b203f8a6
Disable titlebar for dock and panels
2008-03-23 15:52:19 +01:00
Julien Danjou
12584caa5d
Compute the rule only one time
2008-03-23 15:52:19 +01:00
Julien Danjou
8b217359e9
Rename Auto to Maybe in Fuzzy; add Auto as Position; add support for titlebar as rule
2008-03-23 15:52:19 +01:00
Julien Danjou
2c43fd6a69
Split titlebar properties into a struct with a SW and a Position
2008-03-23 15:52:18 +01:00
Julien Danjou
4311564945
Fix condition for having titlebars
2008-03-23 15:52:18 +01:00
Julien Danjou
dce101d044
Split out titlebar handling into layout for non-floating, and into resize for floating
2008-03-23 15:52:18 +01:00
Julien Danjou
3c3015fd76
Remove resize_hints args to client_resize(), force usage of client_geometry_hints()
2008-03-23 15:52:18 +01:00
Julien Danjou
ea88e324a0
First titlebar support
2008-03-23 15:52:18 +01:00
Julien Danjou
f1109b055c
Simplify next/prev stuff
2008-03-23 15:52:18 +01:00
Julien Danjou
c6eec955c8
Rename Area to area_t
2008-03-23 15:52:18 +01:00
Julien Danjou
fa47024714
Change colors infrastructure to style: rename colors_ctx_t to style_t and add font in it
2008-03-23 15:52:18 +01:00
Julien Danjou
0a980095b3
Rework colors stuff, add a common colors_ctx_t containing colors and shadow options
2008-03-23 15:52:17 +01:00
Julien Danjou
eee37d063c
Use xinerama_is_active attribute and drop XineramaIsActive() usage
2008-03-23 15:52:17 +01:00
Julien Danjou
355b7d67b3
Change screen_get_bycoord() proto to take ScreensInfo as arg, and speed up things
2008-03-23 15:52:17 +01:00
Julien Danjou
0bde5c9e29
Move some screen functions from screen.c to new common/xscreen.c
2008-03-23 15:52:17 +01:00
Julien Danjou
867b2f0775
first version of awesome-menu
2008-03-23 15:52:15 +01:00
Julien Danjou
a734c7dd5d
Remove transparency prop on focus
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-19 15:04:43 +01:00
Julien Danjou
4516bfcf3a
Check for EWMH hints after reloading client props
...
This avoid to think a client has already props in case it's tagged
with EWMH and then do not use its rules
2008-03-15 14:46:45 +01:00
Julien Danjou
9d98d71ad1
Keep floating windows on top of the stack
2008-03-04 15:25:59 +01:00
Julien Danjou
de8dcbb724
replace drop_events arch by x,y pointer coordinates saving
2008-03-04 10:14:13 +01:00
marco candrian
317929baea
Is the pointer inside client with including the borders...
...
it didn't reshift the pointer when the pointer was on the
right border (or even somebit in the client) because it didn't calculate
the border with to the dimensions.
Also, it wrapped the pointer inside the client. now it leaves it on the border
when that was the case before. Or on resizing (smaller) the pointer might also move
(relativ to the client) to the most outside point of the left or top border.
There is still the problem so:
the client gets moved/resize, the pointer might get out of the area temprarly and the
client loses the focus - despite that the pointer will reshifted onto it again.
A general: client_focus(sel, screen, False);
at the end seems to help, but is probably not clean etc.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-02 19:28:50 +01:00
marco candrian
271bf8da4a
border width taken into account on pointer movement
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-02-28 10:28:07 +01:00
marco candrian
f604d4dbdd
client_moveresize fix
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-02-28 07:54:45 +01:00
Julien Danjou
e5038732ca
check if the unmapped client is not the scratchpad
2008-02-26 17:45:55 +01:00
Julien Danjou
f54ff424a0
check widgets position
2008-02-25 20:09:19 +01:00
Julien Danjou
960d870b0b
fix screen_get_bycoord()
2008-02-25 13:40:30 +01:00
Julien Danjou
1e3f3d9300
floating placement can be chosen by config
2008-02-13 18:04:20 +01:00
marco candrian
4ff0dae17e
trailing whitespaces removed
...
like:
find . -iname "*.txt" -o -iname "*.c" -o -iname "*.h" | xargs sed -i 's/\s\+$//'
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-02-13 09:05:10 +01:00
Julien Danjou
a84eae2700
fix stacking issues
2008-02-12 14:39:52 +01:00
Julien Danjou
768aef8960
check transient and isfixed for setting floating state, even if we can loadprops
2008-02-12 10:19:59 +01:00
Julien Danjou
1b63e8a3c5
rename get_current_layout to layout_get_current()
2008-02-12 10:09:36 +01:00
Julien Danjou
e0099da269
use get_current_layout()
2008-02-12 10:08:16 +01:00
Julien Danjou
9390abcfb4
fix memory leak in smart_placement (with area_list_remove) and fix the algo
2008-02-11 17:15:28 +01:00
Julien Danjou
72d68b13a3
change focus raising
2008-02-09 23:12:40 +01:00
Julien Danjou
2fad66e23f
focus on maximize()
2008-02-09 22:42:21 +01:00
Julien Danjou
85e5baa4b1
focus scratch window when it appears, and don't select it for focusing in history
2008-02-08 15:08:42 +01:00
Julien Danjou
cdb85ad098
stop raising like dumb
2008-02-06 19:48:26 +01:00
Julien Danjou
b2e004b453
add scratch window support
2008-02-06 09:06:43 +01:00
Julien Danjou
befcf19ea2
introduce fuzzy logic: fix problem with not_master
2008-02-05 17:31:47 +01:00
Julien Danjou
a26b40fa28
fix segfault in client_zoom
2008-02-05 07:15:23 +01:00
Julien Danjou
06904cfcaa
Revert "remove opacity_unfocused"
2008-02-04 14:54:50 +01:00
Julien Danjou
a4a7433928
not size, position
2008-02-01 11:30:39 +01:00
Julien Danjou
4ad1f8a54a
don't compute position if program or user specified ones
2008-02-01 10:42:16 +01:00
Julien Danjou
606d157e31
rename some screens function
2008-01-30 09:36:52 +01:00
Julien Danjou
c3aeedfa24
better use of the space in smart placement
2008-01-29 09:13:35 +01:00
Julien Danjou
d9298f6edb
rename get_current_tags to tags_get_current()
2008-01-29 08:31:13 +01:00
Julien Danjou
ee1214846e
rename some client functions
2008-01-29 08:21:05 +01:00
Julien Danjou
9c7bbad840
respect border widths
2008-01-28 20:16:54 +01:00
Julien Danjou
ea57fd8fc9
add support for smart windows placement in floating layout
2008-01-28 18:30:23 +01:00
Julien Danjou
e233c2bfab
drop some EnterWindow events on swap/zoom
2008-01-28 16:46:31 +01:00
Julien Danjou
b016919d59
use client's screen here
2008-01-28 12:28:25 +01:00
Julien Danjou
75d57960de
type: screen != phys_screen
2008-01-28 11:44:57 +01:00
Julien Danjou
9f68db5360
use c->screen geometry, not display's
2008-01-28 11:43:37 +01:00
Julien Danjou
a0bef6d49e
missing include
2008-01-27 19:08:11 +01:00
Julien Danjou
95d5fe299e
rename focus() to client_focus()
2008-01-27 19:07:39 +01:00
Julien Danjou
b6642e45c8
rename initxcolor to draw_color_new() and move it to draw.c
2008-01-27 18:56:37 +01:00
Julien Danjou
37b4f62258
always grab Button1
2008-01-26 13:11:12 +01:00
MATSUU Takuto
363cefefee
transparency rule support
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-01-25 23:48:24 +01:00
Julien Danjou
c22430a115
fix handling of window raisings
2008-01-25 23:43:16 +01:00
Julien Danjou
6f1e1e1abe
handle focus history on arrange()
2008-01-25 22:50:18 +01:00
Julien Danjou
485614f2df
rewrite focus handling
...
- arrange() does not focus() anymore
- restore dropping events infra
- add client_unfocus()
- grabbuttons() where we should and add root_grabbuttons() for root window
2008-01-25 22:37:49 +01:00
Julien Danjou
8434040cb2
do not drop XSetInputFocus errors; but we can not give focus to unmapped windows
2008-01-25 09:37:41 +01:00
Julien Danjou
367b4d48fb
Revert "rewrite focus() a bit"
...
This reverts commit 652c1459ba
.
2008-01-25 00:51:11 +01:00
Julien Danjou
652c1459ba
rewrite focus() a bit
2008-01-24 23:58:56 +01:00
Julien Danjou
3855ced402
remove selscreen arg
2008-01-24 23:48:35 +01:00
Julien Danjou
5ade4d63e0
remove opacity_unfocused
...
this is crap
2008-01-24 23:45:04 +01:00
Julien Danjou
7073133e66
remove drop event infrastructure
2008-01-24 23:43:46 +01:00
Julien Danjou
0abb100adf
use client_setfloating() in uicb_togglefloating()
2008-01-24 20:09:11 +01:00
Julien Danjou
00f7cd006a
save client props on floating
2008-01-24 18:31:14 +01:00
Julien Danjou
44aab9ff4b
call get_screen_bycoord() anyway
2008-01-22 17:30:06 +01:00
Julien Danjou
67933fb670
initial x,y coords are set with respect to statusbars (FS#45)
2008-01-22 09:50:24 +01:00
Julien Danjou
668702b777
move list.h and util.[ch] to common/
2008-01-21 18:14:59 +01:00
Julien Danjou
97f08901d6
call restack() only when focus()ing
2008-01-21 16:31:15 +01:00
Julien Danjou
83a0a4daf8
add a common infra to drop events
2008-01-21 16:31:15 +01:00
Julien Danjou
6fce5830ff
arg is useless now
2008-01-21 16:31:15 +01:00
Julien Danjou
bfc7f3ce5d
clean out some need_arrange uneeded
2008-01-21 16:31:15 +01:00
Julien Danjou
6e4d13c9dc
add a new cache system for arrange()ing
2008-01-21 16:31:15 +01:00
Julien Danjou
2f8978c15b
add client_find_next_visible()
2008-01-21 16:31:15 +01:00
Julien Danjou
4809b8bc6e
make swapnext cycling
2008-01-21 16:31:15 +01:00
Julien Danjou
650788479d
doc
2008-01-21 16:31:15 +01:00
Julien Danjou
ed3f624fc0
move clients' uicb away from layout.c
2008-01-21 16:31:15 +01:00
Julien Danjou
7f4dc5a871
use client_setfloating() to change floating attribute
2008-01-21 16:31:15 +01:00
Julien Danjou
5570612dec
resize on floating set
2008-01-21 16:31:14 +01:00
Julien Danjou
f9cebe0dd8
respect rules
2008-01-21 16:31:14 +01:00
Julien Danjou
94197429e5
tag_client_with_rule() only tag is a rule match
2008-01-21 16:31:14 +01:00
Julien Danjou
47ee745425
rewrite client_manage()
2008-01-21 16:31:14 +01:00
Julien Danjou
654fba9b5e
insert and use rule_matching_client()
2008-01-21 16:31:14 +01:00
Julien Danjou
bdd474348b
use cycle functions
2008-01-21 16:31:14 +01:00
Julien Danjou
572f409a29
use lists functions for Client
2008-01-21 16:31:13 +01:00
Nikos Ntarmos
7c122e00ac
Fix for windows showing up in tile-mode and not before already floated (FS#22)
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-01-16 19:01:30 +01:00
Nikos Ntarmos
a9170edf10
don't draw the border of skip'ed windows
...
ewmh_process_window_type_atom(...) clears the border for windows that
are to be skipped. However, client_updatewmhints(...) doesn't.
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-01-15 08:24:26 +01:00
Fabienne Ducroquet
aedfe8b665
Fix client_togglehorizontalmax and client_toggleverticalmax
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-01-12 17:02:12 +01:00
Julien Danjou
903555e502
better fix for max windows
2008-01-11 17:56:50 +01:00
Julien Danjou
93e137eaab
invalidate cache
2008-01-11 16:44:24 +01:00
Julien Danjou
7c93dd381e
fix maximization on floating layouts
2008-01-11 16:41:03 +01:00
Julien Danjou
d427ffe4d2
invalidate only if we focus a new client
2008-01-11 16:01:10 +01:00
Julien Danjou
901f1da5ca
fix documentation
2008-01-11 13:37:33 +01:00
Julien Danjou
876377880d
cosmetic
2008-01-11 12:01:51 +01:00
Julien Danjou
ce0b433aba
check if client is not NULL
...
Debian bug #459992
2008-01-10 07:05:54 +01:00
Nikos Ntarmos
08e13d598e
Fix for 'windows showing up in tile-mode and not before already floated'
...
FS#22
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-01-09 09:43:39 +01:00
Julien Danjou
e3f5dc81e9
fix swapping when already master
2008-01-07 19:07:22 +01:00
Julien Danjou
cef0253652
no need to refocus
2008-01-07 19:06:23 +01:00
Julien Danjou
4a610dfeb3
no need to restore focus
2008-01-07 19:03:17 +01:00
Julien Danjou
6483b36389
only invalidate cache if client is urgent
2008-01-07 19:00:17 +01:00
Arnaud Fontaine
7a2b851a03
fix XGetTransientForHint() call
...
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-01-07 18:57:25 +01:00
Julien Danjou
c2ca948b39
add new_get_focus option
2008-01-07 18:54:45 +01:00
Julien Danjou
5c9291ff0b
use a cache system for status bar
2008-01-07 18:12:38 +01:00
Julien Danjou
1381989651
restack on max
2008-01-06 23:37:53 +01:00
Julien Danjou
bdfb84f3b5
remove useless AWESOMEPROPS_ATOM() define
2008-01-06 22:55:46 +01:00
Julien Danjou
a5c86280b3
remove Display arg of xgettextprop()
2008-01-06 22:53:40 +01:00