SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
with i18n hacks
Peng Wu
Presented by
Red Hat
License statement goes here. See https://fedoraproject.org/wiki/Licensing#Content_Licenses for acceptable licenses.
Wayland intro
Today's Topics
1. X Window Background
2. Wayland intro
3. Wayland with input method frameworks
4. Wayland i18n hacks
5. Summary
X Window
Background
X originated at the MIT in 1984
Since then, never touched the core protocol
X Window History
parts of the core protocol seldom used today
X11 core graphics functionality seldom used
XIM protocol bypassed by input method
frameworks, such as ibus, scim, fcitx.
Why not X?
clients render locally
clients tell the X server what they've drawn
the server asks the WM to display it
the window manager decides what to draw
and where
the X server displays what the WM rendered
So, the window manager is the new X server
Client Rendering Steps
Wayland intro
Wayland - Wayland Compositor Infrastructure
Weston - The Weston Wayland Compositor
libinput - input device management and event
handling library
Wayland dissected
RPC mechanism designed for window system
Utility functions for client/server development
Generate codes from XML protocol definition
some client/server codes for communicating with
the display server.
Define the core wayland protocol
in protocol/wayland.xml
Wayland intro
The Reference Wayland Compositor
Reference Implementation
Support additionally protocols
in weston/protocol
Maybe we could call these as extensions?
For input method support
See text.xml and input-method.xml
Weston display server
clients render locally
clients tell the server what they've drawn
the server decides what to draw and where
So, Wayland just cut out the middle man
Client Rendering Steps
it's tractable
'every frame is perfect'
a set of pixels that should be shown in a window
coherently at one time
Wayland Pros
client says, 'display this'
server displays it
job done.
solely frame-based
Wayland with input
method
frameworks
Bus-Centric Architecture
It has an ibus-daemon, which manages all clients.
all engines, panel, config modules & clients are
clients of ibus-daemon.
iBus is based on dbus IPC protocol.
ibus intro
ibus architecture
ibus
daemon
Application
(GTK+)
Application
(QT)
ibus
XIM Server
ibus
panel UI
ibus
engine pinyin
ibus
engine anthy
ibus
config
XIM protocol is old, and have many problems.
Many GUI ToolKits implement own IMModules
Gtk+ - GtkIMContext
QT – QinputContext
The XIM is by-passed by default configuration.
ibus with X
Proposed architecture
Gtk+ App
Wayland
D-BUS ibus daemon
Every daemon serves one aspect of
functionality.
weston for display
dbus for RPC
ibus for input
Gtk+ Apps talks to the specific daemon only
when needed.
Why not by-pass display server again? ;-)
Advantages
Wayland i18n
hacks
fixes dual-width glyph spaces problem
learned it from vte widget
Fixes cursor problem with vim, emacs
respect the virtual terminal spec
weston terminal hacks
Wayland is wonderful
more works on Wayland i18n supports
input methods
font rendering
Summary
Questions?
License statement goes here. See https://fedoraproject.org/wiki/Licensing#Content_Licenses for acceptable licenses.
example@fedoraproject.org
Contact:

Más contenido relacionado

La actualidad más candente

XPDDS18: The Evolution of Virtualization in the Arm Architecture - Julien Gra...
XPDDS18: The Evolution of Virtualization in the Arm Architecture - Julien Gra...XPDDS18: The Evolution of Virtualization in the Arm Architecture - Julien Gra...
XPDDS18: The Evolution of Virtualization in the Arm Architecture - Julien Gra...The Linux Foundation
 
[Unite Seoul 2019] Mali GPU Architecture and Mobile Studio
[Unite Seoul 2019] Mali GPU Architecture and Mobile Studio [Unite Seoul 2019] Mali GPU Architecture and Mobile Studio
[Unite Seoul 2019] Mali GPU Architecture and Mobile Studio Owen Wu
 
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...The Linux Foundation
 
XPDDS18: Windows PV Drivers Project: Status and Updates - Paul Durrant, Citri...
XPDDS18: Windows PV Drivers Project: Status and Updates - Paul Durrant, Citri...XPDDS18: Windows PV Drivers Project: Status and Updates - Paul Durrant, Citri...
XPDDS18: Windows PV Drivers Project: Status and Updates - Paul Durrant, Citri...The Linux Foundation
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...The Linux Foundation
 
