Closed Bug 1625296 Opened 5 months ago Closed 5 months ago

[Wayland] Enable basic compositor smooth drawing by pref

Categories

(Core :: Widget: Gtk, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
mozilla76
Tracking Status
firefox76 --- fixed

People

(Reporter: stransky, Assigned: stransky)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Add preference to enable smooth drawing of basic compositor. It has significant performance impact but does not produce any rendering artifacts.
It's related to cache mode removed in Bug 1623060

Attachment #9136133 - Attachment is obsolete: true
Attachment #9136133 - Attachment is obsolete: false
Pushed by btara@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/2a1b5f29d43d
[Wayland] Enable basic compositor smooth drawing by widget.wayland-smooth-rendering pref, r=jhorak

Backed out changeset 2a1b5f29d43d (bug 1625296) for bustages complaining about WindowSurfaceWayland.cpp

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&fromchange=0bd7ed7cea6077e4020f571d23f74a3a94ed852f&tochange=6762dd78491c50505a7d63bd67405e161f88f4a6&searchStr=linux%2Cbuild&selectedJob=295376635

Backout link: https://hg.mozilla.org/integration/autoland/rev/dd137954e37b75979808c4f118b27bc6a50de1c2

Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=295376635&repo=autoland&lineNumber=45383

[task 2020-03-30T14:21:09.317Z] 14:21:09     INFO -  make[4]: Entering directory '/builds/worker/workspace/obj-build/widget/gtk'
[task 2020-03-30T14:21:09.325Z] 14:21:09     INFO -  /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang++ -std=gnu++17 -o Unified_cpp_widget_gtk1.o -c  -I/builds/worker/workspace/obj-build/dist/stl_wrappers -I/builds/worker/workspace/obj-build/dist/system_wrappers -include /builds/worker/checkouts/gecko/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -ftrivial-auto-var-init=pattern -DDEBUG=1 -DOS_POSIX=1 -DOS_LINUX=1 -DCAIRO_GFX '-DMOZ_APP_NAME="firefox"' -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/widget/gtk -I/builds/worker/workspace/obj-build/widget/gtk -I/builds/worker/workspace/obj-build/ipc/ipdl/_ipdlheaders -I/builds/worker/checkouts/gecko/ipc/chromium/src -I/builds/worker/checkouts/gecko/ipc/glue -I/builds/worker/checkouts/gecko/layout/base -I/builds/worker/checkouts/gecko/layout/generic -I/builds/worker/checkouts/gecko/layout/xul -I/builds/worker/checkouts/gecko/other-licenses/atk-1.0 -I/builds/worker/checkouts/gecko/widget -I/builds/worker/checkouts/gecko/widget/headless -I/builds/worker/checkouts/gecko/widget/x11 -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /builds/worker/workspace/obj-build/mozilla-config.h -Qunused-arguments -Qunused-arguments -Wall -Wbitfield-enum-conversion -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wwrite-strings -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wc++2a-compat -Wcomma -Wimplicit-fallthrough -Wunused-function -Wunused-variable -Werror=non-literal-null-conversion -Wstring-conversion -Wtautological-overlap-compare -Wtautological-unsigned-enum-zero-compare -Wtautological-unsigned-zero-compare -Wno-error=tautological-type-limit-compare -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=backend-plugin -Wno-error=return-std-move -Wno-error=atomic-alignment -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -Wno-unknown-warning-option -D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -fno-aligned-new -fcrash-diagnostics-dir=/builds/worker/artifacts -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -Os -fno-omit-frame-pointer -funwind-tables -Werror -I/builds/worker/checkouts/gecko/widget/gtk/compat-gtk3 -pthread -I/usr/include/gtk-3.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/gtk-3.0/unix-print -pthread -I/usr/include/gtk-3.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/libpng12 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -Wno-error=shadow -fexperimental-new-pass-manager  -MD -MP -MF .deps/Unified_cpp_widget_gtk1.o.pp   Unified_cpp_widget_gtk1.cpp
[task 2020-03-30T14:21:09.326Z] 14:21:09     INFO -  In file included from Unified_cpp_widget_gtk1.cpp:2:
[task 2020-03-30T14:21:09.326Z] 14:21:09    ERROR -  /builds/worker/checkouts/gecko/widget/gtk/WindowSurfaceWayland.cpp:526:7: error: field 'mIsMainThread' will be initialized after field 'mSmoothRendering' [-Werror,-Wreorder]
[task 2020-03-30T14:21:09.326Z] 14:21:09     INFO -        mIsMainThread(NS_IsMainThread()),
[task 2020-03-30T14:21:09.326Z] 14:21:09     INFO -        ^
[task 2020-03-30T14:21:09.326Z] 14:21:09     INFO -  1 error generated.
[task 2020-03-30T14:21:09.326Z] 14:21:09     INFO -  /builds/worker/checkouts/gecko/config/rules.mk:750: recipe for target 'Unified_cpp_widget_gtk1.o' failed
[task 2020-03-30T14:21:09.326Z] 14:21:09    ERROR -  make[4]: *** [Unified_cpp_widget_gtk1.o] Error 1
[task 2020-03-30T14:21:09.326Z] 14:21:09     INFO -  make[4]: Leaving directory '/builds/worker/workspace/obj-build/widget/gtk'
[task 2020-03-30T14:21:09.326Z] 14:21:09     INFO -  /builds/worker/checkouts/gecko/config/recurse.mk:74: recipe for target 'widget/gtk/target-objects' failed
[task 2020-03-30T14:21:09.326Z] 14:21:09    ERROR -  make[3]: *** [widget/gtk/target-objects] Error 2
[task 2020-03-30T14:21:09.326Z] 14:21:09     INFO -  make[3]: *** Waiting for unfinished jobs....
Flags: needinfo?(stransky)
Pushed by dluca@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/e03bfd93ee51
[Wayland] Enable basic compositor smooth drawing by widget.wayland-smooth-rendering pref, r=jhorak
Status: NEW → RESOLVED
Closed: 5 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla76
You need to log in before you can comment on or make changes to this bug.