Running time function for an algorithm with while and for loop
For each value of $i$, the inner loop runs $i$ times, and so the running time of the body of the outer loop with a given value i is in $\Theta(i)$. The values of i, as you mention, are $n, \lfloor n/2 \rfloor, \lfloor n/4 \rfloor, \cdots, 1$, and so the overall running time is
$$ \Theta(n + n/2 + n/4 + \cdots + 1) = \Theta(n). $$
Here we use the fact that the infinite series $1 + 1/2 + 1/4 + \cdots$ converges (to $2$).