XPDS16: Display Handler, a Client Display Framework for Xen - Brendan Kerrig...
XPDS16:  Display Handler, a Client Display Framework for Xen - Brendan Kerrig...XPDS16:  Display Handler, a Client Display Framework for Xen - Brendan Kerrig...
XPDS16: Display Handler, a Client Display Framework for Xen - Brendan Kerrig...The Linux Foundation
 
SE-4087, Leveraging HW-based content security, by Dan Wong
SE-4087, Leveraging HW-based content security, by Dan WongSE-4087, Leveraging HW-based content security, by Dan Wong
SE-4087, Leveraging HW-based content security, by Dan WongAMD Developer Central
 
[Unity Forum 2019] Mobile Graphics Optimization Guides
[Unity Forum 2019] Mobile Graphics Optimization Guides[Unity Forum 2019] Mobile Graphics Optimization Guides
[Unity Forum 2019] Mobile Graphics Optimization GuidesOwen Wu
 
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...The Linux Foundation
 
XS Boston 2008 Networking Direct Assignment
XS Boston 2008 Networking Direct AssignmentXS Boston 2008 Networking Direct Assignment
XS Boston 2008 Networking Direct AssignmentThe Linux Foundation
 
Scale17x: Thinking outside of the conceived tech comfort zone
Scale17x: Thinking outside of the conceived tech comfort zoneScale17x: Thinking outside of the conceived tech comfort zone
Scale17x: Thinking outside of the conceived tech comfort zoneThe Linux Foundation
 
Project ACRN CSE Virtualization
Project ACRN CSE VirtualizationProject ACRN CSE Virtualization
Project ACRN CSE VirtualizationProject ACRN
 
LCE13: Android Graphics Upstreaming
LCE13: Android Graphics UpstreamingLCE13: Android Graphics Upstreaming
LCE13: Android Graphics UpstreamingLinaro
 
Unity mobile game performance profiling – using arm mobile studio
Unity mobile game performance profiling – using arm mobile studioUnity mobile game performance profiling – using arm mobile studio
Unity mobile game performance profiling – using arm mobile studioOwen Wu
 
New product release presentation july 20 2011
New product release presentation july 20 2011New product release presentation july 20 2011
New product release presentation july 20 2011Eran Kessel
 
OSSEU18: NVDIMM and Virtualization - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization  - George Dunlap, CitrixOSSEU18: NVDIMM and Virtualization  - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization - George Dunlap, CitrixThe Linux Foundation
 

La actualidad más candente (20)

XPDDS18: The Evolution of Virtualization in the Arm Architecture - Julien Gra...
XPDDS18: The Evolution of Virtualization in the Arm Architecture - Julien Gra...XPDDS18: The Evolution of Virtualization in the Arm Architecture - Julien Gra...
XPDDS18: The Evolution of Virtualization in the Arm Architecture - Julien Gra...
 
[Unite Seoul 2019] Mali GPU Architecture and Mobile Studio
[Unite Seoul 2019] Mali GPU Architecture and Mobile Studio [Unite Seoul 2019] Mali GPU Architecture and Mobile Studio
[Unite Seoul 2019] Mali GPU Architecture and Mobile Studio
 
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...XPDDS19:   Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
XPDDS19: Xen API Archaeology: Creating a Full-Featured VMI Debugger for the...
 
XPDDS18: Windows PV Drivers Project: Status and Updates - Paul Durrant, Citri...
XPDDS18: Windows PV Drivers Project: Status and Updates - Paul Durrant, Citri...XPDDS18: Windows PV Drivers Project: Status and Updates - Paul Durrant, Citri...
XPDDS18: Windows PV Drivers Project: Status and Updates - Paul Durrant, Citri...
 
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
XPDDS19 Keynote: Xen in Automotive - Artem Mygaiev, Director, Technology Solu...
 
Ian Prattlinuxworld Xen Aug2008
Ian Prattlinuxworld Xen Aug2008Ian Prattlinuxworld Xen Aug2008
Ian Prattlinuxworld Xen Aug2008
 
XPDS16: Display Handler, a Client Display Framework for Xen - Brendan Kerrig...
XPDS16:  Display Handler, a Client Display Framework for Xen - Brendan Kerrig...XPDS16:  Display Handler, a Client Display Framework for Xen - Brendan Kerrig...
XPDS16: Display Handler, a Client Display Framework for Xen - Brendan Kerrig...
 
