GNOME Bugzilla – Bug 662962
Beginning of porting to cairo
Last modified: 2012-05-17 12:39:44 UTC
see patches. I had to remove a feature: alpha specs for images, icons and tints. I tried looking around to various themes and didn't see this feature used in most of them, so I'm assuming it's safe to remove
Created attachment 200200 [details] [review] theme: Remove our own gradient stuff Part one of porting to cairo. This requires breaking as few features in the theme format that aren't quite used that often, like the alpha_spec on tint, image and icon.
Created attachment 200201 [details] [review] theme: Remove unused RECTANGLE code
Created attachment 200202 [details] [review] theme: Remove our own gradient stuff Part one of porting to cairo. This requires breaking as few features in the theme format that aren't quite used that often, like the alpha_spec on tint, image and icon. Excuse me, the "flipped" comment is wrong.
Created attachment 200265 [details] [review] theme: Remove our own gradient stuff Part one of porting to cairo. This requires breaking as few features in the theme format that aren't quite used that often, like the alpha_spec on tint, image and icon.
Created attachment 200266 [details] [review] Consolidate unused ops.
Created attachment 200267 [details] [review] theme: Use cairo for drawing ICON There's probably a better way to do draw_image. It's late at night and I can't do math at this hour.
Created attachment 200268 [details] [review] theme: Use cairo for drawing uncolorized IMAGEs
Created attachment 208747 [details] [review] theme: Remove unused RECTANGLE code Rebased onto master.
Created attachment 208748 [details] [review] theme: Remove our own gradient stuff Part one of porting to cairo. This requires removing support for a seldomly used feature in the theme format - alpha gradients on tint, icon and image. Grepping through gnome-themes-standard and searching for code, I couldn't find any usage of this feature, so I consider it safe to remove.
Created attachment 208749 [details] [review] theme: Consolidate unused ops
Created attachment 208750 [details] [review] theme: Properly indent code s/tabs/spaces/
Created attachment 208751 [details] [review] theme: Use cairo for drawing ICON
Created attachment 208752 [details] [review] theme: Use cairo for TINT operations with alpha
Created attachment 208753 [details] [review] theme: Use cairo for drawing uncolorized IMAGEs
Created attachment 208754 [details] [review] theme: Remove COLORIZE feature of images From a quick code search and grep of gnome-themes-standard, none of the themes that I inspected used this feature. Since it's the last thing that uses a lot of old legacy GdkPixbuf code, I'd rather just consider the feature unsupported at this point and clean up everything I need to.
Created attachment 208755 [details] [review] theme: Remove draw_op_draw/draw_op_draw_with_style They were unused. Kill them.
Created attachment 208756 [details] [review] theme: Remove dead code While the comment claims that we may want to keep this around for optimization purposes, the operations are raw bitmap operations that would be cleaner done in cairo.
Created attachment 208757 [details] [review] theme: Replace char array element comparisons with strncmp
Created attachment 208758 [details] [review] theme: Remove bogus comment
Jasper: Will this get in after branching for gnome-3-4, or what are the plans?
I don't know. I just made the patches. It's up to Owen to review them, I guess.
Created attachment 209564 [details] [review] theme: Remove unused RECTANGLE code
Created attachment 209565 [details] [review] theme: Remove our own gradient stuff Part one of porting to cairo. This requires removing support for a seldomly used feature in the theme format - alpha gradients on tint, icon and image. Grepping through gnome-themes-standard and searching for code, I couldn't find any usage of this feature, so I consider it safe to remove.
Created attachment 209566 [details] [review] theme: Consolidate unused ops
Created attachment 209567 [details] [review] theme: Properly indent code s/tabs/spaces/
Created attachment 209568 [details] [review] theme: Use cairo for drawing ICON
Created attachment 209569 [details] [review] theme: Use cairo for TINT operations with alpha
Created attachment 209570 [details] [review] theme: Use cairo for drawing uncolorized IMAGEs
Created attachment 209571 [details] [review] theme: Remove COLORIZE feature of images From a quick code search and grep of gnome-themes-standard, none of the themes that I inspected used this feature. Since it's the last thing that uses a lot of old legacy GdkPixbuf code, I'd rather just consider the feature unsupported at this point and clean up everything I need to.
Created attachment 209572 [details] [review] theme: Replace char array element comparisons with strncmp
Created attachment 209573 [details] [review] theme: Remove bogus comment
Created attachment 209574 [details] [review] theme: Remove unused entry points meta_draw_op_draw, meta_draw_op_draw_with_style, meta_draw_op_list_draw, and meta_frame_style_draw were all unused
Created attachment 209575 [details] [review] theme: Remove dead code While the comment claims that we may want to keep this around for optimization purposes, the operations are raw bitmap operations that would be cleaner done in cairo.
Created attachment 209576 [details] [review] theme: Make certain implementation functions internal to theme.c
Created attachment 209577 [details] [review] theme: Remove 'widget' parameter from draw_frame_with_style API The only use of the widget parameter was being passed around - there was nothing else using it.
Created attachment 211617 [details] [review] theme: Remove unused RECTANGLE code
Created attachment 211618 [details] [review] theme: Remove our own gradient stuff Part one of porting to cairo. This requires removing support for a seldomly used feature in the theme format - alpha gradients on tint, icon and image. Grepping through gnome-themes-standard and searching for code, I couldn't find any usage of this feature, so I consider it safe to remove.
Created attachment 211619 [details] [review] theme: Consolidate unused ops
Created attachment 211620 [details] [review] theme: Properly indent code s/tabs/spaces/
Created attachment 211621 [details] [review] theme: Use cairo for drawing ICON
Created attachment 211622 [details] [review] theme: Use cairo for TINT operations with alpha
Created attachment 211623 [details] [review] theme: Use cairo for drawing uncolorized IMAGEs
Created attachment 211624 [details] [review] theme: Remove COLORIZE feature of images From a quick code search and grep of gnome-themes-standard, none of the themes that I inspected used this feature. Since it's the last thing that uses a lot of old legacy GdkPixbuf code, I'd rather just consider the feature unsupported at this point and clean up everything I need to.
Created attachment 211625 [details] [review] theme: Replace char array element comparisons with strncmp
Created attachment 211626 [details] [review] theme: Remove bogus comment
Created attachment 211627 [details] [review] theme: Remove unused entry points meta_draw_op_draw, meta_draw_op_draw_with_style, meta_draw_op_list_draw, and meta_frame_style_draw were all unused
Created attachment 211628 [details] [review] theme: Remove dead code While the comment claims that we may want to keep this around for optimization purposes, the operations are raw bitmap operations that would be cleaner done in cairo.
Created attachment 211629 [details] [review] theme: Make certain implementation functions internal to theme.c
Created attachment 211630 [details] [review] theme: Remove 'widget' parameter from draw_frame_with_style API The only use of the widget parameter was being passed around - there was nothing else using it.
Comment on attachment 208755 [details] [review] theme: Remove draw_op_draw/draw_op_draw_with_style The changes here are in "theme: Use cairo for drawing ICON" and "theme: Remove our own gradient stuff". The former cleans up the draw_image method a little bit from suggestions by Company, and the latter cleans up the gradient code and makes gradient rendering match the original code a lot more.
Not going to happen. Obsoleted by CSS rework.