Compare commits
	
		
			214 Commits
		
	
	
		
			3.29.3
			...
			wip/fmuell
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					d0d0350a8c | ||
| 
						 | 
					e45e8a2a14 | ||
| 
						 | 
					38c1ebba62 | ||
| 
						 | 
					557b232c89 | ||
| 
						 | 
					b719744e75 | ||
| 
						 | 
					038f8b6ea5 | ||
| 
						 | 
					2ee321e0d8 | ||
| 
						 | 
					b4c674900f | ||
| 
						 | 
					3fa19e58ac | ||
| 
						 | 
					f460f2748d | ||
| 
						 | 
					8b215b2446 | ||
| 
						 | 
					0c0d76f7d6 | ||
| 
						 | 
					dd225713a1 | ||
| 
						 | 
					f4682748fa | ||
| 
						 | 
					b058e89166 | ||
| 
						 | 
					ac314cfb05 | ||
| 
						 | 
					fc342fe8c5 | ||
| 
						 | 
					dd4709bb27 | ||
| 
						 | 
					e9f4f2e8ae | ||
| 
						 | 
					197c0eee29 | ||
| 
						 | 
					034a723677 | ||
| 
						 | 
					efb3025d8c | ||
| 
						 | 
					81ec8215a0 | ||
| 
						 | 
					4be66ecf01 | ||
| 
						 | 
					2717ca9d08 | ||
| 
						 | 
					c6cea277eb | ||
| 
						 | 
					9a47b4b343 | ||
| 
						 | 
					0ec36fc5cf | ||
| 
						 | 
					a315e75e95 | ||
| 
						 | 
					e82c68accd | ||
| 
						 | 
					286ffbe2b6 | ||
| 
						 | 
					a3f5354abb | ||
| 
						 | 
					00613b304f | ||
| 
						 | 
					d44ffc1158 | ||
| 
						 | 
					501a1aff68 | ||
| 
						 | 
					586a9ff9cd | ||
| 
						 | 
					7190666075 | ||
| 
						 | 
					e2f6a1980d | ||
| 
						 | 
					669582ddbb | ||
| 
						 | 
					d9ad834eac | ||
| 
						 | 
					fffe58f829 | ||
| 
						 | 
					a35382d6fc | ||
| 
						 | 
					361955dbf9 | ||
| 
						 | 
					873c26ff12 | ||
| 
						 | 
					70a89cad45 | ||
| 
						 | 
					b1056759e6 | ||
| 
						 | 
					24e37fda02 | ||
| 
						 | 
					43b8d5e942 | ||
| 
						 | 
					deec047313 | ||
| 
						 | 
					ef5e195f32 | ||
| 
						 | 
					ed1136d36f | ||
| 
						 | 
					132eb2b1c5 | ||
| 
						 | 
					8d5e01856b | ||
| 
						 | 
					2b1f664aed | ||
| 
						 | 
					4609cf1912 | ||
| 
						 | 
					44b871da92 | ||
| 
						 | 
					3e29ab5441 | ||
| 
						 | 
					11fb91f60f | ||
| 
						 | 
					7ea034c719 | ||
| 
						 | 
					b2fabd9356 | ||
| 
						 | 
					0892b5dcdb | ||
| 
						 | 
					fb39cc5952 | ||
| 
						 | 
					969eecb88e | ||
| 
						 | 
					cdad6fadf5 | ||
| 
						 | 
					33ffdd6061 | ||
| 
						 | 
					34fd681936 | ||
| 
						 | 
					0cf2d396b0 | ||
| 
						 | 
					4a4fa8b2d7 | ||
| 
						 | 
					2ed6290a40 | ||
| 
						 | 
					94423151b2 | ||
| 
						 | 
					f42d9df3e0 | ||
| 
						 | 
					150a640c66 | ||
| 
						 | 
					a76b28bd72 | ||
| 
						 | 
					2ed70ca971 | ||
| 
						 | 
					179cd0a3c8 | ||
| 
						 | 
					fcdac69eea | ||
| 
						 | 
					9d6e1a89fc | ||
| 
						 | 
					87a645aa2b | ||
| 
						 | 
					b087752b55 | ||
| 
						 | 
					2d791a51c0 | ||
| 
						 | 
					7778d1c308 | ||
| 
						 | 
					9e975ed9ef | ||
| 
						 | 
					22531384f1 | ||
| 
						 | 
					1bdb3f194d | ||
| 
						 | 
					5d61e2563d | ||
| 
						 | 
					72f5802be9 | ||
| 
						 | 
					30cb2127a1 | ||
| 
						 | 
					3aea290adc | ||
| 
						 | 
					5b3ff7184e | ||
| 
						 | 
					760406002f | ||
| 
						 | 
					c47a740c83 | ||
| 
						 | 
					0fe5a3c0c4 | ||
| 
						 | 
					5bca4a884e | ||
| 
						 | 
					9c41736a81 | ||
| 
						 | 
					87da623d86 | ||
| 
						 | 
					3033506f2c | ||
| 
						 | 
					542f971176 | ||
| 
						 | 
					96c5404fd4 | ||
| 
						 | 
					afc7925e3e | ||
| 
						 | 
					c2e9e68df7 | ||
| 
						 | 
					bdbf804e69 | ||
| 
						 | 
					9718175f4d | ||
| 
						 | 
					0ba346b750 | ||
| 
						 | 
					614c4480e2 | ||
| 
						 | 
					f21f612ef7 | ||
| 
						 | 
					935de3e80f | ||
| 
						 | 
					0f541f60e8 | ||
| 
						 | 
					902c99c757 | ||
| 
						 | 
					f7029674b0 | ||
| 
						 | 
					dd7ccda168 | ||
| 
						 | 
					e207b45317 | ||
| 
						 | 
					6b5117677d | ||
| 
						 | 
					900398406c | ||
| 
						 | 
					461d2b1945 | ||
| 
						 | 
					6c2f11e8a4 | ||
| 
						 | 
					dbf993300a | ||
| 
						 | 
					f77b3da74f | ||
| 
						 | 
					bc6a38dda7 | ||
| 
						 | 
					f3a02057c1 | ||
| 
						 | 
					ad15ce9139 | ||
| 
						 | 
					5d178506bf | ||
| 
						 | 
					14cc9bfb1e | ||
| 
						 | 
					ce4c485f34 | ||
| 
						 | 
					1877a2e00a | ||
| 
						 | 
					b2fa7a6d8f | ||
| 
						 | 
					36c604d793 | ||
| 
						 | 
					9a5a4b2206 | ||
| 
						 | 
					3ab9e9e8ad | ||
| 
						 | 
					dd59212d3f | ||
| 
						 | 
					2b654ec310 | ||
| 
						 | 
					764fbbe052 | ||
| 
						 | 
					328c63bf64 | ||
| 
						 | 
					95788c9834 | ||
| 
						 | 
					9cf571efbd | ||
| 
						 | 
					dc4128c78b | ||
| 
						 | 
					73d8c82640 | ||
| 
						 | 
					2f7377b250 | ||
| 
						 | 
					804f23b179 | ||
| 
						 | 
					2be6ddc54e | ||
| 
						 | 
					dff4f0109e | ||
| 
						 | 
					2e663b2a94 | ||
| 
						 | 
					9f4aa6ebf2 | ||
| 
						 | 
					afe5703710 | ||
| 
						 | 
					02d06bb1f3 | ||
| 
						 | 
					3a78695bd9 | ||
| 
						 | 
					13e8c35d36 | ||
| 
						 | 
					3b8dfd98dd | ||
| 
						 | 
					6b610b26f8 | ||
| 
						 | 
					81956e9b84 | ||
| 
						 | 
					6b41f82346 | ||
| 
						 | 
					1fca090374 | ||
| 
						 | 
					da2fc2c9d3 | ||
| 
						 | 
					52cbc299a7 | ||
| 
						 | 
					9f436ce373 | ||
| 
						 | 
					d908940ef3 | ||
| 
						 | 
					eeda54f24d | ||
| 
						 | 
					b8b5da1e95 | ||
| 
						 | 
					3a9ad5c577 | ||
| 
						 | 
					d57dc94d9e | ||
| 
						 | 
					393d7246cc | ||
| 
						 | 
					6217c3b88d | ||
| 
						 | 
					ddd4fd9c24 | ||
| 
						 | 
					d2a97e7f1d | ||
| 
						 | 
					aa75e89216 | ||
| 
						 | 
					3f756dc608 | ||
| 
						 | 
					ed8e89bc19 | ||
| 
						 | 
					c90a4e4849 | ||
| 
						 | 
					f433b12d6e | ||
| 
						 | 
					7ca418a79a | ||
| 
						 | 
					a9ad91c831 | ||
| 
						 | 
					bd1c7774ee | ||
| 
						 | 
					91da3789bc | ||
| 
						 | 
					2991f9f102 | ||
| 
						 | 
					49d8ff38e7 | ||
| 
						 | 
					4b522a02c3 | ||
| 
						 | 
					ebe6f59d7e | ||
| 
						 | 
					e5c95b910d | ||
| 
						 | 
					2f76951658 | ||
| 
						 | 
					3efd296fc3 | ||
| 
						 | 
					6688610c23 | ||
| 
						 | 
					d2c75801ea | ||
| 
						 | 
					be84a00022 | ||
| 
						 | 
					da537cda43 | ||
| 
						 | 
					304c667bca | ||
| 
						 | 
					879a81abeb | ||
| 
						 | 
					e68ca5adbd | ||
| 
						 | 
					cf69fe4b18 | ||
| 
						 | 
					8f848925f6 | ||
| 
						 | 
					d21657fe61 | ||
| 
						 | 
					ce3555382b | ||
| 
						 | 
					837a00c3f0 | ||
| 
						 | 
					132c8e0cf8 | ||
| 
						 | 
					9c62522419 | ||
| 
						 | 
					0d5bae3844 | ||
| 
						 | 
					97f6a35b46 | ||
| 
						 | 
					43e8dfacb4 | ||
| 
						 | 
					0221099e7e | ||
| 
						 | 
					374caade47 | ||
| 
						 | 
					a5937d1d6d | ||
| 
						 | 
					e36ba874a8 | ||
| 
						 | 
					22392d1328 | ||
| 
						 | 
					0dee82fb9f | ||
| 
						 | 
					68f00f397f | ||
| 
						 | 
					905801b178 | ||
| 
						 | 
					4a7082bb0f | ||
| 
						 | 
					2e90c5fa4b | ||
| 
						 | 
					50e849a186 | ||
| 
						 | 
					e7f2e92410 | ||
| 
						 | 
					b1b455ff1a | ||
| 
						 | 
					ab4c72d758 | ||
| 
						 | 
					86a520b880 | ||
| 
						 | 
					4bf033a885 | ||
| 
						 | 
					e3ebc8d0c6 | ||
| 
						 | 
					fc5ab44704 | 
							
								
								
									
										2
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						@@ -1,3 +1,3 @@
 | 
			
		||||
[submodule "subprojects/gvc"]
 | 
			
		||||
	path = subprojects/gvc
 | 
			
		||||
	url = https://git.gnome.org/browse/libgnome-volume-control
 | 
			
		||||
	url = https://gitlab.gnome.org/GNOME/libgnome-volume-control.git
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										106
									
								
								NEWS
									
									
									
									
									
								
							
							
						
						@@ -1,3 +1,109 @@
 | 
			
		||||
3.30.1
 | 
			
		||||
======
 | 
			
		||||
* Cancel search on overview hiding [Marco; !205]
 | 
			
		||||
