Re: Modality changes proposal



On Tue, Oct 07, 2003 at 05:29:51PM +0400, Denis O. Mikhalkin wrote:
> On Tue, 2003-10-07 at 16:07, Dominik Vogt wrote:
> > > It is just one simple example of the WebStart process, and there are
> > > millions of complicated applications which I can't speak of(since this
> > > is propriatery information) but whose authors(big-fat software
> > > companies) ask for providing such a complex API for them. Right now the
> > > only restriction for this is platform
> > 
> > > - on Windows EVERYTHING works.
> > 
> > Which doesn't necessarily mean it's a good solution.  On windows,
> > the user has almost no control over what is happening on the
> > screen.  Many of us think this is bad.  
> Well, an opinion. There are different opinions - that Window API is both
> user and developer friendly. Being Windows user for years I never felt
> the need to control anything, I don't understand what can be controlled
> and why - I am sure most of the users, even users-developer, won't need
> it as well.

Did you ever get one of these desktop modal dialogs that have a
single OK button, telling you that you have to reboot before you
can use the application you just installed?  And did you ever have
a 200 MB download ruined because you had no means to send that
dialog to the background?

Please explain

  a) how this can be called a "user friendly" API, and
  b) why it is important to allow developers to write such code

In X, the following chain of power it The Right Way(TM):

  1. The application provides information about its windows to the
     user and the window manager (sadly, many application do a
     lousy job)
  2. The user decides how the desktop works, possibly based on the
     information from the application.
  3. If the user doesn't specify specific behaviour, the window
     manager may do so (again using te information from the
     application).
  4. If neither the user nor the window manager have an opinion,
     the application may implement it according to the ICCCM and/
     or EMWH spec.
  5. If none of the above apply, the application may do what it
     wants.

As we argued before, this chain of power is important to achieve
consistent behaviour all over the desktop in a free environment.
The other option would we to force a policy upon users,
applications and window managers like windows does.  This is not
going to happen in the open source community as it is against the
idea of free software itself (free partially meaning that the user
can choose).  So you better get used to it.

> But developers do neet a control - to write applications
> according to specification.
> 
> > Don't expect the wm spec
> > to become a "windows compliance enforcement" spec.  I guess most
> > of us feel more obliged to give control to the user than to give
> > it to the developers.

> What do you mean by "give control to the user"? What kind of control?

Control over how the desktop behaves in general, and how windows
behave in particular.  You repeatedly said that, for example, it
is important that the developer can decide that a specific window
can not be lowered below another window, without giving the WM or
the user the choice to override that behaviour.  This is simply
foolish.  I, the user, *always* know best what I want.  How can
the developer decide that I'm not allowed to make a screen shot of
the lower windows or copy-and-paste some information from them?

Instead, the application should say, "hey, I think this window is
important and should not be hidden, and my other windows can not
work properly" while it's still open", and then try to continue
working as best as it can, no matter what happens.

But with the client wide modality enforced from a 3rd party
applications it just says "Miami Vice, freeze!" ;-)

> And how my proposal enroaches on this "control"?

By taking away control from the user, giving it to the
developer instead.

Note:  There are thousands of X applications that work perfectly,
never annoying their users by behaving like every other
application.  And there are dozens of X applications which behave
in unusual, unpredictable ways because the developers thought "but
we *need* that particular feature".

Ciao

Dominik ^_^  ^_^



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