From 0f2c3740d8baa6b2f908f8968645b5575eea06bc Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Tue, 24 May 2022 20:24:35 +0000
Subject: bidi (24may22)

git-svn-id: svn://tug.org/texlive/trunk@63392 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/source/xelatex/bidi/bidi.dtx | 570 ++++++++++++++++++++++++-
 1 file changed, 554 insertions(+), 16 deletions(-)

(limited to 'Master/texmf-dist/source/xelatex/bidi/bidi.dtx')

diff --git a/Master/texmf-dist/source/xelatex/bidi/bidi.dtx b/Master/texmf-dist/source/xelatex/bidi/bidi.dtx
index 4b48ad45ea9..793628e4faf 100644
--- a/Master/texmf-dist/source/xelatex/bidi/bidi.dtx
+++ b/Master/texmf-dist/source/xelatex/bidi/bidi.dtx
@@ -5,7 +5,7 @@
 %<*readme>
 ___________________
 The bidi package
-v36.9
+v37.0
 
 This package provides a convenient interface for typesetting
 bidirectional texts in Plain TeX and LaTeX, using XeTeX engine.
@@ -30,7 +30,7 @@ The announcements for the new releases of the package will
 also appear in the Discussions space under the Announcements
 category.
   
-Current version release date: 2022/05/22
+Current version release date: 2022/05/24
 
 ___________________________________________
 Vafa Khalighi
@@ -83,6 +83,11 @@ by Vafa Khalighi.
 \generate{\file{artikel2-xetex-bidi.def}{\from{\jobname.dtx}{table,artikel2-xetex-bidi.def}}}
 \generate{\file{artikel3-xetex-bidi.def}{\from{\jobname.dtx}{table,artikel3-xetex-bidi.def}}}
 \generate{\file{arydshln-xetex-bidi.def}{\from{\jobname.dtx}{table,arydshln-xetex-bidi.def}}}
+\generate{\file{beamer-xetex-bidi.def}{\from{\jobname.dtx}{table,beamer-xetex-bidi.def}}}
+\generate{\file{beamerbasecolor-xetex-bidi.def}{\from{\jobname.dtx}{table,beamerbasecolor-xetex-bidi.def}}}
+\generate{\file{beamerbaseframecomponents-xetex-bidi.def}{\from{\jobname.dtx}{table,beamerbaseframecomponents-xetex-bidi.def}}}
+\generate{\file{beamerbaselocalstructure-xetex-bidi.def}{\from{\jobname.dtx}{table,beamerbaselocalstructure-xetex-bidi.def}}}
+\generate{\file{beamerinnerthemedefault-xetex-bidi.def}{\from{\jobname.dtx}{table,beamerinnerthemedefault-xetex-bidi.def}}}
 \generate{\file{bidi.sty}{\from{\jobname.dtx}{table,bidi.sty}}}
 \generate{\file{bidi.tex}{\from{\jobname.dtx}{table,bidi.tex}}}
 \generate{\file{bidi2in1.sty}{\from{\jobname.dtx}{table,bidi2in1.sty}}}
@@ -234,7 +239,7 @@ by Vafa Khalighi.
 \documentclass{ltxdoc}
 \input{bidi-doc-preamble.ltx}
 \hypersetup{%
-  pdftitle={Source documentation for version 36.9 of the bidi
+  pdftitle={Source documentation for version 37.0 of the bidi
                 package}%
 }
 \EnableCrossrefs
@@ -253,7 +258,7 @@ by Vafa Khalighi.
 % \GetFileInfo{\jobname.dtx}
 % \title{\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}\\
 %\LARGE Bidirectional typesetting in plain \TeX{} and \LaTeX, using \XeTeX{} engine\\[5pt]
-%\large Source documentation for \textcolor{blue!65!black}{version 36.9}}
+%\large Source documentation for \textcolor{blue!65!black}{version 37.0}}
 % \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the  {\LaTeX} team to maintain the package in the period 2018--2020.}}
 %\setcounter{page}{0}
 %\thispagestyle{empty}
@@ -263,7 +268,7 @@ by Vafa Khalighi.
 %\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}
 %
 %\Large
-%Source documentation for \textcolor{blue!65!black}{version 36.9}}
+%Source documentation for \textcolor{blue!65!black}{version 37.0}}
 %
 %\vskip 0pt plus 3fill
 %\textit{\large to my Master, \textbf{Ferdowsi The Great}}
@@ -312,7 +317,7 @@ by Vafa Khalighi.
 %\iffalse
 %<*table>
 %\fi
