profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/hakimel/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Hakim El Hattab hakimel Slides Sweden https://hakim.se Making Slides.com and reveal.js • Creator of questionable value at https://lab.hakim.se

hakimel/reveal.js 57374

The HTML Presentation Framework

hakimel/Ladda 7742

Buttons with built-in loading indicators.

hakimel/stroll.js 4319

CSS3 list scroll effects

hakimel/css 4075

Assorted CSS and UI experiments.

hakimel/Meny 2334

A three dimensional and space effecient menu

hakimel/Avgrund 1678

A JS/CSS3 modal UI concept

hakimel/zoom.js 1488

zoom in on any element in the DOM

hakimel/forkit.js 842

an animated GitHub ribbon

hakimel/kontext 651

A context-shift transition inspired by iOS

issue closedhakimel/reveal.js

If data-background-image is a data uri, background image will not show up

If data-background-image is a data uri, background image will not show up

data-background-image="data:image/png;base64,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"

closed time in 9 hours

edl7878

issue commenthakimel/reveal.js

If data-background-image is a data uri, background image will not show up

Thanks for debugging @cderv. This has been fixed now—reveal.js will not try to split background images in base64 format (i.e. beginning with data:).

edl7878

comment created time in 9 hours

push eventhakimel/reveal.js

hakimel

commit sha 05e57dea66529a1b472f743f8ac520fb8bed0ba2

fix issue with loading base64 images #2978

view details

push time in 9 hours

push eventhakimel/reveal.js

Hakim El Hattab

commit sha 647c04cffe2f692d510fb0fe527db1f7f9c24950

cdn video url in demo

view details

Dave Abrahams

commit sha 6dd141811d34598e08637e376815a1e8b9911571

Update comments about markdown slide separators They might have been correct once upon a time, but apparently not since "---" became the default.

view details

Dave Abrahams

commit sha d717c2302d5eb1fe2dbbf51c6fe6c0497d2df732

Fix copy/paste-o

view details

Hakim El Hattab

commit sha dd79e7fabb79c9fa381d6c2106c84964d5aa25ca

Merge pull request #3005 from dabrahams/patch-1 Update comments about markdown slide separators

view details

Hakim El Hattab

commit sha abe9abbed7c68d1e73f5befb6cf256b71d77e769

Merge pull request #3006 from dabrahams/patch-2 Fix copy/paste-o

view details

Hakim El Hattab

commit sha 6727cd6ecb891b52ef46db07a2ecc339753b452e

