Wayland intro and ibus support Presented by Peng Wu Software - - PowerPoint PPT Presentation

wayland intro and ibus support
SMART_READER_LITE
LIVE PREVIEW

Wayland intro and ibus support Presented by Peng Wu Software - - PowerPoint PPT Presentation

Wayland intro and ibus support Presented by Peng Wu Software Engineer License statement goes here. See https://fedoraproject.org/wiki/Licensing#Content_Licenses for acceptable licenses. Today's Topics 1. wayland intro 2. ibus wayland support


slide-1
SLIDE 1

Peng Wu

Presented by

Software Engineer

License statement goes here. See https://fedoraproject.org/wiki/Licensing#Content_Licenses for acceptable licenses.

Wayland intro and ibus support

slide-2
SLIDE 2

Today's Topics

  • 1. wayland intro
  • 2. ibus wayland support
slide-3
SLIDE 3

wayland intro

slide-4
SLIDE 4

X originated at the MIT in 1984 Since then, never touched the core protocol

X Window History

slide-5
SLIDE 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?

slide-6
SLIDE 6

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

slide-7
SLIDE 7

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

slide-8
SLIDE 8

ibus wayland support

slide-9
SLIDE 9

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 base on dbus IPC protocol.

ibus intro

slide-10
SLIDE 10

ibus architecture

ibus daemon Application (GTK+) Application (QT) ibus XIM Server ibus panel UI ibus engine pinyin ibus engine anthy ibus config

slide-11
SLIDE 11

iBus uses dbus RPC for communication.

Clients can use any languages to communicate with ibus Engines can be wrote by any languages

The daemon, engines, clients & UI, all partitions are running in separated processes

One of them has problem, it will not impact all system All partitions can be restarted on the fly. Engine can be loaded & unloaded on demand.

Advantage of iBus

slide-12
SLIDE 12

The openismus design

Wayland Compositor Application (GTK+) Application (QT) ibus daemon

1 . inpu t even t/w ay land s tanda rd p ro to co l w ayland text p ro to co l

slide-13
SLIDE 13

1.the wayland compositor send the input event to the application; 2.the application sends the input event to the wayland compositor by wayland text protocol; 3.wayland compositor sends the input event to the ibus daemon by wayland input method protocol; 4.ibus daemon sends back the input method event to wayland compositor by wayland input method protocol;

  • 5. wayland compositor sends back the input method

event to the application by wayland text protocol;

  • penismus event flow
slide-14
SLIDE 14

The GTK+ design for X11

X11 Window System Application (GTK+) ibus daemon

slide-15
SLIDE 15

1.the X11 Window System send the input event to the application; 2.the application send the input event to ibus daemon by ibus protocol; 3.the ibus daemon send back the input method event to the application by ibus protocol;

GTK+ for X11 event flow

slide-16
SLIDE 16

Proposed GTK+ design

Wayland Compositor Application (GTK+) ibus daemon

slide-17
SLIDE 17

1.the wayland compositor send the input event to the application; 2.the application send the input event to ibus daemon by ibus protocol; 3.the ibus daemon send back the input method event to the application by ibus protocol;

Proposed event flow

slide-18
SLIDE 18

Proposed architecture

Gtk+ App Wayland D-BUS ibus daemon

slide-19
SLIDE 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.

Advantages

slide-20
SLIDE 20

wayland intro ibus wayland support Proposed a new architecture for input support

Summary

slide-21
SLIDE 21

Questions?

License statement goes here. See https://fedoraproject.org/wiki/Licensing#Content_Licenses for acceptable licenses.

example@fedoraproject.org

Contact: