Merge lp:~larryprice/miral/release-0.1.0 into lp:miral/release
- release-0.1.0
- Merge into release
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | Larry Price | ||||
Approved revision: | 335 | ||||
Merged at revision: | 331 | ||||
Proposed branch: | lp:~larryprice/miral/release-0.1.0 | ||||
Merge into: | lp:miral/release | ||||
Diff against target: |
33209 lines (+701/-31026) 282 files modified
.bzr-builddeb/default.conf (+2/-0) COPYING (+674/-0) debian/changelog (+5/-5) debian/control (+1/-1) debian/copyright (+11/-7) debian/rules (+8/-0) miral-qt/CMakeLists.txt (+0/-181) miral-qt/README (+0/-47) miral-qt/benchmarks/CMakeLists.txt (+0/-8) miral-qt/benchmarks/README (+0/-12) miral-qt/benchmarks/common.py (+0/-33) miral-qt/benchmarks/report_types.py (+0/-121) miral-qt/benchmarks/touch_event_latency.R (+0/-6) miral-qt/benchmarks/touch_event_latency.py (+0/-271) miral-qt/cmake/modules/FindGLESv2.cmake (+0/-25) miral-qt/cmake/modules/FindQt5PlatformSupport.cmake (+0/-121) miral-qt/cmake/modules/QmlPlugins.cmake (+0/-150) miral-qt/cmake/modules/QmlTest.cmake (+0/-192) miral-qt/cmake/modules/UseLttngGenTp.cmake (+0/-24) miral-qt/cmake/modules/autopilot.cmake (+0/-24) miral-qt/debian/bileto_convert_to_gles (+0/-28) miral-qt/debian/changelog (+0/-1275) miral-qt/debian/compat (+0/-1) miral-qt/debian/control (+0/-124) miral-qt/debian/copyright (+0/-78) miral-qt/debian/docs (+0/-1) miral-qt/debian/gles-patches/convert-to-gles.patch (+0/-179) miral-qt/debian/gles-patches/series (+0/-1) miral-qt/debian/qtdeclarative5-qtmir-plugin.install (+0/-2) miral-qt/debian/qtmir-android.install (+0/-1) miral-qt/debian/qtmir-desktop.install (+0/-1) miral-qt/debian/qtmir-tests.install (+0/-6) miral-qt/debian/rules (+0/-62) miral-qt/demos/CMakeLists.txt (+0/-4) miral-qt/demos/paths.h.in (+0/-58) miral-qt/demos/qml-demo-client/CMakeLists.txt (+0/-41) miral-qt/demos/qml-demo-client/MovingRect.qml (+0/-59) miral-qt/demos/qml-demo-client/main.cpp (+0/-73) miral-qt/demos/qml-demo-client/qml-demo-client.qml (+0/-35) miral-qt/demos/qml-demo-client/qtmir-demo-client.desktop.in (+0/-9) miral-qt/demos/qml-demo-shell/Button.qml (+0/-26) miral-qt/demos/qml-demo-shell/CMakeLists.txt (+0/-35) miral-qt/demos/qml-demo-shell/ResizeArea.qml (+0/-128) miral-qt/demos/qml-demo-shell/Shell.qml (+0/-182) miral-qt/demos/qml-demo-shell/TitleBar.qml (+0/-72) miral-qt/demos/qml-demo-shell/Window.qml (+0/-96) miral-qt/demos/qml-demo-shell/WindowBufferSized.qml (+0/-178) miral-qt/demos/qml-demo-shell/main.cpp (+0/-61) miral-qt/demos/qml-demo-shell/qml-demo-shell.qml (+0/-38) miral-qt/demos/qml-demo-shell/qml-demo-shell.qmlproject (+0/-20) miral-qt/demos/qml-demo-shell/windowModel.qml (+0/-127) miral-qt/src/CMakeLists.txt (+0/-2) miral-qt/src/common/abstractdbusservicemonitor.cpp (+0/-99) miral-qt/src/common/abstractdbusservicemonitor.h (+0/-58) miral-qt/src/common/debughelpers.cpp (+0/-351) miral-qt/src/common/debughelpers.h (+0/-46) miral-qt/src/common/mirqtconversion.h (+0/-57) miral-qt/src/common/timestamp.cpp (+0/-18) miral-qt/src/common/timestamp.h (+0/-39) miral-qt/src/common/timestamp_impl.h (+0/-37) miral-qt/src/common/windowcontrollerinterface.h (+0/-55) miral-qt/src/common/windowmodelnotifierinterface.h (+0/-107) miral-qt/src/modules/CMakeLists.txt (+0/-14) miral-qt/src/modules/Unity/Application/CMakeLists.txt (+0/-108) miral-qt/src/modules/Unity/Application/application.cpp (+0/-862) miral-qt/src/modules/Unity/Application/application.h (+0/-202) miral-qt/src/modules/Unity/Application/application_manager.cpp (+0/-879) miral-qt/src/modules/Unity/Application/application_manager.h (+0/-161) miral-qt/src/modules/Unity/Application/applicationinfo.h (+0/-59) miral-qt/src/modules/Unity/Application/cgmanager.cpp (+0/-117) miral-qt/src/modules/Unity/Application/cgmanager.h (+0/-42) miral-qt/src/modules/Unity/Application/com.canonical.qtmir.gschema.xml (+0/-12) miral-qt/src/modules/Unity/Application/dbusfocusinfo.cpp (+0/-133) miral-qt/src/modules/Unity/Application/dbusfocusinfo.h (+0/-64) miral-qt/src/modules/Unity/Application/dbuswindowstack.cpp (+0/-116) miral-qt/src/modules/Unity/Application/dbuswindowstack.h (+0/-72) miral-qt/src/modules/Unity/Application/gscopedpointer.h (+0/-113) miral-qt/src/modules/Unity/Application/mirbuffersgtexture.cpp (+0/-99) miral-qt/src/modules/Unity/Application/mirbuffersgtexture.h (+0/-53) miral-qt/src/modules/Unity/Application/mirfocuscontroller.cpp (+0/-69) miral-qt/src/modules/Unity/Application/mirfocuscontroller.h (+0/-49) miral-qt/src/modules/Unity/Application/mirsurface.cpp (+0/-1095) miral-qt/src/modules/Unity/Application/mirsurface.h (+0/-240) miral-qt/src/modules/Unity/Application/mirsurfaceinterface.h (+0/-136) miral-qt/src/modules/Unity/Application/mirsurfaceitem.cpp (+0/-727) miral-qt/src/modules/Unity/Application/mirsurfaceitem.h (+0/-179) miral-qt/src/modules/Unity/Application/mirsurfacelistmodel.cpp (+0/-312) miral-qt/src/modules/Unity/Application/mirsurfacelistmodel.h (+0/-100) miral-qt/src/modules/Unity/Application/objectlistmodel.h (+0/-110) miral-qt/src/modules/Unity/Application/plugin.cpp (+0/-97) miral-qt/src/modules/Unity/Application/proc_info.cpp (+0/-61) miral-qt/src/modules/Unity/Application/proc_info.h (+0/-56) miral-qt/src/modules/Unity/Application/qmldir (+0/-2) miral-qt/src/modules/Unity/Application/session.cpp (+0/-552) miral-qt/src/modules/Unity/Application/session.h (+0/-130) miral-qt/src/modules/Unity/Application/session_interface.h (+0/-134) miral-qt/src/modules/Unity/Application/sessionmanager.cpp (+0/-213) miral-qt/src/modules/Unity/Application/sessionmanager.h (+0/-87) miral-qt/src/modules/Unity/Application/sessionmodel.h (+0/-32) miral-qt/src/modules/Unity/Application/settings.cpp (+0/-39) miral-qt/src/modules/Unity/Application/settings.h (+0/-45) miral-qt/src/modules/Unity/Application/settings_interface.h (+0/-40) miral-qt/src/modules/Unity/Application/sharedwakelock.cpp (+0/-231) miral-qt/src/modules/Unity/Application/sharedwakelock.h (+0/-55) miral-qt/src/modules/Unity/Application/taskcontroller.h (+0/-73) miral-qt/src/modules/Unity/Application/timer.cpp (+0/-109) miral-qt/src/modules/Unity/Application/timer.h (+0/-88) miral-qt/src/modules/Unity/Application/timesource.cpp (+0/-48) miral-qt/src/modules/Unity/Application/timesource.h (+0/-61) miral-qt/src/modules/Unity/Application/tracepoints.tp (+0/-14) miral-qt/src/modules/Unity/Application/upstart/applicationinfo.cpp (+0/-109) miral-qt/src/modules/Unity/Application/upstart/applicationinfo.h (+0/-57) miral-qt/src/modules/Unity/Application/upstart/taskcontroller.cpp (+0/-247) miral-qt/src/modules/Unity/Application/upstart/taskcontroller.h (+0/-52) miral-qt/src/modules/Unity/Application/windowmodel.cpp (+0/-208) miral-qt/src/modules/Unity/Application/windowmodel.h (+0/-82) miral-qt/src/modules/Unity/CMakeLists.txt (+0/-2) miral-qt/src/modules/Unity/Screens/CMakeLists.txt (+0/-29) miral-qt/src/modules/Unity/Screens/plugin.cpp (+0/-45) miral-qt/src/modules/Unity/Screens/qmldir (+0/-2) miral-qt/src/modules/Unity/Screens/qquickscreenwindow.cpp (+0/-185) miral-qt/src/modules/Unity/Screens/qquickscreenwindow.h (+0/-60) miral-qt/src/modules/Unity/Screens/screens.cpp (+0/-126) miral-qt/src/modules/Unity/Screens/screens.h (+0/-96) miral-qt/src/platforms/CMakeLists.txt (+0/-1) miral-qt/src/platforms/mirserver/CMakeLists.txt (+0/-131) miral-qt/src/platforms/mirserver/argvHelper.h (+0/-52) miral-qt/src/platforms/mirserver/clipboard.cpp (+0/-109) miral-qt/src/platforms/mirserver/clipboard.h (+0/-69) miral-qt/src/platforms/mirserver/creationhints.cpp (+0/-67) miral-qt/src/platforms/mirserver/creationhints.h (+0/-56) miral-qt/src/platforms/mirserver/cursor.cpp (+0/-180) miral-qt/src/platforms/mirserver/cursor.h (+0/-68) miral-qt/src/platforms/mirserver/customscreenconfiguration.h (+0/-41) miral-qt/src/platforms/mirserver/logging.cpp (+0/-27) miral-qt/src/platforms/mirserver/logging.h (+0/-31) miral-qt/src/platforms/mirserver/mircursorimages.cpp (+0/-28) miral-qt/src/platforms/mirserver/mircursorimages.h (+0/-33) miral-qt/src/platforms/mirserver/mirdisplayconfigurationpolicy.cpp (+0/-126) miral-qt/src/platforms/mirserver/mirdisplayconfigurationpolicy.h (+0/-28) miral-qt/src/platforms/mirserver/mirglconfig.h (+0/-29) miral-qt/src/platforms/mirserver/miropenglcontext.cpp (+0/-197) miral-qt/src/platforms/mirserver/miropenglcontext.h (+0/-61) miral-qt/src/platforms/mirserver/mirserver.json (+0/-3) miral-qt/src/platforms/mirserver/mirserverhooks.cpp (+0/-134) miral-qt/src/platforms/mirserver/mirserverhooks.h (+0/-56) miral-qt/src/platforms/mirserver/mirserverintegration.cpp (+0/-209) miral-qt/src/platforms/mirserver/mirserverintegration.h (+0/-68) miral-qt/src/platforms/mirserver/mirserverstatuslistener.cpp (+0/-37) miral-qt/src/platforms/mirserver/mirserverstatuslistener.h (+0/-30) miral-qt/src/platforms/mirserver/mirsingleton.cpp (+0/-33) miral-qt/src/platforms/mirserver/mirsingleton.h (+0/-46) miral-qt/src/platforms/mirserver/namedcursor.h (+0/-48) miral-qt/src/platforms/mirserver/nativeinterface.cpp (+0/-80) miral-qt/src/platforms/mirserver/nativeinterface.h (+0/-52) miral-qt/src/platforms/mirserver/offscreensurface.cpp (+0/-51) miral-qt/src/platforms/mirserver/offscreensurface.h (+0/-43) miral-qt/src/platforms/mirserver/openglcontextfactory.cpp (+0/-51) miral-qt/src/platforms/mirserver/openglcontextfactory.h (+0/-47) miral-qt/src/platforms/mirserver/plugin.cpp (+0/-26) miral-qt/src/platforms/mirserver/plugin.h (+0/-31) miral-qt/src/platforms/mirserver/promptsessionlistener.cpp (+0/-76) miral-qt/src/platforms/mirserver/promptsessionlistener.h (+0/-51) miral-qt/src/platforms/mirserver/qmirserver.cpp (+0/-114) miral-qt/src/platforms/mirserver/qmirserver.h (+0/-64) miral-qt/src/platforms/mirserver/qmirserver_p.cpp (+0/-151) miral-qt/src/platforms/mirserver/qmirserver_p.h (+0/-112) miral-qt/src/platforms/mirserver/qtcompositor.cpp (+0/-36) miral-qt/src/platforms/mirserver/qtcompositor.h (+0/-49) miral-qt/src/platforms/mirserver/qteventfeeder.cpp (+0/-866) miral-qt/src/platforms/mirserver/qteventfeeder.h (+0/-83) miral-qt/src/platforms/mirserver/screen.cpp (+0/-417) miral-qt/src/platforms/mirserver/screen.h (+0/-120) miral-qt/src/platforms/mirserver/screenscontroller.cpp (+0/-84) miral-qt/src/platforms/mirserver/screenscontroller.h (+0/-54) miral-qt/src/platforms/mirserver/screensmodel.cpp (+0/-263) miral-qt/src/platforms/mirserver/screensmodel.h (+0/-102) miral-qt/src/platforms/mirserver/screenwindow.cpp (+0/-129) miral-qt/src/platforms/mirserver/screenwindow.h (+0/-48) miral-qt/src/platforms/mirserver/services.cpp (+0/-48) miral-qt/src/platforms/mirserver/services.h (+0/-31) miral-qt/src/platforms/mirserver/sessionauthorizer.cpp (+0/-95) miral-qt/src/platforms/mirserver/sessionauthorizer.h (+0/-51) miral-qt/src/platforms/mirserver/sessionlistener.cpp (+0/-96) miral-qt/src/platforms/mirserver/sessionlistener.h (+0/-63) miral-qt/src/platforms/mirserver/setqtcompositor.cpp (+0/-55) miral-qt/src/platforms/mirserver/setqtcompositor.h (+0/-47) miral-qt/src/platforms/mirserver/shelluuid.cpp (+0/-35) miral-qt/src/platforms/mirserver/shelluuid.h (+0/-33) miral-qt/src/platforms/mirserver/surfaceobserver.cpp (+0/-237) miral-qt/src/platforms/mirserver/surfaceobserver.h (+0/-98) miral-qt/src/platforms/mirserver/tracepoints.tp (+0/-15) miral-qt/src/platforms/mirserver/ubuntutheme.cpp (+0/-43) miral-qt/src/platforms/mirserver/ubuntutheme.h (+0/-33) miral-qt/src/platforms/mirserver/windowcontroller.cpp (+0/-92) miral-qt/src/platforms/mirserver/windowcontroller.h (+0/-53) miral-qt/src/platforms/mirserver/windowmanagementpolicy.cpp (+0/-230) miral-qt/src/platforms/mirserver/windowmanagementpolicy.h (+0/-90) miral-qt/src/platforms/mirserver/windowmodelnotifier.cpp (+0/-152) miral-qt/src/platforms/mirserver/windowmodelnotifier.h (+0/-51) miral-qt/tests/CMakeLists.txt (+0/-14) miral-qt/tests/convert-to-gles.sh (+0/-14) miral-qt/tests/framework/CMakeLists.txt (+0/-47) miral-qt/tests/framework/fake_application_info.cpp (+0/-66) miral-qt/tests/framework/fake_application_info.h (+0/-51) miral-qt/tests/framework/fake_displayconfigurationoutput.h (+0/-91) miral-qt/tests/framework/fake_mirsurface.cpp (+0/-231) miral-qt/tests/framework/fake_mirsurface.h (+0/-183) miral-qt/tests/framework/fake_session.cpp (+0/-125) miral-qt/tests/framework/fake_session.h (+0/-96) miral-qt/tests/framework/fake_surface.h (+0/-114) miral-qt/tests/framework/gmock_fixes.h (+0/-124) miral-qt/tests/framework/mock_application_info.cpp (+0/-46) miral-qt/tests/framework/mock_application_info.h (+0/-49) miral-qt/tests/framework/mock_display.cpp (+0/-35) miral-qt/tests/framework/mock_display.h (+0/-75) miral-qt/tests/framework/mock_display_configuration.cpp (+0/-25) miral-qt/tests/framework/mock_display_configuration.h (+0/-40) miral-qt/tests/framework/mock_gl_display_buffer.cpp (+0/-30) miral-qt/tests/framework/mock_gl_display_buffer.h (+0/-45) miral-qt/tests/framework/mock_main_loop.cpp (+0/-28) miral-qt/tests/framework/mock_main_loop.h (+0/-55) miral-qt/tests/framework/mock_mir_session.cpp (+0/-64) miral-qt/tests/framework/mock_mir_session.h (+0/-89) miral-qt/tests/framework/mock_persistent_surface_store.cpp (+0/-30) miral-qt/tests/framework/mock_persistent_surface_store.h (+0/-24) miral-qt/tests/framework/mock_proc_info.cpp (+0/-37) miral-qt/tests/framework/mock_proc_info.h (+0/-37) miral-qt/tests/framework/mock_prompt_session.cpp (+0/-33) miral-qt/tests/framework/mock_prompt_session.h (+0/-41) miral-qt/tests/framework/mock_prompt_session_manager.cpp (+0/-33) miral-qt/tests/framework/mock_prompt_session_manager.h (+0/-61) miral-qt/tests/framework/mock_renderable.cpp (+0/-33) miral-qt/tests/framework/mock_renderable.h (+0/-44) miral-qt/tests/framework/mock_session.cpp (+0/-70) miral-qt/tests/framework/mock_session.h (+0/-84) miral-qt/tests/framework/mock_settings.cpp (+0/-40) miral-qt/tests/framework/mock_settings.h (+0/-37) miral-qt/tests/framework/mock_shared_wakelock.cpp (+0/-61) miral-qt/tests/framework/mock_shared_wakelock.h (+0/-46) miral-qt/tests/framework/mock_shell.h (+0/-111) miral-qt/tests/framework/mock_surface.cpp (+0/-45) miral-qt/tests/framework/mock_surface.h (+0/-101) miral-qt/tests/framework/mock_task_controller.cpp (+0/-117) miral-qt/tests/framework/mock_task_controller.h (+0/-60) miral-qt/tests/framework/qtmir_test.cpp (+0/-152) miral-qt/tests/framework/qtmir_test.h (+0/-82) miral-qt/tests/framework/stub_input_channel.cpp (+0/-52) miral-qt/tests/framework/stub_input_channel.h (+0/-47) miral-qt/tests/framework/stub_scene_surface.h (+0/-108) miral-qt/tests/framework/stub_windowcontroller.h (+0/-43) miral-qt/tests/mirserver/ArgvHelper/CMakeLists.txt (+0/-18) miral-qt/tests/mirserver/ArgvHelper/argvHelper_test.cpp (+0/-72) miral-qt/tests/mirserver/CMakeLists.txt (+0/-4) miral-qt/tests/mirserver/QtEventFeeder/CMakeLists.txt (+0/-23) miral-qt/tests/mirserver/QtEventFeeder/mock_qtwindowsystem.h (+0/-90) miral-qt/tests/mirserver/QtEventFeeder/qteventfeeder_test.cpp (+0/-281) miral-qt/tests/mirserver/Screen/CMakeLists.txt (+0/-25) miral-qt/tests/mirserver/Screen/screen_test.cpp (+0/-97) miral-qt/tests/mirserver/ScreensModel/CMakeLists.txt (+0/-32) miral-qt/tests/mirserver/ScreensModel/screensmodel_test.cpp (+0/-180) miral-qt/tests/mirserver/ScreensModel/stub_display.h (+0/-111) miral-qt/tests/mirserver/ScreensModel/stub_displayconfigurationcontroller.h (+0/-30) miral-qt/tests/mirserver/ScreensModel/stub_screen.h (+0/-31) miral-qt/tests/mirserver/ScreensModel/testable_screensmodel.h (+0/-38) miral-qt/tests/modules/Application/CMakeLists.txt (+0/-36) miral-qt/tests/modules/Application/application_test.cpp (+0/-650) miral-qt/tests/modules/ApplicationManager/CMakeLists.txt (+0/-33) miral-qt/tests/modules/ApplicationManager/application_manager_test.cpp (+0/-1966) miral-qt/tests/modules/CMakeLists.txt (+0/-6) miral-qt/tests/modules/General/CMakeLists.txt (+0/-24) miral-qt/tests/modules/General/objectlistmodel_test.cpp (+0/-131) miral-qt/tests/modules/General/timestamp_test.cpp (+0/-78) miral-qt/tests/modules/SessionManager/CMakeLists.txt (+0/-34) miral-qt/tests/modules/SessionManager/session_manager_test.cpp (+0/-124) miral-qt/tests/modules/SessionManager/session_test.cpp (+0/-315) miral-qt/tests/modules/SharedWakelock/CMakeLists.txt (+0/-27) miral-qt/tests/modules/SharedWakelock/sharedwakelock_test.cpp (+0/-388) miral-qt/tests/modules/WindowManager/CMakeLists.txt (+0/-37) miral-qt/tests/modules/WindowManager/mirsurface_test.cpp (+0/-207) miral-qt/tests/modules/WindowManager/mirsurfaceitem_test.cpp (+0/-298) miral-qt/tests/modules/WindowManager/windowmodel_test.cpp (+0/-740) |
||||
To merge this branch: | bzr merge lp:~larryprice/miral/release-0.1.0 | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Larry Price (community) | Approve | ||
Gerry Boland (community) | Abstain | ||
Alan Griffiths | Approve | ||
Review via email: mp+305633@code.launchpad.net |
Commit message
[Larry Price]
* Initial release. (LP: #1613220)
Description of the change
This is the initial release branch for merging into a newly created release series branch. Most of the code here is not intended to be merged back into the devel branch, although some updates may be cherry-picked that direction. I'll merge this after getting through the NEWing process and getting MirAL into universe.
[Larry Price]
* Initial release. (LP: #1613220)
Gerry Boland (gerboland) wrote : | # |
=== removed directory 'miral-qt/demos'
I'm using the demos for miral-qt development, please don't remove it
Gerry Boland (gerboland) wrote : | # |
> === removed directory 'miral-qt/demos'
> I'm using the demos for miral-qt development, please don't remove it
Ah, just for a release branch, I don't object
Timo Jyrinki (timo-jyrinki) wrote : | # |
This needs top-approval, publish not possible without.
Larry Price (larryprice) wrote : | # |
prepping for top approval
- 335. By Larry Price
-
Update libmiral-dev short description
Preview Diff
1 | === added directory '.bzr-builddeb' |
2 | === added file '.bzr-builddeb/default.conf' |
3 | --- .bzr-builddeb/default.conf 1970-01-01 00:00:00 +0000 |
4 | +++ .bzr-builddeb/default.conf 2016-09-19 13:28:17 +0000 |
5 | @@ -0,0 +1,2 @@ |
6 | +[BUILDDEB] |
7 | +split = True |
8 | |
9 | === added file 'COPYING' |
10 | --- COPYING 1970-01-01 00:00:00 +0000 |
11 | +++ COPYING 2016-09-19 13:28:17 +0000 |
12 | @@ -0,0 +1,674 @@ |
13 | + GNU GENERAL PUBLIC LICENSE |
14 | + Version 3, 29 June 2007 |
15 | + |
16 | + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> |
17 | + Everyone is permitted to copy and distribute verbatim copies |
18 | + of this license document, but changing it is not allowed. |
19 | + |
20 | + Preamble |
21 | + |
22 | + The GNU General Public License is a free, copyleft license for |
23 | +software and other kinds of works. |
24 | + |
25 | + The licenses for most software and other practical works are designed |
26 | +to take away your freedom to share and change the works. By contrast, |
27 | +the GNU General Public License is intended to guarantee your freedom to |
28 | +share and change all versions of a program--to make sure it remains free |
29 | +software for all its users. We, the Free Software Foundation, use the |
30 | +GNU General Public License for most of our software; it applies also to |
31 | +any other work released this way by its authors. You can apply it to |
32 | +your programs, too. |
33 | + |
34 | + When we speak of free software, we are referring to freedom, not |
35 | +price. Our General Public Licenses are designed to make sure that you |
36 | +have the freedom to distribute copies of free software (and charge for |
37 | +them if you wish), that you receive source code or can get it if you |
38 | +want it, that you can change the software or use pieces of it in new |
39 | +free programs, and that you know you can do these things. |
40 | + |
41 | + To protect your rights, we need to prevent others from denying you |
42 | +these rights or asking you to surrender the rights. Therefore, you have |
43 | +certain responsibilities if you distribute copies of the software, or if |
44 | +you modify it: responsibilities to respect the freedom of others. |
45 | + |
46 | + For example, if you distribute copies of such a program, whether |
47 | +gratis or for a fee, you must pass on to the recipients the same |
48 | +freedoms that you received. You must make sure that they, too, receive |
49 | +or can get the source code. And you must show them these terms so they |
50 | +know their rights. |
51 | + |
52 | + Developers that use the GNU GPL protect your rights with two steps: |
53 | +(1) assert copyright on the software, and (2) offer you this License |
54 | +giving you legal permission to copy, distribute and/or modify it. |
55 | + |
56 | + For the developers' and authors' protection, the GPL clearly explains |
57 | +that there is no warranty for this free software. For both users' and |
58 | +authors' sake, the GPL requires that modified versions be marked as |
59 | +changed, so that their problems will not be attributed erroneously to |
60 | +authors of previous versions. |
61 | + |
62 | + Some devices are designed to deny users access to install or run |
63 | +modified versions of the software inside them, although the manufacturer |
64 | +can do so. This is fundamentally incompatible with the aim of |
65 | +protecting users' freedom to change the software. The systematic |
66 | +pattern of such abuse occurs in the area of products for individuals to |
67 | +use, which is precisely where it is most unacceptable. Therefore, we |
68 | +have designed this version of the GPL to prohibit the practice for those |
69 | +products. If such problems arise substantially in other domains, we |
70 | +stand ready to extend this provision to those domains in future versions |
71 | +of the GPL, as needed to protect the freedom of users. |
72 | + |
73 | + Finally, every program is threatened constantly by software patents. |
74 | +States should not allow patents to restrict development and use of |
75 | +software on general-purpose computers, but in those that do, we wish to |
76 | +avoid the special danger that patents applied to a free program could |
77 | +make it effectively proprietary. To prevent this, the GPL assures that |
78 | +patents cannot be used to render the program non-free. |
79 | + |
80 | + The precise terms and conditions for copying, distribution and |
81 | +modification follow. |
82 | + |
83 | + TERMS AND CONDITIONS |
84 | + |
85 | + 0. Definitions. |
86 | + |
87 | + "This License" refers to version 3 of the GNU General Public License. |
88 | + |
89 | + "Copyright" also means copyright-like laws that apply to other kinds of |
90 | +works, such as semiconductor masks. |
91 | + |
92 | + "The Program" refers to any copyrightable work licensed under this |
93 | +License. Each licensee is addressed as "you". "Licensees" and |
94 | +"recipients" may be individuals or organizations. |
95 | + |
96 | + To "modify" a work means to copy from or adapt all or part of the work |
97 | +in a fashion requiring copyright permission, other than the making of an |
98 | +exact copy. The resulting work is called a "modified version" of the |
99 | +earlier work or a work "based on" the earlier work. |
100 | + |
101 | + A "covered work" means either the unmodified Program or a work based |
102 | +on the Program. |
103 | + |
104 | + To "propagate" a work means to do anything with it that, without |
105 | +permission, would make you directly or secondarily liable for |
106 | +infringement under applicable copyright law, except executing it on a |
107 | +computer or modifying a private copy. Propagation includes copying, |
108 | +distribution (with or without modification), making available to the |
109 | +public, and in some countries other activities as well. |
110 | + |
111 | + To "convey" a work means any kind of propagation that enables other |
112 | +parties to make or receive copies. Mere interaction with a user through |
113 | +a computer network, with no transfer of a copy, is not conveying. |
114 | + |
115 | + An interactive user interface displays "Appropriate Legal Notices" |
116 | +to the extent that it includes a convenient and prominently visible |
117 | +feature that (1) displays an appropriate copyright notice, and (2) |
118 | +tells the user that there is no warranty for the work (except to the |
119 | +extent that warranties are provided), that licensees may convey the |
120 | +work under this License, and how to view a copy of this License. If |
121 | +the interface presents a list of user commands or options, such as a |
122 | +menu, a prominent item in the list meets this criterion. |
123 | + |
124 | + 1. Source Code. |
125 | + |
126 | + The "source code" for a work means the preferred form of the work |
127 | +for making modifications to it. "Object code" means any non-source |
128 | +form of a work. |
129 | + |
130 | + A "Standard Interface" means an interface that either is an official |
131 | +standard defined by a recognized standards body, or, in the case of |
132 | +interfaces specified for a particular programming language, one that |
133 | +is widely used among developers working in that language. |
134 | + |
135 | + The "System Libraries" of an executable work include anything, other |
136 | +than the work as a whole, that (a) is included in the normal form of |
137 | +packaging a Major Component, but which is not part of that Major |
138 | +Component, and (b) serves only to enable use of the work with that |
139 | +Major Component, or to implement a Standard Interface for which an |
140 | +implementation is available to the public in source code form. A |
141 | +"Major Component", in this context, means a major essential component |
142 | +(kernel, window system, and so on) of the specific operating system |
143 | +(if any) on which the executable work runs, or a compiler used to |
144 | +produce the work, or an object code interpreter used to run it. |
145 | + |
146 | + The "Corresponding Source" for a work in object code form means all |
147 | +the source code needed to generate, install, and (for an executable |
148 | +work) run the object code and to modify the work, including scripts to |
149 | +control those activities. However, it does not include the work's |
150 | +System Libraries, or general-purpose tools or generally available free |
151 | +programs which are used unmodified in performing those activities but |
152 | +which are not part of the work. For example, Corresponding Source |
153 | +includes interface definition files associated with source files for |
154 | +the work, and the source code for shared libraries and dynamically |
155 | +linked subprograms that the work is specifically designed to require, |
156 | +such as by intimate data communication or control flow between those |
157 | +subprograms and other parts of the work. |
158 | + |
159 | + The Corresponding Source need not include anything that users |
160 | +can regenerate automatically from other parts of the Corresponding |
161 | +Source. |
162 | + |
163 | + The Corresponding Source for a work in source code form is that |
164 | +same work. |
165 | + |
166 | + 2. Basic Permissions. |
167 | + |
168 | + All rights granted under this License are granted for the term of |
169 | +copyright on the Program, and are irrevocable provided the stated |
170 | +conditions are met. This License explicitly affirms your unlimited |
171 | +permission to run the unmodified Program. The output from running a |
172 | +covered work is covered by this License only if the output, given its |
173 | +content, constitutes a covered work. This License acknowledges your |
174 | +rights of fair use or other equivalent, as provided by copyright law. |
175 | + |
176 | + You may make, run and propagate covered works that you do not |
177 | +convey, without conditions so long as your license otherwise remains |
178 | +in force. You may convey covered works to others for the sole purpose |
179 | +of having them make modifications exclusively for you, or provide you |
180 | +with facilities for running those works, provided that you comply with |
181 | +the terms of this License in conveying all material for which you do |
182 | +not control copyright. Those thus making or running the covered works |
183 | +for you must do so exclusively on your behalf, under your direction |
184 | +and control, on terms that prohibit them from making any copies of |
185 | +your copyrighted material outside their relationship with you. |
186 | + |
187 | + Conveying under any other circumstances is permitted solely under |
188 | +the conditions stated below. Sublicensing is not allowed; section 10 |
189 | +makes it unnecessary. |
190 | + |
191 | + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. |
192 | + |
193 | + No covered work shall be deemed part of an effective technological |
194 | +measure under any applicable law fulfilling obligations under article |
195 | +11 of the WIPO copyright treaty adopted on 20 December 1996, or |
196 | +similar laws prohibiting or restricting circumvention of such |
197 | +measures. |
198 | + |
199 | + When you convey a covered work, you waive any legal power to forbid |
200 | +circumvention of technological measures to the extent such circumvention |
201 | +is effected by exercising rights under this License with respect to |
202 | +the covered work, and you disclaim any intention to limit operation or |
203 | +modification of the work as a means of enforcing, against the work's |
204 | +users, your or third parties' legal rights to forbid circumvention of |
205 | +technological measures. |
206 | + |
207 | + 4. Conveying Verbatim Copies. |
208 | + |
209 | + You may convey verbatim copies of the Program's source code as you |
210 | +receive it, in any medium, provided that you conspicuously and |
211 | +appropriately publish on each copy an appropriate copyright notice; |
212 | +keep intact all notices stating that this License and any |
213 | +non-permissive terms added in accord with section 7 apply to the code; |
214 | +keep intact all notices of the absence of any warranty; and give all |
215 | +recipients a copy of this License along with the Program. |
216 | + |
217 | + You may charge any price or no price for each copy that you convey, |
218 | +and you may offer support or warranty protection for a fee. |
219 | + |
220 | + 5. Conveying Modified Source Versions. |
221 | + |
222 | + You may convey a work based on the Program, or the modifications to |
223 | +produce it from the Program, in the form of source code under the |
224 | +terms of section 4, provided that you also meet all of these conditions: |
225 | + |
226 | + a) The work must carry prominent notices stating that you modified |
227 | + it, and giving a relevant date. |
228 | + |
229 | + b) The work must carry prominent notices stating that it is |
230 | + released under this License and any conditions added under section |
231 | + 7. This requirement modifies the requirement in section 4 to |
232 | + "keep intact all notices". |
233 | + |
234 | + c) You must license the entire work, as a whole, under this |
235 | + License to anyone who comes into possession of a copy. This |
236 | + License will therefore apply, along with any applicable section 7 |
237 | + additional terms, to the whole of the work, and all its parts, |
238 | + regardless of how they are packaged. This License gives no |
239 | + permission to license the work in any other way, but it does not |
240 | + invalidate such permission if you have separately received it. |
241 | + |
242 | + d) If the work has interactive user interfaces, each must display |
243 | + Appropriate Legal Notices; however, if the Program has interactive |
244 | + interfaces that do not display Appropriate Legal Notices, your |
245 | + work need not make them do so. |
246 | + |
247 | + A compilation of a covered work with other separate and independent |
248 | +works, which are not by their nature extensions of the covered work, |
249 | +and which are not combined with it such as to form a larger program, |
250 | +in or on a volume of a storage or distribution medium, is called an |
251 | +"aggregate" if the compilation and its resulting copyright are not |
252 | +used to limit the access or legal rights of the compilation's users |
253 | +beyond what the individual works permit. Inclusion of a covered work |
254 | +in an aggregate does not cause this License to apply to the other |
255 | +parts of the aggregate. |
256 | + |
257 | + 6. Conveying Non-Source Forms. |
258 | + |
259 | + You may convey a covered work in object code form under the terms |
260 | +of sections 4 and 5, provided that you also convey the |
261 | +machine-readable Corresponding Source under the terms of this License, |
262 | +in one of these ways: |
263 | + |
264 | + a) Convey the object code in, or embodied in, a physical product |
265 | + (including a physical distribution medium), accompanied by the |
266 | + Corresponding Source fixed on a durable physical medium |
267 | + customarily used for software interchange. |
268 | + |
269 | + b) Convey the object code in, or embodied in, a physical product |
270 | + (including a physical distribution medium), accompanied by a |
271 | + written offer, valid for at least three years and valid for as |
272 | + long as you offer spare parts or customer support for that product |
273 | + model, to give anyone who possesses the object code either (1) a |
274 | + copy of the Corresponding Source for all the software in the |
275 | + product that is covered by this License, on a durable physical |
276 | + medium customarily used for software interchange, for a price no |
277 | + more than your reasonable cost of physically performing this |
278 | + conveying of source, or (2) access to copy the |
279 | + Corresponding Source from a network server at no charge. |
280 | + |
281 | + c) Convey individual copies of the object code with a copy of the |
282 | + written offer to provide the Corresponding Source. This |
283 | + alternative is allowed only occasionally and noncommercially, and |
284 | + only if you received the object code with such an offer, in accord |
285 | + with subsection 6b. |
286 | + |
287 | + d) Convey the object code by offering access from a designated |
288 | + place (gratis or for a charge), and offer equivalent access to the |
289 | + Corresponding Source in the same way through the same place at no |
290 | + further charge. You need not require recipients to copy the |
291 | + Corresponding Source along with the object code. If the place to |
292 | + copy the object code is a network server, the Corresponding Source |
293 | + may be on a different server (operated by you or a third party) |
294 | + that supports equivalent copying facilities, provided you maintain |
295 | + clear directions next to the object code saying where to find the |
296 | + Corresponding Source. Regardless of what server hosts the |
297 | + Corresponding Source, you remain obligated to ensure that it is |
298 | + available for as long as needed to satisfy these requirements. |
299 | + |
300 | + e) Convey the object code using peer-to-peer transmission, provided |
301 | + you inform other peers where the object code and Corresponding |
302 | + Source of the work are being offered to the general public at no |
303 | + charge under subsection 6d. |
304 | + |
305 | + A separable portion of the object code, whose source code is excluded |
306 | +from the Corresponding Source as a System Library, need not be |
307 | +included in conveying the object code work. |
308 | + |
309 | + A "User Product" is either (1) a "consumer product", which means any |
310 | +tangible personal property which is normally used for personal, family, |
311 | +or household purposes, or (2) anything designed or sold for incorporation |
312 | +into a dwelling. In determining whether a product is a consumer product, |
313 | +doubtful cases shall be resolved in favor of coverage. For a particular |
314 | +product received by a particular user, "normally used" refers to a |
315 | +typical or common use of that class of product, regardless of the status |
316 | +of the particular user or of the way in which the particular user |
317 | +actually uses, or expects or is expected to use, the product. A product |
318 | +is a consumer product regardless of whether the product has substantial |
319 | +commercial, industrial or non-consumer uses, unless such uses represent |
320 | +the only significant mode of use of the product. |
321 | + |
322 | + "Installation Information" for a User Product means any methods, |
323 | +procedures, authorization keys, or other information required to install |
324 | +and execute modified versions of a covered work in that User Product from |
325 | +a modified version of its Corresponding Source. The information must |
326 | +suffice to ensure that the continued functioning of the modified object |
327 | +code is in no case prevented or interfered with solely because |
328 | +modification has been made. |
329 | + |
330 | + If you convey an object code work under this section in, or with, or |
331 | +specifically for use in, a User Product, and the conveying occurs as |
332 | +part of a transaction in which the right of possession and use of the |
333 | +User Product is transferred to the recipient in perpetuity or for a |
334 | +fixed term (regardless of how the transaction is characterized), the |
335 | +Corresponding Source conveyed under this section must be accompanied |
336 | +by the Installation Information. But this requirement does not apply |
337 | +if neither you nor any third party retains the ability to install |
338 | +modified object code on the User Product (for example, the work has |
339 | +been installed in ROM). |
340 | + |
341 | + The requirement to provide Installation Information does not include a |
342 | +requirement to continue to provide support service, warranty, or updates |
343 | +for a work that has been modified or installed by the recipient, or for |
344 | +the User Product in which it has been modified or installed. Access to a |
345 | +network may be denied when the modification itself materially and |
346 | +adversely affects the operation of the network or violates the rules and |
347 | +protocols for communication across the network. |
348 | + |
349 | + Corresponding Source conveyed, and Installation Information provided, |
350 | +in accord with this section must be in a format that is publicly |
351 | +documented (and with an implementation available to the public in |
352 | +source code form), and must require no special password or key for |
353 | +unpacking, reading or copying. |
354 | + |
355 | + 7. Additional Terms. |
356 | + |
357 | + "Additional permissions" are terms that supplement the terms of this |
358 | +License by making exceptions from one or more of its conditions. |
359 | +Additional permissions that are applicable to the entire Program shall |
360 | +be treated as though they were included in this License, to the extent |
361 | +that they are valid under applicable law. If additional permissions |
362 | +apply only to part of the Program, that part may be used separately |
363 | +under those permissions, but the entire Program remains governed by |
364 | +this License without regard to the additional permissions. |
365 | + |
366 | + When you convey a copy of a covered work, you may at your option |
367 | +remove any additional permissions from that copy, or from any part of |
368 | +it. (Additional permissions may be written to require their own |
369 | +removal in certain cases when you modify the work.) You may place |
370 | +additional permissions on material, added by you to a covered work, |
371 | +for which you have or can give appropriate copyright permission. |
372 | + |
373 | + Notwithstanding any other provision of this License, for material you |
374 | +add to a covered work, you may (if authorized by the copyright holders of |
375 | +that material) supplement the terms of this License with terms: |
376 | + |
377 | + a) Disclaiming warranty or limiting liability differently from the |
378 | + terms of sections 15 and 16 of this License; or |
379 | + |
380 | + b) Requiring preservation of specified reasonable legal notices or |
381 | + author attributions in that material or in the Appropriate Legal |
382 | + Notices displayed by works containing it; or |
383 | + |
384 | + c) Prohibiting misrepresentation of the origin of that material, or |
385 | + requiring that modified versions of such material be marked in |
386 | + reasonable ways as different from the original version; or |
387 | + |
388 | + d) Limiting the use for publicity purposes of names of licensors or |
389 | + authors of the material; or |
390 | + |
391 | + e) Declining to grant rights under trademark law for use of some |
392 | + trade names, trademarks, or service marks; or |
393 | + |
394 | + f) Requiring indemnification of licensors and authors of that |
395 | + material by anyone who conveys the material (or modified versions of |
396 | + it) with contractual assumptions of liability to the recipient, for |
397 | + any liability that these contractual assumptions directly impose on |
398 | + those licensors and authors. |
399 | + |
400 | + All other non-permissive additional terms are considered "further |
401 | +restrictions" within the meaning of section 10. If the Program as you |
402 | +received it, or any part of it, contains a notice stating that it is |
403 | +governed by this License along with a term that is a further |
404 | +restriction, you may remove that term. If a license document contains |
405 | +a further restriction but permits relicensing or conveying under this |
406 | +License, you may add to a covered work material governed by the terms |
407 | +of that license document, provided that the further restriction does |
408 | +not survive such relicensing or conveying. |
409 | + |
410 | + If you add terms to a covered work in accord with this section, you |
411 | +must place, in the relevant source files, a statement of the |
412 | +additional terms that apply to those files, or a notice indicating |
413 | +where to find the applicable terms. |
414 | + |
415 | + Additional terms, permissive or non-permissive, may be stated in the |
416 | +form of a separately written license, or stated as exceptions; |
417 | +the above requirements apply either way. |
418 | + |
419 | + 8. Termination. |
420 | + |
421 | + You may not propagate or modify a covered work except as expressly |
422 | +provided under this License. Any attempt otherwise to propagate or |
423 | +modify it is void, and will automatically terminate your rights under |
424 | +this License (including any patent licenses granted under the third |
425 | +paragraph of section 11). |
426 | + |
427 | + However, if you cease all violation of this License, then your |
428 | +license from a particular copyright holder is reinstated (a) |
429 | +provisionally, unless and until the copyright holder explicitly and |
430 | +finally terminates your license, and (b) permanently, if the copyright |
431 | +holder fails to notify you of the violation by some reasonable means |
432 | +prior to 60 days after the cessation. |
433 | + |
434 | + Moreover, your license from a particular copyright holder is |
435 | +reinstated permanently if the copyright holder notifies you of the |
436 | +violation by some reasonable means, this is the first time you have |
437 | +received notice of violation of this License (for any work) from that |
438 | +copyright holder, and you cure the violation prior to 30 days after |
439 | +your receipt of the notice. |
440 | + |
441 | + Termination of your rights under this section does not terminate the |
442 | +licenses of parties who have received copies or rights from you under |
443 | +this License. If your rights have been terminated and not permanently |
444 | +reinstated, you do not qualify to receive new licenses for the same |
445 | +material under section 10. |
446 | + |
447 | + 9. Acceptance Not Required for Having Copies. |
448 | + |
449 | + You are not required to accept this License in order to receive or |
450 | +run a copy of the Program. Ancillary propagation of a covered work |
451 | +occurring solely as a consequence of using peer-to-peer transmission |
452 | +to receive a copy likewise does not require acceptance. However, |
453 | +nothing other than this License grants you permission to propagate or |
454 | +modify any covered work. These actions infringe copyright if you do |
455 | +not accept this License. Therefore, by modifying or propagating a |
456 | +covered work, you indicate your acceptance of this License to do so. |
457 | + |
458 | + 10. Automatic Licensing of Downstream Recipients. |
459 | + |
460 | + Each time you convey a covered work, the recipient automatically |
461 | +receives a license from the original licensors, to run, modify and |
462 | +propagate that work, subject to this License. You are not responsible |
463 | +for enforcing compliance by third parties with this License. |
464 | + |
465 | + An "entity transaction" is a transaction transferring control of an |
466 | +organization, or substantially all assets of one, or subdividing an |
467 | +organization, or merging organizations. If propagation of a covered |
468 | +work results from an entity transaction, each party to that |
469 | +transaction who receives a copy of the work also receives whatever |
470 | +licenses to the work the party's predecessor in interest had or could |
471 | +give under the previous paragraph, plus a right to possession of the |
472 | +Corresponding Source of the work from the predecessor in interest, if |
473 | +the predecessor has it or can get it with reasonable efforts. |
474 | + |
475 | + You may not impose any further restrictions on the exercise of the |
476 | +rights granted or affirmed under this License. For example, you may |
477 | +not impose a license fee, royalty, or other charge for exercise of |
478 | +rights granted under this License, and you may not initiate litigation |
479 | +(including a cross-claim or counterclaim in a lawsuit) alleging that |
480 | +any patent claim is infringed by making, using, selling, offering for |
481 | +sale, or importing the Program or any portion of it. |
482 | + |
483 | + 11. Patents. |
484 | + |
485 | + A "contributor" is a copyright holder who authorizes use under this |
486 | +License of the Program or a work on which the Program is based. The |
487 | +work thus licensed is called the contributor's "contributor version". |
488 | + |
489 | + A contributor's "essential patent claims" are all patent claims |
490 | +owned or controlled by the contributor, whether already acquired or |
491 | +hereafter acquired, that would be infringed by some manner, permitted |
492 | +by this License, of making, using, or selling its contributor version, |
493 | +but do not include claims that would be infringed only as a |
494 | +consequence of further modification of the contributor version. For |
495 | +purposes of this definition, "control" includes the right to grant |
496 | +patent sublicenses in a manner consistent with the requirements of |
497 | +this License. |
498 | + |
499 | + Each contributor grants you a non-exclusive, worldwide, royalty-free |
500 | +patent license under the contributor's essential patent claims, to |
501 | +make, use, sell, offer for sale, import and otherwise run, modify and |
502 | +propagate the contents of its contributor version. |
503 | + |
504 | + In the following three paragraphs, a "patent license" is any express |
505 | +agreement or commitment, however denominated, not to enforce a patent |
506 | +(such as an express permission to practice a patent or covenant not to |
507 | +sue for patent infringement). To "grant" such a patent license to a |
508 | +party means to make such an agreement or commitment not to enforce a |
509 | +patent against the party. |
510 | + |
511 | + If you convey a covered work, knowingly relying on a patent license, |
512 | +and the Corresponding Source of the work is not available for anyone |
513 | +to copy, free of charge and under the terms of this License, through a |
514 | +publicly available network server or other readily accessible means, |
515 | +then you must either (1) cause the Corresponding Source to be so |
516 | +available, or (2) arrange to deprive yourself of the benefit of the |
517 | +patent license for this particular work, or (3) arrange, in a manner |
518 | +consistent with the requirements of this License, to extend the patent |
519 | +license to downstream recipients. "Knowingly relying" means you have |
520 | +actual knowledge that, but for the patent license, your conveying the |
521 | +covered work in a country, or your recipient's use of the covered work |
522 | +in a country, would infringe one or more identifiable patents in that |
523 | +country that you have reason to believe are valid. |
524 | + |
525 | + If, pursuant to or in connection with a single transaction or |
526 | +arrangement, you convey, or propagate by procuring conveyance of, a |
527 | +covered work, and grant a patent license to some of the parties |
528 | +receiving the covered work authorizing them to use, propagate, modify |
529 | +or convey a specific copy of the covered work, then the patent license |
530 | +you grant is automatically extended to all recipients of the covered |
531 | +work and works based on it. |
532 | + |
533 | + A patent license is "discriminatory" if it does not include within |
534 | +the scope of its coverage, prohibits the exercise of, or is |
535 | +conditioned on the non-exercise of one or more of the rights that are |
536 | +specifically granted under this License. You may not convey a covered |
537 | +work if you are a party to an arrangement with a third party that is |
538 | +in the business of distributing software, under which you make payment |
539 | +to the third party based on the extent of your activity of conveying |
540 | +the work, and under which the third party grants, to any of the |
541 | +parties who would receive the covered work from you, a discriminatory |
542 | +patent license (a) in connection with copies of the covered work |
543 | +conveyed by you (or copies made from those copies), or (b) primarily |
544 | +for and in connection with specific products or compilations that |
545 | +contain the covered work, unless you entered into that arrangement, |
546 | +or that patent license was granted, prior to 28 March 2007. |
547 | + |
548 | + Nothing in this License shall be construed as excluding or limiting |
549 | +any implied license or other defenses to infringement that may |
550 | +otherwise be available to you under applicable patent law. |
551 | + |
552 | + 12. No Surrender of Others' Freedom. |
553 | + |
554 | + If conditions are imposed on you (whether by court order, agreement or |
555 | +otherwise) that contradict the conditions of this License, they do not |
556 | +excuse you from the conditions of this License. If you cannot convey a |
557 | +covered work so as to satisfy simultaneously your obligations under this |
558 | +License and any other pertinent obligations, then as a consequence you may |
559 | +not convey it at all. For example, if you agree to terms that obligate you |
560 | +to collect a royalty for further conveying from those to whom you convey |
561 | +the Program, the only way you could satisfy both those terms and this |
562 | +License would be to refrain entirely from conveying the Program. |
563 | + |
564 | + 13. Use with the GNU Affero General Public License. |
565 | + |
566 | + Notwithstanding any other provision of this License, you have |
567 | +permission to link or combine any covered work with a work licensed |
568 | +under version 3 of the GNU Affero General Public License into a single |
569 | +combined work, and to convey the resulting work. The terms of this |
570 | +License will continue to apply to the part which is the covered work, |
571 | +but the special requirements of the GNU Affero General Public License, |
572 | +section 13, concerning interaction through a network will apply to the |
573 | +combination as such. |
574 | + |
575 | + 14. Revised Versions of this License. |
576 | + |
577 | + The Free Software Foundation may publish revised and/or new versions of |
578 | +the GNU General Public License from time to time. Such new versions will |
579 | +be similar in spirit to the present version, but may differ in detail to |
580 | +address new problems or concerns. |
581 | + |
582 | + Each version is given a distinguishing version number. If the |
583 | +Program specifies that a certain numbered version of the GNU General |
584 | +Public License "or any later version" applies to it, you have the |
585 | +option of following the terms and conditions either of that numbered |
586 | +version or of any later version published by the Free Software |
587 | +Foundation. If the Program does not specify a version number of the |
588 | +GNU General Public License, you may choose any version ever published |
589 | +by the Free Software Foundation. |
590 | + |
591 | + If the Program specifies that a proxy can decide which future |
592 | +versions of the GNU General Public License can be used, that proxy's |
593 | +public statement of acceptance of a version permanently authorizes you |
594 | +to choose that version for the Program. |
595 | + |
596 | + Later license versions may give you additional or different |
597 | +permissions. However, no additional obligations are imposed on any |
598 | +author or copyright holder as a result of your choosing to follow a |
599 | +later version. |
600 | + |
601 | + 15. Disclaimer of Warranty. |
602 | + |
603 | + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY |
604 | +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT |
605 | +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY |
606 | +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, |
607 | +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
608 | +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM |
609 | +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF |
610 | +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. |
611 | + |
612 | + 16. Limitation of Liability. |
613 | + |
614 | + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING |
615 | +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS |
616 | +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY |
617 | +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE |
618 | +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF |
619 | +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD |
620 | +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), |
621 | +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF |
622 | +SUCH DAMAGES. |
623 | + |
624 | + 17. Interpretation of Sections 15 and 16. |
625 | + |
626 | + If the disclaimer of warranty and limitation of liability provided |
627 | +above cannot be given local legal effect according to their terms, |
628 | +reviewing courts shall apply local law that most closely approximates |
629 | +an absolute waiver of all civil liability in connection with the |
630 | +Program, unless a warranty or assumption of liability accompanies a |
631 | +copy of the Program in return for a fee. |
632 | + |
633 | + END OF TERMS AND CONDITIONS |
634 | + |
635 | + How to Apply These Terms to Your New Programs |
636 | + |
637 | + If you develop a new program, and you want it to be of the greatest |
638 | +possible use to the public, the best way to achieve this is to make it |
639 | +free software which everyone can redistribute and change under these terms. |
640 | + |
641 | + To do so, attach the following notices to the program. It is safest |
642 | +to attach them to the start of each source file to most effectively |
643 | +state the exclusion of warranty; and each file should have at least |
644 | +the "copyright" line and a pointer to where the full notice is found. |
645 | + |
646 | + <one line to give the program's name and a brief idea of what it does.> |
647 | + Copyright (C) <year> <name of author> |
648 | + |
649 | + This program is free software: you can redistribute it and/or modify |
650 | + it under the terms of the GNU General Public License as published by |
651 | + the Free Software Foundation, either version 3 of the License, or |
652 | + (at your option) any later version. |
653 | + |
654 | + This program is distributed in the hope that it will be useful, |
655 | + but WITHOUT ANY WARRANTY; without even the implied warranty of |
656 | + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
657 | + GNU General Public License for more details. |
658 | + |
659 | + You should have received a copy of the GNU General Public License |
660 | + along with this program. If not, see <http://www.gnu.org/licenses/>. |
661 | + |
662 | +Also add information on how to contact you by electronic and paper mail. |
663 | + |
664 | + If the program does terminal interaction, make it output a short |
665 | +notice like this when it starts in an interactive mode: |
666 | + |
667 | + <program> Copyright (C) <year> <name of author> |
668 | + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. |
669 | + This is free software, and you are welcome to redistribute it |
670 | + under certain conditions; type `show c' for details. |
671 | + |
672 | +The hypothetical commands `show w' and `show c' should show the appropriate |
673 | +parts of the General Public License. Of course, your program's commands |
674 | +might be different; for a GUI interface, you would use an "about box". |
675 | + |
676 | + You should also get your employer (if you work as a programmer) or school, |
677 | +if any, to sign a "copyright disclaimer" for the program, if necessary. |
678 | +For more information on this, and how to apply and follow the GNU GPL, see |
679 | +<http://www.gnu.org/licenses/>. |
680 | + |
681 | + The GNU General Public License does not permit incorporating your program |
682 | +into proprietary programs. If your program is a subroutine library, you |
683 | +may consider it more useful to permit linking proprietary applications with |
684 | +the library. If this is what you want to do, use the GNU Lesser General |
685 | +Public License instead of this License. But first, please read |
686 | +<http://www.gnu.org/philosophy/why-not-lgpl.html>. |
687 | |
688 | === modified file 'debian/changelog' |
689 | --- debian/changelog 2016-08-08 11:53:32 +0000 |
690 | +++ debian/changelog 2016-09-19 13:28:17 +0000 |
691 | @@ -1,5 +1,5 @@ |
692 | -miral (0.1.0) UNRELEASED; urgency=medium |
693 | - |
694 | - * Initial release. (Closes: #XXXXXX) |
695 | - |
696 | - -- Alan Griffiths <alan.griffiths@canonical.com> Mon, 08 Aug 2016 10:41:55 +0100 |
697 | +miral (0.1.0-0ubuntu1) yakkety; urgency=medium |
698 | + |
699 | + * Initial release. (LP: #1613220) |
700 | + |
701 | + -- Larry Price <larry.price@canonical.com> Fri, 09 Sep 2016 11:09:40 -0500 |
702 | |
703 | === modified file 'debian/control' |
704 | --- debian/control 2016-09-12 15:00:18 +0000 |
705 | +++ debian/control 2016-09-19 13:28:17 +0000 |
706 | @@ -50,7 +50,7 @@ |
707 | Pre-Depends: ${misc:Pre-Depends} |
708 | Depends: libmiral1 (= ${binary:Version}), |
709 | ${misc:Depends}, |
710 | -Description: Display server for Ubuntu - ABI preserving abstraction layer |
711 | +Description: Developer files for the Mir ABI-stable abstraction layer |
712 | MirAL provides an ABI-stable abstraction layer for Mir based shells, |
713 | insulating them from mirserver ABI breaks. |
714 | . |
715 | |
716 | === modified file 'debian/copyright' |
717 | --- debian/copyright 2016-08-15 10:42:45 +0000 |
718 | +++ debian/copyright 2016-09-19 13:28:17 +0000 |
719 | @@ -1,20 +1,24 @@ |
720 | Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ |
721 | Upstream-Name: MirAL |
722 | Upstream-Contact: Alan Griffiths <alan.griffiths@canonical.com> |
723 | -Source: http://launchpad.net/miral |
724 | +Source: https://launchpad.net/miral |
725 | |
726 | Files: * |
727 | -Copyright: 2016, Canonical Ltd. |
728 | +Copyright: 2016 Canonical Ltd. |
729 | +License: GPL-3 |
730 | + |
731 | License: GPL-3 |
732 | This program is free software: you can redistribute it and/or modify |
733 | - it under the terms of the GNU General Public License version 3 as |
734 | - published by the Free Software Foundation. |
735 | + it under the terms of the GNU General Public License as published by |
736 | + the Free Software Foundation, version 3 of the License. |
737 | . |
738 | This program is distributed in the hope that it will be useful, |
739 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
740 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
741 | GNU General Public License for more details. |
742 | . |
743 | - On Debian systems, the full text of the GNU General Public |
744 | - License version 3 can be found in the file |
745 | - `/usr/share/common-licenses/GPL-3'. |
746 | + You should have received a copy of the GNU General Public License |
747 | + along with this program. If not, see <http://www.gnu.org/licenses/>. |
748 | + . |
749 | + On Debian systems, the full text of the GNU General Public License |
750 | + version 3 can be found in the file /usr/share/common-licenses/GPL-3. |
751 | |
752 | === modified file 'debian/rules' |
753 | --- debian/rules 2016-09-01 14:33:21 +0000 |
754 | +++ debian/rules 2016-09-19 13:28:17 +0000 |
755 | @@ -4,6 +4,9 @@ |
756 | |
757 | export DPKG_GENSYMBOLS_CHECK_LEVEL = 4 |
758 | |
759 | +# GLPixelBuffer doesn't support big endian architectures |
760 | +testskip_architectures := s390x powerpc |
761 | + |
762 | %: |
763 | dh $@ --parallel --fail-missing |
764 | |
765 | @@ -16,3 +19,8 @@ |
766 | # Only build the docs when we need them |
767 | override_dh_auto_build-indep: |
768 | dh_auto_build -- doc |
769 | + |
770 | +override_dh_auto_test: |
771 | +ifneq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH), $(testskip_architectures))) |
772 | + dh_auto_test $@ |
773 | +endif |
774 | |
775 | === removed directory 'miral-qt' |
776 | === removed file 'miral-qt/CMakeLists.txt' |
777 | --- miral-qt/CMakeLists.txt 2016-09-07 14:35:25 +0000 |
778 | +++ miral-qt/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
779 | @@ -1,181 +0,0 @@ |
780 | -cmake_minimum_required(VERSION 2.8.9) |
781 | - |
782 | -project(qtmir) |
783 | - |
784 | -set(QTMIR_VERSION_MAJOR 0) |
785 | -set(QTMIR_VERSION_MINOR 1) |
786 | -set(QTMIR_VERSION_PATCH 0) |
787 | - |
788 | -if(${PROJECT_BINARY_DIR} STREQUAL ${PROJECT_SOURCE_DIR}) |
789 | - message(FATAL_ERROR "In-tree build attempt detected, aborting. Set your build dir outside your source dir, delete CMakeCache.txt and CMakeFiles/ from source root and try again.") |
790 | -endif() |
791 | - |
792 | -set(MIRAL_QT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) |
793 | - |
794 | -# Find includes in corresponding build directories |
795 | -set(CMAKE_INCLUDE_CURRENT_DIR ON) |
796 | - |
797 | -find_package (ECM 1.7.0 QUIET NO_MODULE) |
798 | -if (ECM_FOUND) |
799 | - # Provides us with -DECM_ENABLE_SANITIZERS='X' |
800 | - # Where X can be address, thread, memory, leak, undefined |
801 | - include("${ECM_MODULE_DIR}/ECMEnableSanitizers.cmake") |
802 | -endif() |
803 | - |
804 | -# add custom cmake modules |
805 | -set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) |
806 | - |
807 | -# Instruct CMake to run moc automatically when needed. |
808 | -set(CMAKE_AUTOMOC ON) |
809 | - |
810 | -# FIXME - am not inheriting the C/CXXFlags from parent as too strict & fails to build |
811 | -set(CMAKE_C_FLAGS "-std=gnu99 -Wall -Wextra -Werror") |
812 | -set(CMAKE_CXX_FLAGS "-std=c++14 -fPIC -Wall -fno-strict-aliasing -Werror -Wextra") |
813 | -set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined") |
814 | - |
815 | -if ("${CMAKE_CXX_COMPILER}" MATCHES "clang") |
816 | - set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-return-type-c-linkage -Wno-mismatched-tags -Wno-inconsistent-missing-override -Wno-implicit-exception-spec-mismatch -Wno-unknown-pragmas") |
817 | -endif() |
818 | - |
819 | - |
820 | -include(EnableCoverageReport) |
821 | -##################################################################### |
822 | -# Enable code coverage calculation with gcov/gcovr/lcov |
823 | -# Usage: |
824 | -# * Switch build type to coverage (use ccmake or cmake-gui) |
825 | -# * Invoke make, make test, make coverage (or ninja if you use that backend) |
826 | -# * Find html report in subdir coveragereport |
827 | -# * Find xml report feasible for jenkins in coverage.xml |
828 | -##################################################################### |
829 | -if(cmake_build_type_lower MATCHES coverage) |
830 | - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --coverage" ) |
831 | - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage" ) |
832 | - set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} --coverage" ) |
833 | - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} --coverage" ) |
834 | - ENABLE_COVERAGE_REPORT(TARGETS ${SHELL_APP} FILTER /usr/include ${CMAKE_SOURCE_DIR}/tests/* ${CMAKE_BINARY_DIR}/*) |
835 | -endif() |
836 | - |
837 | -# Make sure we have all the needed symbols |
838 | -set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,defs") |
839 | -set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,-z,defs") |
840 | - |
841 | -# Static C++ checks |
842 | -add_custom_target(cppcheck COMMAND cppcheck --enable=all -q --error-exitcode=2 |
843 | - ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/tests) |
844 | - |
845 | -include(FindPkgConfig) |
846 | -find_package(Qt5Core 5.4 REQUIRED) |
847 | -find_package(Qt5DBus 5.4 REQUIRED) |
848 | -find_package(Qt5Gui 5.4 REQUIRED) |
849 | -find_package(Qt5Qml 5.4 REQUIRED) |
850 | -find_package(Qt5Quick 5.4 REQUIRED) |
851 | -find_package(Qt5Sensors 5.4 REQUIRED) |
852 | -find_package(Qt5Test 5.4 REQUIRED) |
853 | - |
854 | -find_package(Threads REQUIRED) |
855 | - |
856 | -pkg_check_modules(MIRSERVER mirserver>=0.22 REQUIRED) |
857 | -pkg_check_modules(MIRCLIENT mirclient>=0.22 REQUIRED) |
858 | -pkg_check_modules(MIRRENDERERGLDEV mir-renderer-gl-dev>=0.22 REQUIRED) |
859 | - |
860 | -pkg_check_modules(XKBCOMMON xkbcommon REQUIRED) |
861 | -pkg_check_modules(GLIB glib-2.0 REQUIRED) |
862 | -pkg_check_modules(PROCESS_CPP process-cpp REQUIRED) |
863 | -pkg_check_modules(UBUNTU_APP_LAUNCH ubuntu-app-launch-2 REQUIRED) |
864 | -pkg_check_modules(URL_DISPATCHER url-dispatcher-1) |
865 | -pkg_check_modules(EGL egl) |
866 | -pkg_check_modules(GIO gio-2.0) |
867 | -pkg_check_modules(GIO_UNIX gio-unix-2.0) |
868 | -pkg_check_modules(LTTNG lttng-ust) |
869 | -pkg_check_modules(GSETTINGS_QT REQUIRED gsettings-qt) |
870 | -pkg_check_modules(QTDBUSTEST libqtdbustest-1 REQUIRED) |
871 | -pkg_check_modules(QTDBUSMOCK libqtdbusmock-1 REQUIRED) |
872 | -pkg_check_modules(APPLICATION_API REQUIRED unity-shell-application=21) |
873 | -pkg_check_modules(CGMANAGER libcgmanager REQUIRED) |
874 | -pkg_check_modules(CONTENT_HUB libcontent-hub>=0.2 REQUIRED) |
875 | - |
876 | -add_definitions(-DMIR_REQUIRE_DEPRECATED_EVENT_OPT_IN=1) |
877 | - |
878 | -# Use the fast string builder |
879 | -add_definitions(-DQT_USE_QSTRINGBUILDER) |
880 | - |
881 | -include_directories( ${APPLICATION_API_INCLUDE_DIRS} ) |
882 | - |
883 | -# We expect this to be set via debian/rules for GLES builds |
884 | -if ("${USE_OPENGLES}" STREQUAL 1) |
885 | - message(STATUS "Qt5 determined to be compiled with GLES support") |
886 | - pkg_check_modules(GLESv2 glesv2) |
887 | - add_definitions(-DQT_USING_GLES) |
888 | - include_directories (${GLESv2_INCLUDE_DIRS}) |
889 | - set (GL_LIBRARIES "${GLESv2_LIBRARIES}") |
890 | -# Because qt/gl and qt/gles are not parallel installable we have a difficulty |
891 | -# building qtmir-desktop on armhf. We would like to link against opengl and bind the |
892 | -# opengl API but Qt is already linked against the ES APIs. So in this setup we link against OpenGLES |
893 | -# to accomodate Qt but bind the OpenGL API anyway. This is technically broken though |
894 | -# I suspect Mesa may allow it ~racarr. |
895 | -elseif("${USE_OPENGL_BUT_LINK_AGAINST_OPENGLES}") |
896 | - message(STATUS "Linking against OpenGL ES but binding OpenGL API") |
897 | - pkg_check_modules(GLESv2 glesv2) |
898 | - add_definitions(-DQT_USING_GL) |
899 | - include_directories (${GLESv2_INCLUDE_DIRS}) |
900 | - set (GL_LIBRARIES "${GLESv2_LIBRARIES}") |
901 | -else() |
902 | - message(STATUS "Qt5 determined to be compiled with OpenGL support") |
903 | - pkg_check_modules(GL gl) |
904 | - add_definitions(-DQT_USING_OPENGL) |
905 | - include_directories (${GL_INCLUDE_DIRS}) |
906 | -endif() |
907 | - |
908 | -# Standard install paths |
909 | -include(GNUInstallDirs) |
910 | - |
911 | - |
912 | -# Determine QPA plugin install path |
913 | -# FIXME(greyback) there must be a better way than calling a private macro to set a property. |
914 | -# I'm manually calling a macro from Qt5GuiConfig.cmake, but I don't understand why it isn't being called. |
915 | -_populate_Gui_plugin_properties("Gui" "PLATFORMS" "platforms") |
916 | -get_target_property(Qt5Gui_QPA_Plugin_Path Qt5::Gui IMPORTED_LOCATION_PLATFORMS) |
917 | - |
918 | -# Set QML module install path |
919 | -set(QML_MODULE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/qt5/qml") |
920 | -set(QTMIR_DATA_DIR ${CMAKE_INSTALL_DATADIR}/qtmir) |
921 | - |
922 | - |
923 | -# Customisations for the build type |
924 | -if(NOT CMAKE_BUILD_TYPE) |
925 | - message(STATUS "Setting build type to 'RelWithDebInfo' as none was specified.") |
926 | - set(CMAKE_BUILD_TYPE RelWithDebInfo) |
927 | -endif() |
928 | - |
929 | -string(TOLOWER "${CMAKE_BUILD_TYPE}" cmake_build_type_lower) |
930 | - |
931 | -if(cmake_build_type_lower MATCHES relwithdebinfo) # workaround for http://public.kitware.com/Bug/view.php?id=14696 |
932 | - add_definitions(-DQT_NO_DEBUG) |
933 | -endif() |
934 | -if ("${CMAKE_BUILD_TYPE}" STREQUAL "release" OR "${CMAKE_BUILD_TYPE}" STREQUAL "relwithdebinfo") |
935 | - option(Werror "Treat warnings as errors" ON) |
936 | -else() |
937 | - option(Werror "Treat warnings as errors" OFF) |
938 | -endif() |
939 | - |
940 | -if (Werror) |
941 | - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror") |
942 | -endif() |
943 | - |
944 | - |
945 | -# Mir uses boost, which does not like Qt defining macros named "signals" and "slots" |
946 | -add_definitions(-DQT_NO_KEYWORDS) |
947 | - |
948 | -# Tests |
949 | -if (NOT NO_TESTS) |
950 | - include(CTest) |
951 | - enable_testing() |
952 | - add_subdirectory(tests) |
953 | -else() |
954 | - message(STATUS "Tests disabled") |
955 | -endif() |
956 | - |
957 | -# add subdirectories to build |
958 | -add_subdirectory(src) |
959 | -add_subdirectory(demos) |
960 | -add_subdirectory(benchmarks) |
961 | |
962 | === removed file 'miral-qt/README' |
963 | --- miral-qt/README 2016-06-01 22:06:51 +0000 |
964 | +++ miral-qt/README 1970-01-01 00:00:00 +0000 |
965 | @@ -1,47 +0,0 @@ |
966 | -This repo contains a QPA plugin to make Qt a Mir server. |
967 | - |
968 | -Handy way to grab dependencies is with: |
969 | -$ sudo mk-build-deps -ir debian/control |
970 | - |
971 | -To use, compile and install (building in a "build" subdir as an example): |
972 | -$ mkdir build |
973 | -$ cd build |
974 | -$ cmake -DCMAKE_INSTALL_PREFIX=/usr ../ |
975 | -$ make |
976 | -$ sudo make install |
977 | - |
978 | -To enable debug output, replace the single "cmake" command with |
979 | -$ cmake -DCMAKE_BUILD_TYPE=Debug |
980 | -(is good to "make clean" beforehand) |
981 | - |
982 | -To avoid building the tests (to speed up the build): |
983 | -$ cmake -DNO_TESTS=true |
984 | - |
985 | -To enable logging of Qt's OpenGL debug messages: |
986 | -$ cmake -DQGL_DEBUG=true |
987 | - |
988 | -To test the server, enter the demos directory, and run (NB: server should be run as root): |
989 | - |
990 | -$ sudo su |
991 | -$ export QT_QPA_PLATFORM=mirserver |
992 | -$ export MIR_SERVER_FILE=/tmp/mir_socket |
993 | -$ unset QT_QPA_PLATFORMTHEME |
994 | - |
995 | -then run the Qt application of your choice (qmlscene best). As example, try |
996 | - |
997 | -$ qmlscene qml-demo-shell/qml-demo-shell.qml |
998 | - |
999 | -prepare the environment for running mir clients: |
1000 | - |
1001 | -$ sudo chmod a+rw /tmp/mir_socket |
1002 | -$ export MIR_SOCKET=/tmp/mir_socket |
1003 | - |
1004 | -and then try running an application: |
1005 | - |
1006 | -$ mir_demo_client_egltriangle --desktop_file_hint=/usr/share/applications/gallery-app.desktop |
1007 | -or |
1008 | -$ unset QT_QPA_PLATFORMTHEME |
1009 | -$ export QT_QPA_PLATFORM=ubuntumirclient |
1010 | -$ qmlscene qml-demo-client/qml-demo-client.qml --desktop_file_hint=/usr/share/click/preinstalled/com.ubuntu.calendar/0.4.172/calendar-app.desktop |
1011 | - |
1012 | -where the desktop file hint specifies an existing file. |
1013 | |
1014 | === removed directory 'miral-qt/benchmarks' |
1015 | === removed file 'miral-qt/benchmarks/CMakeLists.txt' |
1016 | --- miral-qt/benchmarks/CMakeLists.txt 2016-06-01 22:06:51 +0000 |
1017 | +++ miral-qt/benchmarks/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
1018 | @@ -1,8 +0,0 @@ |
1019 | -file(GLOB BENCHMARK_FILES |
1020 | - *.py |
1021 | - *.R |
1022 | -) |
1023 | - |
1024 | -install(FILES ${BENCHMARK_FILES} |
1025 | - DESTINATION ${QTMIR_DATA_DIR}/benchmarks |
1026 | -) |
1027 | |
1028 | === removed file 'miral-qt/benchmarks/README' |
1029 | --- miral-qt/benchmarks/README 2016-06-01 22:06:51 +0000 |
1030 | +++ miral-qt/benchmarks/README 1970-01-01 00:00:00 +0000 |
1031 | @@ -1,12 +0,0 @@ |
1032 | -To run performance tests on device: |
1033 | - |
1034 | -Firstly, you will need to install the qtmir-tests package. So either install the package using apt or build |
1035 | -and install from source |
1036 | -$ sudo apt-get install qtmir-tests |
1037 | - |
1038 | -Then you need to stop unity8 & unity-system compositor so that we can start out test in a controlled environment. |
1039 | -$ sudo stop lightdm |
1040 | - |
1041 | -Next, start the test! |
1042 | -$ cd benchmarks |
1043 | -$ sudo python3 touch_event_latency.py |
1044 | \ No newline at end of file |
1045 | |
1046 | === removed file 'miral-qt/benchmarks/common.py' |
1047 | --- miral-qt/benchmarks/common.py 2016-06-01 22:06:51 +0000 |
1048 | +++ miral-qt/benchmarks/common.py 1970-01-01 00:00:00 +0000 |
1049 | @@ -1,33 +0,0 @@ |
1050 | -# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- |
1051 | -# |
1052 | -# Copyright (C) 2015 Canonical Ltd. |
1053 | -# |
1054 | -# This program is free software; you can redistribute it and/or modify |
1055 | -# it under the terms of the GNU Lesser General Public License as published by |
1056 | -# the Free Software Foundation; version 3. |
1057 | -# |
1058 | -# This program is distributed in the hope that it will be useful, |
1059 | -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1060 | -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1061 | -# GNU Lesser General Public License for more details. |
1062 | -# |
1063 | -# You should have received a copy of the GNU Lesser General Public License |
1064 | -# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1065 | - |
1066 | -from autopilot import ( |
1067 | - input, |
1068 | - platform |
1069 | -) |
1070 | - |
1071 | -def get_pointing_device(): |
1072 | - """Return the pointing device depending on the platform. |
1073 | - |
1074 | - If the platform is `Desktop`, the pointing device will be a `Mouse`. |
1075 | - If not, the pointing device will be `Touch`. |
1076 | - |
1077 | - """ |
1078 | - if platform.model() == 'Desktop': |
1079 | - input_device_class = input.Mouse |
1080 | - else: |
1081 | - input_device_class = input.Touch |
1082 | - return input.Pointer(device=input_device_class.create()) |
1083 | \ No newline at end of file |
1084 | |
1085 | === removed file 'miral-qt/benchmarks/report_types.py' |
1086 | --- miral-qt/benchmarks/report_types.py 2016-06-01 22:06:51 +0000 |
1087 | +++ miral-qt/benchmarks/report_types.py 1970-01-01 00:00:00 +0000 |
1088 | @@ -1,121 +0,0 @@ |
1089 | -# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- |
1090 | -# |
1091 | -# Copyright (C) 2015 Canonical Ltd. |
1092 | -# |
1093 | -# This program is free software; you can redistribute it and/or modify |
1094 | -# it under the terms of the GNU Lesser General Public License as published by |
1095 | -# the Free Software Foundation; version 3. |
1096 | -# |
1097 | -# This program is distributed in the hope that it will be useful, |
1098 | -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1099 | -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1100 | -# GNU Lesser General Public License for more details. |
1101 | -# |
1102 | -# You should have received a copy of the GNU Lesser General Public License |
1103 | -# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1104 | - |
1105 | -import subprocess |
1106 | -import os |
1107 | -import shutil |
1108 | - |
1109 | -class Node: |
1110 | - def __init__(self, name): |
1111 | - self.name = name |
1112 | - self.children = [] |
1113 | - |
1114 | - def add_child(self, child): |
1115 | - self.children.append(child) |
1116 | - |
1117 | - def to_string(self): |
1118 | - output = "<%s>" % self.name |
1119 | - for child in self.children: |
1120 | - output += child.to_string() |
1121 | - output += "</%s>" % self.name |
1122 | - return output |
1123 | - |
1124 | -class Results(Node): |
1125 | - def __init__(self): |
1126 | - super().__init__("results") |
1127 | - |
1128 | -class Events(Node): |
1129 | - def __init__(self): |
1130 | - super().__init__("events") |
1131 | - |
1132 | -class Event: |
1133 | - def __init__(self, event): |
1134 | - self.pid = event["vpid"] |
1135 | - self.name = event.name |
1136 | - self.timestamp = event.timestamp |
1137 | - |
1138 | - def to_string(self): |
1139 | - output = "<event " |
1140 | - output += "pid='{}' ".format(self.pid) |
1141 | - output += "name='{}' ".format(self.name) |
1142 | - output += "timestamp='{}' ".format(self.timestamp) |
1143 | - output += "/>" |
1144 | - return output |
1145 | - |
1146 | -class Processes(Node): |
1147 | - def __init__(self): |
1148 | - super().__init__("processes") |
1149 | - |
1150 | -class Process: |
1151 | - def __init__(self, name, pid): |
1152 | - self.name = name |
1153 | - self.pid = pid |
1154 | - |
1155 | - def to_string(self): |
1156 | - output = "<process " |
1157 | - output += "name='{}' ".format(self.name) |
1158 | - output += "pid='{}' ".format(self.pid) |
1159 | - output += "/>" |
1160 | - return output |
1161 | - |
1162 | -class ResultsData: |
1163 | - def __init__(self, name, mean=0.0, deviation=0.0, comment=""): |
1164 | - self.data = [] |
1165 | - self.name = name |
1166 | - self.mean = mean |
1167 | - self.deviation = deviation |
1168 | - self.comment = comment |
1169 | - |
1170 | - def add_data(self, value): |
1171 | - self.data.append(value) |
1172 | - |
1173 | - def to_string(self): |
1174 | - output = "<data name='{}' mean='{}' deviation='{}' comment='{}' count='{}'>".format( |
1175 | - self.name, |
1176 | - self.mean, |
1177 | - self.deviation, |
1178 | - self.comment, |
1179 | - len(self.data)) |
1180 | - output += "<values>" |
1181 | - output += ",".join(map( lambda x: str(x), self.data)) |
1182 | - output += "</values>" |
1183 | - output += "</data>" |
1184 | - return output; |
1185 | - |
1186 | - def generate_histogram(self, filename): |
1187 | - cmdline = [ |
1188 | - shutil.which("Rscript"), |
1189 | - os.path.split(os.path.abspath(__file__))[0] + "/touch_event_latency.R", |
1190 | - "data.csv", |
1191 | - "%s.png" % filename] |
1192 | - # Use R to generate a histogram plot |
1193 | - f = open("data.csv", "w") |
1194 | - f.write(",".join(map( lambda x: str(x), self.data))); |
1195 | - f.close() |
1196 | - process = subprocess.Popen(cmdline) |
1197 | - process.wait() |
1198 | - if process.returncode != 0: |
1199 | - print("Failed to generate histogram"); |
1200 | - os.remove("data.csv") |
1201 | - |
1202 | - |
1203 | -class Error: |
1204 | - def __init__(self, comment): |
1205 | - self.comment = comment |
1206 | - |
1207 | - def to_string(self): |
1208 | - return "<error comment='{}' />".format(self.comment) |
1209 | - return output |
1210 | \ No newline at end of file |
1211 | |
1212 | === removed file 'miral-qt/benchmarks/touch_event_latency.R' |
1213 | --- miral-qt/benchmarks/touch_event_latency.R 2016-06-01 22:06:51 +0000 |
1214 | +++ miral-qt/benchmarks/touch_event_latency.R 1970-01-01 00:00:00 +0000 |
1215 | @@ -1,6 +0,0 @@ |
1216 | -args <- commandArgs(trailingOnly = TRUE) |
1217 | -data <- scan(args[1], numeric(), sep=",") |
1218 | -colors = c("red", "yellow", "green", "violet", "orange", "pink", "blue") |
1219 | -png(filename=args[2]) |
1220 | -hist(data, breaks=max(data), col=colors) |
1221 | -dev.off() |
1222 | |
1223 | === removed file 'miral-qt/benchmarks/touch_event_latency.py' |
1224 | --- miral-qt/benchmarks/touch_event_latency.py 2016-06-01 22:06:51 +0000 |
1225 | +++ miral-qt/benchmarks/touch_event_latency.py 1970-01-01 00:00:00 +0000 |
1226 | @@ -1,271 +0,0 @@ |
1227 | -# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- |
1228 | -# |
1229 | -# Copyright (C) 2015 Canonical Ltd. |
1230 | -# |
1231 | -# This program is free software; you can redistribute it and/or modify |
1232 | -# it under the terms of the GNU Lesser General Public License as published by |
1233 | -# the Free Software Foundation; version 3. |
1234 | -# |
1235 | -# This program is distributed in the hope that it will be useful, |
1236 | -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
1237 | -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
1238 | -# GNU Lesser General Public License for more details. |
1239 | -# |
1240 | -# You should have received a copy of the GNU Lesser General Public License |
1241 | -# along with this program. If not, see <http://www.gnu.org/licenses/>. |
1242 | - |
1243 | -from mir_perf_framework import PerformanceTest, Server, Client |
1244 | -import time |
1245 | -import statistics |
1246 | -import shutil |
1247 | -import sys |
1248 | -from common import get_pointing_device |
1249 | -import report_types |
1250 | - |
1251 | -####### TEST ####### |
1252 | - |
1253 | - |
1254 | -def perform_test(): |
1255 | - host = Server(reports=["input"]) |
1256 | - nested = Server(executable=shutil.which("qtmir-demo-shell"), |
1257 | - host=host, |
1258 | - reports=["input","client-input-receiver"], |
1259 | - env={"QT_QPA_PLATFORM": "mirserver", "QML_NO_TOUCH_COMPRESSION": "1"}) |
1260 | - client = Client(executable=shutil.which("qtmir-demo-client"), |
1261 | - server=nested, |
1262 | - reports=["input","client-input-receiver"], |
1263 | - env={"QT_QPA_PLATFORM": "ubuntumirclient", "QML_NO_TOUCH_COMPRESSION": "1"}, |
1264 | - options=["--", "--desktop_file_hint=/usr/share/applications/qtmir-demo-client.desktop"]) |
1265 | - |
1266 | - test = PerformanceTest([host, nested, client]) |
1267 | - test.start() |
1268 | - |
1269 | - results = report_types.Results() |
1270 | - processes = report_types.Processes() |
1271 | - processes.add_child(report_types.Process("Host", host.process.pid)) |
1272 | - processes.add_child(report_types.Process("Nested Server", nested.process.pid)) |
1273 | - processes.add_child(report_types.Process("Client", client.process.pid)) |
1274 | - results.add_child(processes) |
1275 | - |
1276 | - time.sleep(3) # wait for settle |
1277 | - |
1278 | - host_pid = host.process.pid |
1279 | - nested_pid = nested.process.pid |
1280 | - client_pid = client.process.pid |
1281 | - |
1282 | - touch = get_pointing_device() |
1283 | - time.sleep(1) # let mir pick up the new input device |
1284 | - touch.drag(100, 100, 1000, 100, 5, 0.006) |
1285 | - touch.drag(1000, 100, 1000, 1000, 5, 0.006) |
1286 | - touch.drag(1000, 1000, 100, 1000, 5, 0.006) |
1287 | - touch.drag(100, 1000, 100, 100, 5, 0.006) |
1288 | - |
1289 | - # time.sleep(5) # wait for settle |
1290 | - time.sleep(2) # wait for settle |
1291 | - test.stop() |
1292 | - |
1293 | - ####### TRACE PARSING ####### |
1294 | - |
1295 | - trace = test.babeltrace() |
1296 | - |
1297 | - server_touch_data_timestamps = {} |
1298 | - client_touch_data_timestamps = {} |
1299 | - client_touch_data_latency = {} |
1300 | - |
1301 | - qtmir_touch_dispatch_start = {} |
1302 | - qtmir_touch_dispatch_end = {} |
1303 | - qtmir_touch_consume_start = {} |
1304 | - qtmir_touch_consume_end = {} |
1305 | - |
1306 | - events = report_types.Events() |
1307 | - |
1308 | - for event in trace.events: |
1309 | - events.add_child(report_types.Event(event)) |
1310 | - pid = event["vpid"] |
1311 | - if event.name == "mir_client_input_receiver:touch_event": |
1312 | - if pid not in client_touch_data_timestamps: client_touch_data_timestamps[pid] = [] |
1313 | - if pid not in client_touch_data_latency: client_touch_data_latency[pid] = [] |
1314 | - diff = (event.timestamp - event["event_time"]) / 1000000.0 |
1315 | - if diff > 0: |
1316 | - client_touch_data_timestamps[pid].append(event.timestamp) |
1317 | - client_touch_data_latency[pid].append(diff) |
1318 | - |
1319 | - elif event.name == "mir_server_input:published_motion_event": |
1320 | - if pid not in server_touch_data_timestamps: server_touch_data_timestamps[pid] = [] |
1321 | - server_touch_data_timestamps[pid].append(event["event_time"]) |
1322 | - |
1323 | - elif event.name == "qtmirserver:touchEventDispatch_start": |
1324 | - if pid not in qtmir_touch_dispatch_start: qtmir_touch_dispatch_start[pid] = [] |
1325 | - qtmir_touch_dispatch_start[pid].append(event.timestamp) |
1326 | - |
1327 | - elif event.name == "qtmirserver:touchEventDispatch_end": |
1328 | - if pid not in qtmir_touch_dispatch_end: qtmir_touch_dispatch_end[pid] = [] |
1329 | - qtmir_touch_dispatch_end[pid].append(event.timestamp) |
1330 | - |
1331 | - elif event.name == "qtmir:touchEventConsume_start": |
1332 | - if pid not in qtmir_touch_consume_start: qtmir_touch_consume_start[pid] = [] |
1333 | - qtmir_touch_consume_start[pid].append(event.timestamp) |
1334 | - |
1335 | - elif event.name == "qtmir:touchEventConsume_end": |
1336 | - if pid not in qtmir_touch_consume_end: qtmir_touch_consume_end[pid] = [] |
1337 | - qtmir_touch_consume_end[pid].append(event.timestamp) |
1338 | - |
1339 | - # LATENCY MEANS |
1340 | - |
1341 | - if nested_pid in client_touch_data_latency: |
1342 | - nested_data = client_touch_data_latency[nested_pid] |
1343 | - nested_latency_xml = report_types.ResultsData( |
1344 | - "nested_latency", |
1345 | - statistics.mean(nested_data), |
1346 | - statistics.stdev(nested_data), |
1347 | - "Kernel to nested server latency") |
1348 | - for value in nested_data: |
1349 | - nested_latency_xml.add_data(value) |
1350 | - results.add_child(nested_latency_xml) |
1351 | - nested_latency_xml.generate_histogram("nested_latency") |
1352 | - else: |
1353 | - results.add_child(report_types.Error("No nested server touch latency data")) |
1354 | - |
1355 | - if client_pid in client_touch_data_latency: |
1356 | - client_data = client_touch_data_latency[client_pid] |
1357 | - |
1358 | - client_latency_xml = report_types.ResultsData( |
1359 | - "client_latency", |
1360 | - statistics.mean(client_data), |
1361 | - statistics.stdev(client_data), |
1362 | - "Kernel to client latency") |
1363 | - for value in client_data: |
1364 | - client_latency_xml.add_data(value) |
1365 | - results.add_child(client_latency_xml) |
1366 | - client_latency_xml.generate_histogram("client_latency") |
1367 | - else: |
1368 | - results.add_child(report_types.Error("No client touch latency data")) |
1369 | - |
1370 | - # EVENT RATES |
1371 | - if host_pid in server_touch_data_timestamps: |
1372 | - last_timestamp = -1 |
1373 | - input_rate = [] |
1374 | - |
1375 | - for next_timestamp in server_touch_data_timestamps[host_pid]: |
1376 | - if last_timestamp != -1: |
1377 | - diff = (next_timestamp - last_timestamp) / 1000000.0 |
1378 | - input_rate.append(diff) |
1379 | - last_timestamp = next_timestamp |
1380 | - |
1381 | - input_rate_xml = report_types.ResultsData( |
1382 | - "host_input_ate", |
1383 | - statistics.mean(input_rate), |
1384 | - statistics.stdev(input_rate), |
1385 | - "Host input event rate") |
1386 | - for value in input_rate: |
1387 | - input_rate_xml.add_data(value) |
1388 | - results.add_child(input_rate_xml) |
1389 | - input_rate_xml.generate_histogram("host_input_rate") |
1390 | - else: |
1391 | - results.add_child(report_types.Error("No host server input event timestamp data")) |
1392 | - |
1393 | - if nested_pid in client_touch_data_timestamps: |
1394 | - last_timestamp = -1 |
1395 | - input_rate = [] |
1396 | - for next_timestamp in client_touch_data_timestamps[nested_pid]: |
1397 | - if last_timestamp != -1: |
1398 | - diff = (next_timestamp - last_timestamp) / 1000000.0 |
1399 | - input_rate.append(diff) |
1400 | - last_timestamp = next_timestamp |
1401 | - |
1402 | - input_rate_xml = report_types.ResultsData( |
1403 | - "nested_input_rate", |
1404 | - statistics.mean(input_rate), |
1405 | - statistics.stdev(input_rate), |
1406 | - "Nested server event rate") |
1407 | - for value in input_rate: |
1408 | - input_rate_xml.add_data(value) |
1409 | - results.add_child(input_rate_xml) |
1410 | - input_rate_xml.generate_histogram("nested_input_rate") |
1411 | - else: |
1412 | - results.add_child(report_types.Error("No nested server input event timestamp data")) |
1413 | - |
1414 | - if client_pid in client_touch_data_timestamps: |
1415 | - last_timestamp = -1 |
1416 | - input_rate = [] |
1417 | - for next_timestamp in client_touch_data_timestamps[client_pid]: |
1418 | - if last_timestamp != -1: |
1419 | - diff = (next_timestamp - last_timestamp) / 1000000.0 |
1420 | - input_rate.append(diff) |
1421 | - last_timestamp = next_timestamp |
1422 | - |
1423 | - input_rate_xml = report_types.ResultsData( |
1424 | - "client_input_rate", |
1425 | - statistics.mean(input_rate), |
1426 | - statistics.stdev(input_rate), |
1427 | - "Client event rate") |
1428 | - for value in input_rate: |
1429 | - input_rate_xml.add_data(value) |
1430 | - results.add_child(input_rate_xml) |
1431 | - input_rate_xml.generate_histogram("client_input_rate") |
1432 | - else: |
1433 | - results.add_child(report_types.Error("No client event timestamp data")) |
1434 | - |
1435 | - qtmir_loop_data = [] |
1436 | - dispatch_data = [] |
1437 | - consume_data = [] |
1438 | - |
1439 | - # TIME BETWEEN TRACEPOINTS |
1440 | - dispatch_starts = qtmir_touch_dispatch_start[nested_pid] if nested_pid in qtmir_touch_dispatch_start else [] |
1441 | - dispatch_ends = qtmir_touch_dispatch_end[nested_pid] if nested_pid in qtmir_touch_dispatch_end else [] |
1442 | - consume_starts = qtmir_touch_consume_start[nested_pid] if nested_pid in qtmir_touch_consume_start else [] |
1443 | - consume_ends = qtmir_touch_consume_end[nested_pid] if nested_pid in qtmir_touch_consume_end else [] |
1444 | - |
1445 | - # since there's no uniqueness to events, we need to assume all events are 1:1 through system |
1446 | - if len(dispatch_starts) > 0 and len(dispatch_starts) == len(dispatch_ends) and len(dispatch_starts) == len(consume_starts) and len(consume_starts) == len(consume_ends): |
1447 | - i = 0 |
1448 | - |
1449 | - for start in dispatch_starts: |
1450 | - dispatch_diff = (dispatch_ends[i] - start) / 1000000.0 |
1451 | - consume_diff = (consume_ends[i] - consume_starts[i]) / 1000000.0 |
1452 | - loop_dif = (consume_starts[i] - dispatch_ends[i]) / 1000000.0 |
1453 | - dispatch_data.append(dispatch_diff); |
1454 | - consume_data.append(consume_diff); |
1455 | - qtmir_loop_data.append(loop_dif); |
1456 | - i=i+1 |
1457 | - |
1458 | - qtmir_loop_xml = report_types.ResultsData( |
1459 | - "qtmir_eventloop", |
1460 | - statistics.mean(qtmir_loop_data), |
1461 | - statistics.stdev(qtmir_loop_data), |
1462 | - "Time spent in qtmir event loop") |
1463 | - for value in qtmir_loop_data: |
1464 | - qtmir_loop_xml.add_data(value) |
1465 | - results.add_child(qtmir_loop_xml) |
1466 | - qtmir_loop_xml.generate_histogram("qtmir_eventloop") |
1467 | - |
1468 | - qtmir_dispatch_xml = report_types.ResultsData( |
1469 | - "qtmir_dispatch", |
1470 | - statistics.mean(dispatch_data), |
1471 | - statistics.stdev(dispatch_data), |
1472 | - "Time QteventFeeder spent dispatching event to qt") |
1473 | - for value in dispatch_data: |
1474 | - qtmir_dispatch_xml.add_data(value) |
1475 | - results.add_child(qtmir_dispatch_xml) |
1476 | - qtmir_dispatch_xml.generate_histogram("qtmir_dispatch") |
1477 | - |
1478 | - qtmir_consume_xml = report_types.ResultsData( |
1479 | - "qtmir_consume", |
1480 | - statistics.mean(consume_data), |
1481 | - statistics.stdev(consume_data), |
1482 | - "Time MirSurfaceItem spent consiming event") |
1483 | - for value in consume_data: |
1484 | - qtmir_consume_xml.add_data(value) |
1485 | - results.add_child(qtmir_consume_xml) |
1486 | - qtmir_consume_xml.generate_histogram("qtmir_consume") |
1487 | - |
1488 | - else: |
1489 | - results.add_child(report_types.Error("Cannot calculate QtMir loop data - Dispatch event count did not match surface consume event count")) |
1490 | - |
1491 | - results.add_child(events) |
1492 | - return results |
1493 | - |
1494 | -if __name__ == "__main__": |
1495 | - results = perform_test(); |
1496 | - f = open("touch_event_latency.xml", "w") |
1497 | - f.write(results.to_string()) |
1498 | |
1499 | === removed directory 'miral-qt/cmake' |
1500 | === removed directory 'miral-qt/cmake/modules' |
1501 | === removed file 'miral-qt/cmake/modules/FindGLESv2.cmake' |
1502 | --- miral-qt/cmake/modules/FindGLESv2.cmake 2016-06-01 22:06:51 +0000 |
1503 | +++ miral-qt/cmake/modules/FindGLESv2.cmake 1970-01-01 00:00:00 +0000 |
1504 | @@ -1,25 +0,0 @@ |
1505 | -# - Try to find GLESv2 |
1506 | -# Once done this will define |
1507 | -# GLESv2_FOUND - System has GLESv2 |
1508 | -# GLESv2_INCLUDE_DIRS - The GLESv2 include directories |
1509 | -# GLESv2_LIBRARIES - The libraries needed to use GLESv2 |
1510 | - |
1511 | -find_package(PkgConfig) |
1512 | -pkg_check_modules(PC_GLESv2 QUIET glesv2) |
1513 | - |
1514 | -find_path(GLESv2_INCLUDE_DIR GLES2/gl2.h |
1515 | - HINTS ${PC_GLESv2_INCLUDEDIR} ${PC_GLESv2_INCLUDE_DIRS}) |
1516 | - |
1517 | -find_library(GLESv2_LIBRARY GLESv2 |
1518 | - HINTS ${PC_GLESv2_LIBDIR} ${PC_GLESv2_LIBRARY_DIRS}) |
1519 | - |
1520 | -set(GLESv2_LIBRARIES ${GLESv2_LIBRARY}) |
1521 | -set(GLESv2_INCLUDE_DIRS ${GLESv2_INCLUDE_DIR}) |
1522 | - |
1523 | -include(FindPackageHandleStandardArgs) |
1524 | -# handle the QUIETLY and REQUIRED arguments and set GLESv2_FOUND to TRUE |
1525 | -# if all listed variables are TRUE |
1526 | -find_package_handle_standard_args(GLESv2 DEFAULT_MSG |
1527 | - GLESv2_LIBRARY GLESv2_INCLUDE_DIR) |
1528 | - |
1529 | -mark_as_advanced(GLESv2_INCLUDE_DIR GLESv2_LIBRARY) |
1530 | |
1531 | === removed file 'miral-qt/cmake/modules/FindQt5PlatformSupport.cmake' |
1532 | --- miral-qt/cmake/modules/FindQt5PlatformSupport.cmake 2016-06-01 22:06:51 +0000 |
1533 | +++ miral-qt/cmake/modules/FindQt5PlatformSupport.cmake 1970-01-01 00:00:00 +0000 |
1534 | @@ -1,121 +0,0 @@ |
1535 | -#.rst: |
1536 | -# FindQt5PlatformSupport |
1537 | -# ------- |
1538 | -# |
1539 | -# Try to find Qt5PlatformSupport on a Unix system. |
1540 | -# |
1541 | -# This will define the following variables: |
1542 | -# |
1543 | -# ``Qt5PlatformSupport_FOUND`` |
1544 | -# True if (the requested version of) Qt5PlatformSupport is available |
1545 | -# ``Qt5PlatformSupport_VERSION`` |
1546 | -# The version of Qt5PlatformSupport |
1547 | -# ``Qt5PlatformSupport_LIBRARIES`` |
1548 | -# This can be passed to target_link_libraries() instead of the ``Qt5PlatformSupport::Qt5PlatformSupport`` |
1549 | -# target |
1550 | -# ``Qt5PlatformSupport_INCLUDE_DIRS`` |
1551 | -# This should be passed to target_include_directories() if the target is not |
1552 | -# used for linking |
1553 | -# ``Qt5PlatformSupport_DEFINITIONS`` |
1554 | -# This should be passed to target_compile_options() if the target is not |
1555 | -# used for linking |
1556 | -# |
1557 | -# If ``Qt5PlatformSupport_FOUND`` is TRUE, it will also define the following imported target: |
1558 | -# |
1559 | -# ``Qt5PlatformSupport::Qt5PlatformSupport`` |
1560 | -# The Qt5PlatformSupport library |
1561 | -# |
1562 | -# In general we recommend using the imported target, as it is easier to use. |
1563 | -# Bear in mind, however, that if the target is in the link interface of an |
1564 | -# exported library, it must be made available by the package config file. |
1565 | - |
1566 | -#============================================================================= |
1567 | -# Copyright 2014 Alex Merry <alex.merry@kde.org> |
1568 | -# Copyright 2014 Martin Gräßlin <mgraesslin@kde.org> |
1569 | -# |
1570 | -# Redistribution and use in source and binary forms, with or without |
1571 | -# modification, are permitted provided that the following conditions |
1572 | -# are met: |
1573 | -# |
1574 | -# 1. Redistributions of source code must retain the copyright |
1575 | -# notice, this list of conditions and the following disclaimer. |
1576 | -# 2. Redistributions in binary form must reproduce the copyright |
1577 | -# notice, this list of conditions and the following disclaimer in the |
1578 | -# documentation and/or other materials provided with the distribution. |
1579 | -# 3. The name of the author may not be used to endorse or promote products |
1580 | -# derived from this software without specific prior written permission. |
1581 | -# |
1582 | -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR |
1583 | -# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
1584 | -# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
1585 | -# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, |
1586 | -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT |
1587 | -# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
1588 | -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
1589 | -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
1590 | -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
1591 | -# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
1592 | -#============================================================================= |
1593 | - |
1594 | -if(CMAKE_VERSION VERSION_LESS 2.8.12) |
1595 | - message(FATAL_ERROR "CMake 2.8.12 is required by FindQt5PlatformSupport.cmake") |
1596 | -endif() |
1597 | -if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 2.8.12) |
1598 | - message(AUTHOR_WARNING "Your project should require at least CMake 2.8.12 to use FindQt5PlatformSupport.cmake") |
1599 | -endif() |
1600 | - |
1601 | -# Use pkg-config to get the directories and then use these values |
1602 | -# in the FIND_PATH() and FIND_LIBRARY() calls |
1603 | -find_package(PkgConfig) |
1604 | -pkg_check_modules(PKG_Qt5PlatformSupport QUIET Qt5Gui) |
1605 | - |
1606 | -set(Qt5PlatformSupport_DEFINITIONS ${PKG_Qt5PlatformSupport_CFLAGS_OTHER}) |
1607 | -set(Qt5PlatformSupport_VERSION ${PKG_Qt5PlatformSupport_VERSION}) |
1608 | - |
1609 | -find_path(Qt5PlatformSupport_INCLUDE_DIR |
1610 | - NAMES |
1611 | - QtPlatformSupport/private/qfontconfigdatabase_p.h |
1612 | - HINTS |
1613 | - ${PKG_Qt5PlatformSupport_INCLUDEDIR}/QtPlatformSupport/${PKG_Qt5PlatformSupport_VERSION}/ |
1614 | -) |
1615 | -find_library(Qt5PlatformSupport_LIBRARY |
1616 | - NAMES |
1617 | - Qt5PlatformSupport |
1618 | - HINTS |
1619 | - ${PKG_Qt5PlatformSupport_LIBRARY_DIRS} |
1620 | -) |
1621 | - |
1622 | -include(FindPackageHandleStandardArgs) |
1623 | -find_package_handle_standard_args(Qt5PlatformSupport |
1624 | - FOUND_VAR |
1625 | - Qt5PlatformSupport_FOUND |
1626 | - REQUIRED_VARS |
1627 | - Qt5PlatformSupport_LIBRARY |
1628 | - Qt5PlatformSupport_INCLUDE_DIR |
1629 | - VERSION_VAR |
1630 | - Qt5PlatformSupport_VERSION |
1631 | -) |
1632 | - |
1633 | -if(Qt5PlatformSupport_FOUND AND NOT TARGET Qt5PlatformSupport::Qt5PlatformSupport) |
1634 | - add_library(Qt5PlatformSupport::Qt5PlatformSupport UNKNOWN IMPORTED) |
1635 | - set_target_properties(Qt5PlatformSupport::Qt5PlatformSupport PROPERTIES |
1636 | - IMPORTED_LOCATION "${Qt5PlatformSupport_LIBRARY}" |
1637 | - INTERFACE_COMPILE_OPTIONS "${Qt5PlatformSupport_DEFINITIONS}" |
1638 | - INTERFACE_INCLUDE_DIRECTORIES "${Qt5PlatformSupport_INCLUDE_DIR}" |
1639 | - ) |
1640 | -endif() |
1641 | - |
1642 | -mark_as_advanced(Qt5PlatformSupport_LIBRARY Qt5PlatformSupport_INCLUDE_DIR) |
1643 | - |
1644 | -# compatibility variables |
1645 | -set(Qt5PlatformSupport_LIBRARIES ${Qt5PlatformSupport_LIBRARY}) |
1646 | -set(Qt5PlatformSupport_INCLUDE_DIRS ${Qt5PlatformSupport_INCLUDE_DIR}) |
1647 | -set(Qt5PlatformSupport_VERSION_STRING ${Qt5PlatformSupport_VERSION}) |
1648 | - |
1649 | - |
1650 | -include(FeatureSummary) |
1651 | -set_package_properties(Qt5PlatformSupport PROPERTIES |
1652 | - URL "http://www.qt.io" |
1653 | - DESCRIPTION "Qt PlatformSupport module." |
1654 | -) |
1655 | - |
1656 | |
1657 | === removed file 'miral-qt/cmake/modules/QmlPlugins.cmake' |
1658 | --- miral-qt/cmake/modules/QmlPlugins.cmake 2016-06-01 22:06:51 +0000 |
1659 | +++ miral-qt/cmake/modules/QmlPlugins.cmake 1970-01-01 00:00:00 +0000 |
1660 | @@ -1,150 +0,0 @@ |
1661 | -# If you need to override the qmlplugindump binary, create the qmlplugin executable |
1662 | -# target before loading this plugin. |
1663 | - |
1664 | -if(NOT TARGET qmlplugindump) |
1665 | - find_program(qmlplugindump_exe qmlplugindump) |
1666 | - |
1667 | - if(NOT qmlplugindump_exe) |
1668 | - msg(FATAL_ERROR "Could not locate qmlplugindump.") |
1669 | - endif() |
1670 | - |
1671 | - add_executable(qmlplugindump IMPORTED) |
1672 | - set_target_properties(qmlplugindump PROPERTIES IMPORTED_LOCATION ${qmlplugindump_exe}) |
1673 | -endif() |
1674 | - |
1675 | -# |
1676 | -# A custom target for building the qmltypes files manually. |
1677 | -# |
1678 | -if (NOT TARGET qmltypes) |
1679 | - add_custom_target(qmltypes) |
1680 | -endif() |
1681 | - |
1682 | -# Creates a target for copying resource files into build dir and optionally installing them. |
1683 | -# |
1684 | -# Files will be copied into ${BINARY_DIR}/${path} or ${CMAKE_CURRENT_BINARY_DIR} and installed |
1685 | -# into ${DESTINATION}/${path}. |
1686 | -# |
1687 | -# Resource file names are matched against {*.{qml,js,jpg,png,sci,svg},qmldir}. |
1688 | -# |
1689 | -# export_qmlfiles(plugin path |
1690 | -# [SEARCH_PATH path] # Path to search for resources in (defaults to ${CMAKE_CURRENT_SOURCE_DIR}) |
1691 | -# [BINARY_DIR path] |
1692 | -# [DESTINATION path] |
1693 | -# [TARGET_PREFIX string] # Will be prefixed to the target name |
1694 | -# ) |
1695 | -# |
1696 | -# Created target: |
1697 | -# - ${TARGET_PREFIX}${plugin}-qmlfiles - Copies resources into the binary dir. |
1698 | - |
1699 | -macro(export_qmlfiles PLUGIN PATH) |
1700 | - set(single SEARCH_PATH BINARY_DIR DESTINATION TARGET_PREFIX) |
1701 | - cmake_parse_arguments(QMLFILES "" "${single}" "" ${ARGN}) |
1702 | - |
1703 | - if(NOT QMLFILES_SEARCH_PATH) |
1704 | - set(QMLFILES_SEARCH_PATH ${CMAKE_CURRENT_SOURCE_DIR}) |
1705 | - endif() |
1706 | - |
1707 | - if(QMLFILES_BINARY_DIR) |
1708 | - set(qmlfiles_dir ${QMLFILES_BINARY_DIR}/${PATH}) |
1709 | - else() |
1710 | - set(qmlfiles_dir ${CMAKE_CURRENT_BINARY_DIR}) |
1711 | - endif() |
1712 | - |
1713 | - file(GLOB QMLFILES |
1714 | - ${QMLFILES_SEARCH_PATH}/*.qml |
1715 | - ${QMLFILES_SEARCH_PATH}/*.js |
1716 | - ${QMLFILES_SEARCH_PATH}/*.jpg |
1717 | - ${QMLFILES_SEARCH_PATH}/*.png |
1718 | - ${QMLFILES_SEARCH_PATH}/*.sci |
1719 | - ${QMLFILES_SEARCH_PATH}/*.svg |
1720 | - ${QMLFILES_SEARCH_PATH}/*.qmltypes |
1721 | - ${QMLFILES_SEARCH_PATH}/qmldir |
1722 | - ) |
1723 | - |
1724 | - execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${qmlfiles_dir}) |
1725 | - |
1726 | - # copy the files |
1727 | - add_custom_target(${QMLFILES_TARGET_PREFIX}${PLUGIN}-qmlfiles ALL |
1728 | - COMMAND cp ${QMLFILES} ${qmlfiles_dir} |
1729 | - DEPENDS ${QMLFILES} |
1730 | - SOURCES ${QMLFILES} |
1731 | - ) |
1732 | - |
1733 | - if(QMLFILES_DESTINATION) |
1734 | - # install the qmlfiles file. |
1735 | - install(FILES ${QMLFILES} |
1736 | - DESTINATION ${QMLFILES_DESTINATION}/${PATH} |
1737 | - ) |
1738 | - endif() |
1739 | -endmacro() |
1740 | - |
1741 | - |
1742 | -# Creates a target for generating the typeinfo file for a QML plugin and/or installs the plugin |
1743 | -# targets. |
1744 | -# |
1745 | -# Files will be copied into ${BINARY_DIR}/${path} or ${CMAKE_CURRENT_BINARY_DIR} and installed |
1746 | -# into ${DESTINATION}/${path}. If you don't pass BINARY_DIR, it's assumed that current source |
1747 | -# path ends with ${path}. |
1748 | -# |
1749 | -# The generated file will be named after the last segment of the plugin name, e.g. Foo.qmltypes. |
1750 | -# |
1751 | -# export_qmlplugin(plugin version path |
1752 | -# [BINARY_DIR path] |
1753 | -# [DESTINATION path] |
1754 | -# [TARGET_PREFIX string] # Will be prefixed to the target name |
1755 | -# [ENVIRONMENT string] # Will be added to qmlplugindump's env |
1756 | -# [TARGETS target1 [target2 ...]] # Targets to depend on and install (e.g. the plugin shared object) |
1757 | -# [NO_TYPES] # Do not create the qmltypes target |
1758 | -# ) |
1759 | -# |
1760 | -# Created target: |
1761 | -# - ${TARGET_PREFIX}${plugin}-qmltypes - Generates the qmltypes file in the source dir. |
1762 | -# It will be made a dependency of the "qmltypes" target. |
1763 | - |
1764 | -macro(export_qmlplugin PLUGIN VERSION PATH) |
1765 | - set(options NO_TYPES) |
1766 | - set(single BINARY_DIR DESTINATION TARGET_PREFIX ENVIRONMENT) |
1767 | - set(multi TARGETS) |
1768 | - cmake_parse_arguments(QMLPLUGIN "${options}" "${single}" "${multi}" ${ARGN}) |
1769 | - |
1770 | - get_target_property(qmlplugindump_executable qmlplugindump LOCATION) |
1771 | - |
1772 | - if(QMLPLUGIN_BINARY_DIR) |
1773 | - set(qmlplugin_dir ${QMLPLUGIN_BINARY_DIR}/${PATH}) |
1774 | - else() |
1775 | - # Find import path to point qmlplugindump at |
1776 | - string(REGEX REPLACE "/${PATH}$" "" QMLPLUGIN_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}") |
1777 | - set(qmlplugin_dir ${CMAKE_CURRENT_BINARY_DIR}) |
1778 | - endif() |
1779 | - |
1780 | - if(NOT QMLPLUGIN_NO_TYPES) |
1781 | - # Relative path for the module |
1782 | - string(REPLACE "${CMAKE_BINARY_DIR}/" "" QMLPLUGIN_MODULE_DIR "${QMLPLUGIN_BINARY_DIR}") |
1783 | - |
1784 | - # Find the last segment of the plugin name to use as qmltypes basename |
1785 | - string(REGEX MATCH "[^.]+$" plugin_suffix ${PLUGIN}) |
1786 | - set(target_prefix ${QMLPLUGIN_TARGET_PREFIX}${PLUGIN}) |
1787 | - set(qmltypes_path ${CMAKE_CURRENT_SOURCE_DIR}/${plugin_suffix}.qmltypes) |
1788 | - |
1789 | - add_custom_target(${target_prefix}-qmltypes |
1790 | - COMMAND env ${QMLPLUGIN_ENVIRONMENT} ${qmlplugindump_executable} -notrelocatable |
1791 | - ${PLUGIN} ${VERSION} ${QMLPLUGIN_MODULE_DIR} > ${qmltypes_path} |
1792 | - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} |
1793 | - ) |
1794 | - add_dependencies(${target_prefix}-qmltypes ${target_prefix}-qmlfiles ${QMLPLUGIN_TARGETS}) |
1795 | - add_dependencies(qmltypes ${target_prefix}-qmltypes) |
1796 | - endif() |
1797 | - |
1798 | - set_target_properties(${QMLPLUGIN_TARGETS} PROPERTIES |
1799 | - ARCHIVE_OUTPUT_DIRECTORY ${qmlplugin_dir} |
1800 | - LIBRARY_OUTPUT_DIRECTORY ${qmlplugin_dir} |
1801 | - RUNTIME_OUTPUT_DIRECTORY ${qmlplugin_dir} |
1802 | - ) |
1803 | - |
1804 | - if (QMLPLUGIN_DESTINATION) |
1805 | - # Install additional targets |
1806 | - install(TARGETS ${QMLPLUGIN_TARGETS} |
1807 | - DESTINATION ${QMLPLUGIN_DESTINATION}/${PATH} |
1808 | - ) |
1809 | - endif() |
1810 | -endmacro() |
1811 | |
1812 | === removed file 'miral-qt/cmake/modules/QmlTest.cmake' |
1813 | --- miral-qt/cmake/modules/QmlTest.cmake 2016-06-01 22:06:51 +0000 |
1814 | +++ miral-qt/cmake/modules/QmlTest.cmake 1970-01-01 00:00:00 +0000 |
1815 | @@ -1,192 +0,0 @@ |
1816 | -# add_qml_test(path component_name [NO_ADD_TEST] [NO_TARGETS] |
1817 | -# [TARGETS target1 [target2 [...]]] |
1818 | -# [IMPORT_PATHS import_path1 [import_path2 [...]] |
1819 | -# [PROPERTIES prop1 value1 [prop2 value2 [...]]]) |
1820 | -# |
1821 | -# NO_ADD_TEST will prevent adding the test to the "test" target |
1822 | -# NO_TARGETS will prevent adding the test to any targets |
1823 | -# TARGETS lists the targets the test should be added to |
1824 | -# IMPORT_PATHS will pass those paths to qmltestrunner as "-import" arguments |
1825 | -# PROPERTIES will be set on the target and test target. See CMake's set_target_properties() |
1826 | -# |
1827 | -# Two targets will be created: |
1828 | -# - testComponentName - Runs the test with qmltestrunner |
1829 | -# - tryComponentName - Runs the test with uqmlscene, for manual interaction |
1830 | -# |
1831 | -# To change/set a default value for the whole test suite, prior to calling add_qml_test, set: |
1832 | -# qmltest_DEFAULT_NO_ADD_TEST (default: FALSE) |
1833 | -# qmltest_DEFAULT_TARGETS |
1834 | -# qmltest_DEFAULT_IMPORT_PATHS |
1835 | -# qmltest_DEFAULT_PROPERTIES |
1836 | - |
1837 | -find_program(qmltestrunner_exe qmltestrunner) |
1838 | - |
1839 | -if(NOT qmltestrunner_exe) |
1840 | - msg(FATAL_ERROR "Could not locate qmltestrunner.") |
1841 | -endif() |
1842 | - |
1843 | -set(qmlscene_exe ${CMAKE_BINARY_DIR}/tests/uqmlscene/uqmlscene) |
1844 | - |
1845 | -macro(add_manual_qml_test SUBPATH COMPONENT_NAME) |
1846 | - set(options NO_ADD_TEST NO_TARGETS) |
1847 | - set(multi_value_keywords IMPORT_PATHS TARGETS PROPERTIES ENVIRONMENT) |
1848 | - |
1849 | - cmake_parse_arguments(qmltest "${options}" "" "${multi_value_keywords}" ${ARGN}) |
1850 | - |
1851 | - set(qmlscene_TARGET try${COMPONENT_NAME}) |
1852 | - set(qmltest_FILE ${SUBPATH}/tst_${COMPONENT_NAME}) |
1853 | - |
1854 | - set(qmlscene_imports "") |
1855 | - if(NOT "${qmltest_IMPORT_PATHS}" STREQUAL "") |
1856 | - foreach(IMPORT_PATH ${qmltest_IMPORT_PATHS}) |
1857 | - list(APPEND qmlscene_imports "-I") |
1858 | - list(APPEND qmlscene_imports ${IMPORT_PATH}) |
1859 | - endforeach(IMPORT_PATH) |
1860 | - elseif(NOT "${qmltest_DEFAULT_IMPORT_PATHS}" STREQUAL "") |
1861 | - foreach(IMPORT_PATH ${qmltest_DEFAULT_IMPORT_PATHS}) |
1862 | - list(APPEND qmlscene_imports "-I") |
1863 | - list(APPEND qmlscene_imports ${IMPORT_PATH}) |
1864 | - endforeach(IMPORT_PATH) |
1865 | - endif() |
1866 | - |
1867 | - set(qmlscene_command |
1868 | - env ${qmltest_ENVIRONMENT} |
1869 | - ${qmlscene_exe} ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml |
1870 | - ${qmlscene_imports} |
1871 | - ) |
1872 | - add_custom_target(${qmlscene_TARGET} ${qmlscene_command}) |
1873 | - |
1874 | -endmacro(add_manual_qml_test) |
1875 | - |
1876 | -macro(add_qml_benchmark SUBPATH COMPONENT_NAME ITERATIONS) |
1877 | - add_qml_test_internal(${SUBPATH} ${COMPONENT_NAME} ${ITERATIONS} ${ARGN}) |
1878 | -endmacro(add_qml_benchmark) |
1879 | - |
1880 | -macro(add_qml_test SUBPATH COMPONENT_NAME) |
1881 | - add_qml_test_internal(${SUBPATH} ${COMPONENT_NAME} 0 ${ARGN}) |
1882 | -endmacro(add_qml_test) |
1883 | - |
1884 | -macro(add_qml_test_internal SUBPATH COMPONENT_NAME ITERATIONS) |
1885 | - set(options NO_ADD_TEST NO_TARGETS) |
1886 | - set(multi_value_keywords IMPORT_PATHS TARGETS PROPERTIES ENVIRONMENT) |
1887 | - |
1888 | - cmake_parse_arguments(qmltest "${options}" "" "${multi_value_keywords}" ${ARGN}) |
1889 | - |
1890 | - set(qmltest_TARGET test${COMPONENT_NAME}) |
1891 | - set(qmltest_xvfb_TARGET xvfbtest${COMPONENT_NAME}) |
1892 | - set(qmltest_FILE ${SUBPATH}/tst_${COMPONENT_NAME}) |
1893 | - |
1894 | - set(qmltestrunner_imports "") |
1895 | - if(NOT "${qmltest_IMPORT_PATHS}" STREQUAL "") |
1896 | - foreach(IMPORT_PATH ${qmltest_IMPORT_PATHS}) |
1897 | - list(APPEND qmltestrunner_imports "-import") |
1898 | - list(APPEND qmltestrunner_imports ${IMPORT_PATH}) |
1899 | - endforeach(IMPORT_PATH) |
1900 | - elseif(NOT "${qmltest_DEFAULT_IMPORT_PATHS}" STREQUAL "") |
1901 | - foreach(IMPORT_PATH ${qmltest_DEFAULT_IMPORT_PATHS}) |
1902 | - list(APPEND qmltestrunner_imports "-import") |
1903 | - list(APPEND qmltestrunner_imports ${IMPORT_PATH}) |
1904 | - endforeach(IMPORT_PATH) |
1905 | - endif() |
1906 | - |
1907 | - string(TOLOWER "${CMAKE_GENERATOR}" cmake_generator_lower) |
1908 | - if(cmake_generator_lower STREQUAL "unix makefiles") |
1909 | - set(function_ARGS $(FUNCTION)) |
1910 | - else() |
1911 | - set(function_ARGS "") |
1912 | - endif() |
1913 | - |
1914 | - if (${ITERATIONS} GREATER 0) |
1915 | - set(ITERATIONS_STRING "-iterations" ${ITERATIONS}) |
1916 | - else() |
1917 | - set(ITERATIONS_STRING "") |
1918 | - endif() |
1919 | - |
1920 | - set(qmltest_command |
1921 | - env ${qmltest_ENVIRONMENT} |
1922 | - ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml |
1923 | - ${qmltestrunner_imports} |
1924 | - ${ITERATIONS_STRING} |
1925 | - -o ${CMAKE_BINARY_DIR}/${qmltest_TARGET}.xml,xunitxml |
1926 | - -o -,txt |
1927 | - ${function_ARGS} |
1928 | - ) |
1929 | - find_program( HAVE_GCC gcc ) |
1930 | - if (NOT ${HAVE_GCC} STREQUAL "") |
1931 | - exec_program( gcc ARGS "-dumpmachine" OUTPUT_VARIABLE ARCH_TRIPLET ) |
1932 | - set(LD_PRELOAD_PATH "LD_PRELOAD=/usr/lib/${ARCH_TRIPLET}/mesa/libGL.so.1") |
1933 | - endif() |
1934 | - set(qmltest_xvfb_command |
1935 | - env ${qmltest_ENVIRONMENT} ${LD_PRELOAD_PATH} |
1936 | - xvfb-run --server-args "-screen 0 1024x768x24" --auto-servernum |
1937 | - ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml |
1938 | - ${qmltestrunner_imports} |
1939 | - -o ${CMAKE_BINARY_DIR}/${qmltest_TARGET}.xml,xunitxml |
1940 | - -o -,txt |
1941 | - ${function_ARGS} |
1942 | - ) |
1943 | - |
1944 | - add_qmltest_target(${qmltest_TARGET} "${qmltest_command}" TRUE ${qmltest_NO_ADD_TEST}) |
1945 | - add_qmltest_target(${qmltest_xvfb_TARGET} "${qmltest_xvfb_command}" ${qmltest_NO_TARGETS} TRUE) |
1946 | - add_manual_qml_test(${SUBPATH} ${COMPONENT_NAME} ${ARGN}) |
1947 | -endmacro(add_qml_test_internal) |
1948 | - |
1949 | -macro(add_binary_qml_test CLASS_NAME LD_PATH DEPS) |
1950 | - set(testCommand |
1951 | - LD_LIBRARY_PATH=${LD_PATH} |
1952 | - ${CMAKE_CURRENT_BINARY_DIR}/${CLASS_NAME}TestExec |
1953 | - -o ${CMAKE_BINARY_DIR}/${CLASSNAME}Test.xml,xunitxml |
1954 | - -o -,txt) |
1955 | - |
1956 | - add_qmltest_target(test${CLASS_NAME} "${testCommand}" FALSE TRUE) |
1957 | - add_dependencies(test${CLASS_NAME} ${CLASS_NAME}TestExec ${DEPS}) |
1958 | - |
1959 | - find_program( HAVE_GCC gcc ) |
1960 | - if (NOT ${HAVE_GCC} STREQUAL "") |
1961 | - exec_program( gcc ARGS "-dumpmachine" OUTPUT_VARIABLE ARCH_TRIPLET ) |
1962 | - set(LD_PRELOAD_PATH "LD_PRELOAD=/usr/lib/${ARCH_TRIPLET}/mesa/libGL.so.1") |
1963 | - endif() |
1964 | - set(xvfbtestCommand |
1965 | - ${LD_PRELOAD_PATH} |
1966 | - LD_LIBRARY_PATH=${LD_PATH} |
1967 | - xvfb-run --server-args "-screen 0 1024x768x24" --auto-servernum |
1968 | - ${CMAKE_CURRENT_BINARY_DIR}/${CLASS_NAME}TestExec |
1969 | - -o ${CMAKE_BINARY_DIR}/${CLASS_NAME}Test.xml,xunitxml |
1970 | - -o -,txt) |
1971 | - |
1972 | - add_qmltest_target(xvfbtest${CLASS_NAME} "${xvfbtestCommand}" FALSE TRUE) |
1973 | - add_dependencies(qmluitests xvfbtest${CLASS_NAME}) |
1974 | -endmacro(add_binary_qml_test) |
1975 | - |
1976 | -macro(add_qmltest_target qmltest_TARGET qmltest_command qmltest_NO_TARGETS qmltest_NO_ADD_TEST) |
1977 | - add_custom_target(${qmltest_TARGET} ${qmltest_command}) |
1978 | - |
1979 | - if(NOT "${qmltest_PROPERTIES}" STREQUAL "") |
1980 | - set_target_properties(${qmltest_TARGET} PROPERTIES ${qmltest_PROPERTIES}) |
1981 | - elseif(NOT "${qmltest_DEFAULT_PROPERTIES}" STREQUAL "") |
1982 | - set_target_properties(${qmltest_TARGET} PROPERTIES ${qmltest_DEFAULT_PROPERTIES}) |
1983 | - endif() |
1984 | - |
1985 | - if("${qmltest_NO_ADD_TEST}" STREQUAL FALSE AND NOT "${qmltest_DEFAULT_NO_ADD_TEST}" STREQUAL "TRUE") |
1986 | - add_test(${qmltest_TARGET} ${qmltest_command}) |
1987 | - |
1988 | - if(NOT "${qmltest_UNPARSED_ARGUMENTS}" STREQUAL "") |
1989 | - set_tests_properties(${qmltest_TARGET} PROPERTIES ${qmltest_PROPERTIES}) |
1990 | - elseif(NOT "${qmltest_DEFAULT_PROPERTIES}" STREQUAL "") |
1991 | - set_tests_properties(${qmltest_TARGET} PROPERTIES ${qmltest_DEFAULT_PROPERTIES}) |
1992 | - endif() |
1993 | - endif("${qmltest_NO_ADD_TEST}" STREQUAL FALSE AND NOT "${qmltest_DEFAULT_NO_ADD_TEST}" STREQUAL "TRUE") |
1994 | - |
1995 | - if("${qmltest_NO_TARGETS}" STREQUAL "FALSE") |
1996 | - if(NOT "${qmltest_TARGETS}" STREQUAL "") |
1997 | - foreach(TARGET ${qmltest_TARGETS}) |
1998 | - add_dependencies(${TARGET} ${qmltest_TARGET}) |
1999 | - endforeach(TARGET) |
2000 | - elseif(NOT "${qmltest_DEFAULT_TARGETS}" STREQUAL "") |
2001 | - foreach(TARGET ${qmltest_DEFAULT_TARGETS}) |
2002 | - add_dependencies(${TARGET} ${qmltest_TARGET}) |
2003 | - endforeach(TARGET) |
2004 | - endif() |
2005 | - endif("${qmltest_NO_TARGETS}" STREQUAL "FALSE") |
2006 | - |
2007 | -endmacro(add_qmltest_target) |
2008 | |
2009 | === removed file 'miral-qt/cmake/modules/UseLttngGenTp.cmake' |
2010 | --- miral-qt/cmake/modules/UseLttngGenTp.cmake 2016-06-01 22:06:51 +0000 |
2011 | +++ miral-qt/cmake/modules/UseLttngGenTp.cmake 1970-01-01 00:00:00 +0000 |
2012 | @@ -1,24 +0,0 @@ |
2013 | -cmake_minimum_required(VERSION 2.6) |
2014 | -if(POLICY CMP0011) |
2015 | - cmake_policy(SET CMP0011 NEW) |
2016 | -endif(POLICY CMP0011) |
2017 | - |
2018 | -find_program(LTTNG_GEN_TP NAMES lttng-gen-tp DOC "lttng-gen-tp executable") |
2019 | -if(NOT LTTNG_GEN_TP) |
2020 | - message(FATAL_ERROR "Excutable lttng-gen-top not found") |
2021 | -endif() |
2022 | - |
2023 | -function(add_lttng_gen_tp) |
2024 | - set(_one_value NAME) |
2025 | - cmake_parse_arguments (arg "" "${_one_value}" "" ${ARGN}) |
2026 | - |
2027 | - add_custom_command( |
2028 | - OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${arg_NAME}.h" "${CMAKE_CURRENT_BINARY_DIR}/${arg_NAME}.c" |
2029 | - COMMAND "${LTTNG_GEN_TP}" |
2030 | - -o "${arg_NAME}.h" |
2031 | - -o "${arg_NAME}.c" |
2032 | - "${CMAKE_CURRENT_SOURCE_DIR}/${arg_NAME}.tp" |
2033 | - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} |
2034 | - DEPENDS "${arg_NAME}.tp" |
2035 | - ) |
2036 | -endfunction(add_lttng_gen_tp) |
2037 | \ No newline at end of file |
2038 | |
2039 | === removed file 'miral-qt/cmake/modules/autopilot.cmake' |
2040 | --- miral-qt/cmake/modules/autopilot.cmake 2016-06-01 22:06:51 +0000 |
2041 | +++ miral-qt/cmake/modules/autopilot.cmake 1970-01-01 00:00:00 +0000 |
2042 | @@ -1,24 +0,0 @@ |
2043 | -add_custom_target(autopilot) |
2044 | - |
2045 | -function(declare_autopilot_test TEST_NAME TEST_SUITE WORKING_DIR) |
2046 | - add_custom_target(autopilot-${TEST_NAME} |
2047 | - COMMAND LANG=C UBUNTU_ICON_THEME=ubuntu-mobile QML2_IMPORT_PATH=${QTMIR_INSTALL_QML}/mocks python3 -m autopilot.run run ${TEST_SUITE} |
2048 | - WORKING_DIRECTORY ${WORKING_DIR} |
2049 | - DEPENDS fake_install |
2050 | - ) |
2051 | - |
2052 | - add_custom_target(fake_install |
2053 | - COMMAND cmake --build ${CMAKE_BINARY_DIR} --target install |
2054 | - ) |
2055 | - |
2056 | - add_dependencies(autopilot autopilot-${TEST_NAME}) |
2057 | - |
2058 | - add_custom_target(autopilot2-${TEST_NAME} |
2059 | - COMMAND LANG=C UBUNTU_ICON_THEME=ubuntu-mobile QML2_IMPORT_PATH=${QTMIR_INSTALL_QML}/mocks python2 -m autopilot.run run ${TEST_SUITE} |
2060 | - WORKING_DIRECTORY ${WORKING_DIR} |
2061 | - DEPENDS fake_install |
2062 | - ) |
2063 | - |
2064 | - add_dependencies(autopilot autopilot2-${TEST_NAME}) |
2065 | - |
2066 | -endfunction() |
2067 | |
2068 | === removed directory 'miral-qt/debian' |
2069 | === removed file 'miral-qt/debian/bileto_convert_to_gles' |
2070 | --- miral-qt/debian/bileto_convert_to_gles 2016-06-01 22:06:51 +0000 |
2071 | +++ miral-qt/debian/bileto_convert_to_gles 1970-01-01 00:00:00 +0000 |
2072 | @@ -1,28 +0,0 @@ |
2073 | -#!/bin/sh |
2074 | - |
2075 | -# This script converts the debian/ packaging into an alternate source package |
2076 | -# which builds with GLES. You should copy the source tree into a new directory |
2077 | -# before running this script (so you have one copy for GLES and one copy for |
2078 | -# regular GL). |
2079 | - |
2080 | -set -eu |
2081 | - |
2082 | -# Steps to start a new quilt patch: |
2083 | -# quilt new convert-to-gles.patch |
2084 | -# quilt add debian/* |
2085 | -# # apply changes |
2086 | - |
2087 | -# Steps to refresh this quilt patch when nongles changes: |
2088 | -# quilt push -af |
2089 | -# # fix up |
2090 | - |
2091 | -# When finished, save quilt patch with: |
2092 | -# quilt refresh |
2093 | -# quilt pop -a |
2094 | - |
2095 | -export QUILT_PATCHES=debian/gles-patches |
2096 | -quilt push -a |
2097 | - |
2098 | -sed --in-place 's/^qtmir /qtmir-gles /g' debian/changelog |
2099 | - |
2100 | -rm --recursive --force ./.pc/ |
2101 | |
2102 | === removed file 'miral-qt/debian/changelog' |
2103 | --- miral-qt/debian/changelog 2016-06-01 22:06:51 +0000 |
2104 | +++ miral-qt/debian/changelog 1970-01-01 00:00:00 +0000 |
2105 | @@ -1,1275 +0,0 @@ |
2106 | -qtmir (0.4.8+16.10.20160520.1-0ubuntu1) yakkety; urgency=medium |
2107 | - |
2108 | - [ Alan Griffiths ] |
2109 | - * Reduce coupling to MirServer - it has been misused as a context |
2110 | - object. |
2111 | - |
2112 | - [ Daniel d'Andrada ] |
2113 | - * Also interpret the cursor names used by Mir client API (LP: |
2114 | - #1447839) |
2115 | - * Application: Don't respawn if closed while still starting up (LP: |
2116 | - #1575577) |
2117 | - |
2118 | - [ Daniel d'Andrada, Michał Sawicz ] |
2119 | - * Centralize logging categories |
2120 | - |
2121 | - [ Gerry Boland ] |
2122 | - * UAL can throw on creating Application if invalid appId, catch |
2123 | - instead of aborting (LP: #1578258) |
2124 | - |
2125 | - [ Timo Jyrinki ] |
2126 | - * Use FindQt5PlatformSupport to find platform support, other methods |
2127 | - not available on Qt 5.6 anymore. (LP: #1554404) |
2128 | - |
2129 | - -- Michał Sawicz <michal.sawicz@canonical.com> Fri, 20 May 2016 08:41:51 +0000 |
2130 | - |
2131 | -qtmir (0.4.8+16.04.20160518.1-0ubuntu1) xenial; urgency=medium |
2132 | - |
2133 | - [ Daniel d'Andrada ] |
2134 | - * Fix ProxySurfaceListModel::countChanged signal |
2135 | - |
2136 | - [ Daniel d'Andrada, Michał Sawicz ] |
2137 | - * Move prompt surfaces from MirSurface to Application and emit |
2138 | - firstChanged signal |
2139 | - |
2140 | - -- Nick Dedekind <ci-train-bot@canonical.com> Wed, 18 May 2016 11:18:33 +0000 |
2141 | - |
2142 | -qtmir (0.4.8+16.04.20160511-0ubuntu1) xenial; urgency=medium |
2143 | - |
2144 | - [ Daniel d'Andrada ] |
2145 | - * Session: Add a blank surface to the public list if it already has |
2146 | - child prompt surfaces (LP: #1578665) |
2147 | - |
2148 | - -- Michał Sawicz <michal.sawicz@canonical.com> Wed, 11 May 2016 09:08:29 +0000 |
2149 | - |
2150 | -qtmir (0.4.8+16.04.20160429.1-0ubuntu1) xenial; urgency=medium |
2151 | - |
2152 | - [ Gerry Boland, Michał Sawicz, Nick Dedekind ] |
2153 | - * Enhance ScreenController & the DisplayConfigurationPolicy to |
2154 | - implement dynamic grid units. (LP: #1573532) |
2155 | - |
2156 | - -- Michał Sawicz <michal.sawicz@canonical.com> Fri, 29 Apr 2016 20:04:55 +0000 |
2157 | - |
2158 | -qtmir (0.4.8+16.04.20160428-0ubuntu1) xenial; urgency=medium |
2159 | - |
2160 | - [ Lukáš Tinkl ] |
2161 | - * Regression fix: restore window title handling (LP: #1563522) |
2162 | - |
2163 | - [ Michael Terry ] |
2164 | - * Use latest UbuntuAppLaunch API which supports libertine apps. |
2165 | - |
2166 | - -- Michael Terry <michael.terry@canonical.com> Thu, 28 Apr 2016 12:48:51 +0000 |
2167 | - |
2168 | -qtmir (0.4.8+16.04.20160426-0ubuntu1) xenial; urgency=medium |
2169 | - |
2170 | - * Mir 0.22 compatibility |
2171 | - |
2172 | - -- Alberto Aguirre <alberto.aguirre@canonical.com> Tue, 26 Apr 2016 07:20:39 +0000 |
2173 | - |
2174 | -qtmir (0.4.8+16.04.20160413-0ubuntu1) xenial; urgency=medium |
2175 | - |
2176 | - [ Daniel d'Andrada ] |
2177 | - * Application: improve debug logging |
2178 | - * Logging of Qt's OpenGL debug messages now must be enabled via CMake |
2179 | - option |
2180 | - * MirSurface: replace keymapLayout and keymapVariant with keymap |
2181 | - * Remove application screenshot provider |
2182 | - * Surface-based window management |
2183 | - |
2184 | - [ Michał Sawicz, Robert Bruce Park ] |
2185 | - * Inline -gles packaging. |
2186 | - |
2187 | - -- Gerry Boland <ci-train-bot@canonical.com> Wed, 13 Apr 2016 18:38:59 +0000 |
2188 | - |
2189 | -qtmir (0.4.8+16.04.20160330-0ubuntu1) xenial; urgency=medium |
2190 | - |
2191 | - * Drop leftover Xs-Testsuite header |
2192 | - |
2193 | - -- Michał Sawicz <michal.sawicz@canonical.com> Wed, 30 Mar 2016 22:53:20 +0000 |
2194 | - |
2195 | -qtmir (0.4.8+16.04.20160329.1-0ubuntu1) xenial; urgency=medium |
2196 | - |
2197 | - [ Daniel van Vugt ] |
2198 | - * Don't use preferred_mode_index. Some devices like TVs don't provide |
2199 | - a preferred mode, so preferred_mode_index may be out of range (a |
2200 | - clumsy way to represent 'none'). Instead use the resolution of the |
2201 | - current display mode, which should always be in range. (LP: |
2202 | - #1560497) |
2203 | - |
2204 | - -- Michał Sawicz <michal.sawicz@canonical.com> Tue, 29 Mar 2016 19:24:13 +0000 |
2205 | - |
2206 | -qtmir (0.4.8+16.04.20160322.1-0ubuntu1) xenial; urgency=medium |
2207 | - |
2208 | - [ Nick Dedekind ] |
2209 | - * Added Application::setStage |
2210 | - |
2211 | - [ Lukáš Tinkl, Michał Sawicz ] |
2212 | - * Support for switching keyboard layouts (LP: #1524400, #1491340) |
2213 | - |
2214 | - [ Lukáš Tinkl, Michał Sawicz, Nick Dedekind ] |
2215 | - * Add support for low shell chrome. (LP: #1535397) |
2216 | - |
2217 | - -- Michael Zanetti <michael.zanetti@canonical.com> Tue, 22 Mar 2016 16:18:06 +0000 |
2218 | - |
2219 | -qtmir (0.4.7+16.04.20160310.1-0ubuntu1) xenial; urgency=medium |
2220 | - |
2221 | - [ Alan Griffiths ] |
2222 | - * Copy the Window Management work-in-progress from Mir examples. |
2223 | - |
2224 | - [ Alberto Aguirre ] |
2225 | - * Hook MirOpenGLContext::doneCurrent to Screen::doneCurrent |
2226 | - |
2227 | - [ Daniel d'Andrada ] |
2228 | - * Ensure QmlEngine doesn't delete our MirSurfaces |
2229 | - |
2230 | - [ Gerry Boland ] |
2231 | - * Allow Mir remove command line arguments it understands, before |
2232 | - letting Qt process them. |
2233 | - * Ensure ScreenWindow geometry correctly set and used after moving |
2234 | - Screen (LP: #1545286) |
2235 | - * Screen: only enable orientation sensor for internal display. (LP: |
2236 | - #1545286) |
2237 | - |
2238 | - [ Michael Terry ] |
2239 | - * Fix some mocks to use more realistic code paths. |
2240 | - |
2241 | - [ Michael Zanetti ] |
2242 | - * Add a dedicated property for the inputMethodSurface (LP: #1545286) |
2243 | - |
2244 | - [ Michał Sawicz ] |
2245 | - * Drop dummy autopkgtest |
2246 | - |
2247 | - -- Michał Sawicz <michal.sawicz@canonical.com> Thu, 10 Mar 2016 09:29:49 +0000 |
2248 | - |
2249 | -qtmir (0.4.7+16.04.20160219-0ubuntu1) xenial; urgency=medium |
2250 | - |
2251 | - * Mir 0.20 Release |
2252 | - |
2253 | - -- Alan Griffiths <ci-train-bot@canonical.com> Fri, 19 Feb 2016 10:41:19 +0000 |
2254 | - |
2255 | -qtmir (0.4.7+16.04.20160212-0ubuntu1) xenial; urgency=medium |
2256 | - |
2257 | - [ Albert Astals Cid ] |
2258 | - * Provide branch prediction information to the if in compressTimestamp |
2259 | - * Reset start time if the timestamp travels to the past (LP: #1524488) |
2260 | - |
2261 | - [ Daniel d'Andrada ] |
2262 | - * Let shell decide the initial surface size (LP: #1532974) |
2263 | - * Remove the useless TaskController |
2264 | - * Surface Size Hints |
2265 | - * Update mir version requirement |
2266 | - |
2267 | - [ Michał Sawicz ] |
2268 | - * Bump unity-api dependencies |
2269 | - * Use QStandardPaths to determine QML cache location |
2270 | - |
2271 | - [ Nick Dedekind ] |
2272 | - * Moved test framework into a static library for quicker |
2273 | - recompilation. |
2274 | - |
2275 | - -- Michał Sawicz <michal.sawicz@canonical.com> Fri, 12 Feb 2016 00:07:26 +0000 |
2276 | - |
2277 | -qtmir (0.4.7+16.04.20160208-0ubuntu1) xenial; urgency=medium |
2278 | - |
2279 | - [ Nick Dedekind ] |
2280 | - * Added fix and test for closing app during the StoppedResumable |
2281 | - state. (LP: #1541388) |
2282 | - |
2283 | - -- Michał Sawicz <michal.sawicz@canonical.com> Mon, 08 Feb 2016 09:36:17 +0000 |
2284 | - |
2285 | -qtmir (0.4.7+16.04.20160127.1-0ubuntu1) xenial; urgency=medium |
2286 | - |
2287 | - * Changes for mir 0.19. |
2288 | - |
2289 | - -- Brandon Schaefer <ci-train-bot@canonical.com> Wed, 27 Jan 2016 21:42:31 +0000 |
2290 | - |
2291 | -qtmir (0.4.7+16.04.20160122-0ubuntu1) xenial; urgency=medium |
2292 | - |
2293 | - [ Nick Dedekind ] |
2294 | - * Fixed issue where stopping the session while suspending was causing |
2295 | - app close to stall. (LP: #1536133) |
2296 | - |
2297 | - -- Michał Sawicz <michal.sawicz@canonical.com> Fri, 22 Jan 2016 16:54:39 +0000 |
2298 | - |
2299 | -qtmir (0.4.7+16.04.20160104-0ubuntu1) xenial; urgency=medium |
2300 | - |
2301 | - [ Daniel d'Andrada ] |
2302 | - * Update Session.fullscreen properties at the right time (LP: |
2303 | - #1525893) |
2304 | - |
2305 | - -- Michał Sawicz <michal.sawicz@canonical.com> Mon, 04 Jan 2016 09:38:12 +0000 |
2306 | - |
2307 | -qtmir (0.4.7+16.04.20151222-0ubuntu1) xenial; urgency=medium |
2308 | - |
2309 | - * No-change rebuild to get -gles in sync |
2310 | - |
2311 | - -- Michał Sawicz <michal.sawicz@canonical.com> Tue, 22 Dec 2015 15:29:49 +0000 |
2312 | - |
2313 | -qtmir (0.4.7+16.04.20151217-0ubuntu1) xenial; urgency=medium |
2314 | - |
2315 | - [ Andreas Pokorny ] |
2316 | - * compatibility branch for Mir 0.18 |
2317 | - |
2318 | - [ Cemil Azizoglu ] |
2319 | - * compatibility branch for Mir 0.18 |
2320 | - |
2321 | - [ Kevin DuBois ] |
2322 | - * compatibility branch for Mir 0.18 |
2323 | - |
2324 | - -- Kevin DuBois <kevin.dubois@canonical.com> Thu, 17 Dec 2015 12:01:56 +0000 |
2325 | - |
2326 | -qtmir (0.4.7+16.04.20151210-0ubuntu1) xenial; urgency=medium |
2327 | - |
2328 | - [ Nick Dedekind ] |
2329 | - * [ Nick Dedekind ] |
2330 | - * Request app closing rather than killing. |
2331 | - |
2332 | - [ Daniel d'Andrada ] |
2333 | - * Add MirSurfaceItem.fillMode and ensure items and buffer are in sync |
2334 | - * Make Session hold multiple surfaces |
2335 | - |
2336 | - [ Michael Terry ] |
2337 | - * Don't hold a wakelock on apps that are exempt from lifecycle |
2338 | - management. (LP: #1518764) |
2339 | - |
2340 | - [ Michał Sawicz ] |
2341 | - * Add MirSurfaceItem.fillMode and ensure items and buffer are in sync |
2342 | - * Don't hold a wakelock on apps that are exempt from lifecycle |
2343 | - management. (LP: #1518764) |
2344 | - |
2345 | - -- Gerry Boland <ci-train-bot@canonical.com> Thu, 10 Dec 2015 13:08:47 +0000 |
2346 | - |
2347 | -qtmir (0.4.6+16.04.20151125-0ubuntu2) xenial; urgency=medium |
2348 | - |
2349 | - * Rebuild against Qt 5.5.1. |
2350 | - |
2351 | - -- Timo Jyrinki <timo-jyrinki@ubuntu.com> Mon, 30 Nov 2015 16:16:06 +0200 |
2352 | - |
2353 | -qtmir (0.4.6+16.04.20151125-0ubuntu1) xenial; urgency=medium |
2354 | - |
2355 | - [ Daniel d'Andrada ] |
2356 | - * Forward Mir mouse wheel events to the shell cursor (LP: #1497091) |
2357 | - * Implemented support for cursors set by client surfaces |
2358 | - * Revert revision 415 |
2359 | - |
2360 | - [ Gerry Boland ] |
2361 | - * Manage frameSwapped signal/slot connection with MirSurface more |
2362 | - strictly to avoid crash. (LP: #1517571) |
2363 | - |
2364 | - -- Michał Sawicz <michal.sawicz@canonical.com> Wed, 25 Nov 2015 15:38:57 +0000 |
2365 | - |
2366 | -qtmir (0.4.6+16.04.20151119-0ubuntu1) xenial; urgency=medium |
2367 | - |
2368 | - [ Albert Astals Cid ] |
2369 | - * Build with clang (tests/gmock fails and is unfixable on our side i'd |
2370 | - say) |
2371 | - * Enable Efficient String Construction by default |
2372 | - |
2373 | - [ Gerry Boland ] |
2374 | - * Fix use of uninitialized variable |
2375 | - * Use pid_t for PIDs. |
2376 | - |
2377 | - [ Loïc Molinari ] |
2378 | - * Ensured Mir surface items with size less than or equal to zero are |
2379 | - not rendered, as it's usually done for standard QtQuick items. |
2380 | - |
2381 | - [ Michał Sawicz ] |
2382 | - * Build with clang (tests/gmock fails and is unfixable on our side i'd |
2383 | - say) |
2384 | - |
2385 | - [ Nick Dedekind ] |
2386 | - * Fix a crash when dropping a surface frame before Qt draws a surface |
2387 | - item. (LP: #1517139) |
2388 | - |
2389 | - -- Gerry Boland <ci-train-bot@canonical.com> Thu, 19 Nov 2015 12:56:17 +0000 |
2390 | - |
2391 | -qtmir (0.4.6+16.04.20151113-0ubuntu1) xenial; urgency=medium |
2392 | - |
2393 | - [ Nick Dedekind ] |
2394 | - * Update surface textures when dropping frames. (LP: #1515356) |
2395 | - |
2396 | - -- Gerry Boland <ci-train-bot@canonical.com> Fri, 13 Nov 2015 16:42:38 +0000 |
2397 | - |
2398 | -qtmir (0.4.6+16.04.20151112-0ubuntu1) xenial; urgency=medium |
2399 | - |
2400 | - * Fix armhf builds on Xenial by using -std=gnu99 instead of c99 |
2401 | - |
2402 | - -- Gerry Boland <ci-train-bot@canonical.com> Thu, 12 Nov 2015 16:26:27 +0000 |
2403 | - |
2404 | -qtmir (0.4.6+16.04.20151110-0ubuntu1) xenial; urgency=medium |
2405 | - |
2406 | - [ Nick Dedekind ] |
2407 | - * Reverted occlusion detection (lp#1514556) (LP: #1514556) |
2408 | - |
2409 | - -- Gerry Boland <ci-train-bot@canonical.com> Tue, 10 Nov 2015 09:19:59 +0000 |
2410 | - |
2411 | -qtmir (0.4.6+16.04.20151102-0ubuntu1) xenial; urgency=medium |
2412 | - |
2413 | - [ Alan Griffiths ] |
2414 | - * Test harness for MirWindowManager (in preparation for more |
2415 | - intelligent window management) |
2416 | - |
2417 | - [ CI Train Bot ] |
2418 | - * New rebuild forced. |
2419 | - |
2420 | - [ Michael Terry ] |
2421 | - * Support new isTouchApp property to ApplicationInfoInterface and move |
2422 | - lifecycle policy logic out of qtmir. |
2423 | - |
2424 | - [ Michał Sawicz ] |
2425 | - * Clean up packaging and fix autopkgtest on armhf |
2426 | - |
2427 | - [ Nick Dedekind ] |
2428 | - * Hand Qt millisecond timestamps rather than nanosecond. (LP: |
2429 | - #1510571, #1511076, #1511711) |
2430 | - * Support server->client visibility change to stop rendering |
2431 | - (lp:#1475678) (LP: #1475678) |
2432 | - |
2433 | - -- Michał Sawicz <michal.sawicz@canonical.com> Mon, 02 Nov 2015 11:22:29 +0000 |
2434 | - |
2435 | -qtmir (0.4.6+15.10.20151021-0ubuntu1) wily; urgency=medium |
2436 | - |
2437 | - [ Alan Griffiths ] |
2438 | - * Opaquify MirWindowManager to control visibility of upcoming Window |
2439 | - Management work |
2440 | - |
2441 | - [ Albert Astals Cid ] |
2442 | - * Don't search for the element again |
2443 | - |
2444 | - [ CI Train Bot ] |
2445 | - * New rebuild forced. |
2446 | - |
2447 | - [ Daniel d'Andrada ] |
2448 | - * Improve multimonitor support |
2449 | - * MirSurfaceItem: Survive holding a surface with an empty texture |
2450 | - * Shell draws its own cursor using the new Cursor QML element |
2451 | - |
2452 | - [ Gerry Boland ] |
2453 | - * Initial multimonitor support - react correctly to Mir |
2454 | - DisplayConfiguration changes. (LP: #1488831, #1488863, #1436735) |
2455 | - * Workaround for AutoPilot input coordinate positioning being outside |
2456 | - screen geometry |
2457 | - |
2458 | - [ Lukáš Tinkl ] |
2459 | - * Implement support for mouse wheel events; correctly pass around |
2460 | - buttons (LP: #1497091) |
2461 | - * React to surface modifications (window caption) |
2462 | - |
2463 | - [ Michał Sawicz ] |
2464 | - * Improve multimonitor support |
2465 | - * MirSurfaceItem: Survive holding a surface with an empty texture |
2466 | - * React to surface modifications (window caption) |
2467 | - |
2468 | - [ Nick Dedekind ] |
2469 | - * Added touch performance tracing and test. |
2470 | - * Removed the manipulation of the CMAKE_INSTALL_PREFIX from |
2471 | - debian/rules |
2472 | - |
2473 | - -- Michał Sawicz <michal.sawicz@canonical.com> Wed, 21 Oct 2015 11:47:16 +0000 |
2474 | - |
2475 | -qtmir (0.4.6+15.10.20151008.2-0ubuntu1) wily; urgency=medium |
2476 | - |
2477 | - [ Alexandros Frantzis ] |
2478 | - * Update for Mir 0.17 changes |
2479 | - |
2480 | - [ CI Train Bot ] |
2481 | - * New rebuild forced. |
2482 | - |
2483 | - -- Alexandros Frantzis <alexandros.frantzis@canonical.com> Thu, 08 Oct 2015 17:56:00 +0000 |
2484 | - |
2485 | -qtmir (0.4.6+15.10.20150930.1-0ubuntu1) wily; urgency=medium |
2486 | - |
2487 | - [ CI Train Bot ] |
2488 | - * New rebuild forced. |
2489 | - |
2490 | - [ Daniel d'Andrada ] |
2491 | - * MirSurfaceItem: texture must be manipulated only from the scene |
2492 | - graph thread (LP: #1499388, #1495871) |
2493 | - |
2494 | - [ Gerry Boland ] |
2495 | - * Add "Closing" state to Application, use it to distinguish user- |
2496 | - induced close from app-induced close. Don't clear QML cache if user- |
2497 | - induced. (LP: #1500372) |
2498 | - |
2499 | - -- Michał Sawicz <michal.sawicz@canonical.com> Wed, 30 Sep 2015 10:08:37 +0000 |
2500 | - |
2501 | -qtmir (0.4.6+15.10.20150925-0ubuntu1) wily; urgency=medium |
2502 | - |
2503 | - * Bump application API version |
2504 | - |
2505 | - -- Michał Sawicz <michal.sawicz@canonical.com> Fri, 25 Sep 2015 12:11:11 +0000 |
2506 | - |
2507 | -qtmir (0.4.6+15.10.20150923-0ubuntu1) wily; urgency=medium |
2508 | - |
2509 | - [ CI Train Bot ] |
2510 | - * New rebuild forced. |
2511 | - |
2512 | - [ Cemil Azizoglu ] |
2513 | - * Port gl_bind_to_texture to the new TextureSource interface. Update |
2514 | - for Mir 0.16 release. |
2515 | - |
2516 | - -- Cemil Azizoglu <cemil.azizoglu@canonical.com> Wed, 23 Sep 2015 15:17:13 +0000 |
2517 | - |
2518 | -qtmir (0.4.6+15.10.20150918-0ubuntu1) wily; urgency=medium |
2519 | - |
2520 | - [ Daniel d'Andrada ] |
2521 | - * Update surface focus when a surface enters or leaves a |
2522 | - MirSurfaceItem (LP: #1491034, #1495437) |
2523 | - |
2524 | - -- Michał Sawicz <michal.sawicz@canonical.com> Fri, 18 Sep 2015 20:11:52 +0000 |
2525 | - |
2526 | -qtmir (0.4.6+15.10.20150914-0ubuntu1) wily; urgency=medium |
2527 | - |
2528 | - [ Daniel d'Andrada ] |
2529 | - * MirSurfaceItem gets dirty when it's set to draw a different (or no) |
2530 | - surface (LP: #1492185) |
2531 | - * QtEventFeeder: log the pointer events it gets from Mir |
2532 | - |
2533 | - [ Daniel van Vugt ] |
2534 | - * Stop waking up every 200ms if there's nothing to wake up for. It's |
2535 | - just wasting battery. (LP: #1479250) |
2536 | - |
2537 | - -- Gerry Boland <ci-train-bot@canonical.com> Mon, 14 Sep 2015 13:11:56 +0000 |
2538 | - |
2539 | -qtmir (0.4.6+15.10.20150904-0ubuntu1) wily; urgency=medium |
2540 | - |
2541 | - [ Michal Sawicz ] |
2542 | - * No change rebuild to resync vivid+overlay and wily |
2543 | - |
2544 | - [ CI Train Bot ] |
2545 | - * No-change rebuild. |
2546 | - |
2547 | - -- CI Train Bot <ci-train-bot@canonical.com> Fri, 04 Sep 2015 10:40:35 +0000 |
2548 | - |
2549 | -qtmir (0.4.6+15.04.20150827.1-0ubuntu1) vivid; urgency=medium |
2550 | - |
2551 | - [ Daniel d'Andrada ] |
2552 | - * Enable multiple MirSurfaceItems rendering the same MirSurface |
2553 | - * Allow resizing an app that is in the process of getting suspended. |
2554 | - (LP: #1466510) |
2555 | - |
2556 | - -- CI Train Bot <ci-train-bot@canonical.com> Thu, 27 Aug 2015 13:58:54 +0000 |
2557 | - |
2558 | -qtmir (0.4.5+15.10.20150817-0ubuntu1) wily; urgency=medium |
2559 | - |
2560 | - * |
2561 | - |
2562 | - -- CI Train Bot <ci-train-bot@canonical.com> Mon, 17 Aug 2015 19:28:26 +0000 |
2563 | - |
2564 | -qtmir (0.4.5+15.10.20150812.1-0ubuntu1) vivid; urgency=medium |
2565 | - |
2566 | - [ Daniel van Vugt ] |
2567 | - * MirSurfaceItem: Remove an unnecessary and potentially infinite loop |
2568 | - (LP: #1477430) (LP: #1477430) |
2569 | - |
2570 | - [ Gerry Boland ] |
2571 | - * Standardize licences to LGPLv3, update years, remove authors (LP: |
2572 | - #1483664) |
2573 | - * authorizeSession incorrectly edits desktopFilePath supplied by |
2574 | - desktop_file_hint (LP: #1483225) |
2575 | - |
2576 | - -- CI Train Bot <ci-train-bot@canonical.com> Wed, 12 Aug 2015 11:36:06 +0000 |
2577 | - |
2578 | -qtmir (0.4.5+15.10.20150804.1-0ubuntu1) vivid; urgency=medium |
2579 | - |
2580 | - * Dual release with wily |
2581 | - |
2582 | - -- Gerry Boland <gerry.boland@canonical.com> Tue, 04 Aug 2015 17:21:12 +0000 |
2583 | - |
2584 | -qtmir (0.4.5+15.04.20150821-0ubuntu1) vivid; urgency=medium |
2585 | - |
2586 | - [ Daniel d'Andrada ] |
2587 | - * Improve handling of applications that are stopping or getting killed |
2588 | - (LP: #1483840, #1485608) |
2589 | - |
2590 | - [ Gerry Boland ] |
2591 | - * AppMan: if app destroys surface while in Running state, it is |
2592 | - probably shutting down, so preempt it by removing it from the model |
2593 | - |
2594 | - -- CI Train Bot <ci-train-bot@canonical.com> Fri, 21 Aug 2015 11:40:14 +0000 |
2595 | - |
2596 | -qtmir (0.4.5+15.04.20150820-0ubuntu1) vivid; urgency=medium |
2597 | - |
2598 | - [ Gerry Boland ] |
2599 | - * Hotfix to work around bug 1483752 (LP: #1483752) |
2600 | - |
2601 | - [ Michael Zanetti ] |
2602 | - * Hotfix to work around bug 1483752 (LP: #1483752) |
2603 | - |
2604 | - -- CI Train Bot <ci-train-bot@canonical.com> Thu, 20 Aug 2015 12:59:54 +0000 |
2605 | - |
2606 | -qtmir (0.4.5+15.10.20150804.1-0ubuntu1) wily; urgency=medium |
2607 | - |
2608 | - [ Alan Griffiths ] |
2609 | - * Start restructuring code to use the Mir WindowManager interface for |
2610 | - window management. (Instead of completely replacing the Shell.) |
2611 | - |
2612 | - [ Andreas Pokorny ] |
2613 | - * ensure the argv passed to mir is a null terminated list (not a |
2614 | - nullptr) |
2615 | - |
2616 | - [ Daniel d'Andrada ] |
2617 | - * Remove focus-based app lifecycle. Let shell control it. |
2618 | - * Remove focus-based app lifecycle. Let shell control it. |
2619 | - |
2620 | - [ Daniel van Vugt ] |
2621 | - * ensure the argv passed to mir is a null terminated list (not a |
2622 | - nullptr) |
2623 | - |
2624 | - [ Gerry Boland ] |
2625 | - * CMake should require mir 0.14 |
2626 | - * Ubuntu Touch has no shared graphics cache implemented, QPA should |
2627 | - not say it does |
2628 | - * We depend on Qt 5.4, remove compatibility code for older versions |
2629 | - |
2630 | - [ Lukáš Tinkl ] |
2631 | - * Extend the key table to cover full xkb range of keycodes. |
2632 | - |
2633 | - -- CI Train Bot <ci-train-bot@canonical.com> Tue, 04 Aug 2015 17:21:12 +0000 |
2634 | - |
2635 | -qtmir (0.4.5+15.10.20150728-0ubuntu2~gcc5.1) wily; urgency=medium |
2636 | - |
2637 | - * No change rebuild using GCC 5. |
2638 | - |
2639 | - -- Matthias Klose <doko@ubuntu.com> Wed, 29 Jul 2015 15:04:01 +0200 |
2640 | - |
2641 | -qtmir (0.4.5+15.10.20150728-0ubuntu1) wily; urgency=medium |
2642 | - |
2643 | - [ Gerry Boland ] |
2644 | - * Remove explicit gcc4.9 dependency (LP: #1452338) |
2645 | - |
2646 | - -- CI Train Bot <ci-train-bot@canonical.com> Tue, 28 Jul 2015 09:57:00 +0000 |
2647 | - |
2648 | -qtmir (0.4.5+15.10.20150722-0ubuntu1) wily; urgency=medium |
2649 | - |
2650 | - [ Andreas Pokorny ] |
2651 | - * Release in step with Mir 0.14.0 |
2652 | - |
2653 | - [ CI Train Bot ] |
2654 | - * New rebuild forced. |
2655 | - |
2656 | - -- CI Train Bot <ci-train-bot@canonical.com> Wed, 22 Jul 2015 13:01:05 +0000 |
2657 | - |
2658 | -qtmir (0.4.5+15.10.20150617-0ubuntu1) wily; urgency=medium |
2659 | - |
2660 | - [ Gerry Boland ] |
2661 | - * [qpa] refactor QMirServer to clean up its API, and fix strange |
2662 | - thread design. |
2663 | - |
2664 | - [ Michał Sawicz ] |
2665 | - * Depend on same-version qtmir-{desktop,android} |
2666 | - |
2667 | - -- CI Train Bot <ci-train-bot@canonical.com> Wed, 17 Jun 2015 13:46:09 +0000 |
2668 | - |
2669 | -qtmir (0.4.5+15.10.20150611-0ubuntu2) wily; urgency=medium |
2670 | - |
2671 | - * No-change rebuild against Qt 5.4.2. |
2672 | - |
2673 | - -- Timo Jyrinki <timo-jyrinki@ubuntu.com> Mon, 15 Jun 2015 12:31:38 +0300 |
2674 | - |
2675 | -qtmir (0.4.5+15.10.20150611-0ubuntu1) wily; urgency=medium |
2676 | - |
2677 | - [ Daniel d'Andrada ] |
2678 | - * Add X-Ubuntu-Supported-Orientations desktop file entry |
2679 | - |
2680 | - -- CI Train Bot <ci-train-bot@canonical.com> Thu, 11 Jun 2015 09:10:38 +0000 |
2681 | - |
2682 | -qtmir (0.4.4+15.04.20150513-0ubuntu1) vivid; urgency=medium |
2683 | - |
2684 | - [ Alan Griffiths ] |
2685 | - * Release in step with Mir 0.13.0 |
2686 | - |
2687 | - [ Daniel van Vugt ] |
2688 | - * Release in step with Mir 0.13.0 |
2689 | - |
2690 | - [ Gerry Boland ] |
2691 | - * Release in step with Mir 0.13.0 |
2692 | - |
2693 | - -- CI Train Bot <ci-train-bot@canonical.com> Wed, 13 May 2015 09:44:12 +0000 |
2694 | - |
2695 | -qtmir (0.4.4+15.04.20150511.1-0ubuntu1) vivid; urgency=medium |
2696 | - |
2697 | - [ Albert Astals Cid ] |
2698 | - * Fix debug line |
2699 | - |
2700 | - [ Daniel d'Andrada ] |
2701 | - * When synthesizing touch releases for absent touches, send them in |
2702 | - separate events (LP: #1437357) |
2703 | - |
2704 | - [ Gerry Boland ] |
2705 | - * If Mir fails to start, exit the process immediately as nothing else |
2706 | - can be done |
2707 | - * Remove boost dependence, it supplies almost nothing of benefit to |
2708 | - offset its cost |
2709 | - * Remove legacy surface configuration change code, use newer |
2710 | - SurfaceObserver |
2711 | - * Remove useless profiling information, fixes build with Qt5.5 (LP: |
2712 | - #1437181) |
2713 | - |
2714 | - [ Michael Zanetti ] |
2715 | - * read exception list from gsettings instead of a hardcoded list |
2716 | - |
2717 | - [ Michał Sawicz ] |
2718 | - * Require an application API version, fix the provided version and use |
2719 | - include dir from the .pc file |
2720 | - |
2721 | - -- CI Train Bot <ci-train-bot@canonical.com> Mon, 11 May 2015 13:16:33 +0000 |
2722 | - |
2723 | -qtmir (0.4.4+15.04.20150318-0ubuntu1) vivid; urgency=medium |
2724 | - |
2725 | - [ Daniel d'Andrada ] |
2726 | - * Port to the new MirEvent API and add support for pointer events. |
2727 | - (LP: #1417650, #1392716) |
2728 | - |
2729 | - [ Gerry Boland ] |
2730 | - * Refactor wakelock handling. Lifecycle exempt apps now release |
2731 | - wakelock when shell tries to suspend them (LP: #1423787) |
2732 | - |
2733 | - [ Robert Carr ] |
2734 | - * Port to the new MirEvent API and add support for pointer events. |
2735 | - (LP: #1417650, #1392716) |
2736 | - |
2737 | - -- CI Train Bot <ci-train-bot@canonical.com> Wed, 18 Mar 2015 10:12:22 +0000 |
2738 | - |
2739 | -qtmir (0.4.4+15.04.20150317-0ubuntu1) vivid; urgency=medium |
2740 | - |
2741 | - [ Albert Astals Cid ] |
2742 | - * Make the test pass with Qt >= 5.4.1 (LP: #1427529) |
2743 | - |
2744 | - -- CI Train Bot <ci-train-bot@canonical.com> Tue, 17 Mar 2015 18:01:53 +0000 |
2745 | - |
2746 | -qtmir (0.4.4+15.04.20150227.1-0ubuntu1) vivid; urgency=medium |
2747 | - |
2748 | - [ CI Train Bot ] |
2749 | - * New rebuild forced. |
2750 | - |
2751 | - [ Kevin DuBois ] |
2752 | - * No change rebuild for mir 0.12 |
2753 | - |
2754 | - -- CI Train Bot <ci-train-bot@canonical.com> Fri, 27 Feb 2015 18:53:32 +0000 |
2755 | - |
2756 | -qtmir (0.4.4+15.04.20150220-0ubuntu1) vivid; urgency=medium |
2757 | - |
2758 | - [ Albert Astals Cid ] |
2759 | - * Don't start timer from the thread it doesn't belong to |
2760 | - |
2761 | - -- CI Train Bot <ci-train-bot@canonical.com> Fri, 20 Feb 2015 10:33:30 +0000 |
2762 | - |
2763 | -qtmir (0.4.4+15.04.20150209-0ubuntu2) vivid; urgency=medium |
2764 | - |
2765 | - * No-change rebuild against Qt 5.4.0. |
2766 | - |
2767 | - -- Timo Jyrinki <timo-jyrinki@ubuntu.com> Fri, 13 Feb 2015 13:05:26 +0200 |
2768 | - |
2769 | -qtmir (0.4.4+15.04.20150209-0ubuntu1) vivid; urgency=medium |
2770 | - |
2771 | - [ Daniel van Vugt ] |
2772 | - * QtMir changes required to support the Mir branch of the same name. |
2773 | - Landing soon. (LP: #1395581) |
2774 | - |
2775 | - [ Alan Griffiths ] |
2776 | - * Port to the msh::Shell API in Mir |
2777 | - |
2778 | - [ Robert Carr ] |
2779 | - * Bump build-dep to mir 0.11. |
2780 | - |
2781 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 09 Feb 2015 16:29:08 +0000 |
2782 | - |
2783 | -qtmir (0.4.4+15.04.20150206-0ubuntu1) vivid; urgency=medium |
2784 | - |
2785 | - [ Gerry Boland ] |
2786 | - * Explicitly setting GL-mode breaks GTK app rendering. Removing the |
2787 | - hack appears to just work (LP: #1401968) |
2788 | - |
2789 | - [ Michał Sawicz ] |
2790 | - * Add moot autopkgtest to run the standard unit tests |
2791 | - |
2792 | - [ Albert Astals Cid ] |
2793 | - * Fix demo shell import name |
2794 | - |
2795 | - [ Daniel d'Andrada ] |
2796 | - * Don't suspend&resume the main stage app when switching focus from |
2797 | - side to main stage |
2798 | - |
2799 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 06 Feb 2015 10:23:19 +0000 |
2800 | - |
2801 | -qtmir (0.4.4+15.04.20150115-0ubuntu1) vivid; urgency=low |
2802 | - |
2803 | - [ Gerry Boland ] |
2804 | - * Add Wakelock support - ensures device drops to deep-sleep mode only |
2805 | - when all AppMan suspend tasks have completed |
2806 | - |
2807 | - [ Ricardo Mendoza ] |
2808 | - * Reduce suspend timeout to half of the previous value because the |
2809 | - long value was too apparent on fast paced apps, like web games of |
2810 | - music players; it broke the user experience according to design. |
2811 | - (LP: #1402650) |
2812 | - |
2813 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 15 Jan 2015 15:19:46 +0000 |
2814 | - |
2815 | -qtmir (0.4.4+15.04.20150114-0ubuntu1) vivid; urgency=low |
2816 | - |
2817 | - [ Gerry Boland ] |
2818 | - * Depend on :native version of g++ to allow cross-compiling to work. |
2819 | - (LP: #1353855) |
2820 | - |
2821 | - [ Michał Sawicz ] |
2822 | - * Declare the QByteArray in callDispatcher so it doesn't get deleted |
2823 | - before it's copied. (LP: #1408819) |
2824 | - |
2825 | - [ Josh Arenson ] |
2826 | - * Assign touch events area to the correct values. |
2827 | - |
2828 | - [ Albert Astals ] |
2829 | - * Move the creation of the surface observer to |
2830 | - SessionListener::surface_created |
2831 | - |
2832 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Wed, 14 Jan 2015 09:07:53 +0000 |
2833 | - |
2834 | -qtmir (0.4.4+15.04.20150109-0ubuntu1) vivid; urgency=low |
2835 | - |
2836 | - [ Ubuntu daily release ] |
2837 | - * New rebuild forced |
2838 | - |
2839 | - [ Nick Dedekind ] |
2840 | - * Notify prompt sessions that sessions have been suspended/resumed. |
2841 | - (LP: #1355173, #1384950) |
2842 | - |
2843 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 09 Jan 2015 17:26:00 +0000 |
2844 | - |
2845 | -qtmir (0.4.4+15.04.20150108.1-0ubuntu1) vivid; urgency=low |
2846 | - |
2847 | - [ Ubuntu daily release ] |
2848 | - * New rebuild forced |
2849 | - |
2850 | - [ Cemil Azizoglu ] |
2851 | - * Rebuild for Mir 0.10. |
2852 | - |
2853 | - [ Nick Dedekind ] |
2854 | - * Compatibility for Mir 0.10.0 |
2855 | - |
2856 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 08 Jan 2015 14:18:06 +0000 |
2857 | - |
2858 | -qtmir (0.4.4+15.04.20141215-0ubuntu1) vivid; urgency=low |
2859 | - |
2860 | - [ Daniel d'Andrada ] |
2861 | - * Update README and readd option to disable building tests |
2862 | - |
2863 | - [ Gerry Boland ] |
2864 | - * Emit SIGSTOP when AppMan fully initialized, when Mir is ready is too |
2865 | - soon (LP: #1394208) |
2866 | - |
2867 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 15 Dec 2014 08:27:44 +0000 |
2868 | - |
2869 | -qtmir (0.4.4+15.04.20141211-0ubuntu1) vivid; urgency=low |
2870 | - |
2871 | - [ Ubuntu daily release ] |
2872 | - * New rebuild forced |
2873 | - |
2874 | - [ Alan Griffiths ] |
2875 | - * Migration of qtmir from the legacy Mir API |
2876 | - * Refactor to better reflect the code structure following new-migrate- |
2877 | - to-mir-Server-API |
2878 | - |
2879 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 11 Dec 2014 16:55:53 +0000 |
2880 | - |
2881 | -qtmir (0.4.4+15.04.20141205-0ubuntu1) vivid; urgency=low |
2882 | - |
2883 | - [ CI Train Bot ] |
2884 | - * Resync trunk |
2885 | - * Resync trunk |
2886 | - * Resync trunk |
2887 | - * Resync trunk |
2888 | - * Resync trunk |
2889 | - |
2890 | - [ Ricardo Salveti de Araujo ] |
2891 | - * qteventfeeder: adding bt and wired headset multimedia keys (LP: |
2892 | - #1398427) |
2893 | - |
2894 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 05 Dec 2014 11:04:29 +0000 |
2895 | - |
2896 | -qtmir (0.4.4+15.04.20141203-0ubuntu1) vivid; urgency=low |
2897 | - |
2898 | - [ Gerry Boland ] |
2899 | - * Port qmake->cmake to enable sbuild usage for crosscompiling. |
2900 | - * Fix build with Qt5.4 (LP: #1394884) |
2901 | - |
2902 | - [ Michał Sawicz ] |
2903 | - * Port qmake->cmake to enable sbuild usage for crosscompiling. |
2904 | - |
2905 | - [ Robert Carr ] |
2906 | - * Port qmake->cmake to enable sbuild usage for crosscompiling. |
2907 | - |
2908 | - [ Alberto Aguirre ] |
2909 | - * Select mirclient backend for platform-api instead of mirserver. |
2910 | - |
2911 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Wed, 03 Dec 2014 10:07:12 +0000 |
2912 | - |
2913 | -qtmir (0.4.4+15.04.20141124-0ubuntu1) vivid; urgency=low |
2914 | - |
2915 | - [ Alberto Aguirre ] |
2916 | - * No-change rebuild againts mir 0.9.0 |
2917 | - |
2918 | - [ Ubuntu daily release ] |
2919 | - * New rebuild forced |
2920 | - |
2921 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 24 Nov 2014 23:07:01 +0000 |
2922 | - |
2923 | -qtmir (0.4.4+15.04.20141110-0ubuntu2) vivid; urgency=medium |
2924 | - |
2925 | - * No-change rebuild against Qt 5.3.2. |
2926 | - |
2927 | - -- Timo Jyrinki <timo-jyrinki@ubuntu.com> Mon, 10 Nov 2014 16:50:43 +0200 |
2928 | - |
2929 | -qtmir (0.4.4+15.04.20141110-0ubuntu1) vivid; urgency=low |
2930 | - |
2931 | - [ Michael Zanetti ] |
2932 | - * Use QSGDefaultImageNode instead of QSGSimpleTexture to gain surface |
2933 | - manipulation features such as antialiasing (LP: #1351559) |
2934 | - |
2935 | - [ josharenson ] |
2936 | - * Add support for enabling/disabling orientation sensor based on |
2937 | - screen power state. (LP: #1375297) |
2938 | - |
2939 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 10 Nov 2014 09:41:58 +0000 |
2940 | - |
2941 | -qtmir (0.4.4+15.04.20141030.2-0ubuntu1) vivid; urgency=low |
2942 | - |
2943 | - [ Ted Gould ] |
2944 | - * Use UAL pause/resume functions for stopping/continuing all tasks in |
2945 | - the cgroup (LP: #1379786) |
2946 | - |
2947 | - [ Timo Jyrinki ] |
2948 | - * Add libmtdev-dev build dependency (LP: #1379152) (LP: #1379152) |
2949 | - |
2950 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 30 Oct 2014 21:48:30 +0000 |
2951 | - |
2952 | -qtmir (0.4.4+15.04.20141030.1-0ubuntu1) vivid; urgency=low |
2953 | - |
2954 | - [ Ricardo Mendoza ] |
2955 | - * Clean up QML Compilation cache if application fails to start |
2956 | - correctly. |
2957 | - |
2958 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 30 Oct 2014 11:55:27 +0000 |
2959 | - |
2960 | -qtmir (0.4.4+14.10.20141013-0ubuntu1) utopic; urgency=medium |
2961 | - |
2962 | - [ Daniel d'Andrada ] |
2963 | - * Turn UbuntuKeyboardInfo into a QML singleton |
2964 | - |
2965 | - [ Gerry Boland ] |
2966 | - * Rewrite DesktopFileReader to use GDesktopAppInfo, enables reading |
2967 | - localized keys (LP: #1350360) |
2968 | - |
2969 | - [ Michał Sawicz ] |
2970 | - * Ensure unity8-dash is less likely to be killed than other background |
2971 | - apps. (LP: #1379296) |
2972 | - |
2973 | - [ Robert Carr ] |
2974 | - * Pass key auto-repeat flag through QtEventFeeder. |
2975 | - |
2976 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 13 Oct 2014 10:08:04 +0000 |
2977 | - |
2978 | -qtmir (0.4.3+14.10.20141010-0ubuntu1) utopic; urgency=low |
2979 | - |
2980 | - [ Ubuntu daily release ] |
2981 | - * New rebuild forced |
2982 | - |
2983 | - [ Cemil Azizoglu ] |
2984 | - * Rebuild for Mir 0.8.0. |
2985 | - |
2986 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 10 Oct 2014 16:33:24 +0000 |
2987 | - |
2988 | -qtmir (0.4.3+14.10.20141006-0ubuntu1) utopic; urgency=low |
2989 | - |
2990 | - [ Michael Zanetti ] |
2991 | - * Fix some bugs in app lifecycle management. |
2992 | - |
2993 | - [ Albert Astals ] |
2994 | - * Wait for ApplicationManager to be there |
2995 | - |
2996 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 06 Oct 2014 12:00:01 +0000 |
2997 | - |
2998 | -qtmir (0.4.3+14.10.20141001.5-0ubuntu1) utopic; urgency=low |
2999 | - |
3000 | - [ Daniel d'Andrada ] |
3001 | - * CONFIG+=no_tests to avoid building the tests and therefore speed up |
3002 | - the build |
3003 | - * Provide a global clipboard via D-Bus (LP: #1367814) |
3004 | - |
3005 | - [ josharenson ] |
3006 | - * Remove check to see if application is already focused before |
3007 | - focusing. |
3008 | - |
3009 | - [ Robert Carr ] |
3010 | - * MirSurfaceItem::consume Set motion event tooltypes based on |
3011 | - QTouchPoints (LP: #1371282) |
3012 | - |
3013 | - [ Gerry Boland ] |
3014 | - * Fix AppMan handling Upstart resuming a Stopped application |
3015 | - |
3016 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Wed, 01 Oct 2014 18:43:00 +0000 |
3017 | - |
3018 | -qtmir (0.4.3+14.10.20140922.1-0ubuntu1) utopic; urgency=low |
3019 | - |
3020 | - [ Gerry Boland ] |
3021 | - * Expose Mir surface orientation property to QML (LP: #1288332) |
3022 | - * Add splash screen properties to Application |
3023 | - |
3024 | - [ Florian Boucault ] |
3025 | - * Add splash screen properties to Application |
3026 | - |
3027 | - [ Daniel d'Andrada ] |
3028 | - * Add splash screen properties to Application |
3029 | - |
3030 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 22 Sep 2014 17:38:51 +0000 |
3031 | - |
3032 | -qtmir (0.4.3+14.10.20140918.3-0ubuntu1) utopic; urgency=low |
3033 | - |
3034 | - [ Gerry Boland ] |
3035 | - * TaskController may call processStarted synchronously, so check for |
3036 | - that in startApplication before adding (LP: #1371047) |
3037 | - |
3038 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 18 Sep 2014 16:57:48 +0000 |
3039 | - |
3040 | -qtmir (0.4.3+14.10.20140918.1-0ubuntu1) utopic; urgency=low |
3041 | - |
3042 | - [ Gerry Boland ] |
3043 | - * Fix unstable test - be more careful about synchronizing the Qt image |
3044 | - provider and Mir snapshot threads |
3045 | - |
3046 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 18 Sep 2014 09:38:52 +0000 |
3047 | - |
3048 | -qtmir (0.4.3+14.10.20140915-0ubuntu1) utopic; urgency=low |
3049 | - |
3050 | - [ Daniel d'Andrada ] |
3051 | - * MirSurfaceItem: Ensure all touch sequences sent to Mir surface are |
3052 | - properly ended. |
3053 | - |
3054 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 15 Sep 2014 14:50:16 +0000 |
3055 | - |
3056 | -qtmir (0.4.3+14.10.20140907-0ubuntu1) utopic; urgency=low |
3057 | - |
3058 | - [ Daniel d'Andrada ] |
3059 | - * QtEventFeeder: validate touches before sending them to Qt |
3060 | - |
3061 | - [ josharenson ] |
3062 | - * Fix a small typo in the README file |
3063 | - |
3064 | - [ Alan Griffiths ] |
3065 | - * Provide Mir with a handler for any command-line arguments it fails |
3066 | - to parse. For the moment, these are simply ignored. |
3067 | - |
3068 | - [ Gerry Boland ] |
3069 | - * Add LTTng tracepoints |
3070 | - |
3071 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Sun, 07 Sep 2014 19:42:56 +0000 |
3072 | - |
3073 | -qtmir (0.4.3+14.10.20140903-0ubuntu1) utopic; urgency=medium |
3074 | - |
3075 | - [ Nick Dedekind ] |
3076 | - * Use a model for child surfaces/sessions. Add surface tests. |
3077 | - * Support for nesting prompt sessions. |
3078 | - |
3079 | - |
3080 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Wed, 03 Sep 2014 08:03:52 +0000 |
3081 | - |
3082 | -qtmir (0.4.2+14.10.20140829-0ubuntu1) utopic; urgency=low |
3083 | - |
3084 | - [ Ubuntu daily release ] |
3085 | - * New rebuild forced |
3086 | - |
3087 | - [ Cemil Azizoglu ] |
3088 | - * Rebuild for the Mir 0.7.0 release. |
3089 | - |
3090 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 29 Aug 2014 18:59:49 +0000 |
3091 | - |
3092 | -qtmir (0.4.2+14.10.20140825-0ubuntu1) utopic; urgency=low |
3093 | - |
3094 | - [ Daniel d'Andrada ] |
3095 | - * Revamp screenshotting to use an image provider again, removing |
3096 | - screenshot-related methods on Application |
3097 | - |
3098 | - [ Daniel van Vugt ] |
3099 | - * Add support for building against Mir when it's installed somewhere |
3100 | - other than /usr (like with a custom $PKG_CONFIG_PATH). |
3101 | - |
3102 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 25 Aug 2014 07:46:36 +0000 |
3103 | - |
3104 | -qtmir (0.4.1+14.10.20140817-0ubuntu1) utopic; urgency=medium |
3105 | - |
3106 | - [ Michał Sawicz ] |
3107 | - * Unrevert "MirSurfaceItem: always try to consume new mir frames" |
3108 | - |
3109 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Sun, 17 Aug 2014 00:41:51 +0000 |
3110 | - |
3111 | -qtmir (0.4.1+14.10.20140815.is.0.4.1+14.10.20140811.1-0ubuntu1) utopic; urgency=medium |
3112 | - |
3113 | - * Reverting previous commit since unity8 started deadlocking in ap |
3114 | - test runs (requested by Saviq) |
3115 | - |
3116 | - -- Ricardo Salveti de Araujo <ricardo.salveti@canonical.com> Sat, 16 Aug 2014 17:18:12 -0300 |
3117 | - |
3118 | -qtmir (0.4.1+14.10.20140815-0ubuntu1) utopic; urgency=low |
3119 | - |
3120 | - [ Daniel d'Andrada ] |
3121 | - * MirSurfaceItem: always try to consume new mir frames Otherwise those |
3122 | - frames will get dropped and MirSurfaceItem will therefore never use |
3123 | - them, being left displaying an old, stale, frame until the |
3124 | - application renders again.This could happen for instance if an |
3125 | - application was rendering between the time the Application object |
3126 | - goes to Suspended state and the actual process getting SIG_STOPPED |
3127 | - (ie, suspended for real). Frames rendered in this interval were |
3128 | - getting dropped and once that app was resumed and its MirSurfaceItem |
3129 | - brought to front the user would see an old stale frame until some |
3130 | - new event caused the application to render a new frame (e.g. an |
3131 | - input event) (LP: #1353374) |
3132 | - |
3133 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 15 Aug 2014 17:13:24 +0000 |
3134 | - |
3135 | -qtmir (0.4.1+14.10.20140811.1-0ubuntu1) utopic; urgency=low |
3136 | - |
3137 | - [ Ubuntu daily release ] |
3138 | - * New rebuild forced |
3139 | - |
3140 | - [ Michał Sawicz ] |
3141 | - * Bumped dependency for Mir 0.6.0. Switch to using supported API |
3142 | - (the_ipc_factory -> new_ipc_factory). |
3143 | - |
3144 | - [ Cemil Azizoglu ] |
3145 | - * Bumped dependency for Mir 0.6.0. Switch to using supported API |
3146 | - (the_ipc_factory -> new_ipc_factory). |
3147 | - |
3148 | - [ Alan Griffiths ] |
3149 | - * Bumped dependency for Mir 0.6.0. Switch to using supported API |
3150 | - (the_ipc_factory -> new_ipc_factory). |
3151 | - |
3152 | - [ Kevin Gunn ] |
3153 | - * Bumped dependency for Mir 0.6.0. Switch to using supported API |
3154 | - (the_ipc_factory -> new_ipc_factory). |
3155 | - |
3156 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 11 Aug 2014 21:12:34 +0000 |
3157 | - |
3158 | -qtmir (0.4.1+14.10.20140811-0ubuntu1) utopic; urgency=low |
3159 | - |
3160 | - [ Gerry Boland ] |
3161 | - * AppMan: fix dbus GetWindowStack & GetAppFromPid APIs. On suspend, |
3162 | - mark focused application unfocused, and reverse on resume. |
3163 | - |
3164 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 11 Aug 2014 15:53:40 +0000 |
3165 | - |
3166 | -qtmir (0.4.1+14.10.20140808-0ubuntu1) utopic; urgency=medium |
3167 | - |
3168 | - [ Nick Dedekind ] |
3169 | - * Added prompt surfaces to application |
3170 | - |
3171 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 08 Aug 2014 12:19:29 +0000 |
3172 | - |
3173 | -qtmir (0.4.0+14.10.20140805.1-0ubuntu1) utopic; urgency=low |
3174 | - |
3175 | - [ Nick Dedekind ] |
3176 | - * Only add prompt session surfaces to the surface stack once their |
3177 | - first frame has been drawn. |
3178 | - |
3179 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 05 Aug 2014 19:23:27 +0000 |
3180 | - |
3181 | -qtmir (0.4.0+14.10.20140805-0ubuntu1) utopic; urgency=low |
3182 | - |
3183 | - [ Daniel d'Andrada ] |
3184 | - * Don't take screenshots automatically and emit focusRequested() |
3185 | - reliably (LP: #1350917) |
3186 | - |
3187 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 05 Aug 2014 12:01:39 +0000 |
3188 | - |
3189 | -qtmir (0.4.0+14.10.20140729-0ubuntu1) utopic; urgency=medium |
3190 | - |
3191 | - [ Gerry Boland ] |
3192 | - * Update for Mir 0.4.0 compatibility |
3193 | - * Remove unneeded properties from SurfaceManager and restore support |
3194 | - for surface with no app parent |
3195 | - * Add patches to ubuntuclient plugin to enable sharing of GL context - |
3196 | - needed for oxide |
3197 | - * Rename client plugin to ubuntumirclient (to match that of qtubuntu) |
3198 | - There are some apps which check the QPA name is ubuntumirclient, and |
3199 | - fail with ubuntuclient. Worst offender is Oxide, which is hard to |
3200 | - rebuild, so this change is easier fix. |
3201 | - * Revert 125, incorrect branch merged |
3202 | - * Rename client plugin to ubuntumirclient (to match that of qtubuntu) |
3203 | - There are some apps which check the QPA name is ubuntumirclient, and |
3204 | - fail with ubuntuclient. Worst offender is Oxide, which is hard to |
3205 | - rebuild, so this change is easier fix. |
3206 | - * Remove surface observer on MirSurfaceItem destruction |
3207 | - * New apps placed at start of model and are focused immediately. |
3208 | - AppMan model has proper surface and fullscreen roles now. Whitespace |
3209 | - fixes |
3210 | - * Enable UbuntuPlatformServices for a mirserver |
3211 | - * Fix FTBFS - header file moved |
3212 | - * Remove ubuntumirclient plugin as it moved to qtubuntu |
3213 | - * Empty commit to force rebuild for Qt5.3 |
3214 | - * debian: update package name, fixes dependency wait in PPA |
3215 | - * Fix Qt5.3 compile - QQmlProfiler changed to QQuickProfiler |
3216 | - * Update README, rename root pro file to match project name |
3217 | - * debian: replace old libplatform-api-dev with newer libubuntu- |
3218 | - application-api-dev |
3219 | - * Fix lifecycle by pulling latest unity-mir code. Rename QML module |
3220 | - back to Unity.Application. Import unity-mir tests. Use category |
3221 | - logging |
3222 | - * Restore code to override side-stage apps to be on main stage on |
3223 | - single-stage devices |
3224 | - * Remove unused *toBeFocused state savers |
3225 | - * debian: update mir & papi version dependencies |
3226 | - * Fix out-of-tree builds |
3227 | - * Using const QString ref to save possible QString copy |
3228 | - * Small header file cleaning |
3229 | - * Fix test fails - do not run moc again on headers used by tests |
3230 | - * Downgrade error warning of unmanaged session startup |
3231 | - * Simplify focus logic, fix tablet lifecycle |
3232 | - * Workaround GL/GLES conflict between Qt and Mir. Split into 3 |
3233 | - packages: GL qpa, GLES qpa & QML plugin Mir is GLES only. Qt on |
3234 | - desktop is desktop-GL only. To workaround this, (ab)use the fact |
3235 | - that MESA on the desktop allows you to bind GL apis to a GLES |
3236 | - context via eglBindAPI. To use this, need to compile with QPA |
3237 | - separately for GL and GLES targets. Thus need to split the packaging |
3238 | - into: + qtmir-android - qpa plugin for GLES targets + qtmir-desktop |
3239 | - - qpa plugin for desktop-GL targets (uses MESA hack) + |
3240 | - qtdeclarative5-qtmir-plugin - the QML plugin Also stopped unit tests |
3241 | - from being installed |
3242 | - * Re-enable Buffer Queueing OpenGL, should improve graphics |
3243 | - performance |
3244 | - * Remove refresh-rate override as Mir now returns correct value |
3245 | - * MirGLContext - temporary gl context from mir does not have |
3246 | - attributes defined by GLConfig applied, so need to do so manually |
3247 | - * DisplayWindow listens for Hide/Show events with its event handler, |
3248 | - not via a static variable |
3249 | - * QtEventFeeder - add deconstructor to delete the mTouchDevice |
3250 | - * Application: delete TODO comment in setSession as nonsensical |
3251 | - * SessionName removed. PID matching was introduced some time ago and |
3252 | - so session name unnecessary |
3253 | - * Application: remove hack to guess app supported orientations, |
3254 | - implement properly later |
3255 | - * Fixed threading issue when screen-shotting application about to be |
3256 | - stopped. By Nick Dedekind |
3257 | - * Revert rev 179, add comment to clarify |
3258 | - * Application: replace direct call into MirSurfaceItem with a |
3259 | - signal/slot. Removes FIXME |
3260 | - * MirSurfaceItem: setting unfocused on creation breaks camera & videos |
3261 | - app, so disabling and added fixme |
3262 | - * Add FIXME about the custom roles |
3263 | - * Remove redundant comment |
3264 | - * Remove ApplicationManager::topmostApplication |
3265 | - * AppMan: if foreground app closes, set all unfocused to let shell |
3266 | - decide what next to focus |
3267 | - * Useless static_cast removed |
3268 | - * DebugHelpers: do not use default state for last option in the enum |
3269 | - today, the enum may grow in future |
3270 | - * MirBufferSGTexture: remove the Qt5.3 ifdefs, were probably broken |
3271 | - for older Qt versions |
3272 | - * MirSurfaceItem - standardize on qCDebug(QTMIR_SURFACES) |
3273 | - * MirSurfaceManager: generate roleNames only on read |
3274 | - * MirSurfaceManager: remove commented line |
3275 | - * TaskController: add a few more consts |
3276 | - * Removed WindowScreenshotProvider as not needed for now |
3277 | - * AppMan: be slightly more verbose with desktop file locating for |
3278 | - desktop_file_hint. Also use faster exists() static function |
3279 | - * AppMan: data - remove nonsensical default role |
3280 | - * ProcessController: expand documentation |
3281 | - * Clarify licences |
3282 | - * Give AppMan & SurfMan objectNames |
3283 | - * MirSurfaceItem: do not print keystrokes to log |
3284 | - * Fix crash bug - disable input events going to MirSurfaceItem whose |
3285 | - backing mir surface was destroyed |
3286 | - * SurfaceManager: do not add each surface to the model twice silly |
3287 | - * debian: only use gcc4.9 compiler to prevent ABI breaks due to some |
3288 | - C++11 features still being experimental in gcc |
3289 | - * AppMan: emit unfocus dbus event on suspend, and focus on resume |
3290 | - * Revert 214 - breaks install of qtmir and qtubuntu |
3291 | - * Input Event timestamp - do not overwrite timestamp of events sent to |
3292 | - client |
3293 | - |
3294 | - [ Nick Dedekind ] |
3295 | - * Compatibility with mir-0.5 |
3296 | - |
3297 | - [ Robert Bruce Park ] |
3298 | - * CI Train packaging cleanup. Minor packaging cleanup for CI Train |
3299 | - standards. |
3300 | - * Slightly more readable debian/rules. |
3301 | - |
3302 | - [ Michael Zanetti ] |
3303 | - * append newly focused apps instead of prepending them. Allows the ui |
3304 | - to do the regular app focused animation for newly started apps too |
3305 | - * Fix multi touch points on mirsurfaceitems. Patch kindly provided by |
3306 | - anpok. |
3307 | - * also mir specific key codes through the QKeyEvent |
3308 | - |
3309 | - [ Michael Terry ] |
3310 | - * Use virtual package names in Conflicts/Replaces fields and clean |
3311 | - build dirs when doing dh_clean. |
3312 | - |
3313 | - [ Daniel d'Andrada ] |
3314 | - * ubuntuclient: Properly handle mir's resize event Take it as a |
3315 | - promise for a future buffer size instead of immediately obeying it. |
3316 | - * Some MirSurfaceItem fixes Don't assume that it always have an |
3317 | - Application. Slightly improve its ownership mess. |
3318 | - * Work around crash in MirSurfaceManager::onSurfaceAttributeChanged |
3319 | - * Improve debug output of surfaces handled by MirSurfaceManager |
3320 | - * Make mirserver QPA implement QPlatformIntegration::inputContext() So |
3321 | - that shell can get a virtual keyboard |
3322 | - * Wait for screen orientation to stabilize before committing to it |
3323 | - * Reduce orientation stabilization time and cancel pending change when |
3324 | - facing up/down |
3325 | - * Merge multiple qml size changes into a single mir surface resize |
3326 | - Resizing a mir surface is a costly operation and qml items can get |
3327 | - resized multiple times in a single event loop iteration. Besides, a |
3328 | - qml item changes its width and height separately |
3329 | - * Add WindowScreenshotProvider |
3330 | - * s/upstart-app-launch-2/ubuntu-app-launch-2 |
3331 | - * Add clipboard support had to remove the dependency of mirserver to |
3332 | - platform-api-client as it caused a clash as both libs are loading |
3333 | - unityrpc.proto. That's a protobuffer limitation. Added the protobuf |
3334 | - generated files directly (unityrpc.cpp and unityrpc.h) as I couldn't |
3335 | - bend qmake to my will. |
3336 | - * UbuntuPlatformServices is no longer shared by both QPAs |
3337 | - * Update Application::fullscreen when the application gets its surface |
3338 | - * MirSurfaceManager: s/DLOG/qCDebug Use Qt's new categorized logging |
3339 | - system |
3340 | - * MirSurfaceManager: improve debug output |
3341 | - * Hold back this commit for now as qtmir trunk still uses an old mir |
3342 | - version |
3343 | - * adapt to latest mir/devel + input_sender branch |
3344 | - * MirSurfaceManager: improve debug output |
3345 | - * Revert to the old ways regarding rotation Where unity8 doesn't move |
3346 | - and apps rotate by themselves. Retake that rotation approach at a |
3347 | - later time |
3348 | - * Forward item focus to the underlying mir surface |
3349 | - * Dispatch keys to mir surface |
3350 | - * Add a comment with the rationale behind the frame dropper |
3351 | - * Fix copyright headers |
3352 | - * Fix and update debian/copyright |
3353 | - * Removing debian/qtdeclarative5-qtmir-plugin.maintscript This came |
3354 | - with the copy-pasting unity-mir packaging. Makes no sense in qtmir |
3355 | - as it never installed a com.canonical.Unity.conf file in the first |
3356 | - place. That's unity-mir's problems. |
3357 | - * Add a TODO notice |
3358 | - * Fix copy-and-paste error in log message |
3359 | - * Improve Application::setState debug output |
3360 | - |
3361 | - [ Kevin Gunn ] |
3362 | - * merge lp:~nick-dedekind/qtmir/prompt_sessions |
3363 | - * no change, rebuild |
3364 | - |
3365 | - [ Ubuntu daily release ] |
3366 | - * New rebuild forced |
3367 | - |
3368 | - -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 29 Jul 2014 15:13:00 +0000 |
3369 | - |
3370 | -qtmir (0.0.1-ppa5) utopic; urgency=medium |
3371 | - |
3372 | - * packaging works now |
3373 | - |
3374 | - -- Michael Zanetti <michael.zanetti@canonical.com> Fri, 16 May 2014 14:04:29 +0200 |
3375 | - |
3376 | -qtmir (0.0.1-ppa1) utopic; urgency=medium |
3377 | - |
3378 | - * Initial release. |
3379 | - |
3380 | - -- Michael Zanetti <michael.zanetti@canonical.com> Wed, 14 May 2014 14:28:17 +0200 |
3381 | |
3382 | === removed file 'miral-qt/debian/compat' |
3383 | --- miral-qt/debian/compat 2016-06-01 22:06:51 +0000 |
3384 | +++ miral-qt/debian/compat 1970-01-01 00:00:00 +0000 |
3385 | @@ -1,1 +0,0 @@ |
3386 | -9 |
3387 | |
3388 | === removed file 'miral-qt/debian/control' |
3389 | --- miral-qt/debian/control 2016-09-07 14:35:25 +0000 |
3390 | +++ miral-qt/debian/control 1970-01-01 00:00:00 +0000 |
3391 | @@ -1,124 +0,0 @@ |
3392 | -Source: qtmir |
3393 | -Section: libs |
3394 | -Priority: optional |
3395 | -Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> |
3396 | -Build-Depends: cmake, |
3397 | - cmake-extras (>= 0.3), |
3398 | - debhelper (>= 9), |
3399 | - google-mock (>= 1.6.0+svn437), |
3400 | - libcgmanager-dev, |
3401 | - libcontent-hub-dev (>= 0.2), |
3402 | - libfontconfig1-dev, |
3403 | - libgles2-mesa-dev, |
3404 | - libglib2.0-dev, |
3405 | - libgsettings-qt-dev, |
3406 | - liblttng-ust-dev, |
3407 | - libmirclient-dev (>= 0.22.0), |
3408 | - libmircommon-dev (>= 0.22.0), |
3409 | - libmirserver-dev (>= 0.22.0), |
3410 | - libmtdev-dev, |
3411 | - libprocess-cpp-dev, |
3412 | - libqt5sensors5-dev, |
3413 | - libqtdbusmock1-dev (>= 0.2), |
3414 | - libqtdbustest1-dev (>= 0.2), |
3415 | - libubuntu-app-launch2-dev (>= 0.9), |
3416 | - libubuntu-application-api-dev (>= 2.1.0), |
3417 | - libudev-dev, |
3418 | - libunity-api-dev (>= 7.118), |
3419 | - liburl-dispatcher1-dev, |
3420 | - libxkbcommon-dev, |
3421 | - libxrender-dev, |
3422 | - mir-renderer-gl-dev (>= 0.22.0), |
3423 | - pkg-config, |
3424 | -# lttng-gen-ts needs python3, but doesn't depend on it itself: bug 1359147 |
3425 | - python3:any, |
3426 | - qt5-default, |
3427 | - qtbase5-dev, |
3428 | - qtbase5-private-dev, |
3429 | - qtdeclarative5-dev, |
3430 | - qtdeclarative5-private-dev, |
3431 | - quilt, |
3432 | -# libmirserver-dev should have brought this dep. Bug lp:1617435 |
3433 | - uuid-dev, |
3434 | -Standards-Version: 3.9.5 |
3435 | -Homepage: https://launchpad.net/qtmir |
3436 | -# if you don't have have commit access to this branch but would like to upload |
3437 | -# directly to Ubuntu, don't worry: your changes will be merged back into the |
3438 | -# upstream branch |
3439 | -Vcs-Bzr: lp:qtmir |
3440 | -Vcs-Browser: http://bazaar.launchpad.net/~mir-team/qtmir/trunk/files |
3441 | - |
3442 | -Package: qtmir-android |
3443 | -Architecture: armhf |
3444 | -Multi-Arch: same |
3445 | -Conflicts: libqtmir, |
3446 | - qtmir-desktop, |
3447 | - qtubuntu-desktop, |
3448 | -Replaces: libqtmir, |
3449 | - qtmir-desktop, |
3450 | - qtubuntu-desktop, |
3451 | -Provides: qtmir, |
3452 | -Depends: ${misc:Depends}, |
3453 | - ${shlibs:Depends}, |
3454 | -Description: Qt platform abstraction (QPA) plugin for a Mir server (mobile) |
3455 | - QtMir is a set of Qt5 components to enable one to write a Mir server with Qt. |
3456 | - It contains a QPA (Qt Platform Abstraction) plugin which creates and manages |
3457 | - a Mir server. It also exposes some internal Mir functionality. |
3458 | - . |
3459 | - This variant of the package is for Android-based phones and tablets. |
3460 | - |
3461 | -Package: qtmir-desktop |
3462 | -Architecture: any |
3463 | -Multi-Arch: same |
3464 | -Conflicts: qtmir-android, |
3465 | - qtubuntu-android, |
3466 | -Replaces: libqtmir, |
3467 | - qtmir-android, |
3468 | - qtubuntu-android, |
3469 | -Provides: qtmir, |
3470 | -Depends: ${misc:Depends}, |
3471 | - ${shlibs:Depends}, |
3472 | -Description: Qt platform abstraction (QPA) plugin for a Mir server (desktop) |
3473 | - QtMir is a set of Qt5 components to enable one to write a Mir server with Qt. |
3474 | - It contains a QPA (Qt Platform Abstraction) plugin which creates and manages |
3475 | - a Mir server. It also exposes some internal Mir functionality. |
3476 | - . |
3477 | - This variant of the package is for GNU-based desktops. |
3478 | - |
3479 | -Package: qtdeclarative5-qtmir-plugin |
3480 | -Architecture: any |
3481 | -Multi-Arch: same |
3482 | -Pre-Depends: ${misc:Pre-Depends}, |
3483 | -Depends: qtmir-desktop (= ${source:Version}) | qtmir-android (= ${source:Version}), |
3484 | - ${misc:Depends}, |
3485 | - ${shlibs:Depends}, |
3486 | -Replaces: libqtmir, |
3487 | - libunity-mir1, |
3488 | -Conflicts: libqtmir, |
3489 | - libunity-mir1, |
3490 | -Provides: unity-application-impl, |
3491 | - unity-application-impl-21, |
3492 | -Description: Qt plugin for Unity specific Mir APIs |
3493 | - QtMir provides Qt/QML bindings for Mir features that are exposed through the |
3494 | - qtmir-desktop or qtmir-android QPA plugin such as Application management |
3495 | - (start/stop/suspend/resume) and surface management. |
3496 | - |
3497 | -Package: qtmir-tests |
3498 | -Architecture: any |
3499 | -Multi-Arch: same |
3500 | -Pre-Depends: ${misc:Pre-Depends}, |
3501 | -Depends: autopilot-qt5, |
3502 | - littler, |
3503 | - lttng-tools, |
3504 | - mir-test-tools, |
3505 | - python3-autopilot, |
3506 | - python3-babeltrace, |
3507 | - python3-evdev, |
3508 | - python3-mir-perf-framework, |
3509 | - qtdeclarative5-qtmir-plugin, |
3510 | - qtmir-desktop (= ${source:Version}) | qtmir-android (= ${source:Version}), |
3511 | - ${misc:Depends}, |
3512 | - ${shlibs:Depends}, |
3513 | -Description: QtMir tests and demos |
3514 | - This package provides benchmark tests and a simple shell and client using the |
3515 | - QtMir QPA. |
3516 | |
3517 | === removed file 'miral-qt/debian/copyright' |
3518 | --- miral-qt/debian/copyright 2016-06-01 22:06:51 +0000 |
3519 | +++ miral-qt/debian/copyright 1970-01-01 00:00:00 +0000 |
3520 | @@ -1,78 +0,0 @@ |
3521 | -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ |
3522 | -Upstream-Name: qtmir |
3523 | - |
3524 | -Files: * |
3525 | -Copyright: 2013-2015 Canonical Ltd. |
3526 | -License: LGPL-3 |
3527 | - |
3528 | -Files: debian/* |
3529 | -Copyright: 2013-2015 Canonical Ltd. |
3530 | -License: GPL-3 |
3531 | - |
3532 | -Files: tests/* |
3533 | -Copyright: 2013-2015 Canonical Ltd. |
3534 | -License: GPL-3 |
3535 | - |
3536 | -Files: cmake/modules/FindQt5PlatformSupport.cmake |
3537 | -Copyright: 2014 Alex Merry <alex.merry@kde.org> |
3538 | - 2014 Martin Gräßlin <mgraesslin@kde.org> |
3539 | -License: BSD-3-clause |
3540 | - |
3541 | -License: LGPL-3 |
3542 | - This package is free software; you can redistribute it and/or |
3543 | - modify it under the terms of the GNU Lesser General Public |
3544 | - License as published by the Free Software Foundation, version 3 of |
3545 | - the License. |
3546 | - . |
3547 | - This package is distributed in the hope that it will be useful, |
3548 | - but WITHOUT ANY WARRANTY; without even the implied warranty of |
3549 | - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
3550 | - Lesser General Public License for more details. |
3551 | - . |
3552 | - You should have received a copy of the GNU Lesser General Public |
3553 | - License along with this package; if not, write to the Free Software |
3554 | - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
3555 | - . |
3556 | - On Debian systems, the complete text of the GNU Lesser General |
3557 | - Public License can be found in `/usr/share/common-licenses/LGPL-3'. |
3558 | - |
3559 | -License: GPL-3 |
3560 | - This program is free software: you can redistribute it and/or modify |
3561 | - it under the terms of the GNU General Public License as published by |
3562 | - the Free Software Foundation, version 3 of the License. |
3563 | - . |
3564 | - This program is distributed in the hope that it will be useful, |
3565 | - but WITHOUT ANY WARRANTY; without even the implied warranty of |
3566 | - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3567 | - GNU General Public License for more details. |
3568 | - . |
3569 | - You should have received a copy of the GNU General Public License |
3570 | - along with this program. If not, see <http://www.gnu.org/licenses/>. |
3571 | - . |
3572 | - On Debian systems, the full text of the GNU General Public License |
3573 | - version 3 can be found in the file /usr/share/common-licenses/GPL-3. |
3574 | - |
3575 | -License: BSD-3-clause |
3576 | - Redistribution and use in source and binary forms, with or without |
3577 | - modification, are permitted provided that the following conditions |
3578 | - are met: |
3579 | - . |
3580 | - 1. Redistributions of source code must retain the copyright |
3581 | - notice, this list of conditions and the following disclaimer. |
3582 | - 2. Redistributions in binary form must reproduce the copyright |
3583 | - notice, this list of conditions and the following disclaimer in the |
3584 | - documentation and/or other materials provided with the distribution. |
3585 | - 3. The name of the author may not be used to endorse or promote products |
3586 | - derived from this software without specific prior written permission. |
3587 | - . |
3588 | - THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR |
3589 | - IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
3590 | - OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
3591 | - IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, |
3592 | - INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT |
3593 | - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
3594 | - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
3595 | - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
3596 | - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
3597 | - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
3598 | - |
3599 | |
3600 | === removed file 'miral-qt/debian/docs' |
3601 | --- miral-qt/debian/docs 2016-06-01 22:06:51 +0000 |
3602 | +++ miral-qt/debian/docs 1970-01-01 00:00:00 +0000 |
3603 | @@ -1,1 +0,0 @@ |
3604 | -README |
3605 | |
3606 | === removed directory 'miral-qt/debian/gles-patches' |
3607 | === removed file 'miral-qt/debian/gles-patches/convert-to-gles.patch' |
3608 | --- miral-qt/debian/gles-patches/convert-to-gles.patch 2016-09-07 14:11:13 +0000 |
3609 | +++ miral-qt/debian/gles-patches/convert-to-gles.patch 1970-01-01 00:00:00 +0000 |
3610 | @@ -1,179 +0,0 @@ |
3611 | -Index: inline-gles-quilt/debian/control |
3612 | -=================================================================== |
3613 | ---- inline-gles-quilt.orig/debian/control |
3614 | -+++ inline-gles-quilt/debian/control |
3615 | -@@ -1,4 +1,4 @@ |
3616 | --Source: qtmir |
3617 | -+Source: qtmir-gles |
3618 | - Section: libs |
3619 | - Priority: optional |
3620 | - Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> |
3621 | -@@ -16,7 +16,13 @@ Build-Depends: cmake, |
3622 | - libmirserver-dev (>= 0.24.0), |
3623 | - libmtdev-dev, |
3624 | - libprocess-cpp-dev, |
3625 | -+ libqt5gui5-gles, |
3626 | -+ libqt5quick5-gles, |
3627 | -+ libqt5quickparticles5-gles, |
3628 | -+ libqt5quicktest5, |
3629 | -+ libqt5quickwidgets5-gles, |
3630 | - libqt5sensors5-dev, |
3631 | -+ libqt5test5, |
3632 | - libqtdbusmock1-dev (>= 0.2), |
3633 | - libqtdbustest1-dev (>= 0.2), |
3634 | - libubuntu-app-launch2-dev, |
3635 | -@@ -31,8 +37,8 @@ Build-Depends: cmake, |
3636 | - # lttng-gen-ts needs python3, but doesn't depend on it itself: bug 1359147 |
3637 | - python3:any, |
3638 | - qt5-default, |
3639 | -- qtbase5-dev, |
3640 | -- qtbase5-private-dev, |
3641 | -+ qtbase5-gles-dev, |
3642 | -+ qtbase5-private-gles-dev, |
3643 | - qtdeclarative5-dev, |
3644 | - qtdeclarative5-private-dev, |
3645 | - quilt, |
3646 | -@@ -45,7 +51,7 @@ Vcs-Bzr: lp:qtmir |
3647 | - Vcs-Browser: http://bazaar.launchpad.net/~mir-team/qtmir/trunk/files |
3648 | - |
3649 | - Package: qtmir-android |
3650 | --Architecture: armhf |
3651 | -+Architecture: amd64 i386 |
3652 | - Multi-Arch: same |
3653 | - Conflicts: libqtmir, |
3654 | - qtmir-desktop, |
3655 | -@@ -56,65 +62,10 @@ Replaces: libqtmir, |
3656 | - Provides: qtmir, |
3657 | - Depends: ${misc:Depends}, |
3658 | - ${shlibs:Depends}, |
3659 | --Description: Qt platform abstraction (QPA) plugin for a Mir server (mobile) |
3660 | -+Description: Qt platform abstraction (QPA) plugin for a Mir server (mobile) - OpenGLES |
3661 | - QtMir is a set of Qt5 components to enable one to write a Mir server with Qt. |
3662 | - It contains a QPA (Qt Platform Abstraction) plugin which creates and manages |
3663 | - a Mir server. It also exposes some internal Mir functionality. |
3664 | - . |
3665 | -- This variant of the package is for Android-based phones and tablets. |
3666 | -- |
3667 | --Package: qtmir-desktop |
3668 | --Architecture: any |
3669 | --Multi-Arch: same |
3670 | --Conflicts: qtmir-android, |
3671 | -- qtubuntu-android, |
3672 | --Replaces: libqtmir, |
3673 | -- qtmir-android, |
3674 | -- qtubuntu-android, |
3675 | --Provides: qtmir, |
3676 | --Depends: ${misc:Depends}, |
3677 | -- ${shlibs:Depends}, |
3678 | --Description: Qt platform abstraction (QPA) plugin for a Mir server (desktop) |
3679 | -- QtMir is a set of Qt5 components to enable one to write a Mir server with Qt. |
3680 | -- It contains a QPA (Qt Platform Abstraction) plugin which creates and manages |
3681 | -- a Mir server. It also exposes some internal Mir functionality. |
3682 | -- . |
3683 | -- This variant of the package is for GNU-based desktops. |
3684 | -- |
3685 | --Package: qtdeclarative5-qtmir-plugin |
3686 | --Architecture: any |
3687 | --Multi-Arch: same |
3688 | --Pre-Depends: ${misc:Pre-Depends}, |
3689 | --Depends: qtmir-desktop (= ${source:Version}) | qtmir-android (= ${source:Version}), |
3690 | -- ${misc:Depends}, |
3691 | -- ${shlibs:Depends}, |
3692 | --Replaces: libqtmir, |
3693 | -- libunity-mir1, |
3694 | --Conflicts: libqtmir, |
3695 | -- libunity-mir1, |
3696 | --Provides: unity-application-impl, |
3697 | -- unity-application-impl-21, |
3698 | --Description: Qt plugin for Unity specific Mir APIs |
3699 | -- QtMir provides Qt/QML bindings for Mir features that are exposed through the |
3700 | -- qtmir-desktop or qtmir-android QPA plugin such as Application management |
3701 | -- (start/stop/suspend/resume) and surface management. |
3702 | -- |
3703 | --Package: qtmir-tests |
3704 | --Architecture: any |
3705 | --Multi-Arch: same |
3706 | --Pre-Depends: ${misc:Pre-Depends}, |
3707 | --Depends: autopilot-qt5, |
3708 | -- littler, |
3709 | -- lttng-tools, |
3710 | -- mir-test-tools, |
3711 | -- python3-autopilot, |
3712 | -- python3-babeltrace, |
3713 | -- python3-evdev, |
3714 | -- python3-mir-perf-framework, |
3715 | -- qtdeclarative5-qtmir-plugin, |
3716 | -- qtmir-desktop (= ${source:Version}) | qtmir-android (= ${source:Version}), |
3717 | -- ${misc:Depends}, |
3718 | -- ${shlibs:Depends}, |
3719 | --Description: QtMir tests and demos |
3720 | -- This package provides benchmark tests and a simple shell and client using the |
3721 | -- QtMir QPA. |
3722 | -+ This variant of the package is for Android-based phones and tablets (built |
3723 | -+ against the OpenGLES variant of qtbase). |
3724 | -Index: inline-gles-quilt/debian/rules |
3725 | -=================================================================== |
3726 | ---- inline-gles-quilt.orig/debian/rules |
3727 | -+++ inline-gles-quilt/debian/rules |
3728 | -@@ -3,60 +3,28 @@ |
3729 | - |
3730 | - export DPKG_GENSYMBOLS_CHECK_LEVEL=4 |
3731 | - |
3732 | --include /usr/share/dpkg/default.mk |
3733 | -- |
3734 | - ANDROID_DIR = build-android |
3735 | --DESKTOP_DIR = build-desktop |
3736 | - TMP1_DIR = $(CURDIR)/debian/tmp1 |
3737 | --TMP2_DIR = $(CURDIR)/debian/tmp2 |
3738 | -- |
3739 | --# We only want to build qtmir-android on arches using Qt built with OpenGL ES2.0 |
3740 | --DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) |
3741 | --gles2_architectures = armhf |
3742 | -- |
3743 | --USES_GLES2 = $(findstring $(DEB_HOST_ARCH), $(gles2_architectures)) |
3744 | - |
3745 | - %: |
3746 | - dh $@ --parallel --fail-missing |
3747 | - |
3748 | - override_dh_clean: |
3749 | --ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3750 | - rm -rf $(TMP1_DIR) |
3751 | --endif |
3752 | -- rm -rf $(TMP2_DIR) |
3753 | - dh_clean |
3754 | - |
3755 | - override_dh_auto_configure: |
3756 | --ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3757 | - mkdir -p $(ANDROID_DIR) && dh_auto_configure -B$(ANDROID_DIR) -- $(FLAGS) $(CURDIR) -DUSE_OPENGLES=1 |
3758 | --# See comment in CMakeLists.txt |
3759 | -- mkdir -p $(DESKTOP_DIR) && dh_auto_configure -B$(DESKTOP_DIR) -- $(FLAGS) $(CURDIR) -DUSE_OPENGL_BUT_LINK_AGAINST_OPENGLES=1 |
3760 | --else |
3761 | -- mkdir -p $(DESKTOP_DIR) && dh_auto_configure -B$(DESKTOP_DIR) -- $(FLAGS) $(CURDIR) -DUSE_OPENGLES=1 |
3762 | --endif |
3763 | - |
3764 | - override_dh_auto_build: |
3765 | --ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3766 | - dh_auto_build -B$(ANDROID_DIR) |
3767 | --endif |
3768 | -- dh_auto_build -B$(DESKTOP_DIR) |
3769 | - |
3770 | - override_dh_auto_test: |
3771 | --ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3772 | - dh_auto_test -B$(ANDROID_DIR) |
3773 | --endif |
3774 | -- dh_auto_test -B$(DESKTOP_DIR) |
3775 | - |
3776 | - override_dh_auto_install: |
3777 | --ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3778 | - dh_auto_install -B$(ANDROID_DIR) --destdir=$(TMP1_DIR) |
3779 | --endif |
3780 | -- dh_auto_install -B$(DESKTOP_DIR) --destdir=$(TMP2_DIR) |
3781 | - |
3782 | - override_dh_install: |
3783 | --ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3784 | -+ cat $(CURDIR)/debian/qtmir-tests.install $(CURDIR)/debian/qtdeclarative5-qtmir-plugin.install | xargs -I% sh -c "rm -rf $(TMP1_DIR)/%" |
3785 | - dh_install --sourcedir=$(TMP1_DIR) -pqtmir-android |
3786 | --endif |
3787 | -- dh_install --sourcedir=$(TMP2_DIR) -pqtmir-desktop |
3788 | -- dh_install --sourcedir=$(TMP2_DIR) -pqtdeclarative5-qtmir-plugin |
3789 | -- dh_install --sourcedir=$(TMP2_DIR) -pqtmir-tests |
3790 | |
3791 | === removed file 'miral-qt/debian/gles-patches/series' |
3792 | --- miral-qt/debian/gles-patches/series 2016-06-01 22:06:51 +0000 |
3793 | +++ miral-qt/debian/gles-patches/series 1970-01-01 00:00:00 +0000 |
3794 | @@ -1,1 +0,0 @@ |
3795 | -convert-to-gles.patch |
3796 | |
3797 | === removed file 'miral-qt/debian/qtdeclarative5-qtmir-plugin.install' |
3798 | --- miral-qt/debian/qtdeclarative5-qtmir-plugin.install 2016-06-01 22:06:51 +0000 |
3799 | +++ miral-qt/debian/qtdeclarative5-qtmir-plugin.install 1970-01-01 00:00:00 +0000 |
3800 | @@ -1,2 +0,0 @@ |
3801 | -usr/lib/*/qt5/qml/* |
3802 | -usr/share/glib-2.0/schemas |
3803 | |
3804 | === removed file 'miral-qt/debian/qtmir-android.install' |
3805 | --- miral-qt/debian/qtmir-android.install 2016-06-01 22:06:51 +0000 |
3806 | +++ miral-qt/debian/qtmir-android.install 1970-01-01 00:00:00 +0000 |
3807 | @@ -1,1 +0,0 @@ |
3808 | -usr/lib/*/qt5/plugins/platforms/* |
3809 | |
3810 | === removed file 'miral-qt/debian/qtmir-desktop.install' |
3811 | --- miral-qt/debian/qtmir-desktop.install 2016-06-01 22:06:51 +0000 |
3812 | +++ miral-qt/debian/qtmir-desktop.install 1970-01-01 00:00:00 +0000 |
3813 | @@ -1,1 +0,0 @@ |
3814 | -usr/lib/*/qt5/plugins/platforms/* |
3815 | |
3816 | === removed file 'miral-qt/debian/qtmir-tests.install' |
3817 | --- miral-qt/debian/qtmir-tests.install 2016-06-01 22:06:51 +0000 |
3818 | +++ miral-qt/debian/qtmir-tests.install 1970-01-01 00:00:00 +0000 |
3819 | @@ -1,6 +0,0 @@ |
3820 | -usr/bin/qtmir-demo-client |
3821 | -usr/bin/qtmir-demo-shell |
3822 | -usr/share/applications/qtmir-demo-client.desktop |
3823 | -usr/share/qtmir/benchmarks/* |
3824 | -usr/share/qtmir/qtmir-demo-client/* |
3825 | -usr/share/qtmir/qtmir-demo-shell/ |
3826 | |
3827 | === removed file 'miral-qt/debian/rules' |
3828 | --- miral-qt/debian/rules 2016-06-01 22:06:51 +0000 |
3829 | +++ miral-qt/debian/rules 1970-01-01 00:00:00 +0000 |
3830 | @@ -1,62 +0,0 @@ |
3831 | -#!/usr/bin/make -f |
3832 | -# -*- makefile -*- |
3833 | - |
3834 | -export DPKG_GENSYMBOLS_CHECK_LEVEL=4 |
3835 | - |
3836 | -include /usr/share/dpkg/default.mk |
3837 | - |
3838 | -ANDROID_DIR = build-android |
3839 | -DESKTOP_DIR = build-desktop |
3840 | -TMP1_DIR = $(CURDIR)/debian/tmp1 |
3841 | -TMP2_DIR = $(CURDIR)/debian/tmp2 |
3842 | - |
3843 | -# We only want to build qtmir-android on arches using Qt built with OpenGL ES2.0 |
3844 | -DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) |
3845 | -gles2_architectures = armhf |
3846 | - |
3847 | -USES_GLES2 = $(findstring $(DEB_HOST_ARCH), $(gles2_architectures)) |
3848 | - |
3849 | -%: |
3850 | - dh $@ --parallel --fail-missing |
3851 | - |
3852 | -override_dh_clean: |
3853 | -ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3854 | - rm -rf $(TMP1_DIR) |
3855 | -endif |
3856 | - rm -rf $(TMP2_DIR) |
3857 | - dh_clean |
3858 | - |
3859 | -override_dh_auto_configure: |
3860 | -ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3861 | - mkdir -p $(ANDROID_DIR) && dh_auto_configure -B$(ANDROID_DIR) -- $(FLAGS) $(CURDIR) -DUSE_OPENGLES=1 |
3862 | -# See comment in CMakeLists.txt |
3863 | - mkdir -p $(DESKTOP_DIR) && dh_auto_configure -B$(DESKTOP_DIR) -- $(FLAGS) $(CURDIR) -DUSE_OPENGL_BUT_LINK_AGAINST_OPENGLES=1 |
3864 | -else |
3865 | - mkdir -p $(DESKTOP_DIR) && dh_auto_configure -B$(DESKTOP_DIR) -- $(FLAGS) $(CURDIR) -DUSE_OPENGLES=1 |
3866 | -endif |
3867 | - |
3868 | -override_dh_auto_build: |
3869 | -ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3870 | - dh_auto_build -B$(ANDROID_DIR) |
3871 | -endif |
3872 | - dh_auto_build -B$(DESKTOP_DIR) |
3873 | - |
3874 | -override_dh_auto_test: |
3875 | -ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3876 | - dh_auto_test -B$(ANDROID_DIR) |
3877 | -endif |
3878 | - dh_auto_test -B$(DESKTOP_DIR) |
3879 | - |
3880 | -override_dh_auto_install: |
3881 | -ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3882 | - dh_auto_install -B$(ANDROID_DIR) --destdir=$(TMP1_DIR) |
3883 | -endif |
3884 | - dh_auto_install -B$(DESKTOP_DIR) --destdir=$(TMP2_DIR) |
3885 | - |
3886 | -override_dh_install: |
3887 | -ifeq ($(DEB_HOST_ARCH),$(USES_GLES2)) |
3888 | - dh_install --sourcedir=$(TMP1_DIR) -pqtmir-android |
3889 | -endif |
3890 | - dh_install --sourcedir=$(TMP2_DIR) -pqtmir-desktop |
3891 | - dh_install --sourcedir=$(TMP2_DIR) -pqtdeclarative5-qtmir-plugin |
3892 | - dh_install --sourcedir=$(TMP2_DIR) -pqtmir-tests |
3893 | |
3894 | === removed directory 'miral-qt/demos' |
3895 | === removed file 'miral-qt/demos/CMakeLists.txt' |
3896 | --- miral-qt/demos/CMakeLists.txt 2016-06-01 22:06:51 +0000 |
3897 | +++ miral-qt/demos/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
3898 | @@ -1,4 +0,0 @@ |
3899 | -configure_file(paths.h.in ${CMAKE_CURRENT_BINARY_DIR}/paths.h @ONLY) |
3900 | - |
3901 | -add_subdirectory(qml-demo-client) |
3902 | -add_subdirectory(qml-demo-shell) |
3903 | \ No newline at end of file |
3904 | |
3905 | === removed file 'miral-qt/demos/paths.h.in' |
3906 | --- miral-qt/demos/paths.h.in 2016-07-25 15:32:21 +0000 |
3907 | +++ miral-qt/demos/paths.h.in 1970-01-01 00:00:00 +0000 |
3908 | @@ -1,58 +0,0 @@ |
3909 | -/* |
3910 | - * Copyright (C) 2015 Canonical, Ltd. |
3911 | - * |
3912 | - * This program is free software; you can redistribute it and/or modify |
3913 | - * it under the terms of the GNU General Public License as published by |
3914 | - * the Free Software Foundation; version 3. |
3915 | - * |
3916 | - * This program is distributed in the hope that it will be useful, |
3917 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of |
3918 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3919 | - * GNU General Public License for more details. |
3920 | - * |
3921 | - * You should have received a copy of the GNU General Public License |
3922 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. |
3923 | - */ |
3924 | - |
3925 | -#ifndef PATHS_H |
3926 | -#define PATHS_H |
3927 | - |
3928 | -// Qt |
3929 | -#include <QtCore/QCoreApplication> |
3930 | -#include <QtCore/QDir> |
3931 | -#include <QtGui/QIcon> |
3932 | -#include <QtQml/QQmlEngine> |
3933 | -#include <QStandardPaths> |
3934 | - |
3935 | -inline bool isRunningInstalled() { |
3936 | - static bool installed = (QCoreApplication::applicationDirPath() == |
3937 | - QDir(("@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_BINDIR@")).canonicalPath()); |
3938 | - return installed; |
3939 | -} |
3940 | - |
3941 | -inline QString qmlDirectory() { |
3942 | - if (isRunningInstalled()) { |
3943 | - return QString("@CMAKE_INSTALL_PREFIX@/@QTMIR_DATA_DIR@/"); |
3944 | - } else { |
3945 | - return QString("@CMAKE_SOURCE_DIR@/miral-qt/demos/"); |
3946 | - } |
3947 | -} |
3948 | - |
3949 | -inline QString qmlPluginDirectory() { |
3950 | - if (isRunningInstalled()) { |
3951 | - return QString("@QML_MODULE_INSTALL_DIR@/"); |
3952 | - } else { |
3953 | - return QString("@CMAKE_BINARY_DIR@/miral-qt/src/modules/"); |
3954 | - } |
3955 | -} |
3956 | - |
3957 | -inline QString qpaPluginDirectory() { |
3958 | - if (isRunningInstalled()) { |
3959 | - return QString("@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@/qt5/plugins/platforms/"); |
3960 | - } else { |
3961 | - //return QString("@CMAKE_BINARY_DIR@/miral-qt/src/platforms/mirserver/"); //miral moving it out of here |
3962 | - return QString("@CMAKE_BINARY_DIR@/lib/"); |
3963 | - } |
3964 | -} |
3965 | - |
3966 | -#endif |
3967 | |
3968 | === removed directory 'miral-qt/demos/qml-demo-client' |
3969 | === removed file 'miral-qt/demos/qml-demo-client/CMakeLists.txt' |
3970 | --- miral-qt/demos/qml-demo-client/CMakeLists.txt 2016-06-01 22:06:51 +0000 |
3971 | +++ miral-qt/demos/qml-demo-client/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
3972 | @@ -1,41 +0,0 @@ |
3973 | -set(DEMO_CLIENT qtmir-demo-client) |
3974 | -configure_file(${DEMO_CLIENT}.desktop.in ${CMAKE_CURRENT_BINARY_DIR}/${DEMO_CLIENT}.desktop @ONLY) |
3975 | - |
3976 | -include_directories( |
3977 | - ${Qt5Gui_PRIVATE_INCLUDE_DIRS} |
3978 | -) |
3979 | - |
3980 | -add_executable(${DEMO_CLIENT} |
3981 | - main.cpp |
3982 | -) |
3983 | - |
3984 | -include_directories( |
3985 | - ${Qt5Gui_PRIVATE_INCLUDE_DIRS} |
3986 | - ${Qt5Qml_PRIVATE_INCLUDE_DIRS} |
3987 | - ${Qt5Quick_PRIVATE_INCLUDE_DIRS} |
3988 | -) |
3989 | - |
3990 | -target_link_libraries( |
3991 | - ${DEMO_CLIENT} |
3992 | - Qt5::Core |
3993 | - Qt5::DBus |
3994 | - Qt5::Qml |
3995 | - Qt5::Quick |
3996 | -) |
3997 | - |
3998 | -file(GLOB QML_JS_FILES *.qml *.js *.png) |
3999 | - |
4000 | -# install binaries |
4001 | -install(TARGETS ${DEMO_CLIENT} |
4002 | - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} |
4003 | - ) |
4004 | - |
4005 | -install(FILES |
4006 | - ${QML_JS_FILES} |
4007 | - DESTINATION ${QTMIR_DATA_DIR}/${DEMO_CLIENT} |
4008 | -) |
4009 | - |
4010 | -install(FILES |
4011 | - ${CMAKE_CURRENT_BINARY_DIR}/${DEMO_CLIENT}.desktop |
4012 | - DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications |
4013 | -) |
4014 | \ No newline at end of file |
4015 | |
4016 | === removed file 'miral-qt/demos/qml-demo-client/MovingRect.qml' |
4017 | --- miral-qt/demos/qml-demo-client/MovingRect.qml 2016-06-01 22:06:51 +0000 |
4018 | +++ miral-qt/demos/qml-demo-client/MovingRect.qml 1970-01-01 00:00:00 +0000 |
4019 | @@ -1,59 +0,0 @@ |
4020 | -import QtQuick 2.0 |
4021 | - |
4022 | -Rectangle { |
4023 | - id: movingRect |
4024 | - width: 80 |
4025 | - height: 80 |
4026 | - color: "red" |
4027 | - |
4028 | - property real maxX: parent.width - width |
4029 | - property real targetX: maxX |
4030 | - |
4031 | - function flipTargetX() { |
4032 | - if (targetX == 0) { |
4033 | - targetX = maxX |
4034 | - } else { |
4035 | - targetX = 0 |
4036 | - } |
4037 | - } |
4038 | - |
4039 | - Timer { |
4040 | - property real step: 4 |
4041 | - repeat: true |
4042 | - running: true |
4043 | - interval: 1000 / 60 |
4044 | - onTriggered: { |
4045 | - if (x < targetX) { |
4046 | - if (x + step > targetX) { |
4047 | - x = targetX; |
4048 | - } else { |
4049 | - x += step; |
4050 | - } |
4051 | - } else { |
4052 | - if (x - step < targetX) { |
4053 | - x = targetX; |
4054 | - } else { |
4055 | - x -= step; |
4056 | - } |
4057 | - } |
4058 | - } |
4059 | - } |
4060 | - |
4061 | - onXChanged: { |
4062 | - if (x == targetX) { |
4063 | - flipTargetX(); |
4064 | - } |
4065 | - } |
4066 | - onWidthChanged: { |
4067 | - if (targetX > 0) { |
4068 | - targetX = maxX; |
4069 | - } |
4070 | - } |
4071 | - |
4072 | - MouseArea { |
4073 | - anchors.fill: parent |
4074 | - onPressed: { |
4075 | - parent.flipTargetX(); |
4076 | - } |
4077 | - } |
4078 | -} |
4079 | |
4080 | === removed file 'miral-qt/demos/qml-demo-client/main.cpp' |
4081 | --- miral-qt/demos/qml-demo-client/main.cpp 2016-06-01 22:06:51 +0000 |
4082 | +++ miral-qt/demos/qml-demo-client/main.cpp 1970-01-01 00:00:00 +0000 |
4083 | @@ -1,73 +0,0 @@ |
4084 | -/* |
4085 | - * Copyright (C) 2012-2015 Canonical, Ltd. |
4086 | - * |
4087 | - * This program is free software; you can redistribute it and/or modify |
4088 | - * it under the terms of the GNU General Public License as published by |
4089 | - * the Free Software Foundation; version 3. |
4090 | - * |
4091 | - * This program is distributed in the hope that it will be useful, |
4092 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4093 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4094 | - * GNU General Public License for more details. |
4095 | - * |
4096 | - * You should have received a copy of the GNU General Public License |
4097 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. |
4098 | - */ |
4099 | - |
4100 | -// Qt |
4101 | -#include <QtQuick/QQuickView> |
4102 | -#include <QtGui/QGuiApplication> |
4103 | -#include <QDebug> |
4104 | -#include <csignal> |
4105 | -#include <libintl.h> |
4106 | -#include <getopt.h> |
4107 | -#include "../paths.h" |
4108 | - |
4109 | -// REMOVEME - Should be able to use qmlscene, but in order to use the mir benchmarking we need |
4110 | -// to parse command line switches. Wait until MIR_SOCKET supported by the benchmark framework. |
4111 | - |
4112 | -int main(int argc, char **argv) |
4113 | -{ |
4114 | - int arg; |
4115 | - opterr = 0; |
4116 | - while ((arg = getopt (argc, argv, "hm:")) != -1) |
4117 | - { |
4118 | - switch (arg) |
4119 | - { |
4120 | - case 'm': |
4121 | - setenv("MIR_SOCKET", optarg, 1); |
4122 | - break; |
4123 | - |
4124 | - case '?': |
4125 | - case 'h': |
4126 | - default: |
4127 | - puts(argv[0]); |
4128 | - puts("Usage:"); |
4129 | - puts(" -m <Mir server socket>"); |
4130 | - puts(" -h: this help text"); |
4131 | - return -1; |
4132 | - } |
4133 | - } |
4134 | - |
4135 | - QGuiApplication::setApplicationName("qml-demo-client"); |
4136 | - QGuiApplication *application; |
4137 | - |
4138 | - application = new QGuiApplication(argc, (char**)argv); |
4139 | - QQuickView* view = new QQuickView(); |
4140 | - view->setResizeMode(QQuickView::SizeRootObjectToView); |
4141 | - view->setColor("black"); |
4142 | - view->setTitle("Demo Client"); |
4143 | - |
4144 | - QUrl source(::qmlDirectory() + "qtmir-demo-client/qml-demo-client.qml"); |
4145 | - |
4146 | - view->setSource(source); |
4147 | - QObject::connect(view->engine(), SIGNAL(quit()), application, SLOT(quit())); |
4148 | - |
4149 | - view->showFullScreen(); |
4150 | - int result = application->exec(); |
4151 | - |
4152 | - delete view; |
4153 | - delete application; |
4154 | - |
4155 | - return result; |
4156 | -} |
4157 | |
4158 | === removed file 'miral-qt/demos/qml-demo-client/qml-demo-client.qml' |
4159 | --- miral-qt/demos/qml-demo-client/qml-demo-client.qml 2016-06-01 22:06:51 +0000 |
4160 | +++ miral-qt/demos/qml-demo-client/qml-demo-client.qml 1970-01-01 00:00:00 +0000 |
4161 | @@ -1,35 +0,0 @@ |
4162 | -import QtQuick 2.0 |
4163 | - |
4164 | -Rectangle { |
4165 | - onWidthChanged: print("WIDTH", width) |
4166 | - onHeightChanged: print("HEIGHT", height) |
4167 | - width: 600 |
4168 | - height: 80*6 |
4169 | - color: "blue" |
4170 | - |
4171 | - Column { |
4172 | - anchors.fill: parent |
4173 | - MovingRect {} |
4174 | - MovingRect {} |
4175 | - MovingRect {} |
4176 | - MovingRect {} |
4177 | - MovingRect {} |
4178 | - MovingRect {} |
4179 | - } |
4180 | - |
4181 | - Rectangle { |
4182 | - id: flasher |
4183 | - width: 100 |
4184 | - height: 100 |
4185 | - anchors.bottom: parent.bottom |
4186 | - anchors.right: parent.right |
4187 | - color: (on) ? "yellow" : "green" |
4188 | - property bool on: false |
4189 | - Timer { |
4190 | - interval: 1000 |
4191 | - repeat: true |
4192 | - running: true |
4193 | - onTriggered: flasher.on = !flasher.on |
4194 | - } |
4195 | - } |
4196 | -} |
4197 | |
4198 | === removed file 'miral-qt/demos/qml-demo-client/qtmir-demo-client.desktop.in' |
4199 | --- miral-qt/demos/qml-demo-client/qtmir-demo-client.desktop.in 2016-06-01 22:06:51 +0000 |
4200 | +++ miral-qt/demos/qml-demo-client/qtmir-demo-client.desktop.in 1970-01-01 00:00:00 +0000 |
4201 | @@ -1,9 +0,0 @@ |
4202 | -[Desktop Entry] |
4203 | -Type=Application |
4204 | -Name=QtMir Demo Client |
4205 | -Comment=QtMir demo client |
4206 | -Exec=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_BINDIR@/qtmir-demo-client |
4207 | -Terminal=false |
4208 | -Icon= |
4209 | -NoDisplay=false |
4210 | -X-Ubuntu-Touch=true |
4211 | |
4212 | === removed directory 'miral-qt/demos/qml-demo-shell' |
4213 | === removed file 'miral-qt/demos/qml-demo-shell/Button.qml' |
4214 | --- miral-qt/demos/qml-demo-shell/Button.qml 2016-06-01 22:06:51 +0000 |
4215 | +++ miral-qt/demos/qml-demo-shell/Button.qml 1970-01-01 00:00:00 +0000 |
4216 | @@ -1,26 +0,0 @@ |
4217 | -import QtQuick 2.0 |
4218 | - |
4219 | -Rectangle { |
4220 | - id: root |
4221 | - |
4222 | - signal clicked |
4223 | - |
4224 | - property alias text: text.text |
4225 | - |
4226 | - implicitHeight: 40 |
4227 | - implicitWidth: 150 |
4228 | - |
4229 | - color: (mouseArea.pressed) ? "red" : "lightblue" |
4230 | - |
4231 | - MouseArea { |
4232 | - id: mouseArea |
4233 | - anchors.fill: parent |
4234 | - onClicked: { root.clicked(); } |
4235 | - } |
4236 | - |
4237 | - Text { |
4238 | - id: text |
4239 | - anchors.verticalCenter: parent.verticalCenter |
4240 | - anchors.horizontalCenter: parent.horizontalCenter |
4241 | - } |
4242 | -} |
4243 | |
4244 | === removed file 'miral-qt/demos/qml-demo-shell/CMakeLists.txt' |
4245 | --- miral-qt/demos/qml-demo-shell/CMakeLists.txt 2016-07-25 15:32:21 +0000 |
4246 | +++ miral-qt/demos/qml-demo-shell/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
4247 | @@ -1,35 +0,0 @@ |
4248 | -set(DEMO_SHELL qml-demo-shell) |
4249 | - |
4250 | -include_directories( |
4251 | - ${Qt5Gui_PRIVATE_INCLUDE_DIRS} |
4252 | -) |
4253 | - |
4254 | -add_executable(${DEMO_SHELL} |
4255 | - main.cpp |
4256 | -) |
4257 | - |
4258 | -include_directories( |
4259 | - ${Qt5Gui_PRIVATE_INCLUDE_DIRS} |
4260 | - ${Qt5Qml_PRIVATE_INCLUDE_DIRS} |
4261 | - ${Qt5Quick_PRIVATE_INCLUDE_DIRS} |
4262 | -) |
4263 | - |
4264 | -target_link_libraries( |
4265 | - ${DEMO_SHELL} |
4266 | - Qt5::Core |
4267 | - Qt5::DBus |
4268 | - Qt5::Qml |
4269 | - Qt5::Quick |
4270 | -) |
4271 | - |
4272 | -file(GLOB QML_JS_FILES *.qml *.js *.png) |
4273 | - |
4274 | -# install binaries |
4275 | -install(TARGETS ${DEMO_SHELL} |
4276 | - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} |
4277 | - ) |
4278 | - |
4279 | -install(FILES |
4280 | - ${QML_JS_FILES} |
4281 | - DESTINATION ${QTMIR_DATA_DIR}/${DEMO_SHELL} |
4282 | -) |
4283 | |
4284 | === removed file 'miral-qt/demos/qml-demo-shell/ResizeArea.qml' |
4285 | --- miral-qt/demos/qml-demo-shell/ResizeArea.qml 2016-06-01 22:06:51 +0000 |
4286 | +++ miral-qt/demos/qml-demo-shell/ResizeArea.qml 1970-01-01 00:00:00 +0000 |
4287 | @@ -1,128 +0,0 @@ |
4288 | -import QtQuick 2.4 |
4289 | -import Unity.Application 0.1 |
4290 | - |
4291 | -MouseArea { |
4292 | - id: root |
4293 | - |
4294 | - // to be set from outside |
4295 | - property Item target |
4296 | - property real borderThickness |
4297 | - |
4298 | - property bool leftBorder: false |
4299 | - property bool rightBorder: false |
4300 | - property bool topBorder: false |
4301 | - property bool bottomBorder: false |
4302 | - |
4303 | - property bool dragging: false |
4304 | - property real startX |
4305 | - property real startY |
4306 | - property real startWidth |
4307 | - property real startHeight |
4308 | - |
4309 | - hoverEnabled: true |
4310 | - |
4311 | - property string cursorName: { |
4312 | - if (containsMouse || pressed) { |
4313 | - if (leftBorder && !topBorder && !bottomBorder) { |
4314 | - return "left_side"; |
4315 | - } else if (rightBorder && !topBorder && !bottomBorder) { |
4316 | - return "right_side"; |
4317 | - } else if (topBorder && !leftBorder && !rightBorder) { |
4318 | - return "top_side"; |
4319 | - } else if (bottomBorder && !leftBorder && !rightBorder) { |
4320 | - return "bottom_side"; |
4321 | - } else if (leftBorder && topBorder) { |
4322 | - return "top_left_corner"; |
4323 | - } else if (leftBorder && bottomBorder) { |
4324 | - return "bottom_left_corner"; |
4325 | - } else if (rightBorder && topBorder) { |
4326 | - return "top_right_corner"; |
4327 | - } else if (rightBorder && bottomBorder) { |
4328 | - return "bottom_right_corner"; |
4329 | - } else { |
4330 | - return ""; |
4331 | - } |
4332 | - } else { |
4333 | - return ""; |
4334 | - } |
4335 | - } |
4336 | - onCursorNameChanged: { |
4337 | - Mir.cursorName = cursorName; |
4338 | - } |
4339 | - |
4340 | - function updateBorders() { |
4341 | - leftBorder = mouseX <= borderThickness; |
4342 | - rightBorder = mouseX >= width - borderThickness; |
4343 | - topBorder = mouseY <= borderThickness; |
4344 | - bottomBorder = mouseY >= height - borderThickness; |
4345 | - } |
4346 | - |
4347 | - onPressedChanged: { |
4348 | - if (pressed) { |
4349 | - var pos = mapToItem(target.parent, mouseX, mouseY); |
4350 | - startX = pos.x; |
4351 | - startY = pos.y; |
4352 | - startWidth = target.width; |
4353 | - startHeight = target.height; |
4354 | - dragging = true; |
4355 | - } else { |
4356 | - dragging = false; |
4357 | - if (containsMouse) { |
4358 | - updateBorders(); |
4359 | - } |
4360 | - } |
4361 | - } |
4362 | - |
4363 | - onEntered: { |
4364 | - if (!pressed) { |
4365 | - updateBorders(); |
4366 | - } |
4367 | - } |
4368 | - |
4369 | - onPositionChanged: { |
4370 | - if (!pressed) { |
4371 | - updateBorders(); |
4372 | - } |
4373 | - |
4374 | - if (!dragging) { |
4375 | - return; |
4376 | - } |
4377 | - |
4378 | - var pos = mapToItem(target.parent, mouse.x, mouse.y); |
4379 | - |
4380 | - if (leftBorder) { |
4381 | - if (startX + startWidth - pos.x > target.minWidth) { |
4382 | - target.x = pos.x; |
4383 | - target.width = startX + startWidth - target.x; |
4384 | - startX = target.x; |
4385 | - startWidth = target.width; |
4386 | - } |
4387 | - |
4388 | - } else if (rightBorder) { |
4389 | - var deltaX = pos.x - startX; |
4390 | - if (startWidth + deltaX >= target.minWidth) { |
4391 | - target.width = startWidth + deltaX; |
4392 | - } else { |
4393 | - target.width = target.minWidth; |
4394 | - } |
4395 | - } |
4396 | - |
4397 | - if (topBorder) { |
4398 | - if (startY + startHeight - pos.y > target.minHeight) { |
4399 | - target.y = pos.y; |
4400 | - target.height = startY + startHeight - target.y; |
4401 | - startY = target.y; |
4402 | - startHeight = target.height; |
4403 | - } |
4404 | - |
4405 | - } else if (bottomBorder) { |
4406 | - var deltaY = pos.y - startY; |
4407 | - if (startHeight + deltaY >= target.minHeight) { |
4408 | - target.height = startHeight + deltaY; |
4409 | - } else { |
4410 | - target.height = target.minHeight; |
4411 | - } |
4412 | - } |
4413 | - } |
4414 | -} |
4415 | - |
4416 | |
4417 | === removed file 'miral-qt/demos/qml-demo-shell/Shell.qml' |
4418 | --- miral-qt/demos/qml-demo-shell/Shell.qml 2016-06-01 22:06:51 +0000 |
4419 | +++ miral-qt/demos/qml-demo-shell/Shell.qml 1970-01-01 00:00:00 +0000 |
4420 | @@ -1,182 +0,0 @@ |
4421 | -import QtQuick 2.4 |
4422 | -import Unity.Application 0.1 |
4423 | - |
4424 | -Rectangle { |
4425 | - id: root |
4426 | - |
4427 | - focus: true |
4428 | - Keys.onVolumeUpPressed: { |
4429 | - console.log("\"Volume Up\" pressed"); |
4430 | - } |
4431 | - Keys.onVolumeDownPressed: { |
4432 | - console.log("\"Volume Down\" pressed"); |
4433 | - } |
4434 | - |
4435 | - property bool resizeModeStretch: true |
4436 | - |
4437 | - gradient: Gradient { |
4438 | - GradientStop { position: 0.0; color: "lightsteelblue" } |
4439 | - GradientStop { position: 1.0; color: "pink" } |
4440 | - } |
4441 | - |
4442 | - property bool thumbFriendlyBorders: false |
4443 | - |
4444 | - MultiPointTouchArea { |
4445 | - anchors.fill: parent |
4446 | - mouseEnabled: false |
4447 | - onPressed: { |
4448 | - root.thumbFriendlyBorders = true; |
4449 | - } |
4450 | - onReleased: { |
4451 | - root.thumbFriendlyBorders = false; |
4452 | - } |
4453 | - } |
4454 | - |
4455 | - Image { |
4456 | - id: unityLogo |
4457 | - source: "UnityLogo.png" |
4458 | - fillMode: Image.PreserveAspectFit |
4459 | - anchors.centerIn: parent |
4460 | - width: 600 |
4461 | - height: 600 |
4462 | - |
4463 | - RotationAnimation { |
4464 | - id: logoAnimation |
4465 | - target: unityLogo |
4466 | - from: 0 |
4467 | - to: 359 |
4468 | - duration: 3000 |
4469 | - easing.type: Easing.Linear |
4470 | - loops: Animation.Infinite |
4471 | - } |
4472 | - |
4473 | - MultiPointTouchArea { |
4474 | - anchors.fill: parent |
4475 | - minimumTouchPoints:1 |
4476 | - maximumTouchPoints:1 |
4477 | - onPressed: { |
4478 | - if (logoAnimation.paused) { |
4479 | - logoAnimation.resume(); |
4480 | - } else if (logoAnimation.running) { |
4481 | - logoAnimation.pause(); |
4482 | - } else { |
4483 | - logoAnimation.start(); |
4484 | - } |
4485 | - } |
4486 | - } |
4487 | - } |
4488 | - |
4489 | - Item { |
4490 | - id: windowContainer |
4491 | - anchors.fill: root |
4492 | - } |
4493 | - |
4494 | - Rectangle { |
4495 | - id: quitButton |
4496 | - width: 60 |
4497 | - height: 40 |
4498 | - color: "red" |
4499 | - anchors { right: parent.right; bottom: parent.bottom } |
4500 | - Text { |
4501 | - anchors.centerIn: parent |
4502 | - text: "Quit" |
4503 | - } |
4504 | - MouseArea { |
4505 | - anchors.fill: parent |
4506 | - onClicked: Qt.quit() |
4507 | - } |
4508 | - } |
4509 | - |
4510 | - Rectangle { |
4511 | - id: resizeButton |
4512 | - width: 90 |
4513 | - height: 40 |
4514 | - color: "blue" |
4515 | - anchors { right: quitButton.left; bottom: parent.bottom } |
4516 | - Text { |
4517 | - anchors.centerIn: parent |
4518 | - text: root.resizeModeStretch ? "Stretch" : "Wait Resize" |
4519 | - color: "white" |
4520 | - } |
4521 | - MouseArea { |
4522 | - anchors.fill: parent |
4523 | - onClicked: { root.resizeModeStretch = !root.resizeModeStretch; } |
4524 | - } |
4525 | - } |
4526 | - |
4527 | - Rectangle { |
4528 | - width: 40 |
4529 | - height: 40 |
4530 | - color: "green" |
4531 | - anchors { right: resizeButton.left; bottom: parent.bottom } |
4532 | - Text { |
4533 | - anchors.centerIn: parent |
4534 | - text: "⟳" |
4535 | - color: "white" |
4536 | - font.pixelSize: 35 |
4537 | - } |
4538 | - MouseArea { |
4539 | - anchors.fill: parent |
4540 | - onClicked: { root.rotation += 180; } |
4541 | - } |
4542 | - } |
4543 | - |
4544 | - Component { |
4545 | - id: windowStretchComponent |
4546 | - Window { |
4547 | - x: 50 |
4548 | - y: 50 |
4549 | - //width: 200 |
4550 | - //height: 200 |
4551 | - touchMode: root.thumbFriendlyBorders |
4552 | - |
4553 | - onCloneRequested: { |
4554 | - var window = windowStretchComponent.createObject(windowContainer); |
4555 | - window.cloned = true; |
4556 | - window.surface = surface; |
4557 | - } |
4558 | - } |
4559 | - } |
4560 | - |
4561 | - Component { |
4562 | - id: windowWaitResizeComponent |
4563 | - WindowBufferSized { |
4564 | - x: 50 |
4565 | - y: 50 |
4566 | - touchMode: root.thumbFriendlyBorders |
4567 | - |
4568 | - onCloneRequested: { |
4569 | - var window = windowStretchComponent.createObject(windowContainer); |
4570 | - window.cloned = true; |
4571 | - window.surface = surface; |
4572 | - } |
4573 | - } |
4574 | - } |
4575 | - |
4576 | - property var windowComponent: resizeModeStretch ? windowStretchComponent : windowWaitResizeComponent |
4577 | - |
4578 | - Connections { |
4579 | - target: SurfaceManager |
4580 | - onSurfaceCreated: { |
4581 | - print("new surface", surface.name) |
4582 | - |
4583 | - var window = windowComponent.createObject(windowContainer); |
4584 | - if (!window) { |
4585 | - console.warn(windowComponent.errorString()); |
4586 | - return; |
4587 | - } |
4588 | - |
4589 | - window.surface = surface; |
4590 | - |
4591 | - openAnimation.target = window; |
4592 | - openAnimation.start(); |
4593 | - } |
4594 | - } |
4595 | - |
4596 | - NumberAnimation { |
4597 | - id: openAnimation |
4598 | - property: "x"; |
4599 | - from: root.width; to: 10; |
4600 | - duration: 1200; easing.type: Easing.InOutQuad |
4601 | - } |
4602 | -} |
4603 | |
4604 | === removed file 'miral-qt/demos/qml-demo-shell/TitleBar.qml' |
4605 | --- miral-qt/demos/qml-demo-shell/TitleBar.qml 2016-06-01 22:06:51 +0000 |
4606 | +++ miral-qt/demos/qml-demo-shell/TitleBar.qml 1970-01-01 00:00:00 +0000 |
4607 | @@ -1,72 +0,0 @@ |
4608 | -import QtQuick 2.4 |
4609 | -import Unity.Application 0.1 |
4610 | - |
4611 | -Rectangle { |
4612 | - id: root |
4613 | - color: "brown" |
4614 | - height: 25 |
4615 | - |
4616 | - property Item target |
4617 | - property bool cloned: false |
4618 | - property bool closeRequested: false |
4619 | - signal cloneRequested() |
4620 | - |
4621 | - MouseArea { |
4622 | - anchors.fill: parent |
4623 | - property real distanceX |
4624 | - property real distanceY |
4625 | - property bool dragging |
4626 | - onPressedChanged: { |
4627 | - if (pressed) { |
4628 | - var pos = mapToItem(root.target, mouseX, mouseY); |
4629 | - distanceX = pos.x; |
4630 | - distanceY = pos.y; |
4631 | - dragging = true; |
4632 | - Mir.cursorName = "grabbing"; |
4633 | - } else { |
4634 | - dragging = false; |
4635 | - Mir.cursorName = ""; |
4636 | - } |
4637 | - } |
4638 | - onMouseXChanged: { |
4639 | - if (dragging) { |
4640 | - var pos = mapToItem(root.target.parent, mouseX, mouseY); |
4641 | - root.target.x = pos.x - distanceX; |
4642 | - root.target.y = pos.y - distanceY; |
4643 | - } |
4644 | - } |
4645 | - } |
4646 | - |
4647 | - Text { |
4648 | - visible: !root.cloned |
4649 | - anchors.top: parent.top |
4650 | - anchors.bottom: parent.bottom |
4651 | - text: "CLONE" |
4652 | - MouseArea { |
4653 | - anchors.fill: parent |
4654 | - onClicked: { |
4655 | - root.cloneRequested(); |
4656 | - } |
4657 | - } |
4658 | - } |
4659 | - |
4660 | - Text { |
4661 | - anchors.top: parent.top |
4662 | - anchors.bottom: parent.bottom |
4663 | - anchors.right: parent.right |
4664 | - width: contentWidth |
4665 | - text: "X" |
4666 | - fontSizeMode: Text.VerticalFit |
4667 | - minimumPixelSize: 10; font.pixelSize: 72 |
4668 | - font.weight: Font.Bold |
4669 | - horizontalAlignment: Text.AlignRight |
4670 | - verticalAlignment: Text.AlignVCenter |
4671 | - MouseArea { |
4672 | - anchors.fill: parent |
4673 | - onClicked: { |
4674 | - root.closeRequested = true; |
4675 | - } |
4676 | - } |
4677 | - } |
4678 | -} |
4679 | - |
4680 | |
4681 | === removed file 'miral-qt/demos/qml-demo-shell/UnityLogo.png' |
4682 | Binary files miral-qt/demos/qml-demo-shell/UnityLogo.png 2016-06-01 22:06:51 +0000 and miral-qt/demos/qml-demo-shell/UnityLogo.png 1970-01-01 00:00:00 +0000 differ |
4683 | === removed file 'miral-qt/demos/qml-demo-shell/Window.qml' |
4684 | --- miral-qt/demos/qml-demo-shell/Window.qml 2016-06-01 22:06:51 +0000 |
4685 | +++ miral-qt/demos/qml-demo-shell/Window.qml 1970-01-01 00:00:00 +0000 |
4686 | @@ -1,96 +0,0 @@ |
4687 | -import QtQuick 2.0 |
4688 | -import Unity.Application 0.1 |
4689 | - |
4690 | -Rectangle { |
4691 | - id: root |
4692 | - color: "red" |
4693 | - |
4694 | - property alias surface: surfaceItem.surface |
4695 | - property bool touchMode: false |
4696 | - |
4697 | - width: surfaceItem.implicitWidth + 2*borderThickness |
4698 | - height: surfaceItem.implicitHeight + 2*borderThickness + titleBar.height |
4699 | - |
4700 | - signal cloneRequested() |
4701 | - property bool cloned: false |
4702 | - |
4703 | - onTouchModeChanged: { |
4704 | - if (touchMode) { |
4705 | - x -= borderThicknessTouch - borderThicknessMouse; |
4706 | - width += 2*(borderThicknessTouch - borderThicknessMouse); |
4707 | - y -= borderThicknessTouch - borderThicknessMouse; |
4708 | - height += 2*(borderThicknessTouch - borderThicknessMouse); |
4709 | - } else { |
4710 | - x += borderThicknessTouch - borderThicknessMouse; |
4711 | - width -= 2*(borderThicknessTouch - borderThicknessMouse); |
4712 | - y += borderThicknessTouch - borderThicknessMouse; |
4713 | - height -= 2*(borderThicknessTouch - borderThicknessMouse); |
4714 | - } |
4715 | - } |
4716 | - |
4717 | - readonly property real minWidth: 100 |
4718 | - readonly property real minHeight: 100 |
4719 | - |
4720 | - property real borderThickness: touchMode ? borderThicknessTouch : borderThicknessMouse |
4721 | - readonly property real borderThicknessMouse: 10 |
4722 | - readonly property real borderThicknessTouch: 40 |
4723 | - |
4724 | - states: [ |
4725 | - State { |
4726 | - name: "closed" |
4727 | - when: (surface && !surface.live) || titleBar.closeRequested |
4728 | - } |
4729 | - ] |
4730 | - transitions: [ |
4731 | - Transition { |
4732 | - from: ""; to: "closed" |
4733 | - SequentialAnimation { |
4734 | - PropertyAnimation { |
4735 | - target: root |
4736 | - property: "scale" |
4737 | - easing.type: Easing.InBack |
4738 | - duration: 400 |
4739 | - from: 1.0 |
4740 | - to: 0.0 |
4741 | - } |
4742 | - ScriptAction { script: { root.destroy(); } } |
4743 | - } |
4744 | - } |
4745 | - ] |
4746 | - |
4747 | - ResizeArea { |
4748 | - anchors.fill: root |
4749 | - borderThickness: root.borderThickness |
4750 | - target: root |
4751 | - } |
4752 | - |
4753 | - TitleBar { |
4754 | - id: titleBar |
4755 | - anchors.left: parent.left |
4756 | - anchors.leftMargin: root.borderThickness |
4757 | - anchors.right: parent.right |
4758 | - anchors.rightMargin: root.borderThickness |
4759 | - anchors.top: parent.top |
4760 | - anchors.topMargin: root.borderThickness |
4761 | - |
4762 | - target: root |
4763 | - cloned: root.cloned |
4764 | - onCloneRequested: { root.cloneRequested(); } |
4765 | - } |
4766 | - |
4767 | - MirSurfaceItem { |
4768 | - id: surfaceItem |
4769 | - |
4770 | - anchors.top: titleBar.bottom |
4771 | - anchors.left: parent.left |
4772 | - anchors.leftMargin: root.borderThickness |
4773 | - anchors.right: parent.right |
4774 | - anchors.rightMargin: root.borderThickness |
4775 | - anchors.bottom: parent.bottom |
4776 | - anchors.bottomMargin: root.borderThickness |
4777 | - |
4778 | - consumesInput: !root.cloned |
4779 | - surfaceWidth: root.cloned ? -1 : width |
4780 | - surfaceHeight: root.cloned ? -1 : height |
4781 | - } |
4782 | -} |
4783 | |
4784 | === removed file 'miral-qt/demos/qml-demo-shell/WindowBufferSized.qml' |
4785 | --- miral-qt/demos/qml-demo-shell/WindowBufferSized.qml 2016-06-01 22:06:51 +0000 |
4786 | +++ miral-qt/demos/qml-demo-shell/WindowBufferSized.qml 1970-01-01 00:00:00 +0000 |
4787 | @@ -1,178 +0,0 @@ |
4788 | -import QtQuick 2.0 |
4789 | -import Unity.Application 0.1 |
4790 | - |
4791 | -Rectangle { |
4792 | - id: root |
4793 | - color: "red" |
4794 | - |
4795 | - property alias surface: surfaceItem.surface |
4796 | - property bool touchMode: false |
4797 | - |
4798 | - width: surfaceItem.width + (borderThickness*2) |
4799 | - height: surfaceItem.height + titleBar.height + (borderThickness*2) |
4800 | - |
4801 | - signal cloneRequested() |
4802 | - |
4803 | - onTouchModeChanged: { |
4804 | - if (touchMode) { |
4805 | - x -= borderThicknessTouch - borderThicknessMouse; |
4806 | - width += 2*(borderThicknessTouch - borderThicknessMouse); |
4807 | - y -= borderThicknessTouch - borderThicknessMouse; |
4808 | - height += 2*(borderThicknessTouch - borderThicknessMouse); |
4809 | - } else { |
4810 | - x += borderThicknessTouch - borderThicknessMouse; |
4811 | - width -= 2*(borderThicknessTouch - borderThicknessMouse); |
4812 | - y += borderThicknessTouch - borderThicknessMouse; |
4813 | - height -= 2*(borderThicknessTouch - borderThicknessMouse); |
4814 | - } |
4815 | - } |
4816 | - |
4817 | - readonly property real minWidth: 100 |
4818 | - readonly property real minHeight: 100 |
4819 | - |
4820 | - property real borderThickness: touchMode ? borderThicknessTouch : borderThicknessMouse |
4821 | - readonly property real borderThicknessMouse: 10 |
4822 | - readonly property real borderThicknessTouch: 40 |
4823 | - |
4824 | - states: [ |
4825 | - State { |
4826 | - name: "closed" |
4827 | - when: (surface && !surface.live) || titleBar.closeRequested |
4828 | - } |
4829 | - ] |
4830 | - transitions: [ |
4831 | - Transition { |
4832 | - from: ""; to: "closed" |
4833 | - SequentialAnimation { |
4834 | - PropertyAnimation { |
4835 | - target: root |
4836 | - property: "scale" |
4837 | - easing.type: Easing.InBack |
4838 | - duration: 400 |
4839 | - from: 1.0 |
4840 | - to: 0.0 |
4841 | - } |
4842 | - ScriptAction { script: { root.destroy(); } } |
4843 | - } |
4844 | - } |
4845 | - ] |
4846 | - |
4847 | - |
4848 | - MouseArea { |
4849 | - id: resizeArea |
4850 | - |
4851 | - anchors.fill: parent |
4852 | - |
4853 | - property real startX |
4854 | - property real startY |
4855 | - property real startWidth |
4856 | - property real startHeight |
4857 | - property bool leftBorder |
4858 | - property bool rightBorder |
4859 | - property bool topBorder |
4860 | - property bool bottomBorder |
4861 | - property bool dragging |
4862 | - onPressedChanged: { |
4863 | - if (pressed) { |
4864 | - var pos = mapToItem(root.parent, mouseX, mouseY); |
4865 | - startX = pos.x; |
4866 | - startY = pos.y; |
4867 | - startWidth = surfaceItem.width; |
4868 | - startHeight = surfaceItem.height; |
4869 | - leftBorder = mouseX > 0 && mouseX < root.borderThickness; |
4870 | - rightBorder = mouseX > (root.width - root.borderThickness) && mouseX < root.width; |
4871 | - topBorder = mouseY > 0 && mouseY < root.borderThickness; |
4872 | - bottomBorder = mouseY > (root.height - root.borderThickness) && mouseY < root.height; |
4873 | - dragging = true; |
4874 | - } else { |
4875 | - dragging = false; |
4876 | - } |
4877 | - } |
4878 | - |
4879 | - onMouseXChanged: { |
4880 | - if (!pressed || !dragging) { |
4881 | - return; |
4882 | - } |
4883 | - |
4884 | - var pos = mapToItem(root.parent, mouseX, mouseY); |
4885 | - |
4886 | - var deltaX = pos.x - startX; |
4887 | - if (leftBorder) { |
4888 | - if (startWidth - deltaX >= root.minWidth) { |
4889 | - surfaceItem.surfaceWidth = startWidth - deltaX; |
4890 | - } else { |
4891 | - surfaceItem.surfaceWidth = root.minWidth; |
4892 | - } |
4893 | - } else if (rightBorder) { |
4894 | - if (startWidth + deltaX >= root.minWidth) { |
4895 | - surfaceItem.surfaceWidth = startWidth + deltaX; |
4896 | - } else { |
4897 | - surfaceItem.surfaceWidth = root.minWidth; |
4898 | - } |
4899 | - } |
4900 | - } |
4901 | - |
4902 | - onMouseYChanged: { |
4903 | - if (!pressed || !dragging) { |
4904 | - return; |
4905 | - } |
4906 | - |
4907 | - var pos = mapToItem(root.parent, mouseX, mouseY); |
4908 | - |
4909 | - var deltaY = pos.y - startY; |
4910 | - if (topBorder) { |
4911 | - if (startHeight - deltaY >= root.minHeight) { |
4912 | - surfaceItem.surfaceHeight = startHeight - deltaY; |
4913 | - } else { |
4914 | - surfaceItem.surfaceHeight = root.minHeight; |
4915 | - } |
4916 | - } else if (bottomBorder) { |
4917 | - if (startHeight + deltaY >= root.minHeight) { |
4918 | - surfaceItem.surfaceHeight = startHeight + deltaY; |
4919 | - } else { |
4920 | - surfaceItem.surfaceHeight = root.minHeight; |
4921 | - } |
4922 | - } |
4923 | - } |
4924 | - } |
4925 | - |
4926 | - TitleBar { |
4927 | - id: titleBar |
4928 | - anchors.left: parent.left |
4929 | - anchors.leftMargin: root.borderThickness |
4930 | - anchors.right: parent.right |
4931 | - anchors.rightMargin: root.borderThickness |
4932 | - anchors.top: parent.top |
4933 | - anchors.topMargin: root.borderThickness |
4934 | - |
4935 | - target: root |
4936 | - cloned: root.cloned |
4937 | - onCloneRequested: { root.cloneRequested(); } |
4938 | - } |
4939 | - |
4940 | - MirSurfaceItem { |
4941 | - id: surfaceItem |
4942 | - |
4943 | - width: surface ? surface.size.width : 50 |
4944 | - height: surface ? surface.size.height : 50 |
4945 | - |
4946 | - onWidthChanged: { |
4947 | - if (resizeArea.dragging && resizeArea.leftBorder) { |
4948 | - root.x = resizeArea.startX + resizeArea.startWidth - surfaceItem.width; |
4949 | - } |
4950 | - } |
4951 | - |
4952 | - onHeightChanged: { |
4953 | - if (resizeArea.dragging && resizeArea.topBorder) { |
4954 | - root.y = resizeArea.startY + resizeArea.startHeight - surfaceItem.height; |
4955 | - } |
4956 | - } |
4957 | - |
4958 | - anchors.top: titleBar.bottom |
4959 | - anchors.left: parent.left |
4960 | - anchors.leftMargin: root.borderThickness |
4961 | - |
4962 | - consumesInput: true |
4963 | - } |
4964 | -} |
4965 | - |
4966 | |
4967 | === removed file 'miral-qt/demos/qml-demo-shell/main.cpp' |
4968 | --- miral-qt/demos/qml-demo-shell/main.cpp 2016-07-25 15:32:21 +0000 |
4969 | +++ miral-qt/demos/qml-demo-shell/main.cpp 1970-01-01 00:00:00 +0000 |
4970 | @@ -1,61 +0,0 @@ |
4971 | -/* |
4972 | - * Copyright (C) 2012-2015 Canonical, Ltd. |
4973 | - * |
4974 | - * This program is free software; you can redistribute it and/or modify |
4975 | - * it under the terms of the GNU General Public License as published by |
4976 | - * the Free Software Foundation; version 3. |
4977 | - * |
4978 | - * This program is distributed in the hope that it will be useful, |
4979 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4980 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4981 | - * GNU General Public License for more details. |
4982 | - * |
4983 | - * You should have received a copy of the GNU General Public License |
4984 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. |
4985 | - */ |
4986 | - |
4987 | -// Qt |
4988 | -#include <QCommandLineParser> |
4989 | -#include <QtQuick/QQuickView> |
4990 | -#include <QtGui/QGuiApplication> |
4991 | -#include <QtQml/QQmlEngine> |
4992 | -#include <QtQml/QQmlContext> |
4993 | -#include <QLibrary> |
4994 | -#include <QDebug> |
4995 | -#include <csignal> |
4996 | -#include <libintl.h> |
4997 | -#include "../paths.h" |
4998 | - |
4999 | -#include <private/qobject_p.h> |
5000 | - |
It would be slightly more convenient to merge the .bzr-builddeb, COPYING and debian changes in a separate commit, but not a blocker.