gnome-shell/js/ui
Florian Müllner df354fc0d4 status/network: Handle VPN connections in VPN section
Right now the indicator itself tracks all devices and connections,
creates and destroys the corresponding menu items, matches them
to a section and updates the connection/device arrays that are
attached to the section.

Sounds messy?

It is slightly less effective to connect multiple handlers to the
same NMClient, but let's assume that devices and connections aren't
added/removed at 60 frames/s, and we can add some readabilty by
moving the code into different classes that only have to care about
the bits that are relevant to them.

The VPN section is a good starting point, because its handling is
already quite different from device sections.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2407>
2022-08-10 12:17:19 +00:00
..
components js: Use async D-Bus wrappers 2022-08-01 18:51:14 +00:00
status status/network: Handle VPN connections in VPN section 2022-08-10 12:17:19 +00:00
accessDialog.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +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 search: Use async functions instead of callbacks 2022-08-01 18:51:14 +00:00
appFavorites.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
appMenu.js appMenu: Hide overview when pressing on 'Show Details' 2022-06-09 17:51:46 +02:00
audioDeviceSelection.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
background.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04: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 async D-Bus wrappers 2022-08-01 18:51:14 +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 cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00:00
dialog.js js: Use (dis)connectObject() 2022-03-04 14:14:37 +00:00
dnd.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
edgeDragAction.js edgeDragAction: Change edge trigger threshold to AFTER 2022-05-27 09:29:26 +00:00
endSessionDialog.js loginManager: Return objects instead of multiple booleans 2022-08-01 20:58:37 +02:00
environment.js build: Port to gcr4 2022-08-02 16:13:54 +00:00
extensionDownloader.js js: Use templates for non-translatable strings 2022-02-12 12:29:52 +00:00
extensionSystem.js extensionSystem: Check if mode is supported when loading 2022-07-27 14:01:30 +00:00
focusCaretTracker.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
grabHelper.js Require both mouse and keyboard grabs for some grabs to be successful 2022-05-04 17:28:08 +00:00
ibusCandidatePopup.js ibusCandidatePopup: Prevent it from covering screenshot UI 2022-07-04 13:38:15 +00:00
iconGrid.js iconGrid: Add more possible icon sizes 2022-05-04 20:49:15 +00:00
inhibitShortcutsDialog.js js: Use async D-Bus wrappers 2022-08-01 18:51:14 +00:00
init.js init: Set console log domain 2021-09-01 14:55:47 +00:00
kbdA11yDialog.js kbdA11yDialog: Use MetaKeyboardA11yFlags 2022-06-16 09:38:20 +00:00
keyboard.js misc: Toggle IBus OSK capability on OSK visibility 2022-08-10 10:14:40 +00:00
layout.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04: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 Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
magnifier.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
main.js environment: Remove inline import of extensionUtils 2022-07-06 13:40:44 -04:00
messageList.js messageList: Only close messages via delete key if they can be closed 2022-06-04 15:23:45 +02:00
messageTray.js signalTracker: Explicitly register destroyable types 2022-03-06 00:10:03 +00:00
modalDialog.js Require both mouse and keyboard grabs for some grabs to be successful 2022-05-04 17:28:08 +00:00
mpris.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00:00
notificationDaemon.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00:00
osdMonitorLabeler.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00:00
osdWindow.js osdWindow: Implement new OSD design 2022-02-12 15:28:52 +00:00
overview.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
overviewControls.js overviewControls: Minor style fix 2022-08-01 00:48:07 +00:00
padOsd.js Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00
pageIndicators.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
panel.js status/power: Merge with system indicator 2022-08-03 12:41:05 +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: Close quick settings when activating settings action 2022-08-02 16:05:28 +00:00
quickSettings.js quickSettings: Bind menu arrow's reactivity to parent 2022-08-06 21:27:15 +00:00
remoteSearch.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00:00
ripples.js cleanup: Use new indentation style for object literals 2022-02-23 12:23:52 +00:00
runDialog.js runDialog: Use single quotes for Wayland restart warning 2022-05-31 18:35:41 +00:00
screenShield.js js: Use async D-Bus wrappers 2022-08-01 18:51:14 +00:00
screenshot.js js: Use async D-Bus wrappers 2022-08-01 18:51:14 +00:00
scripting.js js: Use async D-Bus wrappers 2022-08-01 18:51:14 +00:00
search.js search: Use async functions instead of callbacks 2022-08-01 18:51:14 +00:00
searchController.js searchController: Avoid event.set_source() API 2022-03-04 12:27:34 +00:00
sessionMode.js panel: Add quick settings indicator 2022-08-02 16:05:28 +00:00
shellDBus.js cleanup: Use deepUnpack() intead of deep_unpack() 2022-08-10 10:29:24 +00: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 lockScreen: Extend modal grab to entire uiGroup 2022-05-18 20:16:10 +02: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 js: Use async D-Bus wrappers 2022-08-01 18:51:14 +00:00
windowMenu.js windowMenu: Add an entry to take a screenshot 2022-02-12 00:20:54 +00:00
windowPreview.js Js: Use new :icon-name property 2022-05-06 13:39:40 +00:00
workspace.js workspace: Port WorkspaceBackground allocate to C 2022-08-03 12:30:31 +00: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 Adopt EventEmitter class instead of injecting Signal methods 2022-07-04 18:30:49 -04:00