EurographicSeminars Tutorials and Perspectives in Computer Graphics Edited by G.Enderle and D.A.Duce Methodology of Window Management Proceedings of an Alvey Workshop at Cosener's House, Abingdon, UK, April 1985 Edited by ER.A. Hopgood D.A. Duce E.V.C.Fielding K.Robinson A.S. Williams With 41 Figures Springer-Verlag Berlin Heidelberg New York Tokyo Eurographic Seminars Edited by G. Enderle and D. A. Duce for EUROGRAPIDCS - The European Association for Computer Graphics P.O. Box 16 CH-1288 Aire-Ia-Ville Editors F. Robert A. Hopgood David A. Duce Elizabeth V. C. Fielding Ken Robinson Antony S. Williams Science and Engineering Research Council Rutherford Appleton Laboratory Informatics Division Chilton, Didcot, Oxon, OXll OQX United Kingdom ISBN-13: 978-3-642-70921-0 e-ISBN-13: 978-3-642-70919-7 DOl: 10.1007/978-3-642-70919-7 This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically those of translation, reprinting, re-use of illustrations, broadcasting, reproduction by photocopying, machine or similar means, and storage in data banks. Under § 54 of the German Copyright Law where copies are made for other than private use, a fee is payable to 'Verwertungsgesellschaft Wort', Munich. © 1986 EUROGRAPHICS The European Association for Computer Graphics, Softcover reprint of the hardcover 15t edition 1986 P.O. Box 16. CH-1288 Aire-ia-Ville The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. Printing: Beltz Offsetdruck, HemsbachlBergstr. Bookbinding: J. Schaffer OHG, Gtiinstadt. 2145/3145-543210 . Preface This volume is a record of the Workshop on Window Management held at the Ruth- erford Appleton Laboratory's Cosener's House between 29 April and 1 May 1985. The main impetus for the Workshop came from the Alvey Programme's Man- Machine Interface Director who was concerned at the lack of a formal definition of window management and the lack of focus for research activities in this area. Win- dow Management per se is not the complete problem in understanding interaction. However, the appearance of bitmap displays from a variety of vendors enabling an operator to work simultaneously with a number of applications on a single display has focussed attention on what the overall architecture for such a system should be and also on what the interfaces to both the application and operator should be. The format of the Workshop was to spend the first day with presentations from a number of invited speakers. The aim was to get the participants aware of the current state of the art and to highlight the main outstanding issues. The second day consisted of the Workshop participants splitting into three groups and discussing specific issues in depth. Plenary sessions helped to keep the individual groups work- ing on similar lines. The third day concentrated on the individual groups presenting their results and interacting with the other groups to identify main areas of con- sensus and also a framework for future work. Part I of this volume gives the background to the Workshop, its scope and goals. Part IT consists of position papers, the invited presentations and an edited version of the discussion following each. The set of speakers covers a significant part of the expertise currently available. This section provided a useful summary of the state-of- the-art for the Workshop and highlighted the issues. Each participant was asked to identify his major areas of concern prior to the Workshop. These have been condensed and integrated to give a view of the prob- lems prior to the Workshop. Lists of issues were also generated from these contribu- tions and the invited presentations. These formed an initial basis for the Working Group discussions reported in the next part. Part lIT concentrates on the work carried out in the Working Groups with partic- ular attention focussed on the Working Group conclusions and questions requiring further study. vi Methodology of Window Management Part IV presents the main conclusions of the Workshop and includes an Open List of questions requiring further study. This list indicates the current limits to the understanding achieved at the Workshop. As always, more questions were raised than conclusions reached. This part also includes a bibliography of the area and a glossary of terms used in the book. The discussion sessions have been heavily edited. The Editors hope that no remarks have been attributed to individuals incorrectly. Copies of the typescript were sent to all participants for comment prior to publication. The contents of this volume should not be considered as definitive conclusions but as a contribution to the study of methodology in human-computer interaction partic- ularly with respect to single user workstations. This book should be of interest to anybody with an interest in graphics and interaction in general. Many of the issues discussed have a more general applicabil- ity than the particular area under discussion. However, the primary audience is those directly involved in the area of the human factors and design of systems on high-powered single user workstations. Acknowledgements The major acknowledgement must be to the cumulative effort of the participants who contributed time and energy to achieve what has been recorded here. The Organizing Committee was largely responsible for the work prior to the Workshop. Special thanks must be given to the individuals who gave their time. The main funding source for the Workshop was the Alvey MMI Director who ensured that the right mix of individuals could attend. We are also indebted to a number of organizations who provided significant financial'help including Ruther- ford Appleton Laboratory, Eurographics, SUN Microsystems, Microsoft Corpora- tion and Graphic Software Systems. The secretariat came from Rutherford Appleton Laboratory's Informatics Divi- sion. It worked long hours both during and after the Workshop to ensure an accu- rate transcript of the workshop in the minimum time. Carol Barnes, Janice Gore and Rita Hollington typed many thousands of keystrokes in the process. Special thanks must be paid to David Duce who organized the secretariat in his quiet and efficient style coping with most catastrophes in his stride; and to Carol Barnes and Janice Gore who worked very long hours typing the drafts of this book. The Workshop was held at the Cosener's House in Abingdon. Particular thanks are due to the staff there for making us most welcome and coping with our excessive demands in terms of alterations to meal times and accommodation for six computers and a photocopier, in addition to the participants. Chapter 12 first appeared in the proceedings of the 1985 EUUG Conference in Paris. It is reproduced here by kind permission of the European Unix Systems User Group. Figures 4.1 to 4.7 are reproduced by kind permission of Xerox Corporation. Unix™ is a trademark of AT&T Bell Laboratories. Ada® is a registered trade- mark of the U.S. Government (Ada Joint Program Office). List of Participants Organizing Committee Bob Hopgood Rutherford Appleton Laboratory William Newman Independent Consultant Austin Tate University of Edinburgh George Coulouris Queen Mary College, London Ken Robinson Rutherford Appleton Laboratory Tony Williams Rutherford Appleton Laboratory Participants David Barnes University of Kent Peter Bono Graphic Software Systems John Butler Microsoft Corporation Steve Cook Queen Mary College, London Martin Cooper British Telecom Research Laboratories Gordon Dougan Office Workstations Ltd Arthur Foster GEC Research Laboratories James Gosling SUN Microsystems Inc Paul ten Hagen CWI, Amsterdam Alistair Kilgour University of Glasgow Brad Myers University of Toronto Colin Prosser International Computers Ltd David Rosenthal Carnegie-Mellon University David Small High Level Hardware Ltd Dominic Sweetman Whitechapel Computer Works Ltd Warren Teitelman SUN Microsystems Inc Harold Thimbleby University of York Mike Underwood Alvey MMI Directorate Neil Wiseman University of Cambridge x Methodology of Window Management Secretariat David Duce Note Takers Secretaries Tony Cox Carol Barnes David Duce Janice Gore Liz Fielding Rita Hollington Simon Frost Duncan Gibson Janet Haswell Janet Malone Mark Martin Martin Prime Trudy Watson Table of Contents Preface V Acknowledgements Vll List of Participants IX Part I 1 Introduction 1.1 BACKGROUND 1 1.2 GOALS OF THE WORKSHOP 2 1.3 ORGANIZATION 3 1.4 STRUCTURE OF THE WORKSHOP 4 1.5 DEMONSTRATIONS 5 1.6 TERMINOLOGY 5 Part n 2 Introducing Windows to Unix: User Expectations 9 by Colin Prosser 2.1 INTRODUCTION 9 2.2 USER EXPECTA n ONS 9 2.3 DISCUSSION 11 3 A Comparison of Some Window Managers 15 by Tony Williams 3.1 INTRODUCTION 15 3.2 A MODEL OF WINDOW MANAGEMENT 16 3.3 COMPARISON OF WINDOW MANAGERS 19 3.4 ARCHITECTURE, ADDRESS SPACES AND COMMUNICATIONS 28 3.5 OTHER SYSTEMS 31 3.6 SUMMARY 31 3.7 ACKNOWLEDGEMENTS 32 3.8 DISCUSSION 32 xii Methodology of Window Management 4 Ten Years of Window Systems - A Retrospective View 35 by Warren Teitelman 4.1 INTRODUCTION 35 4.2 SMALLTALK 35 4.3 DLISP 36 4.4 INTERLISP-D 39 4.5 TAJO (MESA DEVELOPMENT ENVIRONMENT) 39 4.6 THE DOCS SYSTEM (CEDAR) 40 4.7 VIEWERS (CEDAR) 41 4.8 SUNWINDOWS 45 4.9 SUNDEW 46 4.10 DISCUSSION 46 5 SunDew - A Distributed and Extensible Window System 47 by James Gosling 5.1 INTRODUCTION 47 5.2 GOALS 47 5.3 DESIGN SKETCH 49 5.4 DISCUSSION 53 6 Issues in Window Management Design and Implementation 59 by Brad Myers 6.1 INTRODUCTION 59 6.2 USER INTERFACE 60 6.3 INPUT 65 6.4 IMPLEMENTATION 66 6.5 SUMMARY 69 6.6 DISCUSSION 70 7 A Modular Window System for Unix 73 by Dominic Sweetman 7.1 INTRODUCTION 73 7.2 ARCHITECTURE 74 7.3 FUTURE REQUIREMENTS 78 7.4 DISCUSSION 79 8 Standards Activities 81 by John Butler 8.1 INTRODUCTION 81 8.2 MODELS 82 8.3 UNRESOLVED MATTERS 86 9 A Graphics Standards View of Screen Management 87 by Bob Hopgood 9.1 INTRODUCTION 87 9.2 VOCABULARY 87 9.3 INTERFACE TO GKS 88 9.4 SUBDIVISION OF FRAMES 90 9.5 ASPECT RATIO AND POSITIONING WITHIN A FRAME 91 9.6 OUTPUT CONTROL 91