Cook manicotti in a large saucepan of lightly salted boiling water for 8 minutes. Drain. Let cool slightly.
Heat half the oil in a medium non-stick frying pan over medium heat. Add onion. Sauté until softened, 5 minutes.
Briefly drain spinach in a colander; retain some liquid on the leaves. Combine spinach, ricotta, mozzarella, parmesan, basil, garlic powder and salt in a large bowl.
Preheat oven to 180°C. Spread ¼ cup tomato sauce over the bottom of a 32 x 22 x 5 cm baking dish. Fill each manicotti shell from both ends with spinach mixture. Arrange manicotti in baking dish in a single layer. Top with the remaining tomato sauce. Cover with aluminium foil. Bake until heated through, about 30 minutes.
About 5 minutes before the end of the baking time, heat the remaining oil in a frying pan over medium heat. Add the mushrooms and sauté just until slightly softened, 2 minutes. Serve manicotti topped with mushrooms.