Re: Gtk::Window resize grip replacement



Hi;

On 14 May 2015 at 20:36, Detlef Reichl <detlef reichl gmx org> wrote:

Am 14.05.2015 um 20:09 schrieb Emmanuele Bassi:
Hi;

On 14 May 2015 at 18:59, Detlef Reichl <detlef reichl gmx org> wrote:

the resize grip of Gtk::Window (gtk_window_set_has_resize_grip) is
deprecated since 3.14. Is there a suggested replacement, or do I have to
do it on my own?

The actual question is: why do you feel the need for a resize grip?

Some context: the only reason the resize grip was introduced was
because stacking window managers (as opposed to tiling ones) didn't
cope well with themes using 1px window borders; since then, window
managers have added invisible resize areas around the window or they
have window borders larger than 1 pixel. For client-side decorations,
GTK+ will handle the invisible resize areas itself, but in absence of
a compositor, GTK+ will revert to a visible border with enough padding
to allow resizing.

What it is that you're trying to achieve?

It is simply, that from my point of view, the width of the resize area -
with compositor and client side decorations - is to small. I don't like
GUIs, where I have to place the mouse pointer with an accuracy of a view
pixels. For my self, that is not such a big problem, because I have very
good fine motor skills, but I know people, who have not and for them I
think a dedicated quite big resize grip would be useful.

Client-side decorated windows when running under a compositor have 5
pixels around the border that can be used as a resize area. If there
is no compositor running, the border is automatically increased from
1px to, I think, 3px (I'd have to double check). Themes can influence
the border as well.

Another reason why the resize grip is gone is because it sits in the
empty space between the horizontal and the vertical scroll bars, and
given that scroll bars have become smaller indicators, the resize grip
would be just as big as the invisible resize region around the window,
except located in a single corner. The resize grip also had issues
when it came to drawing and sizing elements of the window — it
basically constrained the application developers to specific layouts.

Anyway, it's still perfectly possible to add a resize grip to your
application; you'll have to handle the resizing yourself, though. You
can use the GDK API to initiate a window resize programmatically.

Ciao,
 Emmanuele.

-- 
https://www.bassi.io
[ ] ebassi [ gmail com]


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]