SlideShare a Scribd company logo
1Samsung Open Source Group
Wayland: Is it Ready?
Derek Foreman
Samsung Open Source Group
d.foreman@partner.samsung.com (or
derekf@osg.samsung.com)
2Samsung Open Source Group
X Server and Friends
X
MIT-SHM
GLX
Xv
Composite
24 More!
DRM/KMS EVDEV
Compositor
Window Manager
Application
libGL (via GLX)
3
Wayland Compositor (Weston)
Samsung Open Source Group © SAMSUNG Electronics Co.
DRM/KMS EVDEV
Application
Weston
Wayland
GL (via EGL)
4Samsung Open Source Group
Simple drawing API
 Wayland has a single drawing primitive
 wl_buffer
 Bring your own API
 X has a full featured vector drawing API
 That nothing uses anymore (really!)
 Also pixmaps
5Samsung Open Source Group
Simple drawing API
 Wayland has a single drawing primitive
 Even a video frame is just a buffer
 DMABUF now supported
6Samsung Open Source Group
The compositor is the server
 X – the compositor is a separate process
 The server doesn’t know where it put the windows
 Wayland – compositor is the server and WM
 Input works regardless of transformation
 Easier CPU and memory profiling
7Samsung Open Source Group
Wayland design goals
 Every frame is perfect
 No tearing artifacts
 No partially rendered frames
 Be descriptive, not prescriptive
 Provide meta-data, not instructions
 Compositor makes best handling decisions
 Coming soon – Atomic mode setting…
8Samsung Open Source Group
Wayland: Is it Ready?
Derek Foreman
Samsung Open Source Group
d.foreman@partner.samsung.com (or
derekf@osg.samsung.com)
9Samsung Open Source Group
Wayland: Is it Ready?
Derek Foreman
Samsung Open Source Group
d.foreman@partner.samsung.com (or
derekf@osg.samsung.com)
NO
10Samsung Open Source Group
Conky
 No manipulation of stacking order
 Conky wants to be on the bottom
11Samsung Open Source Group
Guake and Yakuake
 Not the same problem, really
 Ok it’s the same problem - stacking
 But also another problem
 No global key bindings
12Samsung Open Source Group
Taskbars
 This again?
 Want to be at the top of the stack
 See also: Icons (My fault?)
 And also: notifications
 Notifications currently being discussed on list
 And also: pagers
13Samsung Open Source Group
Menus
 Why is that menu cut off at the
 Apps don’t know where they are
 This is by design
14Samsung Open Source Group
Menus
 Solved problem
 wl_probe extension
 The solution re-introduces the root problem
 Can be abused to get absolute co-ordinates
15Samsung Open Source Group
XRANDR
 No client can reconfigure display positions
 No client can change display resolution
 Half true – full screen mode is pretty clever
 Resolution change can’t outlive client
16
Screenshots
Samsung Open Source Group © SAMSUNG Electronics Co.
 But we saw one earlier
 No screenshots taken by external applications
 See also: No color picker
 Design goal – no client can see other client buffers
17
Other Really Important Stuff
Samsung Open Source Group © SAMSUNG Electronics Co.
 Xeyes
 No global pointer tracking
18
Other Really Important Stuff
Samsung Open Source Group © SAMSUNG Electronics Co.
 Xeyes
 No global pointer tracking
 Devil’s Pie
 No X Properties
19
Other Really Important Stuff
Samsung Open Source Group © SAMSUNG Electronics Co.
 Xeyes
 No global pointer tracking
 Devil’s Pie
 No X Properties
 Xroach
 No access to the window tree
20
Other Really Important Stuff
Samsung Open Source Group © SAMSUNG Electronics Co.
 Xeyes
 No global pointer tracking
 Devil’s Pie
 No X Properties
 Xroach
 No access to the window tree
 xmodmap –e “keysym F1 = Pointer_Button1”
 What?
21
Other Really Important Stuff
Samsung Open Source Group © SAMSUNG Electronics Co.
 Xeyes
 No global pointer tracking
 Devil’s Pie
 No X Properties
 Xroach
 No access to the window tree
 xmodmap –e “keysym F1 = Pointer_Button1”
 What?
 Network transparency
22
Full Screen Video Games
Samsung Open Source Group © SAMSUNG Electronics Co.
 Relative pointer motion
 Pointer confinement
 Patches under review…
 (Since December 2014)
 Release blocker for Weston 1.10
23
What’s the Delay?
Samsung Open Source Group © SAMSUNG Electronics Co.
 Need more (many more) reviewers
 Nobody knows all areas of the code
 Need more participation from Big Desktop
 GNOME and Enlightenment are getting on board
 Need more developers – come join us!
 http://wayland.freedesktop.org/
 IRC: irc.freenode.net #wayland
 ML: wayland-devel@lists.freedesktop.org
24
The Open Source Group at Samsung
Wayland Contributions
• Samsung’s upstream
contributions to
Wayland have gone
from zero to 10% of all
lines committed.
• Our group is
responsible for most of
the lines of code
added, and is helping
other teams get
involved.
0 K
20 K
40 K
60 K
80 K
100 K
120 K
140 K
160 K
180 K
200 K
2014 2015
Not Samsung Samsung OSG
25Samsung Open Source Group
Thank You!

More Related Content

Similar to Wayland: Is It Ready Yet?

Tizen Window System
Tizen Window SystemTizen Window System
Tizen Window System
Eun Young Lee
 
Tech Talk Project Work
Tech Talk Project WorkTech Talk Project Work
Tech Talk Project Work
Antonio Cesarano
 
EFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopEFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the Desktop
Samsung Open Source Group
 
Android platform
Android platform Android platform
Android platform
Rashmi Warghade
 
Intro to Github
Intro to GithubIntro to Github
Intro to Github
Parag Rahangdale
 
Main file win 8
Main file win 8Main file win 8
Main file win 8
Tapesh Chalisgaonkar
 
Mobile Developer's Guide To The Galaxy Edition 2
Mobile Developer's Guide To The Galaxy Edition 2Mobile Developer's Guide To The Galaxy Edition 2
Mobile Developer's Guide To The Galaxy Edition 2
Avenga Germany GmbH
 
Build Mobile Application In Android
Build Mobile Application In AndroidBuild Mobile Application In Android
Build Mobile Application In Androiddnnddane
 
Building Cross Platform Mobile Applications
Building Cross Platform Mobile ApplicationsBuilding Cross Platform Mobile Applications
Building Cross Platform Mobile Applications
Betclic Everest Group Tech Team
 
Android introduction
Android introductionAndroid introduction
Android introduction
mcanotes
 
Android design lecture #1
Android design   lecture #1Android design   lecture #1
Android design lecture #1
Vitali Pekelis
 
Win8 seminar
Win8 seminarWin8 seminar
Win8 seminar
Tapesh Chalisgaonkar
 
Introduction to DDRMenu
Introduction to DDRMenuIntroduction to DDRMenu
Introduction to DDRMenu
Mark Allan
 
Building a Modern Windows App
Building a Modern Windows AppBuilding a Modern Windows App
Building a Modern Windows App
Brent Edwards
 
What is Codename One - Transcript.pdf
What is Codename One - Transcript.pdfWhat is Codename One - Transcript.pdf
What is Codename One - Transcript.pdf
ShaiAlmog1
 
Mobile Developer's Guide To The Galaxy, 5th edition
Mobile Developer's Guide To The Galaxy, 5th editionMobile Developer's Guide To The Galaxy, 5th edition
Mobile Developer's Guide To The Galaxy, 5th editionMarco Tabor
 
Android introduction and rooting technology
Android introduction and rooting technologyAndroid introduction and rooting technology
Android introduction and rooting technology
Gagandeep Nanda
 
Android Training Ahmedabad , Android Project Training Ahmedabad, Android Live...
Android Training Ahmedabad , Android Project Training Ahmedabad, Android Live...Android Training Ahmedabad , Android Project Training Ahmedabad, Android Live...
Android Training Ahmedabad , Android Project Training Ahmedabad, Android Live...
NicheTech Com. Solutions Pvt. Ltd.
 

Similar to Wayland: Is It Ready Yet? (20)

Windows 7 mobile
Windows 7 mobileWindows 7 mobile
Windows 7 mobile
 
Tizen Window System
Tizen Window SystemTizen Window System
Tizen Window System
 
Tech Talk Project Work
Tech Talk Project WorkTech Talk Project Work
Tech Talk Project Work
 
EFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopEFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the Desktop
 
Android platform
Android platform Android platform
Android platform
 
Intro to Github
Intro to GithubIntro to Github
Intro to Github
 
Main file win 8
Main file win 8Main file win 8
Main file win 8
 
Mobile Developer's Guide To The Galaxy Edition 2
Mobile Developer's Guide To The Galaxy Edition 2Mobile Developer's Guide To The Galaxy Edition 2
Mobile Developer's Guide To The Galaxy Edition 2
 
Build Mobile Application In Android
Build Mobile Application In AndroidBuild Mobile Application In Android
Build Mobile Application In Android
 
Building Cross Platform Mobile Applications
Building Cross Platform Mobile ApplicationsBuilding Cross Platform Mobile Applications
Building Cross Platform Mobile Applications
 
Android introduction
Android introductionAndroid introduction
Android introduction
 
Android design lecture #1
Android design   lecture #1Android design   lecture #1
Android design lecture #1
 
Win8 seminar
Win8 seminarWin8 seminar
Win8 seminar
 
Introduction to DDRMenu
Introduction to DDRMenuIntroduction to DDRMenu
Introduction to DDRMenu
 
Building a Modern Windows App
Building a Modern Windows AppBuilding a Modern Windows App
Building a Modern Windows App
 
What is Codename One - Transcript.pdf
What is Codename One - Transcript.pdfWhat is Codename One - Transcript.pdf
What is Codename One - Transcript.pdf
 
Mobile Developer's Guide To The Galaxy, 5th edition
Mobile Developer's Guide To The Galaxy, 5th editionMobile Developer's Guide To The Galaxy, 5th edition
Mobile Developer's Guide To The Galaxy, 5th edition
 
Android introduction and rooting technology
Android introduction and rooting technologyAndroid introduction and rooting technology
Android introduction and rooting technology
 
Android Basics
Android BasicsAndroid Basics
Android Basics
 
Android Training Ahmedabad , Android Project Training Ahmedabad, Android Live...
Android Training Ahmedabad , Android Project Training Ahmedabad, Android Live...Android Training Ahmedabad , Android Project Training Ahmedabad, Android Live...
Android Training Ahmedabad , Android Project Training Ahmedabad, Android Live...
 

More from Samsung Open Source Group

The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)
Samsung Open Source Group
 
Easy IoT with JavaScript
Easy IoT with JavaScriptEasy IoT with JavaScript
Easy IoT with JavaScript
Samsung Open Source Group
 
Spawny: A New Approach to Logins
Spawny: A New Approach to LoginsSpawny: A New Approach to Logins
Spawny: A New Approach to Logins
Samsung Open Source Group
 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USB
Samsung Open Source Group
 
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Samsung Open Source Group
 
IoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and BeyondIoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and Beyond
Samsung Open Source Group
 
IoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialIoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorial
Samsung Open Source Group
 
GENIVI + OCF Cooperation
GENIVI + OCF CooperationGENIVI + OCF Cooperation
GENIVI + OCF Cooperation
Samsung Open Source Group
 
Framework for IoT Interoperability
Framework for IoT InteroperabilityFramework for IoT Interoperability
Framework for IoT Interoperability
Samsung Open Source Group
 
Open Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategyOpen Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate Strategy
Samsung Open Source Group
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT Interoperability
Samsung Open Source Group
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
Samsung Open Source Group
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Samsung Open Source Group
 
IoTivity: From Devices to the Cloud
IoTivity: From Devices to the CloudIoTivity: From Devices to the Cloud
IoTivity: From Devices to the Cloud
Samsung Open Source Group
 
SOSCON 2016 JerryScript
SOSCON 2016 JerryScriptSOSCON 2016 JerryScript
SOSCON 2016 JerryScript
Samsung Open Source Group
 
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivityIoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
Samsung Open Source Group
 
Run Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkRun Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT Network
Samsung Open Source Group
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Samsung Open Source Group
 
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxIoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
Samsung Open Source Group
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsJerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
Samsung Open Source Group
 

More from Samsung Open Source Group (20)

The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)
 
Easy IoT with JavaScript
Easy IoT with JavaScriptEasy IoT with JavaScript
Easy IoT with JavaScript
 
Spawny: A New Approach to Logins
Spawny: A New Approach to LoginsSpawny: A New Approach to Logins
Spawny: A New Approach to Logins
 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USB
 
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
 
IoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and BeyondIoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and Beyond
 
IoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialIoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorial
 
GENIVI + OCF Cooperation
GENIVI + OCF CooperationGENIVI + OCF Cooperation
GENIVI + OCF Cooperation
 
Framework for IoT Interoperability
Framework for IoT InteroperabilityFramework for IoT Interoperability
Framework for IoT Interoperability
 
Open Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategyOpen Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate Strategy
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT Interoperability
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
 
IoTivity: From Devices to the Cloud
IoTivity: From Devices to the CloudIoTivity: From Devices to the Cloud
IoTivity: From Devices to the Cloud
 
SOSCON 2016 JerryScript
SOSCON 2016 JerryScriptSOSCON 2016 JerryScript
SOSCON 2016 JerryScript
 
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivityIoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
 
Run Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkRun Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT Network
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
 
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxIoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsJerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
 

Recently uploaded

First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 

Recently uploaded (20)

First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 