fix bug that prevented first-last slide looping in linear navigation mode (closes #3009)

view details

Hakim El Hattab

commit sha 5f22d6c3da2764b0c5100d90973847ec7cd2612b

upgrade sass

view details

Hakim El Hattab

commit sha 2aed592d1f98d243cba326308cc95dc9f19ad3b1

fix last slide shortcut in looped presentations #3007

view details

Hakim El Hattab

commit sha ad50dd513fbdb1a859ff1b3b2490bc2797f40928

add 'slidechange' event that can prevent navigation #3003

view details

Hakim El Hattab

commit sha cb454b0540c8195522f6f373a1e2e7427a2481a2

'slidechange' -> 'beforeslidechange' (closes #3003)

view details

Hakim El Hattab

commit sha 0da9821e907e75501bfbe22691a3a1125de0e74f

fix spec

view details

hakimel

commit sha 05e57dea66529a1b472f743f8ac520fb8bed0ba2

fix issue with loading base64 images #2978

view details

push time in 9 hours

issue closedhakimel/reveal.js

Wiki has been vandalized

I tried to follow the nav bar entry "Third Party Plugins " on < https://revealjs.com> which points to https://github.com/hakimel/reveal.js/wiki/Plugins,-Tools-and-Hardware -- but that page does not exist.

I then looked around a bit in the Wiki at https://github.com/hakimel/reveal.js/wiki and it seems to have been vandalized: pages deleted, nonsense pages / page content added.

Luckily, the wiki itself is a git repository, so it should be possible to revert it to an older version. I would recommend to restrict access to the Wiki afterwards.

closed time in 2 days

fingolfin

issue commenthakimel/reveal.js

Wiki has been vandalized

Thanks for letting me know—I've restored the lost pages and removed some outdated content while I was at it.

I'm going to keep editing open for now so that people can still add their own presentations to the list of examples. If this happens again, I might close down the wiki and move that content to revealjs.com instead.

fingolfin

comment created time in 2 days

GollumEvent
GollumEvent
GollumEvent

issue closedhakimel/reveal.js

No issue bro

a grreat repository

closed time in 5 days

Manoraj9

push eventhakimel/reveal.js

Hakim El Hattab

commit sha 0da9821e907e75501bfbe22691a3a1125de0e74f

fix spec

view details

push time in 9 days

issue commenthakimel/reveal.js

Before change hooks

I've renamed to beforeslidechange. Will add it to the docs once when the next release goes out.

elliotlings

comment created time in 9 days

push eventhakimel/reveal.js

Hakim El Hattab

commit sha cb454b0540c8195522f6f373a1e2e7427a2481a2

'slidechange' -> 'beforeslidechange' (closes #3003)

view details

push time in 9 days

issue closedhakimel/reveal.js

Before change hooks

Is it possible to add a before slide change hook, so that you can stop a slide change doing it's default functionality and move to a different a slide entirely?

closed time in 9 days

elliotlings

issue closedhakimel/reveal.js

Fullpage.js-like navigation menu?

Hi there,

First I wanna say, this is really an amazing job!

Is it possible though to have a fullpage.js-like vertical navigation menu on the right like in that example: https://codepen.io/ehouarn-perret/pen/jprrqx

closed time in 12 days

natalie-perret-1986

issue commenthakimel/reveal.js

Fullpage.js-like navigation menu?

Nice plugin @Martinomagnifico!

natalie-perret-1986

comment created time in 12 days

startedMartinomagnifico/reveal.js-verticator

started time in 12 days

issue commenthakimel/reveal.js

Before change hooks

I've wanted a preventable event like this myself in the past. Just pushed a first iteration of it to master.

// This will prevent all slide changes
Reveal.addEventListener( 'slidechange', e => e.preventDefault() )

What should this event be called? slidechange might be too similar to slidechanged which is dispatched after. Perhaps beforeslidechanged?

elliotlings

comment created time in 12 days

push eventhakimel/reveal.js

Hakim El Hattab

commit sha ad50dd513fbdb1a859ff1b3b2490bc2797f40928

add 'slidechange' event that can prevent navigation #3003

view details

push time in 12 days

issue commenthakimel/reveal.js

[LEFT] key or [wheelUp] on first slide wrap to last slide

Just pushed a fix + test for this. Feel free to give it a try when you get a chance, thanks!

lokpro

comment created time in 12 days

issue commenthakimel/reveal.js

[END] key bug

This has been fixed now. Shortcuts for jumping to the last slide now work correctly even if the presentation is looped.

lokpro

comment created time in 12 days

issue closedhakimel/reveal.js

[END] key bug

Pressing the [END] key should go to the last slide, but the current code doesn't work. It won't go to my last slide (11) but to number 4. It seems like the number param is taken modulus to be the slide number.

https://github.com/hakimel/reveal.js/blob/90bbe8be4f12ec56723a335d36f9be984ef7ed03/js/controllers/keyboard.js#L338

shift+➜ too, https://github.com/hakimel/reveal.js/blob/90bbe8be4f12ec56723a335d36f9be984ef7ed03/js/controllers/keyboard.js#L299

should be something like

Reveal.slide( Reveal.getSlides().length-1 );

closed time in 12 days

lokpro

push eventhakimel/reveal.js

Hakim El Hattab

commit sha 6727cd6ecb891b52ef46db07a2ecc339753b452e

fix bug that prevented first-last slide looping in linear navigation mode (closes #3009)

view details

Hakim El Hattab

commit sha 5f22d6c3da2764b0c5100d90973847ec7cd2612b

upgrade sass

view details

Hakim El Hattab

commit sha 2aed592d1f98d243cba326308cc95dc9f19ad3b1

fix last slide shortcut in looped presentations #3007

view details

push time in 12 days

issue closedhakimel/reveal.js

[LEFT] key or [wheelUp] on first slide wrap to last slide

Hi, years ago when I used v3.8, it would wrap to last slide when key [LEFT] is pressed on the first slide, which is cool. I can't do the same in the newest version. I don't know if this change is intended.

I have investigated the source.

useLinearMode is defined in this way. My slides has no V. slides. https://github.com/hakimel/reveal.js/blob/56772afa32d481685157bc355422cb793f5a07ce/js/controllers/keyboard.js#L217 Later, useLinearMode is true and the left() function is never reachable[*1]. It should be the reason why I can't do [Left] on the first slide. https://github.com/hakimel/reveal.js/blob/90bbe8be4f12ec56723a335d36f9be984ef7ed03/js/controllers/keyboard.js#L284-L295

[*1] left() does just slide( slideNumber-1) and will wrap to the last slide. This line in prev() prevents so. https://github.com/hakimel/reveal.js/blob/abe9abbed7c68d1e73f5befb6cf256b71d77e769/js/reveal.js#L2275


Likewise, I wish mouse wheel up to do the same, but it will only do prev() here. https://github.com/hakimel/reveal.js/blob/abe9abbed7c68d1e73f5befb6cf256b71d77e769/js/controllers/pointer.js#L100-L116


[Swipe left]'s 'linear' check is simple (the old way). With 'default' it will do left(); https://github.com/hakimel/reveal.js/blob/56772afa32d481685157bc355422cb793f5a07ce/js/controllers/touch.js#L140-L153


BTW, why don't unify these left-actions?

closed time in 12 days

lokpro
IssuesEvent

issue commenthakimel/reveal.js

[LEFT] key or [wheelUp] on first slide wrap to last slide

Aha, that sounds like a bug. I'll try it out soon.

lokpro

comment created time in 13 days

issue commenthakimel/reveal.js

[END] key bug

Is this in a presentation with vertical slides? Any chance you could share a link to it? I tried out Reveal.slide( Number.MAX_VALUE ) but it takes me to the correct slides in the examples I had.

lokpro

comment created time in 13 days

issue closedhakimel/reveal.js

[LEFT] key or [wheelUp] on first slide wrap to last slide

Hi, years ago when I used v3.8, it would wrap to last slide when key [LEFT] is pressed on the first slide, which is cool. I can't do the same in the newest version. I don't know if this change is intended.

I have investigated the source.

useLinearMode is defined in this way. My slides has no V. slides. https://github.com/hakimel/reveal.js/blob/56772afa32d481685157bc355422cb793f5a07ce/js/controllers/keyboard.js#L217 Later, useLinearMode is true and the left() function is never reachable[*1]. It should be the reason why I can't do [Left] on the first slide. https://github.com/hakimel/reveal.js/blob/90bbe8be4f12ec56723a335d36f9be984ef7ed03/js/controllers/keyboard.js#L284-L295

[*1] left() does just slide( slideNumber-1) and will wrap to the last slide. This line in prev() prevents so. https://github.com/hakimel/reveal.js/blob/abe9abbed7c68d1e73f5befb6cf256b71d77e769/js/reveal.js#L2275


Likewise, I wish mouse wheel up to do the same, but it will only do prev() here. https://github.com/hakimel/reveal.js/blob/abe9abbed7c68d1e73f5befb6cf256b71d77e769/js/controllers/pointer.js#L100-L116


[Swipe left]'s 'linear' check is simple (the old way). With 'default' it will do left(); https://github.com/hakimel/reveal.js/blob/56772afa32d481685157bc355422cb793f5a07ce/js/controllers/touch.js#L140-L153


BTW, why don't unify these left-actions?

closed time in 13 days

lokpro

issue commenthakimel/reveal.js

[LEFT] key or [wheelUp] on first slide wrap to last slide

If you want leftward navigation on the first slide to take you to the last slide you'll need to enable the loop configuration flag. For example: https://revealjs.com/demo/?loop=true

This isn't something that's changed in recent versions. The linear mode is a feature you can active when you have both vertical and horizontal slides but want navigation to behave as if you only had slides on a single axis. It has no impact if you only have slides on the horizontal axis.

lokpro

comment created time in 13 days

push eventreveal/revealjs.com

Hakim El Hattab

commit sha 7c3e10944780ebce1d5cd37ee1cc4f292ac04406

remove local copy of reveal.js

view details

push time in 18 days