gnome-shell/js/ui
Georges Basile Stavracas Neto 910037f014 allView, frequentView: Only create icons when necessary
The views (AllView and FrequentView) build a list of all applications
they contain. BaseView then diffs between what's currently added, and
what needs to be added, and removed.

This approach has a problem though: creating an AppIcon or a FolderIcon
connects to various signals, and we confuse the garbage collector.

When building the list of applications, instead of always creating new
icons, try to use already existing icons first.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/1610
Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/1694
2019-11-21 22:28:46 +00:00
..
components polkitAgent: Fix spinner 2019-11-21 22:04:39 +01:00
status style: Allow lonely ifs where appropriate 2019-11-11 23:51:17 +00:00
accessDialog.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
altTab.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
animation.js animation: Add parameter for hiding stopped Spinner actor 2019-11-19 19:55:28 +02:00
appDisplay.js allView, frequentView: Only create icons when necessary 2019-11-21 22:28:46 +00:00
appFavorites.js Update shotwell desktop file name references 2019-10-18 16:50:57 +02:00
audioDeviceSelection.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
background.js background: Add exception to no-loop-func rule 2019-11-11 23:51:17 +00:00
backgroundMenu.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
barLevel.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
boxpointer.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
calendar.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
checkBox.js st: Remove StBin's align properties 2019-11-04 21:27:56 +01:00
closeDialog.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
ctrlAltTab.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
dash.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
dateMenu.js dateMenu: Skip weather forecast if not valid 2019-11-20 13:08:22 -08:00
dialog.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
dnd.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
edgeDragAction.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
endSessionDialog.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
environment.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
extensionDownloader.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
extensionSystem.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
focusCaretTracker.js cleanup: Prefer template strings 2019-07-05 11:32:31 +00:00
grabHelper.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
ibusCandidatePopup.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
iconGrid.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
inhibitShortcutsDialog.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
kbdA11yDialog.js cleanup: Use non-deprecated key symbols 2019-11-06 09:42:57 +01:00
keyboard.js keyboard: Try harder to find a matching layout 2019-11-16 16:12:06 +01:00
layout.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
lightbox.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
locatePointer.js locatePointer: Bind ripples creation to settings 2019-09-09 19:28:18 +00:00
lookingGlass.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
magnifier.js style: Allow lonely ifs where appropriate 2019-11-11 23:51:17 +00:00
magnifierDBus.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
main.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
messageList.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
messageTray.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
modalDialog.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
mpris.js cleanup: Only omit braces for single-line blocks 2019-11-11 19:25:14 +00:00
notificationDaemon.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
osdMonitorLabeler.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
osdWindow.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
overview.js style: Allow lonely ifs where appropriate 2019-11-11 23:51:17 +00:00
overviewControls.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
padOsd.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
pageIndicators.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
panel.js appMenu: Hide stopped spinner actor 2019-11-19 20:56:16 +02:00
panelMenu.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
pointerA11yTimeout.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
pointerWatcher.js cleanup: Stop using Mainloop module 2019-09-12 19:09:24 +02:00
popupMenu.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
remoteSearch.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
ripples.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
runDialog.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
screencast.js cleanup: Use destructuring for imports from GI 2019-02-09 07:39:20 +01:00
screenShield.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
screenshot.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
scripting.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
search.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
sessionMode.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
shellDBus.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
shellEntry.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
shellMountOperation.js animation: Turn Spinner animate parameter into Params option 2019-11-19 19:54:13 +02:00
slider.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
switcherPopup.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
switchMonitor.js cleanup: Use non-deprecated key symbols 2019-11-06 09:42:57 +01:00
tweener.js tweener: Use new adjustAnimationTime() helper 2019-08-06 20:50:43 +02:00
unlockDialog.js cleanup: Use object shorthand where possible 2019-11-11 19:25:14 +00:00
userWidget.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
viewSelector.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
windowAttentionHandler.js cleanup: Don't shadow variables 2019-11-11 19:25:14 +00:00
windowManager.js style: Allow lonely ifs where appropriate 2019-11-11 23:51:17 +00:00
windowMenu.js cleanup: Avoid unnecessary parentheses in arrow functions 2019-09-15 16:02:45 +02:00
workspace.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
workspacesView.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
workspaceSwitcherPopup.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
workspaceThumbnail.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
xdndHandler.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00