Closed Bug 1146727 Opened 9 years ago Closed 9 years ago

Add APZ info to about:support

Categories

(Core :: Graphics, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla39
Tracking Status
firefox39 --- fixed

People

(Reporter: dvander, Assigned: dvander)

References

Details

Attachments

(1 file, 1 obsolete file)

I'd like to show a row in about:support under Graphics that details which events are being handled by APZ, and if there are any obscure prefs set that would cause those events to be handled synchronously.
Attached patch bug1146727.patch (obsolete) — Splinter Review
If APZ is not available at all, you'll see:
   Asynchronous Pan/Zoom	none

On Linux/Windows, you'll see:
   Asynchronous Pan/Zoom	scrolling enabled

If you have some crazy pref set, you'll see:
   Asynchronous Pan/Zoom	async scrolling disabled due to unsupported pref: mousewheel.default.delta_multiplier_x
Attachment #8582134 - Flags: review?(bugmail.mozilla)
Attachment #8582134 - Flags: review?(jmuizelaar)
Comment on attachment 8582134 [details] [diff] [review]
bug1146727.patch

Review of attachment 8582134 [details] [diff] [review]:
-----------------------------------------------------------------

Looks good to me, but I don't think I'm qualified to review. Leaving that to jrmuizel. One change I'd like to see in addition the comments below: override SupportsApzTouchInput to return true in widget/gonk/GfxInfo.cpp. I don't know if about:support is actually accessible on B2G but in case it is we should add that for correctness.

Also note that touch-based scrolling with APZ works now on windows if you set dom.w3c_touch_events.enabled to 1 or 2. However I guess unless we change the default value for that it makes sense to leave it as "unsupported".

::: toolkit/locales/en-US/chrome/global/aboutSupport.properties
@@ +95,5 @@
>  # or 'false')
>  multiProcessStatus = %1$S/%2$S (default: %3$S)
> +
> +asyncPanZoom = Asynchronous Pan/Zoom
> +wheelEnabled = scrolling enabled

s/scrolling/wheel input/

@@ +99,5 @@
> +wheelEnabled = scrolling enabled
> +touchEnabled = touch input enabled
> +
> +# LOCALIZATION NOTE %1 will be replaced with the key of a preference.
> +wheelProblem = async scrolling disabled due to unsupported pref: %S

s/scrolling/wheel input/

::: widget/nsIGfxInfo.idl
@@ +56,5 @@
>  
> +  const long APZ_FEATURE_WHEEL_INPUT = 1;
> +  const long APZ_FEATURE_TOUCH_INPUT = 2;
> +
> +  // Returns whether an APZ feature is supported and enabled, and if it is,

s/whether/true if/
Attachment #8582134 - Flags: review?(bugmail.mozilla) → feedback+
Comment on attachment 8582134 [details] [diff] [review]
bug1146727.patch

Review of attachment 8582134 [details] [diff] [review]:
-----------------------------------------------------------------

Did you consider using the GfxInfo::GetInfo/GfxInfoCollector infrastructure instead of exposing this directly.

See GetAzureBackendInfo for an example.
Attached patch v2Splinter Review
Refactor to use the GfxInfoCollector stuff, also includes kats's suggestions.
Attachment #8582134 - Attachment is obsolete: true
Attachment #8582134 - Flags: review?(jmuizelaar)
Attachment #8582626 - Flags: review?(jmuizelaar)
I didn't straight-up spew the collected keys for APZ since the formatted diagnostic info is a little more readable.
Attachment #8582626 - Flags: review?(jmuizelaar) → review+
https://hg.mozilla.org/mozilla-central/rev/16be901108a8
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla39
Depends on: 1149482
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: