~dandrader/qtmir/surfaceDrawn

« back to all changes in this revision

Viewing changes to src/modules/Unity/Application/mirsurfaceitem.h

  • Committer: CI Train Bot
  • Author(s): Gerry Boland, Michał Sawicz, Nick Dedekind
  • Date: 2016-04-29 20:04:51 UTC
  • mfrom: (434.5.64 set-display-config)
  • Revision ID: ci-train-bot@canonical.com-20160429200451-v0bjc4pcypynt83b
Enhance ScreenController & the DisplayConfigurationPolicy to implement dynamic grid units.

- Rename ScreenController to ScreenModel, as it just reflects current screen state, does not offer means to configure it
- ScreenController can update state of existing Screens, based on Mir DisplayConfiguration changes.
- Expand Screen to include scale & form factor properties, with getter/notifier in NativeInterface. This enables the dynamic grid units in the shell
- Add a Unity.Screens qml module to give QML better information about connected screens, and allow basic reconfiguring.
- Implement a basic display configuration policy to set suitable scale and form factor on an external display (needed for dynamic grid units) Fixes: #1573532
Approved by: Unity8 CI Bot, Daniel d'Andrada

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*
2
 
 * Copyright (C) 2013-2015 Canonical, Ltd.
 
2
 * Copyright (C) 2013-2016 Canonical, Ltd.
3
3
 *
4
4
 * This program is free software: you can redistribute it and/or modify it under
5
5
 * the terms of the GNU Lesser General Public License version 3, as published by
109
109
 
110
110
    QSGNode *updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *) override;
111
111
 
 
112
    void componentComplete() override;
112
113
    void releaseResources() override;
113
114
 
114
115
private Q_SLOTS:
122
123
    void onCompositorSwappedBuffers();
123
124
 
124
125
    void onWindowChanged(QQuickWindow *window);
 
126
    void updateScreen(QScreen *screen);
125
127
 
126
128
private:
127
129
    void ensureTextureProvider();