Commit Graph

441 Commits

Author SHA1 Message Date
Julien Danjou ff1bd31633 [client] Optimize condition
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-28 11:35:56 +01:00
Julien Danjou a8ab903e24 [client] Invalidate cache on maximize
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-28 09:52:58 +01:00
Julien Danjou 3d33c84e36 [titlebar] Check if titlebar was created before unmaping it
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-27 17:01:57 +01:00
Julien Danjou c834134cc8 [doc] Autogenerate documentation for uicb from source code
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-27 15:00:46 +01:00
Julien Danjou 227c31fd77 [titlebar] Collapse for all position
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-26 11:07:23 +01:00
Julien Danjou 15256cccc1 [titlebar] Collapse titlebar to windows even if we do not resize it
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-26 11:03:52 +01:00
Julien Danjou 214b5a4a31 [titlebar] Fix resize_hints usage with titlebar
- titlebar_update_geometry() give now void
- we call titlebar_update_geometry_floating() to reset correctly the
  titlebar position for right/bottom, so they will be stucked to the window

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-26 10:57:06 +01:00
Julien Danjou 7605585aee Fix bug when switching focus to an empty screen
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-25 18:20:39 +01:00
Julien Danjou 762645ca32 client_focus() now return bool to indicate if it has given focus
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-25 11:28:38 +01:00
Julien Danjou c5afa7753b Split restack function out of focus, and fix click-to-raise
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-24 16:34:41 +01:00
Julien Danjou b946119d46 Disable titlebar on fullscreen/maximize
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-03-24 14:44:11 +01:00
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