[M108 Migration][API] Add ewk_context_max_refresh_rate_set 07/288007/4
authorayush.k123 <ayush.k123@samsung.com>
Wed, 8 Feb 2023 09:51:41 +0000 (15:21 +0530)
committerBot Blink <blinkbot@samsung.com>
Mon, 13 Feb 2023 06:28:08 +0000 (06:28 +0000)
commit55bd60af5017356213135514d09731baaefce335
treefceb58b33c6349acd3f1a1f803b1bb11ea942984
parent1bd2c48e03a0afd8d2dbe9e2d8e85ee61c56a5d8
[M108 Migration][API] Add ewk_context_max_refresh_rate_set

To reduce current consumption, some devices need to set screen FPS limitation.
This api is added to set screen FPS limitation.

If max refresh rate is set as 30, each thread will work as below.
1) With |setInterval(16ms)|.
 - Renderer main thread : 60fps
 - Renderer raster thread : 30fps
 - Renderer compositor thread : 30fps
 - UI main thread : 30fps

2) With |setInterval(20ms)|
 - Renderer main thread : 50fps
 - Renderer raster thread : 30fps
 - Renderer compositor thread : 30fps
 - UI main thread : 30fps

3) With |requestAnimationFrame|
 - Renderer main thread : 30fps
 - Renderer raster thread : 30fps
 - Renderer compositor thread : 30fps
 - UI main thread : 30fps

References:
https://review.tizen.org/gerrit/270945

Change-Id: I05d8e28afe2b12ccf1d281c7634bab380a0e5b40
Signed-off-by: Ayush Kumar <ayush.k123@samsung.com>
20 files changed:
content/browser/web_contents/web_contents_impl.cc
content/public/common/content_switches.cc
content/public/common/content_switches.h
content/renderer/agent_scheduling_group.cc
third_party/blink/common/web_preferences/web_preferences.cc
third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc
third_party/blink/public/common/web_preferences/web_preferences.h
third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h
third_party/blink/public/mojom/BUILD.gn
third_party/blink/public/mojom/webpreferences/web_preferences.mojom
third_party/blink/public/web/web_frame_widget.h
third_party/blink/renderer/core/frame/web_frame_widget_impl.cc
third_party/blink/renderer/core/frame/web_frame_widget_impl.h
third_party/blink/renderer/platform/widget/widget_base.cc
third_party/blink/renderer/platform/widget/widget_base.h
tizen_src/ewk/efl_integration/eweb_context.cc
tizen_src/ewk/efl_integration/eweb_context.h
tizen_src/ewk/efl_integration/private/ewk_context_private.cc
tizen_src/ewk/efl_integration/private/ewk_context_private.h
tizen_src/ewk/efl_integration/public/ewk_context.cc