* Fix disappearing network icon [Iain; #140]
 | 
			
		||||
* Improve switch-monitor shortcut handling [Daniel; !208]
 | 
			
		||||
* Fix missing key information in keyring dialog [Florian; #574]
 | 
			
		||||
* De-duplicate all entries in run command history [Pascal; #524]
 | 
			
		||||
* Fix frozen disk unlock dialogs [Florian; #565]
 | 
			
		||||
* Fix unresponsive-app dialog blocking input in other windows [Florian; #273]
 | 
			
		||||
* Fix handling of forward-key-event input method signal [Carlos; #531]
 | 
			
		||||
* Misc. bug fixes [Florian, Marco, Carlos, Pascal, Andrea; #520, #791233,
 | 
			
		||||
  !188, #539, !217, #536, #537, #578, !236, #579, !228, #618, #471, !255]
 | 
			
		||||
 | 
			
		||||
Contributors:
 | 
			
		||||
  Andrea Azzarone, Jürg Billeter, Daniel Drake, Carlos Garnacho, Andre Klapper,
 | 
			
		||||
  Iain Lane, Florian Müllner, Bastien Nocera, Pascal Nowack, Jakub Steiner,
 | 
			
		||||
  Ray Strode, Will Thompson, Marco Trevisan (Treviño), Adam Williamson,
 | 
			
		||||
  Andrew Zaborowski
 | 
			
		||||
 | 
			
		||||
Translators:
 | 
			
		||||
  Yuras Shumovich [be], Stas Solovey [ru], Justin van Steijn [nl],
 | 
			
		||||
  Dušan Kazik [sk], Khaled Hosny [ar], Madis O [et], Mart Raudsepp [et],
 | 
			
		||||
  Марко Костић [sr], Piotr Drąg [pl], Marek Černocký [cs], Fran Dieguez [gl],
 | 
			
		||||
  Ask Hjorth Larsen [da], Balázs Meskó [hu], Jiri Grönroos [fi],
 | 
			
		||||
  Cheng-Chia Tseng [zh_TW]
 | 
			
		||||
 | 
			
		||||
3.30.0
 | 
			
		||||
======
 | 
			
		||||
 | 
			
		||||
Contributors:
 | 
			
		||||
  Harry Mallon, Marco Trevisan (Treviño)
 | 
			
		||||
 | 
			
		||||
Translators:
 | 
			
		||||
  Fran Dieguez [gl], Trần Ngọc Quân [vi], Balázs Meskó [hu],
 | 
			
		||||
  Rūdolfs Mazurs [lv], Jiri Grönroos [fi], Anders Jonsson [sv], gogo [hr],
 | 
			
		||||
  Ask Hjorth Larsen [da]
 | 
			
		||||
 | 
			
		||||
3.29.92
 | 
			
		||||
=======
 | 
			
		||||
* Choose some actors to cache on the GPU [Daniel; #792633]
 | 
			
		||||
* inputMethod: Hide preedit text if requested [Takao; #431]
 | 
			
		||||
* Fix forced fallback app-menus on wayland [Jonas; #276]
 | 
			
		||||
 | 
			
		||||
Contributors:
 | 
			
		||||
  Jonas Ådahl, Takao Fujiwara, Mohammed Sadiq, Marco Trevisan (Treviño),
 | 
			
		||||
  Daniel van Vugt
 | 
			
		||||
 | 
			
		||||
Translators:
 | 
			
		||||
  Baurzhan Muftakhidinov [kk], Kukuh Syafaat [id], Milo Casagrande [it],
 | 
			
		||||
  Changwoo Ryu [ko], Marek Cernocky [cs]
 | 
			
		||||
 | 
			
		||||
3.29.91
 | 
			
		||||
=======
 | 
			
		||||
* Fix handling of 0/false options in ShowOSD D-Bus API [Florian; #791669]
 | 
			
		||||
* overview: Fix handling of confirmation dialogs on wayland [verdre; !180]
 | 
			
		||||
* Avoid some full relayout/redraws [Carlos; !197]
 | 
			
		||||
* Keep workspace switcher slid out when workspaces are in use [Florian; !161]
 | 
			
		||||
* Ignore auto-repeat for some keybindings [Andrea; #373]
 | 
			
		||||
* Misc. bug fixes [Carlos, Florian, Pascal; #464, !189, !191, !192, !162]
 | 
			
		||||
 | 
			
		||||
Contributors:
 | 
			
		||||
  Andrea Azzarone, Olivier Blin, Carlos Garnacho, Florian Müllner,
 | 
			
		||||
  Pascal Nowack, verdre
 | 
			
		||||
 | 
			
		||||
Translators:
 | 
			
		||||
  Bruno Lopes da Silva [pt_BR], Matej Urbančič [sl], Piotr Drąg [pl],
 | 
			
		||||
  Aurimas Černius [lt], Emin Tufan Çetin [tr], Fabio Tomat [fur],
 | 
			
		||||
  Alexandre Franke [fr], Yi-Jyun Pan [zh_TW], Bernd Homuth [de],
 | 
			
		||||
  Andre Klapper [cs], Jordi Mas [ca], Daniel Șerbănescu [ro],
 | 
			
		||||
  Bruce Cowan [en_GB]
 | 
			
		||||
 | 
			
		||||
3.29.90
 | 
			
		||||
=======
 | 
			
		||||
* Add remote access indication on wayland [Jonas; !160]
 | 
			
		||||
* Fix wrong window positions in overview on wayland [Marco; #776588]
 | 
			
		||||
* Add gesture to unfullscreen a window [Jan-Michael; !123]
 | 
			
		||||
* Add PickColor method to screenshot D-Bus interface [Florian; #286]
 | 
			
		||||
* Consider "new-window" action when opening new windows [Florian; #756844]
 | 
			
		||||
* Make workspace switching gestures follow motion [Carlos; #788994]
 | 
			
		||||
* Support audio volumes above 100% [Didier; #790280]
 | 
			
		||||
* Misc. bug fixes [Florian, Daniel; #424, !132, !182, #433, !179, #786496]
 | 
			
		||||
 | 
			
		||||
Contributors:
 | 
			
		||||
  Jonas Ådahl, Jan-Michael Brummer, Piotr Drąg, Daniel Drake, Carlos Garnacho,
 | 
			
		||||
  Florian Müllner, Georges Basile Stavracas Neto, Didier Roche, Jakub Steiner,
 | 
			
		||||
  Marco Trevisan (Treviño)
 | 
			
		||||
 | 
			
		||||
Translators:
 | 
			
		||||
  Charles Monzat [fr], Daniel Mustieles [es]
 | 
			
		||||
 | 
			
		||||
3.29.4
 | 
			
		||||
======
 | 
			
		||||
* Fix "Clear All" for calendar events [Florian; #325]
 | 
			
		||||
* Allow cancelling direct switch operations [Xavier; #315]
 | 
			
		||||
* Support being started by systemd --user [Iain; !137, !138]
 | 
			
		||||
* Support key event forwarding required by some input methods [Carlos; #275]
 | 
			
		||||
* Misc. bug fixes and cleanups [Jasper, Andrea, Florian; #663461, #372, !112,
 | 
			
		||||
  #414, !151]
 | 
			
		||||
 | 
			
		||||
Contributors:
 | 
			
		||||
  Andrea Azzarone, Carlos Garnacho, Xavier Johnson, Iain Lane, Florian Müllner,
 | 
			
		||||
  Jasper St. Pierre
 | 
			
		||||
 | 
			
		||||
Translators:
 | 
			
		||||
  Stas Solovey [ru]
 | 
			
		||||
 | 
			
		||||
3.29.3
 | 
			
		||||
======
 | 
			
		||||
* Save creation time in screenshot metadata [Florian; #790481]
 | 
			
		||||
 
 | 
			
		||||
@@ -7,7 +7,7 @@ easy to use experience.
 | 
			
		||||
 | 
			
		||||
For more information about GNOME Shell, including instructions on how
 | 
			
		||||
to build GNOME Shell from source and how to get involved with the project,
 | 
			
		||||
see the [project wiki][wiki]
 | 
			
		||||
see the [project wiki][project-wiki].
 | 
			
		||||
 | 
			
		||||
Bugs should be reported to the GNOME [bug tracking system][bug-tracker].
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -24,3 +24,9 @@
 | 
			
		||||
 | 
			
		||||
/* Define if _NL_TIME_FIRST_WEEKDATE is available */
 | 
			
		||||
#mesondefine HAVE__NL_TIME_FIRST_WEEKDAY
 | 
			
		||||
 | 
			
		||||
/* Define if you have the `g_desktop_app_info_launch_uris_as_manager_with_fds` function */
 | 
			
		||||
#mesondefine HAVE_GIO_DESKTOP_LAUNCH_URIS_WITH_FDS
 | 
			
		||||
 | 
			
		||||
/* Define if fdwalk is available in libc */
 | 
			
		||||
#mesondefine HAVE_FDWALK
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								data/00_org.gnome.shell.gschema.override
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,6 @@
 | 
			
		||||
[org.gnome.mutter:GNOME]
 | 
			
		||||
attach-modal-dialogs=true
 | 
			
		||||
edge-tiling=true
 | 
			
		||||
dynamic-workspaces=true
 | 
			
		||||
workspaces-only-on-primary=true
 | 
			
		||||
focus-change-on-pointer-rest=true
 | 
			
		||||
							
								
								
									
										9
									
								
								data/dbus-interfaces/meson.build
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,9 @@
 | 
			
		||||
dbus_interfaces = [
 | 
			
		||||
  'org.gnome.Shell.Extensions.xml',
 | 
			
		||||
  'org.gnome.Shell.PadOsd.xml',
 | 
			
		||||
  'org.gnome.Shell.Screencast.xml',
 | 
			
		||||
  'org.gnome.Shell.Screenshot.xml',
 | 
			
		||||
  'org.gnome.ShellSearchProvider.xml',
 | 
			
		||||
  'org.gnome.ShellSearchProvider2.xml'
 | 
			
		||||
]
 | 
			
		||||
install_data(dbus_interfaces, install_dir: ifacedir)
 | 
			
		||||
							
								
								
									
										5
									
								
								data/dbus-interfaces/net.hadess.SensorProxy.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,5 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="net.hadess.SensorProxy">
 | 
			
		||||
    <property name="HasAccelerometer" type="b" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										5
									
								
								data/dbus-interfaces/net.hadess.SwitcherooControl.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,5 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="net.hadess.SwitcherooControl">
 | 
			
		||||
    <property name="HasDualGpu" type="b" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										32
									
								
								data/dbus-interfaces/org.Gtk.MountOperationHandler.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,32 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.Gtk.MountOperationHandler">
 | 
			
		||||
    <method name="AskPassword">
 | 
			
		||||
      <arg type="s" direction="in" name="object_id"/>
 | 
			
		||||
      <arg type="s" direction="in" name="message"/>
 | 
			
		||||
      <arg type="s" direction="in" name="icon_name"/>
 | 
			
		||||
      <arg type="s" direction="in" name="default_user"/>
 | 
			
		||||
      <arg type="s" direction="in" name="default_domain"/>
 | 
			
		||||
      <arg type="u" direction="in" name="flags"/>
 | 
			
		||||
      <arg type="u" direction="out" name="response"/>
 | 
			
		||||
      <arg type="a{sv}" direction="out" name="response_details"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="AskQuestion">
 | 
			
		||||
      <arg type="s" direction="in" name="object_id"/>
 | 
			
		||||
      <arg type="s" direction="in" name="message"/>
 | 
			
		||||
      <arg type="s" direction="in" name="icon_name"/>
 | 
			
		||||
      <arg type="as" direction="in" name="choices"/>
 | 
			
		||||
      <arg type="u" direction="out" name="response"/>
 | 
			
		||||
      <arg type="a{sv}" direction="out" name="response_details"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="ShowProcesses">
 | 
			
		||||
      <arg type="s" direction="in" name="object_id"/>
 | 
			
		||||
      <arg type="s" direction="in" name="message"/>
 | 
			
		||||
      <arg type="s" direction="in" name="icon_name"/>
 | 
			
		||||
      <arg type="ai" direction="in" name="application_pids"/>
 | 
			
		||||
      <arg type="as" direction="in" name="choices"/>
 | 
			
		||||
      <arg type="u" direction="out" name="response"/>
 | 
			
		||||
      <arg type="a{sv}" direction="out" name="response_details"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Close"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										12
									
								
								data/dbus-interfaces/org.freedesktop.Application.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,12 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.Application">
 | 
			
		||||
    <method name="ActivateAction">
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="av" direction="in"/>
 | 
			
		||||
      <arg type="a{sv}" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Activate">
 | 
			
		||||
      <arg type="a{sv}" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										16
									
								
								data/dbus-interfaces/org.freedesktop.DBus.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,16 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.DBus">
 | 
			
		||||
    <method name="ListNames">
 | 
			
		||||
      <arg type="as" direction="out" name="names"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetConnectionUnixProcessID">
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="NameOwnerChanged">
 | 
			
		||||
      <arg type="s" direction="out" name="name"/>
 | 
			
		||||
      <arg type="s" direction="out" name="oldOwner"/>
 | 
			
		||||
      <arg type="s" direction="out" name="newOwner"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										11
									
								
								data/dbus-interfaces/org.freedesktop.GeoClue2.Agent.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,11 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.GeoClue2.Agent">
 | 
			
		||||
    <property name="MaxAccuracyLevel" type="u" access="read"/>
 | 
			
		||||
    <method name="AuthorizeApp">
 | 
			
		||||
      <arg name="desktop_id" type="s" direction="in"/>
 | 
			
		||||
      <arg name="req_accuracy_level" type="u" direction="in"/>
 | 
			
		||||
      <arg name="authorized" type="b" direction="out"/>
 | 
			
		||||
      <arg name="allowed_accuracy_level" type="u" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,9 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.GeoClue2.Manager">
 | 
			
		||||
    <property name="InUse" type="b" access="read"/>
 | 
			
		||||
    <property name="AvailableAccuracyLevel" type="u" access="read"/>
 | 
			
		||||
    <method name="AddAgent">
 | 
			
		||||
      <arg name="id" type="s" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,13 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.ModemManager.Modem.Cdma">
 | 
			
		||||
    <method name="GetSignalQuality">
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetServingSystem">
 | 
			
		||||
      <arg type="(usu)" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="SignalQuality">
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,19 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.ModemManager.Modem.Gsm.Network">
 | 
			
		||||
    <method name="GetRegistrationInfo">
 | 
			
		||||
      <arg type="(uss)" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetSignalQuality">
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <property name="AccessTechnology" type="u" access="read"/>
 | 
			
		||||
    <signal name="SignalQuality">
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
    <signal name="RegistrationInfo">
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,6 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.ModemManager1.Modem.Modem3gpp">
 | 
			
		||||
    <property name="OperatorCode" type="s" access="read"/>
 | 
			
		||||
    <property name="OperatorName" type="s" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,5 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.ModemManager1.Modem.ModemCdma">
 | 
			
		||||
    <property name="Sid" type="u" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,5 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.ModemManager1.Modem">
 | 
			
		||||
    <property name="SignalQuality" type="(ub)" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										35
									
								
								data/dbus-interfaces/org.freedesktop.Notifications.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,35 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.Notifications">
 | 
			
		||||
    <method name="Notify">
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="as" direction="in"/>
 | 
			
		||||
      <arg type="a{sv}" direction="in"/>
 | 
			
		||||
      <arg type="i" direction="in"/>
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="CloseNotification">
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetCapabilities">
 | 
			
		||||
      <arg type="as" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetServerInformation">
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="NotificationClosed">
 | 
			
		||||
      <arg type="u"/>
 | 
			
		||||
      <arg type="u"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
    <signal name="ActionInvoked">
 | 
			
		||||
      <arg type="u"/>
 | 
			
		||||
      <arg type="s"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										13
									
								
								data/dbus-interfaces/org.freedesktop.PackageKit.Offline.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,13 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.PackageKit.Offline">
 | 
			
		||||
    <property name="UpdatePrepared" type="b" access="read"/>
 | 
			
		||||
    <property name="UpdateTriggered" type="b" access="read"/>
 | 
			
		||||
    <property name="UpgradePrepared" type="b" access="read"/>
 | 
			
		||||
    <property name="UpgradeTriggered" type="b" access="read"/>
 | 
			
		||||
    <property name="PreparedUpgrade" type="a{sv}" access="read"/>
 | 
			
		||||
    <method name="Trigger">
 | 
			
		||||
      <arg type="s" name="action" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Cancel"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										11
									
								
								data/dbus-interfaces/org.freedesktop.UPower.Device.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,11 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.UPower.Device">
 | 
			
		||||
    <property name="Type" type="u" access="read"/>
 | 
			
		||||
    <property name="State" type="u" access="read"/>
 | 
			
		||||
    <property name="Percentage" type="d" access="read"/>
 | 
			
		||||
    <property name="TimeToEmpty" type="x" access="read"/>
 | 
			
		||||
    <property name="TimeToFull" type="x" access="read"/>
 | 
			
		||||
    <property name="IsPresent" type="b" access="read"/>
 | 
			
		||||
    <property name="IconName" type="s" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										5
									
								
								data/dbus-interfaces/org.freedesktop.UPower.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,5 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.UPower">
 | 
			
		||||
    <property name="OnBattery" type="b" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										18
									
								
								data/dbus-interfaces/org.freedesktop.bolt1.Device.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,18 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.bolt1.Device">
 | 
			
		||||
    <property name="Uid" type="s" access="read"></property>
 | 
			
		||||
    <property name="Name" type="s" access="read"></property>
 | 
			
		||||
    <property name="Vendor" type="s" access="read"></property>
 | 
			
		||||
    <property name="Type" type="s" access="read"></property>
 | 
			
		||||
    <property name="Status" type="s" access="read"></property>
 | 
			
		||||
    <property name="Parent" type="s" access="read"></property>
 | 
			
		||||
    <property name="SysfsPath" type="s" access="read"></property>
 | 
			
		||||
    <property name="Stored" type="b" access="read"></property>
 | 
			
		||||
    <property name="Policy" type="s" access="read"></property>
 | 
			
		||||
    <property name="Key" type="s" access="read"></property>
 | 
			
		||||
    <property name="Label" type="s" access="read"></property>
 | 
			
		||||
    <property name="ConnectTime" type="t" access="read"></property>
 | 
			
		||||
    <property name="AuthorizeTime" type="t" access="read"></property>
 | 
			
		||||
    <property name="StoreTime" type="t" access="read"></property>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										15
									
								
								data/dbus-interfaces/org.freedesktop.bolt1.Manager.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,15 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.bolt1.Manager">
 | 
			
		||||
    <property name="Probing" type="b" access="read"></property>
 | 
			
		||||
    <property name="AuthMode" type="s" access="readwrite"></property>
 | 
			
		||||
    <method name="EnrollDevice">
 | 
			
		||||
      <arg type="s" name="uid" direction="in"/>
 | 
			
		||||
      <arg type="s" name="policy" direction="in"/>
 | 
			
		||||
      <arg type="s" name="flags" direction="in"/>
 | 
			
		||||
      <arg name="device" direction="out" type="o"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="DeviceAdded">
 | 
			
		||||
      <arg name="device" type="o"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										15
									
								
								data/dbus-interfaces/org.freedesktop.impl.portal.Access.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,15 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.impl.portal.Access">
 | 
			
		||||
    <method name="AccessDialog">
 | 
			
		||||
      <arg type="o" name="handle" direction="in"/>
 | 
			
		||||
      <arg type="s" name="app_id" direction="in"/>
 | 
			
		||||
      <arg type="s" name="parent_window" direction="in"/>
 | 
			
		||||
      <arg type="s" name="title" direction="in"/>
 | 
			
		||||
      <arg type="s" name="subtitle" direction="in"/>
 | 
			
		||||
      <arg type="s" name="body" direction="in"/>
 | 
			
		||||
      <arg type="a{sv}" name="options" direction="in"/>
 | 
			
		||||
      <arg type="u" name="response" direction="out"/>
 | 
			
		||||
      <arg type="a{sv}" name="results" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,24 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.impl.portal.PermissionStore">
 | 
			
		||||
    <method name="Lookup">
 | 
			
		||||
      <arg name="table" type="s" direction="in"/>
 | 
			
		||||
      <arg name="id" type="s" direction="in"/>
 | 
			
		||||
      <arg name="permissions" type="a{sas}" direction="out"/>
 | 
			
		||||
      <arg name="data" type="v" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Set">
 | 
			
		||||
      <arg name="table" type="s" direction="in"/>
 | 
			
		||||
      <arg name="create" type="b" direction="in"/>
 | 
			
		||||
      <arg name="id" type="s" direction="in"/>
 | 
			
		||||
      <arg name="app_permissions" type="a{sas}" direction="in"/>
 | 
			
		||||
      <arg name="data" type="v" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="Changed">
 | 
			
		||||
      <arg name="table" type="s" direction="out"/>
 | 
			
		||||
      <arg name="id" type="s" direction="out"/>
 | 
			
		||||
      <arg name="deleted" type="b" direction="out"/>
 | 
			
		||||
      <arg name="data" type="v" direction="out"/>
 | 
			
		||||
      <arg name="permissions" type="a{sas}" direction="out"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,5 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.impl.portal.Request">
 | 
			
		||||
    <method name="Close"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										27
									
								
								data/dbus-interfaces/org.freedesktop.login1.Manager.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,27 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.login1.Manager">
 | 
			
		||||
    <method name="Suspend">
 | 
			
		||||
      <arg type="b" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="CanSuspend">
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Inhibit">
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="h" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetSession">
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="o" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="ListSessions">
 | 
			
		||||
      <arg name="sessions" type="a(susso)" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="PrepareForSleep">
 | 
			
		||||
      <arg type="b" direction="out"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										15
									
								
								data/dbus-interfaces/org.freedesktop.login1.Session.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,15 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.login1.Session">
 | 
			
		||||
    <signal name="Lock"/>
 | 
			
		||||
    <signal name="Unlock"/>
 | 
			
		||||
    <property name="Active" type="b" access="read"/>
 | 
			
		||||
    <property name="Class" type="s" access="read"/>
 | 
			
		||||
    <property name="Id" type="s" access="read"/>
 | 
			
		||||
    <property name="Remote" type="b" access="read"/>
 | 
			
		||||
    <property name="Type" type="s" access="read"/>
 | 
			
		||||
    <property name="State" type="s" access="read"/>
 | 
			
		||||
    <method name="SetLockedHint">
 | 
			
		||||
      <arg type="b" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										6
									
								
								data/dbus-interfaces/org.freedesktop.login1.User.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,6 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.login1.User">
 | 
			
		||||
    <property name="Display" type="(so)" access="read"/>
 | 
			
		||||
    <property name="Sessions" type="a(so)" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										13
									
								
								data/dbus-interfaces/org.freedesktop.realmd.Provider.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,13 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.realmd.Provider">
 | 
			
		||||
    <property name="Name" type="s" access="read"/>
 | 
			
		||||
    <property name="Version" type="s" access="read"/>
 | 
			
		||||
    <property name="Realms" type="ao" access="read"/>
 | 
			
		||||
    <method name="Discover">
 | 
			
		||||
      <arg name="string" type="s" direction="in"/>
 | 
			
		||||
      <arg name="options" type="a{sv}" direction="in"/>
 | 
			
		||||
      <arg name="relevance" type="i" direction="out"/>
 | 
			
		||||
      <arg name="realm" type="ao" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										20
									
								
								data/dbus-interfaces/org.freedesktop.realmd.Realm.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,20 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.realmd.Realm">
 | 
			
		||||
    <property name="Name" type="s" access="read"/>
 | 
			
		||||
    <property name="Configured" type="s" access="read"/>
 | 
			
		||||
    <property name="Details" type="a(ss)" access="read"/>
 | 
			
		||||
    <property name="LoginFormats" type="as" access="read"/>
 | 
			
		||||
    <property name="LoginPolicy" type="s" access="read"/>
 | 
			
		||||
    <property name="PermittedLogins" type="as" access="read"/>
 | 
			
		||||
    <property name="SupportedInterfaces" type="as" access="read"/>
 | 
			
		||||
    <method name="ChangeLoginPolicy">
 | 
			
		||||
      <arg name="login_policy" type="s" direction="in"/>
 | 
			
		||||
      <arg name="permitted_add" type="as" direction="in"/>
 | 
			
		||||
      <arg name="permitted_remove" type="as" direction="in"/>
 | 
			
		||||
      <arg name="options" type="a{sv}" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Deconfigure">
 | 
			
		||||
      <arg name="options" type="a{sv}" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										15
									
								
								data/dbus-interfaces/org.freedesktop.realmd.Service.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,15 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.freedesktop.realmd.Service">
 | 
			
		||||
    <method name="Cancel">
 | 
			
		||||
      <arg name="operation" type="s" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Release"/>
 | 
			
		||||
    <method name="SetLocale">
 | 
			
		||||
      <arg name="locale" type="s" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="Diagnostics">
 | 
			
		||||
      <arg name="data" type="s"/>
 | 
			
		||||
      <arg name="operation" type="s"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										26
									
								
								data/dbus-interfaces/org.gnome.Magnifier.ZoomRegion.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,26 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.Magnifier.ZoomRegion">
 | 
			
		||||
    <method name="setMagFactor">
 | 
			
		||||
      <arg type="d" direction="in"/>
 | 
			
		||||
      <arg type="d" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="getMagFactor">
 | 
			
		||||
      <arg type="d" direction="out"/>
 | 
			
		||||
      <arg type="d" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="setRoi">
 | 
			
		||||
      <arg type="ai" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="getRoi">
 | 
			
		||||
      <arg type="ai" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="shiftContentsTo">
 | 
			
		||||
      <arg type="i" direction="in"/>
 | 
			
		||||
      <arg type="i" direction="in"/>
 | 
			
		||||
      <arg type="b" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="moveResize">
 | 
			
		||||
      <arg type="ai" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										54
									
								
								data/dbus-interfaces/org.gnome.Magnifier.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,54 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.Magnifier">
 | 
			
		||||
    <method name="setActive">
 | 
			
		||||
      <arg type="b" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="isActive">
 | 
			
		||||
      <arg type="b" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="showCursor"/>
 | 
			
		||||
    <method name="hideCursor"/>
 | 
			
		||||
    <method name="createZoomRegion">
 | 
			
		||||
      <arg type="d" direction="in"/>
 | 
			
		||||
      <arg type="d" direction="in"/>
 | 
			
		||||
      <arg type="ai" direction="in"/>
 | 
			
		||||
      <arg type="ai" direction="in"/>
 | 
			
		||||
      <arg type="o" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="addZoomRegion">
 | 
			
		||||
      <arg type="o" direction="in"/>
 | 
			
		||||
      <arg type="b" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="getZoomRegions">
 | 
			
		||||
      <arg type="ao" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="clearAllZoomRegions"/>
 | 
			
		||||
    <method name="fullScreenCapable">
 | 
			
		||||
      <arg type="b" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="setCrosswireSize">
 | 
			
		||||
      <arg type="i" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="getCrosswireSize">
 | 
			
		||||
      <arg type="i" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="setCrosswireLength">
 | 
			
		||||
      <arg type="i" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="getCrosswireLength">
 | 
			
		||||
      <arg type="i" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="setCrosswireClip">
 | 
			
		||||
      <arg type="b" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="getCrosswireClip">
 | 
			
		||||
      <arg type="b" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="setCrosswireColor">
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="getCrosswireColor">
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										18
									
								
								data/dbus-interfaces/org.gnome.ScreenSaver.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,18 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.ScreenSaver">
 | 
			
		||||
    <method name="Lock"/>
 | 
			
		||||
    <method name="GetActive">
 | 
			
		||||
      <arg type="b" direction="out" name="active"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="SetActive">
 | 
			
		||||
      <arg type="b" direction="in" name="value"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetActiveTime">
 | 
			
		||||
      <arg type="u" direction="out" name="value"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="ActiveChanged">
 | 
			
		||||
      <arg name="new_value" type="b"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
    <signal name="WakeUpScreen"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,16 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.SessionManager.EndSessionDialog">
 | 
			
		||||
    <method name="Open">
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
      <arg type="ao" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Close"/>
 | 
			
		||||
    <signal name="ConfirmedLogout"/>
 | 
			
		||||
    <signal name="ConfirmedReboot"/>
 | 
			
		||||
    <signal name="ConfirmedShutdown"/>
 | 
			
		||||
    <signal name="Canceled"/>
 | 
			
		||||
    <signal name="Closed"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										10
									
								
								data/dbus-interfaces/org.gnome.SessionManager.Inhibitor.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,10 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.SessionManager.Inhibitor">
 | 
			
		||||
    <method name="GetAppId">
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetReason">
 | 
			
		||||
      <arg type="s" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										11
									
								
								data/dbus-interfaces/org.gnome.SessionManager.Presence.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,11 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.SessionManager.Presence">
 | 
			
		||||
    <method name="SetStatus">
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <property name="status" type="u" access="readwrite"/>
 | 
			
		||||
    <signal name="StatusChanged">
 | 
			
		||||
      <arg type="u" direction="out"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										23
									
								
								data/dbus-interfaces/org.gnome.SessionManager.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,23 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.SessionManager">
 | 
			
		||||
    <method name="Logout">
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Shutdown"/>
 | 
			
		||||
    <method name="Reboot"/>
 | 
			
		||||
    <method name="CanShutdown">
 | 
			
		||||
      <arg type="b" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="IsInhibited">
 | 
			
		||||
      <arg type="u" direction="in"/>
 | 
			
		||||
      <arg type="b" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <property name="SessionIsActive" type="b" access="read"/>
 | 
			
		||||
    <signal name="InhibitorAdded">
 | 
			
		||||
      <arg type="o" direction="out"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
    <signal name="InhibitorRemoved">
 | 
			
		||||
      <arg type="o" direction="out"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										6
									
								
								data/dbus-interfaces/org.gnome.SettingsDaemon.Color.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,6 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.SettingsDaemon.Color">
 | 
			
		||||
    <property name="DisabledUntilTomorrow" type="b" access="readwrite"/>
 | 
			
		||||
    <property name="NightLightActive" type="b" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,5 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.SettingsDaemon.Power.Screen">
 | 
			
		||||
    <property name="Brightness" type="i" access="readwrite"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										10
									
								
								data/dbus-interfaces/org.gnome.SettingsDaemon.Rfkill.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,10 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.SettingsDaemon.Rfkill">
 | 
			
		||||
    <property name="AirplaneMode" type="b" access="readwrite"/>
 | 
			
		||||
    <property name="HardwareAirplaneMode" type="b" access="read"/>
 | 
			
		||||
    <property name="BluetoothAirplaneMode" type="b" access="readwrite"/>
 | 
			
		||||
    <property name="BluetoothHasAirplaneMode" type="b" access="read"/>
 | 
			
		||||
    <property name="BluetoothHardwareAirplaneMode" type="b" access="readwrite"/>
 | 
			
		||||
    <property name="ShouldShowAirplaneMode" type="b" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										13
									
								
								data/dbus-interfaces/org.gnome.SettingsDaemon.Wacom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,13 @@
 | 
			
		||||
<node>
 | 
			
		||||
<interface name="org.gnome.SettingsDaemon.Wacom">
 | 
			
		||||
  <method name="SetGroupModeLED">
 | 
			
		||||
    <arg name="device_path" direction="in" type="s"/>
 | 
			
		||||
    <arg name="group" direction="in" type="u"/>
 | 
			
		||||
    <arg name="mode" direction="in" type="u"/>
 | 
			
		||||
  </method>
 | 
			
		||||
  <method name="SetOLEDLabels">
 | 
			
		||||
    <arg name="device_path" direction="in" type="s"/>
 | 
			
		||||
    <arg name="labels" direction="in" type="as"/>
 | 
			
		||||
  </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -0,0 +1,12 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.Shell.AudioDeviceSelection">
 | 
			
		||||
    <method name="Open">
 | 
			
		||||
      <arg name="devices" direction="in" type="as"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Close">
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="DeviceSelected">
 | 
			
		||||
      <arg name="device" type="s"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										205
									
								
								data/dbus-interfaces/org.gnome.Shell.Extensions.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,205 @@
 | 
			
		||||
<!DOCTYPE node PUBLIC
 | 
			
		||||
'-//freedesktop//DTD D-BUS Object Introspection 1.0//EN'
 | 
			
		||||
'http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd'>
 | 
			
		||||
<node>
 | 
			
		||||
 | 
			
		||||
  <!--
 | 
			
		||||
      org.gnome.Shell.Extensions:
 | 
			
		||||
      @short_description: Extensions interface
 | 
			
		||||
 | 
			
		||||
      The interface used to query and manage extensions.
 | 
			
		||||
  -->
 | 
			
		||||
  <interface name="org.gnome.Shell.Extensions">
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        ListExtensions:
 | 
			
		||||
        @extensions: A dictionary of extension infos
 | 
			
		||||
 | 
			
		||||
        Get a list of installed extensions. The returned @extensions
 | 
			
		||||
        dictionary maps extension UUIDs to info vardicts. See
 | 
			
		||||
        GetExtensionInfo() for documentation on possible keys.
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="ListExtensions">
 | 
			
		||||
      <arg type="a{sa{sv}}" direction="out" name="extensions"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        GetExtensionInfo:
 | 
			
		||||
        @uuid: The UUID of the extension
 | 
			
		||||
        @info: The returned extension info
 | 
			
		||||
 | 
			
		||||
        The information returned in the @info vardict depends on the
 | 
			
		||||
        metadata the extension provides, however it is guaranteed to
 | 
			
		||||
        contain the following keys:
 | 
			
		||||
 | 
			
		||||
        <variablelist>
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>uuid s</term>
 | 
			
		||||
            <listitem><para>The UUID of the extension</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>name s</term>
 | 
			
		||||
            <listitem><para>The name of the extension</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>description s</term>
 | 
			
		||||
            <listitem><para>
 | 
			
		||||
              A short summary that describes what the extension does
 | 
			
		||||
            </para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>shell-version as</term>
 | 
			
		||||
            <listitem><para>An array of support shell versions</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>type d</term>
 | 
			
		||||
            <listitem><para>
 | 
			
		||||
              The type of extension:
 | 
			
		||||
              <simplelist>
 | 
			
		||||
                <member>1: SYSTEM</member>
 | 
			
		||||
                <member>2: PER_USER</member>
 | 
			
		||||
              </simplelist>
 | 
			
		||||
            </para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>state d</term>
 | 
			
		||||
            <listitem><para>
 | 
			
		||||
              The state the extension is in:
 | 
			
		||||
              <simplelist>
 | 
			
		||||
                <member>1: ENABLED</member>
 | 
			
		||||
                <member>2: DISABLED</member>
 | 
			
		||||
                <member>3: ERROR</member>
 | 
			
		||||
                <member>4: OUT_OF_DATE</member>
 | 
			
		||||
                <member>5: DOWNLOADING</member>
 | 
			
		||||
                <member>6: INITIALIZED</member>
 | 
			
		||||
                <member>99: UNINSTALLED</member>
 | 
			
		||||
              </simplelist>
 | 
			
		||||
            </para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>path s</term>
 | 
			
		||||
            <listitem><para>The extension directory</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>error s</term>
 | 
			
		||||
            <listitem><para>The most recent error caught in init(), enable() or disable()</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>hasPrefs b</term>
 | 
			
		||||
            <listitem><para>Whether the extension includes preference UI</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
        </variablelist>
 | 
			
		||||
 | 
			
		||||
        By convention, many extensions will also include the following keys:
 | 
			
		||||
        <variablelist>
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>version d</term>
 | 
			
		||||
            <listitem><para>The extension version</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>url s</term>
 | 
			
		||||
            <listitem><para>The URL to the extension homepage or repository</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>settings-schema s</term>
 | 
			
		||||
            <listitem><para>The ID of a bundled GSettings schema</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>gettext-domain s</term>
 | 
			
		||||
            <listitem><para>The domain used for translations</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
        </variablelist>
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="GetExtensionInfo">
 | 
			
		||||
      <arg type="s" direction="in" name="uuid"/>
 | 
			
		||||
      <arg type="a{sv}" direction="out" name="info"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        GetExtensionErrors:
 | 
			
		||||
        @uuid: The UUID of the extension
 | 
			
		||||
        @errors: The returned errors
 | 
			
		||||
 | 
			
		||||
        Get the list of errors that caused the extension
 | 
			
		||||
        to be in ERROR state.
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="GetExtensionErrors">
 | 
			
		||||
      <arg type="s" direction="in" name="uuid"/>
 | 
			
		||||
      <arg type="as" direction="out" name="errors"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        InstallRemoteExtension:
 | 
			
		||||
        @uuid: The UUID of the extension
 | 
			
		||||
        @result: The result of the operation
 | 
			
		||||
 | 
			
		||||
        Download and install an extension.
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="InstallRemoteExtension">
 | 
			
		||||
      <arg type="s" direction="in" name="uuid"/>
 | 
			
		||||
      <arg type="s" direction="out" name="result"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        UninstallExtension:
 | 
			
		||||
        @uuid: The UUID of the extension
 | 
			
		||||
        @success: Whether the operation was successful
 | 
			
		||||
 | 
			
		||||
        Uninstall an extension.
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="UninstallExtension">
 | 
			
		||||
      <arg type="s" direction="in" name="uuid"/>
 | 
			
		||||
      <arg type="b" direction="out" name="success"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        ReloadExtension:
 | 
			
		||||
        @uuid: The UUID of the extension
 | 
			
		||||
 | 
			
		||||
        Reload an extension.
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="ReloadExtension">
 | 
			
		||||
      <arg type="s" direction="in" name="uuid"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        LaunchExtensionPrefs:
 | 
			
		||||
        @uuid: The UUID of the extension
 | 
			
		||||
 | 
			
		||||
        Launch preferences of an extension.
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="LaunchExtensionPrefs">
 | 
			
		||||
      <arg type="s" direction="in" name="uuid"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        CheckForUpdates:
 | 
			
		||||
        Update all extensions for which updates are available
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="CheckForUpdates"/>
 | 
			
		||||
 | 
			
		||||
    <signal name="ExtensionStatusChanged">
 | 
			
		||||
      <arg type="s" name="uuid"/>
 | 
			
		||||
      <arg type="i" name="state"/>
 | 
			
		||||
      <arg type="s" name="error"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        ShellVersion:
 | 
			
		||||
        The GNOME Shell version
 | 
			
		||||
    -->
 | 
			
		||||
    <property name="ShellVersion" type="s" access="read"/>
 | 
			
		||||
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										8
									
								
								data/dbus-interfaces/org.gnome.Shell.HotplugSniffer.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,8 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.Shell.HotplugSniffer">
 | 
			
		||||
    <method name="SniffURI">
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="as" direction="out"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										13
									
								
								data/dbus-interfaces/org.gnome.Shell.PerfHelper.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,13 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.Shell.PerfHelper">
 | 
			
		||||
    <method name="CreateWindow">
 | 
			
		||||
      <arg type="i" direction="in"/>
 | 
			
		||||
      <arg type="i" direction="in"/>
 | 
			
		||||
      <arg type="b" direction="in"/>
 | 
			
		||||
      <arg type="b" direction="in"/>
 | 
			
		||||
      <arg type="b" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="WaitWindows"/>
 | 
			
		||||
    <method name="DestroyWindows"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										19
									
								
								data/dbus-interfaces/org.gnome.Shell.PortalHelper.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,19 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.Shell.PortalHelper">
 | 
			
		||||
    <method name="Authenticate">
 | 
			
		||||
      <arg name="connection" type="o" direction="in"/>
 | 
			
		||||
      <arg name="url" type="s" direction="in"/>
 | 
			
		||||
      <arg name="timestamp" type="u" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Close">
 | 
			
		||||
      <arg name="connection" type="o" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="Refresh">
 | 
			
		||||
      <arg name="connection" type="o" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="Done">
 | 
			
		||||
      <arg type="o" name="connection"/>
 | 
			
		||||
      <arg type="u" name="result"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
@@ -91,6 +91,23 @@
 | 
			
		||||
      <arg type="s" direction="out" name="filename_used"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        PickColor:
 | 
			
		||||
 | 
			
		||||
        Picks a color and returns the result.
 | 
			
		||||
 | 
			
		||||
        The @result vardict contains:
 | 
			
		||||
        <variablelist>
 | 
			
		||||
          <varlistentry>
 | 
			
		||||
            <term>color (ddd)</term>
 | 
			
		||||
            <listitem><para>The color, RGB values in the range [0,1].</para></listitem>
 | 
			
		||||
          </varlistentry>
 | 
			
		||||
        </variablelist>
 | 
			
		||||
    -->
 | 
			
		||||
    <method name="PickColor">
 | 
			
		||||
      <arg type="a{sv}" direction="out" name="result"/>
 | 
			
		||||
    </method>
 | 
			
		||||
 | 
			
		||||
    <!--
 | 
			
		||||
        FlashArea:
 | 
			
		||||
        @x: the X coordinate of the area to flash
 | 
			
		||||
							
								
								
									
										8
									
								
								data/dbus-interfaces/org.gnome.Shell.Wacom.PadOsd.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,8 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.Shell.Wacom.PadOsd">
 | 
			
		||||
    <method name="Show">
 | 
			
		||||
      <arg name="device_node" direction="in" type="o"/>
 | 
			
		||||
      <arg name="edition_mode" direction="in" type="b"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										44
									
								
								data/dbus-interfaces/org.gnome.Shell.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,44 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gnome.Shell">
 | 
			
		||||
    <method name="Eval">
 | 
			
		||||
      <arg type="s" direction="in" name="script"/>
 | 
			
		||||
      <arg type="b" direction="out" name="success"/>
 | 
			
		||||
      <arg type="s" direction="out" name="result"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="FocusSearch"/>
 | 
			
		||||
    <method name="ShowOSD">
 | 
			
		||||
      <arg type="a{sv}" direction="in" name="params"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="ShowMonitorLabels">
 | 
			
		||||
      <arg type="a{uv}" direction="in" name="params"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="ShowMonitorLabels2">
 | 
			
		||||
      <arg type="a{sv}" direction="in" name="params"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="HideMonitorLabels"/>
 | 
			
		||||
    <method name="FocusApp">
 | 
			
		||||
      <arg type="s" direction="in" name="id"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="ShowApplications"/>
 | 
			
		||||
    <method name="GrabAccelerator">
 | 
			
		||||
      <arg type="s" direction="in" name="accelerator"/>
 | 
			
		||||
      <arg type="u" direction="in" name="flags"/>
 | 
			
		||||
      <arg type="u" direction="out" name="action"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GrabAccelerators">
 | 
			
		||||
      <arg type="a(su)" direction="in" name="accelerators"/>
 | 
			
		||||
      <arg type="au" direction="out" name="actions"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="UngrabAccelerator">
 | 
			
		||||
      <arg type="u" direction="in" name="action"/>
 | 
			
		||||
      <arg type="b" direction="out" name="success"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <signal name="AcceleratorActivated">
 | 
			
		||||
      <arg name="action" type="u"/>
 | 
			
		||||
      <arg name="parameters" type="a{sv}"/>
 | 
			
		||||
    </signal>
 | 
			
		||||
    <property name="Mode" type="s" access="read"/>
 | 
			
		||||
    <property name="OverviewActive" type="b" access="readwrite"/>
 | 
			
		||||
    <property name="ShellVersion" type="s" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										13
									
								
								data/dbus-interfaces/org.gtk.Notifications.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,13 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.gtk.Notifications">
 | 
			
		||||
    <method name="AddNotification">
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="a{sv}" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="RemoveNotification">
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
      <arg type="s" direction="in"/>
 | 
			
		||||
    </method>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										12
									
								
								data/dbus-interfaces/org.mpris.MediaPlayer2.Player.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,12 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.mpris.MediaPlayer2.Player">
 | 
			
		||||
    <method name="PlayPause"/>
 | 
			
		||||
    <method name="Next"/>
 | 
			
		||||
    <method name="Previous"/>
 | 
			
		||||
    <property name="CanGoNext" type="b" access="read"/>
 | 
			
		||||
    <property name="CanGoPrevious" type="b" access="read"/>
 | 
			
		||||
    <property name="CanPlay" type="b" access="read"/>
 | 
			
		||||
    <property name="Metadata" type="a{sv}" access="read"/>
 | 
			
		||||
    <property name="PlaybackStatus" type="s" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										7
									
								
								data/dbus-interfaces/org.mpris.MediaPlayer2.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,7 @@
 | 
			
		||||
<node>
 | 
			
		||||
  <interface name="org.mpris.MediaPlayer2">
 | 
			
		||||
    <method name="Raise"/>
 | 
			
		||||
    <property name="CanRaise" type="b" access="read"/>
 | 
			
		||||
    <property name="DesktopEntry" type="s" access="read"/>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										55
									
								
								data/gnome-shell-dbus-interfaces.gresource.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,55 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8"?>
 | 
			
		||||
<gresources>
 | 
			
		||||
  <gresource prefix="/org/gnome/shell/dbus-interfaces">
 | 
			
		||||
    <file preprocess="xml-stripblanks">net.hadess.SensorProxy.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">net.hadess.SwitcherooControl.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.Application.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.bolt1.Device.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.bolt1.Manager.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.DBus.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.GeoClue2.Agent.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.GeoClue2.Manager.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.impl.portal.Access.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.impl.portal.PermissionStore.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.impl.portal.Request.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.login1.Manager.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.login1.Session.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.login1.User.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager1.Modem.Modem3gpp.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager1.Modem.ModemCdma.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager1.Modem.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager.Modem.Cdma.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.ModemManager.Modem.Gsm.Network.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.Notifications.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.PackageKit.Offline.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.realmd.Provider.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.realmd.Realm.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.realmd.Service.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.UPower.Device.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.freedesktop.UPower.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Magnifier.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Magnifier.ZoomRegion.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.ScreenSaver.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.SessionManager.EndSessionDialog.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.SessionManager.Inhibitor.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.SessionManager.Presence.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.SessionManager.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.SettingsDaemon.Color.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.SettingsDaemon.Power.Screen.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.SettingsDaemon.Rfkill.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.SettingsDaemon.Wacom.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.AudioDeviceSelection.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.Extensions.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.HotplugSniffer.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.PerfHelper.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.PortalHelper.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.Screencast.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.Screenshot.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.Wacom.PadOsd.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gnome.Shell.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.Gtk.MountOperationHandler.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.gtk.Notifications.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.mpris.MediaPlayer2.Player.xml</file>
 | 
			
		||||
    <file preprocess="xml-stripblanks">org.mpris.MediaPlayer2.xml</file>
 | 
			
		||||
  </gresource>
 | 
			
		||||
</gresources>
 | 
			
		||||
@@ -22,6 +22,7 @@
 | 
			
		||||
    <file>id.json</file>
 | 
			
		||||
    <file>il.json</file>
 | 
			
		||||
    <file>in+bolnagri.json</file>
 | 
			
		||||
    <file>in+mal.json</file>
 | 
			
		||||
    <file>ir.json</file>
 | 
			
		||||
    <file>is.json</file>
 | 
			
		||||
    <file>it.json</file>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								data/gnome-shell-overrides-migration.desktop.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,5 @@
 | 
			
		||||
[Desktop Entry]
 | 
			
		||||
Type=Application
 | 
			
		||||
Name=GNOME settings overrides migration
 | 
			
		||||
NoDisplay=true
 | 
			
		||||
Exec=@libexecdir@/gnome-shell-overrides-migration.sh
 | 
			
		||||
@@ -11,12 +11,9 @@
 | 
			
		||||
    <file>close-window.svg</file>
 | 
			
		||||
    <file>close-window-active.svg</file>
 | 
			
		||||
    <file>close-window-hover.svg</file>
 | 
			
		||||
    <file>close.svg</file>
 | 
			
		||||
    <file>corner-ripple-ltr.png</file>
 | 
			
		||||
    <file>corner-ripple-rtl.png</file>
 | 
			
		||||
    <file>dash-placeholder.svg</file>
 | 
			
		||||
    <file>filter-selected-ltr.svg</file>
 | 
			
		||||
    <file>filter-selected-rtl.svg</file>
 | 
			
		||||
    <file>gnome-shell.css</file>
 | 
			
		||||
    <file>gnome-shell-high-contrast.css</file>
 | 
			
		||||
    <file>key-enter.svg</file>
 | 
			
		||||
@@ -25,7 +22,6 @@
 | 
			
		||||
    <file>key-shift.svg</file>
 | 
			
		||||
    <file>key-shift-uppercase.svg</file>
 | 
			
		||||
    <file>key-shift-latched-uppercase.svg</file>
 | 
			
		||||
    <file>logged-in-indicator.svg</file>
 | 
			
		||||
    <file alias="icons/message-indicator-symbolic.svg">message-indicator-symbolic.svg</file>
 | 
			
		||||
    <file>no-events.svg</file>
 | 
			
		||||
    <file>no-notifications.svg</file>
 | 
			
		||||
@@ -36,16 +32,11 @@
 | 
			
		||||
    <file>page-indicator-checked.svg</file>
 | 
			
		||||
    <file>page-indicator-hover.svg</file>
 | 
			
		||||
    <file>process-working.svg</file>
 | 
			
		||||
    <file>running-indicator.svg</file>
 | 
			
		||||
    <file>source-button-border.svg</file>
 | 
			
		||||
    <file>summary-counter.svg</file>
 | 
			
		||||
    <file>toggle-off-us.svg</file>
 | 
			
		||||
    <file>toggle-off-intl.svg</file>
 | 
			
		||||
    <file>toggle-off-hc.svg</file>
 | 
			
		||||
    <file>toggle-on-us.svg</file>
 | 
			
		||||
    <file>toggle-on-intl.svg</file>
 | 
			
		||||
    <file>toggle-on-hc.svg</file>
 | 
			
		||||
    <file>ws-switch-arrow-up.png</file>
 | 
			
		||||
    <file>ws-switch-arrow-down.png</file>
 | 
			
		||||
  </gresource>
 | 
			
		||||
</gresources>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								data/gnome-shell-wayland.target
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,5 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=GNOME Shell (wayland sync point)
 | 
			
		||||
After=gnome-shell.service
 | 
			
		||||
BindsTo=gnome-shell.service
 | 
			
		||||
Conflicts=gnome-shell-x11.target
 | 
			
		||||
							
								
								
									
										5
									
								
								data/gnome-shell-x11.target
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,5 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=GNOME Shell (x11 sync point)
 | 
			
		||||
After=gnome-shell.service
 | 
			
		||||
BindsTo=gnome-shell.service
 | 
			
		||||
Conflicts=gnome-shell-wayland.target
 | 
			
		||||
							
								
								
									
										11
									
								
								data/gnome-shell.service.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,11 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=GNOME Shell
 | 
			
		||||
Wants=gnome-session.service
 | 
			
		||||
After=graphical-session-pre.target gnome-session-bus.target
 | 
			
		||||
PartOf=graphical-session.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=dbus
 | 
			
		||||
ExecStart=@bindir@/gnome-shell
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
BusName=org.gnome.Shell
 | 
			
		||||
@@ -41,34 +41,25 @@ foreach service_file : service_files
 | 
			
		||||
endforeach
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
dbus_interfaces = [
 | 
			
		||||
  'org.gnome.Shell.PadOsd.xml',
 | 
			
		||||
  'org.gnome.Shell.Screencast.xml',
 | 
			
		||||
  'org.gnome.Shell.Screenshot.xml',
 | 
			
		||||
  'org.gnome.ShellSearchProvider.xml',
 | 
			
		||||
  'org.gnome.ShellSearchProvider2.xml'
 | 
			
		||||
]
 | 
			
		||||
install_data(dbus_interfaces, install_dir: ifacedir)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
subdir('dbus-interfaces')
 | 
			
		||||
subdir('theme')
 | 
			
		||||
 | 
			
		||||
theme_resources = gnome.compile_resources(
 | 
			
		||||
  'gnome-shell-theme', 'gnome-shell-theme.gresource.xml',
 | 
			
		||||
  source_dir: 'theme',
 | 
			
		||||
  dependencies: theme_deps,
 | 
			
		||||
  gresource_bundle: true,
 | 
			
		||||
  install: true,
 | 
			
		||||
  install_dir: pkgdatadir
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
osk_layout_resources = gnome.compile_resources(
 | 
			
		||||
  'gnome-shell-osk-layouts', 'gnome-shell-osk-layouts.gresource.xml',
 | 
			
		||||
  source_dir: 'osk-layouts',
 | 
			
		||||
  gresource_bundle: true,
 | 
			
		||||
  install: true,
 | 
			
		||||
  install_dir: pkgdatadir
 | 
			
		||||
)
 | 
			
		||||
data_resources = [
 | 
			
		||||
  ['dbus-interfaces', []],
 | 
			
		||||
  ['osk-layouts', []],
 | 
			
		||||
  ['theme', theme_deps]
 | 
			
		||||
]
 | 
			
		||||
foreach resource : data_resources
 | 
			
		||||
  gnome.compile_resources(
 | 
			
		||||
    'gnome-shell-' + resource[0],
 | 
			
		||||
    'gnome-shell-@0@.gresource.xml'.format(resource[0]),
 | 
			
		||||
    source_dir: resource[0],
 | 
			
		||||
    dependencies: resource[1],
 | 
			
		||||
    gresource_bundle: true,
 | 
			
		||||
    install: true,
 | 
			
		||||
    install_dir: pkgdatadir
 | 
			
		||||
  )
 | 
			
		||||
endforeach
 | 
			
		||||
 | 
			
		||||
perfconf = configuration_data()
 | 
			
		||||
perfconf.set('datadir', datadir)
 | 
			
		||||
@@ -92,6 +83,33 @@ schema = configure_file(
 | 
			
		||||
  configuration: schemaconf,
 | 
			
		||||
  install_dir: schemadir
 | 
			
		||||
)
 | 
			
		||||
install_data('00_org.gnome.shell.gschema.override', install_dir: schemadir)
 | 
			
		||||
 | 
			
		||||
overrides_migration_conf = configuration_data()
 | 
			
		||||
overrides_migration_conf.set('libexecdir', libexecdir)
 | 
			
		||||
overrides_migration = configure_file(
 | 
			
		||||
  input: 'gnome-shell-overrides-migration.desktop.in',
 | 
			
		||||
  output: 'gnome-shell-overrides-migration.desktop',
 | 
			
		||||
  configuration: overrides_migration_conf,
 | 
			
		||||
  install_dir: autostartdir
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
if have_systemd
 | 
			
		||||
  unitconf = configuration_data()
 | 
			
		||||
  unitconf.set('bindir', bindir)
 | 
			
		||||
 | 
			
		||||
  unit = configure_file(
 | 
			
		||||
    input: 'gnome-shell.service.in',
 | 
			
		||||
    output: 'gnome-shell.service',
 | 
			
		||||
    configuration: unitconf,
 | 
			
		||||
    install_dir: systemduserunitdir
 | 
			
		||||
  )
 | 
			
		||||
 | 
			
		||||
  units = files('gnome-shell-wayland.target',
 | 
			
		||||
                'gnome-shell-x11.target')
 | 
			
		||||
 | 
			
		||||
  install_data(units, install_dir: systemduserunitdir)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
# for unit tests - gnome.compile_schemas() only looks in srcdir
 | 
			
		||||
custom_target('compile-schemas',
 | 
			
		||||
 
 | 
			
		||||
@@ -190,6 +190,7 @@
 | 
			
		||||
    </key>
 | 
			
		||||
  </schema>
 | 
			
		||||
 | 
			
		||||
  <!-- unused, change 00_org.gnome.shell.gschema.override instead -->
 | 
			
		||||
  <schema id="org.gnome.shell.overrides" path="/org/gnome/shell/overrides/"
 | 
			
		||||
	  gettext-domain="@GETTEXT_PACKAGE@">
 | 
			
		||||
    <key name="attach-modal-dialogs" type="b">
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										559
									
								
								data/osk-layouts/in+mal.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						@@ -0,0 +1,559 @@
 | 
			
		||||
{
 | 
			
		||||
  "levels": [
 | 
			
		||||
    {
 | 
			
		||||
      "level": "",
 | 
			
		||||
      "mode": "default",
 | 
			
		||||
      "rows": [
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "െ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ൌ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ൈ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ാ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ീ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ൂ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ബ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഹ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഗ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ദ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ജ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഡ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ""
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "ോ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "േ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "്"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ി"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ു"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "പ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ര"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ക"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ത"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ച"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ട"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "െ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ം"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "മ",
 | 
			
		||||
            "ç"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ന"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "വ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ല",
 | 
			
		||||
            "ñ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "സ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഷ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "യ"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            ","
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            " "
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ".",
 | 
			
		||||
            "#",
 | 
			
		||||
            "!",
 | 
			
		||||
            ",",
 | 
			
		||||
            "?",
 | 
			
		||||
            "-",
 | 
			
		||||
            ":",
 | 
			
		||||
            "'",
 | 
			
		||||
            "@"
 | 
			
		||||
          ]
 | 
			
		||||
        ]
 | 
			
		||||
      ]
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "level": "shift",
 | 
			
		||||
      "mode": "latched",
 | 
			
		||||
      "rows": [
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "ഔ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഐ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ആ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഈ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഊ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഭ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ങ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഘ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ധ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഝ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഢ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഞ"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "ഓ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഏ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "അ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഇ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഉ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഫ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "റ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഖ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഥ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഛ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഠ"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "എ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ""
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ണ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ന"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഴ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ള"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ശ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "ഷ"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "യ"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            ","
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            " "
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ".",
 | 
			
		||||
            "#",
 | 
			
		||||
            "!",
 | 
			
		||||
            ",",
 | 
			
		||||
            "?",
 | 
			
		||||
            "-",
 | 
			
		||||
            ":",
 | 
			
		||||
            "'",
 | 
			
		||||
            "@"
 | 
			
		||||
          ]
 | 
			
		||||
        ]
 | 
			
		||||
      ]
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "level": "opt",
 | 
			
		||||
      "mode": "locked",
 | 
			
		||||
      "rows": [
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "൧",
 | 
			
		||||
            "1",
 | 
			
		||||
            "¹",
 | 
			
		||||
            "½",
 | 
			
		||||
            "⅓",
 | 
			
		||||
            "¼",
 | 
			
		||||
            "⅛"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൨",
 | 
			
		||||
            "2",
 | 
			
		||||
            "²",
 | 
			
		||||
            "⅔"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൩",
 | 
			
		||||
            "3",
 | 
			
		||||
            "³",
 | 
			
		||||
            "¾",
 | 
			
		||||
            "⅜"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൪",
 | 
			
		||||
            "4",
 | 
			
		||||
            "⁴"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൫",
 | 
			
		||||
            "5",
 | 
			
		||||
            "⅝"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൬",
 | 
			
		||||
            "6"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൭",
 | 
			
		||||
            "7",
 | 
			
		||||
            "⅞"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൮",
 | 
			
		||||
            "8"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൯",
 | 
			
		||||
            "9"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "൦",
 | 
			
		||||
            "0",
 | 
			
		||||
            "ⁿ",
 | 
			
		||||
            "∅"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "@"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "#"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "₹",
 | 
			
		||||
            "$",
 | 
			
		||||
            "¢",
 | 
			
		||||
            "£",
 | 
			
		||||
            "€",
 | 
			
		||||
            "¥",
 | 
			
		||||
            "₱"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "%",
 | 
			
		||||
            "‰"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "&"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "-",
 | 
			
		||||
            "_",
 | 
			
		||||
            "–",
 | 
			
		||||
            "—",
 | 
			
		||||
            "·"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "+",
 | 
			
		||||
            "±"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "(",
 | 
			
		||||
            "<",
 | 
			
		||||
            "{",
 | 
			
		||||
            "["
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ")",
 | 
			
		||||
            ">",
 | 
			
		||||
            "}",
 | 
			
		||||
            "]"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "*",
 | 
			
		||||
            "†",
 | 
			
		||||
            "‡",
 | 
			
		||||
            "★"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "\"",
 | 
			
		||||
            "“",
 | 
			
		||||
            "”",
 | 
			
		||||
            "«",
 | 
			
		||||
            "»"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "'",
 | 
			
		||||
            "‘",
 | 
			
		||||
            "’",
 | 
			
		||||
            "‹",
 | 
			
		||||
            "›"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ":"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ";"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "!",
 | 
			
		||||
            "¡"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "?",
 | 
			
		||||
            "¿"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "_"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "/"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            " "
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ","
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ".",
 | 
			
		||||
            "…"
 | 
			
		||||
          ]
 | 
			
		||||
        ]
 | 
			
		||||
      ]
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "level": "opt+shift",
 | 
			
		||||
      "mode": "locked",
 | 
			
		||||
      "rows": [
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "~"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "`"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "|"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "•",
 | 
			
		||||
            "♪",
 | 
			
		||||
            "♥",
 | 
			
		||||
            "♠",
 | 
			
		||||
            "♦",
 | 
			
		||||
            "♣"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "√"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "Π",
 | 
			
		||||
            "π"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "÷"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "×"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "¶",
 | 
			
		||||
            "§"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "∆"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "£"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "¢"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "€"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "¥"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "^",
 | 
			
		||||
            "↑",
 | 
			
		||||
            "↓",
 | 
			
		||||
            "←",
 | 
			
		||||
            "→"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "°",
 | 
			
		||||
            "′",
 | 
			
		||||
            "″"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "=",
 | 
			
		||||
            "≠",
 | 
			
		||||
            "≈",
 | 
			
		||||
            "∞"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "{"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "}"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "\\"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "©"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "®"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "™"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "℅"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "["
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            "]"
 | 
			
		||||
          ]
 | 
			
		||||
        ],
 | 
			
		||||
        [
 | 
			
		||||
          [
 | 
			
		||||
            "<",
 | 
			
		||||
            "‹",
 | 
			
		||||
            "≤",
 | 
			
		||||
            "«"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ">",
 | 
			
		||||
            "›",
 | 
			
		||||
            "≥",
 | 
			
		||||
            "»"
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            " "
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ","
 | 
			
		||||
          ],
 | 
			
		||||
          [
 | 
			
		||||
            ".",
 | 
			
		||||
            "…"
 | 
			
		||||
          ]
 | 
			
		||||
        ]
 | 
			
		||||
      ]
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "locale": "ml",
 | 
			
		||||
  "name": "Malayalam"
 | 
			
		||||
}
 | 
			
		||||
@@ -1,74 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:xlink="http://www.w3.org/1999/xlink"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   version="1.1"
 | 
			
		||||
   id="Foreground"
 | 
			
		||||
   x="0px"
 | 
			
		||||
   y="0px"
 | 
			
		||||
   width="16px"
 | 
			
		||||
   height="16px"
 | 
			
		||||
   viewBox="0 0 16 16"
 | 
			
		||||
   enable-background="new 0 0 16 16"
 | 
			
		||||
   xml:space="preserve"
 | 
			
		||||
   sodipodi:version="0.32"
 | 
			
		||||
   inkscape:version="0.46"
 | 
			
		||||
   sodipodi:docname="x_circle_16.svg"
 | 
			
		||||
   inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
 | 
			
		||||
   id="metadata2399"><rdf:RDF><cc:Work
 | 
			
		||||
       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
 | 
			
		||||
         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
 | 
			
		||||
   id="defs2397"><linearGradient
 | 
			
		||||
     id="linearGradient3173"><stop
 | 
			
		||||
       style="stop-color:#c4c4c4;stop-opacity:1;"
 | 
			
		||||
       offset="0"
 | 
			
		||||
       id="stop3175" /><stop
 | 
			
		||||
       style="stop-color:#ffffff;stop-opacity:1;"
 | 
			
		||||
       offset="1"
 | 
			
		||||
       id="stop3177" /></linearGradient><inkscape:perspective
 | 
			
		||||
     sodipodi:type="inkscape:persp3d"
 | 
			
		||||
     inkscape:vp_x="0 : 8 : 1"
 | 
			
		||||
     inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
     inkscape:vp_z="16 : 8 : 1"
 | 
			
		||||
     inkscape:persp3d-origin="8 : 5.3333333 : 1"
 | 
			
		||||
     id="perspective2401" /><linearGradient
 | 
			
		||||
     inkscape:collect="always"
 | 
			
		||||
     xlink:href="#linearGradient3173"
 | 
			
		||||
     id="linearGradient3179"
 | 
			
		||||
     x1="7.844358"
 | 
			
		||||
     y1="16"
 | 
			
		||||
     x2="7.7198443"
 | 
			
		||||
     y2="-0.062256809"
 | 
			
		||||
     gradientUnits="userSpaceOnUse" /></defs><sodipodi:namedview
 | 
			
		||||
   inkscape:window-height="713"
 | 
			
		||||
   inkscape:window-width="1197"
 | 
			
		||||
   inkscape:pageshadow="2"
 | 
			
		||||
   inkscape:pageopacity="0.0"
 | 
			
		||||
   guidetolerance="10.0"
 | 
			
		||||
   gridtolerance="10.0"
 | 
			
		||||
   objecttolerance="10.0"
 | 
			
		||||
   borderopacity="1.0"
 | 
			
		||||
   bordercolor="#666666"
 | 
			
		||||
   pagecolor="#ffffff"
 | 
			
		||||
   id="base"
 | 
			
		||||
   showgrid="false"
 | 
			
		||||
   inkscape:zoom="32.125"
 | 
			
		||||
   inkscape:cx="8"
 | 
			
		||||
   inkscape:cy="8"
 | 
			
		||||
   inkscape:window-x="40"
 | 
			
		||||
   inkscape:window-y="40"
 | 
			
		||||
   inkscape:current-layer="Foreground" />
 | 
			
		||||
<path
 | 
			
		||||
   fill-rule="evenodd"
 | 
			
		||||
   clip-rule="evenodd"
 | 
			
		||||
   d="M10.5,3.5l2,2L10,8l2.5,2.5l-2,2L8,10l-2.5,2.5l-2-2L6,8L3.5,5.5l2-2L8,6L10.5,3.5  z M0,8c0-4.418,3.582-8,8-8s8,3.582,8,8s-3.582,8-8,8S0,12.418,0,8z"
 | 
			
		||||
   id="path2394"
 | 
			
		||||
   style="fill-opacity:1;fill:url(#linearGradient3179)" />
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 2.6 KiB  | 
@@ -1,81 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
 | 
			
		||||
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   width="10"
 | 
			
		||||
   height="20"
 | 
			
		||||
   id="svg10003"
 | 
			
		||||
   version="1.1"
 | 
			
		||||
   inkscape:version="0.47 r22583"
 | 
			
		||||
   sodipodi:docname="filter-selected.svg">
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs10005">
 | 
			
		||||
    <inkscape:perspective
 | 
			
		||||
       sodipodi:type="inkscape:persp3d"
 | 
			
		||||
       inkscape:vp_x="0 : 32 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_z="64 : 32 : 1"
 | 
			
		||||
       inkscape:persp3d-origin="32 : 21.333333 : 1"
 | 
			
		||||
       id="perspective10011" />
 | 
			
		||||
    <inkscape:perspective
 | 
			
		||||
       id="perspective9998"
 | 
			
		||||
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
 | 
			
		||||
       inkscape:vp_z="1 : 0.5 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_x="0 : 0.5 : 1"
 | 
			
		||||
       sodipodi:type="inkscape:persp3d" />
 | 
			
		||||
  </defs>
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     id="base"
 | 
			
		||||
     pagecolor="#ffffff"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
     borderopacity="1.0"
 | 
			
		||||
     inkscape:pageopacity="0.0"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:zoom="5.5"
 | 
			
		||||
     inkscape:cx="32"
 | 
			
		||||
     inkscape:cy="10.181818"
 | 
			
		||||
     inkscape:current-layer="layer1"
 | 
			
		||||
     showgrid="true"
 | 
			
		||||
     inkscape:document-units="px"
 | 
			
		||||
     inkscape:grid-bbox="true"
 | 
			
		||||
     inkscape:window-width="1680"
 | 
			
		||||
     inkscape:window-height="994"
 | 
			
		||||
     inkscape:window-x="0"
 | 
			
		||||
     inkscape:window-y="26"
 | 
			
		||||
     inkscape:window-maximized="1" />
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata10008">
 | 
			
		||||
    <rdf:RDF>
 | 
			
		||||
      <cc:Work
 | 
			
		||||
         rdf:about="">
 | 
			
		||||
        <dc:format>image/svg+xml</dc:format>
 | 
			
		||||
        <dc:type
 | 
			
		||||
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
 | 
			
		||||
        <dc:title />
 | 
			
		||||
      </cc:Work>
 | 
			
		||||
    </rdf:RDF>
 | 
			
		||||
  </metadata>
 | 
			
		||||
  <g
 | 
			
		||||
     id="layer1"
 | 
			
		||||
     inkscape:label="Layer 1"
 | 
			
		||||
     inkscape:groupmode="layer"
 | 
			
		||||
     transform="translate(0,-44)">
 | 
			
		||||
    <path
 | 
			
		||||
       inkscape:export-ydpi="90"
 | 
			
		||||
       inkscape:export-xdpi="90"
 | 
			
		||||
       inkscape:export-filename="/home/jimmac/src/cvs/gnome/gnome-shell-design/mockups/app-picker.png"
 | 
			
		||||
       sodipodi:nodetypes="cccc"
 | 
			
		||||
       inkscape:connector-curvature="0"
 | 
			
		||||
       id="rect34320"
 | 
			
		||||
       d="m -0.18726572,54.181804 10.55634072,10.55636 10e-6,-21.11269 z"
 | 
			
		||||
       style="opacity:0.21000001;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.99999988;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 2.6 KiB  | 
@@ -1,81 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
 | 
			
		||||
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   width="10"
 | 
			
		||||
   height="20"
 | 
			
		||||
   id="svg10003"
 | 
			
		||||
   version="1.1"
 | 
			
		||||
   inkscape:version="0.48.1 r9760"
 | 
			
		||||
   sodipodi:docname="filter-selected-ltr.svg">
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs10005">
 | 
			
		||||
    <inkscape:perspective
 | 
			
		||||
       sodipodi:type="inkscape:persp3d"
 | 
			
		||||
       inkscape:vp_x="0 : 32 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_z="64 : 32 : 1"
 | 
			
		||||
       inkscape:persp3d-origin="32 : 21.333333 : 1"
 | 
			
		||||
       id="perspective10011" />
 | 
			
		||||
    <inkscape:perspective
 | 
			
		||||
       id="perspective9998"
 | 
			
		||||
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
 | 
			
		||||
       inkscape:vp_z="1 : 0.5 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_x="0 : 0.5 : 1"
 | 
			
		||||
       sodipodi:type="inkscape:persp3d" />
 | 
			
		||||
  </defs>
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     id="base"
 | 
			
		||||
     pagecolor="#ffffff"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
     borderopacity="1.0"
 | 
			
		||||
     inkscape:pageopacity="0"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:zoom="5.5"
 | 
			
		||||
     inkscape:cx="32.363636"
 | 
			
		||||
     inkscape:cy="10.181818"
 | 
			
		||||
     inkscape:current-layer="layer1"
 | 
			
		||||
     showgrid="true"
 | 
			
		||||
     inkscape:document-units="px"
 | 
			
		||||
     inkscape:grid-bbox="true"
 | 
			
		||||
     inkscape:window-width="1440"
 | 
			
		||||
     inkscape:window-height="839"
 | 
			
		||||
     inkscape:window-x="0"
 | 
			
		||||
     inkscape:window-y="26"
 | 
			
		||||
     inkscape:window-maximized="1" />
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata10008">
 | 
			
		||||
    <rdf:RDF>
 | 
			
		||||
      <cc:Work
 | 
			
		||||
         rdf:about="">
 | 
			
		||||
        <dc:format>image/svg+xml</dc:format>
 | 
			
		||||
        <dc:type
 | 
			
		||||
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
 | 
			
		||||
        <dc:title></dc:title>
 | 
			
		||||
      </cc:Work>
 | 
			
		||||
    </rdf:RDF>
 | 
			
		||||
  </metadata>
 | 
			
		||||
  <g
 | 
			
		||||
     id="layer1"
 | 
			
		||||
     inkscape:label="Layer 1"
 | 
			
		||||
     inkscape:groupmode="layer"
 | 
			
		||||
     transform="translate(0,-44)">
 | 
			
		||||
    <path
 | 
			
		||||
       inkscape:export-ydpi="90"
 | 
			
		||||
       inkscape:export-xdpi="90"
 | 
			
		||||
       inkscape:export-filename="/home/jimmac/src/cvs/gnome/gnome-shell-design/mockups/app-picker.png"
 | 
			
		||||
       sodipodi:nodetypes="cccc"
 | 
			
		||||
       inkscape:connector-curvature="0"
 | 
			
		||||
       id="rect34320"
 | 
			
		||||
       d="m 10.369085,54.181804 -10.55634072,10.55636 -1e-5,-21.11269 z"
 | 
			
		||||
       style="opacity:0.21000001;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.99999988;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 2.7 KiB  | 
@@ -48,17 +48,18 @@ stage {
 | 
			
		||||
  padding: 4px 32px;
 | 
			
		||||
  @include button(normal);
 | 
			
		||||
  &:focus { @include button(focus); }
 | 
			
		||||
  &:hover { @include button(hover); }
 | 
			
		||||
  &:insensitive { @include button(insensitive); }
 | 
			
		||||
  &:active { @include button(active); }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.modal-dialog-linked-button {
 | 
			
		||||
  border-right-width: 1px;
 | 
			
		||||
  @include button(normal);
 | 
			
		||||
  &:insensitive { @include button(insensitive); }
 | 
			
		||||
  &:active { @include button(active); }
 | 
			
		||||
  &:focus { @include button(focus); }
 | 
			
		||||
  &:hover { @include button(hover); }
 | 
			
		||||
  &:active { @include button(active); }
 | 
			
		||||
  padding: 12px;
 | 
			
		||||
 | 
			
		||||
  &:first-child {
 | 
			
		||||
@@ -128,12 +129,15 @@ StScrollBar {
 | 
			
		||||
 | 
			
		||||
.slider {
 | 
			
		||||
  height: 1em;
 | 
			
		||||
  -slider-height: 0.3em;
 | 
			
		||||
  -slider-background-color: $insensitive_bg_color; //background of the trough
 | 
			
		||||
  -slider-border-color: $borders_color; //trough border color
 | 
			
		||||
  -slider-active-background-color: $selected_bg_color; //active trough fill
 | 
			
		||||
  -slider-active-border-color: darken($selected_bg_color,10%); //active trough border
 | 
			
		||||
  -slider-border-width: 1px;
 | 
			
		||||
  -barlevel-height: 0.3em;
 | 
			
		||||
  -barlevel-background-color: $insensitive_bg_color; //background of the trough
 | 
			
		||||
  -barlevel-border-color: $borders_color; //trough border color
 | 
			
		||||
  -barlevel-active-background-color: $selected_bg_color; //active trough fill
 | 
			
		||||
  -barlevel-active-border-color: darken($selected_bg_color,10%); //active trough border
 | 
			
		||||
  -barlevel-overdrive-color: $destructive_color;
 | 
			
		||||
  -barlevel-overdrive-border-color: darken($destructive_color,10%);
 | 
			
		||||
  -barlevel-overdrive-separator-width: 0.2em;
 | 
			
		||||
  -barlevel-border-width: 1px;
 | 
			
		||||
  -slider-handle-radius: 6px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -585,13 +589,11 @@ StScrollBar {
 | 
			
		||||
  .osd-monitor-label { font-size: 3em; }
 | 
			
		||||
  .level {
 | 
			
		||||
    height: 0.6em;
 | 
			
		||||
    border-radius: 0.3em;
 | 
			
		||||
    background-color: transparentize(darken($osd_bg_color,15%),0.5);
 | 
			
		||||
    color: $osd_fg_color;
 | 
			
		||||
  }
 | 
			
		||||
  .level-bar {
 | 
			
		||||
    background-color: $osd_fg_color;
 | 
			
		||||
    border-radius: 0.3em;
 | 
			
		||||
    -barlevel-height: 0.6em;
 | 
			
		||||
    -barlevel-background-color: transparentize(darken($osd_bg_color,15%),0.5);
 | 
			
		||||
    -barlevel-active-background-color: $osd_fg_color;
 | 
			
		||||
    -barlevel-overdrive-color: $destructive_color;
 | 
			
		||||
    -barlevel-overdrive-separator-width: 0.2em;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -687,7 +689,6 @@ StScrollBar {
 | 
			
		||||
    height: 50px;
 | 
			
		||||
    background-color: $selected_bg_color;
 | 
			
		||||
    color: $selected_fg_color;
 | 
			
		||||
    //background-image: url("resource:///org/gnome/shell/theme/ws-switch-arrow-up.png");
 | 
			
		||||
    background-size: 32px;
 | 
			
		||||
    border-radius: 8px;
 | 
			
		||||
  }
 | 
			
		||||
@@ -728,7 +729,9 @@ StScrollBar {
 | 
			
		||||
/* TOP BAR */
 | 
			
		||||
 | 
			
		||||
#panel {
 | 
			
		||||
  background-color: rgba(0, 0, 0, 0.35);
 | 
			
		||||
  background-gradient-start: rgba(0,0,0,0.3);
 | 
			
		||||
  background-gradient-end: rgba(0,0,0,0);
 | 
			
		||||
  background-gradient-direction: vertical;
 | 
			
		||||
  /* transition from solid to transparent */
 | 
			
		||||
  transition-duration: 500ms;
 | 
			
		||||
  font-weight: bold;
 | 
			
		||||
@@ -747,7 +750,7 @@ StScrollBar {
 | 
			
		||||
 | 
			
		||||
  .panel-corner {
 | 
			
		||||
    -panel-corner-radius: $panel-corner-radius;
 | 
			
		||||
    -panel-corner-background-color: rgba(0, 0, 0, 0.35);
 | 
			
		||||
    -panel-corner-background-color: rgba(0, 0, 0, 0);
 | 
			
		||||
    -panel-corner-border-width: 2px;
 | 
			
		||||
    -panel-corner-border-color: transparent;
 | 
			
		||||
 | 
			
		||||
@@ -767,7 +770,7 @@ StScrollBar {
 | 
			
		||||
    -minimum-hpadding: 6px;
 | 
			
		||||
    font-weight: bold;
 | 
			
		||||
    color: #eee;
 | 
			
		||||
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.9);
 | 
			
		||||
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.8);
 | 
			
		||||
    transition-duration: 100ms;
 | 
			
		||||
 | 
			
		||||
    .app-menu-icon {
 | 
			
		||||
@@ -780,17 +783,17 @@ StScrollBar {
 | 
			
		||||
    .system-status-icon,
 | 
			
		||||
    .app-menu-icon > StIcon,
 | 
			
		||||
    .popup-menu-arrow {
 | 
			
		||||
      icon-shadow: 0px 1px 2px rgba(0, 0, 0, 0.9);
 | 
			
		||||
      icon-shadow: 0px 1px 2px rgba(0, 0, 0, 0.8);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    &:hover {
 | 
			
		||||
      color: lighten($fg_color, 10%);
 | 
			
		||||
      text-shadow: 0px 1px 6px rgba(0, 0, 0, 1);
 | 
			
		||||
      text-shadow: 0px 1px 3px rgba(0, 0, 0, 1);
 | 
			
		||||
 | 
			
		||||
      .system-status-icon,
 | 
			
		||||
      .app-menu-icon > StIcon,
 | 
			
		||||
      .popup-menu-arrow {
 | 
			
		||||
        icon-shadow: 0px 1px 6px rgba(0, 0, 0, 1);
 | 
			
		||||
        icon-shadow: 0px 1px 3px rgba(0, 0, 0, 1);
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -825,8 +828,13 @@ StScrollBar {
 | 
			
		||||
 | 
			
		||||
  .screencast-indicator { color: $warning_color; }
 | 
			
		||||
 | 
			
		||||
  .remote-access-indicator { color: $warning_color; }
 | 
			
		||||
 | 
			
		||||
  &.solid {
 | 
			
		||||
    background-color: black;
 | 
			
		||||
    background-gradient-start: none;
 | 
			
		||||
    background-gradient-end: none;
 | 
			
		||||
    background-gradient-direction: none;
 | 
			
		||||
    /* transition from transparent to solid */
 | 
			
		||||
    transition-duration: 300ms;
 | 
			
		||||
 | 
			
		||||
@@ -1122,6 +1130,7 @@ StScrollBar {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  .system-menu-action {
 | 
			
		||||
    -st-icon-style: symbolic;
 | 
			
		||||
    color: $fg_color;
 | 
			
		||||
    border-radius: 32px; /* wish we could do 50% */
 | 
			
		||||
    padding: 13px;
 | 
			
		||||
 
 | 
			
		||||
@@ -150,8 +150,8 @@
 | 
			
		||||
  //
 | 
			
		||||
  // focused button
 | 
			
		||||
  //
 | 
			
		||||
    $_bg: if($c!=$osd_bg_color, transparentize($c, 0.5),
 | 
			
		||||
                          $osd_bg_color);
 | 
			
		||||
    $_bg: if($c!=$osd_bg_color, transparentize($c, 0.3),
 | 
			
		||||
                          lighten($osd_bg_color,3%));
 | 
			
		||||
 | 
			
		||||
    color: $osd_fg_color;
 | 
			
		||||
    text-shadow: 0 1px black;
 | 
			
		||||
@@ -164,7 +164,7 @@
 | 
			
		||||
  // active osd button
 | 
			
		||||
  //
 | 
			
		||||
    $_bg: if($c!=$osd_bg_color, transparentize($c, 0.3),
 | 
			
		||||
                            lighten($osd_bg_color,10%));
 | 
			
		||||
                            lighten($osd_bg_color,3%));
 | 
			
		||||
 | 
			
		||||
    color: white;
 | 
			
		||||
    border-color: $osd_borders_color;
 | 
			
		||||
@@ -182,7 +182,7 @@
 | 
			
		||||
 | 
			
		||||
    color: white;
 | 
			
		||||
    border-color: $osd_borders_color;
 | 
			
		||||
    background-color: darken($_bg,5%);
 | 
			
		||||
    background-color: $selected_bg_color;
 | 
			
		||||
    // This should be none, but it's creating some issues with borders, so to
 | 
			
		||||
    // workaround it for now, use inset wich goes through a different code path.
 | 
			
		||||
    // see https://bugzilla.gnome.org/show_bug.cgi?id=752934
 | 
			
		||||
 
 | 
			
		||||
@@ -14,7 +14,7 @@
 | 
			
		||||
   id="svg7384"
 | 
			
		||||
   height="32"
 | 
			
		||||
   sodipodi:docname="key-layout.svg"
 | 
			
		||||
   inkscape:version="0.92.2 (5c3e80d, 2017-08-06)">
 | 
			
		||||
   inkscape:version="0.92.3 (2405546, 2018-03-11)">
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     pagecolor="#ffffff"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
@@ -24,17 +24,21 @@
 | 
			
		||||
     guidetolerance="10"
 | 
			
		||||
     inkscape:pageopacity="0"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:window-width="1919"
 | 
			
		||||
     inkscape:window-height="1011"
 | 
			
		||||
     inkscape:window-width="3440"
 | 
			
		||||
     inkscape:window-height="1376"
 | 
			
		||||
     id="namedview19"
 | 
			
		||||
     showgrid="false"
 | 
			
		||||
     inkscape:zoom="14.75"
 | 
			
		||||
     inkscape:cx="1.220339"
 | 
			
		||||
     inkscape:cy="11.842802"
 | 
			
		||||
     inkscape:zoom="1"
 | 
			
		||||
     inkscape:cx="46.246852"
 | 
			
		||||
     inkscape:cy="17.474578"
 | 
			
		||||
     inkscape:window-x="0"
 | 
			
		||||
     inkscape:window-y="55"
 | 
			
		||||
     inkscape:window-maximized="0"
 | 
			
		||||
     inkscape:current-layer="svg7384" />
 | 
			
		||||
     inkscape:window-y="27"
 | 
			
		||||
     inkscape:window-maximized="1"
 | 
			
		||||
     inkscape:current-layer="svg7384">
 | 
			
		||||
    <inkscape:grid
 | 
			
		||||
       type="xygrid"
 | 
			
		||||
       id="grid861" />
 | 
			
		||||
  </sodipodi:namedview>
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata90">
 | 
			
		||||
    <rdf:RDF>
 | 
			
		||||
@@ -92,23 +96,34 @@
 | 
			
		||||
     style="display:inline"
 | 
			
		||||
     id="g4953" />
 | 
			
		||||
  <g
 | 
			
		||||
     style="stroke-width:0.5;enable-background:new"
 | 
			
		||||
     id="g3561"
 | 
			
		||||
     inkscape:label="preferences-desktop-locale"
 | 
			
		||||
     id="g11728"
 | 
			
		||||
     transform="matrix(2,0,0,2,-522.0004,-1086)"
 | 
			
		||||
     style="display:inline;stroke-width:1">
 | 
			
		||||
    <rect
 | 
			
		||||
       style="fill:none;stroke:none;stroke-width:1"
 | 
			
		||||
       id="rect11724"
 | 
			
		||||
       width="16"
 | 
			
		||||
       height="16"
 | 
			
		||||
       x="20"
 | 
			
		||||
       y="326"
 | 
			
		||||
       transform="translate(241.0002,217)" />
 | 
			
		||||
     transform="matrix(2,0,0,2,135.99464,-895.9793)">
 | 
			
		||||
    <path
 | 
			
		||||
       style="fill:#e5e5e5;fill-opacity:1;stroke:none;stroke-width:1"
 | 
			
		||||
       d="m 265.69612,545.23396 c -3.58218,0 -4.66582,1.39975 -4.66582,1.39975 v 10.04946 c 0,0 1.08364,-1.07673 4.66582,-1.07673 2.9161,0 4.47225,1.07673 7.17818,1.07673 2.08923,0 3.19429,-1.39975 3.19429,-1.39975 v -10.04946 c 0,0 -1.14095,1.04084 -3.23018,1.04084 -3.3734,0 -3.97619,-1.04084 -7.14229,-1.04084 z m 2.93145,2.77148 c 1.32876,0 2.375,1.08037 2.375,2.4375 0,1.35713 -1.04624,2.46875 -2.375,2.46875 -1.32876,0 -2.40625,-1.11162 -2.40625,-2.46875 0,-1.35713 1.07749,-2.4375 2.40625,-2.4375 z m -4.5625,0.96875 0.96875,1.03125 -0.9375,-0.0312 0.9375,1 -0.96875,-0.0312 0.96875,1.03125 -1,-0.0312 0.0312,-1 h -0.0312 l 0.0312,-0.9688 h -0.0312 z m 4.5625,0 c -0.794,0 -1.46875,0.6578 -1.46875,1.46875 0,0.81095 0.67475,1.46875 1.46875,1.46875 0.79399,0 1.4375,-0.6578 1.4375,-1.46875 0,-0.81095 -0.64351,-1.46875 -1.4375,-1.46875 z m 4.375,0 v 1 l 0.0312,0.96875 h -0.0312 l 0.0312,1 -1,0.0312 0.96875,-1.03125 -0.96875,0.0312 0.9375,-1 -0.9375,0.0312 z m -7.9375,2.96875 0.96875,1.03125 -1,-0.0312 z m 6.9375,0 0.0312,1 -1,0.0312 z m -5.9375,1 0.96875,1.03125 -1,-0.0312 z m 4.9375,0 0.0312,1 -1,0.0312 z"
 | 
			
		||||
       id="path11726"
 | 
			
		||||
       sodipodi:nodetypes="cc"
 | 
			
		||||
       inkscape:connector-curvature="0"
 | 
			
		||||
       sodipodi:nodetypes="sccssccsssssssccccccccccccsssssccccccccccccccccccccccccccc" />
 | 
			
		||||
       id="path3535"
 | 
			
		||||
       d="m -65,450 v 12"
 | 
			
		||||
       style="fill:#e5e5e5;fill-opacity:1;fill-rule:evenodd;stroke:#e5e5e5;stroke-width:1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
 | 
			
		||||
    <path
 | 
			
		||||
       sodipodi:nodetypes="ccccccccc"
 | 
			
		||||
       inkscape:connector-curvature="0"
 | 
			
		||||
       id="path3537"
 | 
			
		||||
       d="m -65,456 h 4 l 1,2 h 5 v -6 h -4 l -1,-2 h -5 z"
 | 
			
		||||
       style="fill:none;fill-rule:evenodd;stroke:#e5e5e5;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
 | 
			
		||||
    <path
 | 
			
		||||
       style="opacity:1;vector-effect:none;fill:#e5e5e5;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
 | 
			
		||||
       d="m -65,456 h 4 l 1,2 h 5 v -6 h -4 l -1,-2 h -5 z"
 | 
			
		||||
       id="path3539"
 | 
			
		||||
       inkscape:connector-curvature="0"
 | 
			
		||||
       sodipodi:nodetypes="ccccccccc" />
 | 
			
		||||
    <rect
 | 
			
		||||
       style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:none;stroke:none;stroke-width:0.89050001;marker:none;enable-background:new"
 | 
			
		||||
       id="rect3543"
 | 
			
		||||
       y="448"
 | 
			
		||||
       x="-68"
 | 
			
		||||
       height="16"
 | 
			
		||||
       width="16" />
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
 
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 4.2 KiB  | 
@@ -1,130 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
 | 
			
		||||
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:xlink="http://www.w3.org/1999/xlink"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   width="300"
 | 
			
		||||
   height="80"
 | 
			
		||||
   id="svg7355"
 | 
			
		||||
   version="1.1"
 | 
			
		||||
   inkscape:version="0.48.2 r9819"
 | 
			
		||||
   sodipodi:docname="logged-in-indicator.svg">
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata4175">
 | 
			
		||||
    <rdf:RDF>
 | 
			
		||||
      <cc:Work
 | 
			
		||||
         rdf:about="">
 | 
			
		||||
        <dc:format>image/svg+xml</dc:format>
 | 
			
		||||
        <dc:type
 | 
			
		||||
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
 | 
			
		||||
      </cc:Work>
 | 
			
		||||
    </rdf:RDF>
 | 
			
		||||
  </metadata>
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     pagecolor="#2c1cff"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
     borderopacity="1"
 | 
			
		||||
     objecttolerance="10"
 | 
			
		||||
     gridtolerance="10"
 | 
			
		||||
     guidetolerance="10"
 | 
			
		||||
     inkscape:pageopacity="1"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:window-width="1440"
 | 
			
		||||
     inkscape:window-height="843"
 | 
			
		||||
     id="namedview4173"
 | 
			
		||||
     showgrid="false"
 | 
			
		||||
     inkscape:zoom="2.8760889"
 | 
			
		||||
     inkscape:cx="106.00403"
 | 
			
		||||
     inkscape:cy="80.68078"
 | 
			
		||||
     inkscape:window-x="0"
 | 
			
		||||
     inkscape:window-y="27"
 | 
			
		||||
     inkscape:window-maximized="1"
 | 
			
		||||
     inkscape:current-layer="g30864" />
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs7357">
 | 
			
		||||
    <radialGradient
 | 
			
		||||
       xlink:href="#linearGradient36429"
 | 
			
		||||
       id="radialGradient7461"
 | 
			
		||||
       gradientUnits="userSpaceOnUse"
 | 
			
		||||
       gradientTransform="matrix(2.5919312,0,0,0.57582113,-20.687059,48.400487)"
 | 
			
		||||
       cx="47.428951"
 | 
			
		||||
       cy="167.16817"
 | 
			
		||||
       fx="47.428951"
 | 
			
		||||
       fy="167.16817"
 | 
			
		||||
       r="37" />
 | 
			
		||||
    <linearGradient
 | 
			
		||||
       id="linearGradient36429">
 | 
			
		||||
      <stop
 | 
			
		||||
         id="stop36431"
 | 
			
		||||
         offset="0"
 | 
			
		||||
         style="stop-color:#ffffff;stop-opacity:1;" />
 | 
			
		||||
      <stop
 | 
			
		||||
         id="stop36433"
 | 
			
		||||
         offset="1"
 | 
			
		||||
         style="stop-color:#ffffff;stop-opacity:0;" />
 | 
			
		||||
    </linearGradient>
 | 
			
		||||
    <radialGradient
 | 
			
		||||
       xlink:href="#linearGradient36471"
 | 
			
		||||
       id="radialGradient7463"
 | 
			
		||||
       gradientUnits="userSpaceOnUse"
 | 
			
		||||
       gradientTransform="matrix(1.1891549,0,0,0.55513246,-9.281289,36.12653)"
 | 
			
		||||
       cx="49.067139"
 | 
			
		||||
       cy="242.50381"
 | 
			
		||||
       fx="49.067139"
 | 
			
		||||
       fy="242.50381"
 | 
			
		||||
       r="37.00671" />
 | 
			
		||||
    <linearGradient
 | 
			
		||||
       id="linearGradient36471">
 | 
			
		||||
      <stop
 | 
			
		||||
         id="stop36473"
 | 
			
		||||
         offset="0"
 | 
			
		||||
         style="stop-color:#ffffff;stop-opacity:1;" />
 | 
			
		||||
      <stop
 | 
			
		||||
         id="stop36475"
 | 
			
		||||
         offset="1"
 | 
			
		||||
         style="stop-color:#ffffff;stop-opacity:0;" />
 | 
			
		||||
    </linearGradient>
 | 
			
		||||
    <radialGradient
 | 
			
		||||
       r="37.00671"
 | 
			
		||||
       fy="242.50381"
 | 
			
		||||
       fx="49.067139"
 | 
			
		||||
       cy="242.50381"
 | 
			
		||||
       cx="49.067139"
 | 
			
		||||
       gradientTransform="matrix(3.4218418,0,0,0.03365337,-61.309005,138.5071)"
 | 
			
		||||
       gradientUnits="userSpaceOnUse"
 | 
			
		||||
       id="radialGradient7488"
 | 
			
		||||
       xlink:href="#linearGradient36471" />
 | 
			
		||||
  </defs>
 | 
			
		||||
  <g
 | 
			
		||||
     id="layer1"
 | 
			
		||||
     transform="matrix(1.6213276,0,0,1.6213276,-431.6347,-272.5745)">
 | 
			
		||||
    <g
 | 
			
		||||
       style="display:inline"
 | 
			
		||||
       id="g30864"
 | 
			
		||||
       transform="translate(255.223,70.118091)">
 | 
			
		||||
      <rect
 | 
			
		||||
         ry="3.4593496"
 | 
			
		||||
         rx="8.8641119"
 | 
			
		||||
         y="76.159348"
 | 
			
		||||
         x="12.596948"
 | 
			
		||||
         height="71.116341"
 | 
			
		||||
         width="182.22595"
 | 
			
		||||
         id="rect14000"
 | 
			
		||||
         style="opacity:0.371875;fill:url(#radialGradient7461);fill-opacity:1;stroke:none" />
 | 
			
		||||
      <path
 | 
			
		||||
         id="rect34520"
 | 
			
		||||
         d="m 194.80022,146.83551 -182.559919,0"
 | 
			
		||||
         style="opacity:0.35;fill:none;stroke:url(#radialGradient7488);stroke-width:0.61184424;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
 | 
			
		||||
         connector-curvature="0"
 | 
			
		||||
         inkscape:connector-curvature="0"
 | 
			
		||||
         sodipodi:nodetypes="cc" />
 | 
			
		||||
    </g>
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 3.8 KiB  | 
@@ -13,10 +13,102 @@
 | 
			
		||||
   height="64px"
 | 
			
		||||
   id="svg3393"
 | 
			
		||||
   version="1.1"
 | 
			
		||||
   inkscape:version="0.48.5 r10040"
 | 
			
		||||
   sodipodi:docname="New document 2">
 | 
			
		||||
   inkscape:version="0.92.3 (2405546, 2018-03-11)"
 | 
			
		||||
   sodipodi:docname="no-notifications.svg">
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs3395" />
 | 
			
		||||
     id="defs3395">
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath6262-0"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <rect
 | 
			
		||||
         style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none"
 | 
			
		||||
         id="rect6264-6"
 | 
			
		||||
         width="3.8250003"
 | 
			
		||||
         height="6.3750005"
 | 
			
		||||
         x="26.849981"
 | 
			
		||||
         y="220.75" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath6258-0"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <rect
 | 
			
		||||
         style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none"
 | 
			
		||||
         id="rect6260-6"
 | 
			
		||||
         width="2.8977275"
 | 
			
		||||
         height="5.3129687"
 | 
			
		||||
         x="26.965673"
 | 
			
		||||
         y="221.28162" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath6254-6"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <rect
 | 
			
		||||
         style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:2;marker:none"
 | 
			
		||||
         id="rect6256-6"
 | 
			
		||||
         width="1.876245"
 | 
			
		||||
         height="4.8783236"
 | 
			
		||||
         x="26.998718"
 | 
			
		||||
         y="221.50153" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath8028-3"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <path
 | 
			
		||||
         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
 | 
			
		||||
         d="m -73,-30 -7,-7 v -4.5 h 16.5 v 4.5 l -7.5,7 z"
 | 
			
		||||
         id="path8030-6"
 | 
			
		||||
         inkscape:connector-curvature="0"
 | 
			
		||||
         sodipodi:nodetypes="ccccccc" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       clipPathUnits="userSpaceOnUse"
 | 
			
		||||
       id="clipPath6810-7-87-7">
 | 
			
		||||
      <rect
 | 
			
		||||
         style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none"
 | 
			
		||||
         id="rect6812-2-4-5"
 | 
			
		||||
         width="14"
 | 
			
		||||
         height="11"
 | 
			
		||||
         x="21"
 | 
			
		||||
         y="281" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath6262"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <rect
 | 
			
		||||
         style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none"
 | 
			
		||||
         id="rect6264"
 | 
			
		||||
         width="3.8250003"
 | 
			
		||||
         height="6.3750005"
 | 
			
		||||
         x="26.849981"
 | 
			
		||||
         y="220.75" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath6258"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <rect
 | 
			
		||||
         style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none"
 | 
			
		||||
         id="rect6260"
 | 
			
		||||
         width="2.8977275"
 | 
			
		||||
         height="5.3129687"
 | 
			
		||||
         x="26.965673"
 | 
			
		||||
         y="221.28162" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <clipPath
 | 
			
		||||
       id="clipPath6254"
 | 
			
		||||
       clipPathUnits="userSpaceOnUse">
 | 
			
		||||
      <rect
 | 
			
		||||
         style="color:#bebebe;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:2;marker:none"
 | 
			
		||||
         id="rect6256"
 | 
			
		||||
         width="1.876245"
 | 
			
		||||
         height="4.8783236"
 | 
			
		||||
         x="26.998718"
 | 
			
		||||
         y="221.50153" />
 | 
			
		||||
    </clipPath>
 | 
			
		||||
    <inkscape:path-effect
 | 
			
		||||
       effect="spiro"
 | 
			
		||||
       id="path-effect3951"
 | 
			
		||||
       is_visible="true" />
 | 
			
		||||
  </defs>
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     id="base"
 | 
			
		||||
     pagecolor="#ffffff"
 | 
			
		||||
@@ -24,17 +116,17 @@
 | 
			
		||||
     borderopacity="1.0"
 | 
			
		||||
     inkscape:pageopacity="0.0"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:zoom="5.5"
 | 
			
		||||
     inkscape:cx="32"
 | 
			
		||||
     inkscape:cy="32"
 | 
			
		||||
     inkscape:zoom="1"
 | 
			
		||||
     inkscape:cx="125.08157"
 | 
			
		||||
     inkscape:cy="-13.805087"
 | 
			
		||||
     inkscape:current-layer="layer1"
 | 
			
		||||
     showgrid="true"
 | 
			
		||||
     inkscape:document-units="px"
 | 
			
		||||
     inkscape:grid-bbox="true"
 | 
			
		||||
     inkscape:window-width="697"
 | 
			
		||||
     inkscape:window-height="613"
 | 
			
		||||
     inkscape:window-x="100"
 | 
			
		||||
     inkscape:window-y="77"
 | 
			
		||||
     inkscape:window-width="1664"
 | 
			
		||||
     inkscape:window-height="1034"
 | 
			
		||||
     inkscape:window-x="1479"
 | 
			
		||||
     inkscape:window-y="252"
 | 
			
		||||
     inkscape:window-maximized="0" />
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata3398">
 | 
			
		||||
@@ -54,7 +146,7 @@
 | 
			
		||||
     inkscape:groupmode="layer">
 | 
			
		||||
    <g
 | 
			
		||||
       style="display:inline"
 | 
			
		||||
       transform="matrix(4,0,0,4,0.29733827,-0.35415646)"
 | 
			
		||||
       transform="matrix(4,0,0,4,-79.702662,-0.35415646)"
 | 
			
		||||
       id="g19245">
 | 
			
		||||
      <g
 | 
			
		||||
         id="g19247"
 | 
			
		||||
@@ -71,15 +163,15 @@
 | 
			
		||||
         transform="translate(-323.02908,-649.02581)">
 | 
			
		||||
        <path
 | 
			
		||||
           inkscape:connector-curvature="0"
 | 
			
		||||
           d="m 331.9377,653 c 0.0187,0.16677 0.0625,0.32822 0.0625,0.5 0,2.48528 -2.01472,4.5 -4.5,4.5 -0.11769,0 -0.22834,-0.0224 -0.34375,-0.0312 l 0,2.21875 c 0,1.00412 0.80838,1.8125 1.8125,1.8125 l 1.54511,-5e-5 2,2.04688 2.0625,-2.04688 1.61114,0 c 1.00413,0 1.8125,-0.80838 1.8125,-1.8125 l 0,-5.375 c 0,-1.00412 -0.80837,-1.8125 -1.8125,-1.8125 z"
 | 
			
		||||
           d="m 331.9377,653 c 0.0187,0.16677 0.0625,0.32822 0.0625,0.5 0,2.48528 -2.01472,4.5 -4.5,4.5 -0.11769,0 -0.22834,-0.0224 -0.34375,-0.0312 v 2.21875 c 0,1.00412 0.80838,1.8125 1.8125,1.8125 l 1.54511,-5e-5 2,2.04688 2.0625,-2.04688 h 1.61114 c 1.00413,0 1.8125,-0.80838 1.8125,-1.8125 v -5.375 c 0,-1.00412 -0.80837,-1.8125 -1.8125,-1.8125 z"
 | 
			
		||||
           id="path19253"
 | 
			
		||||
           sodipodi:nodetypes="csscsscccssssc"
 | 
			
		||||
           style="opacity:0.5;color:#000000;fill:#c3c3c3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
 | 
			
		||||
           style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.5;fill:#c3c3c3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;enable-background:accumulate" />
 | 
			
		||||
        <path
 | 
			
		||||
           inkscape:connector-curvature="0"
 | 
			
		||||
           d="m 327.5002,650 c -1.933,0 -3.5,1.567 -3.5,3.5 0,1.933 1.567,3.5 3.5,3.5 1.933,0 3.5,-1.567 3.5,-3.5 0,-1.933 -1.567,-3.5 -3.5,-3.5 z m -0.53125,1 1.03125,0 -0.0625,1.375 a 0.19951718,0.19951718 0 0 0 0,0.0625 0.19951718,0.19951718 0 0 0 0,0.0312 0.19951718,0.19951718 0 0 0 0.125,0.125 0.19951718,0.19951718 0 0 0 0.0312,0 0.19951718,0.19951718 0 0 0 0.0625,0 0.19951718,0.19951718 0 0 0 0.0625,0 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 l 1.15625,-0.75 0.5,0.90625 -1.21875,0.625 a 0.19951718,0.19951718 0 0 0 -0.0312,0 0.19951718,0.19951718 0 0 0 -0.0312,0.0312 0.19951718,0.19951718 0 0 0 -0.0312,0.0937 0.19951718,0.19951718 0 0 0 0,0.0625 0.19951718,0.19951718 0 0 0 0,0.0312 0.19951718,0.19951718 0 0 0 0.0312,0.0625 0.19951718,0.19951718 0 0 0 0.0312,0.0312 0.19951718,0.19951718 0 0 0 0.0312,0.0312 l 1.25,0.625 -0.53125,0.90625 -1.15625,-0.781 a 0.19951718,0.19951718 0 0 0 -0.0312,0 0.19951718,0.19951718 0 0 0 -0.0625,-0.0312 0.19951718,0.19951718 0 0 0 -0.0625,0 0.19951718,0.19951718 0 0 0 -0.125,0.0937 0.19951718,0.19951718 0 0 0 -0.0312,0.0312 0.19951718,0.19951718 0 0 0 0,0.0312 0.19951718,0.19951718 0 0 0 0,0.0625 l 0.0625,1.3751 -1.03125,0 0.0937,-1.375 a 0.19951718,0.19951718 0 0 0 -0.0312,-0.0937 0.19951718,0.19951718 0 0 0 -0.0312,-0.0625 0.19951718,0.19951718 0 0 0 -0.0625,-0.0312 0.19951718,0.19951718 0 0 0 -0.0625,-0.0312 0.19951718,0.19951718 0 0 0 -0.0312,0 0.19951718,0.19951718 0 0 0 -0.0937,0.0312 l -1.1875,0.78125 -0.5,-0.90625 1.25,-0.625 a 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0625 0.19951718,0.19951718 0 0 0 0,-0.0312 0.19951718,0.19951718 0 0 0 0,-0.0625 0.19951718,0.19951718 0 0 0 0,-0.0312 0.19951718,0.19951718 0 0 0 -0.0312,-0.0625 0.19951718,0.19951718 0 0 0 -0.0312,-0.0312 0.19951718,0.19951718 0 0 0 -0.0312,0 l -1.25,-0.625 0.5,-0.90625 1.1875,0.75 a 0.19951718,0.19951718 0 0 0 0.0312,0.0312 0.19951718,0.19951718 0 0 0 0.0625,0 0.19951718,0.19951718 0 0 0 0.0625,0 0.19951718,0.19951718 0 0 0 0.0312,0 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0625 0.19951718,0.19951718 0 0 0 0,-0.0312 L 326.96895,651 z"
 | 
			
		||||
           d="m 327.5002,650 c -1.933,0 -3.5,1.567 -3.5,3.5 0,1.933 1.567,3.5 3.5,3.5 1.933,0 3.5,-1.567 3.5,-3.5 0,-1.933 -1.567,-3.5 -3.5,-3.5 z m -0.53125,1 h 1.03125 l -0.0625,1.375 a 0.19951718,0.19951718 0 0 0 0,0.0625 0.19951718,0.19951718 0 0 0 0,0.0312 0.19951718,0.19951718 0 0 0 0.125,0.125 0.19951718,0.19951718 0 0 0 0.0312,0 0.19951718,0.19951718 0 0 0 0.0625,0 0.19951718,0.19951718 0 0 0 0.0625,0 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 l 1.15625,-0.75 0.5,0.90625 -1.21875,0.625 a 0.19951718,0.19951718 0 0 0 -0.0312,0 0.19951718,0.19951718 0 0 0 -0.0312,0.0312 0.19951718,0.19951718 0 0 0 -0.0312,0.0937 0.19951718,0.19951718 0 0 0 0,0.0625 0.19951718,0.19951718 0 0 0 0,0.0312 0.19951718,0.19951718 0 0 0 0.0312,0.0625 0.19951718,0.19951718 0 0 0 0.0312,0.0312 0.19951718,0.19951718 0 0 0 0.0312,0.0312 l 1.25,0.625 -0.53125,0.90625 -1.15625,-0.781 a 0.19951718,0.19951718 0 0 0 -0.0312,0 0.19951718,0.19951718 0 0 0 -0.0625,-0.0312 0.19951718,0.19951718 0 0 0 -0.0625,0 0.19951718,0.19951718 0 0 0 -0.125,0.0937 0.19951718,0.19951718 0 0 0 -0.0312,0.0312 0.19951718,0.19951718 0 0 0 0,0.0312 0.19951718,0.19951718 0 0 0 0,0.0625 L 328.0002,656 h -1.03125 l 0.0937,-1.375 a 0.19951718,0.19951718 0 0 0 -0.0312,-0.0937 0.19951718,0.19951718 0 0 0 -0.0312,-0.0625 0.19951718,0.19951718 0 0 0 -0.0625,-0.0312 0.19951718,0.19951718 0 0 0 -0.0625,-0.0312 0.19951718,0.19951718 0 0 0 -0.0312,0 0.19951718,0.19951718 0 0 0 -0.0937,0.0312 l -1.1875,0.78125 -0.5,-0.90625 1.25,-0.625 a 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0625 0.19951718,0.19951718 0 0 0 0,-0.0312 0.19951718,0.19951718 0 0 0 0,-0.0625 0.19951718,0.19951718 0 0 0 0,-0.0312 0.19951718,0.19951718 0 0 0 -0.0312,-0.0625 0.19951718,0.19951718 0 0 0 -0.0312,-0.0312 0.19951718,0.19951718 0 0 0 -0.0312,0 l -1.25,-0.625 0.5,-0.90625 1.1875,0.75 a 0.19951718,0.19951718 0 0 0 0.0312,0.0312 0.19951718,0.19951718 0 0 0 0.0625,0 0.19951718,0.19951718 0 0 0 0.0625,0 0.19951718,0.19951718 0 0 0 0.0312,0 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0312 0.19951718,0.19951718 0 0 0 0,-0.0312 0.19951718,0.19951718 0 0 0 0.0312,-0.0625 0.19951718,0.19951718 0 0 0 0,-0.0312 z"
 | 
			
		||||
           id="path19255"
 | 
			
		||||
           style="color:#000000;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
 | 
			
		||||
           style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#bebebe;fill-opacity:1;fill-rule:nonzero;stroke:none;marker:none;enable-background:accumulate" />
 | 
			
		||||
      </g>
 | 
			
		||||
      <g
 | 
			
		||||
         id="g19257"
 | 
			
		||||
@@ -110,5 +202,22 @@
 | 
			
		||||
         style="display:inline"
 | 
			
		||||
         transform="translate(-323.02908,-649.02581)" />
 | 
			
		||||
    </g>
 | 
			
		||||
    <g
 | 
			
		||||
       style="opacity:1;vector-effect:none;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:new"
 | 
			
		||||
       inkscape:label="preferences-system-notifications"
 | 
			
		||||
       id="g13967"
 | 
			
		||||
       transform="matrix(4,0,0,4,-1044.0008,-2172)">
 | 
			
		||||
      <path
 | 
			
		||||
         inkscape:connector-curvature="0"
 | 
			
		||||
         d="m 268.94244,544.94838 c -2.20914,0 -3.33013,1.5 -4,4 l -1,5 c -0.10831,0.54156 -0.44772,1 -1,1 v 1 h 12 v -1 c -0.55229,0 -0.89169,-0.45844 -1,-1 l -1,-5 c -0.53033,-2.5 -1.79086,-4 -4,-4 z"
 | 
			
		||||
         id="path40220"
 | 
			
		||||
         sodipodi:nodetypes="ccsccccscc"
 | 
			
		||||
         style="opacity:1;vector-effect:none;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal" />
 | 
			
		||||
      <path
 | 
			
		||||
         inkscape:connector-curvature="0"
 | 
			
		||||
         d="m 269.11822,556.94838 a 1.5,1.5 0 0 0 1.41211,1 1.5,1.5 0 0 0 1.41211,-1 z"
 | 
			
		||||
         id="path40774"
 | 
			
		||||
         style="opacity:1;vector-effect:none;fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal" />
 | 
			
		||||
    </g>
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
 
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 11 KiB  | 
@@ -1,74 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
 | 
			
		||||
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   width="21"
 | 
			
		||||
   height="10"
 | 
			
		||||
   id="svg2"
 | 
			
		||||
   version="1.1"
 | 
			
		||||
   inkscape:version="0.48.0 r9654"
 | 
			
		||||
   sodipodi:docname="source-button-border.svg">
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs4" />
 | 
			
		||||
  <sodipodi:namedview
 | 
			
		||||
     id="base"
 | 
			
		||||
     pagecolor="#000000"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
     borderopacity="1.0"
 | 
			
		||||
     inkscape:pageopacity="0"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:zoom="44.8"
 | 
			
		||||
     inkscape:cx="8.704132"
 | 
			
		||||
     inkscape:cy="5.7029946"
 | 
			
		||||
     inkscape:document-units="px"
 | 
			
		||||
     inkscape:current-layer="layer1"
 | 
			
		||||
     showgrid="true"
 | 
			
		||||
     showguides="true"
 | 
			
		||||
     inkscape:guide-bbox="true"
 | 
			
		||||
     inkscape:window-width="1600"
 | 
			
		||||
     inkscape:window-height="1145"
 | 
			
		||||
     inkscape:window-x="0"
 | 
			
		||||
     inkscape:window-y="26"
 | 
			
		||||
     inkscape:window-maximized="1"
 | 
			
		||||
     guidetolerance="10000"
 | 
			
		||||
     objecttolerance="10000">
 | 
			
		||||
    <inkscape:grid
 | 
			
		||||
       type="xygrid"
 | 
			
		||||
       id="grid3792"
 | 
			
		||||
       empspacing="10"
 | 
			
		||||
       visible="true"
 | 
			
		||||
       enabled="true"
 | 
			
		||||
       snapvisiblegridlinesonly="true" />
 | 
			
		||||
  </sodipodi:namedview>
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata7">
 | 
			
		||||
    <rdf:RDF>
 | 
			
		||||
      <cc:Work
 | 
			
		||||
         rdf:about="">
 | 
			
		||||
        <dc:format>image/svg+xml</dc:format>
 | 
			
		||||
        <dc:type
 | 
			
		||||
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
 | 
			
		||||
        <dc:title></dc:title>
 | 
			
		||||
      </cc:Work>
 | 
			
		||||
    </rdf:RDF>
 | 
			
		||||
  </metadata>
 | 
			
		||||
  <g
 | 
			
		||||
     inkscape:label="Layer 1"
 | 
			
		||||
     inkscape:groupmode="layer"
 | 
			
		||||
     id="layer1">
 | 
			
		||||
    <rect
 | 
			
		||||
       style="opacity:0.8;fill:#ffffff;fill-opacity:1;stroke-width:0.43599999;stroke-miterlimit:4;stroke-dasharray:none"
 | 
			
		||||
       id="rect3796"
 | 
			
		||||
       width="19"
 | 
			
		||||
       height="2"
 | 
			
		||||
       x="1"
 | 
			
		||||
       y="8" />
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 2.0 KiB  | 
@@ -1,120 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948)  -->
 | 
			
		||||
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns:xlink="http://www.w3.org/1999/xlink"
 | 
			
		||||
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
 | 
			
		||||
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
 | 
			
		||||
   version="1.0"
 | 
			
		||||
   id="Foreground"
 | 
			
		||||
   x="0px"
 | 
			
		||||
   y="0px"
 | 
			
		||||
   width="32"
 | 
			
		||||
   height="32"
 | 
			
		||||
   viewBox="0 0 23.272727 23.272727"
 | 
			
		||||
   enable-background="new 0 0 16 16"
 | 
			
		||||
   xml:space="preserve"
 | 
			
		||||
   sodipodi:version="0.32"
 | 
			
		||||
   inkscape:version="0.48.2 r9819"
 | 
			
		||||
   sodipodi:docname="summary-counter.svg"
 | 
			
		||||
   inkscape:output_extension="org.inkscape.output.svg.inkscape"><metadata
 | 
			
		||||
     id="metadata2399"><rdf:RDF><cc:Work
 | 
			
		||||
         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
 | 
			
		||||
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
 | 
			
		||||
     id="defs2397"><linearGradient
 | 
			
		||||
       id="linearGradient3173"><stop
 | 
			
		||||
         style="stop-color:#c4c4c4;stop-opacity:1;"
 | 
			
		||||
         offset="0"
 | 
			
		||||
         id="stop3175" /><stop
 | 
			
		||||
         style="stop-color:#ffffff;stop-opacity:1;"
 | 
			
		||||
         offset="1"
 | 
			
		||||
         id="stop3177" /></linearGradient><inkscape:perspective
 | 
			
		||||
       sodipodi:type="inkscape:persp3d"
 | 
			
		||||
       inkscape:vp_x="0 : 8 : 1"
 | 
			
		||||
       inkscape:vp_y="0 : 1000 : 0"
 | 
			
		||||
       inkscape:vp_z="16 : 8 : 1"
 | 
			
		||||
       inkscape:persp3d-origin="8 : 5.3333333 : 1"
 | 
			
		||||
       id="perspective2401" /><filter
 | 
			
		||||
       color-interpolation-filters="sRGB"
 | 
			
		||||
       inkscape:collect="always"
 | 
			
		||||
       id="filter16494-4"
 | 
			
		||||
       x="-0.20989846"
 | 
			
		||||
       width="1.4197969"
 | 
			
		||||
       y="-0.20903821"
 | 
			
		||||
       height="1.4180764"><feGaussianBlur
 | 
			
		||||
         inkscape:collect="always"
 | 
			
		||||
         stdDeviation="1.3282637"
 | 
			
		||||
         id="feGaussianBlur16496-8" /></filter><radialGradient
 | 
			
		||||
       inkscape:collect="always"
 | 
			
		||||
       xlink:href="#linearGradient16498-6"
 | 
			
		||||
       id="radialGradient16504-1"
 | 
			
		||||
       cx="7.6582627"
 | 
			
		||||
       cy="5.8191104"
 | 
			
		||||
       fx="7.6582627"
 | 
			
		||||
       fy="5.8191104"
 | 
			
		||||
       r="8.6928644"
 | 
			
		||||
       gradientTransform="matrix(1.0474339,0,0,1.0517402,-0.3632615,-0.42032492)"
 | 
			
		||||
       gradientUnits="userSpaceOnUse" /><linearGradient
 | 
			
		||||
       inkscape:collect="always"
 | 
			
		||||
       id="linearGradient16498-6"><stop
 | 
			
		||||
         style="stop-color:#9FD0FF;stop-opacity:1"
 | 
			
		||||
         offset="0"
 | 
			
		||||
         id="stop16500-8" /><stop
 | 
			
		||||
         style="stop-color:#3465A4;stop-opacity:1"
 | 
			
		||||
         offset="1"
 | 
			
		||||
         id="stop16502-0" /></linearGradient></defs><sodipodi:namedview
 | 
			
		||||
     inkscape:window-height="709"
 | 
			
		||||
     inkscape:window-width="1366"
 | 
			
		||||
     inkscape:pageshadow="2"
 | 
			
		||||
     inkscape:pageopacity="0"
 | 
			
		||||
     guidetolerance="10.0"
 | 
			
		||||
     gridtolerance="10.0"
 | 
			
		||||
     objecttolerance="10.0"
 | 
			
		||||
     borderopacity="1.0"
 | 
			
		||||
     bordercolor="#666666"
 | 
			
		||||
     pagecolor="#000000"
 | 
			
		||||
     id="base"
 | 
			
		||||
     showgrid="false"
 | 
			
		||||
     inkscape:zoom="11.313708"
 | 
			
		||||
     inkscape:cx="15.386407"
 | 
			
		||||
     inkscape:cy="13.739577"
 | 
			
		||||
     inkscape:window-x="0"
 | 
			
		||||
     inkscape:window-y="1179"
 | 
			
		||||
     inkscape:current-layer="g16402-8"
 | 
			
		||||
     showguides="true"
 | 
			
		||||
     inkscape:guide-bbox="true"
 | 
			
		||||
     borderlayer="true"
 | 
			
		||||
     inkscape:showpageshadow="false"
 | 
			
		||||
     inkscape:window-maximized="1"><inkscape:grid
 | 
			
		||||
       type="xygrid"
 | 
			
		||||
       id="grid11246"
 | 
			
		||||
       empspacing="5"
 | 
			
		||||
       visible="true"
 | 
			
		||||
       enabled="true"
 | 
			
		||||
       snapvisiblegridlinesonly="true" /></sodipodi:namedview><g
 | 
			
		||||
     style="display:inline"
 | 
			
		||||
     id="g16402-8"
 | 
			
		||||
     transform="translate(4.7533483,2.8238929)"><g
 | 
			
		||||
       id="g3175-4"
 | 
			
		||||
       transform="translate(-0.89995416,0.94028614)"><path
 | 
			
		||||
         sodipodi:type="inkscape:offset"
 | 
			
		||||
         inkscape:radius="0"
 | 
			
		||||
         inkscape:original="M 7.65625 0.125 C 3.2589349 0.125 -0.3125 3.7070002 -0.3125 8.125 C -0.3125 12.543001 3.2589349 16.125 7.65625 16.125 C 12.053566 16.125 15.625 12.543001 15.625 8.125 C 15.625 3.7070002 12.053566 0.125 7.65625 0.125 z "
 | 
			
		||||
         xlink:href="#path2394-32"
 | 
			
		||||
         style="opacity:0.52994014;color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.18181825;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter16494-4);enable-background:accumulate"
 | 
			
		||||
         id="path16480-5"
 | 
			
		||||
         inkscape:href="#path2394-32"
 | 
			
		||||
         d="m 7.65625,0.125 c -4.3973151,0 -7.96875,3.5820002 -7.96875,8 0,4.418001 3.5714349,8 7.96875,8 4.397316,0 7.96875,-3.581999 7.96875,-8 0,-4.4179998 -3.571434,-8 -7.96875,-8 z"
 | 
			
		||||
         transform="translate(0,1.028519)" /><path
 | 
			
		||||
         clip-rule="evenodd"
 | 
			
		||||
         d="m -0.30428257,8.1237596 c 0,-4.4179998 3.56522987,-7.9999996 7.96254497,-7.9999996 4.3973156,0 7.9625456,3.5819998 7.9625456,7.9999996 0,4.4180014 -3.56523,8.0000004 -7.9625456,8.0000004 -4.3973151,0 -7.96254497,-3.581999 -7.96254497,-8.0000004 z"
 | 
			
		||||
         id="path2394-32"
 | 
			
		||||
         style="color:#000000;fill:url(#radialGradient16504-1);fill-opacity:1;fill-rule:nonzero;stroke:#eeeeec;stroke-width:1.4545455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
 | 
			
		||||
         sodipodi:nodetypes="csssc"
 | 
			
		||||
         inkscape:connector-curvature="0" /><g
 | 
			
		||||
         id="g3172-6" /></g></g></svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 5.4 KiB  | 
| 
		 Before Width: | Height: | Size: 850 B  | 
| 
		 Before Width: | Height: | Size: 841 B  | 
@@ -24,7 +24,7 @@ ifaces = [
 | 
			
		||||
]
 | 
			
		||||
foreach iface : ifaces
 | 
			
		||||
  custom_target(iface[0] + ' docs',
 | 
			
		||||
    input: '../../../data/@0@.xml'.format(iface[0]),
 | 
			
		||||
    input: '../../../data/dbus-interfaces/@0@.xml'.format(iface[0]),
 | 
			
		||||
    output: 'doc-gen-' + iface[1],
 | 
			
		||||
    command: [
 | 
			
		||||
      'gdbus-codegen',
 | 
			
		||||
@@ -50,8 +50,7 @@ gnome.gtkdoc('shell',
 | 
			
		||||
    join_paths(meson.build_root(), 'src')
 | 
			
		||||
  ],
 | 
			
		||||
  scan_args: [
 | 
			
		||||
    '--ignore-headers=' + ' '.join(private_headers + exclude_directories),
 | 
			
		||||
    '--rebuild-types'
 | 
			
		||||
    '--ignore-headers=' + ' '.join(private_headers + exclude_directories)
 | 
			
		||||
  ],
 | 
			
		||||
  install: true
 | 
			
		||||
)
 | 
			
		||||
 
 | 
			
		||||
@@ -17,8 +17,7 @@ gnome.gtkdoc('st',
 | 
			
		||||
  ],
 | 
			
		||||
  scan_args: [
 | 
			
		||||
    '--ignore-headers=' + ' '.join(private_headers),
 | 
			
		||||
    '--rebuild-sections',
 | 
			
		||||
    '--rebuild-types'
 | 
			
		||||
    '--rebuild-sections'
 | 
			
		||||
  ],
 | 
			
		||||
  install: true
 | 
			
		||||
)
 | 
			
		||||
 
 | 
			
		||||
@@ -13,17 +13,9 @@ const _ = Gettext.gettext;
 | 
			
		||||
 | 
			
		||||
const Config = imports.misc.config;
 | 
			
		||||
const ExtensionUtils = imports.misc.extensionUtils;
 | 
			
		||||
const { loadInterfaceXML } = imports.misc.fileUtils;
 | 
			
		||||
 | 
			
		||||
const GnomeShellIface = '<node> \
 | 
			
		||||
<interface name="org.gnome.Shell.Extensions"> \
 | 
			
		||||
<signal name="ExtensionStatusChanged"> \
 | 
			
		||||
    <arg type="s" name="uuid"/> \
 | 
			
		||||
    <arg type="i" name="state"/> \
 | 
			
		||||
    <arg type="s" name="error"/> \
 | 
			
		||||
</signal> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
 | 
			
		||||
const GnomeShellIface = loadInterfaceXML('org.gnome.Shell.Extensions');
 | 
			
		||||
const GnomeShellProxy = Gio.DBusProxy.makeProxyWrapper(GnomeShellIface);
 | 
			
		||||
 | 
			
		||||
function stripPrefix(string, prefix) {
 | 
			
		||||
 
 | 
			
		||||
@@ -242,11 +242,11 @@ var AuthPrompt = new Lang.Class({
 | 
			
		||||
        this.emit('prompted');
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _onVerificationFailed() {
 | 
			
		||||
    _onVerificationFailed(userVerifier, canRetry) {
 | 
			
		||||
        this._queryingService = null;
 | 
			
		||||
        this.clear();
 | 
			
		||||
 | 
			
		||||
        this.updateSensitivity(true);
 | 
			
		||||
        this.updateSensitivity(canRetry);
 | 
			
		||||
        this.setActorInDefaultButtonWell(null);
 | 
			
		||||
        this.verificationStatus = AuthPromptStatus.VERIFICATION_FAILED;
 | 
			
		||||
    },
 | 
			
		||||
@@ -439,6 +439,7 @@ var AuthPrompt = new Lang.Class({
 | 
			
		||||
        this.verificationStatus = AuthPromptStatus.NOT_VERIFYING;
 | 
			
		||||
        this.cancelButton.reactive = true;
 | 
			
		||||
        this.nextButton.label = _("Next");
 | 
			
		||||
        this._preemptiveAnswer = null;
 | 
			
		||||
 | 
			
		||||
        if (this._userVerifier)
 | 
			
		||||
            this._userVerifier.cancel();
 | 
			
		||||
 
 | 
			
		||||
@@ -5,13 +5,14 @@ const Lang = imports.lang;
 | 
			
		||||
const Shell = imports.gi.Shell;
 | 
			
		||||
const Signals = imports.signals;
 | 
			
		||||
 | 
			
		||||
const FprintManagerIface = '<node> \
 | 
			
		||||
<interface name="net.reactivated.Fprint.Manager"> \
 | 
			
		||||
<method name="GetDefaultDevice"> \
 | 
			
		||||
    <arg type="o" direction="out" /> \
 | 
			
		||||
</method> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
const FprintManagerIface = `
 | 
			
		||||
<node>
 | 
			
		||||
<interface name="net.reactivated.Fprint.Manager">
 | 
			
		||||
<method name="GetDefaultDevice">
 | 
			
		||||
    <arg type="o" direction="out" />
 | 
			
		||||
</method>
 | 
			
		||||
</interface>
 | 
			
		||||
</node>`;
 | 
			
		||||
 | 
			
		||||
const FprintManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(FprintManagerIface);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -408,16 +408,18 @@ Signals.addSignalMethods(SessionMenuButton.prototype);
 | 
			
		||||
 | 
			
		||||
var LoginDialog = new Lang.Class({
 | 
			
		||||
    Name: 'LoginDialog',
 | 
			
		||||
    Extends: St.Widget,
 | 
			
		||||
    Signals: { 'failed': {} },
 | 
			
		||||
 | 
			
		||||
    _init(parentActor) {
 | 
			
		||||
        this.actor = new Shell.GenericContainer({ style_class: 'login-dialog',
 | 
			
		||||
                                                  visible: false });
 | 
			
		||||
        this.actor.get_accessible().set_role(Atk.Role.WINDOW);
 | 
			
		||||
        this.parent({ style_class: 'login-dialog',
 | 
			
		||||
                      visible: false });
 | 
			
		||||
 | 
			
		||||
        this.actor.add_constraint(new Layout.MonitorConstraint({ primary: true }));
 | 
			
		||||
        this.actor.connect('allocate', this._onAllocate.bind(this));
 | 
			
		||||
        this.actor.connect('destroy', this._onDestroy.bind(this));
 | 
			
		||||
        parentActor.add_child(this.actor);
 | 
			
		||||
        this.get_accessible().set_role(Atk.Role.WINDOW);
 | 
			
		||||
 | 
			
		||||
        this.add_constraint(new Layout.MonitorConstraint({ primary: true }));
 | 
			
		||||
        this.connect('destroy', this._onDestroy.bind(this));
 | 
			
		||||
        parentActor.add_child(this);
 | 
			
		||||
 | 
			
		||||
        this._userManager = AccountsService.UserManager.get_default()
 | 
			
		||||
        this._gdmClient = new Gdm.Client();
 | 
			
		||||
@@ -442,7 +444,7 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
                                                    y_align: Clutter.ActorAlign.CENTER,
 | 
			
		||||
                                                    vertical: true,
 | 
			
		||||
                                                    visible: false });
 | 
			
		||||
        this.actor.add_child(this._userSelectionBox);
 | 
			
		||||
        this.add_child(this._userSelectionBox);
 | 
			
		||||
 | 
			
		||||
        this._userList = new UserList();
 | 
			
		||||
        this._userSelectionBox.add(this._userList.actor,
 | 
			
		||||
@@ -454,7 +456,7 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
        this._authPrompt.connect('prompted', this._onPrompted.bind(this));
 | 
			
		||||
        this._authPrompt.connect('reset', this._onReset.bind(this));
 | 
			
		||||
        this._authPrompt.hide();
 | 
			
		||||
        this.actor.add_child(this._authPrompt.actor);
 | 
			
		||||
        this.add_child(this._authPrompt.actor);
 | 
			
		||||
 | 
			
		||||
        // translators: this message is shown below the user list on the
 | 
			
		||||
        // login screen. It can be activated to reveal an entry for
 | 
			
		||||
@@ -482,7 +484,7 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
                                               opacity: 0,
 | 
			
		||||
                                               vscrollbar_policy: Gtk.PolicyType.AUTOMATIC,
 | 
			
		||||
                                               hscrollbar_policy: Gtk.PolicyType.NEVER });
 | 
			
		||||
        this.actor.add_child(this._bannerView);
 | 
			
		||||
        this.add_child(this._bannerView);
 | 
			
		||||
 | 
			
		||||
        let bannerBox = new St.BoxLayout({ vertical: true });
 | 
			
		||||
 | 
			
		||||
@@ -497,7 +499,7 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
        this._logoBin = new St.Widget({ style_class: 'login-dialog-logo-bin',
 | 
			
		||||
                                        x_align: Clutter.ActorAlign.CENTER,
 | 
			
		||||
                                        y_align: Clutter.ActorAlign.END });
 | 
			
		||||
        this.actor.add_child(this._logoBin);
 | 
			
		||||
        this.add_child(this._logoBin);
 | 
			
		||||
        this._updateLogo();
 | 
			
		||||
 | 
			
		||||
        this._userList.connect('activate', (userList, item) => {
 | 
			
		||||
@@ -576,7 +578,12 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
        return actorBox;
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _onAllocate(actor, dialogBox, flags) {
 | 
			
		||||
    vfunc_allocate(dialogBox, flags) {
 | 
			
		||||
        this.set_allocation(dialogBox, flags);
 | 
			
		||||
 | 
			
		||||
        let themeNode = this.get_theme_node();
 | 
			
		||||
        dialogBox = themeNode.get_content_box(dialogBox);
 | 
			
		||||
 | 
			
		||||
        let dialogWidth = dialogBox.x2 - dialogBox.x1;
 | 
			
		||||
        let dialogHeight = dialogBox.y2 - dialogBox.y1;
 | 
			
		||||
 | 
			
		||||
@@ -919,10 +926,10 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _loginScreenSessionActivated() {
 | 
			
		||||
        if (this.actor.opacity == 255 && this._authPrompt.verificationStatus == AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
 | 
			
		||||
        if (this.opacity == 255 && this._authPrompt.verificationStatus == AuthPrompt.AuthPromptStatus.NOT_VERIFYING)
 | 
			
		||||
            return;
 | 
			
		||||
 | 
			
		||||
        Tweener.addTween(this.actor,
 | 
			
		||||
        Tweener.addTween(this,
 | 
			
		||||
                         { opacity: 255,
 | 
			
		||||
                           time: _FADE_ANIMATION_TIME,
 | 
			
		||||
                           transition: 'easeOutQuad',
 | 
			
		||||
@@ -931,7 +938,7 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
 | 
			
		||||
                               for (let i = 0; i < children.length; i++) {
 | 
			
		||||
                                   if (children[i] != Main.layoutManager.screenShieldGroup)
 | 
			
		||||
                                       children[i].opacity = this.actor.opacity;
 | 
			
		||||
                                       children[i].opacity = this.opacity;
 | 
			
		||||
                               }
 | 
			
		||||
                           },
 | 
			
		||||
                           onUpdateScope: this,
 | 
			
		||||
@@ -952,7 +959,7 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _startSession(serviceName) {
 | 
			
		||||
        Tweener.addTween(this.actor,
 | 
			
		||||
        Tweener.addTween(this,
 | 
			
		||||
                         { opacity: 0,
 | 
			
		||||
                           time: _FADE_ANIMATION_TIME,
 | 
			
		||||
                           transition: 'easeOutQuad',
 | 
			
		||||
@@ -961,7 +968,7 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
 | 
			
		||||
                               for (let i = 0; i < children.length; i++) {
 | 
			
		||||
                                   if (children[i] != Main.layoutManager.screenShieldGroup)
 | 
			
		||||
                                       children[i].opacity = this.actor.opacity;
 | 
			
		||||
                                       children[i].opacity = this.opacity;
 | 
			
		||||
                               }
 | 
			
		||||
                           },
 | 
			
		||||
                           onUpdateScope: this,
 | 
			
		||||
@@ -1230,17 +1237,17 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    open() {
 | 
			
		||||
        Main.ctrlAltTabManager.addGroup(this.actor,
 | 
			
		||||
        Main.ctrlAltTabManager.addGroup(this,
 | 
			
		||||
                                        _("Login Window"),
 | 
			
		||||
                                        'dialog-password-symbolic',
 | 
			
		||||
                                        { sortGroup: CtrlAltTab.SortGroup.MIDDLE });
 | 
			
		||||
        this._userList.actor.grab_key_focus();
 | 
			
		||||
        this.actor.show();
 | 
			
		||||
        this.actor.opacity = 0;
 | 
			
		||||
        this.show();
 | 
			
		||||
        this.opacity = 0;
 | 
			
		||||
 | 
			
		||||
        Main.pushModal(this.actor, { actionMode: Shell.ActionMode.LOGIN_SCREEN });
 | 
			
		||||
        Main.pushModal(this, { actionMode: Shell.ActionMode.LOGIN_SCREEN });
 | 
			
		||||
 | 
			
		||||
        Tweener.addTween(this.actor,
 | 
			
		||||
        Tweener.addTween(this,
 | 
			
		||||
                         { opacity: 255,
 | 
			
		||||
                           time: 1,
 | 
			
		||||
                           transition: 'easeInQuad' });
 | 
			
		||||
@@ -1249,8 +1256,8 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    close() {
 | 
			
		||||
        Main.popModal(this.actor);
 | 
			
		||||
        Main.ctrlAltTabManager.removeGroup(this.actor);
 | 
			
		||||
        Main.popModal(this);
 | 
			
		||||
        Main.ctrlAltTabManager.removeGroup(this);
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    cancel() {
 | 
			
		||||
@@ -1265,4 +1272,3 @@ var LoginDialog = new Lang.Class({
 | 
			
		||||
        this._authPrompt.finish(onComplete);
 | 
			
		||||
    },
 | 
			
		||||
});
 | 
			
		||||
Signals.addSignalMethods(LoginDialog.prototype);
 | 
			
		||||
 
 | 
			
		||||
@@ -4,13 +4,14 @@ const Gio = imports.gi.Gio;
 | 
			
		||||
const Lang = imports.lang;
 | 
			
		||||
const Signals = imports.signals;
 | 
			
		||||
 | 
			
		||||
const OVirtCredentialsIface = '<node> \
 | 
			
		||||
<interface name="org.ovirt.vdsm.Credentials"> \
 | 
			
		||||
<signal name="UserAuthenticated"> \
 | 
			
		||||
    <arg type="s" name="token"/> \
 | 
			
		||||
</signal> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
const OVirtCredentialsIface = `
 | 
			
		||||
<node>
 | 
			
		||||
<interface name="org.ovirt.vdsm.Credentials">
 | 
			
		||||
<signal name="UserAuthenticated">
 | 
			
		||||
    <arg type="s" name="token"/>
 | 
			
		||||
</signal>
 | 
			
		||||
</interface>
 | 
			
		||||
</node>`;
 | 
			
		||||
 | 
			
		||||
const OVirtCredentialsInfo = Gio.DBusInterfaceInfo.new_for_xml(OVirtCredentialsIface);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -5,58 +5,15 @@ const Lang = imports.lang;
 | 
			
		||||
const Shell = imports.gi.Shell;
 | 
			
		||||
const Signals = imports.signals;
 | 
			
		||||
 | 
			
		||||
const ProviderIface = '<node> \
 | 
			
		||||
<interface name="org.freedesktop.realmd.Provider"> \
 | 
			
		||||
    <property name="Name" type="s" access="read"/> \
 | 
			
		||||
    <property name="Version" type="s" access="read"/> \
 | 
			
		||||
    <property name="Realms" type="ao" access="read"/> \
 | 
			
		||||
    <method name="Discover"> \
 | 
			
		||||
        <arg name="string" type="s" direction="in"/> \
 | 
			
		||||
        <arg name="options" type="a{sv}" direction="in"/> \
 | 
			
		||||
        <arg name="relevance" type="i" direction="out"/> \
 | 
			
		||||
        <arg name="realm" type="ao" direction="out"/> \
 | 
			
		||||
    </method> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
const { loadInterfaceXML } = imports.misc.fileUtils;
 | 
			
		||||
 | 
			
		||||
const ProviderIface = loadInterfaceXML("org.freedesktop.realmd.Provider");
 | 
			
		||||
const Provider = Gio.DBusProxy.makeProxyWrapper(ProviderIface);
 | 
			
		||||
 | 
			
		||||
const ServiceIface = '<node> \
 | 
			
		||||
<interface name="org.freedesktop.realmd.Service"> \
 | 
			
		||||
    <method name="Cancel"> \
 | 
			
		||||
        <arg name="operation" type="s" direction="in"/> \
 | 
			
		||||
    </method> \
 | 
			
		||||
    <method name="Release" /> \
 | 
			
		||||
    <method name="SetLocale"> \
 | 
			
		||||
        <arg name="locale" type="s" direction="in"/> \
 | 
			
		||||
    </method> \
 | 
			
		||||
    <signal name="Diagnostics"> \
 | 
			
		||||
        <arg name="data" type="s"/> \
 | 
			
		||||
        <arg name="operation" type="s"/> \
 | 
			
		||||
    </signal> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
const ServiceIface = loadInterfaceXML("org.freedesktop.realmd.Service");
 | 
			
		||||
const Service = Gio.DBusProxy.makeProxyWrapper(ServiceIface);
 | 
			
		||||
 | 
			
		||||
const RealmIface = '<node> \
 | 
			
		||||
<interface name="org.freedesktop.realmd.Realm"> \
 | 
			
		||||
    <property name="Name" type="s" access="read"/> \
 | 
			
		||||
    <property name="Configured" type="s" access="read"/> \
 | 
			
		||||
    <property name="Details" type="a(ss)" access="read"/> \
 | 
			
		||||
    <property name="LoginFormats" type="as" access="read"/> \
 | 
			
		||||
    <property name="LoginPolicy" type="s" access="read"/> \
 | 
			
		||||
    <property name="PermittedLogins" type="as" access="read"/> \
 | 
			
		||||
    <property name="SupportedInterfaces" type="as" access="read"/> \
 | 
			
		||||
    <method name="ChangeLoginPolicy"> \
 | 
			
		||||
        <arg name="login_policy" type="s" direction="in"/> \
 | 
			
		||||
        <arg name="permitted_add" type="as" direction="in"/> \
 | 
			
		||||
        <arg name="permitted_remove" type="as" direction="in"/> \
 | 
			
		||||
        <arg name="options" type="a{sv}" direction="in"/> \
 | 
			
		||||
    </method> \
 | 
			
		||||
    <method name="Deconfigure"> \
 | 
			
		||||
        <arg name="options" type="a{sv}" direction="in"/> \
 | 
			
		||||
    </method> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
const RealmIface = loadInterfaceXML("org.freedesktop.realmd.Realm");
 | 
			
		||||
const Realm = Gio.DBusProxy.makeProxyWrapper(RealmIface);
 | 
			
		||||
 | 
			
		||||
var Manager = new Lang.Class({
 | 
			
		||||
 
 | 
			
		||||
@@ -350,16 +350,19 @@ var ShellUserVerifier = new Lang.Class({
 | 
			
		||||
        try {
 | 
			
		||||
            this._clearUserVerifier();
 | 
			
		||||
            this._userVerifier = client.open_reauthentication_channel_finish(result);
 | 
			
		||||
        } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) {
 | 
			
		||||
            return;
 | 
			
		||||
        } catch(e if e.matches(Gio.DBusError, Gio.DBusError.ACCESS_DENIED) &&
 | 
			
		||||
                !this._reauthOnly) {
 | 
			
		||||
            // Gdm emits org.freedesktop.DBus.Error.AccessDenied when there is
 | 
			
		||||
            // no session to reauthenticate. Fall back to performing verification
 | 
			
		||||
            // from this login session
 | 
			
		||||
            client.get_user_verifier(this._cancellable, this._userVerifierGot.bind(this));
 | 
			
		||||
            return;
 | 
			
		||||
        } catch(e) {
 | 
			
		||||
            if (e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED))
 | 
			
		||||
                return;
 | 
			
		||||
            if (e.matches(Gio.DBusError, Gio.DBusError.ACCESS_DENIED) &&
 | 
			
		||||
                !this._reauthOnly) {
 | 
			
		||||
                // Gdm emits org.freedesktop.DBus.Error.AccessDenied when there
 | 
			
		||||
                // is no session to reauthenticate. Fall back to performing
 | 
			
		||||
                // verification from this login session
 | 
			
		||||
                client.get_user_verifier(this._cancellable,
 | 
			
		||||
                                         this._userVerifierGot.bind(this));
 | 
			
		||||
                return;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            this._reportInitError('Failed to open reauthentication channel', e);
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
@@ -374,9 +377,9 @@ var ShellUserVerifier = new Lang.Class({
 | 
			
		||||
        try {
 | 
			
		||||
            this._clearUserVerifier();
 | 
			
		||||
            this._userVerifier = client.get_user_verifier_finish(result);
 | 
			
		||||
        } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) {
 | 
			
		||||
            return;
 | 
			
		||||
        } catch(e) {
 | 
			
		||||
            if (e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED))
 | 
			
		||||
                return;
 | 
			
		||||
            this._reportInitError('Failed to obtain user verifier', e);
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
@@ -434,9 +437,9 @@ var ShellUserVerifier = new Lang.Class({
 | 
			
		||||
                                                               (obj, result) => {
 | 
			
		||||
               try {
 | 
			
		||||
                   obj.call_begin_verification_for_user_finish(result);
 | 
			
		||||
               } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) {
 | 
			
		||||
                   return;
 | 
			
		||||
               } catch(e) {
 | 
			
		||||
                   if (e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED))
 | 
			
		||||
                       return;
 | 
			
		||||
                   this._reportInitError('Failed to start verification for user', e);
 | 
			
		||||
                   return;
 | 
			
		||||
               }
 | 
			
		||||
@@ -449,9 +452,9 @@ var ShellUserVerifier = new Lang.Class({
 | 
			
		||||
                                                      (obj, result) => {
 | 
			
		||||
               try {
 | 
			
		||||
                   obj.call_begin_verification_finish(result);
 | 
			
		||||
               } catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) {
 | 
			
		||||
                   return;
 | 
			
		||||
               } catch(e) {
 | 
			
		||||
                   if (e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED))
 | 
			
		||||
                       return;
 | 
			
		||||
                   this._reportInitError('Failed to start verification', e);
 | 
			
		||||
                   return;
 | 
			
		||||
               }
 | 
			
		||||
@@ -534,12 +537,13 @@ var ShellUserVerifier = new Lang.Class({
 | 
			
		||||
    _verificationFailed(retry) {
 | 
			
		||||
        // For Not Listed / enterprise logins, immediately reset
 | 
			
		||||
        // the dialog
 | 
			
		||||
        // Otherwise, we allow ALLOWED_FAILURES attempts. After that, we
 | 
			
		||||
        // go back to the welcome screen.
 | 
			
		||||
        // Otherwise, when in login mode we allow ALLOWED_FAILURES attempts.
 | 
			
		||||
        // After that, we go back to the welcome screen.
 | 
			
		||||
 | 
			
		||||
        this._failCounter++;
 | 
			
		||||
        let canRetry = retry && this._userName &&
 | 
			
		||||
            this._failCounter < this._settings.get_int(ALLOWED_FAILURES_KEY);
 | 
			
		||||
            (this._reauthOnly ||
 | 
			
		||||
             this._failCounter < this._settings.get_int(ALLOWED_FAILURES_KEY));
 | 
			
		||||
 | 
			
		||||
        if (canRetry) {
 | 
			
		||||
            if (!this.hasPendingMessages) {
 | 
			
		||||
@@ -562,7 +566,7 @@ var ShellUserVerifier = new Lang.Class({
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        this.emit('verification-failed');
 | 
			
		||||
        this.emit('verification-failed', canRetry);
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _onConversationStopped(client, serviceName) {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,8 +9,6 @@
 | 
			
		||||
    <file>gdm/realmd.js</file>
 | 
			
		||||
    <file>gdm/util.js</file>
 | 
			
		||||
 | 
			
		||||
    <file>extensionPrefs/main.js</file>
 | 
			
		||||
 | 
			
		||||
    <file>misc/config.js</file>
 | 
			
		||||
    <file>misc/extensionUtils.js</file>
 | 
			
		||||
    <file>misc/fileUtils.js</file>
 | 
			
		||||
@@ -33,8 +31,6 @@
 | 
			
		||||
    <file>perf/core.js</file>
 | 
			
		||||
    <file>perf/hwtest.js</file>
 | 
			
		||||
 | 
			
		||||
    <file>portalHelper/main.js</file>
 | 
			
		||||
 | 
			
		||||
    <file>ui/accessDialog.js</file>
 | 
			
		||||
    <file>ui/altTab.js</file>
 | 
			
		||||
    <file>ui/animation.js</file>
 | 
			
		||||
@@ -43,6 +39,7 @@
 | 
			
		||||
    <file>ui/audioDeviceSelection.js</file>
 | 
			
		||||
    <file>ui/backgroundMenu.js</file>
 | 
			
		||||
    <file>ui/background.js</file>
 | 
			
		||||
    <file>ui/barLevel.js</file>
 | 
			
		||||
    <file>ui/boxpointer.js</file>
 | 
			
		||||
    <file>ui/calendar.js</file>
 | 
			
		||||
    <file>ui/checkBox.js</file>
 | 
			
		||||
@@ -130,6 +127,7 @@
 | 
			
		||||
    <file>ui/status/rfkill.js</file>
 | 
			
		||||
    <file>ui/status/volume.js</file>
 | 
			
		||||
    <file>ui/status/bluetooth.js</file>
 | 
			
		||||
    <file>ui/status/remoteAccess.js</file>
 | 
			
		||||
    <file>ui/status/screencast.js</file>
 | 
			
		||||
    <file>ui/status/system.js</file>
 | 
			
		||||
    <file>ui/status/thunderbolt.js</file>
 | 
			
		||||
 
 | 
			
		||||
@@ -6,3 +6,17 @@ js_resources = gnome.compile_resources(
 | 
			
		||||
  c_name: 'shell_js_resources',
 | 
			
		||||
  dependencies: [config_js]
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
portal_resources = gnome.compile_resources(
 | 
			
		||||
  'portal-resources', 'portal-resources.gresource.xml',
 | 
			
		||||
  source_dir: ['.', meson.current_build_dir()],
 | 
			
		||||
  c_name: 'portal_js_resources',
 | 
			
		||||
  dependencies: [config_js]
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
prefs_resources = gnome.compile_resources(
 | 
			
		||||
  'prefs-resources', 'prefs-resources.gresource.xml',
 | 
			
		||||
  source_dir: ['.', meson.current_build_dir()],
 | 
			
		||||
  c_name: 'prefs_js_resources',
 | 
			
		||||
  dependencies: [config_js]
 | 
			
		||||
)
 | 
			
		||||
 
 | 
			
		||||
@@ -14,6 +14,7 @@ var GETTEXT_PACKAGE = '@GETTEXT_PACKAGE@';
 | 
			
		||||
var LOCALEDIR = '@datadir@/locale';
 | 
			
		||||
/* other standard directories */
 | 
			
		||||
var LIBEXECDIR = '@libexecdir@';
 | 
			
		||||
var PKGDATADIR = '@datadir@/@PACKAGE_NAME@';
 | 
			
		||||
var VPNDIR = '@vpndir@';
 | 
			
		||||
/* g-i package versions */
 | 
			
		||||
var LIBMUTTER_API_VERSION = '@LIBMUTTER_API_VERSION@'
 | 
			
		||||
 
 | 
			
		||||
@@ -112,6 +112,8 @@ function createExtensionObject(uuid, dir, type) {
 | 
			
		||||
    let metadataContents, success, tag;
 | 
			
		||||
    try {
 | 
			
		||||
        [success, metadataContents, tag] = metadataFile.load_contents(null);
 | 
			
		||||
        if (metadataContents instanceof Uint8Array)
 | 
			
		||||
            metadataContents = imports.byteArray.toString(metadataContents);
 | 
			
		||||
    } catch (e) {
 | 
			
		||||
        throw new Error('Failed to load metadata.json: ' + e);
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -3,6 +3,7 @@
 | 
			
		||||
const Gio = imports.gi.Gio;
 | 
			
		||||
const GLib = imports.gi.GLib;
 | 
			
		||||
const Lang = imports.lang;
 | 
			
		||||
const Config = imports.misc.config;
 | 
			
		||||
const Params = imports.misc.params;
 | 
			
		||||
 | 
			
		||||
function collectFromDatadirs(subdir, includeUserDir, processFile) {
 | 
			
		||||
@@ -70,3 +71,30 @@ function recursivelyMoveDir(srcDir, destDir) {
 | 
			
		||||
            recursivelyMoveDir(srcChild, destChild);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
let _ifaceResource = null;
 | 
			
		||||
function loadInterfaceXML(iface) {
 | 
			
		||||
    if (!_ifaceResource) {
 | 
			
		||||
        // don't use global.datadir so the method is usable from tests/tools
 | 
			
		||||
        let dir = GLib.getenv ('GNOME_SHELL_DATADIR') || Config.PKGDATADIR;
 | 
			
		||||
        let path = dir + '/gnome-shell-dbus-interfaces.gresource';
 | 
			
		||||
        _ifaceResource = Gio.Resource.load(path);
 | 
			
		||||
        _ifaceResource._register();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    let xml = null;
 | 
			
		||||
    let uri = 'resource:///org/gnome/shell/dbus-interfaces/' + iface + '.xml';
 | 
			
		||||
    let f = Gio.File.new_for_uri(uri);
 | 
			
		||||
 | 
			
		||||
    try {
 | 
			
		||||
        let [ok, bytes] = f.load_contents(null);
 | 
			
		||||
        if (bytes instanceof Uint8Array)
 | 
			
		||||
            xml = imports.byteArray.toString(bytes)
 | 
			
		||||
        else
 | 
			
		||||
            xml = bytes.toString();
 | 
			
		||||
    } catch (e) {
 | 
			
		||||
        log('Failed to load D-Bus interface ' + iface);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    return xml;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -4,17 +4,9 @@ const Gio = imports.gi.Gio;
 | 
			
		||||
const Lang = imports.lang;
 | 
			
		||||
const Signals = imports.signals;
 | 
			
		||||
 | 
			
		||||
const PresenceIface = '<node> \
 | 
			
		||||
<interface name="org.gnome.SessionManager.Presence"> \
 | 
			
		||||
<method name="SetStatus"> \
 | 
			
		||||
    <arg type="u" direction="in"/> \
 | 
			
		||||
</method> \
 | 
			
		||||
<property name="status" type="u" access="readwrite"/> \
 | 
			
		||||
<signal name="StatusChanged"> \
 | 
			
		||||
    <arg type="u" direction="out"/> \
 | 
			
		||||
</signal> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
const { loadInterfaceXML } = imports.misc.fileUtils;
 | 
			
		||||
 | 
			
		||||
const PresenceIface = loadInterfaceXML('org.gnome.SessionManager.Presence');
 | 
			
		||||
 | 
			
		||||
var PresenceStatus = {
 | 
			
		||||
    AVAILABLE: 0,
 | 
			
		||||
@@ -32,47 +24,14 @@ function Presence(initCallback, cancellable) {
 | 
			
		||||
// Note inhibitors are immutable objects, so they don't
 | 
			
		||||
// change at runtime (changes always come in the form
 | 
			
		||||
// of new inhibitors)
 | 
			
		||||
const InhibitorIface = '<node> \
 | 
			
		||||
<interface name="org.gnome.SessionManager.Inhibitor"> \
 | 
			
		||||
<method name="GetAppId"> \
 | 
			
		||||
    <arg type="s" direction="out" /> \
 | 
			
		||||
</method> \
 | 
			
		||||
<method name="GetReason"> \
 | 
			
		||||
    <arg type="s" direction="out" /> \
 | 
			
		||||
</method> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
 | 
			
		||||
const InhibitorIface = loadInterfaceXML('org.gnome.SessionManager.Inhibitor');
 | 
			
		||||
var InhibitorProxy = Gio.DBusProxy.makeProxyWrapper(InhibitorIface);
 | 
			
		||||
function Inhibitor(objectPath, initCallback, cancellable) {
 | 
			
		||||
    return new InhibitorProxy(Gio.DBus.session, 'org.gnome.SessionManager', objectPath, initCallback, cancellable);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Not the full interface, only the methods we use
 | 
			
		||||
const SessionManagerIface = '<node> \
 | 
			
		||||
<interface name="org.gnome.SessionManager"> \
 | 
			
		||||
<method name="Logout"> \
 | 
			
		||||
    <arg type="u" direction="in" /> \
 | 
			
		||||
</method> \
 | 
			
		||||
<method name="Shutdown" /> \
 | 
			
		||||
<method name="Reboot" /> \
 | 
			
		||||
<method name="CanShutdown"> \
 | 
			
		||||
    <arg type="b" direction="out" /> \
 | 
			
		||||
</method> \
 | 
			
		||||
<method name="IsInhibited"> \
 | 
			
		||||
    <arg type="u" direction="in" /> \
 | 
			
		||||
    <arg type="b" direction="out" /> \
 | 
			
		||||
</method> \
 | 
			
		||||
<property name="SessionIsActive" type="b" access="read"/> \
 | 
			
		||||
<signal name="InhibitorAdded"> \
 | 
			
		||||
    <arg type="o" direction="out"/> \
 | 
			
		||||
</signal> \
 | 
			
		||||
<signal name="InhibitorRemoved"> \
 | 
			
		||||
    <arg type="o" direction="out"/> \
 | 
			
		||||
</signal> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
 | 
			
		||||
const SessionManagerIface = loadInterfaceXML('org.gnome.SessionManager');
 | 
			
		||||
var SessionManagerProxy = Gio.DBusProxy.makeProxyWrapper(SessionManagerIface);
 | 
			
		||||
function SessionManager(initCallback, cancellable) {
 | 
			
		||||
    return new SessionManagerProxy(Gio.DBus.session, 'org.gnome.SessionManager', '/org/gnome/SessionManager', initCallback, cancellable);
 | 
			
		||||
 
 | 
			
		||||
@@ -76,6 +76,7 @@ var HistoryManager = new Lang.Class({
 | 
			
		||||
        if (this._history.length == 0 ||
 | 
			
		||||
            this._history[this._history.length - 1] != input) {
 | 
			
		||||
 | 
			
		||||
            this._history = this._history.filter(entry => entry != input);
 | 
			
		||||
            this._history.push(input);
 | 
			
		||||
            this._save();
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
@@ -115,6 +115,16 @@ var IBusManager = new Lang.Class({
 | 
			
		||||
                                                         object_path: IBus.PATH_PANEL });
 | 
			
		||||
            this._candidatePopup.setPanelService(this._panelService);
 | 
			
		||||
            this._panelService.connect('update-property', this._updateProperty.bind(this));
 | 
			
		||||
            this._panelService.connect('set-cursor-location', (ps, x, y, w, h) => {
 | 
			
		||||
                let cursorLocation = { x, y, width: w, height: h };
 | 
			
		||||
                this.emit('set-cursor-location', cursorLocation);
 | 
			
		||||
            });
 | 
			
		||||
            this._panelService.connect('focus-in', (panel, path) => {
 | 
			
		||||
                if (!GLib.str_has_suffix(path, '/InputContext_1'))
 | 
			
		||||
                    this.emit ('focus-in');
 | 
			
		||||
            });
 | 
			
		||||
            this._panelService.connect('focus-out', () => { this.emit('focus-out'); });
 | 
			
		||||
 | 
			
		||||
            try {
 | 
			
		||||
                // IBus versions older than 1.5.10 have a bug which
 | 
			
		||||
                // causes spurious set-content-type emissions when
 | 
			
		||||
 
 | 
			
		||||
@@ -15,6 +15,8 @@ var InputMethod = new Lang.Class({
 | 
			
		||||
        this._purpose = 0;
 | 
			
		||||
        this._enabled = true;
 | 
			
		||||
        this._currentFocus = null;
 | 
			
		||||
        this._preeditStr = '';
 | 
			
		||||
        this._preeditPos = 0;
 | 
			
		||||
        this._ibus = IBus.Bus.new_async();
 | 
			
		||||
        this._ibus.connect('connected', this._onConnected.bind(this));
 | 
			
		||||
        this._ibus.connect('disconnected', this._clear.bind(this));
 | 
			
		||||
@@ -64,6 +66,9 @@ var InputMethod = new Lang.Class({
 | 
			
		||||
        this._context.connect('commit-text', this._onCommitText.bind(this));
 | 
			
		||||
        this._context.connect('delete-surrounding-text', this._onDeleteSurroundingText.bind(this));
 | 
			
		||||
        this._context.connect('update-preedit-text', this._onUpdatePreeditText.bind(this));
 | 
			
		||||
        this._context.connect('show-preedit-text', this._onShowPreeditText.bind(this));
 | 
			
		||||
        this._context.connect('hide-preedit-text', this._onHidePreeditText.bind(this));
 | 
			
		||||
        this._context.connect('forward-key-event', this._onForwardKeyEvent.bind(this));
 | 
			
		||||
 | 
			
		||||
        this._updateCapabilities();
 | 
			
		||||
    },
 | 
			
		||||
@@ -73,6 +78,8 @@ var InputMethod = new Lang.Class({
 | 
			
		||||
        this._hints = 0;
 | 
			
		||||
        this._purpose = 0;
 | 
			
		||||
        this._enabled = false;
 | 
			
		||||
        this._preeditStr = ''
 | 
			
		||||
        this._preeditPos = 0;
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _emitRequestSurrounding() {
 | 
			
		||||
@@ -89,11 +96,36 @@ var InputMethod = new Lang.Class({
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _onUpdatePreeditText(context, text, pos, visible) {
 | 
			
		||||
        let str = null;
 | 
			
		||||
        if (visible && text != null)
 | 
			
		||||
            str = text.get_text();
 | 
			
		||||
        if (text == null)
 | 
			
		||||
            return;
 | 
			
		||||
        this._preeditStr = text.get_text();
 | 
			
		||||
        this._preeditPos = pos;
 | 
			
		||||
        if (visible)
 | 
			
		||||
            this.set_preedit_text(this._preeditStr, pos);
 | 
			
		||||
        else
 | 
			
		||||
            this.set_preedit_text(null, pos);
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
        this.set_preedit_text(str, pos);
 | 
			
		||||
    _onShowPreeditText(context) {
 | 
			
		||||
        this.set_preedit_text(this._preeditStr, this._preeditPos);
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _onHidePreeditText(context) {
 | 
			
		||||
        this.set_preedit_text(null, this._preeditPos);
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    _onForwardKeyEvent(context, keyval, keycode, state) {
 | 
			
		||||
        let press = (state & IBus.ModifierType.RELEASE_MASK) == 0;
 | 
			
		||||
        state &= ~(IBus.ModifierType.RELEASE_MASK);
 | 
			
		||||
 | 
			
		||||
        let curEvent = Clutter.get_current_event();
 | 
			
		||||
        let time;
 | 
			
		||||
        if (curEvent)
 | 
			
		||||
            time = curEvent.get_time();
 | 
			
		||||
        else
 | 
			
		||||
            time = global.display.get_current_time_roundtrip();
 | 
			
		||||
 | 
			
		||||
        this.forward_key(keyval, keycode + 8, state & Clutter.ModifierType.MODIFIER_MASK, time, press);
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    vfunc_focus_in(focus) {
 | 
			
		||||
@@ -135,8 +167,11 @@ var InputMethod = new Lang.Class({
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    vfunc_set_surrounding(text, cursor, anchor) {
 | 
			
		||||
        if (this._context)
 | 
			
		||||
            this._context.set_surrounding_text(text, cursor, anchor);
 | 
			
		||||
        if (!this._context || !text)
 | 
			
		||||
            return;
 | 
			
		||||
 | 
			
		||||
        let ibusText = IBus.Text.new_from_string(text);
 | 
			
		||||
        this._context.set_surrounding_text(ibusText, cursor, anchor);
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    vfunc_update_content_hints(hints) {
 | 
			
		||||
@@ -197,6 +232,7 @@ var InputMethod = new Lang.Class({
 | 
			
		||||
 | 
			
		||||
        if (event.type() == Clutter.EventType.KEY_RELEASE)
 | 
			
		||||
            state |= IBus.ModifierType.RELEASE_MASK;
 | 
			
		||||
 | 
			
		||||
        this._context.process_key_event_async(event.get_key_symbol(),
 | 
			
		||||
                                              event.get_key_code() - 8, // Convert XKB keycodes to evcodes
 | 
			
		||||
                                              state, -1, null,
 | 
			
		||||
 
 | 
			
		||||
@@ -7,47 +7,15 @@ const Mainloop = imports.mainloop;
 | 
			
		||||
const Shell = imports.gi.Shell;
 | 
			
		||||
const Signals = imports.signals;
 | 
			
		||||
 | 
			
		||||
const SystemdLoginManagerIface = '<node> \
 | 
			
		||||
<interface name="org.freedesktop.login1.Manager"> \
 | 
			
		||||
<method name="Suspend"> \
 | 
			
		||||
    <arg type="b" direction="in"/> \
 | 
			
		||||
</method> \
 | 
			
		||||
<method name="CanSuspend"> \
 | 
			
		||||
    <arg type="s" direction="out"/> \
 | 
			
		||||
</method> \
 | 
			
		||||
<method name="Inhibit"> \
 | 
			
		||||
    <arg type="s" direction="in"/> \
 | 
			
		||||
    <arg type="s" direction="in"/> \
 | 
			
		||||
    <arg type="s" direction="in"/> \
 | 
			
		||||
    <arg type="s" direction="in"/> \
 | 
			
		||||
    <arg type="h" direction="out"/> \
 | 
			
		||||
</method> \
 | 
			
		||||
<method name="GetSession"> \
 | 
			
		||||
    <arg type="s" direction="in"/> \
 | 
			
		||||
    <arg type="o" direction="out"/> \
 | 
			
		||||
</method> \
 | 
			
		||||
<method name="ListSessions"> \
 | 
			
		||||
    <arg name="sessions" type="a(susso)" direction="out"/> \
 | 
			
		||||
</method> \
 | 
			
		||||
<signal name="PrepareForSleep"> \
 | 
			
		||||
    <arg type="b" direction="out"/> \
 | 
			
		||||
</signal> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
const { loadInterfaceXML } = imports.misc.fileUtils;
 | 
			
		||||
 | 
			
		||||
const SystemdLoginSessionIface = '<node> \
 | 
			
		||||
<interface name="org.freedesktop.login1.Session"> \
 | 
			
		||||
<signal name="Lock" /> \
 | 
			
		||||
<signal name="Unlock" /> \
 | 
			
		||||
<property name="Active" type="b" access="read" /> \
 | 
			
		||||
<method name="SetLockedHint"> \
 | 
			
		||||
    <arg type="b" direction="in"/> \
 | 
			
		||||
</method> \
 | 
			
		||||
</interface> \
 | 
			
		||||
</node>';
 | 
			
		||||
const SystemdLoginManagerIface = loadInterfaceXML('org.freedesktop.login1.Manager');
 | 
			
		||||
const SystemdLoginSessionIface = loadInterfaceXML('org.freedesktop.login1.Session');
 | 
			
		||||
const SystemdLoginUserIface = loadInterfaceXML('org.freedesktop.login1.User');
 | 
			
		||||
 | 
			
		||||
const SystemdLoginManager = Gio.DBusProxy.makeProxyWrapper(SystemdLoginManagerIface);
 | 
			
		||||
const SystemdLoginSession = Gio.DBusProxy.makeProxyWrapper(SystemdLoginSessionIface);
 | 
			
		||||
const SystemdLoginUser = Gio.DBusProxy.makeProxyWrapper(SystemdLoginUserIface);
 | 
			
		||||
 | 
			
		||||
function haveSystemd() {
 | 
			
		||||
    return GLib.access("/run/systemd/seats", 0) >= 0;
 | 
			
		||||
@@ -109,6 +77,9 @@ var LoginManagerSystemd = new Lang.Class({
 | 
			
		||||
        this._proxy = new SystemdLoginManager(Gio.DBus.system,
 | 
			
		||||
                                              'org.freedesktop.login1',
 | 
			
		||||
                                              '/org/freedesktop/login1');
 | 
			
		||||
        this._userProxy = new SystemdLoginUser(Gio.DBus.system,
 | 
			
		||||
                                               'org.freedesktop.login1',
 | 
			
		||||
                                               '/org/freedesktop/login1/user/self');
 | 
			
		||||
        this._proxy.connectSignal('PrepareForSleep',
 | 
			
		||||
                                  this._prepareForSleep.bind(this));
 | 
			
		||||
    },
 | 
			
		||||
@@ -121,8 +92,31 @@ var LoginManagerSystemd = new Lang.Class({
 | 
			
		||||
 | 
			
		||||
        let sessionId = GLib.getenv('XDG_SESSION_ID');
 | 
			
		||||
        if (!sessionId) {
 | 
			
		||||
            log('Unset XDG_SESSION_ID, getCurrentSessionProxy() called outside a user session.');
 | 
			
		||||
            return;
 | 
			
		||||
            log('Unset XDG_SESSION_ID, getCurrentSessionProxy() called outside a user session. Asking logind directly.');
 | 
			
		||||
            let [session, objectPath] = this._userProxy.Display;
 | 
			
		||||
            if (session) {
 | 
			
		||||
                log(`Will monitor session ${session}`);
 | 
			
		||||
                sessionId = session;
 | 
			
		||||
            } else {
 | 
			
		||||
                log('Failed to find "Display" session; are we the greeter?');
 | 
			
		||||
 | 
			
		||||
                for (let [session, objectPath] of this._userProxy.Sessions) {
 | 
			
		||||
                    let sessionProxy = new SystemdLoginSession(Gio.DBus.system,
 | 
			
		||||
                                                               'org.freedesktop.login1',
 | 
			
		||||
                                                               objectPath);
 | 
			
		||||
                    log(`Considering ${session}, class=${sessionProxy.Class}`);
 | 
			
		||||
                    if (sessionProxy.Class == 'greeter') {
 | 
			
		||||
                        log(`Yes, will monitor session ${session}`);
 | 
			
		||||
                        sessionId = session;
 | 
			
		||||
                        break;
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                if (!sessionId) {
 | 
			
		||||
                    log('No, failed to get session from logind.');
 | 
			
		||||
                    return;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        this._proxy.GetSessionRemote(sessionId, (result, error) => {
 | 
			
		||||
 
 | 
			
		||||