Browse Source

Preload entity images

master
Fen Dweller 5 years ago
parent
commit
8a6fe80565
1 changed files with 18 additions and 0 deletions
  1. +18
    -0
      macrovision.js

+ 18
- 0
macrovision.js View File

@@ -10,6 +10,8 @@ let clickTimeout = null;
let dragOffsetX = null;
let dragOffsetY = null;

let preloaded = new Set();

let panning = false;
let panReady = true;
let panOffsetX = null;
@@ -1452,6 +1454,16 @@ function checkEntity(entity) {
function displayEntity(entity, view, x, y, selectEntity = false, refresh = false) {
checkEntity(entity);

// preload all of the entity's views

Object.values(entity.views).forEach(view => {
if (!preloaded.has(view.image.source)) {
let img = new Image();
img.src = view.image.source;
preloaded.add(view.image.source);
}
});

const box = document.createElement("div");
box.classList.add("entity-box");

@@ -2984,6 +2996,12 @@ function prepareEntities() {
} else {
select.classList.remove("nsfw");
}

// preload the entity's first image

const entity = entityList[select.selectedIndex].constructor();
let img = new Image();
img.src = entity.currentView.image.source;
})

const button = document.createElement("button");


Loading…
Cancel
Save