Implementation of Block LMS
As applesoup says in the comments the term
$$
\mathbf{u}(kL+i)e(kL+i)
$$
is a vector, not a single value (some integer).

Why do you think it's a scalar?

To answer your question: no, it's incorrect to state that all the algorithm does is add a constant to all elements of $\hat{w}(k)$.

As per this slide from here



the block LMS error is still a scalar. It's just that the errors across multiple blocks are used to form the updates.

Another way to look at it is that $\Phi(k)$ can be written as:
$$
\mathbf{u}_k \mathbf{e}_k
$$
where $$\mathbf{u}_k = 
\left[
\begin{eqnarray*}
&amp;\mathbf{u}(kL+0)
&amp;\mathbf{u}(kL+1)
&amp;\mathbf{u}(kL+2)
&amp;\ldots
&amp;\mathbf{u}(kL+L-1)
\end{eqnarray*}
\right]$$
is an $N_u \times L$ array and
$$\mathbf{e}_k = 
\left[
\begin{eqnarray*}
&amp;e(kL+0)\\
&amp;e(kL+1)\\
&amp;e(kL+2)\\
&amp;\vdots\\
&amp;e(kL+L-1)\\
\end{eqnarray*}
\right]$$
is an $L\times 1 $ vector.

As a result $\mathbf{u}_k \mathbf{e}_k$ is an $N_u \times 1$ vector.