XS Boston 2008 Network Topology
XS Boston 2008 Network TopologyXS Boston 2008 Network Topology
XS Boston 2008 Network Topology
 
SE-4087, Leveraging HW-based content security, by Dan Wong
SE-4087, Leveraging HW-based content security, by Dan WongSE-4087, Leveraging HW-based content security, by Dan Wong
SE-4087, Leveraging HW-based content security, by Dan Wong
 
Iaas on xcp
Iaas on xcpIaas on xcp
Iaas on xcp
 
[Unity Forum 2019] Mobile Graphics Optimization Guides
[Unity Forum 2019] Mobile Graphics Optimization Guides[Unity Forum 2019] Mobile Graphics Optimization Guides
[Unity Forum 2019] Mobile Graphics Optimization Guides
 
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...
XDF18: Heterogeneous Real-Time SoC Software Architecture - Stefano Stabellini...
 
XS Boston 2008 Networking Direct Assignment
XS Boston 2008 Networking Direct AssignmentXS Boston 2008 Networking Direct Assignment
XS Boston 2008 Networking Direct Assignment
 
Scale17x: Thinking outside of the conceived tech comfort zone
Scale17x: Thinking outside of the conceived tech comfort zoneScale17x: Thinking outside of the conceived tech comfort zone
Scale17x: Thinking outside of the conceived tech comfort zone
 
Project ACRN CSE Virtualization
Project ACRN CSE VirtualizationProject ACRN CSE Virtualization
Project ACRN CSE Virtualization
 
LCE13: Android Graphics Upstreaming
LCE13: Android Graphics UpstreamingLCE13: Android Graphics Upstreaming
LCE13: Android Graphics Upstreaming
 
XS 2008 Boston VTPM
XS 2008 Boston VTPMXS 2008 Boston VTPM
XS 2008 Boston VTPM
 
Unity mobile game performance profiling – using arm mobile studio
Unity mobile game performance profiling – using arm mobile studioUnity mobile game performance profiling – using arm mobile studio
Unity mobile game performance profiling – using arm mobile studio
 
New product release presentation july 20 2011
New product release presentation july 20 2011New product release presentation july 20 2011
New product release presentation july 20 2011
 
OSSEU18: NVDIMM and Virtualization - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization  - George Dunlap, CitrixOSSEU18: NVDIMM and Virtualization  - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization - George Dunlap, Citrix
 

Similar a Wayland intro with_i18n_hacks

ColdFusion .NET integration - Adobe Max 2006
ColdFusion .NET integration - Adobe Max 2006ColdFusion .NET integration - Adobe Max 2006
ColdFusion .NET integration - Adobe Max 2006Rupesh Kumar
 
Driving Down Automotive Costs for Richer HMIs with Qt & i.MX RT1170
Driving Down Automotive Costs for Richer HMIs with Qt & i.MX RT1170Driving Down Automotive Costs for Richer HMIs with Qt & i.MX RT1170
Driving Down Automotive Costs for Richer HMIs with Qt & i.MX RT1170Qt
 
Utf 8'en'ibm sametime 9 - voice and video deployment
Utf 8'en'ibm sametime 9 - voice and video deployment Utf 8'en'ibm sametime 9 - voice and video deployment
Utf 8'en'ibm sametime 9 - voice and video deployment a8us
 
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep diveITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep diveITCamp
 
Developing for Hybrid Cloud with Bluemix
Developing for Hybrid Cloud with BluemixDeveloping for Hybrid Cloud with Bluemix
Developing for Hybrid Cloud with BluemixRoberto Pozzi
 
Visão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
Visão geral do hardware do servidor System z e Linux on z - Concurso MainframeVisão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
Visão geral do hardware do servidor System z e Linux on z - Concurso MainframeAnderson Bassani
 
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...Edge AI and Vision Alliance
 
TechWiseTV Workshop: Enterprise NFV
TechWiseTV Workshop: Enterprise NFVTechWiseTV Workshop: Enterprise NFV
TechWiseTV Workshop: Enterprise NFVRobb Boyd
 
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayerTaking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayerDaniel Krook
 
“Vitis and Vitis AI: Application Acceleration from Cloud to Edge,” a Presenta...
“Vitis and Vitis AI: Application Acceleration from Cloud to Edge,” a Presenta...“Vitis and Vitis AI: Application Acceleration from Cloud to Edge,” a Presenta...
“Vitis and Vitis AI: Application Acceleration from Cloud to Edge,” a Presenta...Edge AI and Vision Alliance
 