-%% \CheckSum{50672}
+%% \CheckSum{51690}
 %% \CharacterTable
 %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
 %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -1927,13 +1932,540 @@ by Vafa Khalighi.
 %    \end{macrocode}
 % \iffalse
 %</arydshln-xetex-bidi.def>
+%<*beamer-xetex-bidi.def>
+%\fi
+% \section{File \texttt{beamer-xetex-bidi.def}}
+%    \begin{macrocode}
+\ProvidesFile{beamer-xetex-bidi.def}[2022/05/24 v0.1 bidi adaptations for beamer class for XeTeX engine]
+\AtBeginDocument{%
+  \if@RTLmain
+    \raggedleft
+  \else
+    \raggedright
+  \fi  
+}
+\renewcommand*{\bidi@beamer@ragged}{%
+  \if@RTL
+    \raggedleft
+  \else
+    \raggedright
+  \fi
+}
+%    \end{macrocode}
+% \iffalse
+%</beamer-xetex-bidi.def>
+%<*beamerbasecolor-xetex-bidi.def>
+%\fi
+% \section{File \texttt{beamerbasecolor-xetex-bidi.def}}
+%    \begin{macrocode}
+\ProvidesFile{beamerbasecolor-xetex-bidi.def}[2022/05/24 v0.1 bidi adaptations for beamerbasecolor package for XeTeX engine]
+\renewenvironment{beamercolorbox}[2][]{%
+  \def\beamer@vmode{\leavevmode}%
+  \setkeys{beamercolbox}{wd=\textwidth,ht={},dp={},%
+    leftskip=0pt,rightskip=0pt plus1fil,%
+    sep=0pt,colsep=0pt,colsep*=0pt,%
+    shadow=false,rounded=false,ignorebg=false}%
+  \setkeys{beamercolbox}{#1}%
+  \ifbeamercolorempty[bg]{#2}{\@tempswafalse}{\@tempswatrue}%
+  \ifbeamer@colbox@ignorebg\@tempswafalse\fi%
+  \def\beamer@colbox@color{#2}%
+  \setbox\beamer@tempbox=\hbox\bgroup\color@begingroup
+  \if@RTL
+    \@hboxRconstructtrue
+  \else
+    \@hboxRconstructfalse
+  \fi
+    \ifbeamer@colbox@ignorebg%
+      \colorlet{beamer@temp@color}{bg}%
+      \usebeamercolor[fg]{#2}%
+      \colorlet{bg}{beamer@temp@color}%
+    \else%
+      \usebeamercolor[fg]{#2}%
+    \fi%
+    \vbox\bgroup%
+    \hsize=\beamer@colbox@wd%
+    \@arrayparboxrestore%
+    \leftskip=\beamer@colbox@ls%
+    \ifdim\beamer@colbox@sep>\z@\advance\leftskip\beamer@colbox@sep\fi%
+    \rightskip=\beamer@colbox@rs%
+    \ifdim\beamer@colbox@sep>\z@\advance\rightskip\beamer@colbox@sep\fi%
+    \if@tempswa\ifdim\beamer@colbox@colsep>\z@%
+      \advance\leftskip by\beamer@colbox@colsep%
+      \advance\rightskip by\beamer@colbox@colsep%
+      \vskip\beamer@colbox@colsep%
+    \fi%
+      \ifdim\beamer@colbox@colseps>\z@\vskip\beamer@colbox@colseps\fi%
+    \fi%
+    \ifdim\beamer@colbox@sep>\z@\vskip\beamer@colbox@sep\fi%
+    \beamer@vmode\ignorespaces}{%
+    \ifdim\beamer@colbox@sep>\z@\vskip\beamer@colbox@sep\fi%
+    \if@tempswa
+      \ifdim\beamer@colbox@colsep>\z@\vskip\beamer@colbox@colsep\fi%
+      \ifdim\beamer@colbox@colseps>\z@\vskip\beamer@colbox@colseps\fi%
+    \fi%
+  \egroup\color@endgroup\egroup%
+  \wd\beamer@tempbox=\beamer@colbox@wd%
+  \ifx\beamer@colbox@ht\@empty\else\ht\beamer@tempbox=\beamer@colbox@ht\fi%
+  \ifx\beamer@colbox@dp\@empty\else\dp\beamer@tempbox=\beamer@colbox@dp\fi%
+  \ifbeamer@colbox@rounded%
+    \if@tempswa%
+      \begin{beamerboxesrounded}[%
+        shadow=\beamer@colbox@shadow,%
+        lower=\beamer@colbox@color,%
+        upper=normal text,%
+        width=\beamer@colbox@wd]{}%
+        \box\beamer@tempbox%
+      \end{beamerboxesrounded}%
+    \else%
+      \ifdim\wd\beamer@tempbox>\textwidth%
+        \setbox\beamer@tempbox=\hbox to\textwidth{\hss\box\beamer@tempbox\hss}%
+      \fi%
+      \box\beamer@tempbox%
+    \fi%
+  \else%
+    \if@tempswa\setbox\beamer@tempbox=\hbox{%
+      \usebeamercolor{\beamer@colbox@color}%
+      \hskip-\beamer@colbox@colseps%
+      \fboxsep=\z@\colorbox{bg}{%
+        \hskip\beamer@colbox@colseps%
+        \box\beamer@tempbox%
+        \hskip\beamer@colbox@colseps%
+      }%
+      \hskip-\beamer@colbox@colseps%
+      }\fi%
+    \ifdim\wd\beamer@tempbox>\textwidth%
+      \setbox\beamer@tempbox=\hbox to\textwidth{\hskip0pt minus\beamer@leftmargin\relax\box\beamer@tempbox\hskip0pt minus\beamer@rightmargin\relax}%
+    \fi%
+    \box\beamer@tempbox%
+  \fi%
+}
+
+
+%    \end{macrocode}
+% \iffalse
+%</beamerbasecolor-xetex-bidi.def>
+%<*beamerbaseframecomponents-xetex-bidi.def>
+%\fi
+% \section{File \texttt{beamerbaseframecomponents-xetex-bidi.def}}
+%    \begin{macrocode}
+\ProvidesFile{beamerbaseframecomponents-xetex-bidi.def}[2022/05/24 v0.1 bidi adaptations for beamerbaseframecomponents package for XeTeX engine]
+\renewcommand<>\beamer@columncom[2][\beamer@colmode]{%
+  \beamer@colclose%
+  \def\beamer@colclose{\end{minipage}\hfill\end{actionenv}\ignorespaces}%
+\begin{actionenv}#3%
+  \setkeys{beamer@col}{#1}%
+  \begin{minipage}[\beamer@colalign]{#2}%
+    \leavevmode\bidi@beamer@ragged\beamer@colheadskip\ignorespaces}
+
+\renewenvironment<>{columns}[1][]{%
+  \begin{actionenv}#2%
+  \ifbeamer@onlytextwidth
+    \def\beamer@colentrycode{\hbox to\textwidth\bgroup\ignorespaces}%
+    \def\beamer@colexitcode{\unskip\egroup}
+  \else%
+    \def\beamer@colentrycode{%
+      \hbox to\textwidth\bgroup%
+      \leavevmode%
+      \hskip-\beamer@leftmargin%
+      \nobreak%
+      \beamer@tempdim=\textwidth%
+      \advance\beamer@tempdim by\beamer@leftmargin%
+      \advance\beamer@tempdim by\beamer@rightmargin%
+      \hbox to\beamer@tempdim\bgroup%
+      \hbox{}\hfill\ignorespaces}%
+    \def\beamer@colexitcode{\egroup%
+      \nobreak%
+      \hskip-\beamer@rightmargin\egroup}%
+  \fi%
+  \ifbeamer@centered\setkeys{beamer@col}{c}\else\setkeys{beamer@col}{t}\fi%
+  \setkeys{beamer@col}{#1}%
+  \par%
+  \leavevmode
+  \beamer@colentrycode%
+  \def\beamer@colclose{}\ignorespaces}%
+  {\beamer@colclose\def\beamer@colclose{}\beamer@colexitcode\end{actionenv}}%
+
+
+\def\@makeRTLfntext#1{%
+  \def\insertfootnotetext{#1}%
+  \def\insertfootnotemark{\@makefnmark}%
+  \usebeamertemplate***{RTLfootnote}}
+  
+\def\@makeLTRfntext#1{%
+  \def\insertfootnotetext{#1}%
+  \def\insertfootnotemark{\@makefnmark}%
+  \usebeamertemplate***{LTRfootnote}}
+  
+\renewcommand<>\beamer@framefootnotetext[1]{%
+  \global\setbox\beamer@footins\vbox{%
+    \if@RTL@footnote\@RTLtrue\else\@RTLfalse\fi%
+    \hsize\framewidth
+    \textwidth\hsize
+    \columnwidth\hsize
+    \unvbox\beamer@footins
+    \reset@font
+    \bidi@@footnotetext@font
+    \@parboxrestore
+    \protected@edef\@currentlabel
+         {\csname p@footnote\endcsname\@thefnmark}%
+    \color@begingroup
+      \uncover#2{\@makefntext{%
+        \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
+    \color@endgroup}}
+    
+\renewcommand<>\beamer@frameRTLfootnotetext[1]{%
+  \global\setbox\beamer@footins\vbox{%
+    \@RTLtrue
+    \hsize\framewidth
+    \textwidth\hsize
+    \columnwidth\hsize
+    \unvbox\beamer@footins
+    \reset@font
+    \bidi@@RTLfootnotetext@font
+    \@parboxrestore
+    \protected@edef\@currentlabel
+         {\csname p@footnote\endcsname\@thefnmark}%
+    \color@begingroup
+      \uncover#2{\@makeRTLfntext{%
+        \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
+    \color@endgroup}}
+    
+\renewcommand<>\beamer@frameLTRfootnotetext[1]{%
+  \global\setbox\beamer@footins\vbox{%
+    \@RTLfalse
+    \hsize\framewidth
+    \textwidth\hsize
+    \columnwidth\hsize
+    \unvbox\beamer@footins
+    \reset@font
+    \bidi@@LTRfootnotetext@font
+    \@parboxrestore
+    \protected@edef\@currentlabel
+         {\csname p@footnote\endcsname\@thefnmark}%
+    \color@begingroup
+      \uncover#2{\@makeLTRfntext{%
+        \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
+    \color@endgroup}}
+    
+\renewcommand<>\@mpfootnotetext[1]{%
+  \global\setbox\@mpfootins\vbox{%
+    \ifbidi@autofootnoterule\ifnum\c@mpfootnote=\@ne\if@RTL@footnote\global\let\bidi@mpfootnoterule\right@footnoterule\else\global\let\bidi@mpfootnoterule\left@footnoterule\fi\fi\fi
+    \unvbox\@mpfootins
+    \reset@font
+    \bidi@@footnotetext@font
+    \hsize\columnwidth
+    \@parboxrestore
+    \protected@edef\@currentlabel
+         {\csname p@mpfootnote\endcsname\@thefnmark}%
+    \color@begingroup
+      \uncover#2{\@makefntext{%
+        \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
+    \color@endgroup}}
+    
+\renewcommand<>\@mpRTLfootnotetext[1]{%
+  \global\setbox\@mpfootins\vbox{%
+  \ifbidi@autofootnoterule\ifnum\c@mpfootnote=\@ne\global\let\bidi@mpfootnoterule\right@footnoterule\fi\fi
+    \unvbox\@mpfootins
+    \reset@font
+    \bidi@@RTLfootnotetext@font
+    \hsize\columnwidth
+    \@parboxrestore
+    \protected@edef\@currentlabel
+         {\csname p@mpfootnote\endcsname\@thefnmark}%
+    \color@begingroup
+      \uncover#2{\@makeRTLfntext{%
+        \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
+    \color@endgroup}}
+    
+\renewcommand<>\@mpLTRfootnotetext[1]{%
+  \global\setbox\@mpfootins\vbox{%
+  \ifbidi@autofootnoterule\ifnum\c@mpfootnote=\@ne\global\let\bidi@mpfootnoterule\left@footnoterule\fi\fi
+    \unvbox\@mpfootins
+    \reset@font
+    \bidi@@LTRfootnotetext@font
+    \hsize\columnwidth
+    \@parboxrestore
+    \protected@edef\@currentlabel
+         {\csname p@mpfootnote\endcsname\@thefnmark}%
+    \color@begingroup
+      \uncover#2{\@makeLTRfntext{%
+        \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
+    \color@endgroup}}
+    
+\let\@footnotetext=\beamer@framefootnotetext
+\let\@RTLfootnotetext=\beamer@frameRTLfootnotetext
+\let\@LTRfootnotetext=\beamer@frameLTRfootnotetext
+
+\footdir@temp\footdir@ORG@bidi@beamer@footnotetext\@footnotetext{\bidi@footdir@footnote}%  
+\footdir@temp\footdir@ORG@bidi@beamer@RTLfootnotetext\@RTLfootnotetext{R}%
+\footdir@temp\footdir@ORG@bidi@beamer@LTRfootnotetext\@LTRfootnotetext{L}%
+
+\renewcommand<>{\footnote}[1][]{%
+  \let\beamer@footnotetext=\@footnotetext%
+  \let\beamer@mpfn=\@mpfn%
+  \let\beamer@thempfn=\thempfn%
+  \let\beamer@kvorig=\KV@errx%
+  \let\beamer@xkvorig=\XKV@err
+  \def\beamer@footarg{}%
+  \def\KV@errx##1{\edef\beamer@footarg{\@tempa}}%
+  \def\XKV@err##1{\edef\beamer@footarg{\XKV@tkey}}%
+  \setkeys{beamerfootnote}{#1}%
+  \let\KV@errx=\beamer@kvorig%
+  \let\XKV@errx=\beamer@xkvorig
+  \ifx\beamer@footarg\@empty%
+    \def\beamer@next{\stepcounter\beamer@mpfn
+      \protected@xdef\@thefnmark{\beamer@thempfn}%
+      \@footnotemark\beamer@footnotetext#2}%
+  \else%
+    \def\beamer@next{%
+      \begingroup
+        \csname c@\beamer@mpfn\endcsname\beamer@footarg\relax
+        \unrestored@protected@xdef\@thefnmark{\beamer@thempfn}%
+      \endgroup
+      \@footnotemark\beamer@footnotetext#2}%
+  \fi%
+  \beamer@next}
+  
+\renewcommand<>{\RTLfootnote}[1][]{%
+  \let\beamer@RTLfootnotetext=\@RTLfootnotetext%
+  \let\beamer@mpfn=\@mpfn%
+  \let\beamer@thempfn=\thempfn%
+  \let\beamer@kvorig=\KV@errx%
+  \let\beamer@xkvorig=\XKV@err
+  \def\beamer@footarg{}%
+  \def\KV@errx##1{\edef\beamer@footarg{\@tempa}}%
+  \def\XKV@err##1{\edef\beamer@footarg{\XKV@tkey}}%
+  \setkeys{beamerfootnote}{#1}%
+  \let\KV@errx=\beamer@kvorig%
+  \let\XKV@errx=\beamer@xkvorig
+  \ifx\beamer@footarg\@empty%
+    \def\beamer@next{\stepcounter\beamer@mpfn
+      \protected@xdef\@thefnmark{\beamer@thempfn}%
+      \@footnotemark\beamer@RTLfootnotetext#2}%
+  \else%
+    \def\beamer@next{%
+      \begingroup
+        \csname c@\beamer@mpfn\endcsname\beamer@footarg\relax
+        \unrestored@protected@xdef\@thefnmark{\beamer@thempfn}%
+      \endgroup
+      \@footnotemark\beamer@footnotetext#2}%
+  \fi%
+  \beamer@next}
+  
+\renewcommand<>{\LTRfootnote}[1][]{%
+  \let\beamer@LTRfootnotetext=\@LTRfootnotetext%
+  \let\beamer@mpfn=\@mpfn%
+  \let\beamer@thempfn=\thempfn%
+  \let\beamer@kvorig=\KV@errx%
+  \let\beamer@xkvorig=\XKV@err
+  \def\beamer@footarg{}%
+  \def\KV@errx##1{\edef\beamer@footarg{\@tempa}}%
+  \def\XKV@err##1{\edef\beamer@footarg{\XKV@tkey}}%
+  \setkeys{beamerfootnote}{#1}%
+  \let\KV@errx=\beamer@kvorig%
+  \let\XKV@errx=\beamer@xkvorig
+  \ifx\beamer@footarg\@empty%
+    \def\beamer@next{\stepcounter\beamer@mpfn
+      \protected@xdef\@thefnmark{\beamer@thempfn}%
+      \@footnotemark\beamer@LTRfootnotetext#2}%
+  \else%
+    \def\beamer@next{%
+      \begingroup
+        \csname c@\beamer@mpfn\endcsname\beamer@footarg\relax
+        \unrestored@protected@xdef\@thefnmark{\beamer@thempfn}%
+      \endgroup
+      \@footnotemark\beamer@footnotetext#2}%
+  \fi%
+  \beamer@next}
+  
+  
+%    \end{macrocode}
+% \iffalse
+%</beamerbaseframecomponents-xetex-bidi.def>
+%<*beamerbaselocalstructure-xetex-bidi.def>
+%\fi
+% \section{File \texttt{beamerbaselocalstructure-xetex-bidi.def}}
+%    \begin{macrocode}
+\ProvidesFile{beamerbaselocalstructure-xetex-bidi.def}[2022/05/24 v0.1 bidi adaptations for beamerbaselocalstructure package for XeTeX engine]
+\def\beamer@enum@{%
+  \beamer@computepref\@itemdepth% sets \beameritemnestingprefix
+  \usebeamerfont{itemize/enumerate \beameritemnestingprefix body}%
+  \bgroup
+  \usebeamercolor[fg]{itemize/enumerate \beameritemnestingprefix body}%
+  \usebeamertemplate{itemize/enumerate \beameritemnestingprefix body begin}%
+  \egroup
+  \expandafter
+    \list
+      {\usebeamertemplate{\beamer@enumtempl}}
+      {\usecounter\@enumctr%
+        \def\makelabel##1{{\hss\llap{{%
+                \usebeamerfont*{enumerate \beameritemnestingprefix item}%
+                \usebeamercolor[fg]{enumerate \beameritemnestingprefix item}##1}}}}}%
+  \beamer@cramped%
+  \bidi@beamer@ragged%
+  \beamer@firstlineitemizeunskip%
+}
+
+\renewcommand{\itemize}[1][]{%
+  \ifblank{#1}{}{\def\beamer@defaultospec{#1}}%
+  \ifnum \@itemdepth >2\relax\@toodeep\else
+    \advance\@itemdepth\@ne
+    \beamer@computepref\@itemdepth% sets \beameritemnestingprefix
+    \usebeamerfont{itemize/enumerate \beameritemnestingprefix body}%
+    \bgroup
+    \usebeamercolor[fg]{itemize/enumerate \beameritemnestingprefix body}%
+    \usebeamertemplate{itemize/enumerate \beameritemnestingprefix body begin}%
+    \egroup
+    \list
+      {\usebeamertemplate{itemize \beameritemnestingprefix item}}
+      {\def\makelabel##1{%
+          {%
+            \hss\llap{{%
+                \usebeamerfont*{itemize \beameritemnestingprefix item}%
+                \usebeamercolor[fg]{itemize \beameritemnestingprefix item}##1}}%
+          }%
+        }%
+      }
+  \fi%
+  \beamer@cramped%
+  \bidi@beamer@ragged%
+  \beamer@firstlineitemizeunskip%
+}
+
+\def\@@description{%
+  \advance\beamer@descdefault by \labelsep%
+  \usebeamerfont{description body}%
+  \bgroup
+  \usebeamercolor[fg]{description body}%
+  \usebeamertemplate{description body begin}%
+  \egroup
+  \list
+  {}
+  {\labelwidth\beamer@descdefault\leftmargin\beamer@descdefault\let\makelabel\beamer@descriptionitem}%
+  \beamer@cramped%
+  \bidi@beamer@ragged
+  \beamer@firstlineitemizeunskip%
+}
+
+\renewenvironment{thebibliography}[1]
+{%\leavevmode\unskip%
+\if@RTL\if@LTRbibitems\@RTLfalse\else\fi\else\if@RTLbibitems\@RTLtrue\else\fi\fi
+\bidi@@thebibliography@font@hook%
+  \list{\@biblabel{\@arabic\c@enumiv}}%
+           {\settowidth\labelwidth{\beamer@biblabeltemplate{\@biblabel{#1}}}%
+            \leftmargin\labelwidth
+            \advance\leftmargin\labelsep
+            \itemsep=0pt%
+            \partopsep=0pt%
+            \topsep=0pt%
+            \usecounter{enumiv}%
+            \let\p@enumiv\@empty
+            \renewcommand\theenumiv{\@arabic\c@enumiv}
+            \let\makelabel\beamer@biblabeltemplate}%
+      \sloppy\bidi@beamer@ragged
+      \clubpenalty10000
+      \@clubpenalty \clubpenalty
+      \widowpenalty10000%
+      \sfcode`\.\@m}
+     {\def\@noitemerr
+       {\@latex@warning{Empty `thebibliography' environment}}%
+      \ifhmode\unskip\fi\endlist}
+      
+
+%    \end{macrocode}
+% \iffalse
+%</beamerbaselocalstructure-xetex-bidi.def>
+%<*beamerinnerthemedefault-xetex-bidi.def>
+%\fi
+% \section{File \texttt{beamerinnerthemedefault-xetex-bidi.def}}
+%    \begin{macrocode}
+\ProvidesFile{beamerinnerthemedefault-xetex-bidi.def}[2022/05/24 v0.1 bidi adaptations for beamerinnerthemedefault package for XeTeX engine]
+\newcommand*{\bidi@beamer@leftskip}{%
+  \if@RTL
+    \rightskip
+  \else
+    \leftskip
+  \fi
+}
+
+\expandafter\let\csname beamer@@tmpop@subsection in toc@default\endcsname\relax
+
+\expandafter\let\csname beamer@@tmpop@subsubsection in toc@default\endcsname\relax
+
+\defbeamertemplate*{subsection in toc}{default}
+{\leavevmode\bidi@beamer@leftskip=1.5em\inserttocsubsection\par}
+
+\defbeamertemplate*{subsubsection in toc}{default}
+{\leavevmode\normalsize\usebeamerfont{subsection in toc}\bidi@beamer@leftskip=3em%
+  \usebeamerfont{subsubsection in toc}\inserttocsubsubsection\par}
+
+\newcommand*{\bidi@beamer@blacktriangle}{%
+  \if@RTL
+    $\blacktriangleleft$%
+  \else
+    $\blacktriangleright$%
+  \fi
+} 
+
+\expandafter\let\csname beamer@@tmpop@itemize item@default\endcsname\relax
+
+\expandafter\let\csname beamer@@tmpop@itemize subitem@default\endcsname\relax
+
+\expandafter\let\csname beamer@@tmpop@itemize subsubitem@default\endcsname\relax
+
+\defbeamertemplate*{itemize item}{default}{\usebeamerfont*{itemize item}\raise1.25pt\hbox{\donotcoloroutermaths\bidi@beamer@blacktriangle}}
+\defbeamertemplate*{itemize subitem}{default}{\usebeamerfont*{itemize subitem}\raise1.5pt\hbox{\donotcoloroutermaths\bidi@beamer@blacktriangle}}
+\defbeamertemplate*{itemize subsubitem}{default}{\usebeamerfont*{itemize subsubitem}\raise1.5pt\hbox{\donotcoloroutermaths\bidi@beamer@blacktriangle}}
+
+\bidi@undef\beamer@@tmpop@footnote@default
+
+\defbeamertemplate*{footnote}{default}
+{
+  \parindent 1em\noindent%
+  \bidi@beamer@ragged
+  \hbox to 1.8em{\hfil\insertfootnotemark}\insertfootnotetext\par%
+}
+
+\defbeamertemplate*{RTLfootnote}{default}
+{
+  \parindent 1em\noindent%
+  \raggedleft
+  \hbox to 1.8em{\hfil\insertfootnotemark}\insertfootnotetext\par%
+}
+
+\defbeamertemplate*{LTRfootnote}{default}
+{
+  \parindent 1em\noindent%
+  \raggedright
+  \hbox to 1.8em{\hfil\insertfootnotemark}\insertfootnotetext\par%
+}
+
+\bidi@undef\beamer@@tmpop@caption@default
+
+\defbeamertemplate*{caption}{default}
+{%
+  \bidi@beamer@ragged
+  {%
+    \leavevmode
+    \usebeamercolor[fg]{caption name}%
+    \usebeamerfont*{caption name}%
+    \insertcaptionname
+    \usebeamertemplate{caption label separator}%
+  }%
+  \insertcaption\par
+}
+
+
+%    \end{macrocode}
+% \iffalse
+%</beamerinnerthemedefault-xetex-bidi.def>
 %<*bidi.sty>
 %\fi
 % \section{File \texttt{bidi.sty}}
 %    \begin{macrocode}
 \NeedsTeXFormat{LaTeX2e}
-\def\bididate{2022/05/22}
-\def\bidi@version{36.9}
+\def\bididate{2022/05/24}
+\def\bidi@version{37.0}
 \ProvidesPackage{bidi}[\bididate\space v\bidi@version\space
 Bidirectional typesetting in plain TeX and LaTeX]
 \edef\@bidi@info{****************************************************^^J%
@@ -2021,8 +2553,9 @@ Bidirectional typesetting in plain TeX and LaTeX]
 }
 \newcommand*{\@bidi@pdfcustomproperties}{%
   This is the bidi package, Version \bidi@version,
-  Released May 22, 2022. 
+  Released May 24, 2022. 
 }
+\newcommand*{\bidi@beamer@ragged}{}
 \@RTLmainfalse
 \AtBeginDocument{%
   \if@RTLmain\else
@@ -2264,9 +2797,9 @@ Bidirectional typesetting in plain TeX and LaTeX]
 %\fi
 % \section{File \texttt{bidi.tex}}
 %    \begin{macrocode}
-\def\bididate{2022/05/22}
+\def\bididate{2022/05/24}
 \catcode`@=11
-\def\bidi@version{36.9}
+\def\bidi@version{37.0}
 \let \protect \relax
 \newlinechar`\^^J
 \edef\@bidi@info{****************************************************^^J%
@@ -2368,7 +2901,7 @@ Bidirectional typesetting in plain TeX and LaTeX]
 }
 \def\@bidi@pdfcustomproperties{%
   This is the bidi package, Version \bidi@version,
-  Released May 22, 2022. 
+  Released May 24, 2022. 
 }
 \def\bidi@pdfm@mark{%
   \special{pdf:%
@@ -22559,7 +23092,7 @@ to\rtside{\box\bslice\hfil}}
  }\vbox}
 \newcommand*{\bidi@leftskip}{\if@RTL\rightskip\else\leftskip\fi}
 \newcommand*{\bidi@rightskip}{\if@RTL\leftskip\else\rightskip\fi}
-\def\LTR{\par\@RTLfalse\@RTL@footnotefalse\@RTLtabfalse\hsize\linewidth\parshape\z@}
+\def\LTR{\par\@RTLfalse\@RTL@footnotefalse\@RTLtabfalse\hsize\linewidth\parshape\z@\bidi@beamer@ragged}
 \def\endLTR{\par}
 \newenvironment{LTR*}{\LTR
   \everypar{%
@@ -22569,7 +23102,7 @@ to\rtside{\box\bslice\hfil}}
     \fi}%
   }%
 }{\endLTR\@endpetrue}
-\def\RTL{\par\@RTLtrue\@RTL@footnotetrue\@RTLtabtrue\hsize\linewidth\parshape\z@}
+\def\RTL{\par\@RTLtrue\@RTL@footnotetrue\@RTLtabtrue\hsize\linewidth\parshape\z@\bidi@beamer@ragged}
 \def\endRTL{\par}
 \newenvironment{RTL*}{\RTL
   \everypar{%
@@ -22579,8 +23112,8 @@ to\rtside{\box\bslice\hfil}}
     \fi}%
   }%
 }{\endRTL\@endpetrue}
-\def\setRTL{\@RTLtrue\@RTL@footnotetrue\@RTLtabtrue}
-\def\setLTR{\@RTLfalse\@RTL@footnotefalse\@RTLtabfalse}
+\def\setRTL{\@RTLtrue\@RTL@footnotetrue\@RTLtabtrue\bidi@beamer@ragged}
+\def\setLTR{\@RTLfalse\@RTL@footnotefalse\@RTLtabfalse\bidi@beamer@ragged}
 \let\unsetRTL=\setLTR
 \let\unsetLTR=\setRTL
 \let\LR=\LRE
@@ -23321,6 +23854,7 @@ $\@@underline{\hbox{#1}}\m@th$\relax\fi\fi}
 \@ifclassloaded{artikel2}{\input{artikel2-xetex-bidi.def}}{}
 \@ifclassloaded{artikel3}{\input{artikel3-xetex-bidi.def}}{}
 \@ifclassloaded{amsart}{\input{amsart-xetex-bidi.def}}{}
+\@ifclassloaded{beamer}{\input{beamer-xetex-bidi.def}}{}
 \@ifclassloaded{letter}{\input{letter-xetex-bidi.def}}{}
 \@ifclassloaded{extletter}{\input{extletter-xetex-bidi.def}}{}
 \@ifclassloaded{memoir}{\input{memoir-xetex-bidi.def}}{}
@@ -23458,6 +23992,10 @@ $\@@underline{\hbox{#1}}\m@th$\relax\fi\fi}
 \@ifpackageloaded{tocloft}{\@ifclassloaded{memoir}{}{\input{tocloft-xetex-bidi.def}}}{}
 \@ifdefinitionfileloaded{tc-xetex}{\input{tc-xetex-bidi.def}}{}
 \@ifpackageloaded{todonotes}{\input{todonotes-xetex-bidi.def}}{}
+\@ifpackageloaded{beamerbasecolor}{\input{beamerbasecolor-xetex-bidi.def}}{}
+\@ifpackageloaded{beamerbaseframecomponents}{\input{beamerbaseframecomponents-xetex-bidi.def}}{}
+\@ifpackageloaded{beamerbaselocalstructure}{\input{beamerbaselocalstructure-xetex-bidi.def}}{}
+\@ifpackageloaded{beamerinnerthemedefault}{\input{beamerinnerthemedefault-xetex-bidi.def}}{}
 %    \end{macrocode}
 % \iffalse
 %</latex-xetex-bidi.def>
-- 
cgit v1.2.3

