Commit Graph

38 Commits

Author SHA1 Message Date
Emmanuel Lepage Vallee 5271ffd35c Begin the big changes for 3.6
Lots of things will break, hopefully for the better (eventually)

This commit use new upstream APIs:

 * Many cairo paths have been replaced with gears.shape and gears.matrix

This commit add some features:

 * Improved border_color support, now available per state
 * bg_image support, now available per state
 * Mutualize the state setting, remove duplicated code

Regressions:

 * The arrow menu background border is off by a pixel
 * The layout position problem reported by @mindeunix is now worst.

The positioning algo is full of race conditions and cannot be fixed
without a full rewrite. This commit break more things than it solve
and the code is in the middle of a transition. This will be solved
by future commits addressing the code quality (after the refactoring).
2016-12-25 21:59:23 -05:00
Emmanuel Lepage Vallee 7c0425fdfd common: Make overlay support available to all widgets
This is the first step toward removing the underlay/overlay from
all item.style and item.layout and use the common implementation.

This will simplify the code a lot.
2016-12-25 21:59:23 -05:00
Emmanuel Lepage Vallee cf9bb87b36 Port to the new Awesome widget system
This commit fix most issues introduced by the new widget system. It
is not production ready and will require multiple commits to fix
individual issues.

The new widget system is better suited for modules like Radical than
the previous one. Over time, this breakage will probably end up being
a good thing. However, for now, expect multiple errors.

The changes:

 * The draw "wibox" argument is now a "context". "context.wibox" is
   the equivalent. This will allow passing the Radical structure to
   the draw method without storing it in the widgets.
 * "fit" now have a new required "context" argument for the DPI, this
   will allow removing the "default_height" variable Radical is using
   to scale the UI on HIDPI systems. This will allow size policies to
   be passed to the fit method
 * "draw" has been splitted into "draw", "draw_before_children",
   "draw_after_children" and "layout". This simplify the overlay
   system and will allow cleaner code
 * Drawing outside of the widget clip is no longer supported, this
   break multiple Radical item.style. This will allow better
   performance and less redraw once the new system issues have been
   fixed
2016-12-25 21:59:23 -05:00
minde 0fb39f8d01 Allow users to change checkbox style.
Added:
theme.menu_checkbox_padding
theme.menu_checkbox_color
theme.menu_checkbox_checked_color
2016-01-03 20:33:34 +02:00
Emmanuel Lepage Vallee 75e560995c Fix pango API misuse, add pie-chart cache 2015-03-15 16:25:41 -04:00
Emmanuel Lepage Vallee da08a267cf Add rounded + shadow item style 2015-01-10 23:59:51 -05:00
Emmanuel Lepage Vallee 31e5c3dd5c Fix issue #29 2014-11-23 00:32:13 -05:00
Emmanuel Lepage Vallee 03090fa2ec Add a bunch of skining options 2014-11-14 23:46:06 -05:00
Emmanuel Lepage Vallee 72e9fea65b Fix multiple minor bugs/regressions 2014-05-31 23:45:46 -04:00
Emmanuel Lepage Vallee f746a8b347 Make async menu faster
This may cause some visual artefacts, but is about 5 time
faster than the old way.
2014-03-23 19:00:56 -04:00
Emmanuel Lepage Vallee 9b9c96be1b Fix a bug when table (widgets) are resized 2014-03-22 17:03:04 -04:00
Emmanuel Lepage Vallee 2c9bd9107f Fil multiple minor issues related to fg and underlay colors 2014-03-13 01:14:52 -04:00
Emmanuel Lepage Vallee 5d21035698 Add some filter options 2014-03-12 22:56:56 -04:00
Emmanuel Lepage Vallee 231eef25bc Add global underlay support 2014-03-12 00:31:50 -04:00
Emmanuel Lepage Vallee 95ed8b26c4 More style/colors oriented refactoring 2014-03-02 16:28:30 -05:00
Emmanuel LEpage Vallee 34e0836e5e Make checkbox resize correctly on retina display 2014-01-20 23:50:35 -05:00
Emmanuel Lepage Vallee 9a03c837c0 Add multi underlay support 2014-01-17 00:34:45 -05:00
Emmanuel Lepage Vallee 5b635e96e5 Move upderlay widget to Radical 2014-01-16 00:25:50 -05:00
Emmanuel Lepage Vallee a1144564ab Replace old item_style attributes by a more flexible array 2014-01-08 00:59:57 -05:00
Emmanuel Lepage Vallee e20c6921dc Make F-key widget scale better to lower size 2014-01-05 22:51:42 -05:00
Emmanuel Lepage Vallee 4db83034b8 Refactor menu layout to maximize code sharing 2014-01-05 01:04:40 -05:00
Emmanuel Lepage Vallee 9aab9b0d3c Add separator widget 2014-01-04 18:51:07 -05:00
Emmanuel Lepage Vallee 5ff71f7385 Add new 'bar' menu type 2014-01-04 00:49:20 -05:00
Emmanuel Lepage Vallee 471c5e0d9f Add the most useless widget of them all, the PieChart 2014-01-01 23:55:55 -05:00
Emmanuel Lepage Vallee ace65ad586 Fix scroll widget 2013-12-31 15:55:51 -05:00
Emmanuel LEpage Vallee 76d34dd93d Improve HiDPI support and fix 0 item submenus 2013-11-10 23:18:23 -05:00
Emmanuel Lepage Vallee 6899f18aac Use header background for table headers (if available) 2013-08-09 03:39:56 -04:00
Emmanuel Lepage Vallee fdfbab2f52 Only display scroll widget when there is enough item 2013-08-09 02:34:49 -04:00
Emmanuel Lepage Vallee 90154d83ab Add README 2013-08-03 01:03:43 -04:00
Emmanuel Lepage Vallee f399a651c5 Fix clear 2013-07-23 02:12:19 -04:00
Emmanuel Lepage Vallee 9a4430ab4c Add embeded menus (menus in menus) support 2013-07-21 04:15:56 -04:00
Emmanuel Lepage Vallee 576f6dd576 Add more theme options 2013-07-18 00:03:19 -04:00
Emmanuel Lepage Vallee 2ec8d4bef7 Add border and header support for the table widget 2013-07-15 00:33:43 -04:00
Emmanuel Lepage Vallee 5f37caab7f Add a basic table widget 2013-07-14 01:58:39 -04:00
Emmanuel Lepage Vallee 1a03ad281a Use Pango to render F-keys prefixes for menues (better on high-DPI screens) 2013-07-08 21:31:33 -04:00
Emmanuel Lepage Vallee 4484e671a7 Add full support for max_items in the vertical menu 2013-07-07 18:18:55 -04:00
Emmanuel Lepage Vallee 34f7e74a92 Make vertical menu code more modular, easier to maintain 2013-07-07 00:39:17 -04:00
Emmanuel Lepage Vallee 4b8e11f6ac Add support for checkboxes 2013-05-16 15:18:55 -04:00