Developing and Deploying Microservices to IBM Cloud Private
Developing and Deploying Microservices to IBM Cloud PrivateDeveloping and Deploying Microservices to IBM Cloud Private
Developing and Deploying Microservices to IBM Cloud PrivateShikha Srivastava
 
Operating System---18 (Virtual Machines)
Operating System---18 (Virtual Machines)Operating System---18 (Virtual Machines)
Operating System---18 (Virtual Machines)NareenAsad
 
Catan world and Churchill
Catan world and ChurchillCatan world and Churchill
Catan world and ChurchillGrant Goodale
 
Aws Deployment Tools - Overview, Details, Implementation
Aws Deployment Tools - Overview, Details, ImplementationAws Deployment Tools - Overview, Details, Implementation
Aws Deployment Tools - Overview, Details, Implementationserkancapkan
 
A REPORT ON CITRIX INDEPENDENT COMPUTING ARCHITECTURE (ICA) PROTOCOL
A REPORT ON CITRIX INDEPENDENT COMPUTING  ARCHITECTURE (ICA) PROTOCOL A REPORT ON CITRIX INDEPENDENT COMPUTING  ARCHITECTURE (ICA) PROTOCOL
A REPORT ON CITRIX INDEPENDENT COMPUTING ARCHITECTURE (ICA) PROTOCOL chaitanya ivvala
 
Next Generation Address Management with VitalQIP - Alcatel-Lucent and Perficient
Next Generation Address Management with VitalQIP - Alcatel-Lucent and PerficientNext Generation Address Management with VitalQIP - Alcatel-Lucent and Perficient
Next Generation Address Management with VitalQIP - Alcatel-Lucent and PerficientPerficient, Inc.
 
Android Live Streaming Box Technical
Android Live Streaming Box Technical Android Live Streaming Box Technical
Android Live Streaming Box Technical Jimmin Kurichiyil
 
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...mfrancis
 

Similar a Wayland intro with_i18n_hacks (20)

ColdFusion .NET integration - Adobe Max 2006
ColdFusion .NET integration - Adobe Max 2006ColdFusion .NET integration - Adobe Max 2006
ColdFusion .NET integration - Adobe Max 2006
 
Tizen Window System
Tizen Window SystemTizen Window System
Tizen Window System
 
Driving Down Automotive Costs for Richer HMIs with Qt & i.MX RT1170
Driving Down Automotive Costs for Richer HMIs with Qt & i.MX RT1170Driving Down Automotive Costs for Richer HMIs with Qt & i.MX RT1170
Driving Down Automotive Costs for Richer HMIs with Qt & i.MX RT1170
 
Utf 8'en'ibm sametime 9 - voice and video deployment
Utf 8'en'ibm sametime 9 - voice and video deployment Utf 8'en'ibm sametime 9 - voice and video deployment
Utf 8'en'ibm sametime 9 - voice and video deployment
 
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep diveITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
 
Developing for Hybrid Cloud with Bluemix
Developing for Hybrid Cloud with BluemixDeveloping for Hybrid Cloud with Bluemix
Developing for Hybrid Cloud with Bluemix
 
Visão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
Visão geral do hardware do servidor System z e Linux on z - Concurso MainframeVisão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
Visão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
 
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
 
TechWiseTV Workshop: Enterprise NFV
TechWiseTV Workshop: Enterprise NFVTechWiseTV Workshop: Enterprise NFV
TechWiseTV Workshop: Enterprise NFV
 
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayerTaking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
Taking the Next Hot Mobile Game Live with Docker and IBM SoftLayer
 
Thinkbox Software
Thinkbox SoftwareThinkbox Software
Thinkbox Software
 
“Vitis and Vitis AI: Application Acceleration from Cloud to Edge,” a Presenta...
“Vitis and Vitis AI: Application Acceleration from Cloud to Edge,” a Presenta...“Vitis and Vitis AI: Application Acceleration from Cloud to Edge,” a Presenta...
“Vitis and Vitis AI: Application Acceleration from Cloud to Edge,” a Presenta...
 
Developing and Deploying Microservices to IBM Cloud Private
Developing and Deploying Microservices to IBM Cloud PrivateDeveloping and Deploying Microservices to IBM Cloud Private
Developing and Deploying Microservices to IBM Cloud Private
 
