Skip to content

Commit

Permalink
Update to use GrDirectContexts::MakeGL (#46308)
Browse files Browse the repository at this point in the history
This was added in https://skia-review.googlesource.com/c/skia/+/760017
and the old versions were deprecated.

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [ ] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
  • Loading branch information
kjlubick authored and harryterkelsen committed Oct 23, 2023
1 parent 951c537 commit 7b83cb8
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 4 deletions.
3 changes: 2 additions & 1 deletion lib/web_ui/skwasm/surface.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include "third_party/skia/include/gpu/GrBackendSurface.h"
#include "third_party/skia/include/gpu/GrDirectContext.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLDirectContext.h"

using namespace Skwasm;

Expand Down Expand Up @@ -91,7 +92,7 @@ void Surface::_init() {
makeCurrent(_glContext);
emscripten_webgl_enable_extension(_glContext, "WEBGL_debug_renderer_info");

_grContext = GrDirectContext::MakeGL(GrGLMakeNativeInterface());
_grContext = GrDirectContexts::MakeGL(GrGLMakeNativeInterface());

// WebGL should already be clearing the color and stencil buffers, but do it
// again here to ensure Skia receives them in the expected state.
Expand Down
3 changes: 2 additions & 1 deletion shell/common/shell_io_manager.cc
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

#include "flutter/fml/message_loop.h"
#include "flutter/shell/common/context_options.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLDirectContext.h"
#include "third_party/skia/include/gpu/gl/GrGLInterface.h"

namespace flutter {
Expand All @@ -22,7 +23,7 @@ sk_sp<GrDirectContext> ShellIOManager::CreateCompatibleResourceLoadingContext(

const auto options = MakeDefaultContextOptions(ContextType::kResource);

if (auto context = GrDirectContext::MakeGL(gl_interface, options)) {
if (auto context = GrDirectContexts::MakeGL(gl_interface, options)) {
// Do not cache textures created by the image decoder. These textures
// should be deleted when they are no longer referenced by an SkImage.
context->setResourceCacheLimit(0);
Expand Down
3 changes: 2 additions & 1 deletion shell/gpu/gpu_surface_gl_skia.cc
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#include "third_party/skia/include/gpu/GrContextOptions.h"
#include "third_party/skia/include/gpu/ganesh/SkSurfaceGanesh.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLDirectContext.h"
#include "third_party/skia/include/gpu/gl/GrGLTypes.h"

// These are common defines present on all OpenGL headers. However, we don't
Expand Down Expand Up @@ -51,7 +52,7 @@ sk_sp<GrDirectContext> GPUSurfaceGLSkia::MakeGLContext(
const auto options =
MakeDefaultContextOptions(ContextType::kRender, GrBackendApi::kOpenGL);

auto context = GrDirectContext::MakeGL(delegate->GetGLInterface(), options);
auto context = GrDirectContexts::MakeGL(delegate->GetGLInterface(), options);

if (!context) {
FML_LOG(ERROR) << "Failed to set up Skia Gr context.";
Expand Down
3 changes: 2 additions & 1 deletion testing/test_gl_surface.cc
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#include "third_party/skia/include/gpu/GrBackendSurface.h"
#include "third_party/skia/include/gpu/ganesh/SkSurfaceGanesh.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLDirectContext.h"
#include "third_party/skia/include/gpu/gl/GrGLAssembleInterface.h"
#include "third_party/skia/include/gpu/gl/GrGLTypes.h"

Expand Down Expand Up @@ -336,7 +337,7 @@ sk_sp<GrDirectContext> TestGLSurface::CreateGrContext() {
return nullptr;
}

context_ = GrDirectContext::MakeGL(interface);
context_ = GrDirectContexts::MakeGL(interface);
return context_;
}

Expand Down

0 comments on commit 7b83cb8

Please sign in to comment.