gnome-shell/js/ui
Simon McVittie 7f4f328a7f Specify API versions for all public GIR APIs, except GLib
If one of these libraries breaks its GIR API in future, then upgrading
packages unrelated to gnome-shell might pull in the newer version,
causing gnome-shell to crash when it gets a newer GIR API that is
incompatible with its expectations. For example, this seems to be
happening in Debian testing at the moment, when GNOME Shell 41.4
imports GWeather and can get version 4.0 instead of the version 3.0 that
it expected.

Adding explicit API versions at the time the newer version is released
is too late, because that will still let the newer version of the GIR API
break pre-existing GNOME Shell packages. Prevent similar crashes in
future by making the desired versions explicit.

This is done for all third-party libraries except GLib, similar to the
common practice in Python code; if GLib breaks API, then that will be
a disruptive change to the whole GLib/GObject ecosystem, regardless.

Gvc, Meta, Shell, Shew, St are not included because they're private
(only exist in a non-default search path entry).

Clutter and Cogl *are* included, because we need to import the fork of
them that comes with Meta, as opposed to their deprecated standalone
versions.

Signed-off-by: Simon McVittie <smcv@debian.org>
Bug-Debian: https://bugs.debian.org/1008926
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2261>
2022-04-04 17:55:25 +01:00
..
components js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
status remoteAccess: Hide indicator after a timeout 2022-03-04 22:05:46 +00:00
accessDialog.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
altTab.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
animation.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
appDisplay.js appDisplay: Home and End keys for app grid navigation 2022-03-20 22:19:25 +00:00
appFavorites.js js: Use templates for non-translatable strings 2022-02-12 12:29:52 +00:00
appMenu.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
audioDeviceSelection.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
background.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
backgroundMenu.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
barLevel.js cleanup: Define GObject accessors in camelCase 2021-02-03 20:19:29 +01:00
boxpointer.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
calendar.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
checkBox.js checkbox: Improve accessibility of check boxes for Orca users 2020-03-29 12:56:33 +00:00
closeDialog.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
ctrlAltTab.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
dash.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
dateMenu.js calendar: Fix alignment of world clocks header in RTL 2022-03-28 18:39:13 +02:00
dialog.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
dnd.js dnd: Drop captured event handler 2022-02-02 17:22:20 +01:00
edgeDragAction.js keyboard: Handle edge drag gesture cancellation 2021-02-17 15:45:01 +00:00
endSessionDialog.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
environment.js Specify API versions for all public GIR APIs, except GLib 2022-04-04 17:55:25 +01:00
extensionDownloader.js js: Use templates for non-translatable strings 2022-02-12 12:29:52 +00:00
extensionSystem.js js: Use templates for non-translatable strings 2022-02-12 12:29:52 +00:00
focusCaretTracker.js cleanup: Prefer template strings 2019-07-05 11:32:31 +00:00
grabHelper.js grabHelper: Special case event funneling towards the OSK 2022-03-12 09:28:14 +00:00
ibusCandidatePopup.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
iconGrid.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
inhibitShortcutsDialog.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
init.js init: Set console log domain 2021-09-01 14:55:47 +00:00
kbdA11yDialog.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
keyboard.js keyboard: Prevent OSK key buttons from creating grabs 2022-03-12 09:28:14 +00:00
layout.js layout: Check again for primary monitor after startup animation idle 2022-03-20 22:48:51 +00:00
lightbox.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
locatePointer.js locatePointer: Bind ripples creation to settings 2019-09-09 19:28:18 +00:00
lookingGlass.js lookingGlass: Take separate grab for object inspector 2022-02-26 18:15:28 +01:00
magnifier.js magnifier: Update zoom region right after enabling the magnifier 2022-03-13 00:12:18 +00:00
main.js main: Add help function for moving window to monitor/workspace 2022-03-31 17:56:41 +02:00
messageList.js messageList: Center-align close button vertically 2022-03-28 14:50:18 +00:00
messageTray.js signalTracker: Explicitly register destroyable types 2022-03-06 00:10:03 +00:00
modalDialog.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
mpris.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
notificationDaemon.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
osdMonitorLabeler.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
osdWindow.js osdWindow: Implement new OSD design 2022-02-12 15:28:52 +00:00
overview.js overview: Remove desktop fade logic 2022-03-20 21:57:51 +00:00
overviewControls.js overview: Remove desktop fade logic 2022-03-20 21:57:51 +00:00
padOsd.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
pageIndicators.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
panel.js panel: Listen differently for button-press events 2022-03-05 23:51:59 +00:00
panelMenu.js js: Use templates for non-translatable strings 2022-02-12 12:29:52 +00:00
pointerA11yTimeout.js ui: Use ClutterSeat for keyboard/pointer a11y 2020-01-30 17:49:08 +00:00
pointerWatcher.js js: Get idle monitor from backend 2021-05-18 13:42:52 +00:00
popupMenu.js popupMenu: Fix usage of GRAB_NOTIFY ClutterEventFlag 2022-03-20 21:42:16 +00:00
remoteSearch.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
ripples.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
runDialog.js js: Use templates for non-translatable strings 2022-02-12 12:29:52 +00:00
screenShield.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
screenshot.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
scripting.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
search.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
searchController.js searchController: Avoid event.set_source() API 2022-03-04 12:27:34 +00:00
sessionMode.js cleanup: Use new indentation style for arrays 2022-02-23 12:23:52 +00:00
shellDBus.js shellDBus: Actually make ScreenTransitionAsync async 2022-03-28 15:36:18 +02:00
shellEntry.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
shellMountOperation.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
slider.js slider: Use Clutter.grab() for implicit grab 2022-01-29 01:16:29 +01:00
swipeTracker.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
switcherPopup.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
switchMonitor.js switchMonitor: Fix switching configuration 2022-03-20 22:04:55 +00:00
unlockDialog.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
userWidget.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
welcomeDialog.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
windowAttentionHandler.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
windowManager.js windowManager: Change unfullscreen mode to NORMAL 2022-03-13 00:01:17 +00:00
windowMenu.js windowMenu: Add an entry to take a screenshot 2022-02-12 00:20:54 +00:00
windowPreview.js windowPreview: Avoid LEAVE events triggered by grab of our own StButton 2022-03-20 21:42:16 +00:00
workspace.js workspace: Use new helper function when accepting drops 2022-03-31 17:56:49 +02:00
workspaceAnimation.js workspaceAnimation: Get time outside of the animation-complete callback 2022-03-13 00:06:03 +00:00
workspacesView.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
workspaceSwitcherPopup.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
workspaceThumbnail.js workspaceThumbnail: Use new helper function when accepting drops 2022-03-31 17:56:49 +02:00
xdndHandler.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00