Operating System---18 (Virtual Machines)
Operating System---18 (Virtual Machines)Operating System---18 (Virtual Machines)
Operating System---18 (Virtual Machines)
 
Catan world and Churchill
Catan world and ChurchillCatan world and Churchill
Catan world and Churchill
 
Aws Deployment Tools - Overview, Details, Implementation
Aws Deployment Tools - Overview, Details, ImplementationAws Deployment Tools - Overview, Details, Implementation
Aws Deployment Tools - Overview, Details, Implementation
 
A REPORT ON CITRIX INDEPENDENT COMPUTING ARCHITECTURE (ICA) PROTOCOL
A REPORT ON CITRIX INDEPENDENT COMPUTING  ARCHITECTURE (ICA) PROTOCOL A REPORT ON CITRIX INDEPENDENT COMPUTING  ARCHITECTURE (ICA) PROTOCOL
A REPORT ON CITRIX INDEPENDENT COMPUTING ARCHITECTURE (ICA) PROTOCOL
 
Next Generation Address Management with VitalQIP - Alcatel-Lucent and Perficient
Next Generation Address Management with VitalQIP - Alcatel-Lucent and PerficientNext Generation Address Management with VitalQIP - Alcatel-Lucent and Perficient
Next Generation Address Management with VitalQIP - Alcatel-Lucent and Perficient
 
Android Live Streaming Box Technical
Android Live Streaming Box Technical Android Live Streaming Box Technical
Android Live Streaming Box Technical
 
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
 

Wayland intro with_i18n_hacks

  • 1. with i18n hacks Peng Wu Presented by Red Hat License statement goes here. See https://fedoraproject.org/wiki/Licensing#Content_Licenses for acceptable licenses. Wayland intro
  • 2. Today's Topics 1. X Window Background 2. Wayland intro 3. Wayland with input method frameworks 4. Wayland i18n hacks 5. Summary
  • 4. X originated at the MIT in 1984 Since then, never touched the core protocol X Window History
  • 5. parts of the core protocol seldom used today X11 core graphics functionality seldom used XIM protocol bypassed by input method frameworks, such as ibus, scim, fcitx. Why not X?
  • 6. clients render locally clients tell the X server what they've drawn the server asks the WM to display it the window manager decides what to draw and where the X server displays what the WM rendered So, the window manager is the new X server Client Rendering Steps
  • 8. Wayland - Wayland Compositor Infrastructure Weston - The Weston Wayland Compositor libinput - input device management and event handling library Wayland dissected
  • 9. RPC mechanism designed for window system Utility functions for client/server development Generate codes from XML protocol definition some client/server codes for communicating with the display server. Define the core wayland protocol in protocol/wayland.xml Wayland intro
  • 10. The Reference Wayland Compositor Reference Implementation Support additionally protocols in weston/protocol Maybe we could call these as extensions? For input method support See text.xml and input-method.xml Weston display server
  • 11. clients render locally clients tell the server what they've drawn the server decides what to draw and where So, Wayland just cut out the middle man Client Rendering Steps
  • 12. it's tractable 'every frame is perfect' a set of pixels that should be shown in a window coherently at one time Wayland Pros
  • 13. client says, 'display this' server displays it job done. solely frame-based
  • 15. Bus-Centric Architecture It has an ibus-daemon, which manages all clients. all engines, panel, config modules & clients are clients of ibus-daemon. iBus is based on dbus IPC protocol. ibus intro
  • 17. XIM protocol is old, and have many problems. Many GUI ToolKits implement own IMModules Gtk+ - GtkIMContext QT – QinputContext The XIM is by-passed by default configuration. ibus with X
  • 19. Every daemon serves one aspect of functionality. weston for display dbus for RPC ibus for input Gtk+ Apps talks to the specific daemon only when needed. Why not by-pass display server again? ;-) Advantages
  • 21. fixes dual-width glyph spaces problem learned it from vte widget Fixes cursor problem with vim, emacs respect the virtual terminal spec weston terminal hacks
  • 22. Wayland is wonderful more works on Wayland i18n supports input methods font rendering Summary
  • 23. Questions? License statement goes here. See https://fedoraproject.org/wiki/Licensing#Content_Licenses for acceptable licenses. example@fedoraproject.org Contact: