iconsssss
All checks were successful
/ test_checkout (push) Successful in 1m57s

This commit is contained in:
Jean-Marie 'Histausse' Mineau 2025-10-27 19:34:14 +01:00
parent ee60237550
commit d63b6a6f53
Signed by: histausse
GPG key ID: B66AEEDA9B645AD2
6 changed files with 424 additions and 228 deletions

View file

@ -1,5 +1,6 @@
#import "@preview/polylux:0.4.0": *
#import "slides/lib.typ": *
#import "slides/icons.typ" as ico
#import "@preview/codly:1.3.0": *
#import "@preview/codly-languages:0.1.1": *
@ -83,7 +84,13 @@
#grid(
columns: (1fr, 1fr),
image("slides/imgs/google.png", width: 200pt),
image("slides/imgs/phone.png", height: 350pt)
//image("slides/imgs/phone.png", height: 350pt)
ico.phone(
height: 350pt,
body: {
ico.android(height: 150pt, stroke: none)
}
)
)
#v(2em)
]
@ -111,7 +118,15 @@
]
),
{
move(dx: 20pt, image("slides/imgs/phone.png", height: 350pt))
move(
dx: 20pt,
ico.phone(
height: 350pt,
body: {
ico.android(height: 150pt, stroke: none)
}
)
)
}
)
]
@ -201,8 +216,8 @@
foreground: {
place-fg(x: 44%, y: 55%, $ lr(}, size: #130pt) $ )
place-fg(x: 44%, y: 26%, $ lr(}, size: #110pt) $ )
arrow((385pt, 260pt), (450pt, 230pt))
arrow((385pt, 125pt), (450pt, 110pt))
arrow((385pt, -260pt), (450pt, -230pt))
arrow((385pt, -125pt), (450pt, -110pt))
},
)[
#show: yes-codly
@ -386,13 +401,46 @@
#highlight-block(pb3-text)
]
#slide(
foreground: rotate(30deg, smallcaps(text(fill: pirat-color.red, size: 50pt)[MOCHE + ANIM]))
)[
// TODO Outline / problematics / drawingp
#set align(horizon+center)
#th-outline()
]
#for i in range(3) {
let stage = (
"static-only",
"static-vs-dyn",
"theseus",
).at(i)
slide(
//foreground: rotate(30deg, smallcaps(text(fill: pirat-color.red, size: 50pt)[#stage]))
)[
#if i == 0 {
place(
top+left,
dx: 70%,
dy: 25%,
align(center, text(fill: pirat-color.red.darken(15%))[
*PB 1*: Static Analysis \ are the tools working?
]))
}
#if i == 1 {
place(
top+left,
dx: 35%,
dy: 25%,
align(center, text(fill: pirat-color.red.darken(15%))[
*PB 2*: Do Static Tools \ match Android Runtime?
]))
}
#if i == 2 {
place(
top+left,
dx: 5%,
dy: 5%,
align(center, text(fill: pirat-color.red.darken(15%))[
*PB 3*: Improve any Static Tools \ with dynamic analysis?
]))
}
#set align(horizon+center)
#theseus-outline(stage: stage)
]
}
#new-section-slide([Tool Reusability])
@ -723,36 +771,79 @@
#slide(
title: [Android ClassLoaders],
foreground: {
//rotate(30deg, text(fill: pirat-color.red, size: 50pt)[DESSIN RUNTIME CL \ \ WITH DELEGATION])
let stroke = black + 3pt
let y0 = 170pt
let y1 = 270pt
let stroke = black + 5pt
let y0 = -177pt
let y1 = -270pt
let x0 = 250pt
let x1 = 292pt
let x2 = 550pt
let x1 = 272pt
let x2 = 570pt
let x3 = 600pt
place(bottom+left, line(start: (x0, -y0), end: (x0, -y1), stroke: stroke))
place(bottom+left, line(start: (x3, -y0), end: (x3, -y1), stroke: stroke))
arrow((x0, y1), (x1, y1), strk: stroke)
arrow((x3, y1), (x2, y1), strk: stroke)
arrow(
(x0, y0),
(x0, y1),
(x1, y1),
stroke: stroke
)
arrow(
(x3, y0),
(x3, y1),
(x2, y1),
stroke: stroke
)
place-fg(x: x0 - 2.5em, y: (y0+y1)/2)[Delegate]
place-fg(x: x3 + 2.5em, y: (y0+y1)/2)[Delegate]
}, {
let stroke = black + 3pt
let width = 13em
let height = 4.5em
set align(center+horizon)
set rect(width: 250pt, height: 75pt, radius: 20pt, inset: 20pt)
v(1fr)
rect()[Boot Class Loader]
rect(
stroke: stroke,
height: height,
width: width,
{
[*Boot Class Loader*]
v(-0.5em)
line(length: 80%)
v(-0.5em)
[_Platform Classes_]
}
)
v(1fr)
stack(
dir: ltr,
1fr,
rect()[System Class Loader],
rect(
stroke: stroke,
height: height,
width: width,
{
[*System Class Loader*]
v(-0.5em)
line(length: 80%)
v(-0.5em)
sym.emptyset
}
),
1fr,
rect()[APK Class Loader],
rect(
stroke: stroke,
height: height,
width: width,
{
[*APK Class Loader*]
v(-0.5em)
line(length: 80%)
v(-0.5em)
[_APK Classes_]
}
),
1fr,
)
@ -1130,7 +1221,7 @@
)[
// TODO: bien tout rappeler l'objectif
#set align(center+horizon)
#th-outline(hide-static: true)
#theseus-outline()
]
#slide(
@ -1288,7 +1379,7 @@
foreground: rotate(30deg, text(fill: pirat-color.red, size: 50pt)[MOCHE]),
)[
#set align(center+horizon)
#th-outline(hide-static: true)
#theseus-outline()
]
#counter("logical-slide").update( n => n - 1 )
@ -1340,7 +1431,7 @@
foreground: rotate(30deg, text(fill: pirat-color.red, size: 50pt)[MOCHE]),
)[
#set align(center+horizon)
#th-outline(hide-static: false)
#theseus-outline()
]
#for i in range(3) {
@ -1391,6 +1482,7 @@
title: [Impact on Finishing Rate],
foreground: {
let strk = 3pt + pirat-color.blue
import "slides/icons.typ": arrow
arrow((360pt, 330pt), (380pt, 310pt), strk: strk)
arrow((420pt, 330pt), (400pt, 310pt), strk: strk)
}