Граф коммитов

22 Коммитов

Автор SHA1 Сообщение Дата
Markus Stange a0e9560488 Bug 1370040 - Use the public API -[NSVisualEffectView setMaskImage:] instead of the private API -[NSWindow _cornerMask]. r=spohl
The idea is the following:
Behind-window vibrancy is mostly rendered by the window server. For a given
vibrant region of a window, the window server renders a vibrancy "backdrop",
which is a blurred version of everything that's behind that region, modified
with a color tint and blended in some way. Then it puts our actual window
contents on top of that background.
The backdrop's shape is usually a rectangle. If we don't want it to be a
rectangle, we need to tell the window server about the shape that we want it to
be. We can't just "draw" a different shape in our own rendering, because our
own rendering is merely placed on top of the backdrop - but here we want to
modify the shape of the backdrop itself.

NSVisualEffectView lets us set a mask image on the view. If this view is the
content view of a window, then the view will automatically communicate the mask
image to the window server.

Traditionally, our popup windows have had a ChildView as their content view. If
we now want an NSVisualEffectView to be the content view of the window, then we
need to nest the ChildView inside that NSVisualEffectView.
But this NSVisualEffectView is only needed when the window is vibrant and the
vibrancy backdrop needs to have a certain shape. This is the case for our menus
which need to have rounded corners. If the window transitions to being
non-vibrant, or not needing a special shape, then we can go back to the way our
window's NSView hierarchy has worked traditionally. So we need to reparent
NSViews during those transitions.

MozReview-Commit-ID: Bo2VzjhhR0A

--HG--
extra : rebase_source : 9eb463cc68c16c3b9281b57455330969c5e2642c
2017-11-19 18:38:35 -05:00
Andreea Pavel 9474960c52 Backed out 1 changesets (bug 1370040) for build bustage at /cocoa/VibrancyManager.mm:207 r=backout on a CLOSED TREE
Backed out changeset 84c737eb3c6e (bug 1370040)
2017-11-20 01:36:36 +02:00
Markus Stange 75bf1f6ae8 Bug 1370040 - Use the public API -[NSVisualEffectView setMaskImage:] instead of the private API -[NSWindow _cornerMask]. r=spohl
The idea is the following:
Behind-window vibrancy is mostly rendered by the window server. For a given
vibrant region of a window, the window server renders a vibrancy "backdrop",
which is a blurred version of everything that's behind that region, modified
with a color tint and blended in some way. Then it puts our actual window
contents on top of that background.
The backdrop's shape is usually a rectangle. If we don't want it to be a
rectangle, we need to tell the window server about the shape that we want it to
be. We can't just "draw" a different shape in our own rendering, because our
own rendering is merely placed on top of the backdrop - but here we want to
modify the shape of the backdrop itself.

NSVisualEffectView lets us set a mask image on the view. If this view is the
content view of a window, then the view will automatically communicate the mask
image to the window server.

Traditionally, our popup windows have had a ChildView as their content view. If
we now want an NSVisualEffectView to be the content view of the window, then we
need to nest the ChildView inside that NSVisualEffectView.
But this NSVisualEffectView is only needed when the window is vibrant and the
vibrancy backdrop needs to have a certain shape. This is the case for our menus
which need to have rounded corners. If the window transitions to being
non-vibrant, or not needing a special shape, then we can go back to the way our
window's NSView hierarchy has worked traditionally. So we need to reparent
NSViews during those transitions.

MozReview-Commit-ID: Bo2VzjhhR0A

--HG--
extra : rebase_source : 0434a17e2cddc94715db6a5fd17bc27e2cddd05c
2017-11-19 17:01:02 -05:00
Markus Stange b5fdbfc62c Bug 1387594 - Stop getting the font smoothing background color from the theme. r=mattwoodrow
MozReview-Commit-ID: 2r1B8SvEkEl
2017-09-14 23:09:47 +02:00
stefanh@inbox.com 3a689f8b9a Bug 1192053 - Implement NS_THEME_MAC_SOURCE_LIST_SELECTION and NS_THEME_MAC_ACTIVE_SOURCE_LIST_SELECTION. r=mstange. 2016-10-14 22:45:29 +02:00
Matt Woodrow f5298ba1b7 Bug 1297879 - Don't allow the cocoa GL context to be opaque if we vibrant regions within the window. r=mstange 2016-09-07 15:35:03 +12:00
Markus Stange f1138d1e77 Bug 1070710 - Use ViewRegion for vibrant areas in VibrancyManager. r=spohl
MozReview-Commit-ID: 5qVo59SV7QG

--HG--
extra : histedit_source : 12980052172b2a858a52978fdd98dea28a9ea854
2016-07-11 14:47:05 -04:00
stefanh@inbox.com d76d8b9c90 Bug 1192053 - Native theming: Support for Mac OS X source lists (background part). r=gijs, mstange. 2016-05-17 07:37:05 +02:00
Nicholas Nethercote 400204beea Bug 1229237 (part 4) - Make ThemeGeometry::mRect a LayoutDeviceIntRect. r=botond.
--HG--
extra : rebase_source : 3483ed8e2ff2e61ce8a74dcb59a7b43b46bf502d
2015-11-22 20:32:29 -08:00
Botond Ballo 5bf85e9f9d Bug 1220923 - Make nsIntRegion a typedef for IntRegionTyped<UnknownUnits>. r=nical
--HG--
extra : source : 1f371f014048ed4c3c25095233fea927311a7e23
2015-11-04 11:49:49 -05:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
stefanh@inbox.com bb3b4ef66e Bug 889085 - Remove an extra comma that accidentally slipped in from a7c9a6e1394e. 2015-05-26 20:23:47 +02:00
stefanh@inbox.com 540e84dadf Bug 889085 - Make sheets styled with '-moz-appearance: dialog;' vibrant/semi-transparent. r=mstange, roc. 2015-05-26 19:55:08 +02:00
Markus Stange 81d520103d Bug 1045213 - Make the highlighted menu item vibrant. r=smichaud 2015-02-04 17:25:19 -05:00
Markus Stange fd3d5eb0f0 Bug 1045213 - Use vibrancy effect for context menus. r=smichaud 2015-02-04 17:25:18 -05:00
Masatoshi Kimura 6cc5dabbee Bug 1111290 - Part 3: Remove TypedEnum.h and fold TypedEnumInternal.h into TypedEnumBits.h. r=waldo 2015-01-26 07:22:11 +09:00
Masatoshi Kimura be535304d8 Bug 1111290 - Part 1: Remove MOZ_(BEGIN|END)_ENUM_CLASS. r=waldo 2015-01-26 07:22:07 +09:00
Gijs Kruitbosch a64f8dab5f Bug 1075653 - Make tooltips use vibrancy on Yosemite. r=smichaud 2014-09-12 14:10:09 +01:00
Markus Stange 67c0411542 Bug 1055634 - Expose the fontSmoothingBackgroundColor from the vibrant NSVisualEffectView via nsITheme. r=smichaud 2014-10-24 18:32:23 +02:00
Markus Stange 2ac7cc891a Bug 1062801 - Fix non-unified build bustage. 2014-10-07 20:09:16 +02:00
Markus Stange eece1584e2 Bug 1062801 - Fill vibrant window regions with the correct vibrancy fill color. r=smichaud 2014-10-07 16:18:01 +02:00
Markus Stange 8a49452f67 Bug 1051522 - Create NSVisualEffectViews for vibrant window regions. r=smichaud 2014-08-28 02:15:33 +02:00