Let's put it this way.
You employ a person to do your Drupal Developing. Fair enough.
The person loves to produces cartoons. Producing cartoons on her Mac energises her. When her workflow allows her to swap her attention, as inspiration arises, from juggling user stories to progressing her latest cartoon, she is happy. Being happy she wants to stay in your workplace. Being happy she delivers good agile development outcomes without a sullen look on her face and without looking at the clock all day. She arrives at work with a "HELO! Let's Do It!".
Some days 50% of her time and attention and creativity goes to the development and the other 50% to her cartooning. Other days it is 90/10 in either direction.
Fair enough you say, but I am not employing her for cartooning. I give the job to someone else.
Consider. Isn't it your employment framework that is the limitation here? Change it. Employ humanely. Employing humanely means there are no caged birds. All are free -range.
Your business processes, your business case, your employment remuneration structure must take into account the nature of us as free range humans.
Pay her for her development by the hour or by the outcomes or by the number of lines of code. Negotiate this agreement with her. Don't impose it and hand it to her as a contract drawn up by your expensive lawyers while she has trouble finding enough money to pay her rent! That's not an equal playing field. Set up a system that identifies daily, how much she is to be paid that day for her Drupal Developing. It will vary day by day. Her responsibility to earn enough. Encourage her cartooning. Employ another person who enjoys to chat on the internet half the day. Two people. Two happy people. Better than one caged-bird.
Those 2 people will work out how to get your development done between them.
They are not caged brains passively agressively waiting for direction.
They are Free Range Creators.