23
Presented by: Qt Roadmap Update Thiago Macieira, Qt, Nokia

Qt Roadmap Update 0

Embed Size (px)

Citation preview

Page 1: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 1/23

Presented by:

Qt Roadmap Update

● Thiago Macieira, Qt, Nokia

Page 2: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 2/23

Who am I?● Senior Product Manager at Qt

Development (Mobile Solutions)● MBA, double degree in Engineering●

Been with Nokia since Jun 2008(Before with Trolltech since Aug 2007)● Daily work:

Product Manager for Core Domain● Open Governance, MeeGo.com

relationship

2

Page 3: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 3/23

Topics for Today● Catching up: Qt 4.7, Mobility 1.1● What’s next: Qt 4.8, Mobility 1.2● What to expect afterwards

3

Page 4: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 4/23

Qt 4.7 has just been released● Released in September

● First update 4.7.1 last week● Included in MeeGo 1.1

● Also scheduled to be in MeeGo 1.2● Foundation for MeeGo API● Will be on millions of devices next year

4

Page 5: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 5/23

Qt Quick● Three components to Qt Quick:

● QML – the language based on JavaScript● QtDeclarative – C++ module● Qt Creator 2.1 – editor and designer

● QtDeclarative is in Qt 4.7● Foundation of Nokia’s mobile strategy

5

Page 6: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 6/23

Qt Quick● Major features:

● Integration with WebKit and mobile API● Declarative language inspired on CSS,

with JavaScript bindings● Easy to use for rapid UI

prototyping and development●

Learn more this afternoon

6

Page 7: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 7/23

Other Qt 4.7 features● Network bearer management

● Connman support since Qt 4.7.1● WebKit improvements

● Tiling, performance, pixmap bridge● Performance improvements● Read more:

http://doc.qt.nokia.com/4.7

7

Page 8: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 8/23

Qt Mobility 1.1● Significant API expansion for Qt● Mobile-related and inspired APIs● First release last week

8

Qt Mobility 1.1 – 17 APIs in total• Bearer Management• Contacts• Location• Messaging•

Multimedia• Publish and Subscribe• Service Framework• Sensors• System Information

• Versit• Document Gallery• Feedback• Maps/Navigation•

Landmarks• Camera• Organizer • Service Framework- Out of process

Page 9: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 9/23

The Future● From short-term to long-term

9

Page 10: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 10/23

Modularisation

10

Qt kernelcore + gui + net +

opengl + openvg +build tools

XML

D-Bus

etc.

Qt WebKitQt WebKit

ScriptScriptToolsDeclarative

Components

ToolsAssistant +Designer +

Linguist

Qt Creator

Examples& Demos

Docs

Qt MobilityQt Quick

maybe Qt 4.8

Qt3Support

Page 11: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 11/23

Open Governance

Why● Opening up is not

news● Qt is growing

● Faster than whatwe can grow

● Pool of talentedpeople:

● You

11

What● Decision-making● General roadmap,

schedules, platform

support, ...● Code reviews andacceptance

● Conflict resolution●

QA checks and results● more...

Now moving to implementation phase

Page 12: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 12/23

What’s driving the roadmap?

How to get most out of HWaccelerated platforms with Qt?

How to make fluid direct

manipulation UIs with Qt?How improve designer & developer collaboration and productivity?

How to leverage mobile context withQt apps and integrate withweb?

12

Page 13: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 13/23

Lighthouse: Platform Abstraction

13

QtGui

Cross Platform Modules

Platform Specific Plugins, reference implementations

Platform Abstraction API(QPA)

•QPlatformFontDatabase•QPlatformWindow•QPlatformScreen•QPlatformGLContext•QWindowSystemInterface

Proper support for OpenGL onembedded devices● Future-proofing Qt againstcoming platforms

OpenKODE

Wayland

EGLFS

DirectFb

QWindowSurface

QPlatformIntegration

QPlatformWindowFormat

QPlatformCursor

QPixmapData

Page 14: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 14/23

Scene Graph Project

14

Improving QML on Open GL (ES) 2.0 enabled hardwarePerformance gains using full scene optimizations

Scene graphQt 4.7

Page 15: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 15/23

Qt Quick Components●

Reusable UI controls and enablers● Perfect for blending differentiated UIs with

platform look and feel● Integration with platform input methods● Initial focus on MeeGo and Symbian

UX, plus one generic style

15

Page 16: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 16/23

Qt Quick EnablersGesture AreaHigh Level gestures (Tap, Swipe, Pinch)

Low Level gestures (touch, sensor)

QML Canvas

Inspired by HTML5 CanvasEnable free-form drawing in QML elements

Early research

16

GestureArea { Pinch {

onStarted : rootWindow.color = "#a3e2ff" onUpdated : gestureText.text = "Pinch: scale = " + gesture.scaleFactor onFinished : rootWindow.reset()

}}

Page 17: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 17/23

Qt WebKitPerformance

Publish benchmark resultsMulti-process support though WebKit 2

HTML5 and CSS3 compliance

Publish test suites and test resultsAdd more features such as Geolocation,WebGL, web workers, web socketsMost new features for all Qt’s platforms

Touch, gestures and tactile feedbackHaptics for mobile platforms onlyGestures and multipoint-touch on allcapable Qt platforms

17

WebGL on QtWebKit(in progress, not yet released!)

Page 18: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 18/23

Page 19: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 19/23

Other Qt current projects●

Threaded OpenGL rendering● Supported on Desktop and Mobile

● Performance improvements in Core● File I/O rewrite● Threading, HTTP engine, Sockets

● C++0x enablers

19

Page 20: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 20/23

Qt Creator 2.2 and onwards●

Qt Quick Designer ● Qt Quick Components support planned

for 2.2

● QML Observer ● State and property

debugger ● Visual debugger ● Stepping in and out of C++

20

Page 21: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 21/23

Qt Mobility 1.2●

MeeGo 1.2 as a target● Ensuring backends for MeeGo● Nokia engineers will use MeeGo as their

platform of choice for development● Improving existing modules with

platform-development APIs●

New: Bluetooth, Account API,IM support for Messaging

21

Page 22: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 22/23

Platforms & investments

22

Windows

MacLinux X11

Embedded Linux MeeGo

Symbian

AIX

SolarisHP-UXWinCESymbian (S60)3.1/3.2Maemo 5

Lighthouse

Qt Quick components

Qt Mobility APIs

Qt WebKit

Scene Graph

Nokia’s investment levelmaintained

at current level

Nokia’sinvestmentsdecreasing

Nokia’sinvestmentsincreasing

Qt 3D

Page 23: Qt Roadmap Update 0

8/8/2019 Qt Roadmap Update 0

http://slidepdf.com/reader/full/qt-roadmap-update-0 23/23

Dates

23

2010 2011

4.7 Modularisation 4.8Qt

Qt Mobility 1.1 1.2

QtWebKit 2.1 2.2

Qt Creator 2.1

Released Estimated Planned