[gnome-builder] plugins/newcomers: speed up application startup



commit ba3d1e5234388fe8226d0dbf940ccf2b124b35d9
Author: Christian Hergert <chergert redhat com>
Date:   Thu Jul 21 01:54:21 2022 -0700

    plugins/newcomers: speed up application startup
    
    Generating images for the icon cache from SVG is slow. Especially at
    startup. Especially every app load because they aren't getting cached.
    
    Instead, just pre-generate a 2x version of the icon encoded as symbolic
    and set that up in the private icon directory w/ an icon cache.
    
    Speeds up startup a couple hundred msec.

 .../64x64/apps/org.gnome.Boxes-symbolic.symbolic.png    | Bin 0 -> 1296 bytes
 .../64x64/apps/org.gnome.Calendar-symbolic.symbolic.png | Bin 0 -> 762 bytes
 .../64x64/apps/org.gnome.Maps-symbolic.symbolic.png     | Bin 0 -> 1271 bytes
 .../64x64/apps/org.gnome.Music-symbolic.symbolic.png    | Bin 0 -> 1624 bytes
 .../64x64/apps/org.gnome.Nautilus-symbolic.symbolic.png | Bin 0 -> 697 bytes
 .../64x64/apps/org.gnome.Photos-symbolic.symbolic.png   | Bin 0 -> 918 bytes
 .../64x64/apps/org.gnome.Polari-symbolic.symbolic.png   | Bin 0 -> 689 bytes
 .../apps/org.gnome.SoundRecorder-symbolic.symbolic.png  | Bin 0 -> 1059 bytes
 .../64x64/apps/org.gnome.clocks-symbolic.symbolic.png   | Bin 0 -> 1082 bytes
 .../64x64/apps/org.gnome.gitg-symbolic.symbolic.png     | Bin 0 -> 795 bytes
 .../symbolic/apps}/org.gnome.Boxes-symbolic.svg         |   0
 .../symbolic/apps}/org.gnome.Calendar-symbolic.svg      |   0
 .../symbolic/apps}/org.gnome.Maps-symbolic.svg          |   0
 .../symbolic/apps}/org.gnome.Music-symbolic.svg         |   0
 .../symbolic/apps}/org.gnome.Nautilus-symbolic.svg      |   0
 .../symbolic/apps}/org.gnome.Photos-symbolic.svg        |   0
 .../symbolic/apps}/org.gnome.Polari-symbolic.svg        |   0
 .../symbolic/apps}/org.gnome.SoundRecorder-symbolic.svg |   0
 .../symbolic/apps}/org.gnome.clocks-symbolic.svg        |   0
 .../symbolic/apps}/org.gnome.gitg-symbolic.svg          |   0
 src/plugins/newcomers/icons/meson.build                 |   2 ++
 src/plugins/newcomers/meson.build                       |   2 ++
 src/plugins/newcomers/newcomers.gresource.xml           |  16 ----------------
 23 files changed, 4 insertions(+), 16 deletions(-)
