Cuperino / QPrompt-Teleprompter

Teleprompter software for all video creators. Built with ease of use, productivity, control accuracy, and smooth performance in mind.
https://qprompt.app
GNU General Public License v3.0
354 stars 22 forks source link

Text color/highlight macros #222

Open videosmith opened 8 months ago

videosmith commented 8 months ago

How about adding keyboard shortcuts for the custom color wells in the os color picker.

This may avoid some mouse interaction constantly opening the picker when adding color to selected texts.

20231014_144036

Cuperino commented 8 months ago

The color picker is provided by the operating system and not QPrompt, so I can't modify it in any way.

I'd have to write a new color picker to replace the color pickers of all operating systems. That would make Mac users very unhappy because MacOS' color picker has many features that would be missing from a custom made picker.

Instead of replacing the color picker for this, we could create an intermediate picker that's part of QPrompt, that provides a basic set of colors to choose from, and/or remembers previous color selections, which could be assigned shortcuts.

The issue with an intermediate picker is that, because this adds an intermediate step for the user, there would be circumstances in which it would be negatively impacting productivity.

videosmith commented 8 months ago

Could an option whereby you right-click on selected text, and a contextual menu would have 8 preset color options selected from your configuration menus?

Cuperino commented 8 months ago

It's a good idea, but it's not possible with the context menu API that presently being used for desktop operating systems. Qt provides two context menu APIs for QML apps, a native API and a Qt Quick API. The one presently being used is the Native API. If I change to the Quick API, the context menus will look like the menu you get when you click on the, button for choosing fonts, which is space inefficient and prevents us from drawing the menu outside of the confines of the window. For these reasons I only use the Qt Quick API on Android, where there is no such thing as a native right click context menu.

Another solution might be to show a small floating window, related to formatting, near the text cursor when the cursor sits still, similar to what modern versions of Word provide. It's a tricky thing to add because we'd have to put a lot of effort in making it unobtrusive without outright copying what Word does. (I haven't used MS Office in a long time, so I have no idea how that works.) It's probably more effort to create this than to create two completely custom context menu implementations that replace the context menu APIs being used...

videosmith commented 7 months ago

Not worth a lot of your effort in my opinion, just a thought.

Cuperino commented 7 months ago

It's not a high priority, but it's still something that would help with productivity... Nevertheless, there's one other thing holding me back from implementing this:

Highlighting is typically used to give text semantic meaning or context, say:

If there was a way to indicate this semantic meaning in QPrompt, or in a screenwriting program compatible with QPrompt, QPrompt could automatically style all contents for you. Those meanings could be ascribed through macros, and defeat the purpose of this feature.