Wayland: Is It Ready Yet?

  • 1. 1Samsung Open Source Group Wayland: Is it Ready? Derek Foreman Samsung Open Source Group d.foreman@partner.samsung.com (or derekf@osg.samsung.com)
  • 2. 2Samsung Open Source Group X Server and Friends X MIT-SHM GLX Xv Composite 24 More! DRM/KMS EVDEV Compositor Window Manager Application libGL (via GLX)
  • 3. 3 Wayland Compositor (Weston) Samsung Open Source Group © SAMSUNG Electronics Co. DRM/KMS EVDEV Application Weston Wayland GL (via EGL)
  • 4. 4Samsung Open Source Group Simple drawing API  Wayland has a single drawing primitive  wl_buffer  Bring your own API  X has a full featured vector drawing API  That nothing uses anymore (really!)  Also pixmaps
  • 5. 5Samsung Open Source Group Simple drawing API  Wayland has a single drawing primitive  Even a video frame is just a buffer  DMABUF now supported
  • 6. 6Samsung Open Source Group The compositor is the server  X – the compositor is a separate process  The server doesn’t know where it put the windows  Wayland – compositor is the server and WM  Input works regardless of transformation  Easier CPU and memory profiling
  • 7. 7Samsung Open Source Group Wayland design goals  Every frame is perfect  No tearing artifacts  No partially rendered frames  Be descriptive, not prescriptive  Provide meta-data, not instructions  Compositor makes best handling decisions  Coming soon – Atomic mode setting…
  • 8. 8Samsung Open Source Group Wayland: Is it Ready? Derek Foreman Samsung Open Source Group d.foreman@partner.samsung.com (or derekf@osg.samsung.com)
  • 9. 9Samsung Open Source Group Wayland: Is it Ready? Derek Foreman Samsung Open Source Group d.foreman@partner.samsung.com (or derekf@osg.samsung.com) NO
  • 10. 10Samsung Open Source Group Conky  No manipulation of stacking order  Conky wants to be on the bottom
  • 11. 11Samsung Open Source Group Guake and Yakuake  Not the same problem, really  Ok it’s the same problem - stacking  But also another problem  No global key bindings
  • 12. 12Samsung Open Source Group Taskbars  This again?  Want to be at the top of the stack  See also: Icons (My fault?)  And also: notifications  Notifications currently being discussed on list  And also: pagers
  • 13. 13Samsung Open Source Group Menus  Why is that menu cut off at the  Apps don’t know where they are  This is by design
  • 14. 14Samsung Open Source Group Menus  Solved problem  wl_probe extension  The solution re-introduces the root problem  Can be abused to get absolute co-ordinates
  • 15. 15Samsung Open Source Group XRANDR  No client can reconfigure display positions  No client can change display resolution  Half true – full screen mode is pretty clever  Resolution change can’t outlive client
  • 16. 16 Screenshots Samsung Open Source Group © SAMSUNG Electronics Co.  But we saw one earlier  No screenshots taken by external applications  See also: No color picker  Design goal – no client can see other client buffers
  • 17. 17 Other Really Important Stuff Samsung Open Source Group © SAMSUNG Electronics Co.  Xeyes  No global pointer tracking
  • 18. 18 Other Really Important Stuff Samsung Open Source Group © SAMSUNG Electronics Co.  Xeyes  No global pointer tracking  Devil’s Pie  No X Properties
  • 19. 19 Other Really Important Stuff Samsung Open Source Group © SAMSUNG Electronics Co.  Xeyes  No global pointer tracking  Devil’s Pie  No X Properties  Xroach  No access to the window tree
  • 20. 20 Other Really Important Stuff Samsung Open Source Group © SAMSUNG Electronics Co.  Xeyes  No global pointer tracking  Devil’s Pie  No X Properties  Xroach  No access to the window tree  xmodmap –e “keysym F1 = Pointer_Button1”  What?
  • 21. 21 Other Really Important Stuff Samsung Open Source Group © SAMSUNG Electronics Co.  Xeyes  No global pointer tracking  Devil’s Pie  No X Properties  Xroach  No access to the window tree  xmodmap –e “keysym F1 = Pointer_Button1”  What?  Network transparency
  • 22. 22 Full Screen Video Games Samsung Open Source Group © SAMSUNG Electronics Co.  Relative pointer motion  Pointer confinement  Patches under review…  (Since December 2014)  Release blocker for Weston 1.10
  • 23. 23 What’s the Delay? Samsung Open Source Group © SAMSUNG Electronics Co.  Need more (many more) reviewers  Nobody knows all areas of the code  Need more participation from Big Desktop  GNOME and Enlightenment are getting on board  Need more developers – come join us!  http://wayland.freedesktop.org/  IRC: irc.freenode.net #wayland  ML: wayland-devel@lists.freedesktop.org
  • 24. 24 The Open Source Group at Samsung Wayland Contributions • Samsung’s upstream contributions to Wayland have gone from zero to 10% of all lines committed. • Our group is responsible for most of the lines of code added, and is helping other teams get involved. 0 K 20 K 40 K 60 K 80 K 100 K 120 K 140 K 160 K 180 K 200 K 2014 2015 Not Samsung Samsung OSG
  • 25. 25Samsung Open Source Group Thank You!