---
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Boxes-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Boxes-symbolic.symbolic.png
new file mode 100644
index 000000000..6854a5f90
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Boxes-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Calendar-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Calendar-symbolic.symbolic.png
new file mode 100644
index 000000000..6b706a2f6
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Calendar-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Maps-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Maps-symbolic.symbolic.png
new file mode 100644
index 000000000..5a3a6afee
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Maps-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Music-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Music-symbolic.symbolic.png
new file mode 100644
index 000000000..c3c63a697
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Music-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Nautilus-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Nautilus-symbolic.symbolic.png
new file mode 100644
index 000000000..77025dc03
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Nautilus-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Photos-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Photos-symbolic.symbolic.png
new file mode 100644
index 000000000..5d96b001a
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Photos-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Polari-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Polari-symbolic.symbolic.png
new file mode 100644
index 000000000..d2a6da53b
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.Polari-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.SoundRecorder-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.SoundRecorder-symbolic.symbolic.png
new file mode 100644
index 000000000..01a40ab2e
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.SoundRecorder-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.clocks-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.clocks-symbolic.symbolic.png
new file mode 100644
index 000000000..69e53d43f
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.clocks-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.gitg-symbolic.symbolic.png 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.gitg-symbolic.symbolic.png
new file mode 100644
index 000000000..0ca4e6da4
Binary files /dev/null and 
b/src/plugins/newcomers/icons/hicolor/64x64/apps/org.gnome.gitg-symbolic.symbolic.png differ
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.Boxes-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Boxes-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.Boxes-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Boxes-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.Calendar-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Calendar-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.Calendar-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Calendar-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.Maps-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Maps-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.Maps-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Maps-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.Music-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Music-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.Music-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Music-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.Nautilus-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Nautilus-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.Nautilus-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Nautilus-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.Photos-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Photos-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.Photos-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Photos-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.Polari-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Polari-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.Polari-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.Polari-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.SoundRecorder-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.SoundRecorder-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.SoundRecorder-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.SoundRecorder-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.clocks-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.clocks-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.clocks-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.clocks-symbolic.svg
diff --git a/src/plugins/newcomers/icons/symbolic/org.gnome.gitg-symbolic.svg 
b/src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.gitg-symbolic.svg
similarity index 100%
rename from src/plugins/newcomers/icons/symbolic/org.gnome.gitg-symbolic.svg
rename to src/plugins/newcomers/icons/hicolor/symbolic/apps/org.gnome.gitg-symbolic.svg
diff --git a/src/plugins/newcomers/icons/meson.build b/src/plugins/newcomers/icons/meson.build
new file mode 100644
index 000000000..99a5e3094
--- /dev/null
+++ b/src/plugins/newcomers/icons/meson.build
@@ -0,0 +1,2 @@
+install_subdir('hicolor/64x64', install_dir: pkgicondir)
+install_subdir('hicolor/symbolic', install_dir: pkgicondir)
diff --git a/src/plugins/newcomers/meson.build b/src/plugins/newcomers/meson.build
index 256d7a10c..2cdf4bbe4 100644
--- a/src/plugins/newcomers/meson.build
+++ b/src/plugins/newcomers/meson.build
@@ -14,4 +14,6 @@ plugin_newcomers_resources = gnome.compile_resources(
 
 plugins_sources += plugin_newcomers_resources
 
+subdir('icons')
+
 endif
diff --git a/src/plugins/newcomers/newcomers.gresource.xml b/src/plugins/newcomers/newcomers.gresource.xml
index 46448c6a9..1b7673963 100644
--- a/src/plugins/newcomers/newcomers.gresource.xml
+++ b/src/plugins/newcomers/newcomers.gresource.xml
@@ -1,23 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <gresources>
-
   <gresource prefix="/plugins/newcomers">
     <file>newcomers.plugin</file>
     <file>gbp-newcomers-section.ui</file>
   </gresource>
-
-  <!-- Icons used by the greeter for newcomer projects -->
-  <gresource prefix="/org/gnome/builder/icons">
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.Boxes-symbolic.svg">icons/symbolic/org.gnome.Boxes-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.Maps-symbolic.svg">icons/symbolic/org.gnome.Maps-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.Music-symbolic.svg">icons/symbolic/org.gnome.Music-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.Photos-symbolic.svg">icons/symbolic/org.gnome.Photos-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.Calendar-symbolic.svg">icons/symbolic/org.gnome.Calendar-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.gitg-symbolic.svg">icons/symbolic/org.gnome.gitg-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.Nautilus-symbolic.svg">icons/symbolic/org.gnome.Nautilus-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.Polari-symbolic.svg">icons/symbolic/org.gnome.Polari-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.SoundRecorder-symbolic.svg">icons/symbolic/org.gnome.SoundRecorder-symbolic.svg</file>
-    <file compressed="true" 
alias="symbolic/apps/org.gnome.clocks-symbolic.svg">icons/symbolic/org.gnome.clocks-symbolic.svg</file>
-  </gresource>
-
 </gresources>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]